Kaynağa Gözat

fix(activity): 活动中心管理Tab打通服务角色审核链路——两条链路统一识别为活动服务商

- 后端 VendorService.getStatus 返回体补 activityProviderStatus 字段
  (服务角色审核 activity_provider 通过时 ServiceRoleApplicationServiceImpl 写入,
   vendor_type/vendor_status 只在 vendor 入驻链路写入)
- 前端 activity-role.js isApprovedActivityProvider 增加认 activityProviderStatus===approved:
  链路1 vendor 入驻(vendorType+vendorStatus)与链路2 服务角色申请(activityProviderStatus)
  任一成立即可见管理 Tab;草稿只能提交审核,不能直接发布(admin/activity_admin 仍可直发)
Xiaogang Liao 5 gün önce
ebeveyn
işleme
3e2d73518d

+ 4 - 0
cfc-backend/src/main/java/com/etotem/cfc/service/VendorService.java

@@ -53,6 +53,10 @@ public class VendorService {
         data.put("vendorType", user.getVendorType());
         data.put("vendorStatus", user.getVendorStatus());
         data.put("vendorRejectReason", user.getVendorRejectReason());
+        // 服务角色审核链路信号:审核 activity_provider 资质通过时写入
+        //(ServiceRoleApplicationServiceImpl.approve),vendor_type/vendor_status
+        // 只在 vendor 入驻链路写入,前端据此把两条链路统一识别为已通过的活动服务商
+        data.put("activityProviderStatus", user.getActivityProviderStatus());
         return Result.success(data);
     }
 

+ 7 - 2
cfc-frontend/utils/activity-role.js

@@ -33,11 +33,16 @@ export function hasActivityManageRole() {
 }
 
 /**
- * vendorStatus 接口返回是否表示「已通过审核的活动提供商」
+ * 判定「已通过审核的活动服务商」——兼容两条申请/审核链路:
+ *   链路1 vendor 入驻:vendorType=activity_provider 且 vendorStatus=approved
+ *   链路2 服务角色申请:activityProviderStatus=approved
+ *        (ServiceRoleApplicationServiceImpl.approve 写入,vendor_type/vendor_status 不动)
+ * 任一成立即视为服务商,可见管理 Tab,但草稿只能提交审核、不能直接发布。
  * @param {Object} vendorStatusData /api/vendor/status 的 data 字段
  * @returns {boolean}
  */
 export function isApprovedActivityProvider(vendorStatusData) {
   var d = vendorStatusData || {}
-  return d.vendorType === 'activity_provider' && d.vendorStatus === 'approved'
+  if (d.vendorType === 'activity_provider' && d.vendorStatus === 'approved') return true
+  return d.activityProviderStatus === 'approved'
 }