diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/IPersonnelService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/IPersonnelService.java index 09eaf34..731c4a4 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/IPersonnelService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/IPersonnelService.java @@ -186,42 +186,21 @@ public interface IPersonnelService { @ApiOperation(value = "岗位关系检查") void refreshUpdateMenuRdd(Long menuId); - @ApiOperation(value = "刷新组织冗余") - void refreshOrganizeRdd(Long organizeId); - - @ApiOperation(value = "刷新组织冗余") - void refreshUpdateOrganizeRdd(Long organizeId); - @ApiOperation(value = "刷新账号部门") void refreshRefSysUserDepartment(Long userId, Long[] departmentIds); @ApiOperation(value = "刷新账号角色") void refreshRefSysUserRole(Long userId, Long[] roleIds); - @ApiOperation(value = "刷新角色冗余") - void refreshUpdateSysRoleRdd(Long roleId); - - @ApiOperation(value = "刷新组织冗余") - void refreshDepartmentRdd(Long departmentId); - @ApiOperation(value = "刷新账号部门") void refreshUpdateRefSysUserDepartmentRdd(Long departmentId); @ApiOperation(value = "刷新用户部门") void refreshUpdateRefSysUserInfoDepartment(Long userInfoId, Long[] departmentIds); - @ApiOperation(value = "刷新用户部门") - void refreshUpdateRefSysUserInfoDepartmentRdd(Long departmentId); - - @ApiOperation(value = "刷新岗位冗余") - void refreshPositionRdd(Long positionId); - @ApiOperation(value = "刷新用户岗位") void refreshRefSysUserInfoPosition(Long userInfoId, Long[] positionIds); - @ApiOperation(value = "刷新用户岗位") - void refreshUpdateRefSysUserInfoPositionRdd(Long positionId); - /** * 根据组织代码查询组织信息 * @return diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDictionaryService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDictionaryService.java index becf970..9180ffa 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDictionaryService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysDictionaryService.java @@ -135,4 +135,12 @@ public interface ISysDictionaryService { */ @ApiOperation(value = "根据parenId查询字典") List findSysDictionaryByParentId(Long parentId); + + /** + * 按条件查询字典 + * @param sysDictionary 查询条件 + * @return 查询结果 + */ + @ApiOperation(value = "按条件查询字典") + List findSysDictionary(SysDictionary sysDictionary); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoTestingController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoTestingController.java index 45e6c1b..3bbdd99 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoTestingController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoTestingController.java @@ -898,7 +898,6 @@ public class DemoTestingController { } } - userInfo.setDepartmentNamesRdd(StringUtils.join(refUserDepartmentNameList)); userInfo.setDepartmentId(department.getId()); userInfo.setDepartmentNameRdd(department.getName()); userInfo.setOrganizeId(department.getOrganizeId()); @@ -906,7 +905,6 @@ public class DemoTestingController { userInfo.setOrganizeCode(department.getOrganizeCode()); userInfo.setPositionId(position.getId()); userInfo.setPositionNameRdd(position.getName()); - userInfo.setPositionNamesRdd(StringUtils.join(refUserPositionNameList,",")); userInfo.setName(RandomStringUtils.random(5, TEXT)); userInfo.setUserEmpNo(RandomStringUtils.random(10, true, true)); userInfo.setUserInfoStatus(CommonEnumUtil.USER_INFO_STATUS.INCUMBENT.getValue()); @@ -918,7 +916,6 @@ public class DemoTestingController { user.setUserStatus(CommonEnumUtil.USER_STATUS.ENABLE.getValue()); user.setIsValid(CommonEnumUtil.IS_VAILD.VAILD.getValue()); user.setUserLoginNum(0); - user.setDepartmentNamesRdd(StringUtils.join(refUserDepartmentNameList,",")); user.setDepartmentId(department.getId()); user.setDepartmentNameRdd(department.getName()); user.setUserPhone(RandomStringUtils.random(11, false, true)); @@ -1027,8 +1024,8 @@ public class DemoTestingController { " user_phone, user_status, user_type) VALUES (" + " "+su.getId()+", '"+su.getCreateDatetime()+"', '"+su.getCreateUser()+"', "+su.getIsDeleted()+", "+su.getIsValid()+"," + " '"+su.getModifyDatetime()+"', '"+su.getModifyUser()+"', '"+su.getOrganizeCode()+"', " + - " "+su.getDepartmentId()+", '"+su.getDepartmentNameRdd()+"', '"+su.getDepartmentNamesRdd()+"', ''," + - " "+su.getOrganizeId()+", '"+su.getOrganizeNameRdd()+"', null, '"+su.getRoleNamesRdd()+"', '"+su.getUserEmail()+"'," + + " "+su.getDepartmentId()+", '"+su.getDepartmentNameRdd()+"', ''," + + " "+su.getOrganizeId()+", '"+su.getOrganizeNameRdd()+"', null, '"+su.getUserEmail()+"'," + " '"+su.getUserEmpNo()+"', "+su.getUserInfoId()+", null, '"+su.getUserLoginName()+"', 0, '2637a5c30af69a7bad877fdb65fbd78b'," + " '"+su.getUserName()+"', '"+su.getUserPhone()+"', 1, 1);"); fileWriter(writer,txt); @@ -1052,9 +1049,9 @@ public class DemoTestingController { " user_info_status, user_join_date, user_login_last_date_time, user_login_num) VALUES (" + " "+ui.getId()+", '"+ui.getCreateDatetime()+"', '"+ui.getCreateUser()+"', "+ui.getIsDeleted()+", "+ui.getIsValid()+"," + " '"+ui.getModifyDatetime()+"', '"+ui.getModifyUser()+"', '"+ui.getOrganizeCode()+"'," + - " "+ui.getDepartmentId()+", '"+ui.getDepartmentNameRdd()+"', '"+ui.getDepartmentNamesRdd()+"'," + + " "+ui.getDepartmentId()+", '"+ui.getDepartmentNameRdd()+"'," + " '"+ui.getName()+"', "+ui.getOrganizeId()+", '"+ui.getOrganizeNameRdd()+"'," + - " "+ui.getPositionId()+", '"+ui.getPositionNameRdd()+"', '"+ui.getPositionNamesRdd()+"'," + + " "+ui.getPositionId()+", '"+ui.getPositionNameRdd()+"'," + " '"+ui.getUserEmpNo()+"', "+ui.getUserId()+", 1, '2019-02-26', null , 0);"); fileWriter(writer,txt); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDepartmentController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDepartmentController.java index 6244617..08037a0 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDepartmentController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDepartmentController.java @@ -1,20 +1,21 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; -import cn.estsh.i3plus.core.api.iservice.busi.*; +import cn.estsh.i3plus.core.api.iservice.busi.ICoreMemTreeService; +import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; +import cn.estsh.i3plus.core.api.iservice.busi.ISysDepartmentService; import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; -import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SysDepartment; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserDepartment; import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.Api; @@ -44,15 +45,9 @@ public class SysDepartmentController extends CoreBaseController { private ISysDepartmentService departmentService; @Autowired - private ICoreTreeService coreTreeService; - - @Autowired private ICoreMemTreeService memTreeService; @Autowired - private ISysOrganizeService organizeService; - - @Autowired private IPersonnelService personnelService; /** @@ -64,9 +59,6 @@ public class SysDepartmentController extends CoreBaseController { @ApiOperation(value = "添加部门", notes = "返回内容添加部门") public ResultBean insertSysDepartment(SysDepartment department) { try { - //登陆用户 - SessionUser user = AuthUtil.getSessionUser(); - //条件验证 ValidatorBean.beginValid(department) .notNull("name", department.getName()) @@ -74,7 +66,7 @@ public class SysDepartmentController extends CoreBaseController { .checkNotZero("organizeId",department.getOrganizeId()); //新增初始化 - ConvertBean.modelInitialize(department, user); + ConvertBean.modelInitialize(department, AuthUtil.getSessionUser()); department.setOrganizeCode(AuthUtil.getOrganize().getOrganizeCode()); if(department.getParentId() == null || department.getParentId() <= 0){ department.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); @@ -99,9 +91,6 @@ public class SysDepartmentController extends CoreBaseController { @ApiOperation(value = "修改部门", notes = "根据部门id修改信息") public ResultBean updateSysDepartmentById(SysDepartment department) { try { - //登陆用户 - SessionUser user = AuthUtil.getSessionUser(); - //条件验证 ValidatorBean.beginValid(department) .checkNotZero("id", department.getId()) @@ -115,7 +104,7 @@ public class SysDepartmentController extends CoreBaseController { sysDepartment.setDepartmentSort(department.getDepartmentSort()); sysDepartment.setParentId(department.getParentId()); - ConvertBean.modelUpdate(department, user); + ConvertBean.modelUpdate(department, AuthUtil.getSessionUser()); if(sysDepartment.getParentId() == null || department.getParentId() <= 0){ sysDepartment.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); sysDepartment.setParentNameRdd("顶级部门"); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDictionaryController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDictionaryController.java index 679bc5a..4aa5307 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDictionaryController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysDictionaryController.java @@ -457,4 +457,22 @@ public class SysDictionaryController extends CoreBaseController{ return ImppExceptionBuilder.newInstance().buildExceptionResult(e); } } + + /** + * 按条件查询字典 + * @param sysDictionary 查询条件 + * @return 查询数据 + */ + @GetMapping("/find") + @ApiOperation(value = "按条件查询字典",notes = "按条件查询字典") + public ResultBean findSysDictionary(@RequestBody SysDictionary sysDictionary){ + try { + List dictionaryList = sysDictionaryService.findSysDictionary(sysDictionary); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(dictionaryList); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java index 1ecaf17..4516827 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysEnumController.java @@ -286,6 +286,7 @@ public class SysEnumController extends CoreBaseController { } /** + * 外部通知方式 * @return 处理结果 */ @GetMapping("/external-notice-method") @@ -296,5 +297,16 @@ public class SysEnumController extends CoreBaseController { return new ResultBean(true, "操作成功", list); } + /** + * 字典分组 + * @return 处理结果 + */ + @GetMapping("/dictionary-group") + @ApiOperation(value = "字典分组", notes = "字典分组") + public ResultBean getDictionaryGroup() { + return new ResultBean(true, "操作成功", + Arrays.asList(ImppEnumUtil.DICTIONARY_GROUP.values())); + } + } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleLanguageController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleLanguageController.java index f7c7ff3..68cbf3b 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleLanguageController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleLanguageController.java @@ -126,7 +126,7 @@ public class SysLocaleLanguageController extends CoreBaseController { sysLocaleLanguageService.deleteSysLocaleLanguageById(Long.parseLong(idStr)); // 移出缓存 - redisCore.deleteKey(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleLanguage.getLanguageCode()); + redisCore.deleteKey(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleLanguage.getLanguageCode()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java index 78b3b74..99f157a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysLocaleResourceController.java @@ -246,23 +246,23 @@ public class SysLocaleResourceController extends CoreBaseController { private void updateResourceCache(SysLocaleResource sysLocaleResource,boolean isDelete){ // 判断是否为删除资源 if(isDelete){ - Map langMap = redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleResource.getLanguageCode()); + Map langMap = redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleResource.getLanguageCode()); if (langMap != null && langMap.size() != 0) { langMap.remove(sysLocaleResource.getResourceKey()); - redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleResource.getLanguageCode(), langMap); + redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleResource.getLanguageCode(), langMap); } - redisRes.deleteKey(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleResource.getResourceKey()); + redisRes.deleteKey(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleResource.getResourceKey()); }else { - Map langMap = redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleResource.getLanguageCode()); + Map langMap = redisRes.getHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleResource.getLanguageCode()); if (langMap != null && langMap.size() != 0) { langMap.put(sysLocaleResource.getResourceKey(), sysLocaleResource.getResourceValue()); - redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleResource.getLanguageCode(), langMap); + redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleResource.getLanguageCode(), langMap); } HashMap resource = new HashMap(); resource.put(sysLocaleResource.getLanguageCode(), sysLocaleResource.getResourceValue()); - redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + sysLocaleResource.getResourceKey(), resource, 0); + redisRes.putHashMap(CommonConstWords.REDIS_PREFIX_CACHE_LANGUAGE + ":" + sysLocaleResource.getResourceKey(), resource, 0); } } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMenuController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMenuController.java index 3c59530..ee10760 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMenuController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysMenuController.java @@ -116,7 +116,8 @@ public class SysMenuController extends CoreBaseController { .notNull("name", menu.getName()); ConvertBean.modelUpdate(menu, getSessionUser()); - menu.setNameZhShortening(StringTool.getAllFirstLetter(menu.getName())); +// 用户自定义输入,方便快速记忆 +// menu.setNameZhShortening(StringTool.getAllFirstLetter(menu.getName())); if (menu.getParentId() == null || menu.getParentId().intValue() == 0) { menu.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java index c922652..f19a8b7 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrganizeController.java @@ -6,6 +6,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; import cn.estsh.i3plus.icloud.wms.sdk.IWmsActionGroupCloud; import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; @@ -21,7 +22,6 @@ import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.Api; diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiverHandler.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiverHandler.java deleted file mode 100644 index 17cc8a9..0000000 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageLetterQueueReceiverHandler.java +++ /dev/null @@ -1,39 +0,0 @@ -package cn.estsh.i3plus.core.apiservice.mq; - -import cn.estsh.i3plus.platform.common.util.PlatformConstWords; -import cn.estsh.i3plus.pojo.platform.bean.SysMessage; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.amqp.rabbit.annotation.RabbitHandler; -import org.springframework.amqp.rabbit.annotation.RabbitListener; -import org.springframework.stereotype.Component; - -/** - * @Description : 站内信队列处理 - * @Reference : - * @Author : yunhao - * @CreateDate : 2018-11-15 22:35 - * @Modify: - **/ -@Component -@RabbitListener(queues = PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE_BAK) -public class MessageLetterQueueReceiverHandler { - - private static final Logger LOGGER = LoggerFactory.getLogger(MessageLetterQueueReceiverHandler.class); - - @RabbitHandler - public void handleMessage(byte[] message){ - LOGGER.info("【MQ-{}】handleMessage(byte[] message) 数据接收成功:{}",PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE_BAK, message); - } - - @RabbitHandler - public void handleMessage(String message){ - LOGGER.info("【MQ-{}】handleMessage(String message) 数据接收成功:{}",PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE_BAK, message); - } - - @RabbitHandler - public void handleMessage(SysMessage message){ - LOGGER.info("【MQ-{}】handleMessage(SysMessage message) 数据接收成功:{}",PlatformConstWords.IMPP_MESSAGE_LETTER_QUEUE_BAK, message); - } - -} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java index 0dc4627..bc3812a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/mq/MessageMailQueueReceiver.java @@ -57,6 +57,7 @@ public class MessageMailQueueReceiver { @RabbitListener(queues = PlatformConstWords.IMPP_MESSAGE_MAIL_QUEUE) public void processImppMail(String data, Channel channel, Message message) { SysMessage msg = JsonUtilTool.decode(data, SysMessage.class); + Long startTime = System.currentTimeMillis(); try { LOGGER.info("【MQ-IMPP_MESSAGE_MAIL_QUEUE】数据接收成功:{}", msg); if (msg.getMessageSendTime() == null) { @@ -130,6 +131,8 @@ public class MessageMailQueueReceiver { } catch (IOException e1) { e1.printStackTrace(); } + } finally { + LOGGER.info("[Core Email] Email Id:{} , 耗时{}, Message Info :{}", msg.getId(), System.currentTimeMillis() - startTime, JSON.toJSONString(msg)); } } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/PersonnelServiceService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/PersonnelServiceService.java index 63e8809..7224dc3 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/PersonnelServiceService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/PersonnelServiceService.java @@ -4,6 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysRoleService; import cn.estsh.i3plus.core.apiservice.util.HqlModelPack; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; @@ -21,7 +22,6 @@ import cn.estsh.i3plus.pojo.platform.repository.*; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ImppRedis; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; @@ -685,15 +685,7 @@ public class PersonnelServiceService implements IPersonnelService { .setErrorSolution("请先删除子集信息在操作") .build(); } -// long refPositionCount = refUserPositionRDao.findByPropertyCount("positionId",positionId); -// if (refPositionCount >= 1) { -// throw ImppExceptionBuilder.newInstance() -// .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) -// .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) -// .setErrorDetail("存在用户关系引用信息无法删除!") -// .setErrorSolution("请先删除用户关系信息再操作") -// .build(); -// } + List userInfoList = userInfoRDao.findByProperty("departmentId", departmentId); if (userInfoList != null && userInfoList.size() >= 1) { throw ImppExceptionBuilder.newInstance() @@ -893,45 +885,6 @@ public class PersonnelServiceService implements IPersonnelService { } @Override - public void refreshOrganizeRdd(Long organizeId) { - LOGGER.info("组织信息 SysOrganize organizeId:{} ",organizeId); - if(organizeId != null){ - SysOrganize organize = organizeRDao.getById(organizeId); - if(organize != null){ - organizeRDao.updateByProperties( - new String[]{"parentId"}, - new Object[]{organize.getId()}, - new String[]{"parentNameRdd"}, - new Object[]{organize.getName()}); - } - } - } - - @Override - public void refreshUpdateOrganizeRdd(Long organizeId) { - LOGGER.info("组织信息 SysOrganize organizeId:{} ",organizeId); - if(organizeId != null){ - SysOrganize organize = organizeRDao.getById(organizeId); - if(organize != null){ - departmentRDao.updateByProperties( - new String[]{"organizeId"}, - new Object[]{organize.getId()}, - new String[]{"organizeNameRdd"}, - new Object[]{organize.getName()}); - - // 更新用户、账号 组织冗余信息 - List departmentList = departmentRDao.findByProperty("organizeId", organize.getId()); - if(departmentList != null && departmentList.size() >0 ){ - for (SysDepartment department : departmentList) { - refreshUpdateRefSysUserDepartmentRdd(department.getId()); - refreshUpdateRefSysUserInfoDepartmentRdd(department.getId()); - } - } - } - } - } - - @Override public void refreshRefSysUserDepartment(Long userId, Long[] departmentIds) { LOGGER.info("账号部门信息 SysUser userInfoId:{} departmentIds:{}",userId,departmentIds); @@ -948,7 +901,6 @@ public class PersonnelServiceService implements IPersonnelService { if(departmentList != null && departmentList.size() >0){ List list = new ArrayList<>(); - List nameList = new ArrayList<>(); SysRefUserDepartment ref = null; for (SysDepartment department : departmentList) { ref = new SysRefUserDepartment(); @@ -963,11 +915,8 @@ public class PersonnelServiceService implements IPersonnelService { ref.setIsValid(CommonEnumUtil.IS_VAILD.VAILD.getValue()); list.add(ref); - nameList.add(department.getName()); } - user.setDepartmentNamesRdd(String.join(",",nameList)); - refUserDepartmentRDao.saveAll(list); userRDao.save(user); @@ -976,22 +925,6 @@ public class PersonnelServiceService implements IPersonnelService { } } } - - @Override - public void refreshDepartmentRdd(Long departmentId) { - LOGGER.info("部门信息 SysDepartment departmentId:{} ",departmentId); - if(departmentId != null){ - SysDepartment department = departmentRDao.getById(departmentId); - if(department != null){ - departmentRDao.updateByProperties( - new String[]{"parentId"}, - new Object[]{department.getId()}, - new String[]{"parentNameRdd"}, - new Object[]{department.getName()}); - } - } - } - @Override public void refreshRefSysUserRole(Long userId, Long[] roleIds) { LOGGER.info("账号角色关系信息 RefSysUserRole userId:{} roleIds:{} ", userId,roleIds); @@ -1007,10 +940,8 @@ public class PersonnelServiceService implements IPersonnelService { if(null != list && list.size() > 0){ // 新增用户角色关系 List refUserRoles = new ArrayList<>(); - List roleNameList = new ArrayList<>(); SysRefUserRole refUserRole = null; for (SysRole role : list) { - roleNameList.add(role.getName()); // 用户角色关系创建 refUserRole = new SysRefUserRole(); refUserRole.setRoleId(role.getId()); @@ -1022,93 +953,14 @@ public class PersonnelServiceService implements IPersonnelService { refUserRole.setOrganizeCode(AuthUtil.getOrganize().getOrganizeCode()); refUserRoles.add(refUserRole); } - refUserRoleRDao.saveAll(refUserRoles); - - // 角色名称冗余 - user.setRoleNamesRdd(String.join(",", roleNameList)); + refUserRoleRDao.saveAll(refUserRoles); userRDao.save(user); } } } @Override - public void refreshUpdateSysRoleRdd(Long roleId) { - LOGGER.info("角色信息 RefSysUserRole roleId:{}", roleId); - if(roleId != null){ - SysRole role = roleRDao.getById(roleId); - if(role != null){ - // 更新账号角色关系冗余信息 - refUserRoleRDao.updateByProperties( - new String[]{"roleId"}, - new Object[]{role.getId()}, - new String[]{"roleNameRdd"}, - new Object[]{role.getName()} - ); - - // 账号组织关系集合 - List refs = refUserRoleRDao.findByProperty("roleId", role.getId()); - if(refs != null && refs.size() >0){ - Long[] idArray = null; - for (SysRefUserRole ref : refs) { - List userRefList = refUserRoleRDao.findByProperty("userId", ref.getUserId()); - if(userRefList != null && userRefList.size() > 0){ - idArray = new Long[userRefList.size()]; - for (int i = 0; i < userRefList.size(); i++) { - idArray[i] = userRefList.get(i).getRoleId(); - } - } - refreshRefSysUserRole(ref.getUserId(),idArray); - idArray = null; - } - } - } - } - } - - @Override - public void refreshUpdateRefSysUserDepartmentRdd(Long departmentId) { - LOGGER.info("部门信息 SysDepartment departmentId:{} ",departmentId); - if(departmentId != null){ - SysDepartment department = departmentRDao.getById(departmentId); - if(department != null){ - // 更新账号组织关系冗余信息 - refUserDepartmentRDao.updateByProperties( - new String[]{"departmentId"}, - new Object[]{department.getId()}, - new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, - new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()} - ); - - // 更新账号组织冗余信息 - userRDao.updateByProperties( - new String[]{"departmentId"}, - new Object[]{department.getId()}, - new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, - new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()} - ); - - // 账号组织关系集合 - List refs = refUserDepartmentRDao.findByProperty("departmentId", department.getId()); - if(refs != null && refs.size() >0){ - Long[] idArray = null; - for (SysRefUserDepartment ref : refs) { - List userRefList = refUserDepartmentRDao.findByProperty("userId", ref.getUserId()); - if(userRefList != null && userRefList.size() > 0){ - idArray = new Long[userRefList.size()]; - for (int i = 0; i < userRefList.size(); i++) { - idArray[i] = userRefList.get(i).getDepartmentId(); - } - } - refreshRefSysUserDepartment(ref.getUserId(),idArray); - idArray = null; - } - } - } - } - } - - @Override public void refreshUpdateRefSysUserInfoDepartment(Long userInfoId, Long[] departmentIds) { LOGGER.info("用户部门关系信息 SysUser userInfoId:{} departmentIds:{}",userInfoId,departmentIds); @@ -1125,7 +977,6 @@ public class PersonnelServiceService implements IPersonnelService { if(departmentList != null && departmentList.size() >0){ List list = new ArrayList<>(); - List nameList = new ArrayList<>(); SysRefUserInfoDepartment ref = null; for (SysDepartment department : departmentList) { ref = new SysRefUserInfoDepartment(); @@ -1140,12 +991,8 @@ public class PersonnelServiceService implements IPersonnelService { ref.setIsValid(CommonEnumUtil.IS_VAILD.VAILD.getValue()); list.add(ref); - - nameList.add(department.getName()); } - info.setDepartmentNamesRdd(String.join(",",nameList)); - refUserInfoDepartmentRDao.saveAll(list); userInfoRDao.save(info); @@ -1155,7 +1002,7 @@ public class PersonnelServiceService implements IPersonnelService { }else { throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) - .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) + .setErrorCode(cn.estsh.impp.framework.boot.exception.ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode()) .setErrorDetail("用户信息不存在") .setErrorSolution("请重新操作") .build(); @@ -1163,13 +1010,13 @@ public class PersonnelServiceService implements IPersonnelService { } @Override - public void refreshUpdateRefSysUserInfoDepartmentRdd(Long departmentId) { - LOGGER.info("部门信息 SysInfoDepartment departmentId:{} ",departmentId); + public void refreshUpdateRefSysUserDepartmentRdd(Long departmentId) { + LOGGER.info("部门信息 SysDepartment departmentId:{} ",departmentId); if(departmentId != null){ SysDepartment department = departmentRDao.getById(departmentId); if(department != null){ // 更新账号组织关系冗余信息 - refUserInfoDepartmentRDao.updateByProperties( + refUserDepartmentRDao.updateByProperties( new String[]{"departmentId"}, new Object[]{department.getId()}, new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, @@ -1177,7 +1024,7 @@ public class PersonnelServiceService implements IPersonnelService { ); // 更新账号组织冗余信息 - userInfoRDao.updateByProperties( + userRDao.updateByProperties( new String[]{"departmentId"}, new Object[]{department.getId()}, new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, @@ -1185,11 +1032,11 @@ public class PersonnelServiceService implements IPersonnelService { ); // 账号组织关系集合 - List refs = refUserInfoDepartmentRDao.findByProperty("departmentId", department.getId()); + List refs = refUserDepartmentRDao.findByProperty("departmentId", department.getId()); if(refs != null && refs.size() >0){ Long[] idArray = null; - for (SysRefUserInfoDepartment ref : refs) { - List userRefList = refUserInfoDepartmentRDao.findByProperty("userId", ref.getUserId()); + for (SysRefUserDepartment ref : refs) { + List userRefList = refUserDepartmentRDao.findByProperty("userId", ref.getUserId()); if(userRefList != null && userRefList.size() > 0){ idArray = new Long[userRefList.size()]; for (int i = 0; i < userRefList.size(); i++) { @@ -1204,22 +1051,7 @@ public class PersonnelServiceService implements IPersonnelService { } } - @Override - public void refreshPositionRdd(Long positionId) { - LOGGER.info("岗位信息 SysPosition positionId:{} ",positionId); - if(positionId != null){ - SysPosition position = positionRDao.getById(positionId); - if(position != null){ - positionRDao.updateByProperties( - new String[]{"parentId"}, - new Object[]{position.getId()}, - new String[]{"parentNameRdd"}, - new Object[]{position.getName()}); - } - } - } - - @Override + @Override public void refreshRefSysUserInfoPosition(Long userInfoId, Long[] positionIds) { LOGGER.info("用户岗位关系信息 RefSysUserInfoPosition userInfoId:{} positionIds:{} userName:{}",userInfoId,positionIds); @@ -1235,7 +1067,6 @@ public class PersonnelServiceService implements IPersonnelService { if(positionList != null && positionList.size() >0){ List list = new ArrayList<>(); - List nameList = new ArrayList<>(); SysRefUserPosition ref = null; for (SysPosition position : positionList) { ref = new SysRefUserPosition(); @@ -1247,12 +1078,8 @@ public class PersonnelServiceService implements IPersonnelService { ref.setIsDeleted(CommonEnumUtil.IS_DEAL.NO.getValue()); ref.setIsValid(CommonEnumUtil.IS_VAILD.VAILD.getValue()); list.add(ref); - - nameList.add(position.getName()); } - userInfo.setPositionNamesRdd(String.join(",",nameList)); - refUserPositionRDao.saveAll(list); userInfoRDao.save(userInfo); @@ -1270,48 +1097,6 @@ public class PersonnelServiceService implements IPersonnelService { } @Override - public void refreshUpdateRefSysUserInfoPositionRdd(Long positionId) { - LOGGER.info("岗位信息 SysPosition positionId:{} ",positionId); - if(positionId != null){ - SysPosition position = positionRDao.getById(positionId); - if(position != null){ - // 更新用户岗位关系冗余信息 - refUserPositionRDao.updateByProperties( - new String[]{"positionId"}, - new Object[]{position.getId()}, - new String[]{"positionNameRdd"}, - new Object[]{position.getName()} - ); - - // 更新用户主岗位冗余信息 - userInfoRDao.updateByProperties( - new String[]{"positionId"}, - new Object[]{position.getId()}, - new String[]{"positionNameRdd"}, - new Object[]{position.getName()} - ); - - // 用户用户岗位关系集合 - List refs = refUserPositionRDao.findByProperty("positionId", position.getId()); - if(refs != null && refs.size() >0){ - Long[] positionIdArray = null; - for (SysRefUserPosition ref : refs) { - List userRefList = refUserPositionRDao.findByProperty("userId", ref.getUserId()); - if(userRefList != null && userRefList.size() > 0){ - positionIdArray = new Long[userRefList.size()]; - for (int i = 0; i < userRefList.size(); i++) { - positionIdArray[i] = userRefList.get(i).getPositionId(); - } - } - refreshRefSysUserInfoPosition(ref.getUserId(),positionIdArray); - positionIdArray = null; - } - } - } - } - } - - @Override public SysOrganize getSysOrganizeByCode(String code) { return organizeRDao.getByProperty("organizeCode", code); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java index 069f5a6..fb91681 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDepartmentService.java @@ -10,8 +10,7 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.platform.bean.SysDepartment; import cn.estsh.i3plus.pojo.platform.bean.SysOrganize; -import cn.estsh.i3plus.pojo.platform.repository.SysDepartmentRepository; -import cn.estsh.i3plus.pojo.platform.repository.SysOrganizeRepository; +import cn.estsh.i3plus.pojo.platform.repository.*; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; @@ -48,6 +47,18 @@ public class SysDepartmentService implements ISysDepartmentService { @Autowired private IPersonnelService personnelService; + @Autowired + private SysRefUserDepartmentRepository refUserDepartmentRDao; + + @Autowired + private SysUserRepository userRDao; + + @Autowired + private SysRefUserInfoDepartmentRepository refUserInfoDepartmentRDao; + + @Autowired + private SysUserInfoRepository userInfoRDao; + @Override @ApiOperation(value = "新增部门信息") public SysDepartment insertSysDepartment(SysDepartment department) { @@ -167,10 +178,33 @@ public class SysDepartmentService implements ISysDepartmentService { // 新增部门 LOGGER.info("部门信息 DEPARTMENT department:{}", department); departmentRDao.update(department); + // 修改冗余信息 - personnelService.refreshDepartmentRdd(department.getId()); - personnelService.refreshUpdateRefSysUserDepartmentRdd(department.getId()); - personnelService.refreshUpdateRefSysUserInfoDepartmentRdd(department.getId()); + departmentRDao.updateByProperties(new String[]{"parentId"}, new Object[]{department.getId()}, + new String[]{"parentNameRdd"}, new Object[]{department.getName()}); + + // 更新账号组织关系冗余信息 + refUserDepartmentRDao.updateByProperties(new String[]{"departmentId"}, new Object[]{department.getId()}, + new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, + new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()} + ); + + // 更新账号组织冗余信息 + userRDao.updateByProperties(new String[]{"departmentId"}, new Object[]{department.getId()}, + new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, + new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()}); + + // 更新用户组织关系冗余信息 + refUserInfoDepartmentRDao.updateByProperties(new String[]{"departmentId"}, new Object[]{department.getId()}, + new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, + new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()} + ); + + // 更新用户组织冗余信息 + userInfoRDao.updateByProperties(new String[]{"departmentId"}, new Object[]{department.getId()}, + new String[]{"departmentNameRdd","organizeId","organizeNameRdd"}, + new Object[]{department.getName(),department.getOrganizeId(),department.getOrganizeNameRdd()} + ); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDictionaryService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDictionaryService.java index 910d9e3..2377a2a 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDictionaryService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysDictionaryService.java @@ -4,6 +4,7 @@ import cn.estsh.i3plus.core.api.iservice.busi.ISysDictionaryService; import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.pojo.base.bean.BaseConstWords; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; @@ -66,6 +67,7 @@ public class SysDictionaryService implements ISysDictionaryService { sysDictionary.setParentNameRdd(parentSysDictionary.getName()); sysDictionary.setParentCodeRdd(parentSysDictionary.getDictionaryCode()); + sysDictionary.setDictionaryGroup(parentSysDictionary.getDictionaryGroup()); } else { sysDictionary.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue()); } @@ -85,7 +87,7 @@ public class SysDictionaryService implements ISysDictionaryService { @ApiOperation(value = "修改字典") public void updateSysDictionary(SysDictionary sysDictionary) { // 校验唯一 - String hqlPack = CoreHqlPack.packHqlSysDictionaryCode(sysDictionary); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysDictionaryCode(sysDictionary); long repeatCodeCount = sysDictionaryRDao.findByHqlWhereCount(hqlPack); if (sysDictionary.getParentIdVal() == CommonEnumUtil.PARENT.DEFAULT.getValue() &&repeatCodeCount > 0) { throw ImppExceptionBuilder.newInstance() @@ -127,6 +129,7 @@ public class SysDictionaryService implements ISysDictionaryService { newSysDict.setParentNameRdd(parentSysDictionary.getName()); newSysDict.setParentCodeRdd(parentSysDictionary.getDictionaryCode()); + newSysDict.setDictionaryGroup(parentSysDictionary.getDictionaryGroup()); } LOGGER.info("字典 SYS_DICTIONARY sysDictionary:{}", newSysDict); @@ -159,7 +162,7 @@ public class SysDictionaryService implements ISysDictionaryService { public ListPager querySysDictionaryByPager(SysDictionary sysDictionary, Pager pager) { sysDictionary = sysDictionary == null ? new SysDictionary() : sysDictionary; - String hqlPack = CoreHqlPack.packHqlSysDictionary(sysDictionary); + DdlPackBean hqlPack = CoreHqlPack.packHqlSysDictionaryPage(sysDictionary); pager = PagerHelper.getPager(pager, sysDictionaryRDao.findByHqlWhereCount(hqlPack)); return new ListPager(sysDictionaryRDao.findByHqlWherePage(hqlPack + sysDictionary.orderBy(), pager), pager); } @@ -248,4 +251,10 @@ public class SysDictionaryService implements ISysDictionaryService { public List findSysDictionaryByParentId(Long parentId) { return sysDictionaryRDao.findByProperty("parentId", parentId); } + + @Override + @ApiOperation(value = "按条件查询字典") + public List findSysDictionary(SysDictionary sysDictionary) { + return sysDictionaryRDao.findByHqlWhere(CoreHqlPack.packHqlSysDictionary(sysDictionary)); + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java index e301cb2..a6364aa 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysOrganizeService.java @@ -2,20 +2,19 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; import cn.estsh.i3plus.core.api.iservice.busi.IPersonnelService; import cn.estsh.i3plus.core.api.iservice.busi.ISysOrganizeService; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; -import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.platform.bean.SessionUser; import cn.estsh.i3plus.pojo.platform.bean.SysOrganize; import cn.estsh.i3plus.pojo.platform.bean.SysRefUserDepartment; -import cn.estsh.i3plus.pojo.platform.repository.SysOrganizeRepository; +import cn.estsh.i3plus.pojo.platform.repository.*; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; -import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; @@ -24,9 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; -import java.util.ArrayList; import java.util.List; -import java.util.stream.Collectors; /** * @Description : 组织业务接口实现 @@ -49,6 +46,21 @@ public class SysOrganizeService implements ISysOrganizeService { @Autowired private IPersonnelService personnelService; + @Autowired + private SysDepartmentRepository departmentRDao; + + @Autowired + private SysRefUserDepartmentRepository refUserDepartmentRDao; + + @Autowired + private SysUserRepository userRDao; + + @Autowired + private SysRefUserInfoDepartmentRepository refUserInfoDepartmentRDao; + + @Autowired + private SysUserInfoRepository userInfoRDao; + @Override @ApiOperation(value = "更新组织", notes = "传入持久化组织对象,进行更新") public void updateSysOrganize(SysOrganize organize) { @@ -81,9 +93,32 @@ public class SysOrganizeService implements ISysOrganizeService { // 更新数据 organizeRDao.update(organize); - // 修改冗余信息 - personnelService.refreshOrganizeRdd(organize.getId()); - personnelService.refreshUpdateOrganizeRdd(organize.getId()); + + // 修改组织冗余信息 + organizeRDao.updateByProperties(new String[]{"parentId"}, new Object[]{organize.getId()}, + new String[]{"parentNameRdd"}, new Object[]{organize.getName()}); + + // 更新部门组织信息 + departmentRDao.updateByProperties(new String[]{"organizeId"}, new Object[]{organize.getId()}, + new String[]{"organizeNameRdd"}, new Object[]{organize.getName()}); + + // 更新账号组织关系冗余信息 + refUserDepartmentRDao.updateByProperties(new String[]{"organizeId"}, new Object[]{organize.getId()}, + new String[]{"organizeNameRdd"}, + new Object[]{organize.getName()} + ); + + // 更新账号组织冗余信息 + userRDao.updateByProperties(new String[]{"organizeId"}, new Object[]{organize.getId()}, + new String[]{"organizeNameRdd"}, new Object[]{organize.getName()}); + + // 更新用户组织关系冗余信息 + refUserInfoDepartmentRDao.updateByProperties(new String[]{"organizeId"}, new Object[]{organize.getId()}, + new String[]{"organizeNameRdd"}, new Object[]{organize.getName()}); + + // 更新用户组织冗余信息 + userInfoRDao.updateByProperties(new String[]{"organizeId"}, new Object[]{organize.getId()}, + new String[]{"organizeNameRdd"}, new Object[]{organize.getName()}); } @Override @@ -112,7 +147,7 @@ public class SysOrganizeService implements ISysOrganizeService { // 检查引用关系 personnelService.checkSysOrganizeRef(id); // 删除数据 - organizeRDao.deleteWeaklyById(id, AuthUtil.getSessionUser().getUserName()); + organizeRDao.deleteById(id); } @Override @@ -131,7 +166,8 @@ public class SysOrganizeService implements ISysOrganizeService { for (Long id : ids) { personnelService.checkSysOrganizeRef(id); } - organizeRDao.deleteWeaklyByIds(ids, AuthUtil.getSessionUser().getUserName()); + + organizeRDao.deleteByIds(ids); } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysPositionService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysPositionService.java index 4241829..cd118c4 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysPositionService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysPositionService.java @@ -7,8 +7,11 @@ import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.platform.bean.SysPosition; import cn.estsh.i3plus.pojo.platform.repository.SysPositionRepository; +import cn.estsh.i3plus.pojo.platform.repository.SysRefUserPositionRepository; +import cn.estsh.i3plus.pojo.platform.repository.SysUserInfoRepository; import cn.estsh.i3plus.pojo.platform.repository.SysUserRepository; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; @@ -45,6 +48,13 @@ public class SysPositionService implements ISysPositionService { @Autowired private IPersonnelService personnelService; + @Autowired + private SysRefUserPositionRepository refUserPositionRDao; + + @Autowired + private SysUserInfoRepository userInfoRDao; + + @Override @ApiOperation(value = "新增岗位信息") public SysPosition insertSysPosition(SysPosition position) { @@ -110,8 +120,16 @@ public class SysPositionService implements ISysPositionService { LOGGER.info("岗位信息 POSITION position:{}", position); positionRDao.update(position); // 更新冗余信息 - personnelService.refreshPositionRdd(position.getId()); - personnelService.refreshUpdateRefSysUserInfoPositionRdd(position.getId()); + positionRDao.updateByProperties(new String[]{"parentId"}, new Object[]{position.getId()}, + new String[]{"parentNameRdd"}, new Object[]{position.getName()}); + + // 更新用户岗位关系冗余信息 + refUserPositionRDao.updateByProperties(new String[]{"positionId"}, new Object[]{position.getId()}, + new String[]{"positionNameRdd"}, new Object[]{position.getName()}); + + // 更新用户主岗位冗余信息 + userInfoRDao.updateByProperties(new String[]{"positionId"}, new Object[]{position.getId()}, + new String[]{"positionNameRdd"}, new Object[]{position.getName()}); } @Override @@ -131,11 +149,11 @@ public class SysPositionService implements ISysPositionService { for (Long id : ids) { personnelService.checkSysPositionRef(id); } - positionRDao.deleteByIds(ids); - for (Long id : ids) { - personnelService.refreshUpdateRefSysUserInfoPositionRdd(id); - } + // 删除岗位信息 + positionRDao.deleteByIds(ids); + // 删除用户岗位关系 + refUserPositionRDao.deleteByPropertyIn("positionId",ids); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java index 3d3b970..e90fc48 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysRoleService.java @@ -12,6 +12,7 @@ import cn.estsh.i3plus.pojo.base.tool.HqlPack; import cn.estsh.i3plus.pojo.platform.bean.*; import cn.estsh.i3plus.pojo.platform.repository.SysMenuRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRefRoleMenuRepository; +import cn.estsh.i3plus.pojo.platform.repository.SysRefUserRoleRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRoleRepository; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; @@ -52,13 +53,22 @@ public class SysRoleService implements ISysRoleService { @Autowired private IUserPermissionDao userPermissionDao; + @Autowired + private SysRefUserRoleRepository refUserRoleRDao; + @Override @ApiOperation(value = "更新角色信息",notes = "更新角色信息") public void updateSysRole(SysRole sysRole) { LOGGER.info("系统角色 SYS_ROLE :{}", sysRole); + + // 更新角色信息 roleRDao.update(sysRole); - // 更新冗余信息 - personnelService.refreshUpdateSysRoleRdd(sysRole.getId()); + // 更新账号角色关系冗余信息 + refUserRoleRDao.updateByProperties(new String[]{"roleId"}, new Object[]{sysRole.getId()}, + new String[]{"roleNameRdd"}, new Object[]{sysRole.getName()}); + // 更新角色 + refRoleMenuRDao.updateByProperties(new String[]{"roleId"}, new Object[]{sysRole.getId()}, + new String[]{"roleNameRdd"}, new Object[]{sysRole.getName()}); } @Override diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java index f655546..8b7494c 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysTaskPlanService.java @@ -19,6 +19,7 @@ import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.util.ValidatorBean; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -103,6 +104,9 @@ public class SysTaskPlanService implements ISysTaskPlanService { originSysTaskPlan.setNoticeChannel(sysTaskPlan.getNoticeChannel()); originSysTaskPlan.setNoticeMethod(sysTaskPlan.getNoticeMethod()); + if(StringUtils.isNotBlank(sysTaskPlan.getLastRunDateTime())){ + originSysTaskPlan.setLastRunDateTime(sysTaskPlan.getLastRunDateTime()); + } sysTaskPlanRDao.update(originSysTaskPlan); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserInfoService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserInfoService.java index 7d65e7c..6f2e1ae 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserInfoService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysUserInfoService.java @@ -102,7 +102,6 @@ public class SysUserInfoService implements ISysUserInfoService { if(departmentList != null && departmentList.size() >0){ List list = new ArrayList<>(); - List nameList = new ArrayList<>(); SysRefUserDepartment ref = null; for (SysDepartment department : departmentList) { ref = new SysRefUserDepartment(); @@ -115,12 +114,8 @@ public class SysUserInfoService implements ISysUserInfoService { ref.setCreateUser(userName); ref.setCreateDatetime(TimeTool.getNowTime(true)); list.add(ref); - - nameList.add(department.getName()); } - userInfo.setDepartmentNamesRdd(String.join(",",nameList)); - refUserDepartmentRDao.saveAll(list); sysUserInfoRDao.save(userInfo); @@ -154,7 +149,6 @@ public class SysUserInfoService implements ISysUserInfoService { if(positionList != null && positionList.size() >0){ List list = new ArrayList<>(); - List nameList = new ArrayList<>(); SysRefUserPosition ref = null; for (SysPosition position : positionList) { ref = new SysRefUserPosition(); @@ -165,12 +159,8 @@ public class SysUserInfoService implements ISysUserInfoService { ref.setCreateUser(userName); ref.setCreateDatetime(TimeTool.getNowTime(true)); list.add(ref); - - nameList.add(position.getName()); } - userInfo.setPositionNamesRdd(String.join(",",nameList)); - refUserPositionRDao.saveAll(list); sysUserInfoRDao.save(userInfo);