project-admin/src/main/java/com/project/admin/controller/system/SysLoginController.java
@@ -56,6 +56,14 @@ return AjaxResult.success(loginService.getVerifyCode(phone)); } @ApiOperation("新注册获取验证码") @GetMapping("/verify/getNew") @RepeatSubmit public AjaxResult getVerifyCodeNew(@RequestParam("phone") String phone) { return AjaxResult.success(loginService.getVerifyCodeNew(phone)); } @ApiOperation("校验验证码") @PostMapping("/verify/check") @RepeatSubmit project-admin/src/main/java/com/project/admin/controller/system/SysProfileController.java
@@ -101,6 +101,7 @@ return error("修改个人信息异常,请联系管理员"); } /** * 重置密码 */ @@ -130,6 +131,35 @@ } /** * 更换手机号 */ @Log(title = "更换手机号", businessType = BusinessType.UPDATE) @PostMapping("/updatePhone/{phone}") public AjaxResult updatePhone(@PathVariable String phone) { if (StringUtils.isEmpty(phone)){ return error("请填写手机号"); } LoginUser loginUser = SecurityUtils.getLoginUser(); SysUser user = loginUser.getUser(); user.setPhonenumber(phone); if (StringUtils.isNotEmpty(user.getPhonenumber()) && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) { return error("修改用户'" + user.getUserName() + "'失败,手机号码已存在"); } if (userService.resetPhone(user.getUserId(), phone) > 0) { // 更新缓存 loginUser.getUser().setUserName(phone); loginUser.getUser().setPhonenumber(phone); tokenService.setLoginUser(loginUser); return success(); } return error("修改密码异常,请联系管理员"); } /** * 头像上传 */ @Log(title = "用户头像", businessType = BusinessType.UPDATE) project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java
@@ -43,58 +43,68 @@ @Transactional public Boolean checkOrder(CheckBo bo) { if (StringUtils.isNotEmpty(bo.getIds())){ throw new BaseException("请选择要审批的单据!"); } switch (bo.getCheckType()) { case 1: SysCompany company = companyService.getById(bo.getId()); if (company==null) { throw new BaseException("没有找到对应数据,请检查审核类型!"); } SysCompanyBo companyBo = new SysCompanyBo(); companyBo.setCompanyId(company.getCompanyId()); if (bo.getCheckStatus()== -1){ company.setCheckStatus(-1); companyBo.setCompanyStatus(1); } else { company.setCheckStatus(2); companyBo.setCompanyStatus(0); } addCheckLog(company, bo); company.setCheckReason(bo.getCheckReason()); companyService.updStatus(companyBo); return companyService.updateById(company); case 2: EnforceOrder order = orderService.getById(bo.getId()); if (order==null) { throw new BaseException("没有找到对应数据,请检查审核类型!"); } addCheckLog(order, bo); if (bo.getCheckStatus()==-1){ order.setCheckStatus(-1); //审批拒绝,给申请人发送短信,如果通知企业也给企业发送短信 smsService.sendCheckMsg(order.getApplyPhone(), order.getCheckStatus()); } else { List<String> phones = orderService.getCheckPhones(order.getCheckLevel()+1, order.getApplyDeptId()); if (StringUtils.isNotEmpty(phones)){ order.setCheckStatus(1); //给下一级审批人发送短信 smsService.sendApplyMsg(phones, order.getApplyUser()); String checkPhones = StringUtils.join(phones, ","); orderService.update(orderService.lu().set(EnforceOrder::getCheckIds, checkPhones).eq(EnforceOrder::getOrderId, order.getOrderId())); } else { order.setCheckStatus(2); order.setOrderStatus(2); //审批通过,给申请人发送短信,如果通知企业也给企业发送短信 smsService.sendCheckMsg(order.getApplyPhone(), order.getCheckStatus()); if (order.getIsNoticeCompany()==1){ smsService.sendCompanyMsg(order.getCompanyPhone(), order.getApplyDeptName(), order.getPlanTime()); } for (Long id : bo.getIds()) { SysCompany company = companyService.getById(id); if (company==null) { throw new BaseException("没有找到对应数据,请检查审核类型!"); } //审批等级加1 order.setCheckLevel(order.getCheckLevel()+1); SysCompanyBo companyBo = new SysCompanyBo(); companyBo.setCompanyId(company.getCompanyId()); if (bo.getCheckStatus()== -1){ company.setCheckStatus(-1); companyBo.setCompanyStatus(1); } else { company.setCheckStatus(2); companyBo.setCompanyStatus(0); } addCheckLog(company, bo); company.setCheckReason(bo.getCheckReason()); companyService.updStatus(companyBo); companyService.updateById(company); } order.setCheckReason(bo.getCheckReason()); return orderService.updateById(order); return true; case 2: for (Long id : bo.getIds()) { EnforceOrder order = orderService.getById(id); if (order==null) { throw new BaseException("没有找到对应数据,请检查审核类型!"); } addCheckLog(order, bo); if (bo.getCheckStatus()==-1){ order.setCheckStatus(-1); //审批拒绝,给申请人发送短信,如果通知企业也给企业发送短信 smsService.sendCheckMsg(order.getApplyPhone(), order.getCheckStatus()); } else { List<String> phones = orderService.getCheckPhones(order.getCheckLevel()+1, order.getApplyDeptId()); if (StringUtils.isNotEmpty(phones)){ order.setCheckStatus(1); //给下一级审批人发送短信 smsService.sendApplyMsg(phones, order.getApplyUser()); String checkPhones = StringUtils.join(phones, ","); orderService.update(orderService.lu().set(EnforceOrder::getCheckIds, checkPhones).eq(EnforceOrder::getOrderId, order.getOrderId())); } else { order.setCheckStatus(2); order.setOrderStatus(2); //审批通过,给申请人发送短信,如果通知企业也给企业发送短信 smsService.sendCheckMsg(order.getApplyPhone(), order.getCheckStatus()); if (order.getIsNoticeCompany()==1){ smsService.sendCompanyMsg(order.getCompanyPhone(), order.getApplyDeptName(), order.getPlanTime()); } } //审批等级加1 order.setCheckLevel(order.getCheckLevel()+1); order.setCheckReason(bo.getCheckReason()); orderService.updateById(order); } } return true; } return false; } project-framework/src/main/java/com/project/framework/web/service/SysLoginService.java
@@ -114,6 +114,26 @@ return tokenService.createToken(loginUser); } /** * 新注册获取验证码 * @param phone 手机 * @return 验证码 */ public Boolean getVerifyCodeNew(String phone) { // 生成4位随机数 String code = ""; Random ran = new Random(); int randomNum = ran.nextInt(10000); code = String.format("%04d", randomNum); log.info("手机号:"+phone+"->验证码:"+code); boolean send = sendYp(phone, code); if (send){ redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES); return true; } redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES); return false; } /** * 获取验证码 @@ -126,19 +146,7 @@ if (user==null){ throw new BaseException("您手机号尚未注册!"); } // 生成4位随机数 String code = ""; Random ran = new Random(); int randomNum = ran.nextInt(10000); code = String.format("%04d", randomNum); log.info("手机号:"+phone+"->验证码:"+code); // boolean send = sendAl(phone, code); // if (send){ // redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES); // return true; // } redisCache.setCacheObject(getCacheKey(phone), code, Constants.PHONE_EXPIRATION, TimeUnit.MINUTES); return false; return getVerifyCodeNew(phone); } private boolean sendYp(String phone, String code ){ @@ -277,4 +285,6 @@ return verify; } } project-system/src/main/java/com/project/system/domain/bo/editBo/CheckBo.java
@@ -3,6 +3,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * @author Mr.Zhao */ @@ -13,8 +15,8 @@ @ApiModelProperty(value = "业务类型:1企业审批,2执法单审批",required = true) private Integer checkType; @ApiModelProperty(value = "id",required = true) private Long id; @ApiModelProperty(value = "ids",required = true) private List<Long> ids; @ApiModelProperty(value = "类型:1通过,-1拒绝",required = true) private Integer checkStatus; project-system/src/main/java/com/project/system/mapper/SysUserMapper.java
@@ -142,4 +142,13 @@ * @return phoneList */ List<String> getPhonesByRoleKey(@Param("roleKey") String roleKey,@Param("deptId") Long deptId); /** * 更换手机号 * * @param userId 用户id * @param phone 手机 * @return 结果 */ int resetPhone(@Param("userId")Long userId, @Param("phone")String phone); } project-system/src/main/java/com/project/system/service/ISysUserService.java
@@ -220,4 +220,14 @@ * @return idList */ List<String> getPhonesByRoleKey(String roleKey, Long deptId); /** * 重置用户手机号 * * @param userId 用户id * @param phone 手机号 * @return 结果 */ public int resetPhone(Long userId, String phone); } project-system/src/main/java/com/project/system/service/impl/SysUserServiceImpl.java
@@ -551,4 +551,9 @@ { return userMapper.getPhonesByRoleKey(roleKey, deptId); } @Override public int resetPhone(Long userId, String phone) { return userMapper.resetPhone(userId, phone); } } project-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -229,6 +229,10 @@ update sys_user set password = #{password}, recommend_user = #{recommendUser} where user_name = #{userName} </update> <update id="resetPhone" parameterType="SysUser"> update sys_user set phonenumber = #{phone}, user_name = #{phone} where user_id = #{userId} </update> <delete id="deleteUserById" parameterType="Long"> update sys_user set del_flag = '1' where user_id = #{userId} </delete>