Parcourir la source

Merge remote-tracking branch 'origin/develop' into develop

FengChaoYu il y a 5 mois
Parent
commit
2a8d8cf715

+ 3 - 0
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/bean/user/UserApplyBean.java

@@ -29,6 +29,9 @@ public class UserApplyBean {
     private String idCard;
     @ApiModelProperty(value = "身份证图片")
     private String idCardImg;
+
+    @ApiModelProperty(value = "师傅编号")
+    private String workerNumber;
     @ApiModelProperty("其他图片")
     private List<WorkerImg> workerImgs;
 

+ 1 - 0
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/commonmapper/CommonMapper.java

@@ -53,6 +53,7 @@ public interface CommonMapper {
             @Param("lng") String lng,
             @Param("lat") String lat,
             @Param("websitIds") List<String> websitIds,
+            @Param("websitIdsQuchu") List<String> websitIdsQuchu,
             @Param("isIncre") Boolean isIncre,
             @Param("companyWechatId") String companyWechatId);
 

+ 1 - 1
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/controller/user/UserController.java

@@ -232,7 +232,7 @@ public class UserController {
     @GetMapping("/apply/websit")
     @ApiOperation("入驻的网点列表")
     public ResponseHelper<List<AdminWebsitApplyBean>> applyWebsitList(
-            @ApiParam(value = "是否查询所有可入驻网点(包含未入驻的)",required = false) @RequestParam(required = false) Boolean isAll,
+            @ApiParam(value = "是否查询所有可入驻网点(不包含入驻网点)",required = false) @RequestParam(required = false) Boolean isAll,
             @ApiParam(value = "是否为增置服务网点",required = false) @RequestParam(required = false) Boolean isIncre,
             @ApiParam(value = "(WAIT=入驻待审核 WAIT_WORKER 待师傅购买  POLICY_WAIT 保险待审核  OK=通过 FAIL=驳回EXPIRED 证件快过期  OVERDUE 证件已过期 STOP 暂停 QUIT 已离职)",required = false)
             @RequestParam(required = false) List<String> examineStatus,

+ 10 - 1
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/policy/WorkerLogic.java

@@ -71,6 +71,9 @@ public class WorkerLogic {
     @Autowired
     AgreementPolicyService agreementPolicyService;
 
+    @Autowired
+    MailboxService mailboxService;
+
 
 
     public List<WorkerRemind> remind() {
@@ -443,6 +446,7 @@ public class WorkerLogic {
     }
 
     public List<AdminWebsit> myWebsit() {
+        Mailbox mailbox = mailboxService.getById("1");
 
         CurrentCompanyWechat currentCompanyWechat = commonLogic.getCurrentCompanyWechat();
 
@@ -453,7 +457,12 @@ public class WorkerLogic {
         for (WebsitUser websitUser : websitUsers) {
             if (workerPolicyService.lambdaQuery().eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
                     .eq(WorkerPolicy::getPolicyType,"AC")
-                    .in(WorkerPolicy::getStatus,"BZZ","DSX").count() < 1) {
+                    .in(WorkerPolicy::getStatus,"BZZ","DSX").count() < 1 ||
+                    workerPolicyService.lambdaQuery().eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
+                            .eq(WorkerPolicy::getPolicyType,"AC")
+                            .in(WorkerPolicy::getStatus,"BZZ","DSX")
+                            .le(WorkerPolicy::getEndTime,DateUtil.endOfDay(DateUtil.offsetDay(new Date(),mailbox.getOverNum())))
+                            .count() > 0) {
                 AdminWebsit adminWebsit = adminWebsitService.getById(websitUser.getWebsitId());
                 adminWebsits.add(adminWebsit);
             }

+ 30 - 4
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/user/UserLogic.java

@@ -1174,9 +1174,11 @@ public class UserLogic {
 
         //非查询所有,只取已入驻成功的网点
         List<String> websitIds = null;
-        if (isAll == null || !isAll) {
+
+        //得所有网点,筛选掉
+        List<String> websitIdsQuchu = null;
+        if (!CollectionUtils.isEmpty(examineStatus)) {
             websitIds = websitUserList.stream()
-                    .filter(v -> StringUtils.equals(v.getExamineStatus(), ExamineStatusEnum.OK.getKey()))
                     .map(WebsitUser::getWebsitId).collect(Collectors.toList());
 
             if (CollectionUtils.isEmpty(websitIds)) {
@@ -1184,6 +1186,15 @@ public class UserLogic {
             }
         }
 
+        if (isAll != null && isAll ){
+            List<WebsitUser> websitUsers = websitUserService.lambdaQuery()
+                    .eq(WebsitUser::getUserId, currentCompanyWechat.getUserId())
+                    .list();
+
+            websitIdsQuchu = websitUsers.stream()
+                    .map(WebsitUser::getWebsitId).collect(Collectors.toList());
+        }
+
         //延保筛选对应网点
         if (!StringUtil.isEmpty(increId)) {
             List<String> websitIncre = pgIncreWebsitService.lambdaQuery().eq(PgIncreWebsit::getPgIncreId, increId)
@@ -1198,7 +1209,7 @@ public class UserLogic {
 
         }
 
-        List<WebsitVO> list = commonMapper.websitList(lng, lat, websitIds, isIncre, currentCompanyWechat.getCompanyWechatId());
+        List<WebsitVO> list = commonMapper.websitList(lng, lat, websitIds,websitIdsQuchu, isIncre, currentCompanyWechat.getCompanyWechatId());
 
         List<AdminWebsitApplyBean> adminWebsitApplyBeans = BeanUtil.copyToList(list, AdminWebsitApplyBean.class);
         for (AdminWebsitApplyBean bean : adminWebsitApplyBeans) {
@@ -1285,7 +1296,21 @@ public class UserLogic {
             WebsitUser websitUser = new WebsitUser();
             websitUser.setWebsitId(websitId);
             websitUser.setWebsitName(adminWebsit.getName());
-            websitUser.setWorkerNumber(currentCompanyWechat.getUser().getWorkerNumber());
+            if (!StringUtil.isEmpty(currentCompanyWechat.getUser().getWorkerNumber()) &&
+                    !StringUtil.isEmpty(userApplyBean.getWorkerNumber())
+                    && !currentCompanyWechat.getUser().getWorkerNumber().equals(userApplyBean.getWorkerNumber())){
+                throw new RemoteServiceException("师傅编号已入驻,无法更改");
+            }
+            if (!StringUtil.isEmpty(userApplyBean.getWorkerNumber()) && userService.lambdaQuery().eq(User::getWorkerNumber,userApplyBean.getWorkerNumber())
+                    .ne(User::getUserId,user.getUserId()).count() > 0) {
+                throw new RemoteServiceException("师傅编号已入驻,请勿重复入驻");
+            }
+
+            if (!StringUtil.isEmpty(currentCompanyWechat.getUser().getWorkerNumber())) {
+                websitUser.setWorkerNumber(currentCompanyWechat.getUser().getWorkerNumber());
+            }else {
+                websitUser.setWorkerNumber(userApplyBean.getWorkerNumber());
+            }
             websitUser.setUserId(user.getUserId());
             websitUser.setCompanyWechatId(user.getCompanyWechatId());
             websitUser.setCompanyWechatName(user.getCompanyName());
@@ -1327,6 +1352,7 @@ public class UserLogic {
         user.setStartTime(userApplyBean.getStartTime());
         user.setEndTime(userApplyBean.getEndTime());
         user.setHightExamineTime(userApplyBean.getHightExamineTime());
+        user.setWorkerNumber(userApplyBean.getWorkerNumber());
         user.updateById();
 
         if (CollectionUtils.isNotEmpty(workerImgs)) {

+ 8 - 1
mall-miniapp-service/src/main/resources/mapper/CommonMapper.xml

@@ -85,8 +85,15 @@
                     #{item}
                 </foreach>
             </if>
+        <if test="websitIdsQuchu != null and websitIdsQuchu.size > 0">
+                AND a.websit_id not IN
+                <foreach item="item" index="index" collection="websitIdsQuchu" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+
             and a.company_wechat_id = #{companyWechatId}
-        <if test="lng != '0'.toString() and lat != '0'.toString()">
+        <if test="websitIdsQuchu != null and websitIdsQuchu.size > 0 and lng != '0'.toString() and lat != '0'.toString()">
             HAVING distance &lt; 50000
         </if>
         ORDER BY distance

+ 7 - 2
mall-server-api/src/main/java/com/gree/mall/manager/logic/LetterLogic.java

@@ -254,7 +254,7 @@ public class LetterLogic {
 
         LeLetterDetail leLetterDetail = BeanUtil.toBean(leLetter, LeLetterDetail.class);
 
-        List<LeLetterItem> leLetterItems = leLetterItemService.lambdaQuery().eq(LeLetterItem::getLeLetterId, id).list();
+        List<LeLetterItem> leLetterItems = leLetterItemService.lambdaQuery().eq(LeLetterItem::getLeLetterId, id).orderByDesc(LeLetterItem::getCreateTime).list();
 
         leLetterDetail.setLeLetterItems(leLetterItems);
 
@@ -319,8 +319,13 @@ public class LetterLogic {
         if (leLetterItem.getExamineStatus().equals(LetterItemStatus.SUB.getKey()))
             leLetter.setStatus(LetterStatusEnum.REDUCTION.getKey());
 
+        leLetter.setExamineFration(leLetterItem.getExamineFration());
+        leLetter.setExamineName(leLetterItem.getExamineName());
+        leLetter.setExaminePrice(leLetterItem.getExaminePrice());
+        leLetter.setExamineStatus(leLetterItem.getExamineStatus());
+        leLetter.setExamineTime(leLetterItem.getExamineTime());
         leLetter.updateById();
-        leLetterItem.insert();
+        leLetterItem.updateById();
     }
 
     public void importProject(List<Object> objects) {

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

@@ -596,8 +596,9 @@ public class AgreementLogic {
 
                         List<WorkerPolicy> workerPolicies = workerPolicyService.lambdaQuery()
                                 .eq(WorkerPolicy::getWebsitId, policyOrder.getWebsitId())
-                                .eq(WorkerPolicy::getWorkerId, policyOrder.getWorkerNumber())
+                                .eq(WorkerPolicy::getWebsitUserId, policyOrder.getWebsitUserId())
                                 .eq(WorkerPolicy::getPolicyType, "AC")
+                                .in(WorkerPolicy::getStatus, PolicyOrderStatusEnum.BZZ.getKey(),PolicyOrderStatusEnum.DSX.getKey())
                                 .orderByDesc(WorkerPolicy::getEndTime)
                                 .list();