|
@@ -2,13 +2,15 @@ package com.gree.mall.manager.logic.policy;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.db.sql.Order;
|
|
|
+import com.alibaba.druid.support.spring.stat.annotation.Stat;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
+import com.gree.mall.manager.bean.admin.AdminUserCom;
|
|
|
import com.gree.mall.manager.bean.policy.WorkerManagerBean;
|
|
|
import com.gree.mall.manager.bean.policy.WorkerManagerDetail;
|
|
|
-import com.gree.mall.manager.enums.ExamineWorkerStatusEnum;
|
|
|
-import com.gree.mall.manager.enums.OrderStatusEnum;
|
|
|
-import com.gree.mall.manager.enums.WebsitAttrEnum;
|
|
|
+import com.gree.mall.manager.enums.*;
|
|
|
import com.gree.mall.manager.enums.workorder.OrderBaseStatusEnum;
|
|
|
import com.gree.mall.manager.exception.RemoteServiceException;
|
|
|
+import com.gree.mall.manager.logic.common.CommonLogic;
|
|
|
import com.gree.mall.manager.plus.entity.*;
|
|
|
import com.gree.mall.manager.plus.service.*;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -41,6 +43,13 @@ public class WorkerManagerLogic {
|
|
|
@Autowired
|
|
|
AdminWebsitService adminWebsitService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ CommonLogic commonLogic;
|
|
|
+
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ PolicyOrderService policyOrderService;
|
|
|
+
|
|
|
|
|
|
public void stop(String id) {
|
|
|
|
|
@@ -307,10 +316,93 @@ public class WorkerManagerLogic {
|
|
|
}
|
|
|
|
|
|
private void scGuZhu(WorkerManagerBean workerManagerBean) {
|
|
|
+
|
|
|
+ AdminUserCom adminUser = commonLogic.getAdminUser();
|
|
|
+
|
|
|
+ //找有无可替换,有替换,无生成
|
|
|
+ List<PolicyOrder> policyOrders = policyOrderService.lambdaQuery().eq(PolicyOrder::getWebsitId, workerManagerBean.getWebsitId())
|
|
|
+ .eq(PolicyOrder::getStartTime, PolicyOrderEmStutasEnum.KTH.getKey()).list();
|
|
|
+
|
|
|
+ if (!CollectionUtils.isEmpty(policyOrders)) {
|
|
|
+
|
|
|
+ User user = userService.getById(workerManagerBean.getUserId());
|
|
|
+
|
|
|
+ policyOrderService.lambdaUpdate()
|
|
|
+ .eq(PolicyOrder::getId,policyOrders.get(0).getId())
|
|
|
+ .set(PolicyOrder::getPolicyOrderStatus,PolicyOrderEmStutasEnum.YSX.getKey())
|
|
|
+ .set(PolicyOrder::getEndTime,new Date()).update();
|
|
|
+
|
|
|
+ workerPolicyService.lambdaUpdate()
|
|
|
+ .eq(WorkerPolicy::getPolicyId,policyOrders.get(0).getId())
|
|
|
+ .eq(WorkerPolicy::getWebsitUserId,workerManagerBean.getId())
|
|
|
+ .set(WorkerPolicy::getStatus, "OFF")
|
|
|
+ .set(WorkerPolicy::getEndTime,new Date()).update();
|
|
|
+
|
|
|
+ PolicyOrder policyOrder = policyOrders.get(0);
|
|
|
+ policyOrder.setId(IdWorker.getIdStr());
|
|
|
+ policyOrder.setReplaceName(policyOrder.getWorkerName());
|
|
|
+ policyOrder.setReplacePhone(policyOrder.getWorkerMobile());
|
|
|
+ policyOrder.setReplaceNumber(policyOrder.getWorkerNumber());
|
|
|
+ policyOrder.setReplaceIdcard(policyOrder.getWorkerIdcard());
|
|
|
+
|
|
|
+ policyOrder.setWorkerIdcard(user.getIdCard());
|
|
|
+ policyOrder.setWorkerMobile(user.getMobile());
|
|
|
+ policyOrder.setWorkerName(workerManagerBean.getUser().getNickName());
|
|
|
+ policyOrder.setWorkerNumber(workerManagerBean.getUser().getWorkerNumber());
|
|
|
+
|
|
|
+ policyOrder.setPolicyOrderStatus(PolicyOrderEmStutasEnum.DTH.getKey());
|
|
|
+
|
|
|
+ policyOrder.setIsSend(IsYesNoEnum.NO.getKey());
|
|
|
+ policyOrder.setIsReceipt(IsYesNoEnum.NO.getKey());
|
|
|
+ policyOrder.insert();
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }else {
|
|
|
+
|
|
|
+ AdminWebsit adminWebsit = adminWebsitService.getById(workerManagerBean.getWebsitId());
|
|
|
+ PolicyOrder policyOrder = new PolicyOrder();
|
|
|
+ policyOrder.setBelongCompany(adminWebsit.getBelongCompany());
|
|
|
+ policyOrder.setBelongCompanyCode(adminWebsit.getBelongCompanyCode());
|
|
|
+ policyOrder.setPolicyOrderStatus(PolicyOrderEmStutasEnum.XG.getKey());
|
|
|
+ policyOrder.setCompanyWechatId(adminWebsit.getCompanyWechatId());
|
|
|
+ policyOrder.setCompanyWechatName(adminWebsit.getCompanyWechatName());
|
|
|
+ policyOrder.setPolicyOrderId(IdWorker.getIdStr());
|
|
|
+ policyOrder.setId(policyOrder.getPolicyOrderId());
|
|
|
+ policyOrder.setWebsitId(adminWebsit.getWebsitId());
|
|
|
+ policyOrder.setWebsitName(adminWebsit.getName());
|
|
|
+ policyOrder.setWorkerNumber(workerManagerBean.getWorkerNumber());
|
|
|
+ policyOrder.setWorkerName(workerManagerBean.getUser().getNickName());
|
|
|
+ policyOrder.setWorkerIdcard(workerManagerBean.getUser().getIdCard());
|
|
|
+ policyOrder.setWorkerMobile(workerManagerBean.getUser().getMobile());
|
|
|
+ policyOrder.setType("EM");
|
|
|
+ policyOrder.insert();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void scGongShang(WorkerManagerBean workerManagerBean) {
|
|
|
|
|
|
+
|
|
|
+ AdminWebsit adminWebsit = adminWebsitService.getById(workerManagerBean.getWebsitId());
|
|
|
+ PolicyOrder policyOrder = new PolicyOrder();
|
|
|
+ policyOrder.setBelongCompany(adminWebsit.getBelongCompany());
|
|
|
+ policyOrder.setBelongCompanyCode(adminWebsit.getBelongCompanyCode());
|
|
|
+ policyOrder.setPolicyOrderStatus(PolicyOrderInStutasEnum.DGM.getKey());
|
|
|
+ policyOrder.setCompanyWechatId(adminWebsit.getCompanyWechatId());
|
|
|
+ policyOrder.setCompanyWechatName(adminWebsit.getCompanyWechatName());
|
|
|
+ policyOrder.setPolicyOrderId(IdWorker.getIdStr());
|
|
|
+ policyOrder.setId(policyOrder.getPolicyOrderId());
|
|
|
+ policyOrder.setWebsitId(adminWebsit.getWebsitId());
|
|
|
+ policyOrder.setWebsitName(adminWebsit.getName());
|
|
|
+ policyOrder.setWorkerNumber(workerManagerBean.getWorkerNumber());
|
|
|
+ policyOrder.setWorkerName(workerManagerBean.getUser().getNickName());
|
|
|
+ policyOrder.setWorkerIdcard(workerManagerBean.getUser().getIdCard());
|
|
|
+ policyOrder.setWorkerMobile(workerManagerBean.getUser().getMobile());
|
|
|
+ policyOrder.setBuyUnit(adminWebsit.getInsureSteadUnit());
|
|
|
+ policyOrder.setBuyUnit(adminWebsit.getInsureSteadUnit());
|
|
|
+ policyOrder.setType("IN");
|
|
|
+ policyOrder.insert();
|
|
|
+
|
|
|
}
|
|
|
|
|
|
public Boolean hasOverlap(List<WorkerPolicy> workerPolicies){
|