From b48de0e35c54bd4715f8de2b86bac5a539c27275 Mon Sep 17 00:00:00 2001 From: ZQN <364596817@qq.com> Date: 星期六, 22 六月 2024 16:23:44 +0800 Subject: [PATCH] 更换手机,发送短信放开 --- project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java | 96 +++++++++++++++++++++++++++++++----------------- 1 files changed, 62 insertions(+), 34 deletions(-) diff --git a/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java b/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java index e3cc10c..317241c 100644 --- a/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java +++ b/project-enforce/src/main/java/com/project/enforce/service/impl/CheckServiceImpl.java @@ -3,6 +3,7 @@ import cn.hutool.core.convert.Convert; import com.project.common.core.domain.entity.SysUser; import com.project.common.exception.base.BaseException; +import com.project.common.utils.DateUtils; import com.project.common.utils.SecurityUtils; import com.project.common.utils.StringUtils; import com.project.enforce.domain.EnforceCheckLog; @@ -12,8 +13,8 @@ import com.project.enforce.service.IEnforceOrderService; import com.project.system.domain.SysCompany; import com.project.system.domain.bo.editBo.CheckBo; +import com.project.system.domain.bo.editBo.SysCompanyBo; import com.project.system.service.ISysCompanyService; -import com.project.system.service.ISysUserService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -36,48 +37,74 @@ private final ISysCompanyService companyService; private final IEnforceOrderService orderService; private final IEnforceCheckLogService checkLogService; - private final ISysUserService userService; + private final YPSmsService smsService; @Override @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("娌℃湁鎵惧埌瀵瑰簲鏁版嵁锛岃妫�鏌ュ鏍哥被鍨嬶紒"); - } - if (bo.getCheckStatus()== -1){ - company.setCheckStatus(-1); - } else { - company.setCheckStatus(2); - } - addCheckLog(company, bo); - company.setCheckReason(bo.getCheckReason()); - 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); - } else { - String roleKey = "check_enforce_" + (order.getCheckLevel() + 1); - List<Long> ids = userService.getNumByRoleKey(roleKey, order.getCheckDeptId()); - if (StringUtils.isNotEmpty(ids)){ - order.setCheckStatus(1); - } else { - order.setCheckStatus(2); + 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; } @@ -96,7 +123,8 @@ checkLog.setCheckId(loginUser.getUserId()); checkLog.setCheckUser(loginUser.getUserName()); checkLog.setCheckPhone(loginUser.getPhonenumber()); - checkLog.setCheckStatus(bo.getCheckStatus()); + checkLog.setCheckStatus(bo.getCheckStatus()>0?1:-1); + checkLog.setCheckTime(DateUtils.getNowDate()); checkLog.setCheckReason(bo.getCheckReason()); boolean save = checkLogService.save(checkLog); if (!save) { -- Gitblit v1.9.1