From 6c73c38ce8eb8c58e596c64ade0984e7a9e7ed23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=95=B8=E9=9D=9E?= <8153694@qq.com> Date: Tue, 30 Jan 2024 14:18:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=AF=86=E7=A0=81=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E4=B8=8E=E7=99=BB=E5=BD=95=E7=94=A8=E6=88=B7=E5=90=8D?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/src/views/system/user/list.vue | 339 +++++++++++++----- .../admin/vue.config.js | 9 - .../xhx/base/login/web/LoginController.java | 51 +++ .../base/system/user/service/UserService.java | 6 + .../user/service/impl/UserServiceImpl.java | 65 ++-- .../base/system/user/web/UserController.java | 30 +- .../xhx/busiz/h5/web/ApiLoginController.java | 58 --- 7 files changed, 363 insertions(+), 195 deletions(-) diff --git a/attendance-performance-manager-ui/admin/src/views/system/user/list.vue b/attendance-performance-manager-ui/admin/src/views/system/user/list.vue index e5852c75..677640fb 100644 --- a/attendance-performance-manager-ui/admin/src/views/system/user/list.vue +++ b/attendance-performance-manager-ui/admin/src/views/system/user/list.vue @@ -1,16 +1,17 @@ <template> <div class="page"> - <LayoutTable :data="tableData" :config="tableConfig" notDel /> - <dialog-show ref="dialogform" @ok="getData" /> + <LayoutTable :data="tableData" :config="tableConfig" notDel/> + <dialog-show ref="dialogform" @ok="getData"/> <el-dialog title="鐢ㄦ埛宸插垎閰嶇殑瑙掕壊" :visible.sync="role.visible"> <el-form :model="role.form"> <el-checkbox-group v-model="role.checkList" :min="500"> <el-checkbox - v-for="item in allRoles" - :key="item.id" - :label="item.id" - >{{ item.name }}</el-checkbox + v-for="item in allRoles" + :key="item.id" + :label="item.id" + >{{ item.name }} + </el-checkbox > </el-checkbox-group> </el-form> @@ -20,18 +21,18 @@ </el-dialog> <el-dialog - :title="userRoleDialog.title" - :visible.sync="userRoleDialog.open" - width="60%" - append-to-body + :title="userRoleDialog.title" + :visible.sync="userRoleDialog.open" + width="60%" + append-to-body > <el-form label-width="100px"> <Field - label="瑙掕壊鍒嗛厤" - :span="24" - v-model="roles" - type="checkbox" - :enumData="tableData.dict.roleIds" + label="瑙掕壊鍒嗛厤" + :span="24" + v-model="roles" + type="checkbox" + :enumData="tableData.dict.roleIds" /> </el-form> <div slot="footer" class="dialog-footer"> @@ -41,24 +42,24 @@ </el-dialog> <el-dialog - :title="userDeptDialog.title" - :visible.sync="userDeptDialog.open" - width="60%" - append-to-body + :title="userDeptDialog.title" + :visible.sync="userDeptDialog.open" + width="60%" + append-to-body > <div class="mytree"> <el-tree - ref="bomTree" - :data="data" - id="el-tree" - indent="0" - node-key="id" - :props="treeProps" - :load="loadNode" - highlight-current - lazy - :render-content="renderContent" - @node-click="handleNodeClick" + ref="bomTree" + :data="data" + id="el-tree" + indent="0" + node-key="id" + :props="treeProps" + :load="loadNode" + highlight-current + lazy + :render-content="renderContent" + @node-click="handleNodeClick" > </el-tree> </div> @@ -68,6 +69,70 @@ <el-button @click="userDeptDialog.open = false">鍙� 娑�</el-button> </div> </el-dialog> + + + <el-dialog + :title="userPasswordDialog.title" + hei + :visible.sync="userPasswordDialog.open" + width="60%" + > + <el-form + ref="form" + label-width="110px" + label-position="right" + > + <el-row> + <Field + :span="20" + label="鐧诲綍鍚嶇О" + prop="loginName" + disabled + v-model="userPasswordDialog.data.loginName" + /> + + <Field + label="鐧诲綍瀵嗙爜" + prop="loginPwd" + v-model="userPasswordDialog.data.loginPwd" + /> + </el-row> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="updatePasswordConfirm">纭� 瀹�</el-button> + <el-button @click="userPasswordDialog.open = false">鍙� 娑�</el-button> + </div> + + </el-dialog> + + + <el-dialog + :title="userLoginDialog.title" + hei + :visible.sync="userLoginDialog.open" + width="60%" + > + <el-form + ref="form" + label-width="110px" + label-position="right" + > + <el-row> + <Field + :span="20" + label="鐧诲綍鍚嶇О" + prop="loginName" + v-model="userPasswordDialog.data.loginName" + /> + </el-row> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="updateLoginConfirm">纭� 瀹�</el-button> + <el-button @click="userLoginDialog.open = false">鍙� 娑�</el-button> + </div> + + </el-dialog> + </div> </template> @@ -77,10 +142,10 @@ import table from "@/assets/mixins/table"; export default { mixins: [table], - components: { dialogShow }, + components: {dialogShow}, methods: { // 鎵撳紑寮圭獥 - async findRole({ id }) { + async findRole({id}) { try { this.tableData.loading = true; this.allRoles = await this.getUserRoles(id); @@ -93,9 +158,9 @@ export default { this.tableData.loading = false; }, - renderContent: function(h, { node, data, store }) { + renderContent: function (h, {node, data, store}) { return ( - <span> + <span> <i style="font-size:16px;color:#409EFF" class={data.icon}></i> <span style="padding-left: 2px;font-size:14px">{node.label}</span> </span> @@ -107,23 +172,13 @@ export default { } this.$get("/dept/getListByParentId", { parentId: node.data.id, - }).then(({ data }) => { + }).then(({data}) => { resolve(data.result); }); }, handleNodeClick(data, node, obj) { console.log("select node tree", data); this.node = data; - // this.userDeptDialog.open = false; - // this.$post("/user/save", { - // deptId: data.id, - // }) - // .then((res) => { - // - // }) - // .catch((error) => { - // this.$message.error(error); - // }); }, userDeptConfirm(row) { @@ -186,7 +241,7 @@ export default { this.$nextTick(() => { this.$get("/dept/getListByParentId", { parentId: 0, - }).then(({ data }) => { + }).then(({data}) => { this.data = data.result; this.node = {}; console.log("data", this.data); @@ -199,14 +254,78 @@ export default { this.tableData.loading = false; }, + updatePassword(row) { + console.log("淇敼瀵嗙爜"); + try { + this.userPasswordDialog.data = row; + this.userPasswordDialog.data.loginPwd = ""; + this.userPasswordDialog.open = true; + } catch (error) { + this.$message.error(error.message); + } + }, + + updatePasswordConfirm() { + console.log("淇敼瀵嗙爜"); + try { + + + this.$post("/user/save", { + "id": userPasswordDialog.data.id, + "loginPwd": userPasswordDialog.data.loginPwd, + }).then((res) => { + if (res && res.code == 1) { + this.userPasswordDialog.data = {}; + this.$message.success("淇敼瀵嗙爜鎴愬姛锛�"); + } else { + this.$message.error(res.message); + } + this.userRoleDialog.open = false; + }) + } catch (error) { + this.$message.error(error.message); + } + }, + + updateLoginName(row) { + console.log("淇敼鐧诲綍鍚�"); + try { + this.userLoginDialog.data = row; + this.userLoginDialog.data.loginName = ""; + this.userLoginDialog.open = true; + } catch (error) { + this.$message.error(error.message); + } + }, + + updateLoginConfirm() { + console.log("淇敼鐧诲綍鍚�"); + try { + this.$post("/user/save", { + "id": user.data.id, + "loginName": userLoginDialog.data.loginName, + }).then((res) => { + if (res && res.code == 1) { + this.userLoginDialog.data = {}; + this.$message.success("淇敼鐧诲綍鍚嶆垚鍔燂紒"); + } else { + this.$message.error(res.message); + } + this.userLoginDialog.open = false; + }) + } catch (error) { + this.$message.error(error.message); + } + }, + // 鑾峰彇鐢ㄦ埛瑙掕壊鍒楄〃 getUserRoles(id) { return new Promise((resolve, reject) => { - this.$post("/role/roleNameByUserId", { userId: id }) - .then(({ data }) => { - resolve(data); - }) - .catch(reject); + this.$post("/role/roleNameByUserId", {userId: id}) + .then(({data}) => { + resolve(data); + }) + .catch(reject); }); }, getRoleUsers(id) { @@ -215,13 +334,13 @@ export default { userId: id, size: -1, }) - .then(({ data }) => { - const result = data.data - .filter((i) => i.roleId + "") - .map((i) => i.roleId + ""); - resolve(result); - }) - .catch(reject); + .then(({data}) => { + const result = data.data + .filter((i) => i.roleId + "") + .map((i) => i.roleId + ""); + resolve(result); + }) + .catch(reject); }); }, /** 閲嶅啓鏂板鏂规硶 */ @@ -260,6 +379,22 @@ export default { data: {}, }, + userPasswordDialog: { + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 寮瑰嚭灞傛爣棰� + title: "淇敼瀵嗙爜", + data: {}, + }, + + userLoginDialog: { + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 寮瑰嚭灞傛爣棰� + title: "淇敼鐧诲綍鍚�", + data: {}, + }, + treeProps: { children: "children", label: "label", @@ -272,8 +407,8 @@ export default { config: { isshowTabPane: true, columns: [ - { type: "selection", reserveSelection: true, width: 60 }, - { type: "index", label: "搴忓彿", align: "center", width: 50 }, + {type: "selection", reserveSelection: true, width: 60}, + {type: "index", label: "搴忓彿", align: "center", width: 50}, { prop: "loginName", label: "鐧诲綍鍚嶇О", @@ -317,18 +452,19 @@ export default { }, { label: "鎿嶄綔", - width: 280, + width: 320, align: "center", formatter: (row) => { return ( - <div> - <table-buttons - noView - row={row} - onEdit={this.toEdit} - onDel={this.toDel} - /> - {/* + <div> + <table-buttons + noView + noDel + row={row} + onEdit={this.toEdit} + onDel={this.toDel} + /> + {/* <el-button size="mini" type="text" @@ -338,25 +474,35 @@ export default { 鍒嗛厤瑙掕壊 </el-button> */} - <span> </span> - <el-button - size="mini" - type="text" - icon="el-icon-share" - onClick={() => this.distributeDept(row)} - > - 鍒嗛厤閮ㄩ棬 - </el-button> - <span> </span> - <el-button - size="mini" - type="text" - icon="el-icon-share" - onClick={() => this.distributeDept(row)} - > - 淇敼瀵嗙爜 - </el-button> - </div> + <span> </span> + <el-button + size="mini" + type="text" + icon="el-icon-share" + onClick={() => this.distributeDept(row)} + > + 鍒嗛厤閮ㄩ棬 + </el-button> + <span> </span> + <el-button + size="mini" + type="text" + icon="el-icon-share" + onClick={() => this.updatePassword(row)} + > + 淇敼瀵嗙爜 + </el-button> + + <span> </span> + <el-button + size="mini" + type="text" + icon="el-icon-share" + onClick={() => this.updateLoginName(row)} + > + 淇敼鐧诲綍鍚� + </el-button> + </div> ); }, }, @@ -387,30 +533,35 @@ export default { <style lang="scss" scoped> .mytree ::v-deep { .el-tree--highlight-current - ::v-deep - .el-tree-node.is-checked - > .el-tree-node__content { + ::v-deep + .el-tree-node.is-checked + > .el-tree-node__content { background-color: rgb(255, 255, 255); color: rgb(64, 158, 255); } + .el-tree--highlight-current - ::v-deep - .el-tree-node.is-current - > .el-tree-node__content { + ::v-deep + .el-tree-node.is-current + > .el-tree-node__content { background-color: rgb(255, 255, 255); color: rgb(64, 158, 255); } + .el-tree > .el-tree-node:after { border-top: none; } + .el-tree-node { position: relative; padding-left: 16px; } + //鑺傜偣鏈夐棿闅欙紝闅愯棌鎺夊睍寮€鎸夐挳灏卞ソ浜�,濡傛灉瑙夊緱绌洪殭娌′簨鍙互鍒犳帀 .el-tree-node__expand-icon.is-leaf { display: none; } + .el-tree-node__children { padding-left: 16px; } diff --git a/attendance-performance-manager-ui/admin/vue.config.js b/attendance-performance-manager-ui/admin/vue.config.js index 378e84d5..23ef9cb1 100644 --- a/attendance-performance-manager-ui/admin/vue.config.js +++ b/attendance-performance-manager-ui/admin/vue.config.js @@ -1,14 +1,5 @@ module.exports = { productionSourceMap: false, -/* assetsDir: 's', - configureWebpack: { - externals: { - vue: "Vue", - vuex: "Vuex", - "vue-router": "VueRouter", - "element-ui": "ELEMENT" - }, - },*/ lintOnSave:false, devServer: { inline: true, diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/login/web/LoginController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/login/web/LoginController.java index 408601d5..e41abd97 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/login/web/LoginController.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/login/web/LoginController.java @@ -204,6 +204,57 @@ public class LoginController extends BaseCRUDJsonBodyMappingController<UserServi } } + /** + * 淇敼鐢ㄦ埛鐧诲綍鍚� + * + * @param userEntity + * @return + * @throws Exception + */ + @RequestMapping("reLoginName") + public String reLoginName(@RequestBody UserEntity userEntity) throws Exception { + JSONObject ret = new JSONObject(); + Long id = userEntity.getId(); + String loginName = userEntity.getLoginName(); + Integer userType = userEntity.getUserType(); + + if (ObjectUtils.isEmpty(userEntity.getId())) { + throw new AppException("淇敼鐨勭敤鎴穒d涓嶈兘涓虹┖"); + } + + if (ObjectUtils.isEmpty(loginName)) { + throw new AppException("淇敼鐨勭櫥褰曞悕涓嶈兘闂┖锛�"); + } + + try { + //妫€娴嬩慨鏀圭殑鐢ㄦ埛鍚嶆槸鍚﹀瓨鍦� + UserEntity entity = userService.selectOne(new UserQuery().loginName(loginName)); + if (!ObjectUtils.isEmpty(entity)) { + throw new AppException("淇敼鐨勭敤鎴风櫥褰曞悕宸茬粡瀛樺湪锛乴oginName=" + loginName); + } + if (SysConstains.ADMIN_ID == id) + throw new AppException("瓒呯骇绠$悊鍛樹笉鍏佽淇敼锛�"); + + if (userType == UserType.SYSTEM.getValue()) + throw new AppException("绯荤粺鐢ㄦ埛涓嶅厑璁镐慨鏀癸紒"); + userService.getUserDao().update(userEntity); + ret.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); + ret.put(KEY_RESULT_MSG, "淇敼鐢ㄦ埛鐧诲綍鍚嶆垚鍔�!"); + recordSysLog(request, userEntity, "淇敼鐢ㄦ埛鐧诲綍鍚嶆垚鍔�!"); + return ret.toJSONString(); + } catch (AppException e) { + log.error("login error ", e); + ret.put(KEY_RESULT_CODE, e.getCode()); + ret.put(KEY_RESULT_MSG, super.convertException(e)); + return ret.toJSONString(); + } catch (Exception e) { + log.error("绯荤粺寮傚父 error ", e); + ret.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE); + ret.put(KEY_RESULT_MSG, super.convertException(e)); + return ret.toJSONString(); + } + } + @RequestMapping("logout") public void logout(HttpServletRequest request, HttpServletResponse response) throws Exception { diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java index da4809ff..b9b30ca9 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/UserService.java @@ -114,6 +114,12 @@ public interface UserService extends ICRUDCacheService<UserEntity,Long> { */ public boolean updateUserPwd(String loginName, String oldPwd, String newPwd) throws AppException; + /** + * + * @param entity + */ + void doHandlerUser(UserEntity entity); + UserDao getUserDao(); diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java index f4db910b..0b62e2f1 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/service/impl/UserServiceImpl.java @@ -46,6 +46,7 @@ import java.util.stream.Collectors; * <p>Description: UserServiceImpl service鎺ュ彛 </p> * <p>Copyright: Copyright ® </p> * <p>Company: </p> + * * @author * @version 1.0.0 */ @@ -65,10 +66,12 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE @Value("${sms.apiId:ADsUXLrS81vZDU95}") private String appid; - /** 鐭俊妯℃澘ID**/ + /** + * 鐭俊妯℃澘ID + **/ private static String SMS_TPYE = "30"; - private static String SMS_VERIFY_CODE_KEY ="login:sms:verify:"; + private static String SMS_VERIFY_CODE_KEY = "login:sms:verify:"; @Override protected String getExtKey(UserEntity data) { @@ -76,8 +79,7 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE } - - private void doHandlerUser(UserEntity entity) throws AppException { + public void doHandlerUser(UserEntity entity) throws AppException { if (StringUtils.isNotEmpty(entity.getLoginPwd())) { try { entity.setLoginPwd(SecurityUtil.md5DoubleEncoding(entity.getLoginPwd())); @@ -101,9 +103,9 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE @Override protected void saveAfter(UserEntity entity, Context context) throws AppException { - if(CollectionUtils.isNotEmpty(entity.getRoleIds())){ + if (CollectionUtils.isNotEmpty(entity.getRoleIds())) { List<RoleUserEntity> roleUserEntityList = new ArrayList<>(); - entity.getRoleIds().stream().forEach(item->{ + entity.getRoleIds().stream().forEach(item -> { RoleUserEntity roleUserEntity = new RoleUserEntity(); roleUserEntity.setUserId(entity.getId()); roleUserEntity.setRoleId(item); @@ -115,7 +117,10 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE @Override protected void updateBefore(UserEntity entity, Context context) throws AppException { - if (entity.getId().longValue() == SysConstains.ADMIN_ID && !context.getUser().isAdmin()) { +/* if (entity.getId().longValue() == SysConstains.ADMIN_ID && !context.getUser().isAdmin()) { + throw new AppException("浣犳病鏈夋潈闄愭墽琛岃鎿嶄綔"); + }*/ + if (entity.getId().longValue() == SysConstains.ADMIN_ID) { throw new AppException("浣犳病鏈夋潈闄愭墽琛岃鎿嶄綔"); } this.doHandlerUser(entity); @@ -123,9 +128,9 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE @Override protected void updateAfter(UserEntity entity, Context context) throws AppException { - if(CollectionUtils.isNotEmpty(entity.getRoleIds())){ + if (CollectionUtils.isNotEmpty(entity.getRoleIds())) { List<RoleUserEntity> roleUserEntityList = new ArrayList<>(); - entity.getRoleIds().stream().forEach(item->{ + entity.getRoleIds().stream().forEach(item -> { RoleUserEntity roleUserEntity = new RoleUserEntity(); roleUserEntity.setUserId(entity.getId()); roleUserEntity.setRoleId(item); @@ -156,13 +161,13 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE @Override protected void findAfter(UserEntity params, PageInfo pageInfo, Context context, List<UserEntity> list) throws AppException { - if(CollectionUtils.isNotEmpty(list)) { - list.stream().forEach(item->{ + if (CollectionUtils.isNotEmpty(list)) { + list.stream().forEach(item -> { RoleUserEntity query = new RoleUserEntity(); query.setUserId(item.getId()); List<RoleUserEntity> roleUserEntityList = roleUserDao.getList(query); List<Long> roleIds = new ArrayList<>(); - roleUserEntityList.stream().forEach(role->{ + roleUserEntityList.stream().forEach(role -> { roleIds.add(role.getRoleId()); }); item.setRoleIds(roleIds); @@ -364,64 +369,64 @@ public class UserServiceImpl extends AbstractCRUDCacheServiceImpl<UserDao, UserE @Override public void sendSmsVerifyCode(String mobileNumber) throws AppException { - if(StringUtils.isEmpty(mobileNumber)){ + if (StringUtils.isEmpty(mobileNumber)) { throw new AppException("鎵嬫満鍙蜂笉鑳戒负绌�"); } - if(!PhoneUtil.isPhone(mobileNumber)){ + if (!PhoneUtil.isPhone(mobileNumber)) { throw new AppException("鎵嬫満鍙风爜鏍煎紡涓嶆纭�"); } UserEntity user = this.selectOne(new UserQuery().mobile(mobileNumber)); - if(user==null){ + if (user == null) { throw new AppException("鎵嬫満鍙风爜:" + mobileNumber + "娌℃湁娉ㄥ唽鐢ㄦ埛"); } String verifyCode = cacheService.get(SMS_VERIFY_CODE_KEY + mobileNumber); - if(StringUtils.isNotEmpty(verifyCode)){ + if (StringUtils.isNotEmpty(verifyCode)) { throw new AppException("褰撳墠鎵嬫満鍙风爜宸插彂閫侀獙璇佺爜锛岃绋嶅悗閲嶈瘯"); } try { Map<String, String> params = new HashMap<>(); - params.put("appid",appid); - params.put("phone",mobileNumber); - params.put("type",SMS_TPYE); + params.put("appid", appid); + params.put("phone", mobileNumber); + params.put("type", SMS_TPYE); String[] json = new String[2]; String vCode = RandomUtil.randomNumbers(6); json[0] = vCode; json[1] = "1"; params.put("json", JSONObject.toJSON(json).toString()); - String resp = HttpUtil.doPost(smsApiUrl,params); + String resp = HttpUtil.doPost(smsApiUrl, params); JSONObject respJson = JSONObject.parseObject(resp); - if(respJson.getIntValue("code")==0){ + if (respJson.getIntValue("code") == 0) { throw new AppException("鐭俊鍙戦€佸け璐�:" + respJson.getString("message")); } //鏈夋晥鏈�60绉� - cacheService.setnx(SMS_VERIFY_CODE_KEY+mobileNumber,vCode,60); - }catch (Exception e){ - log.error("鐭俊鍙戦€佸紓甯�",e); + cacheService.setnx(SMS_VERIFY_CODE_KEY + mobileNumber, vCode, 60); + } catch (Exception e) { + log.error("鐭俊鍙戦€佸紓甯�", e); throw new AppException("鐭俊鍙戦€佸紓甯�"); } } @Override public UserEntity doSmsLogin(String mobileNumber, String verifyCode, String loginIp) throws AppException { - if(StringUtils.isEmpty(mobileNumber)){ + if (StringUtils.isEmpty(mobileNumber)) { throw new AppException("鎵嬫満鍙蜂笉鑳戒负绌�"); } - if(StringUtils.isEmpty(verifyCode)){ + if (StringUtils.isEmpty(verifyCode)) { throw new AppException("楠岃瘉鐮佷笉鑳戒负绌�"); } - if(!PhoneUtil.isPhone(mobileNumber)){ + if (!PhoneUtil.isPhone(mobileNumber)) { throw new AppException("鎵嬫満鍙风爜鏍煎紡涓嶆纭�"); } UserEntity customer = this.selectOne(new UserQuery().mobile(mobileNumber)); - if(customer==null){ + if (customer == null) { throw new AppException("鎵嬫満鍙风爜:" + mobileNumber + "娌℃湁娉ㄥ唽鐢ㄦ埛"); } String vCode = cacheService.get(SMS_VERIFY_CODE_KEY + mobileNumber); - if(StringUtils.isEmpty(vCode)){ + if (StringUtils.isEmpty(vCode)) { throw new AppException("楠岃瘉鐮佸凡澶辨晥"); } - if(!verifyCode.equals(vCode)){ + if (!verifyCode.equals(vCode)) { throw new AppException("楠岃瘉鐮佷笉姝g‘"); } UserEntity update = new UserEntity(); diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/web/UserController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/web/UserController.java index 01c704c1..a8ba440b 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/web/UserController.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/base/system/user/web/UserController.java @@ -24,10 +24,7 @@ import io.jsonwebtoken.Jwts; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -122,6 +119,31 @@ public class UserController extends BaseCRUDJsonBodyMappingController<UserServic } + @RequestMapping(value = "repassword", method = RequestMethod.POST) + public String rePassword(@RequestBody UserEntity userEntity) { + JSONObject ret = new JSONObject(); + try { + //鏌ヨ鐢ㄦ埛鏄惁瀛樺湪 + boolean existUser = service.existUser(userEntity.getLoginName(), userEntity.getId()); + if(!existUser) throw new AppException("鐢ㄦ埛涓嶅瓨鍦紒"); + + //淇敼瀵嗙爜 + //service.doHandlerUser(userEntity); + + service.update(userEntity,getContext()); + //鏇存柊瀵嗙爜 + + + ret.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); + ret.put(KEY_RESULT_MSG, "瀵嗙爜淇敼鎴愬姛锛�"); + } catch (Exception e) { + ret.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE); + ret.put(KEY_RESULT_MSG, super.convertException(e)); + } + return ret.toJSONString(); + } + + public static void main(String[] args) { String token = "eyJhbGciOiJIUzI1NiJ9.eyJsb2dpbl91c2VyX2tleSI6IjIzNGE5NDA5ZDVhOTQ3MWNhMzdkYjZkYmMwY2JjZTc5In0.MWyQW40HYDxyUz7PJRf_nRsFPWx3Hr811Ime984nixs"; diff --git a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/ApiLoginController.java b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/ApiLoginController.java index abb94f7a..9a2a7b9f 100644 --- a/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/ApiLoginController.java +++ b/attendance-performance-manager/src/main/java/com/mortals/xhx/busiz/h5/web/ApiLoginController.java @@ -121,64 +121,6 @@ public class ApiLoginController extends BaseJsonBodyController { ret.put(KEY_RESULT_MSG, super.convertException(e)); return ret.toJSONString(); } - -/* - - - JSONObject ret = new JSONObject(); - String loginName = loginForm.getLoginName(); - String password = loginForm.getPassword(); - String ip = super.getRequestIP(request); - if (StringUtils.isEmpty(loginName) || StringUtils.isEmpty(password)) { - ret.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE); - ret.put(KEY_RESULT_MSG, "鏈幏鍙栧埌鐢ㄦ埛淇℃伅锛岃閲嶆柊鐧诲綍"); - return ret.toJSONString(); - } - UserEntity userEntity = null; - try { - loginForm.validate(); - userEntity = userService.doLogin(loginName, password, ip); - userEntity.setLastLoginAddress(ip); - recordSysLog(request, userEntity, "H5鐢ㄦ埛鐧诲綍绯荤粺鎴愬姛!"); - String currUserName = userEntity.getRealName(); - if (currUserName == null || currUserName.trim().length() == 0) { - currUserName = "绠$悊鍛�"; - } - JSONObject data = new JSONObject(); - data.put("currUserName", currUserName); - data.put("id", userEntity.getId()); - data.put("userType", userEntity.getUserType()); - - HashSet<Integer> set = new HashSet<>(); - set.add(0); - set.add(2); - set.add(3); - - if (ObjectUtils.isEmpty(userEntity.getUserType()) || !set.contains(userEntity.getUserType())) { - throw new AppException("褰撳墠鐢ㄦ埛涓嶆敮鎸丠5鐧诲綍!"); - } - - userEntity.setLoginTime(System.currentTimeMillis()); - userEntity.setToken(IdUtil.fastSimpleUUID()); - userEntity.setExpireTime(DateUtils.addCurrDate(3).getTime()); - String token = authTokenService.createToken(userEntity); - data.put("token", token); - - if (!ObjectUtils.isEmpty(loginForm.getDingCode())) { - //鏇存柊缁戝畾閽夐拤 - userEntity.setDingUserId(loginForm.getDingCode()); - userService.getUserDao().update(userEntity); - } - ret.put(KEY_RESULT_DATA, data); - ret.put(KEY_RESULT_CODE, VALUE_RESULT_SUCCESS); - ret.put(KEY_RESULT_MSG, "鐢ㄦ埛鐧诲綍绯荤粺鎴愬姛!"); - return ret.toJSONString(); - } catch (Exception e) { - log.error("h5 login error ", e); - ret.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);SyncDoorsEventTaskImpl - ret.put(KEY_RESULT_MSG, super.convertException(e));SyncDoorsEventTaskImpl - return ret.toJSONString(); - }*/ } @RequestMapping("logout") -- 2.24.3