From 79dd20bae9e8af17d5d66b67da4ca6ebc56cd9dd Mon Sep 17 00:00:00 2001 From: ludc Date: 星期三, 26 六月 2024 11:15:43 +0800 Subject: [PATCH] 用户管理:部门接口修改上传 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java | 59 +++ Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmPwdStrategyQueryServiceImpl.java | 13 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmPwdStrategyQueryServiceI.java | 9 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmUserQueryServiceI.java | 4 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmUserQueryServiceImpl.java | 222 ++++++++++-- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/OrgDeptQueryServiceI.java | 11 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java | 36 +- Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/pagemodel/BaseQueryObject.java | 30 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmPasswordStrategyDO.java | 3 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/dto/SmUserDTO.java | 545 ++++++++++++++++++++++++++++++++ Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmUserDO.java | 37 ++ 11 files changed, 863 insertions(+), 106 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/pagemodel/BaseQueryObject.java b/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/pagemodel/BaseQueryObject.java index d7a4d34..221f804 100644 --- a/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/pagemodel/BaseQueryObject.java +++ b/Source/plt-web/plt-web-parent/plt-web-base/src/main/java/com/vci/starter/web/pagemodel/BaseQueryObject.java @@ -1,6 +1,5 @@ package com.vci.starter.web.pagemodel; - import com.alibaba.fastjson.annotation.JSONField; import org.apache.commons.lang3.StringUtils; @@ -56,32 +55,32 @@ /** * 鏌ヨ鏉′欢鐨勬槧灏勫叧绯� */ - @JSONField() - private Map<String,String> conditionMap = new HashMap<String, String>(); + @JSONField + private Map<String,String> conditionMap = new HashMap<>(); /** * 褰撳墠椤� */ - @JSONField() + @JSONField private int page = 1; // 褰撳墠椤� /** * 鎺掑簭瀛楁 */ - @JSONField() + @JSONField private String sort; // 鎺掑簭瀛楁 ---鍓嶇鍙敮鎸佷娇鐢ㄤ竴涓瓧娈垫潵鎺掑簭锛屼絾鏄悗鍙板疄闄呭彲浠ヤ娇鐢ㄥ涓瓧娈垫潵鎺掑簭锛屾墍浠ュ彲浠ヤ娇鐢ㄩ�楀彿鍒嗗壊 /** * 鎺掑簭绫诲瀷 */ - @JSONField() + @JSONField private String order; // asc/desc,濡傛灉鏈夊涓帓搴忓瓧娈垫椂锛岃繖閲屼篃闇�瑕佺敤閫楀彿鍒嗗壊锛屼笖涓巗ort鐨勪綅缃搴� /** * 姣忛〉鏄剧ず椤垫暟 */ - @JSONField() + @JSONField private int limit = 25;//姣忛〉鏄剧ず鐨勬潯鏁� /** @@ -90,6 +89,14 @@ */ public Map<String, String> getConditionMap() { return conditionMap; + } + + /** + * 璁剧疆鏌ヨ鏉′欢 + * @param conditionMap 鏌ヨ鏉′欢鐨勬槧灏勫叧绯� + */ + public void setConditionMap(Map<String, String> conditionMap) { + this.conditionMap = conditionMap; } /** @@ -110,14 +117,6 @@ return conditionMapHasNick; } return null; - } - - /** - * 璁剧疆鏌ヨ鏉′欢 - * @param conditionMap 鏌ヨ鏉′欢鐨勬槧灏勫叧绯� - */ - public void setConditionMap(Map<String, String> conditionMap) { - this.conditionMap = conditionMap; } public int getPage() { @@ -236,4 +235,5 @@ ", limit=" + limit + '}'; } + } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/OrgDeptQueryServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/OrgDeptQueryServiceI.java index edff563..754f12a 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/OrgDeptQueryServiceI.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/OrgDeptQueryServiceI.java @@ -1,5 +1,6 @@ package com.vci.frameworkcore.compatibility; +import com.vci.corba.common.PLException; import com.vci.frameworkcore.pagemodel.OrgDepartmentVO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.DataGrid; @@ -56,7 +57,7 @@ * @param queryMap 鏌ヨ鏉′欢锛屽鏋滈渶瑕佷娇鐢ㄧ敤鎴风殑灞炴�ф潵鏌ヨ鍙互浣跨敤pkUser.xxxx * @return 閮ㄩ棬鐨勬樉绀哄璞� */ - OrgDepartmentVO listDeptByUserOid(String userOid, Map<String, String> queryMap); + List<OrgDepartmentVO> listDeptByUserOid(String userOid, Map<String, String> queryMap); /** * 鑾峰彇鏈叧鑱旀煇涓敤鎴风殑閮ㄩ棬 @@ -113,4 +114,12 @@ */ DataGrid refTreeGridDept(TreeQueryObject treeQueryObject); + /** + * 淇濆瓨閮ㄩ棬瑙掕壊鍏宠仈淇℃伅锛屽甫鏌ラ噸鍔熻兘 + * @param userId 鐢ㄦ埛id + * @param deptIds 閮ㄩ棬oid + * @return + */ + boolean saveUserDepts(String userId, List<String> deptIds) throws PLException; + } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmPwdStrategyQueryServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmPwdStrategyQueryServiceI.java index daac304..ee003c4 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmPwdStrategyQueryServiceI.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmPwdStrategyQueryServiceI.java @@ -1,17 +1,8 @@ package com.vci.frameworkcore.compatibility; import com.vci.corba.common.PLException; -import com.vci.corba.omd.data.BusinessObject; -import com.vci.frameworkcore.pagemodel.OrgDepartmentVO; import com.vci.frameworkcore.pagemodel.SmPasswordStrategyVO; -import com.vci.frameworkcore.pagemodel.SmRoleVO; import com.vci.starter.web.exception.VciBaseException; -import com.vci.starter.web.util.BeanUtil; -import com.vci.starter.web.wrapper.VciQueryWrapperForDO; -import com.vci.web.model.SmPasswordStrategyDO; -import com.vci.web.util.WebUtil; -import org.apache.commons.lang3.StringUtils; -import org.springframework.util.CollectionUtils; import java.util.Collection; import java.util.List; diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmUserQueryServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmUserQueryServiceI.java index 9290c23..b3f35ba 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmUserQueryServiceI.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/SmUserQueryServiceI.java @@ -1,15 +1,13 @@ package com.vci.frameworkcore.compatibility; import com.vci.corba.common.PLException; -import com.vci.frameworkcore.dto.SmUserDTO; -import com.vci.frameworkcore.pagemodel.SmPasswordStrategyVO; +import com.vci.frameworkcore.model.dto.SmUserDTO; import com.vci.frameworkcore.pagemodel.SmUserVO; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; import com.vci.starter.web.pagemodel.Tree; import com.vci.starter.web.pagemodel.TreeQueryObject; -import com.vci.web.model.SmUserDO; import java.util.Collection; import java.util.List; diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java index f2a737f..7a92d79 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/OrgDeptQueryServiceImpl.java @@ -1,5 +1,6 @@ package com.vci.frameworkcore.compatibility.impl; +import com.vci.corba.common.PLException; import com.vci.corba.omd.data.BusinessObject; import com.vci.frameworkcore.compatibility.OrgDeptQueryServiceI; import com.vci.frameworkcore.lcstatuspck.FrameworkDataLCStatus; @@ -20,10 +21,13 @@ import com.vci.starter.web.util.VciBaseUtil; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; import com.vci.web.service.WebBoServiceI; +import com.vci.web.util.Func; +import com.vci.web.util.PlatformClientUtil; import com.vci.web.util.WebUtil; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.util.*; @@ -43,6 +47,12 @@ */ @Autowired private WebBoServiceI boService; + + /** + * 骞冲彴璋冪敤瀹㈡埛绔� + */ + @Autowired + private PlatformClientUtil platformClientUtil; /** * 瀵硅薄鎿嶄綔宸ュ叿绫� @@ -179,7 +189,7 @@ if(queryMap == null){ queryMap = new HashMap<>(); } - List<OrgDeptForPlatform1> roles = new ArrayList<>(); + List<OrgDeptForPlatform1> deptForPlatform1s = new ArrayList<>(); if(userOid.contains(",")){ Map<String, String> finalQueryMap = queryMap; WebUtil.switchCollectionForOracleIn(WebUtil.str2List(userOid)).stream().forEach(userOids->{ @@ -191,7 +201,7 @@ VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(conditionMap,OrgDeptForPlatform1.class); List<OrgDeptForPlatform1> roleForPlatform1s = boService.selectByQueryWrapper(queryWrapper, OrgDeptForPlatform1.class); if(!CollectionUtils.isEmpty(roleForPlatform1s)){ - roles.addAll(roleForPlatform1s); + deptForPlatform1s.addAll(roleForPlatform1s); } }); }else { @@ -200,9 +210,9 @@ VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(queryMap,OrgDeptForPlatform1.class); List<OrgDeptForPlatform1> roleForPlatform1s = boService.selectByQueryWrapper(queryWrapper, OrgDeptForPlatform1.class); if(!CollectionUtils.isEmpty(roleForPlatform1s)){ - roles.addAll(roleForPlatform1s); + deptForPlatform1s.addAll(roleForPlatform1s); } - return deptDO2VOs(roles); + return deptDO2VOs(deptForPlatform1s); } /** @@ -212,13 +222,13 @@ * @return 閮ㄩ棬鐨勬樉绀哄璞� */ @Override - public OrgDepartmentVO listDeptByUserOid(String userOid, + public List<OrgDepartmentVO> listDeptByUserOid(String userOid, Map<String, String> queryMap) { List<OrgDepartmentVO> departmentVOS = listDeptByUserOid(userOid, queryMap, false); if(CollectionUtils.isEmpty(departmentVOS)){ - return null; + return new ArrayList<>(); } - return departmentVOS.get(0); + return departmentVOS; } /** @@ -412,4 +422,39 @@ return dataGrid; } + /** + * 淇濆瓨閮ㄩ棬瑙掕壊鍏宠仈淇℃伅锛屽甫鏌ラ噸鍔熻兘 + * @param userId 鐢ㄦ埛id + * @param deptIds 閮ㄩ棬id + * @return + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveUserDepts(String userId, List<String> deptIds) throws PLException { + if(Func.isBlank(userId) || Func.isEmpty(deptIds)){ + return false; + } + List<String> repeatDeptOidList = new ArrayList<>(); + //寰幆杩涜鏌ラ噸锛岄伩鍏峣n澶т簬1000 + WebUtil.switchCollectionForOracleIn(deptIds).stream().forEach(deptoids->{ + String sql = "select pluseruid,pldeptuid from pluserdept where pluseruid = " + userId + + " and " + "pldeptuid in ("+WebUtil.toInSql(deptoids.toArray(new String[0]))+")"; + List<BusinessObject> cbos = boService.queryBySql(sql, null); + if(!CollectionUtils.isEmpty(cbos)){ + cbos.stream().forEach(cbo->{ + repeatDeptOidList.add(ObjectTool.getNewBOAttributeValue(cbo,"pldeptuid")); + }); + } + + }); + //浠庡嵆灏嗚鎵ц淇濆瓨鐨勯儴闂╫id涓Щ闄ゅ綋鍓嶇敤鎴峰凡缁忓瓨鍦ㄥ叧鑱斿叧绯荤殑鐨勯儴闂╫id + deptIds.removeAll(repeatDeptOidList); + if(Func.isNotEmpty(deptIds)){ + for (String deptId : deptIds){ + platformClientUtil.getFrameworkService().saveUserDept(new String[]{userId}, deptId,null); + } + } + return true; + } + } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmPwdStrategyQueryServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmPwdStrategyQueryServiceImpl.java index 5aac379..ddedfc6 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmPwdStrategyQueryServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmPwdStrategyQueryServiceImpl.java @@ -4,17 +4,12 @@ import com.vci.corba.omd.data.BusinessObject; import com.vci.frameworkcore.compatibility.SmPwdStrategyQueryServiceI; import com.vci.frameworkcore.compatibility.SmUserQueryServiceI; -import com.vci.frameworkcore.model.OrgDeptForPlatform1; -import com.vci.frameworkcore.pagemodel.OrgDepartmentVO; +import com.vci.frameworkcore.model.SmPasswordStrategyDO; import com.vci.frameworkcore.pagemodel.SmPasswordStrategyVO; -import com.vci.frameworkcore.pagemodel.SmRoleVO; -import com.vci.frameworkcore.pagemodel.SmUserVO; import com.vci.omd.utils.ObjectTool; -import com.vci.starter.web.constant.QueryOptionConstant; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.util.BeanUtil; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; -import com.vci.web.model.SmPasswordStrategyDO; import com.vci.web.service.WebBoServiceI; import com.vci.web.util.Func; import com.vci.web.util.WebUtil; @@ -24,9 +19,7 @@ import org.springframework.util.CollectionUtils; import java.util.*; -import java.util.function.Function; import java.util.stream.Collectors; - import static com.vci.frameworkcore.constant.FrameWorkBusLangCodeConstant.DATA_OID_NOT_EXIST; /** @@ -163,10 +156,10 @@ @Override public SmPasswordStrategyVO getPasswordStrategyVOByUserOid(String userOid) throws PLException { WebUtil.alertNotNull(userOid,"鐢ㄦ埛鐨勪富閿�"); - if(smUserQueryService.checkUserExist(null,userOid)){ + if(!smUserQueryService.checkUserExist(null,userOid)){ throw new VciBaseException(DATA_OID_NOT_EXIST); } - String sql = "select plpasswordstrategyuid,pluseruid from pluserpasswordstrategy where pluseruid = '"+ userOid +"')"; + String sql = "select plpasswordstrategyuid,pluseruid from pluserpasswordstrategy where pluseruid = '"+ userOid +"'"; List<BusinessObject> cbos = boService.queryBySql(sql, null); if(Func.isNotEmpty(cbos)){ return getPasswordStrategyVOByOid(ObjectTool.getNewBOAttributeValue(cbos.get(0), "plpasswordstrategyuid")); diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmUserQueryServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmUserQueryServiceImpl.java index 2f5a410..9c3d497 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmUserQueryServiceImpl.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/compatibility/impl/SmUserQueryServiceImpl.java @@ -1,16 +1,17 @@ package com.vci.frameworkcore.compatibility.impl; import com.vci.client.common.objects.UserObject; -import com.vci.client.common.providers.ClientServiceProvider; import com.vci.common.util.ThreeDES; import com.vci.corba.common.PLException; +import com.vci.corba.common.data.UserEntityInfo; import com.vci.corba.framework.data.UserInfo; import com.vci.corba.omd.data.BusinessObject; import com.vci.frameworkcore.compatibility.OrgDeptQueryServiceI; import com.vci.frameworkcore.compatibility.SmPwdStrategyQueryServiceI; import com.vci.frameworkcore.compatibility.SmRoleQueryServiceI; import com.vci.frameworkcore.compatibility.SmUserQueryServiceI; -import com.vci.frameworkcore.dto.SmUserDTO; +import com.vci.frameworkcore.model.dto.SmUserDTO; +import com.vci.frameworkcore.model.SmUserDO; import com.vci.frameworkcore.pagemodel.OrgDepartmentVO; import com.vci.frameworkcore.pagemodel.SmPasswordStrategyVO; import com.vci.frameworkcore.pagemodel.SmRoleVO; @@ -26,11 +27,8 @@ import com.vci.starter.web.util.BeanUtil; import com.vci.starter.web.util.VciBaseUtil; import com.vci.starter.web.util.VciDateUtil; -import com.vci.starter.web.util.WebThreadLocalUtil; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; import com.vci.web.enumpck.UserTypeEnum; -import com.vci.web.model.SmPasswordStrategyDO; -import com.vci.web.model.SmUserDO; import com.vci.web.service.WebBoServiceI; import com.vci.web.util.Func; import com.vci.web.util.PlatformClientUtil; @@ -38,9 +36,11 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.util.*; +import java.util.regex.Pattern; import java.util.stream.Collectors; import static com.vci.frameworkcore.constant.FrameWorkBusLangCodeConstant.DATA_OID_NOT_EXIST; @@ -171,7 +171,7 @@ * @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父 */ private SmUserVO getUserByField(String queryField,String queryValue) throws VciBaseException{ - VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(null,SmUserDO.class,null,true); + VciQueryWrapperForDO queryWrapper = new VciQueryWrapperForDO(null, SmUserDO.class,null,true); queryWrapper.eq(queryWrapper.getTableNick() + "." +queryField,queryValue); queryWrapper.setDistinct(true); queryWrapper.wrapperSql(); @@ -277,7 +277,7 @@ * @param userInfoArr 涓氬姟鏁版嵁鏁扮粍 * @return 鏄剧ず瀵硅薄闆嗗悎 */ - private List<SmUserVO> userInfoArr2VO(UserInfo[] userInfoArr) { + private List<SmUserVO> userInfoArr2VO(UserInfo[] userInfoArr) throws PLException { List<SmUserVO> userVOList = new ArrayList<>(); for(UserInfo userInfo : userInfoArr){ userVOList.add(userInfo2VO(userInfo)); @@ -290,7 +290,10 @@ * @param userInfo 骞冲彴杩斿洖鐨勪笟鍔℃暟鎹� * @return 鐢ㄦ埛鏄剧ず瀵硅薄 */ - private SmUserVO userInfo2VO(UserInfo userInfo) { + private SmUserVO userInfo2VO(UserInfo userInfo) throws PLException { + if(Func.isBlank(userInfo.id)){ + return new SmUserVO(); + } SmUserVO smUserVO = new SmUserVO(); smUserVO.setOid(userInfo.id); smUserVO.setId(userInfo.userName); @@ -302,7 +305,13 @@ smUserVO.setDescription(userInfo.desc); smUserVO.setEmail(userInfo.email); //鐢ㄦ埛鎵�灞為儴闂ㄧ殑鏌ヨ璁剧疆 - List<OrgDepartmentVO> orgDepartmentVOList = orgDepartmentVOMap.get(userInfo.id); + List<OrgDepartmentVO> orgDepartmentVOList; + //鏌ョ湅鍏ㄥ眬鍙橀噺涓槸鍚﹀瓨鍦ㄩ儴闂ㄤ俊鎭紝瀛樺湪鐨勬儏鍐垫渶涓昏鏄拡瀵瑰鏉$敤鎴锋煡璇㈢殑鏃跺�欓伩鍏嶉噸澶嶆煡璇㈢殑 + if(Func.isNotEmpty(orgDepartmentVOMap)){ + orgDepartmentVOList = orgDepartmentVOMap.get(userInfo.id); + }else { + orgDepartmentVOList = orgDeptQueryService.listDeptByUserOid(userInfo.id,null); + } smUserVO.setPkDepartment( Func.isEmpty(orgDepartmentVOList) ? null:orgDepartmentVOList.stream().map(OrgDepartmentVO::getOid).collect(Collectors.joining(",")) @@ -312,11 +321,23 @@ null:orgDepartmentVOList.stream().map(OrgDepartmentVO::getName).collect(Collectors.joining(",")) ); //瀵嗙爜绛栫暐鏌ヨ璁剧疆 - SmPasswordStrategyVO smPasswordStrategyVO = smPwdStrategyVOMap.getOrDefault(userInfo.id,new SmPasswordStrategyVO()); + SmPasswordStrategyVO smPasswordStrategyVO; + if(Func.isNotEmpty(smPwdStrategyVOMap)){ + smPasswordStrategyVO = smPwdStrategyVOMap.getOrDefault(userInfo.id,new SmPasswordStrategyVO()); + }else { + smPasswordStrategyVO = smPwdStrategyQueryService.getPasswordStrategyVOByUserOid(userInfo.id); + //濡傛灉涓嶅瓨鍦ㄥ氨鑾峰彇榛樿鐨� + smPasswordStrategyVO = Func.isNotEmpty(smPasswordStrategyVO) ? smPasswordStrategyVO:smPwdStrategyQueryService.getPasswordStrategyVOByDefault(); + } smUserVO.setPkPasswordStrategy(smPasswordStrategyVO.getOid()); smUserVO.setPkPasswordStrategyName(smPasswordStrategyVO.getName()); //瑙掕壊鏌ヨ璁剧疆 - List<SmRoleVO> smRoleVOList = smRoleVOMap.get(userInfo.id); + List<SmRoleVO> smRoleVOList; + if (Func.isNotEmpty(smRoleVOMap)) { + smRoleVOList = smRoleVOMap.get(userInfo.id); + }else { + smRoleVOList = smRoleQueryService.listRoleByUserOid(userInfo.id,null); + } smUserVO.setPkPerson( Func.isEmpty(smRoleVOList) ? null:smRoleVOList.stream().map(SmRoleVO::getOid).collect(Collectors.joining(",")) @@ -495,6 +516,7 @@ pageHelper = new PageHelper(-1); } pageHelper.addDefaultAsc("PLTRUENAME"); + //TODO:涓轰簡鏂逛究璋冭瘯锛屾墍浠ヨ繖鍎垮厛娉ㄩ噴鍐欐鍚庨潰璁板緱鏇存敼 //String userName = WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserName(); //鍒嗛〉鏌ヨ UserInfo[] userInfos = platformClientUtil.getFrameworkService().fetchUserInfoByCondition( @@ -557,6 +579,7 @@ SmUserVO userVO = getUserByUserId(userId); return userVO == null?"":userVO.getName(); } + /** * 鏍规嵁鐢ㄦ埛涓婚敭鑾峰彇鐢ㄦ埛鐨勫鍚� * @param userOid 鐢ㄦ埛涓婚敭 @@ -928,7 +951,6 @@ return false; } - /** * 璁剧疆鏌愪釜鐢ㄦ埛鏄攣瀹氱姸鎬� * @param userId 鐢ㄦ埛鍚� @@ -960,6 +982,7 @@ * @param confirmPassword 纭瀵嗙爜 */ @Override + @Transactional(rollbackFor = Exception.class) public void changePassword(String userOid, String password, String confirmPassword) throws VciBaseException { WebUtil.alertNotNull(userOid,"鐢ㄦ埛涓婚敭",password,"瀵嗙爜",confirmPassword,"纭瀵嗙爜"); @@ -1017,40 +1040,38 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public boolean addUser(SmUserDTO smUserDTO) throws PLException { + //鍒ょ┖ VciBaseUtil.alertNotNull( smUserDTO,"娣诲姞鐨勭敤鎴峰璞�", - smUserDTO.getId(),"璐﹀彿", + smUserDTO.getId(),"鐢ㄦ埛鍚�", smUserDTO.getPassword(),"瀵嗙爜", smUserDTO.getConfirmPassword(),"纭瀵嗙爜", smUserDTO.getName(),"濮撳悕" ); - //纭瀵嗙爜 - String confirmPassword = smUserDTO.getConfirmPassword(); - //姣斿瀵嗙爜鏄槸鍚︿竴鑷� - if(!smUserDTO.getPassword().equals(confirmPassword)){ - throw new VciBaseException("涓ゆ瀵嗙爜涓嶄竴鑷达紝璇烽噸鏂板~鍐�!"); - } - //鍏堢敤鎴峰悕锛堣处鍙凤級鏌ラ噸 - SmUserVO dbSmUserVO = getUserByUserId(smUserDTO.getId()); - if(Func.isNotEmpty(dbSmUserVO) && Func.isNotBlank(dbSmUserVO.getOid())){ - throw new VciBaseException("璇ョ敤鎴峰悕鍦ㄧ郴缁熶腑宸茬粡瀛樺湪,璇蜂慨鏀�!"); - } - //瀵嗙爜鍔犲瘑 - ThreeDES des = new ThreeDES(); - des.getKey("daliantan0v0");// 鐢熸垚瀵嗗寵 - //绗簩娆D5鍔犲瘑 - String md5Password2 = des.getEncString(smUserDTO.getPassword()); + //鏍¢獙 + check(smUserDTO,true); //鐢熸垚瀛樺偍鐨凞O瀵硅薄 - smUserDTO.setOid(VciBaseUtil.getPk()); - smUserDTO.setPassword(md5Password2); - smUserDTO.setLockFlag("0"); - BusinessObject user = ClientServiceProvider.getBOFService().initBusinessObject("user"); - SmUserDO smUserDO = new SmUserDO(); - BeanUtil.convert(user,smUserDO); - UserInfo userInfo = new UserInfo(); - BeanUtil.convert(smUserDO,userInfo); - return platformClientUtil.getFrameworkService().saveOrUpdateUser(userInfo, null); + Date date = new Date(); + smUserDTO.setPwdUpdateTime(date); + smUserDTO.setStatus((short) 0); + smUserDTO.setCreateTime(date); + smUserDTO.setLastModifyTime(date); + //userObject.setCreateUser(WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserName()); + smUserDTO.setCreator("developer"); + //userObject.setUpdateUser(WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserName()); + smUserDTO.setLastModifier("developer"); + UserInfo userInfo = changeUserObjectToUserInfo(smUserDTO); + UserEntityInfo userEntityInfo = new UserEntityInfo("developer", ""); + String oid = platformClientUtil.getFrameworkService().saveUser(userInfo, userEntityInfo); + if (Func.isEmpty(oid)) { + return false; + } + if(Func.isNotBlank(smUserDTO.getPkDepartment())){ + platformClientUtil.getFrameworkService().saveUserDept(new String[]{oid}, smUserDTO.getPkDepartment(), userEntityInfo); + } + return true; } /** @@ -1059,10 +1080,129 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public boolean updateUser(SmUserDTO smUserDTO) throws PLException { + //鍒ょ┖ + VciBaseUtil.alertNotNull( + smUserDTO,"淇敼鐨勭敤鎴峰璞�", + smUserDTO.getOid(),"鐢ㄦ埛涓婚敭", + smUserDTO.getId(),"鐢ㄦ埛鍚�", + smUserDTO.getPassword(),"瀵嗙爜", + smUserDTO.getConfirmPassword(),"纭瀵嗙爜", + smUserDTO.getName(),"濮撳悕" + ); + //鏍¢獙 + check(smUserDTO,false); + //鏌ヨ鏁版嵁搴撲腑鐨� + SmUserVO dbSmUserVO = getUserByUserId(smUserDTO.getId()); + //鏍规嵁鐢ㄦ埛鍚嶆煡璇㈠埌浜嗙敤鎴凤紝浣嗘槸oid涓嶆槸褰撳墠淇敼鐨勭敤鎴风殑oid锛岃鏄庝慨鏀圭殑鐢ㄦ埛鍚嶉噸澶� + if(Func.isNotEmpty(dbSmUserVO) + && !dbSmUserVO.getOid().equals(smUserDTO.getOid()) + ){ + throw new PLException("鐢ㄦ埛鍚嶅凡瀛樺湪锛屼笉鑳藉皢褰撳墠鐢ㄦ埛鐨勭敤鎴峰悕淇敼涓�" + dbSmUserVO.getId(),new String[0]); + } + smUserDTO.setLastModifyTime(new Date()); + //userObject.setUpdateUser(WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserName()); + smUserDTO.setLastModifier("developer"); + UserInfo userInfo = changeUserObjectToUserInfo(smUserDTO); + boolean updateBoolean = platformClientUtil.getFrameworkService().updateUser(userInfo, new UserEntityInfo("developer", null)); + //鐢ㄦ埛鍏宠仈閮ㄩ棬鏈夋墍鏇存敼 + if(Func.isNotEmpty(smUserDTO.getPkDepartment()) && !smUserDTO.getPkDepartment().equals(dbSmUserVO.getPkDepartment())){ + //鐣岄潰浼犻�掕繃鏉ョ殑宸插叧鑱旂殑閮ㄩ棬oid + List<String> updatePkDept = Func.toStrList(smUserDTO.getPkDepartment(), ","); + //鐢ㄦ埛宸插叧鑱旂殑閮ㄩ棬oid + List<String> associatedPkDept = Func.toStrList(dbSmUserVO.getPkDepartment(), ","); + //绉婚櫎 + updatePkDept.removeAll(associatedPkDept); + //鎵ц淇濆瓨鐢ㄦ埛閮ㄩ棬鍏宠仈鍏崇郴 + orgDeptQueryService.saveUserDepts(dbSmUserVO.getOid(),updatePkDept); + } + return updateBoolean; + } + + /** + * 妫�鏌ョ敤鎴蜂俊鎭槸鍚︾鍚堣鑼� + * @param smUserDTO + * @param isAdd + */ + private void check(SmUserDTO smUserDTO, boolean isAdd){ + if(!smUserDTO.getPassword().equals(smUserDTO.getConfirmPassword())){ + throw new VciBaseException("瀵嗙爜鍜岀‘璁ゅ瘑鐮佷笉鐩哥瓑"); + } + if(smUserDTO.getId().getBytes().length > 128){ + throw new VciBaseException("鐢ㄦ埛鍚嶉暱搴﹁秴杩囦笂闄�"); + } + if(smUserDTO.getPassword().getBytes().length > 128){ + throw new VciBaseException("瀵嗙爜闀垮害瓒呰繃涓婇檺"); + } + if(smUserDTO.getName().getBytes().length > 64){ + throw new VciBaseException("濮撳悕闀垮害瓒呰繃涓婇檺"); + } + if (Func.isNotBlank(smUserDTO.getSpecialties()) && smUserDTO.getSpecialties().getBytes().length > 255){ + throw new VciBaseException("涓撲笟闀垮害瓒呰繃涓婇檺"); + } + if (Func.isNotBlank(smUserDTO.getEmail()) && smUserDTO.getEmail().getBytes().length > 128){ + throw new VciBaseException("鐢靛瓙閭闀垮害瓒呰繃涓婇檺"); + } + if (Func.isNotBlank(smUserDTO.getDescription()) && smUserDTO.getDescription().getBytes().length > 255 ){ + throw new VciBaseException("鎻忚堪闀垮害瓒呰繃涓婇檺"); + } + if (!smUserDTO.getName().matches("^[A-Za-z0-9_]+$")) { + throw new VciBaseException("鐢ㄦ埛鍚嶅繀椤绘槸鐢盇-Z a-z 0-9 _缁勬垚"); + } + if (Func.isNotBlank(smUserDTO.getEmail()) && !smUserDTO.getEmail().matches("^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$")){ + throw new VciBaseException("鐢靛瓙閭鏍煎紡閿欒"); + } + //鏄柊澧炴墠鍋氱敤鎴峰悕鏌ラ噸澶勭悊 + if(isAdd){ + //鏍规嵁鐢ㄦ埛鍚嶏紙璐﹀彿锛夋煡閲� + SmUserVO dbSmUserVO = getUserByUserId(smUserDTO.getId()); + if(Func.isNotEmpty(dbSmUserVO) && Func.isNotBlank(dbSmUserVO.getOid())){ + throw new VciBaseException("璇ョ敤鎴峰悕鍦ㄧ郴缁熶腑宸茬粡瀛樺湪,璇蜂慨鏀�!"); + } + } + //鏍规嵁褰撳墠鍒涘缓杩欎釜鐢ㄦ埛鐨勪汉鎵�缁戝畾瀵嗙爜绛栫暐鏉ヨ繘琛屽瘑鐮佹牎楠� + try { + //TODO:涓轰簡鏂逛究璋冭瘯锛屾墍浠ヨ繖鍎垮厛娉ㄩ噴鍐欐鍚庨潰璁板緱鏇存敼 + //String userName = WebThreadLocalUtil.getCurrentUserSessionInfoInThread().getUserName(); + String userName = "developer"; + String error = platformClientUtil.getFrameworkService().checkPasswordStrategyByUserId(userName, smUserDTO.getPassword(),null); + if (!StringUtils.isBlank(error)) { + throw new VciBaseException("褰撳墠璁剧疆鐨勫瘑鐮侊紝瀵嗙爜绛栫暐鏍¢獙鏈�氳繃"); + } + } catch (PLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + throw new VciBaseException("妫�鏌ュ瘑鐮佺瓥鐣ョ鍚堟儏鍐靛け璐ワ紒2"); + } + } + + + + /*** + * 鐢ㄦ埛浠嶥TO瀵硅薄鍒癱orba瀵硅薄 + * @param user + * @return + */ + public UserInfo changeUserObjectToUserInfo(SmUserDTO user) { UserInfo userInfo = new UserInfo(); - BeanUtil.convert(smUserDTO,userInfo); - return platformClientUtil.getFrameworkService().updateUser(userInfo, null); + userInfo.id = user.getOid() == null ? "" : user.getOid(); + userInfo.userName = user.getId() == null ? "" : user.getId(); + userInfo.pwd = user.getPassword() == null ? "" : user.getPassword(); + userInfo.trueName = user.getName() == null ? "" : user.getName(); + userInfo.specialties = user.getSpecialties() == null ? "" : user.getSpecialties(); + userInfo.email = user.getEmail() == null ? "" : user.getEmail(); + userInfo.desc = user.getDescription() == null ? "" : user.getDescription(); + userInfo.userType = user.getUserType(); + userInfo.status = user.getStatus(); + userInfo.createTime = user.getCreateTime().getTime(); + userInfo.createUser = user.getCreator() == null ? "" : user.getCreator(); + userInfo.updateTime = user.getLastModifyTime().getTime(); + userInfo.updateUser = user.getLastModifier() == null ? "" : user.getLastModifier(); + userInfo.pwdUpdateTime = user.getPwdUpdateTime().getTime(); + userInfo.grantor = user.getGrantor() == null ? "" : user.getGrantor(); + userInfo.isDeptLeader = user.getIsDeptLeader() == null ? "0" : user.getIsDeptLeader(); + return userInfo; } /*** @@ -1098,6 +1238,7 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public boolean deleteUser(String[] ids) throws PLException { VciBaseUtil.alertNotNull(ids,"寰呭垹闄ょ殑鐢ㄦ埛id鍒楄〃涓嶈兘涓虹┖锛�"); return platformClientUtil.getFrameworkService().deleteUser(ids, null); @@ -1110,6 +1251,7 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public boolean disableOrEnableUsers(String[] ids, boolean flag) throws PLException { VciBaseUtil.alertNotNull(ids,"鍋滅敤/鍚敤鐨勭敤鎴穒d鍒楄〃"); return platformClientUtil.getFrameworkService().stopUsers(ids, flag,null); diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java index bf29cdb..dec4cf0 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/controller/SmUserQueryController.java @@ -1,20 +1,15 @@ package com.vci.frameworkcore.controller; import com.vci.frameworkcore.compatibility.SmUserQueryServiceI; -import com.vci.frameworkcore.dto.SmUserDTO; +import com.vci.frameworkcore.model.dto.SmUserDTO; import com.vci.frameworkcore.pagemodel.SmUserVO; import com.vci.starter.web.annotation.controller.VciUnCheckRight; import com.vci.starter.web.exception.VciBaseException; import com.vci.starter.web.pagemodel.*; -import com.vci.web.model.SmUserDO; -import com.zeroc.IceInternal.Ex; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -23,7 +18,7 @@ * @author weidy * @date 2020/3/4 */ -@Controller +@RestController @RequestMapping("/userQueryController") @Slf4j public class SmUserQueryController { @@ -41,7 +36,6 @@ * @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ @RequestMapping(value = "/refDataGrid",method = RequestMethod.GET) - @ResponseBody public BaseResult<SmUserVO> refDataGrid(BaseQueryObject queryObject) throws VciBaseException { //浠g爜绀轰緥 if(queryObject == null){ @@ -60,7 +54,6 @@ * @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ @RequestMapping(value = "/refTree",method = RequestMethod.GET) - @ResponseBody public BaseResult<Tree> refTree(TreeQueryObject treeQueryObject) throws VciBaseException{ List<Tree> userTreeList = userQueryService.refTreeUsers(treeQueryObject); return BaseResult.tree(userTreeList); @@ -76,7 +69,6 @@ * @throws VciBaseException 閮ㄩ棬涓婚敭涓虹┖銆佹煡璇㈠嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ @RequestMapping(value = "/refDataGridByPkDepartment",method = RequestMethod.GET) - @ResponseBody public BaseResult<SmUserVO> refDataGridByPkDepartment(String pkDepartment,BaseQueryObject queryObject) throws VciBaseException{ if(queryObject == null){ queryObject = new BaseQueryObject(); @@ -95,7 +87,6 @@ * @throws VciBaseException 瑙掕壊鐨勪富閿负绌恒�佹煡璇㈠嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ @RequestMapping(value = "/refDataGridByPkRole",method = RequestMethod.GET) - @ResponseBody public BaseResult<SmUserVO> refDataGridByPkRole(String pkRole,BaseQueryObject queryObject) throws VciBaseException{ if(queryObject == null){ queryObject = new BaseQueryObject(); @@ -113,7 +104,6 @@ * @param confirmPassword 纭瀵嗙爜 */ @RequestMapping(value = "/changePassword",method = RequestMethod.POST) - @ResponseBody public BaseResult changePassword(String userOid, String password, String confirmPassword) { userQueryService.changePassword(userOid, password, confirmPassword); return BaseResult.success("淇敼瀵嗙爜鎴愬姛"); @@ -126,7 +116,6 @@ * @throws VciBaseException 鏌ヨ鍑洪敊鐨勬椂鍊欎細鎶涘嚭寮傚父锛屽鏋滄槸鑰佺殑椤圭洰閲屼笉鎶涘嚭寮傚父 */ @RequestMapping(value = "/getDataGridUsers",method = RequestMethod.GET) - @ResponseBody @VciUnCheckRight public BaseResult<SmUserVO> getDataGridUsers(BaseQueryObject queryObject) throws VciBaseException { try { @@ -145,7 +134,6 @@ * @return */ @RequestMapping(value = "/addUser",method = RequestMethod.POST) - @ResponseBody @VciUnCheckRight public BaseResult addUser(@RequestBody SmUserDTO smUserDTO){ try { @@ -163,7 +151,6 @@ * @return */ @RequestMapping(value = "/updateUser",method = RequestMethod.PUT) - @ResponseBody @VciUnCheckRight public BaseResult updateUser(@RequestBody SmUserDTO smUserDTO){ try { @@ -181,7 +168,6 @@ * @return */ @RequestMapping(value = "/deleteUser",method = RequestMethod.DELETE) - @ResponseBody //@VciUnCheckRight public BaseResult deleteUser(String[] ids){ try { @@ -200,7 +186,6 @@ * @return */ @RequestMapping(value = "/stopUsers",method = RequestMethod.POST) - @ResponseBody //@VciUnCheckRight public BaseResult disableOrEnableUsers(String[] ids,boolean flag){ try { @@ -213,5 +198,20 @@ } } + /** + * 涓嬭浇浜哄憳瀵煎叆妯℃澘 + */ + @RequestMapping(value = "/downloadImportTemplate",method = RequestMethod.POST) + public void downloadImportTemplate(){ + + } + + /** + * 浜哄憳瀵煎叆 + */ + @RequestMapping(value = "/importUser",method = RequestMethod.POST) + public void importUser(){ + + } } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/model/SmPasswordStrategyDO.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmPasswordStrategyDO.java similarity index 98% rename from Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/model/SmPasswordStrategyDO.java rename to Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmPasswordStrategyDO.java index 4ad0e4e..1a64769 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/model/SmPasswordStrategyDO.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmPasswordStrategyDO.java @@ -1,4 +1,4 @@ -package com.vci.web.model; +package com.vci.frameworkcore.model; import com.vci.starter.web.annotation.Column; import com.vci.starter.web.annotation.Transient; @@ -6,7 +6,6 @@ import com.vci.starter.web.annotation.VciFieldType; import com.vci.starter.web.constant.FrameWorkLcStatusConstant; import com.vci.starter.web.enumpck.VciFieldTypeEnum; -import com.vci.starter.web.model.BaseModel; import java.util.Date; diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/model/SmUserDO.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmUserDO.java similarity index 91% rename from Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/model/SmUserDO.java rename to Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmUserDO.java index 4b05d52..9eb31ee 100644 --- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/model/SmUserDO.java +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/SmUserDO.java @@ -1,4 +1,4 @@ -package com.vci.web.model; +package com.vci.frameworkcore.model; import com.vci.starter.web.annotation.*; import com.vci.starter.web.constant.FrameWorkLcStatusConstant; @@ -100,6 +100,7 @@ name = "plcreateuser" ) private String creator; + /** * 鍒涘缓鏃堕棿 */ @@ -119,6 +120,7 @@ name = "plupdateuser" ) private String lastModifier; + /** * 鏈�鍚庝慨鏀规椂闂� */ @@ -127,6 +129,14 @@ name = "plupdatetime" ) private Date lastModifyTime; + + /** + * 瀵嗙爜鏈�鍚庝慨鏀规椂闂� + */ + @Column( + name = "plpwdupdatetime" + ) + public Date pwdUpdateTime; /** * 鎵�灞為儴闂� @@ -151,6 +161,22 @@ */ @Transient(referColumn = "pkUserPassword.plpasswordstrategyuid") private String pkPasswordStrategy; + + /** + * 涓撲笟 + */ + @Column( + name = "plspecialties" + ) + private String specialties; + + public void setSpecialties(String specialties) { + this.specialties = specialties; + } + + public String getSpecialties() { + return specialties; + } public String getOid() { return oid; @@ -304,6 +330,14 @@ this.pkPasswordStrategy = pkPasswordStrategy; } + public void setPwdUpdateTime(Date pwdUpdateTime) { + this.pwdUpdateTime = pwdUpdateTime; + } + + public Date getPwdUpdateTime() { + return pwdUpdateTime; + } + @Override public String toString() { return "SmUserDO{" + @@ -328,4 +362,5 @@ ", pkPasswordStrategy='" + pkPasswordStrategy + '\'' + '}'; } + } diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/dto/SmUserDTO.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/dto/SmUserDTO.java new file mode 100644 index 0000000..f7863b1 --- /dev/null +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/frameworkcore/model/dto/SmUserDTO.java @@ -0,0 +1,545 @@ +package com.vci.frameworkcore.model.dto; + +import com.vci.starter.web.model.BaseModel; +import com.vci.starter.web.pagemodel.BaseModelVO; + +import java.util.Date; + +/** + * 鐢ㄦ埛鏁版嵁浼犺緭瀵硅薄 + * @author ludc + * @date 2024/6/25 17:33 + */ +public class SmUserDTO extends BaseModelVO { + + /** + * 绂佹淇敼杩欎釜鍊� + */ + private static final long serialVersionUID = -2239512786206928200L; + + /** + * 鐢ㄦ埛鍚� + */ + private String id; + + /** + * 鐢ㄦ埛濮撳悕 + */ + private String name; + + /** + * 鐢ㄦ埛绫诲瀷 + */ + private short userType; + + /** + * 鐢ㄦ埛绫诲瀷鏄剧ず鏂囨湰 + */ + private String userTypeText; + + /** + * 鐢ㄦ埛瀵嗙爜 + */ + private String password; + + /** + * 纭瀵嗙爜 + */ + private String confirmPassword; + + /** + * 鎵�灞炰汉鍛� + */ + private String pkPerson; + + /** + * 鎵�灞炰汉鍛樺悕绉� + */ + private String pkPersonName; + + /** + * 澶辨晥鏃ユ湡 + */ + private Date disabledate; + + /** + * 閭欢鍦板潃 + */ + private String email; + + /** + * 鐢佃瘽 + */ + private String tel; + + /** + * RTX鑱旂郴鍙� + */ + private String rtxNo; + + /** + * 瀹炴椂閫氳杞欢璐﹀彿 + */ + private String IMNo; + + /** + * 鎵�灞為儴闂� + */ + private String pkDepartment; + + /** + * 鎵�灞為儴闂ㄥ悕绉� + */ + private String pkDepartmentName; + + /** + * 鏄惁閮ㄩ棬棰嗗 + */ + private String isDeptLeader; + + /** + * 鎵�灞炶亴鍔� + */ + private String pkDuty; + + /** + * 鎵�灞炶亴鍔″悕绉� + */ + private String pkDutyName; + + /** + * 鎵�灞炲瘑鐮佸畨鍏ㄧ瓥鐣� + */ + private String pkPasswordStrategy; + + /** + * 鎵�灞炲瘑鐮佸畨鍏ㄧ瓥鐣� + */ + private String pkPasswordStrategyName; + + /** + * 鏈�鍚庣櫥褰曟椂闂� + */ + private Date lastLoginTime; + + /** + * 瀵嗙爜鏈�鍚庝慨鏀规椂闂� + */ + public Date pwdUpdateTime; + + /** + * 瀵嗙爜閿欒娆℃暟 + */ + private Integer pwdWrongCount; + + /** + * 鎬у埆 + */ + private String sex; + + /** + * 鎬у埆鏄剧ず鍚嶇О + */ + private String sexText; + + /** + * 榛樿鐨勮瑷�缂栫爜 + */ + private String langCode; + + /** + * 鐢ㄦ埛鐘舵�� + */ + private short status; + + /** + * 璇█鍚嶇О + */ + private String langCodeText; + + /** + * 鏄惁閿佸畾 + */ + private String lockFlag; + + /** + * 澶村儚鏂囦欢涓婚敭 + */ + private String photo; + + /** + * 鎵�灞炶鑹� + */ + private String pkRole; + + /** + * 宸ョ + */ + private String pkWorkType; + + /** + * 鎵�灞炲伐绉嶅悕绉� + */ + private String pkWorkTypeText; + + /** + * 宸ュ彿(鐭彿) + */ + private String workNo; + + /** + * 涓嶆牎楠屽瘑鐮佸畨鍏ㄧ瓥鐣� + */ + private Boolean unCheckPasswordStrategy; + + /** + * 涓撲笟 + */ + private String specialties; + + /** + * 鎺堟潈鑰� + */ + private String grantor; + + public String getIsDeptLeader() { + return isDeptLeader; + } + + public void setIsDeptLeader(String isDeptLeader) { + this.isDeptLeader = isDeptLeader; + } + + public String getGrantor() { + return grantor; + } + + public void setGrantor(String grantor) { + this.grantor = grantor; + } + + public String getSpecialties() { + return specialties; + } + + public void setSpecialties(String specialties) { + this.specialties = specialties; + } + + public void setStatus(short status) { + this.status = status; + } + + public short getStatus() { + return status; + } + + public String getPkRole() { + return pkRole; + } + + public void setPkRole(String pkRole) { + this.pkRole = pkRole; + } + + @Override + public String getId() { + return id; + } + + @Override + public void setId(String id) { + this.id = id; + } + + @Override + public String getName() { + return name; + } + + @Override + public void setName(String name) { + this.name = name; + } + + public short getUserType() { + return userType; + } + + public void setUserType(short userType) { + this.userType = userType; + } + + public String getUserTypeText() { + return userTypeText; + } + + public void setUserTypeText(String userTypeText) { + this.userTypeText = userTypeText; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getPkPerson() { + return pkPerson; + } + + public void setPkPerson(String pkPerson) { + this.pkPerson = pkPerson; + } + + public String getPkPersonName() { + return pkPersonName; + } + + public void setPkPersonName(String pkPersonName) { + this.pkPersonName = pkPersonName; + } + + public Date getDisabledate() { + return disabledate; + } + + public void setDisabledate(Date disabledate) { + this.disabledate = disabledate; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getTel() { + return tel; + } + + public void setTel(String tel) { + this.tel = tel; + } + + public String getRtxNo() { + return rtxNo; + } + + public void setRtxNo(String rtxNo) { + this.rtxNo = rtxNo; + } + + public String getIMNo() { + return IMNo; + } + + public void setIMNo(String IMNo) { + this.IMNo = IMNo; + } + + public String getPkDepartment() { + return pkDepartment; + } + + public void setPkDepartment(String pkDepartment) { + this.pkDepartment = pkDepartment; + } + + public String getPkDepartmentName() { + return pkDepartmentName; + } + + public void setPkDepartmentName(String pkDepartmentName) { + this.pkDepartmentName = pkDepartmentName; + } + + public String getPkDuty() { + return pkDuty; + } + + public void setPkDuty(String pkDuty) { + this.pkDuty = pkDuty; + } + + public String getPkDutyName() { + return pkDutyName; + } + + public void setPkDutyName(String pkDutyName) { + this.pkDutyName = pkDutyName; + } + + public String getPkPasswordStrategy() { + return pkPasswordStrategy; + } + + public void setPkPasswordStrategy(String pkPasswordStrategy) { + this.pkPasswordStrategy = pkPasswordStrategy; + } + + public String getPkPasswordStrategyName() { + return pkPasswordStrategyName; + } + + public void setPkPasswordStrategyName(String pkPasswordStrategyName) { + this.pkPasswordStrategyName = pkPasswordStrategyName; + } + + public Date getLastLoginTime() { + return lastLoginTime; + } + + public void setLastLoginTime(Date lastLoginTime) { + this.lastLoginTime = lastLoginTime; + } + + public Date getPwdUpdateTime() { + return pwdUpdateTime; + } + + public void setPwdUpdateTime(Date pwdUpdateTime) { + this.pwdUpdateTime = pwdUpdateTime; + } + + public Integer getPwdWrongCount() { + return pwdWrongCount; + } + + public void setPwdWrongCount(Integer pwdWrongCount) { + this.pwdWrongCount = pwdWrongCount; + } + + public String getSex() { + return sex; + } + + public void setSex(String sex) { + this.sex = sex; + } + + public String getSexText() { + return sexText; + } + + public void setSexText(String sexText) { + this.sexText = sexText; + } + + public String getLangCode() { + return langCode; + } + + public void setLangCode(String langCode) { + this.langCode = langCode; + } + + public String getLangCodeText() { + return langCodeText; + } + + public void setLangCodeText(String langCodeText) { + this.langCodeText = langCodeText; + } + + public String getLockFlag() { + return lockFlag; + } + + public void setLockFlag(String lockFlag) { + this.lockFlag = lockFlag; + } + + public String getPhoto() { + return photo; + } + + public void setPhoto(String photo) { + this.photo = photo; + } + + public String getPkWorkType() { + return pkWorkType; + } + + public void setPkWorkType(String pkWorkType) { + this.pkWorkType = pkWorkType; + } + + public String getPkWorkTypeText() { + return pkWorkTypeText; + } + + public void setPkWorkTypeText(String pkWorkTypeText) { + this.pkWorkTypeText = pkWorkTypeText; + } + + public String getWorkNo() { + return workNo; + } + + public void setWorkNo(String workNo) { + this.workNo = workNo; + } + + public String getConfirmPassword() { + return confirmPassword; + } + + public void setConfirmPassword(String confirmPassword) { + this.confirmPassword = confirmPassword; + } + + public Boolean getUnCheckPasswordStrategy() { + return unCheckPasswordStrategy; + } + + public void setUnCheckPasswordStrategy(Boolean unCheckPasswordStrategy) { + this.unCheckPasswordStrategy = unCheckPasswordStrategy; + } + + @Override + public String toString() { + return "SmUserDTO{" + + "id='" + id + '\'' + + ", name='" + name + '\'' + + ", userType='" + userType + '\'' + + ", userTypeText='" + userTypeText + '\'' + + ", password='" + password + '\'' + + ", confirmPassword='" + confirmPassword + '\'' + + ", pkPerson='" + pkPerson + '\'' + + ", pkPersonName='" + pkPersonName + '\'' + + ", disabledate=" + disabledate + + ", email='" + email + '\'' + + ", tel='" + tel + '\'' + + ", rtxNo='" + rtxNo + '\'' + + ", IMNo='" + IMNo + '\'' + + ", pkDepartment='" + pkDepartment + '\'' + + ", pkDepartmentName='" + pkDepartmentName + '\'' + + ", pkDuty='" + pkDuty + '\'' + + ", pkDutyName='" + pkDutyName + '\'' + + ", pkPasswordStrategy='" + pkPasswordStrategy + '\'' + + ", pkPasswordStrategyName='" + pkPasswordStrategyName + '\'' + + ", lastLoginTime=" + lastLoginTime + + ", pwdUpdateTime=" + pwdUpdateTime + + ", pwdWrongCount=" + pwdWrongCount + + ", sex='" + sex + '\'' + + ", sexText='" + sexText + '\'' + + ", langCode='" + langCode + '\'' + + ", langCodeText='" + langCodeText + '\'' + + ", lockFlag='" + lockFlag + '\'' + + ", photo='" + photo + '\'' + + ", pkRole='" + pkRole + '\'' + + ", pkWorkType='" + pkWorkType + '\'' + + ", pkWorkTypeText='" + pkWorkTypeText + '\'' + + ", workNo='" + workNo + '\'' + + ", unCheckPasswordStrategy=" + unCheckPasswordStrategy + + ", specialties='" + specialties + '\'' + + '}'; + } + +} -- Gitblit v1.9.3