‘linchangsheng’ 7 months ago
parent
commit
77c0ce1cda

+ 1 - 1
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/enums/ExamineWorkerStatusEnum.java

@@ -5,7 +5,7 @@ import lombok.Getter;
 
 @Getter
 public enum ExamineWorkerStatusEnum   {
-    WAIT_WORKER("WAIT_WORKER","待师傅购买"),
+    WAIT_WORKER("WAIT_WORKER","待购买"),
     POLICY_WAIT("POLICY_WAIT","保险待审核"),
     WAIT("WAIT","入驻待审核"),
     FAIL("FAIL","驳回"),

+ 45 - 2
mall-server-api/src/main/java/com/gree/mall/manager/logic/policy/AgreementLogic.java

@@ -81,6 +81,12 @@ public class AgreementLogic {
     @Autowired
     UserService userService;
 
+    @Autowired
+    AdminWebsitService adminWebsitService;
+
+    @Autowired
+    SysDictCompanyService sysDictCompanyService;
+
 
     public IPage<AgreementVo> list(Page page, ZfireParamBean zfireParam) {
 
@@ -594,7 +600,7 @@ public class AgreementLogic {
 
                         //取师傅最后时间的后一天,小于保险时间就取保险时间
 
-                        Date startTime = new Date();
+                        Date startTime = DateUtil.offsetDay(new Date(),1);
 
                         if (!CollectionUtils.isEmpty(workerPolicies)){
                             startTime = DateUtil.beginOfDay(DateUtil.offsetDay(workerPolicies.get(0).getEndTime(),1));
@@ -1047,11 +1053,48 @@ public class AgreementLogic {
         List<WorkerPolicy> workerPolicies = workerPolicyService.lambdaQuery().in(WorkerPolicy::getWebsitUserId, websitUserIds)
                 .eq(WorkerPolicy::getPolicyType,PolicyTypeEnum.IN.getKey())
                 .eq(WorkerPolicy::getStatus,PolicyOrderStatusEnum.BZZ.getKey())
-                .ge(WorkerPolicy::getEndTime,DateUtil.offsetDay(DateUtil.endOfDay(new Date()),-3))
+                .le(WorkerPolicy::getEndTime,DateUtil.offsetDay(DateUtil.endOfDay(new Date()),3))
                 .list();
 
         for (WorkerPolicy workerPolicy : workerPolicies) {
 
+            if (policyOrderService.lambdaQuery().eq(PolicyOrder::getPolicyOrderStatus, PolicyOrderInStutasEnum.DGM.getKey())
+                    .eq(PolicyOrder::getType,"IN").count() > 0) {
+                continue;
+            }
+
+            AdminWebsit adminWebsit = adminWebsitService.getById(workerPolicy.getWebsitId());
+            WebsitUser websitUser = websitUserService.getById(workerPolicy.getId());
+            User user = userService.getById(websitUser.getUserId());
+
+            SysDictCompany sysDictCompany = sysDictCompanyService.lambdaQuery().eq(SysDictCompany::getDictCode, adminWebsit.getInsureSteadUnit())
+                    .eq(SysDictCompany::getDictType,"INSURE_STEAD_UNIT").one();
+
+
+            PolicyOrder policyOrder = new PolicyOrder();
+            policyOrder.setBelongCompany(adminWebsit.getBelongCompany());
+            policyOrder.setBelongCompanyCode(adminWebsit.getBelongCompanyCode());
+            policyOrder.setPolicyOrderStatus(PolicyOrderInStutasEnum.DGM.getKey());
+            policyOrder.setPolicyName("工伤险");
+            policyOrder.setCompanyWechatId(adminWebsit.getCompanyWechatId());
+            policyOrder.setCompanyWechatName(adminWebsit.getCompanyWechatName());
+            policyOrder.setPolicyId(IdWorker.getIdStr());
+            policyOrder.setId(policyOrder.getPolicyId());
+            policyOrder.setWebsitId(adminWebsit.getWebsitId());
+            policyOrder.setWebsitName(adminWebsit.getName());
+            policyOrder.setWorkerNumber(websitUser.getWorkerNumber());
+            policyOrder.setWorkerName(user.getNickName());
+            policyOrder.setWorkerIdcard(user.getIdCard());
+            policyOrder.setWorkerMobile(user.getMobile());
+            policyOrder.setBuyUnitId(adminWebsit.getInsureSteadUnit());
+            policyOrder.setBuyUnit(sysDictCompany.getDictValue());
+            policyOrder.setCompany(sysDictCompany.getDictValue());
+
+            policyOrder.setWebsitUserId(websitUser.getId());
+            policyOrder.setType("IN");
+            policyOrder.insert();
+
+
         }
     }
 }

+ 8 - 4
mall-server-api/src/main/java/com/gree/mall/manager/logic/policy/PolicyOrderLogic.java

@@ -14,6 +14,7 @@ import com.gree.mall.manager.commonmapper.PolicyCMapper;
 import com.gree.mall.manager.enums.IsYesNoEnum;
 import com.gree.mall.manager.enums.PolicyOrderEmStutasEnum;
 import com.gree.mall.manager.enums.PolicyOrderStatusEnum;
+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.*;
@@ -24,6 +25,7 @@ import org.springframework.remoting.RemoteAccessException;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.rmi.RemoteException;
 import java.util.Date;
 import java.util.List;
 
@@ -145,7 +147,7 @@ public class PolicyOrderLogic {
 
             PolicyOrder policyOrder = policyOrderService.lambdaQuery()
                     .eq(PolicyOrder::getWebsitId, (String) row.get(1))
-                    .eq(PolicyOrder::getWorkerNumber, (String) row.get(3))
+                    .eq(PolicyOrder::getWorkerIdcard, (String) row.get(6))
                     .eq(PolicyOrder::getType, "IN")
                     .eq(PolicyOrder::getPolicyOrderStatus, "DGM").one();
 
@@ -153,7 +155,7 @@ public class PolicyOrderLogic {
                     .eq(SysDictCompany::getDictType,"INSURE_STEAD_UNIT").one();
 
             if (policyOrder == null)
-                throw new RemoteAccessException((String) row.get(1)+"网点下工程师未找到"+(String) row.get(3));
+                throw new RemoteServiceException((String) row.get(1)+"网点下工程师未找到"+(String) row.get(3));
 
 
             if (policyOrder != null) {
@@ -218,8 +220,10 @@ public class PolicyOrderLogic {
 
             AdminWebsit adminWebsit = adminWebsitService.lambdaQuery().eq(AdminWebsit::getWebsitNumber, (String) row.get(1)).one();
 
-            WebsitUser websitUser = websitUserService.lambdaQuery().eq(WebsitUser::getWebsitId, (String) row.get(1))
-                    .eq(WebsitUser::getWorkerNumber, (String) row.get(3)).one();
+            WebsitUser websitUser = websitUserService.lambdaQuery()
+                    .eq(WebsitUser::getWebsitId, (String) row.get(1))
+                    .eq(WebsitUser::getWorkerNumber, (String) row.get(4))
+                    .one();