From 29b034a272d55c27e40d740dffc000ea53876db3 Mon Sep 17 00:00:00 2001 From: yaoq Date: Fri, 9 Sep 2022 18:55:55 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E8=BD=BD=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../smtweb/system/bpm/web/login/AuthService.java | 6 +++ .../static/event/bpm/sys/user/area/area.js | 50 ++++++++++++++++++++++ .../static/event/bpm/sys/user/area/area_list.js | 30 ------------- .../smtweb/framework/core/cache/CacheManager.java | 14 ++++++ 4 files changed, 70 insertions(+), 30 deletions(-) create mode 100644 smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area.js delete mode 100644 smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area_list.js diff --git a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/login/AuthService.java b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/login/AuthService.java index 2ee2eb7..b44562c 100644 --- a/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/login/AuthService.java +++ b/smtweb-framework/bpm/src/main/java/cc/smtweb/system/bpm/web/login/AuthService.java @@ -3,6 +3,7 @@ package cc.smtweb.system.bpm.web.login; import cc.smtweb.framework.core.annotation.SwBody; import cc.smtweb.framework.core.annotation.SwParam; import cc.smtweb.framework.core.annotation.SwService; +import cc.smtweb.framework.core.cache.CacheManager; import cc.smtweb.framework.core.common.R; import cc.smtweb.framework.core.common.SwMap; import cc.smtweb.framework.core.db.DbEngine; @@ -112,6 +113,11 @@ public class AuthService { return R.success(); } + public R refreshCache() { + CacheManager.getIntance().refresh(); + return R.success(); + } + // defaultRun 命名的函数是默认函数 // @SwPerm(SwPerm.NONE) // public R defaultRun(@SwPathParam String path) { diff --git a/smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area.js b/smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area.js new file mode 100644 index 0000000..7e9650d --- /dev/null +++ b/smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area.js @@ -0,0 +1,50 @@ +/** + * Created by 1 at 2022-09-09 17:50:25 + * 注册事件类【行政区划管理】,参看event.defaultEvent.js + */ +window.$swEvent.setup("bpm.sys.user.area.area", { + setup(page) { + const {$params, $refs, $widgets, $model, $utils, $tabRouter, $api} = page || {}; + const {$$message, $$http} = $utils || {}; + const custom = {}; + const typeMap = {2: 105100, 4: 105101, 6: 105102, 9: 105103, 12: 105104}; + // + const focusName = () => { + custom.name = $model.areacard.getFormVal("ar_name"); + }; + const changeName = (value) => { + if ($model.areacard.getFormVal("ar_full_name") === custom.name) + $model.areacard.setFormVal("ar_full_name", value); + }; + + const focusCode = () => { + custom.code = $model.areacard.getFormVal("ar_code"); + }; + const changeCode = (value) => { + if ($model.areacard.getFormVal("ar_seq") === custom.code) + $model.areacard.setFormVal("ar_seq", value); + //根据编码长度设置区划级别 + $model.areacard.setFormVal("ar_type", typeMap[value.length]); + $model.areacard.setFormVal("ar_parent_id", getParentArea(value)); + + }; + + const getParentArea = (value) => { + if (value.length == 12) { + return value.substring(0, 9); + } + if (value.length == 9) { + return value.substring(0, 6); + } + if (value.length == 6) { + return value.substring(0, 4); + } + if (value.length == 4) { + return value.substring(0, 2); + } + } + return { + focusName, changeName, focusCode, changeCode + } + } +}); diff --git a/smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area_list.js b/smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area_list.js deleted file mode 100644 index 0d39a4b..0000000 --- a/smtweb-framework/bpm/src/main/resources/static/event/bpm/sys/user/area/area_list.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * Created by 1 at 2022-07-26 17:18:17 - * 注册事件类【行政区划管理】,参看event.defaultEvent.js -*/ -window.$swEvent.setup("bpm.sys.user.area.area_list", { - setup(page){ - const { $params,$refs, $widgets, $model, $utils, $tabRouter, $api } = page || {}; - const { $$message, $$http } = $utils || {}; - const custom = {}; - // - const focusName = () => { - custom.name = $model.areacard.getFormVal("ar_name"); - }; - const changeName = (value) => { - if ($model.areacard.getFormVal("ar_full_name") === custom.name) - $model.areacard.setFormVal("ar_full_name", value); - }; - - const focusCode = () => { - custom.code = $model.areacard.getFormVal("ar_code"); - }; - const changeCode = (value) => { - if ($model.areacard.getFormVal("ar_seq") === custom.code) - $model.areacard.setFormVal("ar_seq", value); - }; - return { - focusName, changeName, focusCode, changeCode - } - } -}); diff --git a/smtweb-framework/core/src/main/java/cc/smtweb/framework/core/cache/CacheManager.java b/smtweb-framework/core/src/main/java/cc/smtweb/framework/core/cache/CacheManager.java index af521d0..5c4f69e 100644 --- a/smtweb-framework/core/src/main/java/cc/smtweb/framework/core/cache/CacheManager.java +++ b/smtweb-framework/core/src/main/java/cc/smtweb/framework/core/cache/CacheManager.java @@ -90,6 +90,20 @@ public class CacheManager { } } + public void refresh() { + listCache.sort((o1, o2) -> { + //o1依赖o2 + if (isContains(o1.getDepends(), o2.getIdent())) return 1; + //o2依赖o1 + if (isContains(o2.getDepends(), o1.getIdent())) return -1; + + return 0;//getPluginIndex(o1) - getPluginIndex(o2); + }); + for (AbstractCache cache : listCache) { + cache.init(); + } + } + private boolean isContains(String[] src, String dest) { if (src == null || src.length == 0) return false; for (String s : src) {