‘linchangsheng’ 5 months ago
parent
commit
1269a6d125

+ 21 - 0
mall-server-api/src/main/java/com/gree/mall/manager/bean/policy/UserWaitDetail.java

@@ -0,0 +1,21 @@
+package com.gree.mall.manager.bean.policy;
+
+import com.gree.mall.manager.plus.entity.UserWait;
+import com.gree.mall.manager.plus.entity.UserWaitPolicy;
+import com.gree.mall.manager.plus.entity.UserWaitWorkerImg;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@ApiModel
+@Data
+public class UserWaitDetail extends UserWait {
+
+    @ApiModelProperty(value = "初始化师傅保险")
+    private List<UserWaitPolicy> userWaitPolicies;
+
+    @ApiModelProperty(value = "初始化师傅照片")
+    private List<UserWaitWorkerImg> userWaitWorkerImgs;
+}

+ 14 - 2
mall-server-api/src/main/java/com/gree/mall/manager/controller/member/MemberController.java

@@ -9,6 +9,7 @@ import com.gree.mall.manager.bean.listvo.UserCustomerVO;
 import com.gree.mall.manager.bean.listvo.UserVO;
 import com.gree.mall.manager.bean.listvo.workorder.UserWaitVO;
 import com.gree.mall.manager.bean.member.UserApplyBean;
+import com.gree.mall.manager.bean.policy.UserWaitDetail;
 import com.gree.mall.manager.bean.user.UserApplyWorkerBean;
 import com.gree.mall.manager.bean.user.UserDetail;
 import com.gree.mall.manager.bean.user.UserWxBean;
@@ -154,12 +155,23 @@ public class MemberController {
         return ResponseHelper.success();
     }
 
+
+    @PostMapping("/userWatit/detail")
+    @ApiOperation("修改师傅初始资料")
+    public ResponseHelper<UserWaitDetail> waitDetail(
+            @ApiParam(value = "userId", required = true) @RequestParam String id
+    ) {
+        UserWaitDetail userWaitDetail = userLogic.detailWait(id);
+        return ResponseHelper.success();
+    }
+
+
     @PostMapping("/userWatit/update")
     @ApiOperation("修改师傅初始资料")
     public ResponseHelper workerUpdate(
-            @RequestBody UserWait userWait
+            @RequestBody UserWaitDetail userWaitDetail
     ) {
-        userLogic.userWaitUpdate(userWait);
+        userLogic.userWaitUpdate(userWaitDetail);
         return ResponseHelper.success();
     }
 

+ 79 - 8
mall-server-api/src/main/java/com/gree/mall/manager/logic/user/UserLogic.java

@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.gree.mall.manager.bean.admin.AdminUserCom;
 import com.gree.mall.manager.bean.listvo.User2VO;
@@ -14,6 +15,7 @@ import com.gree.mall.manager.bean.listvo.UserVO;
 import com.gree.mall.manager.bean.listvo.workorder.UserWaitVO;
 import com.gree.mall.manager.bean.member.MemberSortBean;
 import com.gree.mall.manager.bean.member.UserApplyBean;
+import com.gree.mall.manager.bean.policy.UserWaitDetail;
 import com.gree.mall.manager.bean.user.*;
 import com.gree.mall.manager.commonmapper.*;
 import com.gree.mall.manager.enums.ExamineStatusEnum;
@@ -50,6 +52,10 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+import java.time.ZoneId;
 import java.util.*;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -89,6 +95,8 @@ public class UserLogic {
     private final SettleDailyBankAccountService settleDailyBankAccountService;
     private final WebsitUserLogService websitUserLogService;
     private final WorkerTeamService workerTeamService;
+    private final UserWaitPolicyService userWaitPolicyService;
+    private final UserWaitWorkerImgService userWaitWorkerImgService;
 
 
     /**
@@ -233,6 +241,7 @@ public class UserLogic {
                 .remove();*/
 
         List<UserWait> userWaits = new ArrayList<>();
+        List<UserWaitPolicy> userWaitPolicies = new ArrayList<>();
         for (Object o : datas) {
             index++;
             String errPrefix = "第" + index + "行";
@@ -279,6 +288,7 @@ public class UserLogic {
             }
 
             UserWait userWait = new UserWait();
+            userWait.setId(IdWorker.getIdStr());
             userWait.setUserType(userTypeEnum.getKey());
             userWait.setMobile(mobile);
             userWait.setIdcard(idcard);
@@ -310,6 +320,17 @@ public class UserLogic {
                         throw new RemoteServiceException(userWait.getIdcard()+"导入师傅保险已过期");
                     userWait.setInPolicyName(in_policy_name);
                     userWait.setInPolicyOrder(in_policy_order);
+
+                    UserWaitPolicy userWaitPolicy = new UserWaitPolicy();
+
+                    userWaitPolicy.setUserWaitId(userWait.getId());
+                    userWaitPolicy.setCompany(in_company);
+                    userWaitPolicy.setPolicyName(in_policy_name);
+                    userWaitPolicy.setPolicyOrder(in_policy_order);
+                    userWaitPolicy.setStartTime(DateUtil.parse(in_policy_start_time, "yyyy-MM-dd"));
+                    userWaitPolicy.setEndTime(this.getEndOfDay(DateUtil.parse(in_policy_end_time, "yyyy-MM-dd")));
+
+                    userWaitPolicies.add(userWaitPolicy);
                 }
 
 
@@ -333,6 +354,19 @@ public class UserLogic {
                         throw new RemoteServiceException(userWait.getIdcard()+"导入师傅保险已过期");
                     userWait.setEmPolicyName(em_policy_name);
                     userWait.setEmPolicyOrder(em_policy_order);
+
+
+                    UserWaitPolicy userWaitPolicy = new UserWaitPolicy();
+
+                    userWaitPolicy.setUserWaitId(userWait.getId());
+                    userWaitPolicy.setCompany(em_company);
+                    userWaitPolicy.setPolicyName(em_policy_name);
+                    userWaitPolicy.setPolicyOrder(em_policy_order);
+                    userWaitPolicy.setStartTime(DateUtil.parse(em_policy_start_time, "yyyy-MM-dd"));
+                    userWaitPolicy.setEndTime(this.getEndOfDay(DateUtil.parse(em_policy_end_time, "yyyy-MM-dd")));
+
+                    userWaitPolicies.add(userWaitPolicy);
+
                 }
 
 
@@ -352,6 +386,18 @@ public class UserLogic {
 
                 userWait.setPolicyName(policy_name);
                 userWait.setPolicyOrder(policy_order);
+
+
+                UserWaitPolicy userWaitPolicy = new UserWaitPolicy();
+
+                userWaitPolicy.setUserWaitId(userWait.getId());
+                userWaitPolicy.setCompany(company);
+                userWaitPolicy.setPolicyName(policy_name);
+                userWaitPolicy.setPolicyOrder(policy_order);
+                userWaitPolicy.setStartTime(DateUtil.parse(policy_start_time, "yyyy-MM-dd"));
+                userWaitPolicy.setEndTime(this.getEndOfDay(DateUtil.parse(policy_end_time, "yyyy-MM-dd")));
+
+                userWaitPolicies.add(userWaitPolicy);
             }else {
                 throw new RemoteServiceException(userWait.getEmCompany()+"必须导入意外险");
             }
@@ -397,11 +443,21 @@ public class UserLogic {
             userWaits.add(userWait);
         }
         userWaitService.saveBatch(userWaits);
-
+        userWaitPolicyService.saveBatch(userWaitPolicies);
 
 
     }
-
+    /**
+     * 获取某天最小时间
+     * @param date 时间
+     * @return 获取某天最小时间
+     */
+    public  Date getEndOfDay(Date date) {
+        LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());;
+        LocalTime localTime = LocalTime.of(23, 59, 59);
+        LocalDateTime endOfDay = localDateTime.with(localTime);
+        return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant());
+    }
 
     /**
      * 师傅审核详情
@@ -1133,19 +1189,19 @@ public class UserLogic {
 
 
     @Transactional(rollbackFor = Exception.class)
-    public void userWaitUpdate(UserWait userWait) {
+    public void userWaitUpdate(UserWaitDetail userWaitDetail) {
         userService.lambdaUpdate()
-                .ne(User::getMobile,userWait.getMobile())
-                .eq(User::getWorkerNumber,userWait.getWorkerNumber())
+                .ne(User::getMobile,userWaitDetail.getMobile())
+                .eq(User::getWorkerNumber,userWaitDetail.getWorkerNumber())
                 .set(User::getType,"GENERAL")
                 .set(User::getWorkerNumber,null)
                 .update();
 
-        userWait.updateById();
+        userWaitDetail.updateById();
 
         userWaitService.lambdaUpdate()
-                .eq(UserWait::getWorkerNumber,userWait.getWorkerNumber())
-                .set(UserWait::getMobile,userWait.getMobile()).update();
+                .eq(UserWait::getWorkerNumber,userWaitDetail.getWorkerNumber())
+                .set(UserWait::getMobile,userWaitDetail.getMobile()).update();
     }
 
     public UserDetail getUserDetail(String userId) {
@@ -1163,4 +1219,19 @@ public class UserLogic {
 
         return websitUserLogService.lambdaQuery().eq(WebsitUserLog::getWebsitUserId,id).orderByDesc(WebsitUserLog::getCreateTime).list();
     }
+
+    public UserWaitDetail detailWait(String id) {
+        UserWait userWait = userWaitService.getById(id);
+
+        UserWaitDetail userWaitDetail = BeanUtil.toBean(userWait, UserWaitDetail.class);
+
+        List<UserWaitPolicy> userWaitPolicies = userWaitPolicyService.lambdaQuery().eq(UserWaitPolicy::getUserWaitId,userWait.getId()).list();
+
+        List<UserWaitWorkerImg> userWaitWorkerImgs = userWaitWorkerImgService.lambdaQuery().eq(UserWaitWorkerImg::getUserWaitId, userWait.getId()).list();
+
+        userWaitDetail.setUserWaitPolicies(userWaitPolicies);
+        userWaitDetail.setUserWaitWorkerImgs(userWaitWorkerImgs);
+
+        return userWaitDetail;
+    }
 }