demand: oms\小程序-订单录入支持录入企业名称、企业税号 oms\小程序-查询订单详情支持查询企业名称、企业税号 oms\小程序-查询客户地址支持查询企业名称、企业税号 oms\小程序-新增/修改客户地址支持新增/修改企业名称、企业税号
committer: heyu
This commit is contained in:
parent
3bb0ead3a4
commit
b6eb0258af
@ -3561,29 +3561,56 @@ public class EmisBaseService {
|
||||
public int createCustomerAddressNew(EmisCustomerAddress emisCustomerAddressNew) throws EmisBizError {
|
||||
|
||||
checkAdress(emisCustomerAddressNew);
|
||||
List<EmisCustomerAddress> emisCustomerAddressList = emisCustomerAddressMapper.checkAndQuery(emisCustomerAddressNew);
|
||||
List<EmisCustomerAddress> emisCustomerAddressList = emisCustomerAddressMapper
|
||||
.checkAndQuery(emisCustomerAddressNew);
|
||||
if (CollectionUtil.isEmpty(emisCustomerAddressList)) {
|
||||
// 不重复的情况则 创建地址
|
||||
return emisCustomerAddressMapper.insertEmisCustomerAddress(emisCustomerAddressNew);
|
||||
} else {
|
||||
if ("1".equals(emisCustomerAddressNew.getAddressType()) && "0086".equals(emisCustomerAddressNew.getCountry())) {
|
||||
List<Long> emisCustomerAddressIds = emisCustomerAddressList.stream().filter(i -> (!emisCustomerAddressNew.getEnterpriseTaxId().equals(i.getEnterpriseTaxId()) || !emisCustomerAddressNew.getEnterpriseName().equals(i.getEnterpriseName()))).map(EmisCustomerAddress::getId).collect(Collectors.toList());
|
||||
if ("1".equals(emisCustomerAddressNew.getAddressType())
|
||||
&& "0086".equals(emisCustomerAddressNew.getCountry())) {
|
||||
String newEnterpriseTaxId = emisCustomerAddressNew.getEnterpriseTaxId();
|
||||
String newEnterpriseName = emisCustomerAddressNew.getEnterpriseName();
|
||||
|
||||
List<Long> emisCustomerAddressIds = emisCustomerAddressList.stream()
|
||||
.filter(i -> {
|
||||
String existingTaxId = i.getEnterpriseTaxId();
|
||||
String existingName = i.getEnterpriseName();
|
||||
|
||||
// 如果新数据为空,则过滤掉企业信息不匹配的记录
|
||||
if (StringUtil.isBlank(newEnterpriseTaxId) || StringUtil.isBlank(newEnterpriseName)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// 如果现有数据为空,则包含在更新列表中
|
||||
if (StringUtil.isBlank(existingTaxId) || StringUtil.isBlank(existingName)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// 比较企业信息是否不匹配
|
||||
return !newEnterpriseTaxId.equals(existingTaxId) || !newEnterpriseName.equals(existingName);
|
||||
})
|
||||
.map(EmisCustomerAddress::getId)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
if (CollectionUtil.isEmpty(emisCustomerAddressIds)) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (emisCustomerAddressNew.getId() != null) {
|
||||
EmisCustomerAddress emisCustomerAddress = new EmisCustomerAddress();
|
||||
emisCustomerAddress.setId(emisCustomerAddressNew.getId());
|
||||
emisCustomerAddress.setEnterpriseTaxId(emisCustomerAddressNew.getEnterpriseTaxId());
|
||||
emisCustomerAddress.setEnterpriseName(emisCustomerAddressNew.getEnterpriseName());
|
||||
emisCustomerAddress.setEnterpriseTaxId(newEnterpriseTaxId);
|
||||
emisCustomerAddress.setEnterpriseName(newEnterpriseName);
|
||||
emisCustomerAddressMapper.updateEmisCustomerAddress(emisCustomerAddress);
|
||||
return 1;
|
||||
}
|
||||
|
||||
for (Long id : emisCustomerAddressIds) {
|
||||
EmisCustomerAddress emisCustomerAddress = new EmisCustomerAddress();
|
||||
emisCustomerAddress.setId(id);
|
||||
emisCustomerAddress.setEnterpriseTaxId(emisCustomerAddressNew.getEnterpriseTaxId());
|
||||
emisCustomerAddress.setEnterpriseName(emisCustomerAddressNew.getEnterpriseName());
|
||||
emisCustomerAddress.setEnterpriseTaxId(newEnterpriseTaxId);
|
||||
emisCustomerAddress.setEnterpriseName(newEnterpriseName);
|
||||
emisCustomerAddressMapper.updateEmisCustomerAddress(emisCustomerAddress);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user