Browse Source

no message

FengChaoYu 1 day ago
parent
commit
134da6ba8f

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

@@ -365,9 +365,10 @@ public class MemberController {
     @PostMapping("/company/delivery/del")
     @ApiOperation(value = "商户配送员删除")
     public ResponseHelper companyDeliveryDel(
+            @ApiParam(value = "仓库id", required = true) @RequestParam String storageId,
             @ApiParam(value = "师傅id", required = true) @RequestParam String userId
     ) {
-        userLogic.companyDeliveryDel(userId);
+        userLogic.companyDeliveryDel(storageId, userId);
         return ResponseHelper.success();
     }
 

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

@@ -539,20 +539,30 @@ public class UserLogic {
     }
 
     @Transactional
-    public void companyDeliveryDel(String userId) {
+    public void companyDeliveryDel(String storageId, String userId) {
         AdminUserCom adminUser = commonLogic.getAdminUser();
 
-        // 删除配送员记录
-        userCompanyDeliveryService.lambdaUpdate()
-                .eq(UserCompanyDelivery::getUserId, userId)
-                .eq(UserCompanyDelivery::getCompanyWechatId, adminUser.getCompanyWechatId())
-                .remove();
-
         // 删除关系表
         userCompanyDeliveryRelaService.lambdaUpdate()
                 .eq(UserCompanyDeliveryRela::getUserId, userId)
+                .eq(UserCompanyDeliveryRela::getStorageId, storageId)
                 .eq(UserCompanyDeliveryRela::getCompanyWechatId, adminUser.getCompanyWechatId())
                 .remove();
+
+        final Integer count = userCompanyDeliveryRelaService.lambdaQuery()
+                .eq(UserCompanyDeliveryRela::getUserId, userId)
+                .eq(UserCompanyDeliveryRela::getCompanyWechatId, adminUser.getCompanyWechatId())
+                .count();
+
+        // 配送关系表没有记录时删除配送员记录
+        if (count <= 0) {
+            // 删除配送员记录
+            userCompanyDeliveryService.lambdaUpdate()
+                    .eq(UserCompanyDelivery::getUserId, userId)
+                    .eq(UserCompanyDelivery::getCompanyWechatId, adminUser.getCompanyWechatId())
+                    .remove();
+        }
+
     }
 
     public IPage<UserCompanyCreditBean> companyCredit(String nickName, String mobile, Integer pageNum, Integer pageSize) {