Преглед на файлове

feat: admin supply-manage auto-set activityProviderStatus for activity_provider

iwt преди 5 дни
родител
ревизия
e06409c4e8
променени са 1 файла, в които са добавени 19 реда и са изтрити 1 реда
  1. 19 1
      cfc-backend/src/main/java/com/etotem/cfc/controller/admin/SupplyManageController.java

+ 19 - 1
cfc-backend/src/main/java/com/etotem/cfc/controller/admin/SupplyManageController.java

@@ -97,6 +97,7 @@ public class SupplyManageController {
         String phone = (String) params.get("phone");
         String nickname = (String) params.get("nickname");
         String realName = (String) params.get("realName");
+        String vendorType = (String) params.get("vendorType");
 
         if (phone == null || phone.isEmpty()) {
             return Result.error("手机号不能为空");
@@ -117,7 +118,11 @@ public class SupplyManageController {
         // B-1/B-2:roles 数组写入供应商角色(遗留角色 supplier_admin 由 AdminRoles.normalize 归一化为 supplier)
         user.setRoles(java.util.Arrays.asList("supplier_admin", "supplier"));
         user.setVendorStatus("approved"); // 默认通过审核
-        user.setVendorType("product_supplier"); // 默认商品供应商
+        String effectiveVendorType = (vendorType != null && !vendorType.isEmpty()) ? vendorType : "product_supplier";
+        user.setVendorType(effectiveVendorType);
+        if ("activity_provider".equals(effectiveVendorType)) {
+            user.setActivityProviderStatus("approved");
+        }
         user.setCreatedAt(new Date());
         user.setUpdatedAt(new Date());
 
@@ -149,10 +154,18 @@ public class SupplyManageController {
         }
         if (params.containsKey("vendorType")) {
             user.setVendorType((String) params.get("vendorType"));
+            if ("activity_provider".equals(user.getVendorType())) {
+                user.setActivityProviderStatus("approved");
+            } else if ("planner".equals(user.getVendorType()) || "product_supplier".equals(user.getVendorType())) {
+                user.setActivityProviderStatus(null);
+            }
         }
         if (params.containsKey("vendorStatus")) {
             user.setVendorStatus((String) params.get("vendorStatus"));
         }
+        if (params.containsKey("activityProviderStatus")) {
+            user.setActivityProviderStatus((String) params.get("activityProviderStatus"));
+        }
         if (params.containsKey("vendorInfo")) {
             user.setVendorInfo((String) params.get("vendorInfo"));
         }
@@ -241,6 +254,11 @@ public class SupplyManageController {
         }
 
         user.setVendorType(vendorType);
+        if ("activity_provider".equals(vendorType)) {
+            user.setActivityProviderStatus("approved");
+        } else if ("planner".equals(vendorType) || "product_supplier".equals(vendorType)) {
+            user.setActivityProviderStatus(null);
+        }
         user.setUpdatedAt(new Date());
         userMapper.updateById(user);