Răsfoiți Sursa

feat :竞争管理-竞争对手

孙海博 6 luni în urmă
părinte
comite
19a75bcaeb
25 a modificat fișierele cu 194 adăugiri și 83 ștergeri
  1. 1 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkCompetitorController.java
  2. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkCompetitorDataController.java
  3. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkCompetitorQualificationController.java
  4. 34 29
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorDO.java
  5. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorDataDO.java
  6. 11 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorProjectDO.java
  7. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorQualificationDO.java
  8. 12 3
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorDTO.java
  9. 6 0
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorDataDTO.java
  10. 17 9
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorProjectDTO.java
  11. 7 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorQualificationDTO.java
  12. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorDataServiceImpl.java
  13. 3 10
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorProjectServiceImpl.java
  14. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorQualificationServiceImpl.java
  15. 42 7
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorServiceImpl.java
  16. 1 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorDataRepository.java
  17. 10 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorProjectRepository.java
  18. 10 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorQualificationRepository.java
  19. 1 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorRepository.java
  20. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkCompetitorDataService.java
  21. 2 2
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkCompetitorQualificationService.java
  22. 1 1
      bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkCompetitorService.java
  23. 9 0
      bound-link-api/blink-backend/src/main/resources/mapper/BlinkCompetitorProjectRepositoryMapper.xml
  24. 11 0
      bound-link-api/blink-backend/src/main/resources/mapper/BlinkCompetitorQualificationRepositoryMapper.xml
  25. 2 0
      bound-link-api/blink-base/src/main/java/com/wx/blink/base/module/support/serialnumber/constant/SerialNumberIdEnum.java

+ 1 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkCompetitorController.java

@@ -34,7 +34,7 @@ public class BlinkCompetitorController {
 
     @Operation(summary = "获取竞争对手信息")
     @GetMapping("/supports/competitor/query/{id}")
-    public ResponseDTO<BlinkCompetitorDTO> supportsCompetitorQuery(@PathVariable("id") Long id) {
+    public ResponseDTO<BlinkCompetitorDTO> supportsCompetitorQuery(@PathVariable("id") String id) {
         return competitorService.supportsCompetitorQuery(id);
     }
 

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkCompetitorDataController.java

@@ -37,14 +37,14 @@ public class BlinkCompetitorDataController {
     @Operation(summary = "获取信息资料信息")
     @GetMapping("/supports/competitor/data/{id}")
     @NoNeedLogin
-    public ResponseDTO<BlinkCompetitorDataDTO> supportsCompetitorDataQuery(@PathVariable("id") Long id) {
+    public ResponseDTO<BlinkCompetitorDataDTO> supportsCompetitorDataQuery(@PathVariable("id") String id) {
         return dataService.supportsCompetitorDataQuery(id);
     }
 
     @Operation(summary = "删除信息资料")
     @GetMapping("/supports/competitor/data/delete/{id}")
     @NoNeedLogin
-    public ResponseDTO<String> supportsCompetitorDataDeleteById(@PathVariable("id") Long id) {
+    public ResponseDTO<String> supportsCompetitorDataDeleteById(@PathVariable("id") String id) {
         return dataService.supportsCompetitorDataDeleteById(id);
     }
 

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/controller/BlinkCompetitorQualificationController.java

@@ -33,7 +33,7 @@ public class BlinkCompetitorQualificationController {
 
     @Operation(summary = "获取企业资质信息")
     @GetMapping("/supports/competitor/qualification/query/{id}")
-    public ResponseDTO<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(@PathVariable("id") Long id) {
+    public ResponseDTO<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(@PathVariable("id") String id) {
         return qualificationService.supportsCompetitorQualificationQuery(id);
     }
 
@@ -45,7 +45,7 @@ public class BlinkCompetitorQualificationController {
 
     @Operation(summary = "移除企业资质")
     @GetMapping("/supports/qualification/delete/{id}")
-    public ResponseDTO<String> supportsCompetitorQualificationDeleteById(@PathVariable("id") Long id) {
+    public ResponseDTO<String> supportsCompetitorQualificationDeleteById(@PathVariable("id") String id) {
         return qualificationService.supportsCompetitorQualificationDeleteById(id);
     }
 

+ 34 - 29
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorDO.java

@@ -3,9 +3,13 @@ package com.wx.blink.backend.domain.dataobject;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.wx.blink.base.common.domain.BaseEntity;
 import lombok.Data;
 
+import java.math.BigDecimal;
+import java.util.Date;
+
 @Data
 @TableName("blink_competitor")
 public class BlinkCompetitorDO extends BaseEntity {
@@ -13,8 +17,8 @@ public class BlinkCompetitorDO extends BaseEntity {
     /**
      * id
      */
-    @TableId(type = IdType.AUTO)
-    private Long id;
+    @TableId(type = IdType.ASSIGN_UUID)
+    private String id;
 
     /**
      * 竞争对手名称
@@ -39,37 +43,38 @@ public class BlinkCompetitorDO extends BaseEntity {
     /**
      * 注册资本(元)
      */
-    private String registeredCapital;
+    private BigDecimal registeredCapital;
 
     /**
      * 注册日期
      */
-    private String registeredTime;
-
-    /**
-     * 注册地址
-     */
-    private String registeredAddress;
-
-    /**
-     * 单位类型
-     */
-    private String flatsType;
-
-    /**
-     * 已登记参标数量
-     */
-    private Integer biddingNumber;
-
-    /**
-     * 已登记中标数量
-     */
-    private Integer winningNumber;
-
-    /**
-     * 国家或地区
-     */
-    private String countryRegion;
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date registeredTime;
+
+//    /**
+//     * 注册地址
+//     */
+//    private String registeredAddress;
+//
+//    /**
+//     * 单位类型
+//     */
+//    private String flatsType;
+//
+//    /**
+//     * 已登记参标数量
+//     */
+//    private Integer biddingNumber;
+//
+//    /**
+//     * 已登记中标数量
+//     */
+//    private Integer winningNumber;
+//
+//    /**
+//     * 国家或地区
+//     */
+//    private String countryRegion;
 
     /**
      * 省份

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorDataDO.java

@@ -13,8 +13,8 @@ public class BlinkCompetitorDataDO extends BaseEntity {
     /**
      * id
      */
-    @TableId(type = IdType.AUTO)
-    private Long id;
+    @TableId(type = IdType.ASSIGN_UUID)
+    private String id;
 
     /**
      * 附件集合

+ 11 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorProjectDO.java

@@ -3,7 +3,10 @@ package com.wx.blink.backend.domain.dataobject;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.wx.blink.base.common.annoation.DataAdaptorMapping;
 import com.wx.blink.base.common.domain.BaseEntity;
+import com.wx.blink.base.common.json.deserializer.DictValueVoDeserializer;
 import lombok.Data;
 
 @Data
@@ -51,10 +54,16 @@ public class BlinkCompetitorProjectDO extends BaseEntity {
      */
     private String contractTotalAmount;
 
+//    /**
+//     * 项目类型
+//     */
+//    private String projectType;
+
+
     /**
-     * 项目类型
+     * 投标类型
      */
-    private String projectType;
+    private String tenderType;
 
     /**
      * 产品类型

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dataobject/BlinkCompetitorQualificationDO.java

@@ -13,8 +13,8 @@ public class BlinkCompetitorQualificationDO extends BaseEntity {
     /**
      * id
      */
-    @TableId(type = IdType.AUTO)
-    private Long id;
+    @TableId(type = IdType.ASSIGN_UUID)
+    private String id;
 
     /**
      * 资质名称

+ 12 - 3
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorDTO.java

@@ -1,5 +1,6 @@
 package com.wx.blink.backend.domain.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
 import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.wx.blink.base.common.annoation.DataAdaptorMapping;
@@ -9,6 +10,8 @@ import com.wx.blink.base.common.json.deserializer.FileKeyVoDeserializer;
 import com.wx.blink.base.common.json.serializer.FileKeyVoSerializer;
 import lombok.Data;
 import java.math.BigDecimal;
+import java.util.Date;
+import java.util.List;
 
 @Data
 public class BlinkCompetitorDTO extends BaseEntity {
@@ -16,7 +19,7 @@ public class BlinkCompetitorDTO extends BaseEntity {
     /**
      * id
      */
-    private Long id;
+    private String id;
 
     /**
      * 竞争对手名称
@@ -37,7 +40,7 @@ public class BlinkCompetitorDTO extends BaseEntity {
      * 属性
      */
     @JsonDeserialize(using = DictValueVoDeserializer.class)
-    @DataAdaptorMapping(type = "dict", value = "BLINK_EXPO_TYPE")
+    @DataAdaptorMapping(type = "dict", value = "BLINK_CUSTOMER_ATTRIBUTE")
     private String attribute;
 
     /**
@@ -49,7 +52,8 @@ public class BlinkCompetitorDTO extends BaseEntity {
     /**
      * 注册日期
      */
-    private String registeredTime;
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date registeredTime;
 
     /**
      * 注册地址
@@ -140,4 +144,9 @@ public class BlinkCompetitorDTO extends BaseEntity {
     @JsonSerialize(using = FileKeyVoSerializer.class)
     private String attachment;
 
+    /**
+     *资质集合
+     */
+    private List<BlinkCompetitorQualificationDTO> qualificationList;
+
 }

+ 6 - 0
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorDataDTO.java

@@ -1,6 +1,10 @@
 package com.wx.blink.backend.domain.dto;
 
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import com.wx.blink.base.common.domain.BaseEntity;
+import com.wx.blink.base.common.json.deserializer.FileKeyVoDeserializer;
+import com.wx.blink.base.common.json.serializer.FileKeyVoSerializer;
 import lombok.Data;
 
 @Data
@@ -14,6 +18,8 @@ public class BlinkCompetitorDataDTO extends BaseEntity {
     /**
      * 附件集合
      */
+    @JsonDeserialize(using = FileKeyVoDeserializer.class)
+    @JsonSerialize(using = FileKeyVoSerializer.class)
     private String attachment;
 
     /**

+ 17 - 9
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorProjectDTO.java

@@ -1,6 +1,7 @@
 package com.wx.blink.backend.domain.dto;
 
 import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.wx.blink.base.common.annoation.DataAdaptorMapping;
 import com.wx.blink.base.common.domain.BaseEntity;
 import com.wx.blink.base.common.json.deserializer.DictValueVoDeserializer;
 import lombok.Data;
@@ -23,7 +24,7 @@ public class BlinkCompetitorProjectDTO extends BaseEntity {
     /**
      * 竞争对手ID
      */
-    private Long competitorId;
+    private String competitorId;
 
     /**
      * 项目ID
@@ -38,37 +39,44 @@ public class BlinkCompetitorProjectDTO extends BaseEntity {
     /**
      * 合同金额(元)
      */
-    private String contractAmount;
-    private BigDecimal contractAmounts;
+    private BigDecimal contractAmount;
 
     /**
      * 补充协议金额(元)
      */
-    private String additionalAmount;
-    private BigDecimal additionalAmounts;
+    private BigDecimal additionalAmount;
 
     /**
      * 合同总金额(元)
      */
-    private String contractTotalAmount;
-    private BigDecimal contractTotalAmounts;
+    private BigDecimal contractTotalAmount;
 
     /**
-     * 项目类型
+     * 投标类型
      */
     @JsonDeserialize(using = DictValueVoDeserializer.class)
-    private String projectType;
+    @DataAdaptorMapping(type = "dict", value = "TENDER_TYPE")
+    private String tenderType;
+
+
+//    /**
+//     * 项目类型
+//     */
+//    @JsonDeserialize(using = DictValueVoDeserializer.class)
+//    private String projectType;
 
     /**
      * 产品类型
      */
     @JsonDeserialize(using = DictValueVoDeserializer.class)
+    @DataAdaptorMapping(type = "dict", value = "PRODUCT_TYPE")
     private String productType;
 
     /**
      * 项目来源
      */
     @JsonDeserialize(using = DictValueVoDeserializer.class)
+    @DataAdaptorMapping(type = "dict", value = "PROJECT_SOURCE")
     private String projectSource;
 
     /**

+ 7 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/domain/dto/BlinkCompetitorQualificationDTO.java

@@ -1,6 +1,9 @@
 package com.wx.blink.backend.domain.dto;
 
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.wx.blink.base.common.annoation.DataAdaptorMapping;
 import com.wx.blink.base.common.domain.BaseEntity;
+import com.wx.blink.base.common.json.deserializer.DictValueVoDeserializer;
 import lombok.Data;
 
 @Data
@@ -9,11 +12,14 @@ public class BlinkCompetitorQualificationDTO extends BaseEntity {
     /**
      * id
      */
-    private Long id;
+    private String id;
 
     /**
      * 资质名称
      */
+
+    @JsonDeserialize(using = DictValueVoDeserializer.class)
+    @DataAdaptorMapping(type = "dict", value = "BLINK_ENTERPRISE_QUALIFICATION")
     private String qualificationName;
 
     /**

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorDataServiceImpl.java

@@ -65,7 +65,7 @@ public class BlinkCompetitorDataServiceImpl extends ServiceImpl<BlinkCompetitorD
      * @return
      */
     @Override
-    public ResponseDTO<BlinkCompetitorDataDTO> supportsCompetitorDataQuery(Long id) {
+    public ResponseDTO<BlinkCompetitorDataDTO> supportsCompetitorDataQuery(String id) {
         BlinkCompetitorDataDTO competitorDataDTO = repository.supportsCompetitorDataQuery(id);
         if (!Objects.nonNull(competitorDataDTO)) {
             return ResponseDTO.dataErrorParam("信息资料不存在!请检查");
@@ -80,7 +80,7 @@ public class BlinkCompetitorDataServiceImpl extends ServiceImpl<BlinkCompetitorD
      * @return
      */
     @Override
-    public ResponseDTO<String> supportsCompetitorDataDeleteById(Long id) {
+    public ResponseDTO<String> supportsCompetitorDataDeleteById(String id) {
         BlinkCompetitorDataDO competitorDataDO = this.getById(id);
         if (!Objects.nonNull(competitorDataDO)){
             return ResponseDTO.dataErrorParam("活动附件不存在!请检查");

+ 3 - 10
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorProjectServiceImpl.java

@@ -35,21 +35,14 @@ public class BlinkCompetitorProjectServiceImpl extends ServiceImpl<BlinkCompetit
      */
     @Override
     public ResponseDTO<String> supportsCompetitorProjectCreate(BlinkCompetitorProjectDTO dto) {
-        // 验证企业资质是否重复
-        BlinkCompetitorProjectDO projectDO = repository.queryByProjectName(dto.getProjectName(), null, Boolean.FALSE);
+        // 验证项目情况是否重复
+        BlinkCompetitorProjectDO projectDO = repository.queryByProjectName(dto.getProjectName(), dto.getCompetitorId(),null, Boolean.FALSE);
         if (Objects.nonNull(projectDO)) {
-            return ResponseDTO.dataErrorParam("资质名称重复!请检查");
+            return ResponseDTO.dataErrorParam("项目情况重复!请检查");
         }
         // 生成DO
         BlinkCompetitorProjectDO competitorProjectDO = new BlinkCompetitorProjectDO();
         mapper.toBlinkCompetitorProjectDO(dto, competitorProjectDO);
-        DecimalFormat df = new DecimalFormat("#,##0.00");
-        // 设置合同金额
-        competitorProjectDO.setContractAmount(df.format(dto.getContractAmounts()));
-        // 设置补充协议金额
-        competitorProjectDO.setAdditionalAmount(df.format(dto.getAdditionalAmounts()));
-        // 设置合同总金额
-        competitorProjectDO.setContractTotalAmount(df.format(dto.getContractTotalAmounts()));
         // 创建人赋值
         BlinkEntityUtil.setCreateInfo(competitorProjectDO);
         // 执行新增

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorQualificationServiceImpl.java

@@ -70,7 +70,7 @@ public class BlinkCompetitorQualificationServiceImpl extends ServiceImpl<BlinkCo
      * @return
      */
     @Override
-    public ResponseDTO<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(Long id) {
+    public ResponseDTO<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(String id) {
         // 验证竞争对手是否存在
         BlinkCompetitorQualificationDO qualificationDO = repository.queryByQualificationName(null, id, Boolean.FALSE);
         if (!Objects.nonNull(qualificationDO)) {
@@ -111,7 +111,7 @@ public class BlinkCompetitorQualificationServiceImpl extends ServiceImpl<BlinkCo
      * @return
      */
     @Override
-    public ResponseDTO<String> supportsCompetitorQualificationDeleteById(Long id) {
+    public ResponseDTO<String> supportsCompetitorQualificationDeleteById(String id) {
         BlinkCompetitorQualificationDO qualificationDO = this.getById(id);
         if (!Objects.nonNull(qualificationDO)){
             return ResponseDTO.dataErrorParam("企业资质不存在!请检查");

+ 42 - 7
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/manager/BlinkCompetitorServiceImpl.java

@@ -4,9 +4,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.wx.blink.backend.domain.dataobject.BlinkCompetitorDO;
 import com.wx.blink.backend.domain.dto.BlinkCompetitorDTO;
+import com.wx.blink.backend.domain.dto.BlinkCompetitorQualificationDTO;
 import com.wx.blink.backend.domain.qry.BlinkCompetitorQry;
 import com.wx.blink.backend.objectmapper.BlinkCompetitorMapper;
+import com.wx.blink.backend.repository.BlinkCompetitorProjectRepository;
+import com.wx.blink.backend.repository.BlinkCompetitorQualificationRepository;
 import com.wx.blink.backend.repository.BlinkCompetitorRepository;
+import com.wx.blink.backend.service.IBlinkCompetitorQualificationService;
 import com.wx.blink.backend.service.IBlinkCompetitorService;
 import com.wx.blink.base.common.domain.PageResult;
 import com.wx.blink.base.common.domain.ResponseDTO;
@@ -18,6 +22,7 @@ import com.wx.blink.base.module.support.serialnumber.service.SerialNumberService
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.text.DecimalFormat;
 import java.util.List;
 import java.util.Objects;
@@ -31,6 +36,12 @@ public class BlinkCompetitorServiceImpl extends ServiceImpl<BlinkCompetitorRepos
     private BlinkCompetitorMapper mapper;
     @Resource
     private SerialNumberService serialNumberService;
+    @Resource
+    private IBlinkCompetitorQualificationService blinkCompetitorQualificationService;
+    @Resource
+    private BlinkCompetitorQualificationRepository qualificationRepository;
+    @Resource
+    private BlinkCompetitorProjectRepository projectRepository;
 
     /**
      * 新增竞争对手
@@ -49,16 +60,21 @@ public class BlinkCompetitorServiceImpl extends ServiceImpl<BlinkCompetitorRepos
         BlinkCompetitorDO competitor = new BlinkCompetitorDO();
         mapper.toBlinkCompetitorDO(dto, competitor);
         //生成客户编码
-        SerialNumberIdEnum serialNumberIdEnum = BlinkEnumUtil.getEnumByValue(4, SerialNumberIdEnum.class);
+        SerialNumberIdEnum serialNumberIdEnum = BlinkEnumUtil.getEnumByValue(10, SerialNumberIdEnum.class);
         competitor.setCompetitorId(serialNumberService.generate(serialNumberIdEnum));
-        // 设置注册资本
-        DecimalFormat df = new DecimalFormat("#,##0.00");
-        competitor.setRegisteredCapital(df.format(dto.getRegisteredCapitals()));
-        // 计算累计资质管理
         // 创建人赋值
         BlinkEntityUtil.setCreateInfo(competitor);
         // 执行新增
         this.save(competitor);
+        //获取竞争对手id
+        String generatedId = competitor.getId();
+        //写入资质列表
+        List<BlinkCompetitorQualificationDTO> qualificationList = dto.getQualificationList();
+        if(qualificationList.size()>0 && qualificationList != null){
+            for (BlinkCompetitorQualificationDTO qualificationDTO: qualificationList) {
+                blinkCompetitorQualificationService.supportsCompetitorQualificationCreate(qualificationDTO);
+            }
+        }
         return ResponseDTO.ok();
     }
 
@@ -72,6 +88,25 @@ public class BlinkCompetitorServiceImpl extends ServiceImpl<BlinkCompetitorRepos
     public ResponseDTO<PageResult<BlinkCompetitorDTO>> supportsCompetitorQueryPage(BlinkCompetitorQry qry) {
         Page<?> page = BlinkPageUtil.convert2PageQuery(qry);
         List<BlinkCompetitorDTO> competitorDTOS = repository.supportsCompetitorQueryPage(page, qry);
+        if(competitorDTOS!=null && competitorDTOS.size()>0){
+            for (BlinkCompetitorDTO blinkCompetitorDTO:competitorDTOS) {
+                //资质相关信息
+                List<BlinkCompetitorQualificationDTO> qualifications= qualificationRepository.supportsCompetitorQualificationQuery(blinkCompetitorDTO.getId());
+                if(qualifications.size() > 0 && qualifications != null){
+                    blinkCompetitorDTO.setQualificationList(qualifications);
+                    blinkCompetitorDTO.setQualificationManage(qualifications.size()+"项");
+                }else{
+                    blinkCompetitorDTO.setQualificationList(null);
+                    blinkCompetitorDTO.setQualificationManage("/");
+                }
+                //已登记参标数量
+                blinkCompetitorDTO.setBiddingNumber(projectRepository.supportsCompetitorProjectQtyByCompetitorId(blinkCompetitorDTO.getId()));
+
+                //已登记中标数量
+                blinkCompetitorDTO.setBiddingNumber(0);
+            }
+        }
+
         PageResult<BlinkCompetitorDTO> pageResult = BlinkPageUtil.convert2PageResult(page, competitorDTOS);
         return ResponseDTO.ok(pageResult);
     }
@@ -83,11 +118,11 @@ public class BlinkCompetitorServiceImpl extends ServiceImpl<BlinkCompetitorRepos
      * @return
      */
     @Override
-    public ResponseDTO<BlinkCompetitorDTO> supportsCompetitorQuery(Long id) {
+    public ResponseDTO<BlinkCompetitorDTO> supportsCompetitorQuery(String id) {
         // 验证竞争对手是否存在
         BlinkCompetitorDO competitorDO = repository.queryByCompetitorName(null, id, Boolean.FALSE);
         if (!Objects.nonNull(competitorDO)) {
-            return ResponseDTO.userErrorParam("活动不存在!请检查");
+            return ResponseDTO.userErrorParam("竞争对手名称不存在!请检查");
         }
         BlinkCompetitorDTO dto = new BlinkCompetitorDTO();
         mapper.toBlinkCompetitorDTO(competitorDO, dto);

+ 1 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorDataRepository.java

@@ -27,6 +27,6 @@ public interface BlinkCompetitorDataRepository extends BaseMapper<BlinkCompetito
      * @param id
      * @return
      */
-    BlinkCompetitorDataDTO supportsCompetitorDataQuery(@Param("id") Long id);
+    BlinkCompetitorDataDTO supportsCompetitorDataQuery(@Param("id") String id);
 
 }

+ 10 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorProjectRepository.java

@@ -21,7 +21,7 @@ public interface BlinkCompetitorProjectRepository extends BaseMapper<BlinkCompet
      * @param deletedFlag
      * @return
      */
-    BlinkCompetitorProjectDO queryByProjectName(@Param("projectName") String projectName, @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
+    BlinkCompetitorProjectDO queryByProjectName(@Param("projectName") String projectName,@Param("competitorId") String competitorId,  @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
 
 
     /**
@@ -33,4 +33,13 @@ public interface BlinkCompetitorProjectRepository extends BaseMapper<BlinkCompet
      */
     List<BlinkCompetitorProjectDTO> supportsCompetitorProjectQueryPage(Page<?> page, @Param("query") BlinkCompetitorProjectQry qry);
 
+
+    /**
+     * 根据竞争对手id获取项目情况列表
+     *
+     * @param competitorId 数量
+     * @return
+     */
+    Integer supportsCompetitorProjectQtyByCompetitorId(@Param("competitorId") String competitorId);
+
 }

+ 10 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorQualificationRepository.java

@@ -21,7 +21,7 @@ public interface BlinkCompetitorQualificationRepository extends BaseMapper<Blink
      * @param deletedFlag
      * @return
      */
-    BlinkCompetitorQualificationDO queryByQualificationName(@Param("qualificationName") String qualificationName, @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
+    BlinkCompetitorQualificationDO queryByQualificationName(@Param("qualificationName") String qualificationName, @Param("id") String id, @Param("deletedFlag") Boolean deletedFlag);
 
 
     /**
@@ -33,4 +33,13 @@ public interface BlinkCompetitorQualificationRepository extends BaseMapper<Blink
      */
     List<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQueryPage(Page<?> page, @Param("query") BlinkCompetitorQualificationQry qry);
 
+    /**
+     * 查询企业资质列表
+     *
+     * @param
+     * @param id 竞争对手id
+     * @return
+     */
+    List<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(@Param("id") String id);
+
 }

+ 1 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/repository/BlinkCompetitorRepository.java

@@ -21,7 +21,7 @@ public interface BlinkCompetitorRepository extends BaseMapper<BlinkCompetitorDO>
      * @param deletedFlag
      * @return
      */
-    BlinkCompetitorDO queryByCompetitorName(@Param("competitorName") String competitorName, @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
+    BlinkCompetitorDO queryByCompetitorName(@Param("competitorName") String competitorName, @Param("id") String id, @Param("deletedFlag") Boolean deletedFlag);
 
 
     /**

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkCompetitorDataService.java

@@ -29,7 +29,7 @@ public interface IBlinkCompetitorDataService {
      * @param id
      * @return
      */
-    ResponseDTO<BlinkCompetitorDataDTO> supportsCompetitorDataQuery(Long id);
+    ResponseDTO<BlinkCompetitorDataDTO> supportsCompetitorDataQuery(String id);
 
     /**
      * 移除信息资料
@@ -37,6 +37,6 @@ public interface IBlinkCompetitorDataService {
      * @param id
      * @return
      */
-    ResponseDTO<String> supportsCompetitorDataDeleteById(Long id);
+    ResponseDTO<String> supportsCompetitorDataDeleteById(String id);
 
 }

+ 2 - 2
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkCompetitorQualificationService.java

@@ -29,7 +29,7 @@ public interface IBlinkCompetitorQualificationService {
      * @param id
      * @return
      */
-    ResponseDTO<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(Long id);
+    ResponseDTO<BlinkCompetitorQualificationDTO> supportsCompetitorQualificationQuery(String id);
 
     /**
      * 编辑更新企业资质
@@ -45,5 +45,5 @@ public interface IBlinkCompetitorQualificationService {
      * @param id
      * @return
      */
-    ResponseDTO<String> supportsCompetitorQualificationDeleteById(Long id);
+    ResponseDTO<String> supportsCompetitorQualificationDeleteById(String id);
 }

+ 1 - 1
bound-link-api/blink-backend/src/main/java/com/wx/blink/backend/service/IBlinkCompetitorService.java

@@ -29,5 +29,5 @@ public interface IBlinkCompetitorService {
      * @param id
      * @return
      */
-    ResponseDTO<BlinkCompetitorDTO> supportsCompetitorQuery(Long id);
+    ResponseDTO<BlinkCompetitorDTO> supportsCompetitorQuery(String id);
 }

+ 9 - 0
bound-link-api/blink-backend/src/main/resources/mapper/BlinkCompetitorProjectRepositoryMapper.xml

@@ -9,6 +9,9 @@
         <if test="projectName != null and projectName != ''">
             AND project_name = #{projectName}
         </if>
+        <if test="competitorId != null and competitorId != ''">
+            AND competitor_id = #{competitorId}
+        </if>
         <if test="id != null">
             AND id = #{id}
         </if>
@@ -27,5 +30,11 @@
         </if>
         order by create_time desc
     </select>
+    <select id="supportsCompetitorProjectQtyByCompetitorId" resultType="java.lang.Integer">
+        select COUNT(1) cnt
+        from blink_competitor_project_situation
+        where deleted_flag = 0
+        and competitor_id=#{competitorId}
+    </select>
 
 </mapper>

+ 11 - 0
bound-link-api/blink-backend/src/main/resources/mapper/BlinkCompetitorQualificationRepositoryMapper.xml

@@ -27,5 +27,16 @@
         </if>
         order by create_time desc
     </select>
+    <select id="supportsCompetitorQualificationQuery"
+            resultType="com.wx.blink.backend.domain.dto.BlinkCompetitorQualificationDTO">
+        select *
+        from blink_competitor_qualification
+        where deleted_flag = '0'
+
+        <if test="id != null">
+            AND competitor_id = #{id}
+        </if>
+        order by create_time desc
+    </select>
 
 </mapper>

+ 2 - 0
bound-link-api/blink-base/src/main/java/com/wx/blink/base/module/support/serialnumber/constant/SerialNumberIdEnum.java

@@ -32,6 +32,8 @@ public enum SerialNumberIdEnum implements BaseEnum {
     TASK(8, "项目任务"),
 
     INVOICE(9, "发票"),
+
+    COMPETITION(10, "竞争对手编码"),
     ;
 
     private final Integer serialNumberId;