diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoService.java index 480caa71f9..6a3b28adbd 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoService.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysstaffinfo/SysStaffinfoService.java @@ -4,14 +4,10 @@ import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.anrui.portal.api.sysorganization.AppContactSysOrganizationVo; -import com.yxt.anrui.portal.api.sysorganization.SysOrganization; -import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; -import com.yxt.anrui.portal.api.syspost.SysPost; import com.yxt.anrui.portal.api.sysstaffinfo.*; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDetailsVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgDto; -import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPost; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDetailsVo; import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostDto; @@ -23,6 +19,7 @@ import com.yxt.anrui.portal.biz.sysstaffpost.SysStaffPostService; import com.yxt.anrui.portal.biz.sysuser.SysUserService; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; +import com.yxt.common.base.utils.Encodes; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PinYinUtils; import com.yxt.common.core.query.PagerQuery; @@ -186,7 +183,8 @@ public class SysStaffinfoService extends MybatisBaseService rb = ResultBean.fireFail(); String userName = userQuery.getUserName(); String password = userQuery.getPassword(); String appId = userQuery.getAppId(); @@ -74,80 +75,86 @@ public class AppSysUserRest implements AppSysUserFeign { if (StringUtils.isBlank(userName)) return new ResultBean().fail().setMsg("用户名不能为空"); if (StringUtils.isBlank(appId)) return new ResultBean().fail().setMsg("appId不能为空"); - if(type.equals("1")){ + if (type.equals("1")) { if (StringUtils.isBlank(password)) return new ResultBean().fail().setMsg("密码不能为空"); - }else { + } else { if (StringUtils.isBlank(verifyCode)) return new ResultBean().fail().setMsg("验证码不能为空"); // 访问后清理key } SysUser sysUser = sysUserService.selectByAppId(appId); - if (null == sysUser){ // 未查询到绑定的账号 + if (null == sysUser) { // 未查询到绑定的账号 sysUser = sysUserService.selectByUserNameApp(userName); - if (null == sysUser) return new ResultBean().fail().setMsg("账号不存在"); + if (sysUser == null) { + sysUser = sysUserService.selectByMobile(userName); + if (sysUser == null) { + return rb.setMsg("账号不存在"); + } + } String appIdVal = sysUser.getAppId(); - if(StringUtils.isBlank(appIdVal)){ // 设备值为空 - if(type.equals("1")){ + if (StringUtils.isBlank(appIdVal)) { // 设备值为空 + if (type.equals("1")) { String md5 = Encodes.md5(password); if (md5.equals(sysUser.getPassword())) { sysUserService.updateAppId(sysUser.getSid(), appId); SysUserVo sysUserVo = sysUserService.selectUser(sysUser); -// SysUserVo sysUserVo = sysUserService.selectUserOne(sysUser); insertLoginLog(sysUser); return new ResultBean().success().setData(sysUserVo); - }else { + } else { return new ResultBean().fail().setMsg("用户名或密码错误"); } - }else { + } else { String codeFromRedis = redisUtil.get("loginCode" + userName); - if(StringUtils.isBlank(codeFromRedis)) return new ResultBean().fail().setMsg("短信验证码已失效,请重新发送"); - if(verifyCode.equals(codeFromRedis.substring(0, 4))){ + if (StringUtils.isBlank(codeFromRedis)) + return new ResultBean().fail().setMsg("短信验证码已失效,请重新发送"); + if (verifyCode.equals(codeFromRedis.substring(0, 4))) { sysUserService.updateAppId(sysUser.getSid(), appId); SysUserVo sysUserVo = sysUserService.selectUser(sysUser); redisUtil.remove("loginCode" + userName); insertLoginLog(sysUser); return new ResultBean().success().setData(sysUserVo); - }else { + } else { return new ResultBean().fail().setMsg("短信验证码错误或已失效,请重新获取"); } } - }else { // 设备值存在 + } else { // 设备值存在 int res = insertSysExceptionLog("b", JSON.toJSON(userQuery).toString(), "当前账号已被其它设备绑定"); - return new ResultBean().fail().setMsg("当前账号已被其它设备绑定(错误码:"+res+")"); + return new ResultBean().fail().setMsg("当前账号已被其它设备绑定(错误码:" + res + ")"); } - }else { // 查询到绑定的账号 - if(userName.equals(sysUser.getUserName())){ // 设备appId一致,验证用户名 - if(type.equals("1")){ + } else { // 查询到绑定的账号 + if (userName.equals(sysUser.getUserName()) || userName.equals(sysUser.getMobile())) { // 设备appId一致,验证用户名 + if (type.equals("1")) { String md5 = Encodes.md5(password); if (md5.equals(sysUser.getPassword())) { SysUserVo sysUserVo = sysUserService.selectUser(sysUser); -// SysUserVo sysUserVo = sysUserService.selectUserOne(sysUser); insertLoginLog(sysUser); return new ResultBean().success().setData(sysUserVo); - }else { + } else { return new ResultBean().fail().setMsg("用户名或密码错误"); } - }else { + } else { String codeFromRedis = redisUtil.get("loginCode" + userName); - if(StringUtils.isBlank(codeFromRedis)) return new ResultBean().fail().setMsg("短信验证码已失效,请重新发送"); - if(verifyCode.equals(codeFromRedis.substring(0, 4))){ + if (StringUtils.isBlank(codeFromRedis)) + return new ResultBean().fail().setMsg("短信验证码已失效,请重新发送"); + if (verifyCode.equals(codeFromRedis.substring(0, 4))) { SysUserVo sysUserVo = sysUserService.selectUser(sysUser); redisUtil.remove("loginCode" + userName); insertLoginLog(sysUser); return new ResultBean().success().setData(sysUserVo); - }else { + } else { return new ResultBean().fail().setMsg("短信验证码错误或已失效,请重新获取"); } } - }else { // 用户名不一致 + } else { // 用户名不一致 int res = insertSysExceptionLog("a", JSON.toJSON(userQuery).toString(), "当前设备已绑定其它账号"); - return new ResultBean().fail().setMsg("当前设备已绑定其它账号(错误码:"+res+")"); + return new ResultBean().fail().setMsg("当前设备已绑定其它账号(错误码:" + res + ")"); } } } /** * 插入登录日志 + * * @param user */ private void insertLoginLog(SysUser user) { @@ -163,9 +170,10 @@ public class AppSysUserRest implements AppSysUserFeign { /** * 手机发送短信验证码 + * * @param mobile - * @param type 1、登录2、修改密码3、找回密码 - * @param appId 绑定手机的appid + * @param type 1、登录2、修改密码3、找回密码 + * @param appId 绑定手机的appid * @return */ @Override @@ -182,10 +190,10 @@ public class AppSysUserRest implements AppSysUserFeign { // } if (type.equals("2") || type.equals("3")) { SysUser sysUser = sysUserService.selectByUserNameApp(mobile); - if(null == sysUser){ + if (null == sysUser) { return new ResultBean().fail().setMsg("该手机号暂时还未注册,请先注册"); } - }else { // 登录 + } else { // 登录 SysUser sysUser = sysUserService.selectByAppId(appId); if (sysUser == null) { // 设备未绑定账号 sysUser = sysUserService.selectByUserNameApp(mobile); @@ -197,15 +205,15 @@ public class AppSysUserRest implements AppSysUserFeign { map.put("mobile", mobile); map.put("appId", appId); int res = insertSysExceptionLog("b", JSON.toJSON(map).toString(), "当前账号已被其它设备绑定"); - return new ResultBean().fail().setMsg("当前账号已被其它设备绑定(错误码:"+res+")"); + return new ResultBean().fail().setMsg("当前账号已被其它设备绑定(错误码:" + res + ")"); } - }else { // 设备已绑定账号 + } else { // 设备已绑定账号 if (!mobile.equals(sysUser.getMobile())) { Map map = new HashMap<>(); map.put("mobile", mobile); map.put("appId", appId); int res = insertSysExceptionLog("a", JSON.toJSON(map).toString(), "当前设备已绑定其它账号"); - return new ResultBean().fail().setMsg("当前设备已绑定其它账号(错误码:"+res+")"); + return new ResultBean().fail().setMsg("当前设备已绑定其它账号(错误码:" + res + ")"); } } } @@ -214,11 +222,12 @@ public class AppSysUserRest implements AppSysUserFeign { /** * 插入错误的信息 + * * @param operChar * @param operArg * @param remark */ - private int insertSysExceptionLog(String operChar, String operArg, String remark){ + private int insertSysExceptionLog(String operChar, String operArg, String remark) { SysExceptionLog sysExceptionLog = new SysExceptionLog(); sysExceptionLog.setExceptionCode("M00001"); // 当前设备已绑定其它账号 sysExceptionLog.setExceptionType("移动端登陆"); @@ -231,17 +240,17 @@ public class AppSysUserRest implements AppSysUserFeign { @Override public ResultBean getMyInfo(String userSid) { - if(StringUtils.isBlank(userSid)) return new ResultBean().fail().setMsg("userSid不能为空"); + if (StringUtils.isBlank(userSid)) return new ResultBean().fail().setMsg("userSid不能为空"); SysUserVo sysUserVo = sysUserService.fetchBySidVo(userSid); - if(null == sysUserVo) new ResultBean().fail().setMsg("信息错误"); + if (null == sysUserVo) new ResultBean().fail().setMsg("信息错误"); AppMySysUserInfo userInfo = new AppMySysUserInfo(); String headImage = ""; if (StringUtils.isNotBlank(sysUserVo.getHeadImage())) { headImage = fileUploadComponent.getUrlPrefix() + sysUserVo.getHeadImage(); } userInfo.setHeadImage(headImage); - userInfo.setName(StringUtils.isBlank(sysUserVo.getName())?"":sysUserVo.getName()); - userInfo.setId("ID:"+sysUserVo.getId()); + userInfo.setName(StringUtils.isBlank(sysUserVo.getName()) ? "" : sysUserVo.getName()); + userInfo.setId("ID:" + sysUserVo.getId()); // Map map = new HashMap<>(); // map.put("headImage", StringUtils.isBlank(sysUserVo.getHeadImage())?"":sysUserVo.getHeadImage()); // map.put("name", StringUtils.isBlank(sysUserVo.getName())?"":sysUserVo.getName()); @@ -250,38 +259,39 @@ public class AppSysUserRest implements AppSysUserFeign { } @Override - public ResultBean updatePassword(String userSid, String appId, String oldPassword, String newPassword,HttpServletRequest httpServletRequest) { + public ResultBean updatePassword(String userSid, String appId, String oldPassword, String newPassword, HttpServletRequest httpServletRequest) { String token = httpServletRequest.getHeader("token"); SysUser user = sysUserService.fetchBySid(userSid); if (user == null) { return ResultBean.fireFail().setMsg("抱歉,用户不存在"); } - if(!appId.equals(user.getAppId())){ + if (!appId.equals(user.getAppId())) { return new ResultBean().fail().setMsg("当前设备与账号不匹配,请解绑后再试"); } - return sysUserService.updatePasswordApp(user, oldPassword, newPassword,token); + return sysUserService.updatePasswordApp(user, oldPassword, newPassword, token); } @Override public ResultBean checkResetPwdCode(String resetPwdCode, String mobile) { if (StringUtils.isBlank(resetPwdCode)) return new ResultBean().fail().setMsg("验证码不能为空"); String codeFromRedis = redisUtil.get("resetPwdCode" + mobile); - if(StringUtils.isBlank(codeFromRedis)) return new ResultBean().fail().setMsg("短信验证码已失效,请重新发送"); - if(resetPwdCode.equals(codeFromRedis.substring(0, 4))){ + if (StringUtils.isBlank(codeFromRedis)) return new ResultBean().fail().setMsg("短信验证码已失效,请重新发送"); + if (resetPwdCode.equals(codeFromRedis.substring(0, 4))) { redisUtil.remove("resetPwdCode" + mobile); return new ResultBean().success(); - }else { + } else { return new ResultBean().fail().setMsg("短信验证码错误或已失效,请重新获取"); } } @Override - public ResultBean resetPwdApp(String mobile, String newPwd,HttpServletRequest httpServletRequest) { + public ResultBean resetPwdApp(String mobile, String newPwd, HttpServletRequest httpServletRequest) { String token = httpServletRequest.getHeader("token"); - if (StringUtils.isBlank(mobile) || !RegexUtil.isMobile(mobile)) return new ResultBean().fail().setMsg("请输入正确的手机号"); + if (StringUtils.isBlank(mobile) || !RegexUtil.isMobile(mobile)) + return new ResultBean().fail().setMsg("请输入正确的手机号"); if (StringUtils.isBlank(newPwd)) return new ResultBean().fail().setMsg("请输入密码"); - return sysUserService.resetPwdApp(mobile, newPwd,token); + return sysUserService.resetPwdApp(mobile, newPwd, token); } @Override @@ -302,6 +312,7 @@ public class AppSysUserRest implements AppSysUserFeign { /** * 手机端根据token获取userSid + * * @return */ @Override