添加 集团推送接口
This commit is contained in:
@ -0,0 +1,10 @@
|
||||
package com.chinaunicom.zyhy.ebtp.supplier.base.service;
|
||||
|
||||
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase;
|
||||
|
||||
public interface IDtService {
|
||||
|
||||
|
||||
String maintain( CoscoSupplierBase coscoSupplierBase);
|
||||
}
|
@ -0,0 +1,118 @@
|
||||
package com.chinaunicom.zyhy.ebtp.supplier.base.service.impl;
|
||||
|
||||
import com.chinaunicom.mall.ebtp.common.base.client.DictRegionInternationalClient;
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.*;
|
||||
import com.chinaunicom.mall.ebtp.common.dt.client.DtFeignClient;
|
||||
import com.chinaunicom.mall.ebtp.common.dt.entity.DtMaintainRequest;
|
||||
import com.chinaunicom.mall.ebtp.common.dt.entity.DtMaintainRespone;
|
||||
import com.chinaunicom.mall.ebtp.common.dt.entity.maintain.Update;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.base.constant.CoscoType;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IDtService;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.common.CoscoDateUtils;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.coscosupplier.entity.CoscoSupplierBase;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
|
||||
@Service
|
||||
public class DtServiceImpl implements IDtService {
|
||||
|
||||
@Autowired
|
||||
private DtFeignClient dtFeignClient;
|
||||
@Autowired
|
||||
private DictRegionInternationalClient dictRegionInternationalClient;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 参考:客商主数据平台接口说明书(客户)-征求意见稿V2.3.docx(上游).docx
|
||||
* 客户数据单条维护接口
|
||||
* POST /mdm/maintain
|
||||
* opType:
|
||||
* C新增
|
||||
* U更新
|
||||
* D停用(冻结)
|
||||
* E启用(解除冻结)
|
||||
* S保存(用于不便区分操作类型的业务场景)
|
||||
* K校验(进行合规校验和标准校验,不正式写入)
|
||||
参数:
|
||||
{
|
||||
"masterDataCode": "ods_custsup_customer_vendor_info",
|
||||
"opType": "C",
|
||||
"updateColumns": {
|
||||
"sourceId": "20001DERJ291",
|
||||
"sourceStatus": "1",
|
||||
"sourceCompany": "9999100300",
|
||||
"sourceSystem": "XT20210873086",
|
||||
"code": "30911103027886014929",
|
||||
"name": "联通数字科技有限公司",
|
||||
"nameLanguage": "ZH",
|
||||
"localName": "联通数字科技有限公司",
|
||||
"nature": "20",
|
||||
"country": "CN",
|
||||
"certificateType": "10",
|
||||
"certificateId": "911103027886014929",
|
||||
"organizationType": "30",
|
||||
"createdDate": "2025-06-18 16:47:21",
|
||||
"lastModifiedUser": "IRIS4",
|
||||
"lastModifiedDate": "2025-06-18 16:47:21"
|
||||
}
|
||||
}
|
||||
返回:
|
||||
{
|
||||
"code":200,
|
||||
"message":"success",
|
||||
"success": true,
|
||||
"data":{
|
||||
"sourceID":"20001DERJ291",
|
||||
"sapCode":"1000284811"
|
||||
}
|
||||
}
|
||||
*/
|
||||
@Override
|
||||
public String maintain(CoscoSupplierBase coscoSupplierBase) {
|
||||
|
||||
DtMaintainRequest dtMaintainRequest = new DtMaintainRequest();
|
||||
Update updateColumns = new Update();
|
||||
dtMaintainRequest.setMasterDataCode("ods_custsup_customer_vendor_info");//标识
|
||||
dtMaintainRequest.setOpType("C");//新增
|
||||
updateColumns.setSourceId(coscoSupplierBase.getId());//供应商id
|
||||
updateColumns.setSourceStatus("1");//供应商状态1正常
|
||||
updateColumns.setSourceCompany("9999100300");//数据来源公司
|
||||
updateColumns.setSourceSystem("XT20210873086");//数据来源系统
|
||||
updateColumns.setCode(coscoSupplierBase.getUnifiedCode());//供应商唯一标识码
|
||||
|
||||
if(CoscoType.SUPPLIER_TYPE_DVS.equals(coscoSupplierBase.getSupplierType())){
|
||||
//境内
|
||||
updateColumns.setName(coscoSupplierBase.getName());//供应商名称
|
||||
updateColumns.setNameLanguage("ZH");//供应商语言
|
||||
updateColumns.setLocalName(coscoSupplierBase.getName());//供应商本国名称
|
||||
updateColumns.setCountry("CH");//供应商国家代码
|
||||
updateColumns.setCertificateType("10");//证件类型
|
||||
}else if(CoscoType.SUPPLIER_TYPE_OVS.equals(coscoSupplierBase.getSupplierType())){
|
||||
//境外
|
||||
updateColumns.setName(coscoSupplierBase.getNameEn());
|
||||
updateColumns.setNameLanguage("EN");//语言
|
||||
updateColumns.setCountry(dictRegionInternationalClient.get(coscoSupplierBase.getNation()).getData().getAb());
|
||||
updateColumns.setLocalName(coscoSupplierBase.getNameEn());
|
||||
updateColumns.setCertificateType("20");
|
||||
}else{
|
||||
//个人
|
||||
updateColumns.setName(coscoSupplierBase.getName());//供应商名称
|
||||
updateColumns.setNameLanguage("ZH");//供应商语言
|
||||
updateColumns.setLocalName(coscoSupplierBase.getName());//供应商本国名称
|
||||
updateColumns.setCountry("CH");//供应商国家代码
|
||||
updateColumns.setCertificateType("40");//证件类型
|
||||
}
|
||||
updateColumns.setCertificateId(coscoSupplierBase.getUnifiedCode());//3合一,统一信用代码、身份证号、税号
|
||||
updateColumns.setNature("20");//供应商
|
||||
updateColumns.setOrganizationType("30");//第三方供应商
|
||||
updateColumns.setCreatedDate(CoscoDateUtils.getTime());
|
||||
updateColumns.setLastModifiedUser("IRIS4");//最后更新人
|
||||
updateColumns.setLastModifiedDate(CoscoDateUtils.getTime());//最后更新时间
|
||||
dtMaintainRequest.setUpdateColumns(updateColumns);
|
||||
BaseResponse<DtMaintainRespone> dtMaintainResponeBaseResponse = dtFeignClient.maintain(dtMaintainRequest);
|
||||
return dtMaintainResponeBaseResponse.getData().getSapCode();
|
||||
}
|
||||
}
|
@ -8,6 +8,7 @@ import com.chinaunicom.mall.ebtp.common.base.entity.SysOrgVO;
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.SysUser;
|
||||
import com.chinaunicom.mall.ebtp.common.base.util.TokenUtil;
|
||||
import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IDtService;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IOrgService;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.base.service.IUserService;
|
||||
import com.chinaunicom.zyhy.ebtp.supplier.common.CoscoDateUtils;
|
||||
@ -68,6 +69,9 @@ public class CoscoAccessWorkServiceImpl implements ICoscoAccessWorkService {
|
||||
private IOrgService orgService;
|
||||
@Autowired
|
||||
private IUserService userService;
|
||||
@Autowired
|
||||
private IDtService dtService;
|
||||
|
||||
|
||||
/**
|
||||
* 供应商准入管理列表
|
||||
@ -715,8 +719,25 @@ public class CoscoAccessWorkServiceImpl implements ICoscoAccessWorkService {
|
||||
coscoAccessSupplierCategory.setLastUpdateTime(date);
|
||||
coscoAccessSupplierCategoryInsertList.add(coscoAccessSupplierCategory);
|
||||
}
|
||||
|
||||
//调用集团推送接口
|
||||
CoscoSupplierBase coscoSupplierBase = coscoSupplierBaseMapper.selectCoscoSupplierBaseById(accessSupplier.getSupplierId());
|
||||
String sapCode = "";
|
||||
if(StringUtils.isEmpty(coscoSupplierBase.getSapCode())){
|
||||
sapCode = dtService.maintain(coscoSupplierBase);
|
||||
}
|
||||
//需要修改供应商id结合
|
||||
supplierBaseIdList.add(accessSupplier.getSupplierId());
|
||||
//supplierBaseIdList.add(accessSupplier.getSupplierId());
|
||||
|
||||
//批量修改供应商基础信息状态---需要修改sapCode
|
||||
CoscoSupplierBase batchUpCoscoSupplierBase = new CoscoSupplierBase();
|
||||
batchUpCoscoSupplierBase.setAccessStatus(CoscoType.ACCESS_STATUS_YZR);
|
||||
batchUpCoscoSupplierBase.setId(accessSupplier.getSupplierId());
|
||||
batchUpCoscoSupplierBase.setSapCode(sapCode);
|
||||
batchUpCoscoSupplierBase.setUpdateTime(date);
|
||||
batchUpCoscoSupplierBase.setLastUpdateTime(date);
|
||||
coscoSupplierBaseMapper.updateCoscoSupplierBase(batchUpCoscoSupplierBase);
|
||||
|
||||
|
||||
//需要修改准入供应商表id结合
|
||||
accessSupplierIdList.add(accessSupplier.getId());
|
||||
@ -727,12 +748,7 @@ public class CoscoAccessWorkServiceImpl implements ICoscoAccessWorkService {
|
||||
//批量新增已准入品类
|
||||
coscoAccessSupplierCategoryService.batchCoscoAccessSupplierCategory(coscoAccessSupplierCategoryInsertList);
|
||||
|
||||
//批量修改供应商基础信息状态
|
||||
CoscoSupplierBase batchUpCoscoSupplierBase = new CoscoSupplierBase();
|
||||
batchUpCoscoSupplierBase.setAccessStatus(CoscoType.ACCESS_STATUS_YZR);
|
||||
batchUpCoscoSupplierBase.setIdList(supplierBaseIdList);
|
||||
batchUpCoscoSupplierBase.setUpdateTime(date);
|
||||
coscoSupplierBaseMapper.updateCoscoSupplierBaseByIds(batchUpCoscoSupplierBase);
|
||||
|
||||
|
||||
//修改准入供应商表状态
|
||||
CoscoAccessSupplier coscoAccessSupplierUp = new CoscoAccessSupplier();
|
||||
|
@ -896,7 +896,7 @@
|
||||
<if test="fillinBy != null">fillin_by =
|
||||
#{fillinBy},
|
||||
</if>
|
||||
<if test="sapCode != null">sap_code =
|
||||
<if test="sapCode != null and sapCode != ''">sap_code =
|
||||
#{sapCode},
|
||||
</if>
|
||||
<if test="delFlag != null and delFlag != ''">del_flag =
|
||||
|
Reference in New Issue
Block a user