From c82b14f3a882698cbca62ef168615d31711320ca Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期四, 03 七月 2025 15:12:29 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java | 0 lxzn-boot-base-core/src/main/java/org/jeecg/common/system/vo/LoginUser.java | 7 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java | 16 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/WorkShopOrgCodeProRule.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseRepairDepartTreeModel.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartMapper.xml | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java | 546 ++++++++----- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java | 26 lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictList.java | 16 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java | 72 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java | 0 lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictExt.java | 38 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java | 6 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java | 16 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepartUser.java | 0 lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/FieldQuery.java | 37 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EamDictAspect.java | 81 ++ lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysDictMapper.java | 27 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java | 0 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java | 40 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java | 0 lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java | 5 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepart.java | 0 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java | 39 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsRepairDepartsChildrenUtil.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartMapper.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/RepairDepartIdModel.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java | 7 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java | 305 +++++++ lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java | 0 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java | 0 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentTransferServiceImpl.java | 12 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java | 0 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysDictService.java | 12 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamUserSelectController.java | 2 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java | 4 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java | 0 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysDictMapper.xml | 29 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsBaseFactorysChildrenUtil.java | 0 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentSealUpServiceImpl.java | 4 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/FieldBatchQuery.java | 135 +++ lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml | 0 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java | 14 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java | 12 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java | 45 + lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentScrapServiceImpl.java | 2 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml | 15 /dev/null | 312 -------- lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java | 4 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java | 74 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java | 32 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java | 14 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/DicAspectService.java | 311 +++++++ 58 files changed, 1,594 insertions(+), 723 deletions(-) diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java index c5c2897..ee72256 100644 --- a/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/DictAspect.java @@ -52,13 +52,13 @@ /** * 瀹氫箟鍒囩偣Pointcut */ - @Pointcut("execution(public * org.jeecg.modules..*.*Controller.*(..)) || @annotation(org.jeecg.common.aspect.annotation.AutoDict)") + @Pointcut("execution(public * org.jeecg.modules.base.*Controller.*(..)) || @annotation(org.jeecg.common.aspect.annotation.AutoDict)") public void excudeService() { } @Around("excudeService()") public Object doAround(ProceedingJoinPoint pjp) throws Throwable { - long time1=System.currentTimeMillis(); + long time1=System.currentTimeMillis(); Object result = pjp.proceed(); long time2=System.currentTimeMillis(); log.debug("鑾峰彇JSON鏁版嵁 鑰楁椂锛�"+(time2-time1)+"ms"); diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictExt.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictExt.java new file mode 100644 index 0000000..a8b69d0 --- /dev/null +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictExt.java @@ -0,0 +1,38 @@ +package org.jeecg.common.aspect.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 瀛楀吀娉ㄨВ鎵╁睍锛屾敮鎸佸瀛楁鍖归厤 + */ +@Target(ElementType.FIELD) +@Retention(RetentionPolicy.RUNTIME) +public @interface DictExt { + + /** + * 鏁版嵁瀛楀吀琛� + * @return + */ + String dicTable() default ""; + + /** + * 鏁版嵁Text + * @return + */ + String dicText() default ""; + + /** + * 鏁版嵁code鏁扮粍 + * @return + */ + String[] dicCode(); + + /** + * 鏁版嵁鍙傛暟鏁扮粍锛屽弬鏁拌窡code鏁扮粍涓�涓�瀵瑰簲 + * @return + */ + String[] dicParams(); +} diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictList.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictList.java new file mode 100644 index 0000000..33b19d3 --- /dev/null +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/DictList.java @@ -0,0 +1,16 @@ +package org.jeecg.common.aspect.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 绫绘弿杩�: 娣卞害瀛楀吀缈昏瘧娉ㄨВ + * 鍙兘鐢ㄦ潵娉ㄨВList绫诲瀷鐨勫睘鎬� + */ +@Target(ElementType.FIELD) +@Retention(RetentionPolicy.RUNTIME) +public @interface DictList { + +} diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/FieldQuery.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/FieldQuery.java new file mode 100644 index 0000000..c8dc56b --- /dev/null +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/aspect/annotation/FieldQuery.java @@ -0,0 +1,37 @@ +package org.jeecg.common.aspect.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 瀛楀吀娉ㄨВ + */ +@Target(ElementType.FIELD) +@Retention(RetentionPolicy.RUNTIME) +public @interface FieldQuery{ + /** + * 鍏宠仈鏁版嵁琛� + * @return + */ + String dicTable() default ""; + + /** + * 鏁版嵁Text + * @return + */ + String dicText() default ""; + + /** + * 鏁版嵁code鏁扮粍 + * @return + */ + String[] dicCode(); + + /** + * 鏁版嵁鍙傛暟鏁扮粍锛屽弬鏁拌窡code鏁扮粍涓�涓�瀵瑰簲 + * @return + */ + String[] dicParams(); +} diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java index 2321cfa..3f13a76 100644 --- a/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/FillRuleConstant.java @@ -21,7 +21,10 @@ * 浜х嚎缂栫爜 */ public static final String PRODUCTION = "org_num_rule"; - + /** + * 缁翠慨閮ㄩ棬鐝粍缂栫爜 + */ + public static final String REPAIRDEPART = "org_repair_deport_rule"; /** * 璁惧杞﹂棿缂栫爜 */ diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/system/vo/LoginUser.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/system/vo/LoginUser.java index 6345532..6c8940d 100644 --- a/lxzn-boot-base-core/src/main/java/org/jeecg/common/system/vo/LoginUser.java +++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/system/vo/LoginUser.java @@ -89,7 +89,7 @@ * 鐘舵��(1锛氭甯� 2锛氬喕缁� 锛� */ private Integer status; - + private Integer delFlag; /** * 鍚屾宸ヤ綔娴佸紩鎿�1鍚屾0涓嶅悓姝� @@ -143,4 +143,9 @@ private String equipmentIds; + /** + * 璁惧绠$悊璁惧缁� + */ + private String eamEquipmentIds; + } diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EamDictAspect.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EamDictAspect.java new file mode 100644 index 0000000..77202b1 --- /dev/null +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EamDictAspect.java @@ -0,0 +1,81 @@ +package org.jeecg.modules.eam.aspect; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.metadata.IPage; +import lombok.extern.slf4j.Slf4j; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.system.aspect.DicAspectService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description: Dnc瀛楀吀aop绫� + * @Version: 1.0 + */ +@Aspect +@Component +@Slf4j +public class EamDictAspect { + @Autowired + private DicAspectService dicAspectService; + + // 瀹氫箟鍒囩偣Pointcut + @Pointcut("execution(public * org.jeecg.modules.eam..*.*Controller.*(..))") + public void excudeService() { + } + + @Around("excudeService()") + public Object doAround(ProceedingJoinPoint pjp) throws Throwable { + long time1=System.currentTimeMillis(); + Object result = pjp.proceed(); + long time2=System.currentTimeMillis(); + log.debug("鑾峰彇JSON鏁版嵁 鑰楁椂锛�"+(time2-time1)+"ms"); + long start=System.currentTimeMillis(); + this.parseDictText(result); + long end=System.currentTimeMillis(); + log.debug("瑙f瀽娉ㄥ叆JSON鏁版嵁 鑰楁椂"+(end-start)+"ms"); + return result; + } + + /** + * 鏈柟娉曢拡瀵硅繑鍥炲璞′负Result 鐨処Page鐨勫垎椤靛垪琛ㄦ暟鎹繘琛屽姩鎬佸瓧鍏告敞鍏� + * 瀛楀吀娉ㄥ叆瀹炵幇 閫氳繃瀵瑰疄浣撶被娣诲姞娉ㄨВ@dict 鏉ユ爣璇嗛渶瑕佺殑瀛楀吀鍐呭,瀛楀吀鍒嗕负鍗曞瓧鍏竎ode鍗冲彲 锛宼able瀛楀吀 code table text閰嶅悎浣跨敤涓庡師鏉eecg鐨勭敤娉曠浉鍚� + * 绀轰緥涓篠ysUser 瀛楁涓簊ex 娣诲姞浜嗘敞瑙Dict(dicCode = "sex") 浼氬湪瀛楀吀鏈嶅姟绔嬮┈鏌ュ嚭鏉ュ搴旂殑text 鐒跺悗鍦ㄨ姹俵ist鐨勬椂鍊欏皢杩欎釜瀛楀吀text锛屽凡瀛楁鍚嶇О鍔燺dictText褰㈠紡杩斿洖鍒板墠绔� + * 渚嬭緭鍏ュ綋鍓嶈繑鍥炲�肩殑灏变細澶氬嚭涓�涓猻ex_dictText瀛楁 + * { + * sex:1, + * sex_dictText:"鐢�" + * } + * 鍓嶇鐩存帴鍙栧�約ext_dictText鍦╰able閲岄潰鏃犻渶鍐嶈繘琛屽墠绔殑瀛楀吀杞崲浜� + * customRender:function (text) { + * if(text==1){ + * return "鐢�"; + * }else if(text==2){ + * return "濂�"; + * }else{ + * return text; + * } + * } + * 鐩墠vue鏄繖涔堣繘琛屽瓧鍏告覆鏌撳埌table涓婄殑澶氫簡灏卞緢楹荤儲浜� 杩欎釜鐩存帴鍦ㄦ湇鍔$娓叉煋瀹屾垚鍓嶇鍙互鐩存帴鐢� + * @param result + */ + private void parseDictText(Object result) { + if (result instanceof Result) { + if (((Result) result).getResult() instanceof IPage) { + List<JSONObject> items = dicAspectService.detailDict(((IPage) ((Result) result).getResult()).getRecords()); + ((IPage) ((Result) result).getResult()).setRecords(items); + } + else if(((Result) result).getResult() instanceof List){ + List<JSONObject> items = dicAspectService.detailDict(((List) ((Result) result).getResult())); + ((Result) result).setResult(items); + } + } + } + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryController.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/BaseFactoryUserController.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java similarity index 75% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java index 155615c..e04b991 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/controller/EamBaseRepairDepartController.java @@ -43,7 +43,7 @@ public class EamBaseRepairDepartController extends JeecgController<EamBaseRepairDepart, IEamBaseRepairDepartService> { @Resource - private IEamBaseRepairDepartService sysMaintainDepartService; + private IEamBaseRepairDepartService eamBaseRepairDepartService; /** * 鍒嗛〉鍒楄〃鏌ヨ @@ -63,7 +63,7 @@ HttpServletRequest req) { QueryWrapper<EamBaseRepairDepart> queryWrapper = QueryGenerator.initQueryWrapper(eamBaseRepairDepart, req.getParameterMap()); Page<EamBaseRepairDepart> page = new Page<EamBaseRepairDepart>(pageNo, pageSize); - IPage<EamBaseRepairDepart> pageList = sysMaintainDepartService.page(page, queryWrapper); + IPage<EamBaseRepairDepart> pageList = eamBaseRepairDepartService.page(page, queryWrapper); return Result.OK(pageList); } @@ -74,10 +74,10 @@ Result<List<EamBaseRepairDepartTreeModel>> result = new Result<>(); try { if (oConvertUtils.isNotEmpty(ids)) { - List<EamBaseRepairDepartTreeModel> maintainDepartList = sysMaintainDepartService.queryTreeList(ids); - result.setResult(maintainDepartList); + List<EamBaseRepairDepartTreeModel> repairDepartList = eamBaseRepairDepartService.queryTreeList(ids); + result.setResult(repairDepartList); } else { - List<EamBaseRepairDepartTreeModel> list = sysMaintainDepartService.queryTreeList(); + List<EamBaseRepairDepartTreeModel> list = eamBaseRepairDepartService.queryTreeList(); result.setResult(list); } result.setSuccess(true); @@ -87,22 +87,22 @@ return result; } - @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」") - @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」", notes = "缁翠慨閮ㄩ棬鐝粍-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」") - @GetMapping(value = "/loadMaintainDepartTreeOptions") - public Result<List<RepairDepartIdModel>> loadMaintainDepartTreeOptions() { - Result<List<RepairDepartIdModel>> result = new Result<>(); - LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - String userId = user.getId(); - try { - List<RepairDepartIdModel> list = sysMaintainDepartService.loadMaintainDepartTreeOptions(userId); - result.setSuccess(true); - result.setResult(list); - } catch (Exception e) { - log.error(e.getMessage(), e); - } - return result; - } +// @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」") +// @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」", notes = "缁翠慨閮ㄩ棬鐝粍-鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」") +// @GetMapping(value = "/loadMaintainDepartTreeOptions") +// public Result<List<RepairDepartIdModel>> loadMaintainDepartTreeOptions() { +// Result<List<RepairDepartIdModel>> result = new Result<>(); +// LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); +// String userId = user.getId(); +// try { +// List<RepairDepartIdModel> list = eamBaseRepairDepartService.loadMaintainDepartTreeOptions(userId); +// result.setSuccess(true); +// result.setResult(list); +// } catch (Exception e) { +// log.error(e.getMessage(), e); +// } +// return result; +// } @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-id闆嗗悎") @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-id闆嗗悎", notes = "缁翠慨閮ㄩ棬鐝粍-id闆嗗悎") @@ -110,8 +110,8 @@ public Result<List<String>> queryTreeIdList() { Result<List<String>> result = new Result<>(); try { - List<EamBaseRepairDepart> maintainDepartList = sysMaintainDepartService.list(new LambdaQueryWrapper<EamBaseRepairDepart>().eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0).orderByAsc(EamBaseRepairDepart::getDepartOrder)); - List<String> ids = maintainDepartList.stream().map(EamBaseRepairDepart::getId).collect(Collectors.toList()); + List<EamBaseRepairDepart> repairDepartList = eamBaseRepairDepartService.list(new LambdaQueryWrapper<EamBaseRepairDepart>().eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0).orderByAsc(EamBaseRepairDepart::getDepartOrder)); + List<String> ids = repairDepartList.stream().map(EamBaseRepairDepart::getId).collect(Collectors.toList()); result.setSuccess(true); result.setResult(ids); } catch (Exception e) { @@ -129,11 +129,11 @@ @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-娣诲姞") @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-娣诲姞", notes = "缁翠慨閮ㄩ棬鐝粍-娣诲姞") @PostMapping(value = "/add") - @CacheEvict(value = {"sys:cache:maintainDepart:alldata", "sys:cache:maintainDepart:allids"}, allEntries = true) + @CacheEvict(value = {"eam:cache:repairDepart:alldata", "eam:cache:repairDepart:allids"}, allEntries = true) public Result<EamBaseRepairDepart> add(@RequestBody EamBaseRepairDepart eamBaseRepairDepart) { Result<EamBaseRepairDepart> result = new Result<>(); try { - sysMaintainDepartService.saveMaintainDepartData(eamBaseRepairDepart); + eamBaseRepairDepartService.saveMaintainDepartData(eamBaseRepairDepart); result.success("娣诲姞鎴愬姛锛�"); } catch (Exception e) { log.error(e.getMessage(), e); @@ -151,14 +151,14 @@ @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-缂栬緫") @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-缂栬緫", notes = "缁翠慨閮ㄩ棬鐝粍-缂栬緫") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) - @CacheEvict(value = {"sys:cache:maintainDepart:alldata", "sys:cache:maintainDepart:allids"}, allEntries = true) + @CacheEvict(value = {"eam:cache:repairDepart:alldata", "eam:cache:repairDepart:allids"}, allEntries = true) public Result<EamBaseRepairDepart> edit(@RequestBody EamBaseRepairDepart eamBaseRepairDepart) { Result<EamBaseRepairDepart> result = new Result<>(); - EamBaseRepairDepart eamBaseRepairDepartEntity = sysMaintainDepartService.getById(eamBaseRepairDepart.getId()); + EamBaseRepairDepart eamBaseRepairDepartEntity = eamBaseRepairDepartService.getById(eamBaseRepairDepart.getId()); if (eamBaseRepairDepartEntity == null) { result.error500("鏈壘鍒板搴斿疄浣�"); } else { - boolean ok = sysMaintainDepartService.updateMaintainDepartDataById(eamBaseRepairDepart); + boolean ok = eamBaseRepairDepartService.updateMaintainDepartDataById(eamBaseRepairDepart); if (ok) { result.success("淇敼鎴愬姛!"); } @@ -175,14 +175,14 @@ @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-閫氳繃id鍒犻櫎") @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-閫氳繃id鍒犻櫎", notes = "缁翠慨閮ㄩ棬鐝粍-閫氳繃id鍒犻櫎") @DeleteMapping(value = "/delete") - @CacheEvict(value = {"sys:cache:maintainDepart:alldata", "sys:cache:maintainDepart:allids"}, allEntries = true) + @CacheEvict(value = {"eam:cache:repairDepart:alldata", "eam:cache:repairDepart:allids"}, allEntries = true) public Result<EamBaseRepairDepart> delete(@RequestParam(name = "id", required = true) String id) { Result<EamBaseRepairDepart> result = new Result<>(); - EamBaseRepairDepart eamBaseRepairDepart = sysMaintainDepartService.getById(id); + EamBaseRepairDepart eamBaseRepairDepart = eamBaseRepairDepartService.getById(id); if (eamBaseRepairDepart == null) { result.error500("鏈壘鍒板搴斿疄浣�"); } else { - boolean ok = sysMaintainDepartService.delete(id); + boolean ok = eamBaseRepairDepartService.delete(id); if (ok) { result.success("鍒犻櫎鎴愬姛!"); } @@ -199,13 +199,13 @@ @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-鎵归噺鍒犻櫎") @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-鎵归噺鍒犻櫎", notes = "缁翠慨閮ㄩ棬鐝粍-鎵归噺鍒犻櫎") @DeleteMapping(value = "/deleteBatch") - @CacheEvict(value = {"sys:cache:maintainDepart:alldata", "sys:cache:maintainDepart:allids"}, allEntries = true) + @CacheEvict(value = {"eam:cache:repairDepart:alldata", "eam:cache:repairDepart:allids"}, allEntries = true) public Result<EamBaseRepairDepart> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { Result<EamBaseRepairDepart> result = new Result<>(); if (ids == null || "".equals(ids.trim())) { result.error500("鍙傛暟涓嶈瘑鍒紒"); } else { - this.sysMaintainDepartService.deleteBatchWithChildren(Arrays.asList(ids.split(","))); + this.eamBaseRepairDepartService.deleteBatchWithChildren(Arrays.asList(ids.split(","))); result.success("鍒犻櫎鎴愬姛!"); } return result; @@ -217,7 +217,7 @@ public Result<List<RepairDepartIdModel>> queryIdTree() { Result<List<RepairDepartIdModel>> result = new Result<>(); try { - List<RepairDepartIdModel> list = sysMaintainDepartService.queryMaintainDepartIdTreeList(); + List<RepairDepartIdModel> list = eamBaseRepairDepartService.queryMaintainDepartIdTreeList(); result.setResult(list); result.setSuccess(true); } catch (Exception e) { @@ -231,7 +231,7 @@ @GetMapping(value = "/searchBy") public Result<List<EamBaseRepairDepartTreeModel>> searchBy(@RequestParam(name = "keyWord", required = true) String keyWord) { Result<List<EamBaseRepairDepartTreeModel>> result = new Result<>(); - List<EamBaseRepairDepartTreeModel> treeList = sysMaintainDepartService.searchByKeyWord(keyWord); + List<EamBaseRepairDepartTreeModel> treeList = eamBaseRepairDepartService.searchByKeyWord(keyWord); if (treeList == null || treeList.isEmpty()) { result.setSuccess(false); result.setMessage("鏈煡璇㈠尮閰嶆暟鎹紒"); @@ -251,7 +251,7 @@ @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-閫氳繃id鏌ヨ", notes = "缁翠慨閮ㄩ棬鐝粍-閫氳繃id鏌ヨ") @GetMapping(value = "/queryById") public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { - EamBaseRepairDepart eamBaseRepairDepart = sysMaintainDepartService.getById(id); + EamBaseRepairDepart eamBaseRepairDepart = eamBaseRepairDepartService.getById(id); return Result.OK(eamBaseRepairDepart); } @@ -278,7 +278,7 @@ @AutoLog(value = "缁翠慨閮ㄩ棬鐝粍-閫氳繃excel瀵煎叆鏁版嵁") @ApiOperation(value = "缁翠慨閮ㄩ棬鐝粍-閫氳繃excel瀵煎叆鏁版嵁", notes = "缁翠慨閮ㄩ棬鐝粍-閫氳繃excel瀵煎叆鏁版嵁") @PostMapping(value = "/importExcel") - @CacheEvict(value = {"sys:cache:maintainDepart:alldata", "sys:cache:maintainDepart:allids"}, allEntries = true) + @CacheEvict(value = {"eam:cache:repairDepart:alldata", "eam:cache:repairDepart:allids"}, allEntries = true) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, EamBaseRepairDepart.class); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactory.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/BaseFactoryUser.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepart.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepart.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepart.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepart.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepartUser.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepartUser.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepartUser.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/entity/EamBaseRepairDepartUser.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryMapper.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/BaseFactoryUserMapper.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartMapper.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartMapper.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartMapper.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartMapper.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryMapper.xml diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/BaseFactoryUserMapper.xml diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartMapper.xml b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartMapper.xml similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartMapper.xml rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartMapper.xml diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java similarity index 89% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java index 6f8f16f..1d0c674 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseFactoryTreeModel.java @@ -1,17 +1,10 @@ package org.jeecg.modules.eam.base.model; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableLogic; -import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.modules.eam.base.entity.BaseFactory; -import org.jeecgframework.poi.excel.annotation.Excel; -import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.util.ArrayList; diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseRepairDepartTreeModel.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseRepairDepartTreeModel.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/EamBaseRepairDepartTreeModel.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/EamBaseRepairDepartTreeModel.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/RepairDepartIdModel.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/RepairDepartIdModel.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/RepairDepartIdModel.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/RepairDepartIdModel.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/model/WorkShopIdModel.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/rule/OrgCodeRepDepRule.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryService.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IBaseFactoryUserService.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java similarity index 63% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java index 2b60d19..90a26bb 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/IEamBaseRepairDepartService.java @@ -53,41 +53,41 @@ * 鏍规嵁浜х嚎id鎵归噺鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾т骇绾� */ void deleteBatchWithChildren(List<String> ids); - - /** - * 鑾峰彇涓嬬骇浜х嚎 - */ - List<EamBaseRepairDepart> queryRepDepByPid(String pid); - - /** - * 鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」 - */ - List<RepairDepartIdModel> loadMaintainDepartTreeOptions(String userId); - - /** - * 閫掑綊鏌ヨ鎵�鏈夊瓙鑺傜偣 - */ - List<String> recursionChildren(String productionId); - - /** - * 鏍规嵁鐢ㄦ埛id鍜岃溅闂磇d鑾峰彇鐢ㄦ埛鎷ユ湁鐨勮溅闂磇d - * - * @param userId - * @param productionId - * @return - */ - String findFirstMaintainDepart(String userId, String productionId); - - /** - * 鏍规嵁鐢ㄦ埛id鏌ヨ鐢ㄦ埛宸ユ鏉冮檺 - */ - String findThreeMaintainDepartId(String userId); - - /** - * - * @param equipmentId - * @return - */ - EamBaseRepairDepart findMaintainDepartList(String equipmentId); +// +// /** +// * 鑾峰彇涓嬬骇浜х嚎 +// */ +// List<EamBaseRepairDepart> queryRepDepByPid(String pid); +// +// /** +// * 鏍规嵁鐢ㄦ埛id鑾峰彇浜х嚎涓嬫媺鏍戦�夐」 +// */ +// List<RepairDepartIdModel> loadMaintainDepartTreeOptions(String userId); +// +// /** +// * 閫掑綊鏌ヨ鎵�鏈夊瓙鑺傜偣 +// */ +// List<String> recursionChildren(String productionId); +// +// /** +// * 鏍规嵁鐢ㄦ埛id鍜岃溅闂磇d鑾峰彇鐢ㄦ埛鎷ユ湁鐨勮溅闂磇d +// * +// * @param userId +// * @param productionId +// * @return +// */ +// String findFirstMaintainDepart(String userId, String productionId); +// +// /** +// * 鏍规嵁鐢ㄦ埛id鏌ヨ鐢ㄦ埛宸ユ鏉冮檺 +// */ +// String findThreeMaintainDepartId(String userId); +// +// /** +// * +// * @param equipmentId +// * @return +// */ +// EamBaseRepairDepart findMaintainDepartList(String equipmentId); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryServiceImpl.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/BaseFactoryUserServiceImpl.java diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java new file mode 100644 index 0000000..38a4fe4 --- /dev/null +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java @@ -0,0 +1,305 @@ +package org.jeecg.modules.eam.base.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.IdWorker; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.apache.commons.lang3.StringUtils; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.constant.FillRuleConstant; +import org.jeecg.common.util.FillRuleUtil; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart; +import org.jeecg.modules.eam.base.service.IEamBaseRepairDepartService; +import org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartMapper; +import org.jeecg.modules.eam.base.model.EamBaseRepairDepartTreeModel; +import org.jeecg.modules.eam.base.model.RepairDepartIdModel; +import org.jeecg.modules.eam.base.util.FindsRepairDepartsChildrenUtil; +import org.jeecg.modules.system.mapper.SysUserMapper; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.*; + +/** + * @Author: Lius + * @CreateTime: 2025-07-01 + * @Description: + */ +@Service +public class EamBaseRepairDepartImpl extends ServiceImpl<EamBaseRepairDepartMapper, EamBaseRepairDepart> implements IEamBaseRepairDepartService { + + @Resource + private SysUserMapper sysUserMapper; + + /** + * queryTreeList 瀵瑰簲 queryTreeList 鏌ヨ鎵�鏈夌殑缁翠慨閮ㄩ棬鐝粍鏁版嵁,浠ユ爲缁撴瀯褰㈠紡鍝嶅簲缁欏墠绔� + */ + @Override + @Cacheable(value = "eam:cache:repairDepart:alldata") + public List<EamBaseRepairDepartTreeModel> queryTreeList() { + LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<EamBaseRepairDepart>(); + query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + query.orderByAsc(EamBaseRepairDepart::getDepartOrder); + List<EamBaseRepairDepart> list = this.list(query); + //璁剧疆鐢ㄦ埛id锛岃鍓嶅彴鏄剧ず +// this.setUserIdsByProList(list); + //璋冪敤wrapTreeDataToTreeList鏂规硶鐢熸垚鏍戠姸鏁版嵁 + return FindsRepairDepartsChildrenUtil.wrapTreeDataToTreeList(list); + } + + /** + * queryTreeList 鏍规嵁缁翠慨閮ㄩ棬鐝粍id鏌ヨ,鍓嶇鍥炴樉璋冪敤 + */ + @Override + public List<EamBaseRepairDepartTreeModel> queryTreeList(String ids) { + List<EamBaseRepairDepartTreeModel> listResult = new ArrayList<>(); + LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<EamBaseRepairDepart>(); + query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + if (oConvertUtils.isNotEmpty(ids)) { + query.in(true, EamBaseRepairDepart::getId, ids.split(",")); + } + query.orderByAsc(EamBaseRepairDepart::getDepartOrder); + List<EamBaseRepairDepart> list = this.list(query); + for (EamBaseRepairDepart repairDepart : list) { + listResult.add(new EamBaseRepairDepartTreeModel(repairDepart)); + } + return listResult; + } + + @Override + @Cacheable(value = "eam:cache:repairDepart:allids") + public List<RepairDepartIdModel> queryMaintainDepartIdTreeList() { + LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>(); + query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); + query.orderByAsc(EamBaseRepairDepart::getDepartOrder); + List<EamBaseRepairDepart> list = this.list(query); + //璋冪敤wrapTreeDataToTreeList鏂规硶鐢熸垚鏍戠姸鏁版嵁 + return FindsRepairDepartsChildrenUtil.wrapTreeDataToMaintainDepartIdTreeList(list); + } + + /** + * 鏍规嵁鍏抽敭瀛楁悳绱㈢浉鍏崇殑閮ㄩ棬鏁版嵁 + */ + @Override + public List<EamBaseRepairDepartTreeModel> searchByKeyWord(String keyWord) { + LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>(); + List<EamBaseRepairDepartTreeModel> newList = new ArrayList<>(); + query.like(EamBaseRepairDepart::getDepartName, keyWord); + EamBaseRepairDepartTreeModel model = new EamBaseRepairDepartTreeModel(); + List<EamBaseRepairDepart> repairDepartList = this.list(query); + if (!repairDepartList.isEmpty()) { + for (EamBaseRepairDepart eamBaseRepairDepart : repairDepartList) { + model = new EamBaseRepairDepartTreeModel(eamBaseRepairDepart); + model.setChildren(null); + newList.add(model); + } + return newList; + } + return Collections.emptyList(); + } + + /** + * saveMaintainDepartData 瀵瑰簲 add 淇濆瓨鐢ㄦ埛鍦ㄩ〉闈㈡坊鍔犵殑鏂扮殑缁翠慨閮ㄩ棬鐝粍瀵硅薄鏁版嵁 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void saveMaintainDepartData(EamBaseRepairDepart eamBaseRepairDepart) { + if (eamBaseRepairDepart != null) { + if (eamBaseRepairDepart.getParentId() == null) { + eamBaseRepairDepart.setParentId(""); + } + eamBaseRepairDepart.setId(IdWorker.getIdStr(eamBaseRepairDepart)); + // 鍏堝垽鏂瀵硅薄鏈夋棤鐖剁骇ID,鏈夊垯鎰忓懗鐫�涓嶆槸鏈�楂樼骇,鍚﹀垯鎰忓懗鐫�鏄渶楂樼骇 + // 鑾峰彇鐖剁骇ID + String parentId = eamBaseRepairDepart.getParentId(); + JSONObject formData = new JSONObject(); + formData.put("parentId",parentId); + String[] codeArray = (String[]) FillRuleUtil.executeRule(FillRuleConstant.REPAIRDEPART,formData); + eamBaseRepairDepart.setOrgCode(codeArray[0]); + String orgType = codeArray[1]; + eamBaseRepairDepart.setOrgType(String.valueOf(orgType)); + eamBaseRepairDepart.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); + this.save(eamBaseRepairDepart); + } + } + + /** + * updateMaintainDepartDataById 瀵瑰簲 edit 鏍规嵁缁翠慨閮ㄩ棬鐝粍涓婚敭鏉ユ洿鏂板搴旂殑缁翠慨閮ㄩ棬鐝粍鏁版嵁 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean updateMaintainDepartDataById(EamBaseRepairDepart eamBaseRepairDepart) { + if (eamBaseRepairDepart != null) { + this.updateById(eamBaseRepairDepart); + return true; + } + return false; + } + + /** + * 鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾х淮淇儴闂ㄧ彮缁� + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean delete(String id) { + List<String> idList = new ArrayList<>(); + idList.add(id); + this.checkChildrenExists(id, idList); + boolean result = this.removeByIds(idList); + //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎鐢ㄦ埛涓庣淮淇儴闂ㄧ彮缁勫叧绯� +// repairDepartUserMapper.delete(new LambdaQueryWrapper<EamBaseRepairDepartUser>().in(EamBaseRepairDepartUser::getDepartId, idList)); + //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎缁翠慨閮ㄩ棬鐝粍涓庤澶囧叧绯� +// repairDepartEquipmentMapper.delete(new LambdaQueryWrapper<SysMaintainDepartEquipment>().in(SysMaintainDepartEquipment::getMaintainDepartId, idList)); + return result; + } + + /** + * 鏍规嵁缁翠慨閮ㄩ棬鐝粍id鎵归噺鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾х淮淇儴闂ㄧ彮缁� + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteBatchWithChildren(List<String> ids) { + List<String> idList = new ArrayList<>(); + for (String id : ids) { + idList.add(id); + this.checkChildrenExists(id, idList); + } + this.removeByIds(idList); + //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎鐢ㄦ埛涓庣淮淇儴闂ㄧ彮缁勫叧绯� +// repairDepartUserMapper.delete(new LambdaQueryWrapper<EamBaseRepairDepartUser>().in(EamBaseRepairDepartUser::getDepartId, idList)); + //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎缁翠慨閮ㄩ棬鐝粍涓庤澶囧叧绯� +// repairDepartEquipmentMapper.delete(new LambdaQueryWrapper<SysMaintainDepartEquipment>().in(SysMaintainDepartEquipment::getMaintainDepartId, idList)); + } + +// /** +// * 鏍规嵁id鏌ヨ涓嬬骇缁翠慨閮ㄩ棬鐝粍 +// */ +// @Override +// public List<EamBaseRepairDepart> queryRepDepByPid(String pid) { +// return this.baseMapper.queryRepDepByPid(pid); +// } +// +// /** +// * 鏍规嵁鐢ㄦ埛id鑾峰彇缁翠慨閮ㄩ棬鐝粍涓嬫媺鏍戦�夐」 +// */ +// @Override +// public List<RepairDepartIdModel> loadMaintainDepartTreeOptions(String userId) { +// //鑾峰彇鎵�鏈夌淮淇儴闂ㄧ彮缁勬暟鎹� +// List<EamBaseRepairDepart> repairDepartList = this.baseMapper.selectList(new LambdaQueryWrapper<EamBaseRepairDepart>().eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).orderByAsc(EamBaseRepairDepart::getDepartOrder)); +// //鏍规嵁鐢ㄦ埛id鑾峰彇鎷ユ湁鐨勭淮淇儴闂ㄧ彮缁勪俊鎭泦鍚� +// List<String> repairDepartIds = repairDepartUserMapper.queryRepairDepartIdsByUserId(userId); +// List<String> allMaintainDepartIds = new ArrayList<>(); +// //鎵惧埌鎵�鏈夌淮淇儴闂ㄧ彮缁刬d鐨勪笂绾d +// if (repairDepartIds != null && !repairDepartIds.isEmpty()) { +// for (String repairDepartId : repairDepartIds) { +// this.getAllMaintainDepartIds(repairDepartList, repairDepartId, allMaintainDepartIds); +// } +// } +// //杩囨护缁翠慨閮ㄩ棬鐝粍鏁版嵁 +// List<EamBaseRepairDepart> list = repairDepartList.stream().filter((EamBaseRepairDepart eamBaseRepairDepart) -> allMaintainDepartIds.contains(eamBaseRepairDepart.getId())).collect(Collectors.toList()); +// return FindsRepairDepartsChildrenUtil.wrapTreeDataToMaintainDepartIdTreeList(list); +// } +// +// /** +// * 閫掑綊鏌ヨ鎵�鏈夊瓙鑺傜偣id +// */ +// @Override +// public List<String> recursionChildren(String repairDepartId) { +// return this.baseMapper.recursionChildren(repairDepartId); +// } +// +// /** +// * 鏍规嵁鐢ㄦ埛id鍜岃溅闂磇d鑾峰彇鐢ㄦ埛鎷ユ湁鐨勮溅闂磇d +// * @param userId +// * @param repairDepartId +// * @return +// */ +// @Override +// public String findFirstMaintainDepart(String userId, String repairDepartId) { +// return this.baseMapper.findFirstMaintain(userId, repairDepartId); +// } +// +// /** +// * 鏍规嵁鐢ㄦ埛id鏌ヨ鐢ㄦ埛缁翠慨閮ㄩ棬鐝粍鏉冮檺 +// */ +// @Override +// public String findThreeMaintainDepartId(String userId) { +// return this.baseMapper.findThreeMaintainId(userId); +// } +// +// @Override +// public EamBaseRepairDepart findMaintainDepartList(String equipmentId) { +// return this.baseMapper.findMaintainList(equipmentId); +// } + + /** + * delete 鏂规硶璋冪敤 閫掑綊鏌ユ壘瀛愰泦id + */ + private void checkChildrenExists(String id, List<String> idList) { + LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>(); + query.eq(EamBaseRepairDepart::getParentId, id); + List<EamBaseRepairDepart> repairDepartList = this.list(query); + if (repairDepartList != null && !repairDepartList.isEmpty()) { + for (EamBaseRepairDepart repairDepart : repairDepartList) { + idList.add(repairDepart.getId()); + this.checkChildrenExists(repairDepart.getId(), idList); + } + } + } + +// /** +// * 鑾峰彇鎵�鏈夌殑缁翠慨閮ㄩ棬鐝粍id锛堝寘鍚墍鏈変笂绾э級 +// */ +// private void getAllMaintainDepartIds(List<EamBaseRepairDepart> repairDepartList, String repairDepartId, List<String> allMaintainDepartIds) { +// if (!allMaintainDepartIds.contains(repairDepartId)) { +// allMaintainDepartIds.add(repairDepartId); +// } +// for (EamBaseRepairDepart eamBaseRepairDepart : repairDepartList) { +// if (StringUtils.isEmpty(eamBaseRepairDepart.getParentId())) { +// continue; +// } +// if (repairDepartId.equals(eamBaseRepairDepart.getId())) { +// if (!allMaintainDepartIds.contains(eamBaseRepairDepart.getParentId())) { +// allMaintainDepartIds.add(eamBaseRepairDepart.getParentId()); +// getAllMaintainDepartIds(repairDepartList, eamBaseRepairDepart.getParentId(), allMaintainDepartIds); +// } +// } +// } +// } +// +// /** +// * 閫氳繃缁翠慨閮ㄩ棬鐝粍闆嗗悎涓虹淮淇儴闂ㄧ彮缁勮缃敤鎴穒d锛岀敤浜庡墠鍙板睍绀� +// */ +// private void setUserIdsByProList(List<EamBaseRepairDepart> repairDepartList) { +// //鏌ヨ璐熻矗閮ㄩ棬涓嶄负绌虹殑鎯呭喌 +// LambdaQueryWrapper<SysUser> query = new LambdaQueryWrapper<>(); +// query.isNotNull(SysUser::getDepartIds); +// List<SysUser> users = sysUserMapper.selectList(query); +// Map<String, Object> map = new HashMap(5); +// //鍏堝惊鐜竴閬嶆壘鍒颁笉鍚岀殑璐熻矗缁翠慨閮ㄩ棬鐝粍id +// for (SysUser user : users) { +// String repairDepartIds = user.getRepairDepartIds(); +// if (StringUtils.isNotBlank(repairDepartIds)) { +// String[] repairDepartIdArray = repairDepartIds.split(","); +// for (String repairDepartId : repairDepartIdArray) { +// if (map.containsKey(repairDepartId)) { +// String userIds = map.get(repairDepartId) + "," + user.getId(); +// map.put(repairDepartId, userIds); +// } else { +// map.put(repairDepartId, user.getId()); +// } +// } +// } +// } +// //寰幆缁翠慨閮ㄩ棬鐝粍闆嗗悎鎵惧埌缁翠慨閮ㄩ棬鐝粍id瀵瑰簲鐨勮礋璐g敤鎴� +// for (EamBaseRepairDepart eamBaseRepairDepart : repairDepartList) { +// if (map.containsKey(eamBaseRepairDepart.getId())) { +// eamBaseRepairDepart.setDirectorUserIds(map.get(eamBaseRepairDepart.getId()).toString()); +// } +// } +// } + +} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/util/FindsBaseFactorysChildrenUtil.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsBaseFactorysChildrenUtil.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/util/FindsBaseFactorysChildrenUtil.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsBaseFactorysChildrenUtil.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/util/FindsRepairDepartsChildrenUtil.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsRepairDepartsChildrenUtil.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/util/FindsRepairDepartsChildrenUtil.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/FindsRepairDepartsChildrenUtil.java diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/util/WorkShopOrgCodeProRule.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/WorkShopOrgCodeProRule.java similarity index 100% rename from lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/util/WorkShopOrgCodeProRule.java rename to lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/base/util/WorkShopOrgCodeProRule.java diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java index 9ce89d0..e96653e 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipment.java @@ -1,5 +1,6 @@ package org.jeecg.modules.eam.entity; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; @@ -14,6 +15,7 @@ import org.jeecgframework.poi.excel.annotation.Excel; import org.springframework.format.annotation.DateTimeFormat; +import java.awt.*; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; @@ -69,287 +71,405 @@ @ApiModelProperty(value = "鍒犻櫎鏍囪") private Integer delFlag; /** - * 璁惧缁熶竴缂栧彿 + * 鍏抽敭璁惧鏍囪瘑 */ - @Excel(name = "璁惧缂栧彿", width = 15, orderNum = "1") - @ApiModelProperty(value = "璁惧缂栧彿") + @Excel(name = "鍏抽敭璁惧鏍囪瘑", width = 15, orderNum = "1") + @ApiModelProperty(value = "鍏抽敭璁惧鏍囪瘑") + @Dict(dicCode = "equipment_importance") + private String equipmentImportance; + + /** + * 缁熶竴缂栫爜 + */ + @Excel(name = "缁熶竴缂栫爜", width = 15, orderNum = "2") + @ApiModelProperty(value = "缁熶竴缂栫爜") private String equipmentCode; /** * 璁惧鍚嶇О */ - @Excel(name = "璁惧鍚嶇О", width = 15, orderNum = "2") + @Excel(name = "璁惧鍚嶇О", width = 15, orderNum = "3") @ApiModelProperty(value = "璁惧鍚嶇О") private String equipmentName; + /** - * 浣跨敤閮ㄩ棬 + * 鍏徃 */ - @Excel(name = "浣跨敤杞﹂棿", width = 25, dictTable = "mdc_production", dicText = "production_name", dicCode = "id", orderNum = "9") - @ApiModelProperty(value = "浣跨敤閮ㄩ棬") - @Dict(dicCode = "mdc_production, production_name, id") - private String orgId; +// @Excel(name = "鍏徃", width = 15, orderNum = "4") + @ApiModelProperty(value = "鍏徃") + @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code") + private transient String gsfactoryOrgCode; + /** - * 璁惧绠$悊鍛� + * 涓績 */ - @Excel(name = "璁惧绠$悊鍛�", width = 35, dictTable = "sys_user", dicText = "realname", dicCode = "username", orderNum = "10") - @ApiModelProperty(value = "璁惧绠$悊鍛�") - @Dict(dicCode = "sys_user, realname, username") - private String equipmentManager; +// @Excel(name = "涓績", width = 15, orderNum = "5") + @ApiModelProperty(value = "涓績") + @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code") + private transient String zxfactoryOrgCode; + /** - * 璁惧绫诲埆 + * 宸ュ尯 */ - @Excel(name = "璁惧绫诲埆", width = 15, dicCode = "equipment_category", orderNum = "5") - @ApiModelProperty(value = "璁惧绫诲埆") +// @Excel(name = "宸ュ尯", width = 15, orderNum = "6") + @ApiModelProperty(value = "宸ュ尯") + @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code") + private transient String gqfactoryOrgCode; + + /** + * 宸ユ + */ + @Excel(name = "涓績/宸ュ尯/宸ユ", width = 15, orderNum = "4") + @ApiModelProperty(value = "涓績/宸ュ尯/宸ユ") + @Dict(dictTable = "eam_base_factory",dicText = "factory_name",dicCode = "org_code") + private String factoryOrgCode; + + /** + * 鎵�灞炲垎绫� + */ + @Excel(name = "鎵�灞炲垎绫�", width = 15, orderNum = "5") + @ApiModelProperty(value = "鎵�灞炲垎绫�") @Dict(dicCode = "equipment_category") private String equipmentCategory; - /** - * 璁惧鍨嬪彿 - */ - @Excel(name = "璁惧鍨嬪彿", width = 15, orderNum = "3") - @ApiModelProperty(value = "璁惧鍨嬪彿") - private String equipmentModel; - /** - * 璁惧瑙勬牸 - */ - @Excel(name = "璁惧瑙勬牸", width = 15, orderNum = "4") - @ApiModelProperty(value = "璁惧瑙勬牸") - private String equipmentSpecification; - /** - * 瀹夎浣嶇疆 - */ - @Excel(name = "瀹夎浣嶇疆", width = 15, orderNum = "11") - @ApiModelProperty(value = "瀹夎浣嶇疆") - private String installationPosition; - /** - * 璧勪骇浣跨敤鐘舵�� - */ - @Excel(name = "璧勪骇浣跨敤鐘舵��", width = 15, dicCode = "asset_status", orderNum = "7") - @ApiModelProperty(value = "璧勪骇鐘舵��") - @Dict(dicCode = "asset_status") - private String assetStatus; - /** - * 鍑哄巶缂栧彿 - */ - @Excel(name = "鍑哄巶缂栧彿", width = 15, orderNum = "12") - @ApiModelProperty(value = "鍑哄巶缂栧彿") - private String factoryNumber; - /** - * 鏈哄簥鍘傚 - */ - @Excel(name = "鏈哄簥鍘傚", width = 15, orderNum = "13") - @ApiModelProperty(value = "鏈哄簥鍘傚") - private String manufacturingEnterprise; - /** - * 鏉ユ簮鍥藉 - */ - @Excel(name = "鏉ユ簮鍥藉", width = 25, orderNum = "14") - @ApiModelProperty(value = "鏉ユ簮鍥藉") - private String originCountry; - /** - * 璁惧渚涘簲鍟� - */ - @Excel(name = "璁惧渚涘簲鍟�", width = 25, orderNum = "15") - @ApiModelProperty(value = "璁惧渚涘簲鍟�") - private String supplier; - /** - * 鍑哄巶鏃ユ湡 - */ - @Excel(name = "鍑哄巶鏃ユ湡", width = 25, format = "yyyy/MM/dd", orderNum = "16") - @ApiModelProperty(value = "鍑哄巶鏃ユ湡") - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - private Date leaveFactoryDate; - /** - * 楠屾敹鏃ユ湡 - */ - @Excel(name = "鎶曠敤鏃ユ湡", width = 25, format = "yyyy/MM/dd", orderNum = "17") - @ApiModelProperty(value = "楠屾敹鏃ユ湡") - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - private Date acceptanceCheckDate; - /** - * 璁惧鍥剧墖 - */ - @ApiModelProperty(value = "璁惧鍥剧墖") - private String equipmentImage; - /** - * 鐢垫満鍙版暟 - */ - @Excel(name = "鐢垫満鍙版暟", width = 15, orderNum = "18") - @ApiModelProperty(value = "鐢垫満鍙版暟") - private Integer motorsNumber; - /** - * 鎬诲姛鐜�(KW) - */ - @Excel(name = "鎬诲姛鐜�(KW)", width = 15, orderNum = "19") - @ApiModelProperty(value = "鎬诲姛鐜�") - private String equipmentPower; - /** - * 閲嶉噺(鍚�) - */ - @Excel(name = "閲嶉噺(鍚�)", width = 15, orderNum = "20") - @ApiModelProperty(value = "閲嶉噺(鍚�)") - private String equipmentWeight; - /** - * 鏄惁鏈夊伐鑹哄弬鏁� - */ - @Excel(name = "鏈夋棤宸ヨ壓鍙傛暟", width = 15, dicCode = "has_no", orderNum = "21") - @ApiModelProperty(value = "鏄惁鏈夊伐鑹哄弬鏁�") - private String processParametersFlag; - /** - * 鏄惁鏈夌簿搴﹀弬鏁� - */ - @Excel(name = "鏈夋棤绮惧害鍙傛暟", width = 15, dicCode = "has_no", orderNum = "22") - @ApiModelProperty(value = "鏄惁鏈夌簿搴﹀弬鏁�") - private String precisionParametersFlag; + @TableField(exist = false) + @Excel(name = "淇濆吇鐘舵��", width = 15, orderNum = "6",dicCode = "equipment_maintenance_status") + @ApiModelProperty(value = "淇濆吇鐘舵��") + @Dict(dicCode = "equipment_maintenance_status") + private String maintenanceStatus; - /** - * 澶囨敞 - */ - @Excel(name = "澶囨敞", width = 50, orderNum = "99") - @ApiModelProperty(value = "澶囨敞") - private String remark; - /** - * 澶栧舰灏哄 - */ - @Excel(name = "澶栧舰灏哄", width = 15, orderNum = "24") - @ApiModelProperty(value = "澶栧舰灏哄") - private String overallDimensions; - /** - * 璁惧绉嶇被 - */ - @Excel(name = "璁惧绉嶇被", width = 15, orderNum = "6", dictTable = "sys_category", dicCode = "code", dicText = "name") - @ApiModelProperty(value = "璁惧绉嶇被") - @Dict(dictTable = "sys_category", dicCode = "code", dicText = "name") - private String equipmentType; - /** - * 鍘熷浠峰�� - */ - @Excel(name = "鍘熷��(鍏�)", width = 15, orderNum = "25") - @ApiModelProperty(value = "鍘熷浠峰��") - private BigDecimal originalValue; - /** - * 璧勯噾鏉ユ簮 - */ - @Excel(name = "璧勯噾鏉ユ簮", width = 15, orderNum = "26") - @ApiModelProperty(value = "璧勯噾鏉ユ簮") - private String fundingSource; + @TableField(exist = false) + @Excel(name = "缁翠慨鐘舵��", width = 15, orderNum = "7",dicCode = "equipment_repair_status") + @ApiModelProperty(value = "缁翠慨鐘舵��") + @Dict(dicCode = "equipment_repair_status") + private String repairStatus; - /** - * 鍔熻兘鐢ㄩ�� - */ - @Excel(name = "鍔熻兘鐢ㄩ��", width = 15, orderNum = "27") - @ApiModelProperty(value = "鍔熻兘鐢ㄩ��") - private String functionUse; - /** - * 鎬ц兘鎸囨爣 - */ - @Excel(name = "鎬ц兘鎸囨爣", width = 15, orderNum = "28") - @ApiModelProperty(value = "鎬ц兘鎸囨爣") - private String performanceIndicators; - /** - * 鍏ュ笎鏃堕棿 - */ - @Excel(name = "鍏ュ笎鏃堕棿", width = 15, format = "yyyy/MM/dd", orderNum = "29") - @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") - @DateTimeFormat(pattern = "yyyy-MM-dd") - @ApiModelProperty(value = "鍏ュ笎鏃堕棿") - private Date bookingTime; - - /** - * 绠$悊鍒嗙被锛圓\B\C锛� - */ - @Excel(name = "绠$悊鍒嗙被", width = 15, dicCode = "equipment_abc_flag", orderNum = "8") - @ApiModelProperty(value = "绠$悊鍒嗙被") - @Dict(dicCode = "equipment_abc_flag") - private String equipmentImportance; - - /** - * 鎶�鏈姸鎬� - */ - @Excel(name = "鎶�鏈姸鎬�", width = 15, dicCode = "technology_status", orderNum = "7") + /**鎶�鏈姸鎬�*/ + @TableField(exist = false) + @Excel(name = "鎶�鏈姸鎬�", width = 15, orderNum = "8",dicCode = "equipment_technology_status") @ApiModelProperty(value = "鎶�鏈姸鎬�") - @Dict(dicCode = "technology_status") + @Dict(dicCode = "equipment_technology_status") private String technologyStatus; + /** + * ABC鏍囪瘑 + */ + @Excel(name = "ABC鏍囪瘑", width = 15, orderNum = "9",dicCode = "abc_flag") + @ApiModelProperty(value = "ABC鏍囪瘑") + @Dict(dicCode = "abc_flag") + private String abcFlag; + /** + * 缁翠慨鐝粍 + */ + @Excel(name = "缁翠慨鐝粍", width = 15, orderNum = "10") + @ApiModelProperty(value = "缁翠慨鐝粍") + private String repairDepartOrgCode; - /** =================== 鑸畤鏁戠敓 鏈敤鐨勫瓧娈� 寮�濮� ==========================**/ + /** + * 瀹夊叏閰嶇疆 + */ + @Excel(name = "瀹夊叏閰嶇疆", width = 15, orderNum = "11") + @ApiModelProperty(value = "瀹夊叏閰嶇疆") + private String securityConfiguration; + + /** + * 鍐峰嵈绯荤粺 + */ + @Excel(name = "鍐峰嵈绯荤粺", width = 15, orderNum = "15",dicCode = "cooling_system") + @ApiModelProperty(value = "鍐峰嵈绯荤粺") + @Dict(dicCode = "cooling_system") + private String coolSystem; + + /** + * 鐏伀鍣� + */ + @Excel(name = "鐏伀鍣�", width = 15, orderNum = "16") + @ApiModelProperty(value = "鐏伀鍣�") + private String fireExtinguisher; + + /** + * 鐏伀鍣ㄦ湁鏁堟湡鑷� + */ + @Excel(name = "鐏伀鍣ㄦ湁鏁堟湡鑷�", width = 15, orderNum = "17") + @ApiModelProperty(value = "鐏伀鍣ㄦ湁鏁堟湡鑷�") + private String fireExtinguisherExpirationDate; /** * 鎿嶄綔绯荤粺 */ + @Excel(name = "鎿嶄綔绯荤粺", width = 15, orderNum = "18",dicCode = "yn") @ApiModelProperty(value = "鎿嶄綔绯荤粺") + @Dict(dicCode = "yn") private String operationSystem; - /** - * 涓昏酱杩炴帴灏哄 - */ - @ApiModelProperty(value = "涓昏酱杩炴帴灏哄") - private String spindleConnectDimension; - /** - * 绔嬮」鍗″彿 - */ - @ApiModelProperty(value = "绔嬮」鍗″彿") - private String cardNumber; - /** - * 鏄惁瀹炴柦MDC - */ - @ApiModelProperty(value = "鏄惁瀹炴柦MDC") - private String mdcFlag; - @ApiModelProperty(value = "MDC璁惧绫诲瀷") - private String deviceType; + /** + * 绯荤粺 + */ + @Excel(name = "绯荤粺", width = 15, orderNum = "19") + @ApiModelProperty(value = "绯荤粺") + private String system; + /** * 璁惧绔彛 */ + @Excel(name = "璁惧绔彛", width = 15, orderNum = "20") @ApiModelProperty(value = "璁惧绔彛") private String equipmentPort; + /** * 鍧愭爣鏁伴噺 */ + @Excel(name = "鍧愭爣鏁伴噺", width = 15, orderNum = "21") @ApiModelProperty(value = "鍧愭爣鏁伴噺") private Integer coordinateNum; + /** - * 鐗圭璁惧;鏄惁涓虹壒绉嶈澶� + * 閲嶉噺(鍚�) */ - @ApiModelProperty(value = "鏄惁鐗圭璁惧") - private String specialEquipment; + @Excel(name = "閲嶉噺(鍚�)", width = 15, orderNum = "22") + @ApiModelProperty(value = "閲嶉噺(鍚�)") + private BigDecimal equipmentWeight; + /** + * 閲嶉噺璁¢噺鍗曚綅 + */ + @Excel(name = "閲嶉噺璁¢噺鍗曚綅", width = 15, orderNum = "23") + @ApiModelProperty(value = "閲嶉噺璁¢噺鍗曚綅") + private String weightUnit; + /** + * 鍔熻兘浣嶇疆 + */ + @Excel(name = "鍔熻兘浣嶇疆", width = 15, orderNum = "24") + @ApiModelProperty(value = "鍔熻兘浣嶇疆") + private String functionalLocation; + + /** + * 瀹夎浣嶇疆 + */ + @Excel(name = "瀹夎浣嶇疆", width = 15, orderNum = "25") + @ApiModelProperty(value = "瀹夎浣嶇疆") + private String installationPosition; + + /** + * 鍑哄巶鏃ユ湡 + */ + @Excel(name = "鍑哄巶鏃ユ湡", width = 25, format = "yyyy/MM/dd", orderNum = "26") + @ApiModelProperty(value = "鍑哄巶鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private Date leaveFactoryDate; + + /** + * 绔嬮」鍗″彿 + */ + @Excel(name = "绔嬮」鍗″彿", width = 15, orderNum = "27") + @ApiModelProperty(value = "绔嬮」鍗″彿") + private String cardNumber; + + /** + * 璧勯噾鏉ユ簮 + */ + @Excel(name = "璧勯噾鏉ユ簮", width = 15, orderNum = "28") + @ApiModelProperty(value = "璧勯噾鏉ユ簮") + private String fundingSource; + + /** + * 楠屾敹鏃ユ湡 + */ + @Excel(name = "鎶曠敤鏃ユ湡", width = 25, format = "yyyy/MM/dd", orderNum = "29") + @ApiModelProperty(value = "楠屾敹鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private Date acceptanceCheckDate; + + /** + * 鍑哄巶缂栧彿 + */ + @Excel(name = "鍑哄巶缂栧彿", width = 15, orderNum = "30") + @ApiModelProperty(value = "鍑哄巶缂栧彿") + private String factoryNumber; + + /** + * 璧勪骇鍒堕�犲晢 + */ + @Excel(name = "璧勪骇鍒堕�犲晢", width = 25, orderNum = "31") + @ApiModelProperty(value = "璧勪骇鍒堕�犲晢") + private String manufacturingEnterprise; + + /** + * 璧勪骇鏉ユ簮鍥藉 + */ + @Excel(name = "璧勪骇鏉ユ簮鍥藉", width = 25, orderNum = "32") + @ApiModelProperty(value = "璧勪骇鏉ユ簮鍥藉") + private String originCountry; + + /** + * 鍨嬪彿 + */ + @Excel(name = "鍨嬪彿", width = 15, orderNum = "33") + @ApiModelProperty(value = "鍨嬪彿") + private String equipmentModel; + + /** + * 璁惧瑙勬牸 + */ + @Excel(name = "璁惧瑙勬牸", width = 15, orderNum = "34") + @ApiModelProperty(value = "璁惧瑙勬牸") + private String equipmentSpecification; + + /** + * 鎬诲姛鐜�(KW) + */ + @Excel(name = "鎬诲姛鐜�(KW)", width = 15, orderNum = "35") + @ApiModelProperty(value = "鎬诲姛鐜�") + private String equipmentPower; /** * 璐ㄤ繚寮�濮嬫棩鏈� */ + @Excel(name = "璐ㄤ繚寮�濮嬫棩鏈�", width = 15, orderNum = "36") @ApiModelProperty(value = "璐ㄤ繚寮�濮嬫棩鏈�") @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private Date warrantyStartDate; + /** * 璐ㄤ繚缁撴潫鏃ユ湡 */ + @Excel(name = "璐ㄤ繚缁撴潫鏃ユ湡", width = 15, orderNum = "37") @ApiModelProperty(value = "璐ㄤ繚缁撴潫鏃ユ湡") @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") private Date warrantyEndDate; - /** =================== 鑸畤鏁戠敓 鏈敤鐨勫瓧娈� 缁撴潫 ==========================**/ + /** + * 璧勪骇鐘舵�� + */ + @Excel(name = "璧勪骇鐘舵��", width = 15, orderNum = "38",dicCode = "asset_status") + @ApiModelProperty(value = "璧勪骇鐘舵��") + @Dict(dicCode = "asset_status") + private String assetStatus; + /**鏈�鏂颁簩淇濇棩鏈�*/ @TableField(exist = false) - @ApiModelProperty(value = "缁翠慨鐘舵��") - @Dict(dicCode = "equipment_repair_status") - private String repairStatus; + @Excel(name = "鏈�鏂颁簩淇濇棩鏈�", width = 15, orderNum = "39") + @ApiModelProperty(value = "鏈�鏂颁簩淇濇棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date latestSecondMaintenance; + /**涓嬫浜屼繚鏃ユ湡*/ @TableField(exist = false) - @ApiModelProperty(value = "淇濆吇鐘舵��") - @Dict(dicCode = "equipment_maintenance_status") - private String maintenanceStatus; + @Excel(name = "涓嬫浜屼繚鏃ユ湡", width = 15, orderNum = "40") + @ApiModelProperty(value = "涓嬫浜屼繚鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date nextSecondMaintenance; - // 璁惧埆绠$悊 鎵嬫寔绔帴鍙d娇鐢� + + /**鏈涓変繚鏃ユ湡*/ @TableField(exist = false) - private String value; + @Excel(name = "鏈涓変繚鏃ユ湡", width = 15, orderNum = "41") + @ApiModelProperty(value = "鏈涓変繚鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date latestThirdMaintenance; + + /**涓嬫涓変繚鏃ユ湡*/ @TableField(exist = false) - private String text; + @Excel(name = "涓嬫涓変繚鏃ユ湡", width = 15, orderNum = "42") + @ApiModelProperty(value = "涓嬫涓変繚鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date nextThirdMaintenance; + + /**涓変繚鍛ㄦ湡(骞�)*/ + @TableField(exist = false) + @Excel(name = "涓変繚鍛ㄦ湡(骞�)", width = 15, orderNum = "43") + @ApiModelProperty(value = "涓変繚鍛ㄦ湡(骞�)") + private Integer thirdMaintenancePeriod; + + /**鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�*/ + @TableField(exist = false) + @Excel(name = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�", width = 15, orderNum = "44") + @ApiModelProperty(value = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date latestTechnologyCheck; + /**鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�*/ + @TableField(exist = false) + @Excel(name = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�", width = 15, orderNum = "45") + @ApiModelProperty(value = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date nextTechnologyCheck; + /**鎶�鏈壌瀹氬懆鏈�(骞�)*/ + @TableField(exist = false) + @Excel(name = "鎶�鏈壌瀹氬懆鏈�(骞�)", width = 15, orderNum = "46") + @ApiModelProperty(value = "鎶�鏈壌瀹氬懆鏈�(骞�)") + private Integer technologyCheckPeriod; + + /** + * 鏄惁涓昏澶� + */ + @Excel(name = "鏄惁涓昏澶�", width = 15, dicCode = "yn", orderNum = "47") + @ApiModelProperty(value = "鏄惁涓昏澶�") + @Dict(dicCode = "yn") + private String masterFlag; + + + /** + * 鏄惁鏈夊伐鑹哄弬鏁� + */ + @Excel(name = "鏈夋棤宸ヨ壓鍙傛暟", width = 15, dicCode = "yn", orderNum = "48") + @ApiModelProperty(value = "鏄惁鏈夊伐鑹哄弬鏁�") + @Dict(dicCode = "yn") + private String processParametersFlag; + /** + * 鏄惁鏈夌簿搴﹀弬鏁� + */ + @Excel(name = "鏈夋棤绮惧害鍙傛暟", width = 15, dicCode = "yn", orderNum = "49") + @ApiModelProperty(value = "鏄惁鏈夌簿搴﹀弬鏁�") + @Dict(dicCode = "yn") + private String precisionParametersFlag; + + + /** + * 澶囨敞 + */ + @Excel(name = "澶囨敞", width = 50, orderNum = "50") + @ApiModelProperty(value = "澶囨敞") + private String remark; + + + public void setFactoryOrgCode(String factoryOrgCode){ + this.factoryOrgCode = factoryOrgCode; + if(StrUtil.isNotEmpty(factoryOrgCode)){ + if(factoryOrgCode.length()==12){ + this.gqfactoryOrgCode = factoryOrgCode.substring(0,9); + this.zxfactoryOrgCode = factoryOrgCode.substring(0,6); + this.gsfactoryOrgCode = factoryOrgCode.substring(0,3); + } + + if(factoryOrgCode.length()==9){ + this.zxfactoryOrgCode = factoryOrgCode.substring(0,6); + this.gsfactoryOrgCode = factoryOrgCode.substring(0,3); + } + + if(factoryOrgCode.length()==6){ + this.gsfactoryOrgCode = factoryOrgCode.substring(0,3); + } + } + } + + public void setEquipmentWeight(BigDecimal equipmentWeight){ + //鍘婚櫎灏忔暟鐐瑰悗澶氫綑鐨�0 + if(equipmentWeight!=null) { + this.equipmentWeight = equipmentWeight.stripTrailingZeros(); + } + } public String getValue() { return this.id; diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java index a2b06c8..a843e8f 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamEquipmentExtend.java @@ -3,12 +3,14 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; @@ -24,7 +26,7 @@ @Accessors(chain = true) @ApiModel(value="eam_equipment_extend瀵硅薄", description="璁惧鍙拌处鎵╁睍琛�") public class EamEquipmentExtend implements Serializable { - + /**涓婚敭*/ @TableId(type = IdType.ASSIGN_ID) @ApiModelProperty(value = "涓婚敭") @@ -49,16 +51,44 @@ @Excel(name = "缁翠慨鐘舵��", width = 15) @ApiModelProperty(value = "缁翠慨鐘舵��") private String repairStatus; + /**鎶�鏈姸鎬�*/ + @Excel(name = "鎶�鏈姸鎬�", width = 15, orderNum = "4") + @ApiModelProperty(value = "鎶�鏈姸鎬�") + private String technologyStatus; /**鏈�鏂颁簩淇濇棩鏈�*/ @ApiModelProperty(value = "鏈�鏂颁簩淇濇棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") private java.util.Date latestSecondMaintenance; /**涓嬫浜屼繚鏃ユ湡*/ @ApiModelProperty(value = "涓嬫浜屼繚鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") private java.util.Date nextSecondMaintenance; /**鏈�鏂颁笁淇濇棩鏈�*/ @ApiModelProperty(value = "鏈�鏂颁笁淇濇棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") private java.util.Date latestThirdMaintenance; /**涓嬫涓変繚鏃ユ湡*/ @ApiModelProperty(value = "涓嬫涓変繚鏃ユ湡") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") private java.util.Date nextThirdMaintenance; + /**涓変繚鍛ㄦ湡(骞�)*/ + @ApiModelProperty(value = "涓変繚鍛ㄦ湡(骞�)") + private Integer thirdMaintenancePeriod; + /**鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�*/ + @ApiModelProperty(value = "鏈�鏂版妧鏈姸鎬侀壌瀹氭棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date latestTechnologyCheck; + /**鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�*/ + @ApiModelProperty(value = "鎶�鏈姸鎬佷笅娆¢壌瀹氭棩鏈�") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private java.util.Date nextTechnologyCheck; + /**鎶�鏈壌瀹氬懆鏈�(骞�)*/ + @ApiModelProperty(value = "鎶�鏈壌瀹氬懆鏈�(骞�)") + private Integer technologyCheckPeriod; } diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml index f7e323a..3ea42f0 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/mapper/xml/EamEquipmentMapper.xml @@ -3,10 +3,21 @@ <mapper namespace="org.jeecg.modules.eam.mapper.EamEquipmentMapper"> <select id="queryPageList" resultType="org.jeecg.modules.eam.entity.EamEquipment"> - select e.*, ext.repair_status, ext.maintenance_status + select e.*, + ext.maintenance_status, + ext.repair_status, + ext.latest_second_maintenance, + ext.next_second_maintenance, + ext.latest_third_maintenance, + ext.next_third_maintenance, + ext.technology_status, + ext.third_maintenance_period, + ext.technology_check_period, + ext.latest_technology_check, + ext.next_technology_check from eam_equipment e left join eam_equipment_extend ext on e.id = ext.id ${ew.customSqlSegment} </select> -</mapper> \ No newline at end of file +</mapper> diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java index d5e31af..d17425a 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/IEamEquipmentService.java @@ -24,6 +24,12 @@ EamEquipment saveEquipment(EamEquipment eamEquipment); /** + * 鍙拌处璁惧缂栬緫 + * @param eamEquipment + */ + EamEquipment updateEquipment(EamEquipment eamEquipment); + + /** * 鑾峰彇浜х嚎涓嬬殑璁惧淇℃伅 * @param ids 浜х嚎ids * @return diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java index c2ec226..19c81b7 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentServiceImpl.java @@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import io.micrometer.core.instrument.binder.BaseUnits; import org.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.constant.CommonConstant; @@ -13,6 +15,10 @@ import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.util.oConvertUtils; import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog; +import org.jeecg.modules.eam.base.entity.BaseFactory; +import org.jeecg.modules.eam.base.entity.BaseFactoryUser; +import org.jeecg.modules.eam.base.service.IBaseFactoryService; +import org.jeecg.modules.eam.base.service.IBaseFactoryUserService; import org.jeecg.modules.eam.constant.AssetStatusEnum; import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus; import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum; @@ -28,6 +34,7 @@ import org.jeecg.modules.eam.vo.EquipmentSearchResult; import org.jeecg.modules.system.entity.MdcProduction; import org.jeecg.modules.system.service.IMdcProductionService; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -54,6 +61,10 @@ private IEamEquipmentExtendService equipmentExtendService; @Autowired private IMdcProductionService mdcProductionService; + @Autowired + private IBaseFactoryUserService baseFactoryUserService; + @Autowired + private IBaseFactoryService baseFactoryService; @Override @Transactional(rollbackFor = Exception.class) @@ -69,13 +80,28 @@ //鎵╁睍琛ㄦ暟鎹悓姝ユ坊鍔� EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend(); - eamEquipmentExtend.setId(eamEquipment.getId()); + BeanUtils.copyProperties(eamEquipment, eamEquipmentExtend); eamEquipmentExtend.setMaintenanceStatus(EquipmentMaintenanceStatus.NORMAL.name()); eamEquipmentExtend.setRepairStatus(EquipmentRepairStatus.NORMAL.name()); - equipmentExtendService.save(eamEquipmentExtend); //鎻掑叆璁惧灞ュ巻 @EquipmentHistoryLog + return eamEquipment; + } + + /** + * 鍙拌处璁惧缂栬緫 + * @param eamEquipment + */ + @Override + public EamEquipment updateEquipment(EamEquipment eamEquipment){ + if (eamEquipment == null) { + return null; + } + eamEquipmentMapper.updateById(eamEquipment); + EamEquipmentExtend eamEquipmentExtend = new EamEquipmentExtend(); + BeanUtils.copyProperties(eamEquipment, eamEquipmentExtend); + equipmentExtendService.updateById(eamEquipmentExtend); return eamEquipment; } @@ -109,13 +135,20 @@ if (sysUser == null) { return page; } - if (StringUtils.isNotBlank(sysUser.getEquipmentIds())) { + if (StringUtils.isNotBlank(sysUser.getEamEquipmentIds())) { //閫夋嫨浜嗚澶囷紝鏍规嵁璁惧id杩囨护璁惧 - List<String> equipArr = Arrays.asList(sysUser.getEquipmentIds().split(",")); + List<String> equipArr = Arrays.asList(sysUser.getEamEquipmentIds().split(",")); queryWrapper.in("e.equipment_code", equipArr); } else { - //娌℃湁閫夋嫨璁惧锛屾牴鎹溅闂磋繃婊よ澶� - queryWrapper.exists("select 1 from mdc_user_production t where t.user_id={0} and t.pro_id=e.org_id", sysUser.getId()); + //娌℃湁閫夋嫨璁惧锛屾牴鎹腑蹇冭繃婊よ澶� + List<BaseFactoryUser> baseFactoryUserList=baseFactoryUserService. + list(new LambdaQueryWrapper<BaseFactoryUser>().eq(BaseFactoryUser::getUserId,sysUser.getId())); + if(!CollectionUtils.isEmpty(baseFactoryUserList)){ + List<String> factoryIds = baseFactoryUserList.stream().map(BaseFactoryUser::getFactoryId).collect(Collectors.toList()); + List<String> factoryCode= baseFactoryService.listByIds(factoryIds).stream().map(BaseFactory::getFactoryCode).collect(Collectors.toList()); + queryWrapper.in("e.factory_code", factoryCode); + } + } //鏌ヨ鏉′欢杩囨护 if (eamEquipment != null) { diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java index 6045e70..43b4479 100644 --- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java +++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/service/impl/EamRepairOrderServiceImpl.java @@ -322,7 +322,7 @@ eamReportRepair.setReportStatus(ReportRepairEnum.UNDER_INTERNAL_REPAIR.name()); }else { //鎻愪氦鏈哄姩鍔炵淮淇紝杞﹂棿绠$悊鍛樼‘璁� - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0003); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0003); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰鐝粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } @@ -376,7 +376,7 @@ } if(CommonConstant.STATUS_1.equals(request.getLeaderConfirm())) { //閫氳繃 鎻愪氦鏈哄姩鍔炵淮淇� - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0006); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0006); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰鍏徃绠$悊鍛橈紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartUserMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartUserMapper.java deleted file mode 100644 index 75a2e3f..0000000 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/EamBaseRepairDepartUserMapper.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.jeecg.modules.eam.base.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import org.apache.ibatis.annotations.Param; -import org.jeecg.modules.eam.base.entity.EamBaseRepairDepartUser; - -import java.util.List; - -/** - * @Author: Lius - * @CreateTime: 2025-07-01 - * @Description: - */ -public interface EamBaseRepairDepartUserMapper extends BaseMapper<EamBaseRepairDepartUser> { - - /** - * 鏍规嵁鎸囧畾鐢ㄦ埛id鏌ヨ缁翠慨閮ㄩ棬鐝粍id闆嗗悎 - */ - List<String> queryRepairDepartIdsByUserId(@Param("userId") String userId); - -} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartUserMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartUserMapper.xml deleted file mode 100644 index eb78982..0000000 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/mapper/xml/EamBaseRepairDepartUserMapper.xml +++ /dev/null @@ -1,9 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> -<mapper namespace="org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartUserMapper"> - - <!--鏍规嵁鎸囧畾鐢ㄦ埛id鏌ヨ浜х嚎id闆嗗悎--> - <select id="queryRepairDepartIdsByUserId" resultType="java.lang.String"> - SELECT depart_id FROM eam_base_repair_depart_user WHERE user_id = #{userId} - </select> -</mapper> \ No newline at end of file diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java deleted file mode 100644 index 5265d23..0000000 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/base/service/impl/EamBaseRepairDepartImpl.java +++ /dev/null @@ -1,312 +0,0 @@ -package org.jeecg.modules.eam.base.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.IdWorker; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import org.apache.commons.lang3.StringUtils; -import org.jeecg.common.constant.CommonConstant; -import org.jeecg.common.constant.FillRuleConstant; -import org.jeecg.common.util.FillRuleUtil; -import org.jeecg.common.util.oConvertUtils; -import org.jeecg.modules.eam.base.entity.EamBaseRepairDepart; -import org.jeecg.modules.eam.base.entity.EamBaseRepairDepartUser; -import org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartUserMapper; -import org.jeecg.modules.eam.base.service.IEamBaseRepairDepartService; -import org.jeecg.modules.system.entity.*; -import org.jeecg.modules.eam.base.mapper.EamBaseRepairDepartMapper; -import org.jeecg.modules.eam.base.model.EamBaseRepairDepartTreeModel; -import org.jeecg.modules.eam.base.model.RepairDepartIdModel; -import org.jeecg.modules.eam.base.util.FindsRepairDepartsChildrenUtil; -import org.jeecg.modules.system.mapper.SysUserMapper; -import org.springframework.cache.annotation.Cacheable; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import javax.annotation.Resource; -import java.util.*; -import java.util.stream.Collectors; - -/** - * @Author: Lius - * @CreateTime: 2025-07-01 - * @Description: - */ -@Service -public class EamBaseRepairDepartImpl extends ServiceImpl<EamBaseRepairDepartMapper, EamBaseRepairDepart> implements IEamBaseRepairDepartService { - - @Resource - private SysUserMapper sysUserMapper; - - @Resource - private EamBaseRepairDepartUserMapper repairDepartUserMapper; - - /** - * queryTreeList 瀵瑰簲 queryTreeList 鏌ヨ鎵�鏈夌殑缁翠慨閮ㄩ棬鐝粍鏁版嵁,浠ユ爲缁撴瀯褰㈠紡鍝嶅簲缁欏墠绔� - */ - @Override - @Cacheable(value = "eam:cache:repairDepart:alldata") - public List<EamBaseRepairDepartTreeModel> queryTreeList() { - LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<EamBaseRepairDepart>(); - query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); - query.orderByAsc(EamBaseRepairDepart::getDepartOrder); - List<EamBaseRepairDepart> list = this.list(query); - //璁剧疆鐢ㄦ埛id锛岃鍓嶅彴鏄剧ず - this.setUserIdsByProList(list); - //璋冪敤wrapTreeDataToTreeList鏂规硶鐢熸垚鏍戠姸鏁版嵁 - return FindsRepairDepartsChildrenUtil.wrapTreeDataToTreeList(list); - } - - /** - * queryTreeList 鏍规嵁缁翠慨閮ㄩ棬鐝粍id鏌ヨ,鍓嶇鍥炴樉璋冪敤 - */ - @Override - public List<EamBaseRepairDepartTreeModel> queryTreeList(String ids) { - List<EamBaseRepairDepartTreeModel> listResult = new ArrayList<>(); - LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<EamBaseRepairDepart>(); - query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); - if (oConvertUtils.isNotEmpty(ids)) { - query.in(true, EamBaseRepairDepart::getId, ids.split(",")); - } - query.orderByAsc(EamBaseRepairDepart::getDepartOrder); - List<EamBaseRepairDepart> list = this.list(query); - for (EamBaseRepairDepart repairDepart : list) { - listResult.add(new EamBaseRepairDepartTreeModel(repairDepart)); - } - return listResult; - } - - @Override - @Cacheable(value = "eam:cache:repairDepart:allids") - public List<RepairDepartIdModel> queryMaintainDepartIdTreeList() { - LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>(); - query.eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()); - query.orderByAsc(EamBaseRepairDepart::getDepartOrder); - List<EamBaseRepairDepart> list = this.list(query); - //璋冪敤wrapTreeDataToTreeList鏂规硶鐢熸垚鏍戠姸鏁版嵁 - return FindsRepairDepartsChildrenUtil.wrapTreeDataToMaintainDepartIdTreeList(list); - } - - /** - * 鏍规嵁鍏抽敭瀛楁悳绱㈢浉鍏崇殑閮ㄩ棬鏁版嵁 - */ - @Override - public List<EamBaseRepairDepartTreeModel> searchByKeyWord(String keyWord) { - LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>(); - List<EamBaseRepairDepartTreeModel> newList = new ArrayList<>(); - query.like(EamBaseRepairDepart::getDepartName, keyWord); - EamBaseRepairDepartTreeModel model = new EamBaseRepairDepartTreeModel(); - List<EamBaseRepairDepart> repairDepartList = this.list(query); - if (!repairDepartList.isEmpty()) { - for (EamBaseRepairDepart eamBaseRepairDepart : repairDepartList) { - model = new EamBaseRepairDepartTreeModel(eamBaseRepairDepart); - model.setChildren(null); - newList.add(model); - } - return newList; - } - return Collections.emptyList(); - } - - /** - * saveMaintainDepartData 瀵瑰簲 add 淇濆瓨鐢ㄦ埛鍦ㄩ〉闈㈡坊鍔犵殑鏂扮殑缁翠慨閮ㄩ棬鐝粍瀵硅薄鏁版嵁 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void saveMaintainDepartData(EamBaseRepairDepart eamBaseRepairDepart) { - if (eamBaseRepairDepart != null) { - if (eamBaseRepairDepart.getParentId() == null) { - eamBaseRepairDepart.setParentId(""); - } - eamBaseRepairDepart.setId(IdWorker.getIdStr(eamBaseRepairDepart)); - // 鍏堝垽鏂瀵硅薄鏈夋棤鐖剁骇ID,鏈夊垯鎰忓懗鐫�涓嶆槸鏈�楂樼骇,鍚﹀垯鎰忓懗鐫�鏄渶楂樼骇 - // 鑾峰彇鐖剁骇ID - String parentId = eamBaseRepairDepart.getParentId(); - JSONObject formData = new JSONObject(); - formData.put("parentId",parentId); - String[] codeArray = (String[]) FillRuleUtil.executeRule(FillRuleConstant.PRODUCTION,formData); - eamBaseRepairDepart.setOrgCode(codeArray[0]); - String orgType = codeArray[1]; - eamBaseRepairDepart.setOrgType(String.valueOf(orgType)); - eamBaseRepairDepart.setDelFlag(CommonConstant.DEL_FLAG_0.toString()); - this.save(eamBaseRepairDepart); - } - } - - /** - * updateMaintainDepartDataById 瀵瑰簲 edit 鏍规嵁缁翠慨閮ㄩ棬鐝粍涓婚敭鏉ユ洿鏂板搴旂殑缁翠慨閮ㄩ棬鐝粍鏁版嵁 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean updateMaintainDepartDataById(EamBaseRepairDepart eamBaseRepairDepart) { - if (eamBaseRepairDepart != null) { - this.updateById(eamBaseRepairDepart); - return true; - } - return false; - } - - /** - * 鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾х淮淇儴闂ㄧ彮缁� - */ - @Override - @Transactional(rollbackFor = Exception.class) - public boolean delete(String id) { - List<String> idList = new ArrayList<>(); - idList.add(id); - this.checkChildrenExists(id, idList); - boolean result = this.removeByIds(idList); - //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎鐢ㄦ埛涓庣淮淇儴闂ㄧ彮缁勫叧绯� - repairDepartUserMapper.delete(new LambdaQueryWrapper<EamBaseRepairDepartUser>().in(EamBaseRepairDepartUser::getDepartId, idList)); - //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎缁翠慨閮ㄩ棬鐝粍涓庤澶囧叧绯� -// repairDepartEquipmentMapper.delete(new LambdaQueryWrapper<SysMaintainDepartEquipment>().in(SysMaintainDepartEquipment::getMaintainDepartId, idList)); - return result; - } - - /** - * 鏍规嵁缁翠慨閮ㄩ棬鐝粍id鎵归噺鍒犻櫎骞跺垹闄ゅ叾鍙兘瀛樺湪鐨勫瓙绾х淮淇儴闂ㄧ彮缁� - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteBatchWithChildren(List<String> ids) { - List<String> idList = new ArrayList<>(); - for (String id : ids) { - idList.add(id); - this.checkChildrenExists(id, idList); - } - this.removeByIds(idList); - //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎鐢ㄦ埛涓庣淮淇儴闂ㄧ彮缁勫叧绯� - repairDepartUserMapper.delete(new LambdaQueryWrapper<EamBaseRepairDepartUser>().in(EamBaseRepairDepartUser::getDepartId, idList)); - //鏍规嵁缁翠慨閮ㄩ棬鐝粍id鍒犻櫎缁翠慨閮ㄩ棬鐝粍涓庤澶囧叧绯� -// repairDepartEquipmentMapper.delete(new LambdaQueryWrapper<SysMaintainDepartEquipment>().in(SysMaintainDepartEquipment::getMaintainDepartId, idList)); - } - - /** - * 鏍规嵁id鏌ヨ涓嬬骇缁翠慨閮ㄩ棬鐝粍 - */ - @Override - public List<EamBaseRepairDepart> queryRepDepByPid(String pid) { - return this.baseMapper.queryRepDepByPid(pid); - } - - /** - * 鏍规嵁鐢ㄦ埛id鑾峰彇缁翠慨閮ㄩ棬鐝粍涓嬫媺鏍戦�夐」 - */ - @Override - public List<RepairDepartIdModel> loadMaintainDepartTreeOptions(String userId) { - //鑾峰彇鎵�鏈夌淮淇儴闂ㄧ彮缁勬暟鎹� - List<EamBaseRepairDepart> repairDepartList = this.baseMapper.selectList(new LambdaQueryWrapper<EamBaseRepairDepart>().eq(EamBaseRepairDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString()).orderByAsc(EamBaseRepairDepart::getDepartOrder)); - //鏍规嵁鐢ㄦ埛id鑾峰彇鎷ユ湁鐨勭淮淇儴闂ㄧ彮缁勪俊鎭泦鍚� - List<String> repairDepartIds = repairDepartUserMapper.queryRepairDepartIdsByUserId(userId); - List<String> allMaintainDepartIds = new ArrayList<>(); - //鎵惧埌鎵�鏈夌淮淇儴闂ㄧ彮缁刬d鐨勪笂绾d - if (repairDepartIds != null && !repairDepartIds.isEmpty()) { - for (String repairDepartId : repairDepartIds) { - this.getAllMaintainDepartIds(repairDepartList, repairDepartId, allMaintainDepartIds); - } - } - //杩囨护缁翠慨閮ㄩ棬鐝粍鏁版嵁 - List<EamBaseRepairDepart> list = repairDepartList.stream().filter((EamBaseRepairDepart eamBaseRepairDepart) -> allMaintainDepartIds.contains(eamBaseRepairDepart.getId())).collect(Collectors.toList()); - return FindsRepairDepartsChildrenUtil.wrapTreeDataToMaintainDepartIdTreeList(list); - } - - /** - * 閫掑綊鏌ヨ鎵�鏈夊瓙鑺傜偣id - */ - @Override - public List<String> recursionChildren(String repairDepartId) { - return this.baseMapper.recursionChildren(repairDepartId); - } - - /** - * 鏍规嵁鐢ㄦ埛id鍜岃溅闂磇d鑾峰彇鐢ㄦ埛鎷ユ湁鐨勮溅闂磇d - * @param userId - * @param repairDepartId - * @return - */ - @Override - public String findFirstMaintainDepart(String userId, String repairDepartId) { - return this.baseMapper.findFirstMaintain(userId, repairDepartId); - } - - /** - * 鏍规嵁鐢ㄦ埛id鏌ヨ鐢ㄦ埛缁翠慨閮ㄩ棬鐝粍鏉冮檺 - */ - @Override - public String findThreeMaintainDepartId(String userId) { - return this.baseMapper.findThreeMaintainId(userId); - } - - @Override - public EamBaseRepairDepart findMaintainDepartList(String equipmentId) { - return this.baseMapper.findMaintainList(equipmentId); - } - - /** - * delete 鏂规硶璋冪敤 閫掑綊鏌ユ壘瀛愰泦id - */ - private void checkChildrenExists(String id, List<String> idList) { - LambdaQueryWrapper<EamBaseRepairDepart> query = new LambdaQueryWrapper<>(); - query.eq(EamBaseRepairDepart::getParentId, id); - List<EamBaseRepairDepart> repairDepartList = this.list(query); - if (repairDepartList != null && !repairDepartList.isEmpty()) { - for (EamBaseRepairDepart repairDepart : repairDepartList) { - idList.add(repairDepart.getId()); - this.checkChildrenExists(repairDepart.getId(), idList); - } - } - } - - /** - * 鑾峰彇鎵�鏈夌殑缁翠慨閮ㄩ棬鐝粍id锛堝寘鍚墍鏈変笂绾э級 - */ - private void getAllMaintainDepartIds(List<EamBaseRepairDepart> repairDepartList, String repairDepartId, List<String> allMaintainDepartIds) { - if (!allMaintainDepartIds.contains(repairDepartId)) { - allMaintainDepartIds.add(repairDepartId); - } - for (EamBaseRepairDepart eamBaseRepairDepart : repairDepartList) { - if (StringUtils.isEmpty(eamBaseRepairDepart.getParentId())) { - continue; - } - if (repairDepartId.equals(eamBaseRepairDepart.getId())) { - if (!allMaintainDepartIds.contains(eamBaseRepairDepart.getParentId())) { - allMaintainDepartIds.add(eamBaseRepairDepart.getParentId()); - getAllMaintainDepartIds(repairDepartList, eamBaseRepairDepart.getParentId(), allMaintainDepartIds); - } - } - } - } - - /** - * 閫氳繃缁翠慨閮ㄩ棬鐝粍闆嗗悎涓虹淮淇儴闂ㄧ彮缁勮缃敤鎴穒d锛岀敤浜庡墠鍙板睍绀� - */ - private void setUserIdsByProList(List<EamBaseRepairDepart> repairDepartList) { - //鏌ヨ璐熻矗閮ㄩ棬涓嶄负绌虹殑鎯呭喌 - LambdaQueryWrapper<SysUser> query = new LambdaQueryWrapper<>(); - query.isNotNull(SysUser::getDepartIds); - List<SysUser> users = sysUserMapper.selectList(query); - Map<String, Object> map = new HashMap(5); - //鍏堝惊鐜竴閬嶆壘鍒颁笉鍚岀殑璐熻矗缁翠慨閮ㄩ棬鐝粍id - for (SysUser user : users) { - String repairDepartIds = user.getRepairDepartIds(); - if (StringUtils.isNotBlank(repairDepartIds)) { - String[] repairDepartIdArray = repairDepartIds.split(","); - for (String repairDepartId : repairDepartIdArray) { - if (map.containsKey(repairDepartId)) { - String userIds = map.get(repairDepartId) + "," + user.getId(); - map.put(repairDepartId, userIds); - } else { - map.put(repairDepartId, user.getId()); - } - } - } - } - //寰幆缁翠慨閮ㄩ棬鐝粍闆嗗悎鎵惧埌缁翠慨閮ㄩ棬鐝粍id瀵瑰簲鐨勮礋璐g敤鎴� - for (EamBaseRepairDepart eamBaseRepairDepart : repairDepartList) { - if (map.containsKey(eamBaseRepairDepart.getId())) { - eamBaseRepairDepart.setDirectorUserIds(map.get(eamBaseRepairDepart.getId()).toString()); - } - } - } - -} diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java index 9968c92..31595fe 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java @@ -99,14 +99,14 @@ return Result.OK("娣诲姞澶辫触锛�"); } //璋冪敤mdcEquipment鎻掑叆MDC璁惧 - if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { +// if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { //鎻掑叆MDC璁惧 // MdcEquipment mdcEquipment = new MdcEquipment(); // mdcEquipment.setEquipmentId(entity.getEquipmentCode()); // mdcEquipment.setEquipmentType(entity.getDeviceType()); // mdcEquipment.setEquipmentName(entity.getEquipmentName()); // mdcEquipmentService.addNewEquipmentFromEam(mdcEquipment, eamEquipment.getOrgId()); - } +// } return Result.OK("娣诲姞鎴愬姛锛�"); } @@ -119,7 +119,7 @@ @ApiOperation(value = "璁惧鍙拌处-缂栬緫", notes = "璁惧鍙拌处-缂栬緫") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result<?> edit(@RequestBody EamEquipment eamEquipment) { - eamEquipmentService.updateById(eamEquipment); + eamEquipmentService.updateEquipment(eamEquipment); return Result.OK("缂栬緫鎴愬姛!"); } @@ -183,9 +183,9 @@ JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); translateDictTextUtils.translateField("createBy", eamEquipment.getCreateBy(), item, "sys_user,realname,username"); translateDictTextUtils.translateField("updateBy", eamEquipment.getUpdateBy(), item, "sys_user,realname,username"); - translateDictTextUtils.translateField("technologyStatus", eamEquipment.getTechnologyStatus(), item, "technology_status"); - translateDictTextUtils.translateField("orgId", eamEquipment.getOrgId(), item, "mdc_production,production_name,id"); - translateDictTextUtils.translateField("equipmentManager", eamEquipment.getEquipmentManager(), item, "sys_user,realname,username"); +// translateDictTextUtils.translateField("technologyStatus", eamEquipment.getTechnologyStatus(), item, "technology_status"); +// translateDictTextUtils.translateField("orgId", eamEquipment.getOrgId(), item, "mdc_production,production_name,id"); +// translateDictTextUtils.translateField("equipmentManager", eamEquipment.getEquipmentManager(), item, "sys_user,realname,username"); translateDictTextUtils.translateField("equipmentCategory", eamEquipment.getEquipmentCategory(), item, "equipment_category"); translateDictTextUtils.translateField("assetStatus", eamEquipment.getAssetStatus(), item, "asset_status"); translateDictTextUtils.translateField("repairStatus", eamEquipment.getRepairStatus(), item, "equipment_repair_status"); @@ -222,7 +222,7 @@ // 鑾峰彇涓婁紶鏂囦欢瀵硅薄 MultipartFile file = entity.getValue(); ImportParams params = new ImportParams(); - params.setTitleRows(0); + params.setTitleRows(2); params.setHeadRows(1); params.setNeedSave(true); params.setStartSheetIndex(0); @@ -243,25 +243,10 @@ sb.append(String.format("璁惧缂栫爜[%s]璁惧鍒嗙被涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode())); continue; } - if (StringUtils.isBlank(eamEquipment.getOrgId()) || StringUtils.isBlank(eamEquipment.getEquipmentManager())) { - sb.append(String.format("璁惧缂栫爜[%s]浣跨敤杞﹂棿鎴栬澶囩鐞嗗憳涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode())); - continue; - } -// if (eamEquipment.getAcceptanceCheckDate() == null) { -// sb.append(String.format("璁惧缂栫爜[%s]楠屾敹涓虹┖锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode())); -// continue; -// } -// if (StringUtils.isBlank(eamEquipment.getTechnologyStatus())) { -// sb.append(String.format("璁惧缂栫爜[%s]鎶�鏈姸鎬佷负绌猴紝鏃犳硶瀵煎叆\n\r", eamEquipment.getEquipmentCode())); -// continue; -// } EamEquipment one = eamEquipmentService.getOne(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getEquipmentCode, eamEquipment.getEquipmentCode()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0)); if (one != null) { sb.append(String.format("璁惧缂栫爜[%s]宸插瓨鍦紝鏃犳硶閲嶅瀵煎叆\n\r", eamEquipment.getEquipmentCode())); continue; - } - if (!CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { - eamEquipment.setMdcFlag(CommonConstant.DEFAULT_0); } EamEquipment equipment = eamEquipmentService.saveEquipment(eamEquipment); if (equipment == null) { @@ -269,18 +254,7 @@ sb.append(String.format("璁惧缂栫爜[%s]淇濆瓨澶辫触锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode())); continue; } - //璋冪敤mdcEquipment鎻掑叆MDC璁惧 - if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) { - //鎻掑叆MDC璁惧 -// MdcEquipment mdcEquipment = new MdcEquipment(); -// mdcEquipment.setEquipmentId(eamEquipment.getEquipmentCode()); -// mdcEquipment.setEquipmentType(eamEquipment.getDeviceType()); -// mdcEquipment.setEquipmentName(eamEquipment.getEquipmentName()); -// mdcEquipmentService.addNewEquipmentFromEam(mdcEquipment, eamEquipment.getOrgId()); - } } - //400鏉� saveBatch娑堣�楁椂闂�1592姣 寰幆鎻掑叆娑堣�楁椂闂�1947姣 - //1200鏉� saveBatch娑堣�楁椂闂�3687姣 寰幆鎻掑叆娑堣�楁椂闂�5212姣 log.info("娑堣�楁椂闂�" + (System.currentTimeMillis() - start) + "姣"); //update-end-author:taoyan date:20190528 for:鎵归噺鎻掑叆鏁版嵁 if (sb.length() > 0) { diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamUserSelectController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamUserSelectController.java index 075654f..faa7146 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamUserSelectController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamUserSelectController.java @@ -43,7 +43,7 @@ if (StringUtils.isNotBlank(equipmentId)) { EamEquipment equipment = eamEquipmentService.getById(equipmentId); if(equipment != null) { - productionId = equipment.getOrgId(); +// productionId = equipment.getOrgId(); equipmentCode = equipment.getEquipmentCode(); } } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java index 5ee5fac..1bb76bd 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentLeanOutServiceImpl.java @@ -136,9 +136,9 @@ if (StringUtils.isBlank(request.getLeanDepartId())) { throw new JeecgBootException("鍊熷叆杞﹂棿涓嶅厑璁镐负绌猴紒"); } - if (request.getLeanDepartId().equals(equipment.getOrgId())) { - throw new JeecgBootException("褰撳墠璁惧灞炰簬姝よ溅闂达紝涓嶉渶瑕佸�熺敤锛�"); - } +// if (request.getLeanDepartId().equals(equipment.getOrgId())) { +// throw new JeecgBootException("褰撳墠璁惧灞炰簬姝よ溅闂达紝涓嶉渶瑕佸�熺敤锛�"); +// } LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); if (sysUser == null) { throw new JeecgBootException("褰撳墠鐢ㄦ埛鏃犳硶娣诲姞鍊熺敤璁板綍锛�"); @@ -168,9 +168,9 @@ if (StringUtils.isBlank(request.getLeanDepartId())) { throw new JeecgBootException("鍊熷叆杞﹂棿涓嶅厑璁镐负绌猴紒"); } - if (request.getLeanDepartId().equals(equipment.getOrgId())) { - throw new JeecgBootException("褰撳墠璁惧灞炰簬姝よ溅闂达紝涓嶉渶瑕佸�熺敤锛�"); - } +// if (request.getLeanDepartId().equals(equipment.getOrgId())) { +// throw new JeecgBootException("褰撳墠璁惧灞炰簬姝よ溅闂达紝涓嶉渶瑕佸�熺敤锛�"); +// } LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); if (sysUser == null) { throw new JeecgBootException("褰撳墠鐢ㄦ埛鏃犳硶缂栬緫鍊熺敤璁板綍锛�"); @@ -230,7 +230,7 @@ } variables.put("proofreading", true); List<String> usernames = new ArrayList<>(); - usernames.add(equipment.getEquipmentManager()); +// usernames.add(equipment.getEquipmentManager()); variables.put("NextAssignee", usernames); Result result = flowDefinitionService.startProcessInstanceByKey("equipment_lean_out", variables); if (result != null) { @@ -312,15 +312,15 @@ break; // 褰掕繕 case WAIT_RETURN: - if (StringUtils.isBlank(equipment.getEquipmentManager())) { - throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); - } - List<String> userApprovalList = new ArrayList<>(Collections.singletonList(entity.getLeanPerson())); - userApprovalList.add(equipment.getEquipmentManager()); +// if (StringUtils.isBlank(equipment.getEquipmentManager())) { +// throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); +// } +// List<String> userApprovalList = new ArrayList<>(Collections.singletonList(entity.getLeanPerson())); +// userApprovalList.add(equipment.getEquipmentManager()); values.put("dataId", entity.getId()); values.put("organization", request.getReturnComment()); values.put("comment", request.getReturnComment()); - values.put("NextAssignee", userApprovalList); +// values.put("NextAssignee", userApprovalList); request.setComment(request.getReturnComment()); entity.setLeanEndTime(new Date()); //褰掕繕鏃堕棿 //璁剧疆entity diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentScrapServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentScrapServiceImpl.java index ce371e4..3bfa889 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentScrapServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentScrapServiceImpl.java @@ -183,7 +183,7 @@ variables.put("comment", entity.getScrapReason()); variables.put("proofreading", true); // 鍒嗛厤缁欒澶囩鐞嗗憳 - List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0004); + List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0004); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰璁惧绠$悊鍛橈紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentSealUpServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentSealUpServiceImpl.java index 0228d7c..83c3253 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentSealUpServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentSealUpServiceImpl.java @@ -202,7 +202,7 @@ variables.put("comment", "鏂板鍚皝榛樿鍚姩娴佺▼"); variables.put("proofreading", true); // 鍒嗛厤缁欒澶囩鐞嗗憳 - List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0004); + List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0004); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰璁惧绠$悊鍛橈紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } @@ -261,7 +261,7 @@ } variables.put("proofreading", true); // 鍒嗛厤缁欒澶囩鐞嗗憳 - List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0004); + List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(),null, BusinessCodeConst.PCR0004); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰璁惧绠$悊鍛橈紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentTransferServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentTransferServiceImpl.java index b25c467..29f710c 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentTransferServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamEquipmentTransferServiceImpl.java @@ -140,10 +140,10 @@ if (sysUser == null) { throw new JeecgBootException("褰撳墠鐢ㄦ埛鏃犳硶娣诲姞鍊熺敤璁板綍锛�"); } - if (equipment.getOrgId().equals(request.getNewDepartId())) { - throw new JeecgBootException("褰撳墠璁惧灞炰簬姝よ溅闂达紝涓嶉渶瑕佸彉鍔紒"); - } - request.setOldDepartId(equipment.getOrgId()); +// if (equipment.getOrgId().equals(request.getNewDepartId())) { +// throw new JeecgBootException("褰撳墠璁惧灞炰簬姝よ溅闂达紝涓嶉渶瑕佸彉鍔紒"); +// } +// request.setOldDepartId(equipment.getOrgId()); request.setReportUser(sysUser.getUsername()); return equipmentTransferMapper.insert(request) > 0; } @@ -185,7 +185,7 @@ variables.put("comment", entity.getTransferReason()); variables.put("proofreading", true); // 鍒嗛厤缁欒澶囩鐞嗗憳 - List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0004); + List<UserSelector> userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(),null, BusinessCodeConst.PCR0004); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰璁惧绠$悊鍛橈紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } @@ -305,7 +305,7 @@ updateWrapper.set("equipment_id", request.getEquipmentId()); updateWrapper.set("remark", request.getRemark()); updateWrapper.set("transfer_reason", request.getTransferReason()); - updateWrapper.set("old_depart_id", equipment.getOrgId()); +// updateWrapper.set("old_depart_id", equipment.getOrgId()); updateWrapper.set("new_depart_id", request.getNewDepartId()); updateWrapper.eq("id", request.getId()); updateWrapper.eq("report_user", sysUser.getUsername()); diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java index 8cf5866..14dfe0a 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamInspectionOrderServiceImpl.java @@ -392,17 +392,17 @@ Map<String, Object> values = new HashMap<>(); if (InspectionStatus.UNDER_INSPECTION.name().equals(order.getInspectionStatus()) && user.getUsername().equals(order.getOperator())) { // 鐐规浜虹偣妫�缁撴潫 - String manager = Optional.ofNullable(iEamEquipmentService.getById(order.getEquipmentId())) - .map(EamEquipment::getEquipmentManager) - .orElse(null); - if (manager == null) { - throw new IllegalArgumentException("璁惧绠$悊鍛樻湭閰嶇疆"); - } - List<String> usernameList = Collections.singletonList(manager); +// String manager = Optional.ofNullable(iEamEquipmentService.getById(order.getEquipmentId())) +// .map(EamEquipment::getEquipmentManager) +// .orElse(null); +// if (manager == null) { +// throw new IllegalArgumentException("璁惧绠$悊鍛樻湭閰嶇疆"); +// } +// List<String> usernameList = Collections.singletonList(manager); values.put("dataId", order.getId()); values.put("organization", "鐐规浜虹偣妫�缁撴潫"); values.put("comment", "鐐规浜虹偣妫�缁撴潫"); - values.put("NextAssignee", usernameList); +// values.put("NextAssignee", usernameList); request.setComment("鐐规浜虹偣妫�缁撴潫"); } else { // 鐝粍闀跨‘璁� diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java index a9242cb..d19d873 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java @@ -357,15 +357,15 @@ case UNDER_MAINTENANCE: //鎵ц瀹屾垚 //璁惧绠$悊鍛樼‘璁� - String equipmentManager = equipment.getEquipmentManager(); - if(StringUtils.isBlank(equipmentManager)) { - throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); - } - userApprovalList = Collections.singletonList(equipmentManager); +// String equipmentManager = equipment.getEquipmentManager(); +// if(StringUtils.isBlank(equipmentManager)) { +// throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); +// } +// userApprovalList = Collections.singletonList(equipmentManager); values.put("dataId", entity.getId()); values.put("organization", "浜屼繚鎵ц缁撴潫"); values.put("comment", "浜屼繚鎵ц缁撴潫"); - values.put("NextAssignee", userApprovalList); +// values.put("NextAssignee", userApprovalList); request.setComment("浜屼繚鎵ц缁撴潫"); //璁剧疆entity entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.WAIT_CONFIRM.name()); @@ -389,7 +389,7 @@ eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.SECOND_MAINTENANCE_WAIT_CONFIRM.name()); break; case WAIT_CONFIRM: - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0003); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(),null, BusinessCodeConst.PCR0003); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰杞﹂棿鐝粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java index 6121b18..219caca 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java @@ -186,7 +186,7 @@ variables.put("proofreading", true); //骞惰浠诲姟浼氱 variables.put("maintenance_execution", Collections.singletonList(request.getOperator())); - variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager())); +// variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager())); Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables); if (result != null) { //鏇存柊璁惧淇濆吇鐘舵�� @@ -257,7 +257,7 @@ variables.put("proofreading", true); //骞惰浠诲姟浼氱 variables.put("maintenance_execution", Collections.singletonList(request.getOperator())); - variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager())); +// variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager())); Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables); if (result != null) { //鏇存柊璁惧淇濆吇鐘舵�� @@ -283,9 +283,9 @@ if (equipment == null) { throw new JeecgBootException("璁惧涓嶅瓨鍦紝娣诲姞澶辫触锛�"); } - if (StringUtils.isBlank(equipment.getEquipmentManager())) { - throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); - } +// if (StringUtils.isBlank(equipment.getEquipmentManager())) { +// throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); +// } LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); if (sysUser == null || !BusinessCodeConst.PCR0001.equals(sysUser.getPost())) { throw new JeecgBootException("涓嶆槸鎿嶄綔宸ワ紝鏃犳硶棰嗗彇姝ゅ伐鍗曪紒"); @@ -312,7 +312,7 @@ variables.put("proofreading", true); //骞惰浠诲姟浼氱 variables.put("maintenance_execution", Collections.singletonList(sysUser.getUsername())); - variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager())); +// variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager())); Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables); if (result != null) { //鏇存柊璁惧淇濆吇鐘舵�� @@ -368,7 +368,7 @@ case UNDER_MAINTENANCE: boolean parallelCompletion = flowTaskService.checkParallelCompletion(flowMyBusiness.getTaskId()); //鎵ц瀹屾垚 - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0006); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0006); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰杞﹂棿鐝粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } @@ -416,7 +416,7 @@ } break; case WAIT_CONFIRM: - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0003); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(),null, BusinessCodeConst.PCR0003); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰杞﹂棿鐝粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java index efc54f1..ecc65f4 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamWeekMaintenanceOrderServiceImpl.java @@ -361,7 +361,7 @@ switch (status) { case UNDER_MAINTENANCE: //鎵ц瀹屾垚 - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0003); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0003); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰鐝粍闀匡紝鏃犳硶杩涘叆涓嬬骇瀹℃壒锛�"); } @@ -393,12 +393,12 @@ eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.WEEK_MAINTENANCE_WAIT_CONFIRM.name()); break; case WAIT_CONFIRM: - if (StringUtils.isBlank(equipment.getEquipmentManager())) { - throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); - } +// if (StringUtils.isBlank(equipment.getEquipmentManager())) { +// throw new JeecgBootException("璁惧鏈垎閰嶈澶囩鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); +// } //鐝粍闀跨‘璁� userApprovalList = new ArrayList<>(); - userApprovalList.add(equipment.getEquipmentManager()); +// userApprovalList.add(equipment.getEquipmentManager()); values.put("dataId", entity.getId()); values.put("organization", request.getConfirmComment()); values.put("comment", request.getConfirmComment()); @@ -425,7 +425,7 @@ } break; case WAIT_INITIAL_ACCEPTANCE: - userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getOrgId(), BusinessCodeConst.PCR0005); + userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), null, BusinessCodeConst.PCR0005); if (CollectionUtil.isEmpty(userSelectors)) { throw new JeecgBootException("璁惧鏈垎閰嶇粰璁捐兘閮ㄧ鐞嗗憳锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒"); } diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/DicAspectService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/DicAspectService.java new file mode 100644 index 0000000..a00c0a5 --- /dev/null +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/DicAspectService.java @@ -0,0 +1,311 @@ +package org.jeecg.modules.system.aspect; + +import cn.hutool.core.util.ArrayUtil; +import cn.hutool.core.util.ReflectUtil; +import com.alibaba.fastjson.JSONObject; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.aspect.annotation.Dict; +import org.jeecg.common.aspect.annotation.DictExt; +import org.jeecg.common.aspect.annotation.DictList; +import org.jeecg.common.aspect.annotation.FieldQuery; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.system.service.ISysDictService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; + +import java.lang.reflect.Field; +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * 瀛楀吀瀛楁缈昏瘧鏈嶅姟 + * 鏀寔宓屽缈昏瘧 + * @since 2020/5/27 + */ +@Service +@Slf4j +public class DicAspectService { + @Autowired + private ISysDictService dictService; + + /** + * 鏈柟娉曢拡瀵瑰垪琛ㄦ暟鎹繘琛屽姩鎬佸瓧鍏告敞鍏� + * 瀛楀吀娉ㄥ叆瀹炵幇 閫氳繃瀵瑰疄浣撶被娣诲姞娉ㄨВ@dict 鏉ユ爣璇嗛渶瑕佺殑瀛楀吀鍐呭,瀛楀吀鍒嗕负鍗曞瓧鍏竎ode鍗冲彲 锛宼able瀛楀吀 code table text閰嶅悎浣跨敤涓庡師鏉eecg鐨勭敤娉曠浉鍚� + * 绀轰緥涓篠ysUser 瀛楁涓簊ex 娣诲姞浜嗘敞瑙Dict(dicCode = "sex") 浼氬湪瀛楀吀鏈嶅姟绔嬮┈鏌ュ嚭鏉ュ搴旂殑text 鐒跺悗鍦ㄨ姹俵ist鐨勬椂鍊欏皢杩欎釜瀛楀吀text锛屽凡瀛楁鍚嶇О鍔燺dictText褰㈠紡杩斿洖鍒板墠绔� + * 渚嬭緭鍏ュ綋鍓嶈繑鍥炲�肩殑灏变細澶氬嚭涓�涓猻ex_dictText瀛楁 + * { + * sex:1, + * sex_dictText:"鐢�" + * } + * 鍓嶇鐩存帴鍙栧�約ext_dictText鍦╰able閲岄潰鏃犻渶鍐嶈繘琛屽墠绔殑瀛楀吀杞崲浜� + * customRender:function (text) { + * if(text==1){ + * return "鐢�"; + * }else if(text==2){ + * return "濂�"; + * }else{ + * return text; + * } + * } + * 鐩墠vue鏄繖涔堣繘琛屽瓧鍏告覆鏌撳埌table涓婄殑澶氫簡灏卞緢楹荤儲浜� 杩欎釜鐩存帴鍦ㄦ湇鍔$娓叉煋瀹屾垚鍓嶇鍙互鐩存帴鐢� + * @param records + * @return + */ + public List<JSONObject> detailDict(List<Object> records){ + List<JSONObject> items = new ArrayList<>(); + FieldBatchQuery batchQuery = new FieldBatchQuery(); + boolean hasDict = false; + + for (Object record : records) { + JSONObject item = parseDictItem(record); + + Field[] fieldsArray = oConvertUtils.getAllFields(record); + for (int i = 0; i < fieldsArray.length; i++) { + Field field = fieldsArray[i]; + if (field.getAnnotation(Dict.class) != null && records.size()<=500) { + hasDict = true; + String code = field.getAnnotation(Dict.class).dicCode(); + String text = field.getAnnotation(Dict.class).dicText(); + String table = field.getAnnotation(Dict.class).dictTable(); + String key = String.valueOf(item.get(field.getName())); + + //缈昏瘧瀛楀吀鍊煎搴旂殑txt + String textValue = translateDictValue(code, text, table, key); + item.put(field.getName() + CommonConstant.DICT_TEXT_SUFFIX, textValue); + } + // 瀛楀吀缈昏瘧鎵╁睍鍔熻兘锛屾敮鎸佸瓧鍏稿瀛楁鍖归厤 + else if(field.getAnnotation(DictExt.class) != null && records.size() <= 500){ + hasDict = true; + String[] code = field.getAnnotation(DictExt.class).dicCode(); + String text = field.getAnnotation(DictExt.class).dicText(); + String table = field.getAnnotation(DictExt.class).dicTable(); + String[] params = field.getAnnotation(DictExt.class).dicParams(); + String[] paramValues = this.getParamValues(item, params); + + String textValue = this.translateDictValue(code, text, table, paramValues); + item.put(field.getName() + CommonConstant.DICT_TEXT_SUFFIX, textValue); + item.put(field.getName(), ArrayUtil.join(paramValues, ",")); + } + else if(field.getAnnotation(FieldQuery.class) != null && records.size() <= 500){ + FieldQuery ann = field.getAnnotation(FieldQuery.class); + batchQuery.put(ann.dicTable(), ann.dicText(), ann.dicCode(), + this.getParamValues(item, ann.dicParams())); + } + // 娣卞害缈昏瘧list鍏冪礌 + else if(field.getAnnotation(DictList.class) != null){ + Object fieldValue = ReflectUtil.getFieldValue(record, field); + if(fieldValue == null){ + // no-op + } + else if(null != fieldValue && fieldValue instanceof List){ + try{ + List<JSONObject> listDetail = this.detailDict((List)fieldValue); + item.put(field.getName(), listDetail); + }catch (Exception e){ + log.error("瀛楁缈昏瘧閿欒锛宨ndex=" + i + ",fieldName=" + field.getName() + ",fieldValue=" + fieldValue + ",record=" + record); + } + + }else{ + log.error("娣卞害瀛楀吀缈昏瘧鍙敮鎸丩ist绫诲瀷锛屽綋鍓嶇被鍨嬩负" + fieldValue.getClass()); + } + } + + //date绫诲瀷榛樿杞崲string鏍煎紡鍖栨棩鏈� + if (field.getType().getName().equals("java.util.Date")&&field.getAnnotation(JsonFormat.class)==null&&item.get(field.getName())!=null){ + SimpleDateFormat aDate=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + item.put(field.getName(), aDate.format(new Date((Long) item.get(field.getName())))); + } + + } + + if(records.size()>500 && hasDict){ + log.error("浣跨敤 @Dict娉ㄨВ瓒呰繃500鏉¤褰曡浣跨敤鍒嗛〉鏌ヨ"); + } + items.add(item); + } + + // 鎵归噺鏌ヨ鍏宠仈鏁版嵁 + if(batchQuery.size() > 0){ + Map<String, List<Map>> batchResult = new HashMap<>(); + batchQuery.forEach((queryKey, queryParam) -> { + // 鎵归噺鏌ヨ + try { + queryParam.setQueryResult(this.batchQueryFieldValue(queryParam.getQueryTable(), + queryParam.getColumns(), + queryParam.getParamName(), + queryParam.getParamValues())); + } catch (Exception e) { + throw new RuntimeException(e); + } + }); + + for (int i = 0; i < records.size(); i++) { + Object record = records.get(i); + JSONObject item = items.get(i); + + try { + this.fillItemValue(record, item, batchQuery); + } catch (Exception e) { + e.printStackTrace(); + log.info("鎵归噺鏌ヨ鏁版嵁濉厖鍑洪敊:{}", e.getMessage()); + } + } + } + + return items; + } + + /** + * 鍗曡〃鎵归噺鏌ヨ + * + * @param queryTable + * @param columns + * @param paramName + * @param paramValues + * @return + */ + private List<Map> batchQueryFieldValue(String queryTable, String[] columns, + String paramName, String[] paramValues) throws Exception { + try{ + return this.dictService.queryTableFieldByParams(queryTable, columns, paramName, paramValues); + }catch (Exception e){ + log.error("FieldQuery鏌ヨ閿欒", e); + throw new Exception("FieldQuery鏌ヨ閿欒"); + } + } + + /** + * 濉厖item鎵归噺鏌ヨ鏁版嵁 + * @param record + * @param item + * @param batchQuery + */ + private void fillItemValue(Object record, JSONObject item, FieldBatchQuery batchQuery) throws Exception{ + + for (Field field : oConvertUtils.getAllFields(record)) { + if(field.getAnnotation(FieldQuery.class) != null){ + FieldQuery fieldQuery = field.getAnnotation(FieldQuery.class); + + String[] paramValues = this.getParamValues(item, fieldQuery.dicParams()); + Object textValue = batchQuery.findResult(fieldQuery.dicTable(), + fieldQuery.dicCode(), paramValues, fieldQuery.dicText()); + + item.put(field.getName() + CommonConstant.DICT_TEXT_SUFFIX, textValue); + item.put(field.getName(), ArrayUtil.join(paramValues, ",")); + } + } + } + + /** + * 瑙f瀽瀛楀吀Item + * @param record + * @return + */ + private JSONObject parseDictItem(Object record) { + ObjectMapper mapper = new ObjectMapper(); + String json="{}"; + try { + //瑙e喅@JsonFormat娉ㄨВ瑙f瀽涓嶄簡鐨勯棶棰樿瑙丼ysAnnouncement绫荤殑@JsonFormat + json = mapper.writeValueAsString(record); + } catch (JsonProcessingException e) { + log.error("json瑙f瀽澶辫触"+e.getMessage(),e); + } + return JSONObject.parseObject(json); + } + + /** + * 鑾峰彇鍙傛暟鏁板�� + * @param item + * @param paramNames + * @return + */ + private String[] getParamValues(JSONObject item, String[] paramNames) { + + // 鑾峰彇瀹為檯鍙傛暟 + String[] values = new String[paramNames.length]; + for (int i = 0; i < paramNames.length; i++) { + String param = paramNames[i]; + + if(param.startsWith("$")){ + values[i] = (String) item.get(param.substring(1)); + }else{ + values[i] = param; + } + + if(values[i] == null) return null; + if(values[i].indexOf("&&") > -1){ + log.error(">>>鍙傛暟["+values[i]+"]鍖呭惈闈炴硶瀛楃','"); + return null; + } + } + + return values; + } + + /** + * 缈昏瘧瀛楀吀鏂囨湰 + * + * @param code + * @param text + * @param table + * @param paramValues + * @return + */ + private String translateDictValue(String[] code, String text, String table, String[] paramValues) { + if(paramValues == null || paramValues.length <=0 || oConvertUtils.isEmpty(table)){ + return null; + } + + try{ + return this.dictService.queryTableDictByParams(table,text, + ArrayUtil.join(code, "&&"), + ArrayUtil.join(paramValues, "&&")); + }catch (Exception e){ + log.error("瀛楀吀缈昏瘧寮傚父table={},text={},code={},paramValues={}", table, text, ArrayUtil.join(code, "&&"),ArrayUtil.join(paramValues, "&&") ); + throw e; + } + + } + + /** + * 缈昏瘧瀛楀吀鏂囨湰 + * @param code + * @param text + * @param table + * @param key + * @return + */ + private String translateDictValue(String code, String text, String table, String key) { + if(oConvertUtils.isEmpty(key)) { + return null; + } + StringBuffer textValue=new StringBuffer(); + String[] keys = key.split(","); + for (String k : keys) { + String tmpValue = null; + if (k.trim().length() == 0) { + continue; //璺宠繃寰幆 + } + if (!StringUtils.isEmpty(table)){ + tmpValue= dictService.queryTableDictTextByKey(table,text,code,k.trim()); + }else { + tmpValue = dictService.queryDictTextByKey(code, k.trim()); + } + + if (tmpValue != null) { + if (!"".equals(textValue.toString())) { + textValue.append(","); + } + textValue.append(tmpValue); + } + + } + return textValue.toString(); + } + +} diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/FieldBatchQuery.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/FieldBatchQuery.java new file mode 100644 index 0000000..246db80 --- /dev/null +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/aspect/FieldBatchQuery.java @@ -0,0 +1,135 @@ +package org.jeecg.modules.system.aspect; + +import cn.hutool.core.util.ArrayUtil; + +import java.util.*; +import java.util.function.BiConsumer; + +/** + * 鎵归噺鏌ヨ鍣� + */ +public class FieldBatchQuery { + + // key=鏌ヨ瑕佺礌=table+paramName锛� value=鏌ヨ鏉′欢 + private Map<String, QueryParam> queryBatch = new HashMap<>(); + + /** + * 渚垮埄鏌ヨ瑕佺礌 + * @param action + */ + public void forEach(BiConsumer<? super String, ? super QueryParam> action) { + this.queryBatch.forEach(action); + } + + /** + * 鏌ヨ琛ㄦ暟閲� + * @return + */ + public int size() { + return queryBatch.size(); + } + + /** + * 鏌ユ壘鏌ヨ缁撴灉 + * @param tableName + * @param paramName + * @param paramValue + * @param column + * @return + */ + public Object findResult(String tableName, String[] paramName, String[] paramValue, String column) { + String queryKey = tableName + "()" + ArrayUtil.join(paramName, ","); + if(!this.queryBatch.containsKey(queryKey)) return null; + + return this.queryBatch.get(queryKey).findResult(paramValue, column); + } + + /** + * 淇濆瓨鏌ヨ鏉′欢 + * @param tableName 鏌ヨ琛ㄥ悕 + * @param textName 鏌ヨ瀛楁鍚嶇О + * @param paramName 鏌ヨ鍙傛暟鍚嶇О + * @param paramValue 鏌ヨ鍙傛暟鍊� + */ + public void put(String tableName, String textName, String[] paramName, String[] paramValue) { + String queryKey = tableName + "()" + ArrayUtil.join(paramName, ","); + + QueryParam queryParams; + if(this.queryBatch.containsKey(queryKey)){ + queryParams = this.queryBatch.get(queryKey); + }else{ + queryParams = new QueryParam(tableName, paramName); + this.queryBatch.put(queryKey, queryParams); + } + + // 娣诲姞鏌ヨ缁撴灉column鍚嶇О + queryParams.addTextName(textName); + // 娣诲姞鏌ヨ鍙傛暟 + queryParams.addParamValue(paramValue); + } + + public static class QueryParam { + private String queryTable; + private Set<String> columns = new HashSet<>(); + private Set<String> paramValueSet = new HashSet<>(); + private String[] paramName; + private List<Map> queryResult = new ArrayList<>(); + private Map<String, Integer> resultIndex = new HashMap<>(); + + public QueryParam(String tableName, String[] column) { + this.queryTable = tableName; + this.paramName = column; + } + + public void addTextName(String textName) { + this.columns.add(textName); + } + + public void addParamValue(String[] paramValue) { + paramValueSet.add(ArrayUtil.join(paramValue, ",")); + } + + public String getQueryTable() { + return queryTable; + } + + public String[] getColumns() { + String[] ret = new String[this.columns.size()]; + this.columns.toArray(ret); + return ret; + } + + public String getParamName() { + return "concat(" + ArrayUtil.join(this.paramName, ",',',") + ")"; + } + + public String[] getParamValues() { + String[] ret = new String[this.paramValueSet.size()]; + this.paramValueSet.toArray(ret); + return ret; + } + + public void setQueryResult(List<Map> queryResult) { + this.queryResult = queryResult; + } + + public Object findResult(String[] paramValue, String column) { + if(paramValue == null) return null; + String value = ArrayUtil.join(paramValue, ","); + + if(this.resultIndex.containsKey(value)){ + return this.queryResult.get(this.resultIndex.get(value)).get(column); + } + + for (int i = 0; i < this.queryResult.size(); i++) { + Map<String, Object> map = queryResult.get(i); + if(value.equals(map.get("paramValue"))){ + this.resultIndex.put(value, i); + return map.get(column); + } + } + + return null; + } + } +} diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java index f3c3246..76ac551 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysUser.java @@ -189,6 +189,18 @@ private String productionIds; /** + * eam涓績鍒嗛厤 + */ + @Excel(name="eam涓績鍒嗛厤",width = 15,dictTable ="eam_base_factory",dicText = "factory_name",dicCode = "id") + @Dict(dictTable ="eam_base_factory",dicText = "factory_name",dicCode = "id") + private transient String eamFactoryIds; + + /** + * eam璁惧缁� + */ + private String eamEquipmentIds; + + /** * 璐熻矗缁翠慨閮ㄩ棬鐝粍 */ @Excel(name="璐熻矗缁翠慨閮ㄩ棬鐝粍",width = 15,dictTable ="eam_base_repair_depart",dicText = "depart_name",dicCode = "id") @@ -210,8 +222,6 @@ private String homePath; // @Dict(dicCode = "id",dictTable = "mom_base_team",dicText = "name") private String teamId; -// @Dict(dicCode = "id",dictTable = "mom_base_area",dicText = "name") - private String areaId; /** * 瀵嗙爜棣栨浣跨敤鏍囪瘑 1鏄� 0鍚� diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysDictMapper.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysDictMapper.java index 4a10ad1..cc29b3d 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysDictMapper.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysDictMapper.java @@ -25,7 +25,7 @@ * @since 2018-12-28 */ public interface SysDictMapper extends BaseMapper<SysDict> { - + /** * 閲嶅妫�鏌QL * @param duplicateCheckVo @@ -152,13 +152,13 @@ * @return */ public List<DictModel> queryAllDepartBackDictModel(); - + /** * 鏌ヨ鎵�鏈夌敤鎴� 浣滀负瀛楀吀淇℃伅 username -->value,realname -->text * @return */ public List<DictModel> queryAllUserBackDictModel(); - + // /** // * 閫氳繃鍏抽敭瀛楁煡璇㈠嚭瀛楀吀琛� // * @param table @@ -263,4 +263,25 @@ */ @Deprecated List<DictModel> queryTableDictByKeysAndFilterSql(@Param("table") String table, @Param("text") String text, @Param("code") String code, @Param("filterSql") String filterSql, @Param("codeValues") List<String> codeValues); + + /** + * 浣跨敤瀛怱ql鏌ヨ瀛楀吀鏁版嵁 + * @param table + * @param text + * @param subSql + * @return + */ + String queryTableDictTextBySubSql(@Param("table") String table, @Param("text") String text, @Param("subSql") String subSql); + + + /** + * 鍗曡〃鎵归噺鏌ヨ + * @param queryTable + * @param columns + * @param paramName + * @param paramValues + * @return + */ + List<Map> queryTableFieldByParams(@Param("table") String queryTable, @Param("columns") String columns, @Param("paramName") String paramName, @Param("paramValues") String[] paramValues); + } diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysDictMapper.xml b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysDictMapper.xml index ef1ec1d..0274c0b 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysDictMapper.xml +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysDictMapper.xml @@ -36,7 +36,7 @@ <!-- 閫氳繃瀛楀吀code鑾峰彇瀛楀吀鏁版嵁 --> <select id="queryDictTextByKey" parameterType="String" resultType="String"> - select s.item_text from sys_dict_item s + select s.item_text from sys_dict_item s where s.dict_id = (select id from sys_dict where dict_code = #{code}) and s.item_value = #{key} </select> @@ -66,7 +66,7 @@ <select id="queryTableDictItemsByCode" parameterType="String" resultType="org.jeecg.common.system.vo.DictModel"> select ${text} as "text",${code} as "value" from ${table} </select> - + <!--閫氳繃鏌ヨ鎸囧畾table鐨� text code 鑾峰彇瀛楀吀锛堟寚瀹氭煡璇㈡潯浠讹級--> <select id="queryTableDictItemsByCodeAndFilter" parameterType="String" resultType="org.jeecg.common.system.vo.DictModel"> select ${text} as "text",${code} as "value" from ${table} @@ -74,7 +74,7 @@ where ${filterSql} </if> </select> - + <!--閫氳繃鏌ヨ鎸囧畾table鐨� text code key 鑾峰彇瀛楀吀鍊�--> <select id="queryTableDictTextByKey" parameterType="String" resultType="String"> select ${text} as "text" from ${table} where ${code}= #{key} @@ -101,27 +101,27 @@ <select id="duplicateCheckCountSql" resultType="Long" parameterType="org.jeecg.modules.system.model.DuplicateCheckVo"> SELECT COUNT(*) FROM ${tableName} WHERE ${fieldName} = #{fieldVal} and id <> #{dataId} </select> - + <!-- 閲嶅鏍¢獙 sql璇彞 --> <select id="duplicateCheckCountSqlNoDataId" resultType="Long" parameterType="org.jeecg.modules.system.model.DuplicateCheckVo"> SELECT COUNT(*) FROM ${tableName} WHERE ${fieldName} = #{fieldVal} </select> - + <!-- 鏌ヨ閮ㄩ棬淇℃伅 浣滀负瀛楀吀鏁版嵁 --> <select id="queryAllDepartBackDictModel" resultType="org.jeecg.common.system.vo.DictModel"> select id as "value",depart_name as "text" from sys_depart where del_flag = '0' </select> - + <!-- 鏌ヨ鐢ㄦ埛淇℃伅 浣滀负瀛楀吀鏁版嵁 --> <select id="queryAllUserBackDictModel" resultType="org.jeecg.common.system.vo.DictModel"> select username as "value",realname as "text" from sys_user where del_flag = '0' </select> - + <!--閫氳繃鏌ヨ鎸囧畾table鐨� text code 鑾峰彇瀛楀吀鏁版嵁锛屼笖鏀寔鍏抽敭瀛楁煡璇� <select id="queryTableDictItems" parameterType="String" resultType="org.jeecg.common.system.vo.DictModel"> select ${text} as "text",${code} as "value" from ${table} where ${text} like #{keyword} </select> --> - + <!-- 鏍规嵁琛ㄥ悕銆佹樉绀哄瓧娈靛悕銆佸瓨鍌ㄥ瓧娈靛悕銆佺埗ID鏌ヨ鏍� --> <select id="queryTreeList" parameterType="Object" resultType="org.jeecg.modules.system.model.TreeSelectModel"> select ${text} as "title", @@ -213,7 +213,14 @@ and ${filterSql} </if> </select> - - - + <select id="queryTableFieldByParams" resultType="java.util.Map"> + select ${columns},${paramName} as paramValue + from ${table} where ${paramName} in + <foreach item="key" collection="paramValues" open="(" separator="," close=")"> + #{key} + </foreach> + </select> + <select id="queryTableDictTextBySubSql" resultType="java.lang.String"> + select ${text} as "text" from ${table} where ${subSql} + </select> </mapper> diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysDictService.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysDictService.java index 1680a88..1373ddb 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysDictService.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysDictService.java @@ -255,4 +255,16 @@ */ List<DictModel> loadDict(String dictCode, String keyword, Integer pageSize); + String queryTableDictByParams(String table, String text, String codes, String params); + + /** + * 鍗曡〃鎵归噺鏌ヨ + * @param queryTable + * @param columns + * @param paramName + * @param paramValues + * @return + */ + List<Map> queryTableFieldByParams(String queryTable, String[] columns, String paramName, String[] paramValues); + } diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java index 3776248..516c785 100644 --- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java +++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysDictServiceImpl.java @@ -1,5 +1,7 @@ package org.jeecg.modules.system.service.impl; +import cn.hutool.core.lang.Validator; +import cn.hutool.core.util.ArrayUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -153,7 +155,7 @@ log.debug("鏃犵紦瀛榙ictTableList鐨勬椂鍊欒皟鐢ㄨ繖閲岋紒"); return sysDictMapper.queryTableDictItemsByCodeAndFilter(table,text,code,filterSql); } - + /** * 閫氳繃鏌ヨ鎸囧畾table鐨� text code 鑾峰彇瀛楀吀鍊紅ext * dictTableCache閲囩敤redis缂撳瓨鏈夋晥鏈�10鍒嗛挓 @@ -282,7 +284,7 @@ public List<DictModel> queryAllUserBackDictModel() { return baseMapper.queryAllUserBackDictModel(); } - + // @Override // public List<DictModel> queryTableDictItems(String table, String text, String code, String keyword) { // return baseMapper.queryTableDictItems(table, text, code, "%"+keyword+"%"); @@ -475,4 +477,37 @@ } } + @Override + @Cacheable(value = CacheConstant.SYS_DICT_TABLE_CACHE) + public String queryTableDictByParams(String table, String text, String codes, String params) { + log.info("鏃犵紦瀛榙ictTable queryTableDictByKeys鐨勬椂鍊欒皟鐢ㄨ繖閲岋紒"); + String[] codeArr = codes.split("&&"); + String[] paramArr = params.split("&&"); + + String subSql = ""; + for (int i = 0; i < codeArr.length; i++) { + String column = codeArr[i]; + // 榛樿鍙傛暟涓虹┖瀛楃涓� + String param = paramArr.length > i ? paramArr[i] : ""; + if(column == null || ! Validator.isGeneral(column)){ + log.error("<<<闈炴硶瀛楁:" + column); + return null; + } + if(null == param || (!"-1".equals(param) && ! Validator.isGeneralWithChinese(param.replaceAll(" ", "")))){ + log.error("<<<闈炴硶鍙傛暟:" + param); + return null; + } + + if(i != 0) subSql += " and "; + subSql += column+" = '"+param+"'"; + } + return sysDictMapper.queryTableDictTextBySubSql(table,text,subSql); + } + + + @Override + public List<Map> queryTableFieldByParams(String queryTable, String[] columns, String paramName, String[] paramValues) { + String column = ArrayUtil.join(columns, ","); + return this.baseMapper.queryTableFieldByParams(queryTable, column, paramName, paramValues); + } } -- Gitblit v1.9.3