From 2db76f2066701cbe292f206ad49a7f8523b8aa9f Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期五, 14 八月 2026 16:30:25 +0800
Subject: [PATCH] feat:银行流水关联多个合同,新增预收款开票,所有List校验调整为ColUtil

---
 platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java |  101 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 101 insertions(+), 0 deletions(-)

diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java
index 55db786..3be2168 100644
--- a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/BusinessCustomerServiceImpl.java
@@ -1,16 +1,117 @@
 package com.by4cloud.platformx.business.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
+
+import cn.hutool.core.util.ObjUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.by4cloud.platformx.business.entity.BusinessCustomer;
+import com.by4cloud.platformx.business.mapper.BipBanklViewMapper;
+import com.by4cloud.platformx.business.mapper.BipViewMapper;
 import com.by4cloud.platformx.business.mapper.BusinessCustomerMapper;
 import com.by4cloud.platformx.business.service.BusinessCustomerService;
+import com.by4cloud.platformx.business.vo.BankNameVo;
+import com.by4cloud.platformx.business.vo.BusinessCustomerMainVo;
+import com.by4cloud.platformx.business.vo.CustBankVo;
+import com.by4cloud.platformx.business.vo.CustInfoVo;
+import com.by4cloud.platformx.common.core.util.R;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+
+import java.util.List;
+
 /**
  * 瀹㈠晢淇℃伅
  *
  * @author platformx
  * @date 2026-05-07 10:13:22
  */
+@Slf4j
+@RequiredArgsConstructor
 @Service
 public class BusinessCustomerServiceImpl extends ServiceImpl<BusinessCustomerMapper, BusinessCustomer> implements BusinessCustomerService {
+
+	private final BipViewMapper bipViewMapper;
+	private final BipBanklViewMapper bipBanklViewMapper;
+
+	@Override
+	public R syncMainBusCus(String compId) {
+		List<BusinessCustomer> bcList = baseMapper.selectList(Wrappers.<BusinessCustomer>lambdaQuery()
+				.eq(StrUtil.isNotEmpty(compId),BusinessCustomer::getCompId,compId)
+				.and(wrapper -> wrapper.isNull(BusinessCustomer::getCreditCode)
+				.or().isNull(BusinessCustomer::getLegalPerson)
+				.or().isNull(BusinessCustomer::getBankName)
+				.or().isNull(BusinessCustomer::getBankAccount)
+				.or().isNull(BusinessCustomer::getRegisterName)
+				.or().isNull(BusinessCustomer::getBipCode))
+		);
+		if (CollUtil.isNotEmpty(bcList)){
+			for (BusinessCustomer bc:bcList
+				 ) {
+				log.info("寮�濮嬪悓姝}淇℃伅",bc.getCompanyName());
+				CustInfoVo custInfo = bipViewMapper.selectBaseInfoByCustName(bc.getCompanyName());
+				if (ObjUtil.isNull(custInfo)){
+					continue;
+				}
+				if (ObjUtil.isNotNull(custInfo)){
+					bc.setCreditCode(custInfo.getCertificateId());
+					bc.setRegisterName(custInfo.getCustName());
+					bc.setLegalPerson(custInfo.getLegalPerson());
+					bc.setAddress(custInfo.getRegistrationAddress());
+					bc.setBipCode(custInfo.getCustCode());
+					baseMapper.updateById(bc);
+					log.info("{}鍚屾鍚嶇О銆佹硶浜恒�佸湴鍧�銆佷俊鐢ㄧ爜銆乥ipcode淇℃伅鎴愬姛",bc.getCompanyName());
+				}
+				List<CustBankVo> bankVoList = bipViewMapper.selectBankByCustName(bc.getCompanyName());
+				if (CollUtil.isEmpty(bankVoList)){
+					continue;
+				}
+				if (CollUtil.isNotEmpty(bankVoList)){
+					if (StrUtil.isEmpty(bc.getBankAccount())){
+						bc.setBankAccount(bankVoList.get(0).getBankAccount());
+						baseMapper.updateById(bc);
+						log.info("{}鍚屾閾惰鍗″彿淇℃伅鎴愬姛",bc.getCompanyName());
+					}
+					List<BankNameVo> bankNameVoList = bipBanklViewMapper.selectBankByCode(bankVoList.get(0).getBankName());
+					if (CollUtil.isNotEmpty(bankNameVoList)){
+						bc.setBankName(bankNameVoList.get(0).getBankNameName());
+						baseMapper.updateById(bc);
+						log.info("{}鍚屾閾惰鍚嶇О淇℃伅鎴愬姛",bc.getCompanyName());
+					}
+				}
+
+			}
+		}
+		return R.ok();
+	}
+
+	@Override
+	public BusinessCustomerMainVo queryMainBC(String companyName) {
+		BusinessCustomerMainVo bc = new BusinessCustomerMainVo();
+		bc.setCompanyName(companyName);
+		log.info("涓绘暟鎹煡璇}淇℃伅",companyName);
+		CustInfoVo custInfo = bipViewMapper.selectBaseInfoByCustName(companyName);
+		if (ObjUtil.isNotNull(custInfo)){
+			bc.setCreditCode(custInfo.getCertificateId());
+			bc.setRegisterName(custInfo.getCustName());
+			bc.setLegalPerson(custInfo.getLegalPerson());
+			bc.setAddress(custInfo.getRegistrationAddress());
+			log.info("{}涓绘暟鎹煡璇㈠悕绉般�佹硶浜恒�佸湴鍧�銆佷俊鐢ㄧ爜淇℃伅鎴愬姛",companyName);
+		}
+		List<CustBankVo> bankVoList = bipViewMapper.selectBankByCustName(bc.getCompanyName());
+		if (CollUtil.isNotEmpty(bankVoList)){
+			if (StrUtil.isEmpty(bc.getBankAccount())){
+				bc.setBankAccount(bankVoList.get(0).getBankAccount());
+				log.info("{}涓绘暟鎹煡璇㈤摱琛屽崱鍙蜂俊鎭垚鍔�",companyName);
+			}
+			List<BankNameVo> bankNameVoList = bipBanklViewMapper.selectBankByCode(bankVoList.get(0).getBankName());
+			if (CollUtil.isNotEmpty(bankNameVoList)){
+				bc.setBankName(bankNameVoList.get(0).getBankNameName());
+				log.info("{}涓绘暟鎹煡璇㈤摱琛屽悕绉颁俊鎭垚鍔�",companyName);
+			}
+		}
+		return bc;
+	}
 }
\ No newline at end of file

--
Gitblit v1.9.1