Ver código fonte

1、修复企业设置vip接口bug

rayson 6 meses atrás
pai
commit
4ca6a9afb7

+ 32 - 12
menduner/menduner-system-biz/src/main/java/com/citu/module/menduner/system/service/enterprise/vip/EnterpriseEntitlementServiceImpl.java

@@ -205,18 +205,38 @@ public class EnterpriseEntitlementServiceImpl implements EnterpriseEntitlementSe
         if (enterpriseBindService.checkIsAdmin(userBind)) {
             // 管理员
 
-            // 创建权益
-            EnterpriseEntitlementDO insert = EnterpriseEntitlementDO.builder()
-                    .enterpriseId(userBind.getEnterpriseId())
-                    .userId(userBind.getUserId())
-                    .publishJobCount(packageDO.getPublishJobCount())
-                    .searchCount(packageDO.getSearchCount())
-                    .lookCvCount(packageDO.getLookCvCount())
-                    .personMap(packageDO.getPersonMap())
-                    .hireJob(packageDO.getHireJob())
-                    .build();
+            // 查询权益
+            EnterpriseEntitlementDO enterpriseEntitlement = mapper.selectOne(EnterpriseEntitlementDO::getEnterpriseId,
+                    userBind.getEnterpriseId(), EnterpriseEntitlementDO::getUserId, userBind.getUserId());
+            if (null == enterpriseEntitlement) {
+                // 新增
+                EnterpriseEntitlementDO insert = EnterpriseEntitlementDO.builder()
+                        .enterpriseId(userBind.getEnterpriseId())
+                        .userId(userBind.getUserId())
+                        .publishJobCount(packageDO.getPublishJobCount())
+                        .searchCount(packageDO.getSearchCount())
+                        .lookCvCount(packageDO.getLookCvCount())
+                        .personMap(packageDO.getPersonMap())
+                        .hireJob(packageDO.getHireJob())
+                        .build();
+
+                mapper.insert(insert);
+            } else {
+                // 修改
+                EnterpriseEntitlementDO update = EnterpriseEntitlementDO.builder()
+                        .id(enterpriseEntitlement.getId())
+                        .enterpriseId(userBind.getEnterpriseId())
+                        .userId(userBind.getUserId())
+                        .publishJobCount(enterpriseEntitlement.getPublishJobCount() + packageDO.getPublishJobCount())
+                        .searchCount(enterpriseEntitlement.getSearchCount() + packageDO.getSearchCount())
+                        .lookCvCount(enterpriseEntitlement.getLookCvCount() + packageDO.getLookCvCount())
+                        // 覆盖
+                        .personMap(packageDO.getPersonMap())
+                        .hireJob(packageDO.getHireJob())
+                        .build();
+                mapper.updateById(update);
+            }
 
-            mapper.insert(insert);
         }
 
 
@@ -224,6 +244,6 @@ public class EnterpriseEntitlementServiceImpl implements EnterpriseEntitlementSe
 
     @Override
     public List<EnterpriseEntitlementRespVO> getListByEnterpriseId(Long enterpriseId) {
-        return  BeanUtils.toBean(mapper.selectListByEnterpriseId(enterpriseId), EnterpriseEntitlementRespVO.class);
+        return BeanUtils.toBean(mapper.selectListByEnterpriseId(enterpriseId), EnterpriseEntitlementRespVO.class);
     }
 }