丽知:存货基本档案修改
This commit is contained in:
parent
cb0235cb01
commit
a1c7912e3f
|
@ -150,15 +150,15 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
queryOfsSKURequestVO.setLastUpdated_start(startTimeStr);
|
queryOfsSKURequestVO.setLastUpdated_start(startTimeStr);
|
||||||
queryOfsSKURequestVO.setLastUpdated_end(endTimeStr);
|
queryOfsSKURequestVO.setLastUpdated_end(endTimeStr);
|
||||||
List<OFSSKUSearchResponse.OFSSKU> ofsskuList = queryOfsSKUs(queryOfsSKURequestVO);
|
List<OFSSKUSearchResponse.OFSSKU> ofsskuList = queryOfsSKUs(queryOfsSKURequestVO);
|
||||||
if(ofsskuList.size()==0){
|
if (ofsskuList == null || ofsskuList.size() == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
//分组排序,
|
//分组排序,
|
||||||
List<OFSSKUSearchResponse.OFSSKU> sortSkuList = groupAndSort(ofsskuList);
|
List<OFSSKUSearchResponse.OFSSKU> sortSkuList = groupAndSort(ofsskuList);
|
||||||
|
|
||||||
//过滤日志
|
//过滤日志
|
||||||
List<OFSSKUSearchResponse.OFSSKU> filterSkus = filterData(sortSkuList);
|
List<OFSSKUSearchResponse.OFSSKU> filterSkus = filterData(sortSkuList);
|
||||||
if(filterSkus.size()==0){
|
if (filterSkus.size() == 0) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
//具体实现
|
//具体实现
|
||||||
|
@ -182,7 +182,7 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
QueryOfsSKURequestVO queryOfsSKURequestVO = new QueryOfsSKURequestVO();
|
QueryOfsSKURequestVO queryOfsSKURequestVO = new QueryOfsSKURequestVO();
|
||||||
queryOfsSKURequestVO.setCode(split[0]);
|
queryOfsSKURequestVO.setCode(split[0]);
|
||||||
List<OFSSKUSearchResponse.OFSSKU> ofsskuList = queryOfsSKUs(queryOfsSKURequestVO);
|
List<OFSSKUSearchResponse.OFSSKU> ofsskuList = queryOfsSKUs(queryOfsSKURequestVO);
|
||||||
if(ofsskuList.size()==0){
|
if (ofsskuList == null || ofsskuList.size() == 0) {
|
||||||
Assert.state(false, "根据OFS SKU主档编码:{},未查询到SKU主档,请检查入参或者OFS SKU主档。", split[0]);
|
Assert.state(false, "根据OFS SKU主档编码:{},未查询到SKU主档,请检查入参或者OFS SKU主档。", split[0]);
|
||||||
}
|
}
|
||||||
//分组排序,
|
//分组排序,
|
||||||
|
@ -190,7 +190,7 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
|
|
||||||
//过滤日志
|
//过滤日志
|
||||||
List<OFSSKUSearchResponse.OFSSKU> filterSkus = filterData(sortSkuList);
|
List<OFSSKUSearchResponse.OFSSKU> filterSkus = filterData(sortSkuList);
|
||||||
if(filterSkus.size()==0){
|
if (filterSkus.size() == 0) {
|
||||||
Assert.state(false, "根据OFS SKU主档编码:{},已被推送成功,请勿重新推送。", split[0]);
|
Assert.state(false, "根据OFS SKU主档编码:{},已被推送成功,请勿重新推送。", split[0]);
|
||||||
}
|
}
|
||||||
//具体实现
|
//具体实现
|
||||||
|
@ -216,16 +216,16 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
queryOfsSKURequestVO.setLastUpdated_start(start);
|
queryOfsSKURequestVO.setLastUpdated_start(start);
|
||||||
queryOfsSKURequestVO.setLastUpdated_end(end);
|
queryOfsSKURequestVO.setLastUpdated_end(end);
|
||||||
List<OFSSKUSearchResponse.OFSSKU> ofsskuList = queryOfsSKUs(queryOfsSKURequestVO);
|
List<OFSSKUSearchResponse.OFSSKU> ofsskuList = queryOfsSKUs(queryOfsSKURequestVO);
|
||||||
if(ofsskuList.size()==0){
|
if (ofsskuList == null || ofsskuList.size() == 0) {
|
||||||
Assert.state(false,"根据期间:{} - {} 内,未查询到OFS系统中SKU主档信息,请检查。");
|
Assert.state(false, "根据期间:{} - {} 内,未查询到OFS系统中SKU主档信息,请检查。");
|
||||||
}
|
}
|
||||||
//分组排序,
|
//分组排序,
|
||||||
List<OFSSKUSearchResponse.OFSSKU> sortSkuList = groupAndSort(ofsskuList);
|
List<OFSSKUSearchResponse.OFSSKU> sortSkuList = groupAndSort(ofsskuList);
|
||||||
|
|
||||||
//过滤日志
|
//过滤日志
|
||||||
List<OFSSKUSearchResponse.OFSSKU> filterSkus = filterData(sortSkuList);
|
List<OFSSKUSearchResponse.OFSSKU> filterSkus = filterData(sortSkuList);
|
||||||
if(filterSkus.size()==0){
|
if (filterSkus.size() == 0) {
|
||||||
Assert.state(false,"根据期间:{} - {} 内询到OFS系统中SKU主档信息已全部推送,请勿重新推送。");
|
Assert.state(false, "根据期间:{} - {} 内询到OFS系统中SKU主档信息已全部推送,请勿重新推送。");
|
||||||
}
|
}
|
||||||
//具体实现
|
//具体实现
|
||||||
implement(filterSkus);
|
implement(filterSkus);
|
||||||
|
@ -239,13 +239,14 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
* 过滤成功日志
|
* 过滤成功日志
|
||||||
* rootAppPk
|
* rootAppPk
|
||||||
* [code]_[lastUpdated]
|
* [code]_[lastUpdated]
|
||||||
|
*
|
||||||
* @param ofsskuList
|
* @param ofsskuList
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<OFSSKUSearchResponse.OFSSKU> filterData(List<OFSSKUSearchResponse.OFSSKU> ofsskuList){
|
public List<OFSSKUSearchResponse.OFSSKU> filterData(List<OFSSKUSearchResponse.OFSSKU> ofsskuList) {
|
||||||
List<OFSSKUSearchResponse.OFSSKU> filterSkus = new ArrayList<>();
|
List<OFSSKUSearchResponse.OFSSKU> filterSkus = new ArrayList<>();
|
||||||
for (OFSSKUSearchResponse.OFSSKU ofssku : ofsskuList) {
|
for (OFSSKUSearchResponse.OFSSKU ofssku : ofsskuList) {
|
||||||
String rootAppPk = ofssku.getCode()+"_"+ofssku.getLastUpdated();
|
String rootAppPk = ofssku.getCode() + "_" + ofssku.getLastUpdated();
|
||||||
boolean isExis = true;
|
boolean isExis = true;
|
||||||
IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity();
|
IntegrationTaskLivingDetailsEntity integrationTaskLivingDetailsEntity = new IntegrationTaskLivingDetailsEntity();
|
||||||
integrationTaskLivingDetailsEntity.setRootAppPk(rootAppPk);
|
integrationTaskLivingDetailsEntity.setRootAppPk(rootAppPk);
|
||||||
|
@ -268,10 +269,10 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
* 注意:
|
* 注意:
|
||||||
* 可能一家公司封存则,则取消分配这家公司的存货管理档案
|
* 可能一家公司封存则,则取消分配这家公司的存货管理档案
|
||||||
*/
|
*/
|
||||||
public void implement(List<OFSSKUSearchResponse.OFSSKU> filterSkus){
|
public void implement(List<OFSSKUSearchResponse.OFSSKU> filterSkus) {
|
||||||
for (OFSSKUSearchResponse.OFSSKU sku : filterSkus) {
|
for (OFSSKUSearchResponse.OFSSKU sku : filterSkus) {
|
||||||
|
|
||||||
String PkInvbasdoc= "";
|
String PkInvbasdoc = "";
|
||||||
String url = "";
|
String url = "";
|
||||||
String mapStr = "";
|
String mapStr = "";
|
||||||
String format = sku.getLastUpdated();
|
String format = sku.getLastUpdated();
|
||||||
|
@ -284,14 +285,14 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
|
|
||||||
//查询是否存在,返回pkInvbasdoc,如果有则是修改,null则为新增
|
//查询是否存在,返回pkInvbasdoc,如果有则是修改,null则为新增
|
||||||
//查询该id再u8c是否有数据,没有则是新增,有则是修改 存货基本档案:def2-》ofs主键
|
//查询该id再u8c是否有数据,没有则是新增,有则是修改 存货基本档案:def2-》ofs主键
|
||||||
PkInvbasdoc=queryInvbasDocIsExist(sku);
|
PkInvbasdoc = queryInvbasDocIsExist(sku);
|
||||||
if (PkInvbasdoc != null) {
|
if (PkInvbasdoc != null) {
|
||||||
//修改
|
//修改
|
||||||
parentvo.setPk_invbasdoc(PkInvbasdoc);
|
parentvo.setPk_invbasdoc(PkInvbasdoc);
|
||||||
url=OverallConstant.getOverAllValue("bdinvclUpdateCode");
|
url = OverallConstant.getOverAllValue("bdinvclUpdateCode");
|
||||||
} else if (PkInvbasdoc == null) {
|
} else if (PkInvbasdoc == null) {
|
||||||
//新增
|
//新增
|
||||||
url=OverallConstant.getOverAllValue("bdinvclSaveCode");
|
url = OverallConstant.getOverAllValue("bdinvclSaveCode");
|
||||||
}
|
}
|
||||||
|
|
||||||
//def2 ofs id
|
//def2 ofs id
|
||||||
|
@ -328,14 +329,14 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
invbasdoc.setParentvo(parentvo);
|
invbasdoc.setParentvo(parentvo);
|
||||||
//子表,暂时没有要传的值
|
//子表,暂时没有要传的值
|
||||||
String jsonStr = JSONUtil.toJsonStr(invbasdoc);
|
String jsonStr = JSONUtil.toJsonStr(invbasdoc);
|
||||||
mapStr= "{\"invbasdoc\":" + jsonStr + "}";
|
mapStr = "{\"invbasdoc\":" + jsonStr + "}";
|
||||||
ZTResult ztResult = pushU8CByApiCode.pushByCode(url, mapStr);
|
ZTResult ztResult = pushU8CByApiCode.pushByCode(url, mapStr);
|
||||||
//两层判断,一层中台转发,一层u8c返回
|
//两层判断,一层中台转发,一层u8c返回
|
||||||
Attribute attribute = ztResult.getAttribute();
|
Attribute attribute = ztResult.getAttribute();
|
||||||
|
|
||||||
if ("false".equals(ztResult.getFlag())) {
|
if ("false".equals(ztResult.getFlag())) {
|
||||||
//转发失败
|
//转发失败
|
||||||
response=JSONUtil.toJsonStr(ztResult.getAttribute());
|
response = JSONUtil.toJsonStr(ztResult.getAttribute());
|
||||||
Assert.state(false, "丽知:OFS货品档案--->U8C货品档案,中台转发失败,失败原因:{}", ztResult.getAttribute());
|
Assert.state(false, "丽知:OFS货品档案--->U8C货品档案,中台转发失败,失败原因:{}", ztResult.getAttribute());
|
||||||
}
|
}
|
||||||
boolean isSuccess = false;
|
boolean isSuccess = false;
|
||||||
|
@ -357,13 +358,13 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
integrationTaskLivingDetailsEntity.setNewTransmitInfo(attribute.getData());
|
integrationTaskLivingDetailsEntity.setNewTransmitInfo(attribute.getData());
|
||||||
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
|
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
|
||||||
integrationTaskLivingDetailsEntity.setBusinessDate(format);
|
integrationTaskLivingDetailsEntity.setBusinessDate(format);
|
||||||
integrationTaskLivingDetailsEntity.setRootAppPk(sku.getCode()+"_"+sku.getLastUpdated());
|
integrationTaskLivingDetailsEntity.setRootAppPk(sku.getCode() + "_" + sku.getLastUpdated());
|
||||||
integrationTaskLivingDetailsEntity.setRootAppBill(sku.getCode());
|
integrationTaskLivingDetailsEntity.setRootAppBill(sku.getCode());
|
||||||
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
|
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
|
||||||
integrationTaskLivingDetailsEntity.setDef1(sku.getId());
|
integrationTaskLivingDetailsEntity.setDef1(sku.getId());
|
||||||
saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity);
|
saveOrUpdateBusinessLogUtil.saveOrUpdate(integrationTaskLivingDetailsEntity);
|
||||||
|
|
||||||
}catch (Exception e){
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
logger.error("推送U8C,丽知:OFS货品档案--->U8C货品档案失败,失败原因:" + e);
|
logger.error("推送U8C,丽知:OFS货品档案--->U8C货品档案失败,失败原因:" + e);
|
||||||
//失败
|
//失败
|
||||||
|
@ -376,7 +377,7 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
integrationTaskLivingDetailsEntity.setNewTransmitInfo(ErrMessage);
|
integrationTaskLivingDetailsEntity.setNewTransmitInfo(ErrMessage);
|
||||||
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
|
integrationTaskLivingDetailsEntity.setNewPushDate(new Date());
|
||||||
integrationTaskLivingDetailsEntity.setBusinessDate(format);
|
integrationTaskLivingDetailsEntity.setBusinessDate(format);
|
||||||
integrationTaskLivingDetailsEntity.setRootAppPk(sku.getCode()+"_"+sku.getLastUpdated());
|
integrationTaskLivingDetailsEntity.setRootAppPk(sku.getCode() + "_" + sku.getLastUpdated());
|
||||||
integrationTaskLivingDetailsEntity.setRootAppBill(sku.getCode());
|
integrationTaskLivingDetailsEntity.setRootAppBill(sku.getCode());
|
||||||
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
|
integrationTaskLivingDetailsEntity.setPluginId(getPluginId());
|
||||||
integrationTaskLivingDetailsEntity.setDef1(sku.getId());
|
integrationTaskLivingDetailsEntity.setDef1(sku.getId());
|
||||||
|
@ -387,65 +388,66 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public String queryInvbasDocIsExist(OFSSKUSearchResponse.OFSSKU sku){
|
public String queryInvbasDocIsExist(OFSSKUSearchResponse.OFSSKU sku) {
|
||||||
String PkInvbasdoc="";
|
String PkInvbasdoc = "";
|
||||||
BdInvbasdocEntity bdInvbasdocEntity = new BdInvbasdocEntity();
|
BdInvbasdocEntity bdInvbasdocEntity = new BdInvbasdocEntity();
|
||||||
bdInvbasdocEntity.setDr(0L);
|
bdInvbasdocEntity.setDr(0L);
|
||||||
bdInvbasdocEntity.setDef2(sku.getId());
|
bdInvbasdocEntity.setDef2(sku.getId());
|
||||||
bdInvbasdocEntity.setDataSourceCode(ProfilesActiveConstant.LETS_DATE_SOURCE);
|
bdInvbasdocEntity.setDataSourceCode(ProfilesActiveConstant.LETS_DATE_SOURCE);
|
||||||
List<BdInvbasdocEntity> bdInvbasdocEntityList = bdInvbasdocDao.query(bdInvbasdocEntity);//根据ofs id
|
List<BdInvbasdocEntity> bdInvbasdocEntityList = bdInvbasdocDao.query(bdInvbasdocEntity);//根据ofs id
|
||||||
if(bdInvbasdocEntityList.size()==0){
|
if (bdInvbasdocEntityList.size() == 0) {
|
||||||
bdInvbasdocEntity.setDef2(null);
|
bdInvbasdocEntity.setDef2(null);
|
||||||
bdInvbasdocEntity.setInvcode(sku.getCode());
|
bdInvbasdocEntity.setInvcode(sku.getCode());
|
||||||
bdInvbasdocEntity.setInvname(sku.getName());
|
bdInvbasdocEntity.setInvname(sku.getName());
|
||||||
List<BdInvbasdocEntity> bdInvbasdocEntityList1 = bdInvbasdocDao.query(bdInvbasdocEntity);//根据编码+名称
|
List<BdInvbasdocEntity> bdInvbasdocEntityList1 = bdInvbasdocDao.query(bdInvbasdocEntity);//根据编码+名称
|
||||||
if(bdInvbasdocEntityList1.size()==0){
|
if (bdInvbasdocEntityList1.size() == 0) {
|
||||||
bdInvbasdocEntity.setInvname(null);
|
bdInvbasdocEntity.setInvname(null);
|
||||||
List<BdInvbasdocEntity> bdInvbasdocEntityList2 = bdInvbasdocDao.query(bdInvbasdocEntity);//进查询编码
|
List<BdInvbasdocEntity> bdInvbasdocEntityList2 = bdInvbasdocDao.query(bdInvbasdocEntity);//进查询编码
|
||||||
if (bdInvbasdocEntityList2.size() == 0) {//编码不存在
|
if (bdInvbasdocEntityList2.size() == 0) {//编码不存在
|
||||||
return null;
|
return null;
|
||||||
} else if (bdInvbasdocEntityList2.size() == 1) {//编码存在
|
} else if (bdInvbasdocEntityList2.size() == 1) {//编码存在
|
||||||
PkInvbasdoc=bdInvbasdocEntityList2.get(0).getPkInvbasdoc();//主键
|
PkInvbasdoc = bdInvbasdocEntityList2.get(0).getPkInvbasdoc();//主键
|
||||||
}
|
}
|
||||||
}else if(bdInvbasdocEntityList1.size()==1){
|
} else if (bdInvbasdocEntityList1.size() == 1) {
|
||||||
//修改
|
//修改
|
||||||
PkInvbasdoc=bdInvbasdocEntityList1.get(0).getPkInvbasdoc();//主键
|
PkInvbasdoc = bdInvbasdocEntityList1.get(0).getPkInvbasdoc();//主键
|
||||||
}
|
}
|
||||||
}else if(bdInvbasdocEntityList.size()==1){
|
} else if (bdInvbasdocEntityList.size() == 1) {
|
||||||
//修改
|
//修改
|
||||||
PkInvbasdoc=bdInvbasdocEntityList.get(0).getPkInvbasdoc();//主键
|
PkInvbasdoc = bdInvbasdocEntityList.get(0).getPkInvbasdoc();//主键
|
||||||
}else {
|
} else {
|
||||||
//异常,存在多个
|
//异常,存在多个
|
||||||
Assert.state(false,"SKU主档编码:{},id:{}。U8C存货基本档案def2(OFS中SKU主档id)存在多个,请检查。",sku.getCode(),sku.getId());
|
Assert.state(false, "SKU主档编码:{},id:{}。U8C存货基本档案def2(OFS中SKU主档id)存在多个,请检查。", sku.getCode(), sku.getId());
|
||||||
}
|
}
|
||||||
return PkInvbasdoc;
|
return PkInvbasdoc;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 按code分组,并按lastUpdated排序
|
* 按code分组,并按lastUpdated排序
|
||||||
|
*
|
||||||
* @param ofsskuList
|
* @param ofsskuList
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<OFSSKUSearchResponse.OFSSKU> groupAndSort(List<OFSSKUSearchResponse.OFSSKU> ofsskuList){
|
public List<OFSSKUSearchResponse.OFSSKU> groupAndSort(List<OFSSKUSearchResponse.OFSSKU> ofsskuList) {
|
||||||
List<OFSSKUSearchResponse.OFSSKU> sortSkus=new ArrayList<>();
|
List<OFSSKUSearchResponse.OFSSKU> sortSkus = new ArrayList<>();
|
||||||
|
|
||||||
//根据code进行分组
|
//根据code进行分组
|
||||||
Map<String, List<OFSSKUSearchResponse.OFSSKU>> collectMapByCode =
|
Map<String, List<OFSSKUSearchResponse.OFSSKU>> collectMapByCode =
|
||||||
ofsskuList.stream().collect(Collectors.groupingBy(OFSSKUSearchResponse.OFSSKU::getCode));
|
ofsskuList.stream().collect(Collectors.groupingBy(OFSSKUSearchResponse.OFSSKU::getCode));
|
||||||
|
|
||||||
collectMapByCode.forEach((k,v)->{
|
collectMapByCode.forEach((k, v) -> {
|
||||||
//降序排序 (从新到旧),根据最后修改时间倒排
|
//降序排序 (从新到旧),根据最后修改时间倒排
|
||||||
List<OFSSKUSearchResponse.OFSSKU> sorted =
|
List<OFSSKUSearchResponse.OFSSKU> sorted =
|
||||||
v.stream().sorted(Comparator.comparing(OFSSKUSearchResponse.OFSSKU::getLastUpdated).reversed()).collect(Collectors.toList());
|
v.stream().sorted(Comparator.comparing(OFSSKUSearchResponse.OFSSKU::getLastUpdated).reversed()).collect(Collectors.toList());
|
||||||
|
|
||||||
//排除status==0的
|
//排除status==0的
|
||||||
for (int i = 0; i < sorted.size(); i++) {
|
for (int i = 0; i < sorted.size(); i++) {
|
||||||
if("0".equals(sorted.get(i).getStatus())){
|
if ("0".equals(sorted.get(i).getStatus())) {
|
||||||
sorted.remove(i);
|
sorted.remove(i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(sorted.size()!=0){
|
if (sorted.size() != 0) {
|
||||||
sortSkus.add(sorted.get(0));//只取最后修改的一个
|
sortSkus.add(sorted.get(0));//只取最后修改的一个
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -455,7 +457,7 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
/**
|
/**
|
||||||
* 封存存货基本档案
|
* 封存存货基本档案
|
||||||
*/
|
*/
|
||||||
public void sealImplement(String code){
|
public void sealImplement(String code) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -497,6 +499,7 @@ public class SKUPluginInitializer extends PluginBaseEntity {
|
||||||
}
|
}
|
||||||
return all;
|
return all;
|
||||||
}
|
}
|
||||||
|
|
||||||
private InvBasDocVO resultDataHandle(String resultData) {
|
private InvBasDocVO resultDataHandle(String resultData) {
|
||||||
try {
|
try {
|
||||||
if (resultData != null && !"".equals(resultData)) {
|
if (resultData != null && !"".equals(resultData)) {
|
||||||
|
|
Loading…
Reference in New Issue