Przeglądaj źródła

中间合同历史联系方式去重复

yzc 2 lat temu
rodzic
commit
daa1de0daf

+ 10 - 0
hx-sale/src/main/java/com/fjhx/sale/entity/intermediate/dto/IntermediateContractSelectDto.java

@@ -14,4 +14,14 @@ import lombok.Setter;
 @Setter
 public class IntermediateContractSelectDto extends BaseSelectDto {
 
+    /**
+     * 卖方公司ID
+     */
+    private Long sellCorporationId;
+
+    /**
+     * 买方公司ID
+     */
+    private Long buyCorporationId;
+
 }

+ 21 - 4
hx-sale/src/main/java/com/fjhx/sale/service/intermediate/impl/IntermediateContractServiceImpl.java

@@ -51,6 +51,11 @@ public class IntermediateContractServiceImpl extends ServiceImpl<IntermediateCon
     @Override
     public Page<IntermediateContractVo> getPage(IntermediateContractSelectDto dto) {
         IWrapper<IntermediateContract> wrapper = getWrapper();
+        //买方公司过滤
+        wrapper.eq(IntermediateContract::getBuyCorporationId, dto.getBuyCorporationId());
+        //卖方公司过滤
+        wrapper.eq(IntermediateContract::getSellCorporationId, dto.getSellCorporationId());
+
         wrapper.orderByDesc("ic", IntermediateContract::getId);
         Page<IntermediateContractVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
         List<IntermediateContractVo> records = page.getRecords();
@@ -101,11 +106,23 @@ public class IntermediateContractServiceImpl extends ServiceImpl<IntermediateCon
     public List<IntermediateContractVo> contactList(IntermediateContractDto dto) {
         IWrapper<IntermediateContract> wrapper = IWrapper.getWrapper();
         //根据卖方联系人名称/联系方式过滤
-        wrapper.or().like(IntermediateContract::getSellContactName, dto.getSellContactName());
-        wrapper.or().like(IntermediateContract::getSellContactNumber, dto.getSellContactNumber());
+        if (ObjectUtil.isNotEmpty(dto.getSellContactName())) {
+            wrapper.or().like(IntermediateContract::getSellContactName, dto.getSellContactName());
+            wrapper.groupBy("sell_contact_name");
+        }
+        if (ObjectUtil.isNotEmpty(dto.getSellContactNumber())) {
+            wrapper.or().like(IntermediateContract::getSellContactNumber, dto.getSellContactNumber());
+            wrapper.groupBy("sell_contact_number");
+        }
         //根据买方联系人名称/联系方式过滤
-        wrapper.or().like(IntermediateContract::getBuyContactName, dto.getBuyContactName());
-        wrapper.or().like(IntermediateContract::getBuyContactNumber, dto.getBuyContactNumber());
+        if (ObjectUtil.isNotEmpty(dto.getBuyContactName())) {
+            wrapper.or().like(IntermediateContract::getBuyContactName, dto.getBuyContactName());
+            wrapper.groupBy("buy_contact_name");
+        }
+        if (ObjectUtil.isNotEmpty(dto.getBuyContactNumber())) {
+            wrapper.or().like(IntermediateContract::getBuyContactNumber, dto.getBuyContactNumber());
+            wrapper.groupBy("buy_contact_number");
+        }
         List<IntermediateContractVo> list = baseMapper.contactList(wrapper);
         //赋值买方名称
         corporationService.attributeAssign(list, IntermediateContractVo::getBuyCorporationId, (item, corporation) -> {