fix: 修改文件名大小写

This commit is contained in:
liuy 2025-08-25 16:50:32 +08:00
parent 82f0c73c49
commit d4e0a4417c
2 changed files with 280 additions and 273 deletions

View File

@ -971,27 +971,25 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
}
//合并后如果数量为0则过滤掉
// if ("0".equals(passiveStorageSonDetailsDto.getGroupShipQty().stripTrailingZeros().toPlainString())) {
// continue;
// }
if (!"0".equals(passiveStorageSonDetailsDto.getGroupShipQty().stripTrailingZeros().toPlainString())) {
//推送u8c
List<SaleorderRequestDto> saleorderRequestDtoList = new ArrayList<>();
saleorderRequestDtoList.add(saleorderRequestDto);
Map<String, List<SaleorderRequestDto>> stringStringMap = new HashMap<>();
stringStringMap.put("saleorder", saleorderRequestDtoList);
//推送u8c
List<SaleorderRequestDto> saleorderRequestDtoList = new ArrayList<>();
saleorderRequestDtoList.add(saleorderRequestDto);
Map<String, List<SaleorderRequestDto>> stringStringMap = new HashMap<>();
stringStringMap.put("saleorder", saleorderRequestDtoList);
SoSaleResultRootDto soSaleResultRootDto = sendU8CTOCOrder(JSON.toJSONString(stringStringMap));
String vreceiptcode = null;
String pk_corp = null;
String csaleid = null;
if (soSaleResultRootDto != null && soSaleResultRootDto.getParentvo() != null) {
vreceiptcode = soSaleResultRootDto.getParentvo().getVreceiptcode();
pk_corp = soSaleResultRootDto.getParentvo().getPk_corp();
csaleid = soSaleResultRootDto.getParentvo().getCsaleid();
SoSaleResultRootDto soSaleResultRootDto = sendU8CTOCOrder(JSON.toJSONString(stringStringMap));
String vreceiptcode = null;
String pk_corp = null;
String csaleid = null;
if (soSaleResultRootDto != null && soSaleResultRootDto.getParentvo() != null) {
vreceiptcode = soSaleResultRootDto.getParentvo().getVreceiptcode();
pk_corp = soSaleResultRootDto.getParentvo().getPk_corp();
csaleid = soSaleResultRootDto.getParentvo().getCsaleid();
}
logger.info("TOC红字销售订单编号{} 主键:{} 销售公司:{}", vreceiptcode, csaleid, pk_corp);
updateSuccessOrFail1(value, "Y", "success", vreceiptcode, csaleid);
}
logger.info("TOC红字销售订单编号{} 主键:{} 销售公司:{}", vreceiptcode, csaleid, pk_corp);
updateSuccessOrFail1(value, "Y", "success", vreceiptcode, csaleid);
} catch (Exception e) {
//记录失败
logger.error("无源件业务转换成U8C对象过程中、或者单据推送到U8C出现异常", e);
@ -1079,8 +1077,10 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
BigDecimal groupTotalPayAmount1 = passiveStorageSonDetailsDto2.getGroupTotalPayAmount();
BigDecimal groupShipQty = passiveStorageSonDetailsDto2.getGroupShipQty();
//是否推送红字销售订单
boolean isPushU8CSaleOrder = false;
//当金额>0但数量为0时推送红字应收单
// if (groupTotalPayAmount1 != null && groupShipQty != null && groupTotalPayAmount1.compareTo(BigDecimal.ZERO) > 0 && groupShipQty.compareTo(BigDecimal.ZERO) == 0) {
try {
BdBusitypeEntity bdBusitypeEntity = u8cOperationFlowV4();
// 生成业务日期
@ -1210,15 +1210,9 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
}
}
//如果实推总金额>0单数量等于0
// for (int i = 0; i < pushScenarioType.size(); i++) {
// ArapDjzbVO.Childrenn childrenn = pushScenarioType.get(i);
// childrenn.setJfbbje("1");
// }
// groupShipQty = new BigDecimal("0");
if ((filterJfbbjeIncludingTax(pushScenarioType)) && groupShipQty.compareTo(BigDecimal.ZERO) == 0) {
List<ArapDjzbVO.Childrenn> childrenns = filterZeroJfbbje(pushScenarioType);
if (childrenns != null && childrenns.size() > 0) {
if (childrenns != null && childrenns.size() > 0 && !"A".equals(newState)) {
// 推送U8C
List<ArapDjzbVO> arapDjzbVOList = new ArrayList<>();
ArapDjzbVO arapDjzbVO = new ArapDjzbVO();
@ -1239,8 +1233,12 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
}
logger.info("TOC红字应收单{} 应收单主键:{} 销售公司:{}", djbh, vouchid, dwbm);
// 记录同步状态
updateSuccessOrFail3(value, "Y", "success", djbh, vouchid, value.get(0).getStorageTimeStamp());
updateSuccessOrFail3(value, "A", "success", djbh, vouchid, value.get(0).getStorageTimeStamp());
} else {
updateSuccessOrFail3(value, "N", "不符合条件,不推红字应收单", null, null, value.get(0).getStorageTimeStamp());
}
} else {
isPushU8CSaleOrder = true;
}
} catch (Exception e) {
logger.error("TOC红字应收单转换成U8C对象过程中、或者单据推送到U8C出现异常", e);
@ -1251,233 +1249,208 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
}
updateSuccessOrFail3(value, "N", message, null, null, value.get(0).getStorageTimeStamp());
}
// }
//当金额大于或者等于0数量大于0推送销售订单
// if (groupTotalPayAmount1 != null && groupShipQty != null && groupTotalPayAmount1.compareTo(BigDecimal.ZERO) >= 0 && groupShipQty.compareTo(BigDecimal.ZERO) > 0) {
try {
String generateBusinessDate = value.get(0).getTargetBusinessDate().substring(0, 10);
if (isPushU8CSaleOrder) {
try {
String generateBusinessDate = value.get(0).getTargetBusinessDate().substring(0, 10);
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
saleorderRequestParentDto.setDbilldate(generateBusinessDate);//单据日期
saleorderRequestParentDto.setBretinvflag("Y");//退货标记
saleorderRequestParentDto.setCbiztype(bdBusitypeEntity1.getPkBusitype());//业务流程
saleorderRequestParentDto.setCcalbodyid(bdCalbodyEntity.getPkCalbody());//库存组织
saleorderRequestParentDto.setCcustomerid(bdCumandocEntity.getPkCumandoc());//客户=开票单位=收货单位=表体收货单位=收货单位
saleorderRequestParentDto.setCdeptid(bdDeptdocEntity.getPkDeptdoc());//部门
saleorderRequestParentDto.setCemployeeid(null);//业务员
saleorderRequestParentDto.setCoperatorid(OverallConstant.getOverAllValue("u8cApiZdrPK"));//制单人
saleorderRequestParentDto.setCreceiptcorpid(bdCumandocEntity.getPkCumandoc());//开票单位
saleorderRequestParentDto.setCreceiptcustomerid(bdCumandocEntity.getPkCumandoc());//收货单位
saleorderRequestParentDto.setCsalecorpid(bdSalestruEntity.getCsalestruid());//销售组织
saleorderRequestParentDto.setCwarehouseid(bdStordocEntity.getPkStordoc());//仓库
saleorderRequestParentDto.setDapprovedate(generateBusinessDate);//审核日期
saleorderRequestParentDto.setNdiscountrate("100.000000");//整单折扣
saleorderRequestParentDto.setPk_corp(bdCorpEntity.getPkCorp());//公司id
//汇总单号=汇总维度
saleorderRequestParentDto.setVdef18(key);
//平台
saleorderRequestParentDto.setPk_defdoc2(platformArchives.getPkDefdoc());
saleorderRequestParentDto.setVdef2(platformArchives.getDocname());
saleorderRequestParentDto.setVdef17(ProfilesActiveConstant.sourceSystem1);//来源系统
SaleorderRequestDto saleorderRequestDto = new SaleorderRequestDto();
SaleorderRequestParentDto saleorderRequestParentDto = new SaleorderRequestParentDto();
saleorderRequestParentDto.setDbilldate(generateBusinessDate);//单据日期
saleorderRequestParentDto.setBretinvflag("Y");//退货标记
saleorderRequestParentDto.setCbiztype(bdBusitypeEntity1.getPkBusitype());//业务流程
saleorderRequestParentDto.setCcalbodyid(bdCalbodyEntity.getPkCalbody());//库存组织
saleorderRequestParentDto.setCcustomerid(bdCumandocEntity.getPkCumandoc());//客户=开票单位=收货单位=表体收货单位=收货单位
saleorderRequestParentDto.setCdeptid(bdDeptdocEntity.getPkDeptdoc());//部门
saleorderRequestParentDto.setCemployeeid(null);//业务员
saleorderRequestParentDto.setCoperatorid(OverallConstant.getOverAllValue("u8cApiZdrPK"));//制单人
saleorderRequestParentDto.setCreceiptcorpid(bdCumandocEntity.getPkCumandoc());//开票单位
saleorderRequestParentDto.setCreceiptcustomerid(bdCumandocEntity.getPkCumandoc());//收货单位
saleorderRequestParentDto.setCsalecorpid(bdSalestruEntity.getCsalestruid());//销售组织
saleorderRequestParentDto.setCwarehouseid(bdStordocEntity.getPkStordoc());//仓库
saleorderRequestParentDto.setDapprovedate(generateBusinessDate);//审核日期
saleorderRequestParentDto.setNdiscountrate("100.000000");//整单折扣
saleorderRequestParentDto.setPk_corp(bdCorpEntity.getPkCorp());//公司id
//汇总单号=汇总维度
saleorderRequestParentDto.setVdef18(key);
//平台
saleorderRequestParentDto.setPk_defdoc2(platformArchives.getPkDefdoc());
saleorderRequestParentDto.setVdef2(platformArchives.getDocname());
saleorderRequestParentDto.setVdef17(ProfilesActiveConstant.sourceSystem1);//来源系统
//收发类别
saleorderRequestParentDto.setPk_defdoc3(bdRdclEntity.getPkRdcl());
saleorderRequestParentDto.setVdef3(bdRdclEntity.getRdname());
//收发类别
saleorderRequestParentDto.setPk_defdoc3(bdRdclEntity.getPkRdcl());
saleorderRequestParentDto.setVdef3(bdRdclEntity.getRdname());
//2024年8月8日 17:17:58 店铺档案自定义项1先不传后续维护好之后再传!
//店铺
saleorderRequestParentDto.setPk_defdoc1(shopArchives.getPkDefdoc());
saleorderRequestParentDto.setVdef1(shopArchives.getDocname());
//2024年8月8日 17:17:58 店铺档案自定义项1先不传后续维护好之后再传!
//店铺
saleorderRequestParentDto.setPk_defdoc1(shopArchives.getPkDefdoc());
saleorderRequestParentDto.setVdef1(shopArchives.getDocname());
//单据红字标识
saleorderRequestParentDto.setPk_defdoc16(OverallConstant.getOverAllValue("u8c自定义项档案-单据红字标识-Y主键"));
saleorderRequestParentDto.setVdef16(OverallConstant.getOverAllValue("u8c自定义项档案-单据红字标识-Y名称"));
//单据红字标识
saleorderRequestParentDto.setPk_defdoc16(OverallConstant.getOverAllValue("u8c自定义项档案-单据红字标识-Y主键"));
saleorderRequestParentDto.setVdef16(OverallConstant.getOverAllValue("u8c自定义项档案-单据红字标识-Y名称"));
//售后类型标识
saleorderRequestParentDto.setPk_defdoc8(OverallConstant.getOverAllValue("售后类型标识-TOC无源件-主键"));
saleorderRequestParentDto.setVdef8(OverallConstant.getOverAllValue("售后类型标识-TOC无源件-名称"));
//售后类型标识
saleorderRequestParentDto.setPk_defdoc8(OverallConstant.getOverAllValue("售后类型标识-TOC无源件-主键"));
saleorderRequestParentDto.setVdef8(OverallConstant.getOverAllValue("售后类型标识-TOC无源件-名称"));
saleorderRequestDto.setParentvo(saleorderRequestParentDto);
saleorderRequestDto.setParentvo(saleorderRequestParentDto);
List<SaleorderRequestChildrenDto> saleorderRequestChildrenDtoList = new ArrayList<>();
saleorderRequestDto.setChildrenvo(saleorderRequestChildrenDtoList);
List<SaleorderRequestChildrenDto> saleorderRequestChildrenDtoList = new ArrayList<>();
saleorderRequestDto.setChildrenvo(saleorderRequestChildrenDtoList);
//验证是否为指定的店铺如果为true则取结存价
// Boolean isCheckShopChoose = balanceUnitPriceUtil.checkOfsShop(header.getStoreCode());
//把汇总好的出库单明细行合并成一行
// PassiveStorageSonDetailsDto2 passiveStorageSonDetailsDto2 = groupMergeDetailedRows2(value, isCheckShopChoose);
//存货管理档案取发货公司的存货管理档案
BdInvmandocEntity bdInvmandocEntity = value.get(0).getBdInvmandocEntity();
//存货基础档案
BdInvbasdocEntity bdInvbasdocEntity = value.get(0).getBdInvbasdocEntity();
//根据存货基础档案编码查询当前存货的税率
BdTaxitemsEntity bdTaxitemsEntity1 = value.get(0).getBdTaxitemsEntity();
//查询收支项目
// BdInvclEntity bdInvclEntity = queryU8CEntityUtil.queryBdInvbasdocByBdInvcl(bdInvbasdocEntity);
// BdCostsubjEntity bdCostsubjEntity = queryU8CEntityUtil.queryBdCostsubj(bdInvclEntity);
// String tax = new BigDecimal(bdTaxitemsEntity1.getTaxratio()).divide(new BigDecimal(100), 20, BigDecimal.ROUND_HALF_UP).setScale(2, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString();
// BigDecimal noriginalcurprice = null;//无税单价
// BigDecimal noriginalcurmny = null;//无税金额
// BigDecimal noriginalcurtaxprice = null;//含税单价
// BigDecimal noriginalcursummny = null;//价税合计
// BigDecimal noriginalcurtaxmny = null;//税额=价税合计-无税金额
// try {
// noriginalcurtaxprice = passiveStorageSonDetailsDto2.getGroupTotalPayAmount().divide(passiveStorageSonDetailsDto2.getGroupShipQty(), 20, BigDecimal.ROUND_HALF_UP).setScale(4, BigDecimal.ROUND_HALF_UP);
// noriginalcurprice = noriginalcurtaxprice.divide(new BigDecimal(1).add(new BigDecimal(tax)), 20, BigDecimal.ROUND_HALF_UP).setScale(4, BigDecimal.ROUND_HALF_UP);
// noriginalcurmny = noriginalcurprice.multiply(passiveStorageSonDetailsDto2.getGroupShipQty()).setScale(2, BigDecimal.ROUND_HALF_UP);
// noriginalcursummny = noriginalcurtaxprice.multiply(passiveStorageSonDetailsDto2.getGroupShipQty()).setScale(2, BigDecimal.ROUND_HALF_UP);
// noriginalcurtaxmny = noriginalcursummny.subtract(noriginalcurmny).setScale(2, BigDecimal.ROUND_HALF_UP);
// } catch (Exception e) {
// logger.error("TOC退货-确认收入,金额计算错误", e);
// Assert.state(false, "U8C红字销售订单金额计算错误原因{}", e.getMessage());
// }
//存货管理档案取发货公司的存货管理档案
BdInvmandocEntity bdInvmandocEntity = value.get(0).getBdInvmandocEntity();
//存货基础档案
BdInvbasdocEntity bdInvbasdocEntity = value.get(0).getBdInvbasdocEntity();
//根据存货基础档案编码查询当前存货的税率
BdTaxitemsEntity bdTaxitemsEntity1 = value.get(0).getBdTaxitemsEntity();
// 判断是否为赠品
Boolean isblargessflag = false;
if ("0".equals(passiveStorageSonDetailsDto2.getGroupTotalPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString())) {
isblargessflag = true;
}
Boolean isblargessflag = false;
if ("0".equals(passiveStorageSonDetailsDto2.getGroupTotalPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString())) {
isblargessflag = true;
}
//合并后如果数量为0则过滤掉
// if ("0".equals(passiveStorageSonDetailsDto2.getGroupShipQty().stripTrailingZeros().toPlainString())) {
// continue;
// }
SaleorderRequestChildrenDto saleorderRequestChildrenDto = new SaleorderRequestChildrenDto();
saleorderRequestChildrenDto.setBlargessflag(isblargessflag);//是否赠品
saleorderRequestChildrenDto.setCadvisecalbodyid(bdCalbodyEntity.getPkCalbody());//发货库存组织
saleorderRequestChildrenDto.setCbodywarehouseid(bdStordocEntity.getPkStordoc());//发货仓库
saleorderRequestChildrenDto.setCconsigncorpid(deliverGoodsCorp.getPkCorp());//发货公司
saleorderRequestChildrenDto.setCcurrencytypeid("00010000000000000001");//币种
saleorderRequestChildrenDto.setCinventoryid(bdInvmandocEntity.getPkInvmandoc());//存货id
saleorderRequestChildrenDto.setCreceiptcorpid(bdCumandocEntity.getPkCumandoc());//收货单位
saleorderRequestChildrenDto.setDconsigndate(generateBusinessDate);//计划发货日期
saleorderRequestChildrenDto.setDdeliverdate(generateBusinessDate);// 要求收货日期
saleorderRequestChildrenDto.setNexchangeotobrate("1.00000000");//折本汇率
saleorderRequestChildrenDto.setNitemdiscountrate("100.000000");//单品折扣
saleorderRequestChildrenDto.setNnumber("-" + passiveStorageSonDetailsDto2.getGroupShipQty().stripTrailingZeros().toPlainString());//数量
saleorderRequestChildrenDto.setNoriginalcurdiscountmny("0");//折扣额
SaleorderRequestChildrenDto saleorderRequestChildrenDto = new SaleorderRequestChildrenDto();
saleorderRequestChildrenDto.setBlargessflag(isblargessflag);//是否赠品
saleorderRequestChildrenDto.setCadvisecalbodyid(bdCalbodyEntity.getPkCalbody());//发货库存组织
saleorderRequestChildrenDto.setCbodywarehouseid(bdStordocEntity.getPkStordoc());//发货仓库
saleorderRequestChildrenDto.setCconsigncorpid(deliverGoodsCorp.getPkCorp());//发货公司
saleorderRequestChildrenDto.setCcurrencytypeid("00010000000000000001");//币种
saleorderRequestChildrenDto.setCinventoryid(bdInvmandocEntity.getPkInvmandoc());//存货id
saleorderRequestChildrenDto.setCreceiptcorpid(bdCumandocEntity.getPkCumandoc());//收货单位
saleorderRequestChildrenDto.setDconsigndate(generateBusinessDate);//计划发货日期
saleorderRequestChildrenDto.setDdeliverdate(generateBusinessDate);// 要求收货日期
saleorderRequestChildrenDto.setNexchangeotobrate("1.00000000");//折本汇率
saleorderRequestChildrenDto.setNitemdiscountrate("100.000000");//单品折扣
saleorderRequestChildrenDto.setNnumber("-" + passiveStorageSonDetailsDto2.getGroupShipQty().stripTrailingZeros().toPlainString());//数量
saleorderRequestChildrenDto.setNoriginalcurdiscountmny("0");//折扣额
// saleorderRequestChildrenDto.setNoriginalcurmny("-" + noriginalcurmny.stripTrailingZeros().toPlainString());//无税金额
// saleorderRequestChildrenDto.setNoriginalcurnetprice(noriginalcurprice.stripTrailingZeros().toPlainString());//无税净价
// saleorderRequestChildrenDto.setNoriginalcurprice(noriginalcurprice.stripTrailingZeros().toPlainString());//无税单价
// saleorderRequestChildrenDto.setNoriginalcursummny("-" + noriginalcursummny.stripTrailingZeros().toPlainString());//价税合计
if (isblargessflag) {
saleorderRequestChildrenDto.setNoriginalcursummny("0");
} else {
saleorderRequestChildrenDto.setNoriginalcursummny("-" + passiveStorageSonDetailsDto2.getGroupTotalPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString());//价税合计
}
if (isblargessflag) {
saleorderRequestChildrenDto.setNoriginalcursummny("0");
} else {
saleorderRequestChildrenDto.setNoriginalcursummny("-" + passiveStorageSonDetailsDto2.getGroupTotalPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString());//价税合计
}
// saleorderRequestChildrenDto.setNoriginalcurtaxmny("-" + noriginalcurtaxmny.stripTrailingZeros().toPlainString());//税额
// saleorderRequestChildrenDto.setNoriginalcurtaxnetprice(noriginalcurtaxprice.stripTrailingZeros().toPlainString());//含税净价
// saleorderRequestChildrenDto.setNoriginalcurtaxprice(noriginalcurtaxprice.stripTrailingZeros().toPlainString());//含税单价
// saleorderRequestChildrenDto.setNtaxrate(new BigDecimal(bdTaxitemsEntity1.getTaxratio()).stripTrailingZeros().toPlainString());//税率
// saleorderRequestChildrenDto.setVdef2(bdCostsubjEntity.getCostname());//收支项目
// saleorderRequestChildrenDto.setPk_defdoc2(bdCostsubjEntity.getPkCostsubj());
//如果优惠金额为0则传0
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef4().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef4("-" + passiveStorageSonDetailsDto2.getVdef4().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef4("0");
}
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef5().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef5("-" + passiveStorageSonDetailsDto2.getVdef5().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef5("0");
}
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef6().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef6("-" + passiveStorageSonDetailsDto2.getVdef6().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef6("0");
}
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef7().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef7("-" + passiveStorageSonDetailsDto2.getVdef7().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef7("0");
}
saleorderRequestChildrenDtoList.add(saleorderRequestChildrenDto);
//如果优惠金额为0则传0
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef4().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef4("-" + passiveStorageSonDetailsDto2.getVdef4().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef4("0");
}
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef5().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef5("-" + passiveStorageSonDetailsDto2.getVdef5().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef5("0");
}
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef6().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef6("-" + passiveStorageSonDetailsDto2.getVdef6().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef6("0");
}
if (!"0".equals(passiveStorageSonDetailsDto2.getVdef7().stripTrailingZeros().toPlainString())) {
saleorderRequestChildrenDto.setVdef7("-" + passiveStorageSonDetailsDto2.getVdef7().stripTrailingZeros().toPlainString());
} else {
saleorderRequestChildrenDto.setVdef7("0");
}
saleorderRequestChildrenDtoList.add(saleorderRequestChildrenDto);
//如果合并后的金额为0则不传到U8C
Assert.notNull(passiveStorageSonDetailsDto2.getGroupTotalPayAmount(), "goodsRertunSonDetailsDto.getGroupTotalPayAmount()不能为空!");
//如果合并后的金额为0则不传到U8C
Assert.notNull(passiveStorageSonDetailsDto2.getGroupTotalPayAmount(), "goodsRertunSonDetailsDto.getGroupTotalPayAmount()不能为空!");
// BigDecimal groupTotalPayAmount = passiveStorageSonDetailsDto2.getGroupTotalPayAmount().setScale(2, BigDecimal.ROUND_HALF_UP);
// if ("0".equals(groupTotalPayAmount.stripTrailingZeros().toPlainString())) {
// continue;
// }
//退货没有邮费金额已经向万万确认
//平台优惠
if (passiveStorageSonDetailsDto2.getVdef4() != null) {
BigDecimal vdef4 = passiveStorageSonDetailsDto2.getVdef4();
if (vdef4.compareTo(BigDecimal.ZERO) > 0) {
//发货运费-存货基本档案
BdInvbasdocEntity bdInvbasdocEntity1 = mapBdInvbasdocEntity.get("FY01");
//存货管理档案
BdInvmandocEntity bdInvmandocEntity1 = stringBdInvmandocEntityMap.get(bdInvbasdocEntity1.getInvcode() + deliverGoodsCorp.getPkCorp());
//存货对应的税率
BdTaxitemsEntity bdTaxitemsEntity = stringBdTaxitemsEntityMap.get("FY01");
//补充平台优惠-存货
BigDecimal absAccumulatedPostage = vdef4.abs();
BigDecimal negativeValue = absAccumulatedPostage.negate();
queryAdditionUtil.additional(saleorderRequestChildrenDtoList, bdInvmandocEntity1, bdInvbasdocEntity1, negativeValue, "-1", bdTaxitemsEntity);
//退货没有邮费金额已经向万万确认
//平台优惠
if (passiveStorageSonDetailsDto2.getVdef4() != null) {
BigDecimal vdef4 = passiveStorageSonDetailsDto2.getVdef4();
if (vdef4.compareTo(BigDecimal.ZERO) > 0) {
//发货运费-存货基本档案
BdInvbasdocEntity bdInvbasdocEntity1 = mapBdInvbasdocEntity.get("FY01");
//存货管理档案
BdInvmandocEntity bdInvmandocEntity1 = stringBdInvmandocEntityMap.get(bdInvbasdocEntity1.getInvcode() + deliverGoodsCorp.getPkCorp());
//存货对应的税率
BdTaxitemsEntity bdTaxitemsEntity = stringBdTaxitemsEntityMap.get("FY01");
//补充平台优惠-存货
BigDecimal absAccumulatedPostage = vdef4.abs();
BigDecimal negativeValue = absAccumulatedPostage.negate();
queryAdditionUtil.additional(saleorderRequestChildrenDtoList, bdInvmandocEntity1, bdInvbasdocEntity1, negativeValue, "-1", bdTaxitemsEntity);
}
}
}
//达人优惠
if (passiveStorageSonDetailsDto2.getVdef6() != null) {
BigDecimal vdef6 = passiveStorageSonDetailsDto2.getVdef6();
if (vdef6.compareTo(BigDecimal.ZERO) > 0) {
//发货运费-存货基本档案
BdInvbasdocEntity bdInvbasdocEntity1 = mapBdInvbasdocEntity.get("FY02");
//存货管理档案
BdInvmandocEntity bdInvmandocEntity1 = stringBdInvmandocEntityMap.get(bdInvbasdocEntity1.getInvcode() + deliverGoodsCorp.getPkCorp());
//存货对应的税率
BdTaxitemsEntity bdTaxitemsEntity = stringBdTaxitemsEntityMap.get("FY02");
//补充达人优惠-存货
BigDecimal absAccumulatedPostage = vdef6.abs();
BigDecimal negativeValue = absAccumulatedPostage.negate();
queryAdditionUtil.additional(saleorderRequestChildrenDtoList, bdInvmandocEntity1, bdInvbasdocEntity1, negativeValue, "-1", bdTaxitemsEntity);
//达人优惠
if (passiveStorageSonDetailsDto2.getVdef6() != null) {
BigDecimal vdef6 = passiveStorageSonDetailsDto2.getVdef6();
if (vdef6.compareTo(BigDecimal.ZERO) > 0) {
//发货运费-存货基本档案
BdInvbasdocEntity bdInvbasdocEntity1 = mapBdInvbasdocEntity.get("FY02");
//存货管理档案
BdInvmandocEntity bdInvmandocEntity1 = stringBdInvmandocEntityMap.get(bdInvbasdocEntity1.getInvcode() + deliverGoodsCorp.getPkCorp());
//存货对应的税率
BdTaxitemsEntity bdTaxitemsEntity = stringBdTaxitemsEntityMap.get("FY02");
//补充达人优惠-存货
BigDecimal absAccumulatedPostage = vdef6.abs();
BigDecimal negativeValue = absAccumulatedPostage.negate();
queryAdditionUtil.additional(saleorderRequestChildrenDtoList, bdInvmandocEntity1, bdInvbasdocEntity1, negativeValue, "-1", bdTaxitemsEntity);
}
}
}
//支付优惠
if (passiveStorageSonDetailsDto2.getVdef5() != null) {
BigDecimal vdef5 = passiveStorageSonDetailsDto2.getVdef5();
if (vdef5.compareTo(BigDecimal.ZERO) > 0) {
//发货运费-存货基本档案
BdInvbasdocEntity bdInvbasdocEntity1 = mapBdInvbasdocEntity.get("FY04");
//存货管理档案
BdInvmandocEntity bdInvmandocEntity1 = stringBdInvmandocEntityMap.get(bdInvbasdocEntity1.getInvcode() + deliverGoodsCorp.getPkCorp());
//存货对应的税率
BdTaxitemsEntity bdTaxitemsEntity = stringBdTaxitemsEntityMap.get("FY04");
//补充支付优惠-存货
BigDecimal absAccumulatedPostage = vdef5.abs();
BigDecimal negativeValue = absAccumulatedPostage.negate();// 符号取反转为负数
queryAdditionUtil.additional(saleorderRequestChildrenDtoList, bdInvmandocEntity1, bdInvbasdocEntity1, negativeValue, "-1", bdTaxitemsEntity);
//支付优惠
if (passiveStorageSonDetailsDto2.getVdef5() != null) {
BigDecimal vdef5 = passiveStorageSonDetailsDto2.getVdef5();
if (vdef5.compareTo(BigDecimal.ZERO) > 0) {
//发货运费-存货基本档案
BdInvbasdocEntity bdInvbasdocEntity1 = mapBdInvbasdocEntity.get("FY04");
//存货管理档案
BdInvmandocEntity bdInvmandocEntity1 = stringBdInvmandocEntityMap.get(bdInvbasdocEntity1.getInvcode() + deliverGoodsCorp.getPkCorp());
//存货对应的税率
BdTaxitemsEntity bdTaxitemsEntity = stringBdTaxitemsEntityMap.get("FY04");
//补充支付优惠-存货
BigDecimal absAccumulatedPostage = vdef5.abs();
BigDecimal negativeValue = absAccumulatedPostage.negate();// 符号取反转为负数
queryAdditionUtil.additional(saleorderRequestChildrenDtoList, bdInvmandocEntity1, bdInvbasdocEntity1, negativeValue, "-1", bdTaxitemsEntity);
}
}
}
//数量大于0,推送销售订单
if (groupShipQty.compareTo(BigDecimal.ZERO) > 0) {
//数量大于0,推送销售订单
// if (groupShipQty.compareTo(BigDecimal.ZERO) > 0) {
//过滤掉实入数量=0的
// checkSaleOrderNnumber(saleorderRequestChildrenDtoList);
boolean oneSuccess = false;
if (!"Y".equals(newState)) {
//推送U8C红字销售订单如果推送失败抛出异常那么就会外围的try catch捕获代码不会往下执行
List<SaleorderRequestDto> saleorderRequestDtoList = new ArrayList<>();
saleorderRequestDtoList.add(saleorderRequestDto);
Map<String, List<SaleorderRequestDto>> stringStringMap = new HashMap<>();
stringStringMap.put("saleorder", saleorderRequestDtoList);
SoSaleResultRootDto soSaleResultRootDto = sendU8CTOCOrder(JSON.toJSONString(stringStringMap));
String vreceiptcode = null;
String pk_corp = null;
String csaleid = null;
if (soSaleResultRootDto != null && soSaleResultRootDto.getParentvo() != null) {
vreceiptcode = soSaleResultRootDto.getParentvo().getVreceiptcode();
pk_corp = soSaleResultRootDto.getParentvo().getPk_corp();
csaleid = soSaleResultRootDto.getParentvo().getCsaleid();
if (!"0".equals(passiveStorageSonDetailsDto2.getGroupShipQty().stripTrailingZeros().toPlainString())) {
//推送U8C红字销售订单如果推送失败抛出异常那么就会外围的try catch捕获代码不会往下执行
List<SaleorderRequestDto> saleorderRequestDtoList = new ArrayList<>();
saleorderRequestDtoList.add(saleorderRequestDto);
Map<String, List<SaleorderRequestDto>> stringStringMap = new HashMap<>();
stringStringMap.put("saleorder", saleorderRequestDtoList);
SoSaleResultRootDto soSaleResultRootDto = sendU8CTOCOrder(JSON.toJSONString(stringStringMap));
String vreceiptcode = null;
String pk_corp = null;
String csaleid = null;
if (soSaleResultRootDto != null && soSaleResultRootDto.getParentvo() != null) {
vreceiptcode = soSaleResultRootDto.getParentvo().getVreceiptcode();
pk_corp = soSaleResultRootDto.getParentvo().getPk_corp();
csaleid = soSaleResultRootDto.getParentvo().getCsaleid();
}
logger.info("TOC红字销售订单编号{} 销售订单主键:{} 销售公司:{}", vreceiptcode, csaleid, pk_corp);
updateSuccessOrFail3(value, "Y", "success", vreceiptcode, csaleid, value.get(0).getStorageTimeStamp());
oneSuccess = true;
} else {
updateSuccessOrFail3(value, "N", "不符合条件,不推送红字销售订单", null, null, value.get(0).getStorageTimeStamp());
}
logger.info("TOC红字销售订单编号{} 销售订单主键:{} 销售公司:{}", vreceiptcode, csaleid, pk_corp);
updateSuccessOrFail3(value, "Y", "success", vreceiptcode, csaleid, value.get(0).getStorageTimeStamp());
oneSuccess = true;
} else {
oneSuccess = true;
}
@ -1485,25 +1458,29 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
//判断关联时间与交易成功时间推送u8c生成蓝字销售订单,仅满足情况二的条件才生成这张蓝字销售订单
try {
if (!"Y".equals(def10) && oneSuccess && "2".equals(value.get(0).getStorageTimeStamp())) {
SaleorderRequestDto saleorderRequestDto1 = transformRedSalesOrderToBlueSalesOrder(saleorderRequestDto, bdBusitypeEntity2);
if (!"0".equals(passiveStorageSonDetailsDto2.getGroupShipQty().stripTrailingZeros().toPlainString())) {
SaleorderRequestDto saleorderRequestDto1 = transformRedSalesOrderToBlueSalesOrder(saleorderRequestDto, bdBusitypeEntity2);
List<SaleorderRequestDto> saleorderRequestDtoList2 = new ArrayList<>();
saleorderRequestDtoList2.add(saleorderRequestDto1);
Map<String, List<SaleorderRequestDto>> stringStringMap2 = new HashMap<>();
stringStringMap2.put("saleorder", saleorderRequestDtoList2);
SoSaleResultRootDto soSaleResultRootDto2 = sendU8CTOCOrder(JSON.toJSONString(stringStringMap2));
List<SaleorderRequestDto> saleorderRequestDtoList2 = new ArrayList<>();
saleorderRequestDtoList2.add(saleorderRequestDto1);
Map<String, List<SaleorderRequestDto>> stringStringMap2 = new HashMap<>();
stringStringMap2.put("saleorder", saleorderRequestDtoList2);
SoSaleResultRootDto soSaleResultRootDto2 = sendU8CTOCOrder(JSON.toJSONString(stringStringMap2));
String vreceiptcode2 = null;
String pk_corp2 = null;
String csaleid2 = null;
if (soSaleResultRootDto2 != null && soSaleResultRootDto2.getParentvo() != null) {
vreceiptcode2 = soSaleResultRootDto2.getParentvo().getVreceiptcode();
pk_corp2 = soSaleResultRootDto2.getParentvo().getPk_corp();
csaleid2 = soSaleResultRootDto2.getParentvo().getCsaleid();
String vreceiptcode2 = null;
String pk_corp2 = null;
String csaleid2 = null;
if (soSaleResultRootDto2 != null && soSaleResultRootDto2.getParentvo() != null) {
vreceiptcode2 = soSaleResultRootDto2.getParentvo().getVreceiptcode();
pk_corp2 = soSaleResultRootDto2.getParentvo().getPk_corp();
csaleid2 = soSaleResultRootDto2.getParentvo().getCsaleid();
}
logger.info("TOC蓝字销售订单编号{} 销售订单主键:{} 销售公司:{}", vreceiptcode2, csaleid2, pk_corp2);
updateSuccessOrFail4(value, "Y", "success", vreceiptcode2, csaleid2, value.get(0).getStorageTimeStamp());
} else {
updateSuccessOrFail4(value, "N", "不符合条件,不推送蓝字销售订单", null, null, value.get(0).getStorageTimeStamp());
}
logger.info("TOC蓝字销售订单编号{} 销售订单主键:{} 销售公司:{}", vreceiptcode2, csaleid2, pk_corp2);
updateSuccessOrFail4(value, "Y", "success", vreceiptcode2, csaleid2, value.get(0).getStorageTimeStamp());
}
} catch (Exception e) {
//记录蓝字销售订单异常失败
@ -1514,17 +1491,17 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
}
updateSuccessOrFail4(value, "N", message, null, null, value.get(0).getStorageTimeStamp());
}
// }
} catch (Exception e) {
//记录红字销售订单异常失败
logger.error("TOC退货业务转换成U8C对象过程中、或者单据推送到U8C出现异常", e);
String message = e.getMessage();
if (message == null) {
message = "未知错误";
}
updateSuccessOrFail3(value, "N", message, null, null, value.get(0).getStorageTimeStamp());
}
} catch (Exception e) {
//记录红字销售订单异常失败
logger.error("TOC退货业务转换成U8C对象过程中、或者单据推送到U8C出现异常", e);
String message = e.getMessage();
if (message == null) {
message = "未知错误";
}
updateSuccessOrFail3(value, "N", message, null, null, value.get(0).getStorageTimeStamp());
}
// }
}
} else {
//2024年8月6日 11:28:54此处不记录失败不认为是错误
@ -3665,6 +3642,7 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
public void run() {
try {
String successY = "Y";
String successA = "A";
if (value != null && value.size() > 0) {
List<OnlyAfterSalesBEntity> onlyAfterSalesBEntityArrayList = new ArrayList<>();
for (int i = 0; i < value.size(); i++) {
@ -3687,7 +3665,7 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
ofsPassiveorderDetailEntity.setNewPushDate(getNewDateStr());
ofsPassiveorderDetailEntity.setNewTransmitInfo(finalNewTransmitInfo);
ofsPassiveorderDetailEntity.setNewState(newstate);
if (successY.equals(newstate) || (newsystemnumber != null && newsystemprimary != null)) {
if ((successY.equals(newstate) || successA.equals(newstate)) || (newsystemnumber != null && newsystemprimary != null)) {
ofsPassiveorderDetailEntity.setNewsystemnumber(newsystemnumber);
ofsPassiveorderDetailEntity.setNewsystemprimary(newsystemprimary);
}
@ -3900,9 +3878,10 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
String newstate2 = null;
String storageTimeStamp = rerturnGoodsOrderSearchDetails.getStorageTimeStamp();
if ("2".equals(storageTimeStamp)) {
newstate1 = no2NameMap1.get(rerturnGoodsOrderSearchDetails.getId());
newstate1 = no2NameMap1.get(rerturnGoodsOrderSearchDetails.getId());
if ("A".equals(newstate1)) {
isSuccess = true;
} else if ("2".equals(storageTimeStamp)) {
newstate2 = no2NameMap2.get(rerturnGoodsOrderSearchDetails.getId());
if (newstate1 != null && !"".equals(newstate1) && (succeseeY.equals(newstate1) || succeseeH.equals(newstate1))) {
if (newstate2 != null && !"".equals(newstate2) && (succeseeY.equals(newstate2) || succeseeH.equals(newstate2))) {
@ -3910,7 +3889,6 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
}
}
} else if ("3".equals(storageTimeStamp)) {
newstate1 = no2NameMap1.get(rerturnGoodsOrderSearchDetails.getId());
if (newstate1 != null && !"".equals(newstate1) && (succeseeY.equals(newstate1) || succeseeH.equals(newstate1))) {
isSuccess = true;
}
@ -5065,4 +5043,29 @@ public class PassiveWarehouseReceiptToC extends PluginBaseEntity {
return new BigDecimal(jfbbje).compareTo(BigDecimal.ZERO) != 0;
}).collect(Collectors.toList());
}
/**
* 判断实入数量如果为0则过滤掉
*
* @param saleorderRequestChildrenDtoList u8c销售订单明细行
*/
// private void checkSaleOrderNnumber(List<SaleorderRequestChildrenDto> saleorderRequestChildrenDtoList) {
// if (saleorderRequestChildrenDtoList == null || saleorderRequestChildrenDtoList.isEmpty()) {
// return;
// }
//
// // 过滤逻辑转换为 BigDecimal 后判断是否为 0
// saleorderRequestChildrenDtoList.removeIf(dto -> {
// String numberStr = dto.getNnumber();
// if (numberStr == null) {
// return false; // 保留 null 根据业务需求调整
// }
// try {
// BigDecimal number = new BigDecimal(numberStr);
// return number.compareTo(BigDecimal.ZERO) == 0;
// } catch (NumberFormatException e) {
// return false;
// }
// });
// }
}

View File

@ -998,8 +998,8 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
// }
//判断如果实入数量全部为0则不推送u8c,部分存在0的则过滤掉
checkSaleOrderNnumber(saleorderRequestChildrenDtoList);
if (saleorderRequestChildrenDtoList.size() > 0) {
// checkSaleOrderNnumber(saleorderRequestChildrenDtoList);
if (!"0".equals(goodsRertunSonDetailsDto.getGroupShipQty().stripTrailingZeros().toPlainString())) {
if (ProfilesActiveConstant.PUSH_SCENE_TYPE_1.equals(pushScenarioType) || ProfilesActiveConstant.PUSH_SCENE_TYPE_2.equals(pushScenarioType)) {
//推送u8c生成红字销售订单
List<SaleorderRequestDto> saleorderRequestDtoList = new ArrayList<>();
@ -1443,11 +1443,13 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
//2025年8月25日10:42:30 不在此处验证否则影响红字应收单推送
//判断入库时间关单时间与交易成功时间推送u8c生成蓝字销售订单,仅满足情况二的条件才生成这张蓝字销售订单
//2025年8月25日10:59:26 把实入数量=0的明细行去掉
checkSaleOrderNnumber(saleorderRequestChildrenDtoList);
// checkSaleOrderNnumber(saleorderRequestChildrenDtoList);
boolean oneSuccess = false;
if (!"Y".equals(newstate4)) {
if ((ProfilesActiveConstant.PUSH_SCENE_TYPE_1.equals(pushScenarioType) || ProfilesActiveConstant.PUSH_SCENE_TYPE_2.equals(pushScenarioType)) && saleorderRequestChildrenDtoList.size() > 0) {
if ((ProfilesActiveConstant.PUSH_SCENE_TYPE_1.equals(pushScenarioType)
|| ProfilesActiveConstant.PUSH_SCENE_TYPE_2.equals(pushScenarioType))
&& !"0".equals(goodsRertunSonDetailsDto.getGroupShipQty().stripTrailingZeros().toPlainString())) {
//推送U8C红字销售订单如果推送失败抛出异常那么就会外围的try catch捕获代码不会往下执行
List<SaleorderRequestDto> saleorderRequestDtoList = new ArrayList<>();
saleorderRequestDtoList.add(saleorderRequestDto);
@ -1483,7 +1485,9 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
try {
//2025年8月25日10:41:37 如果实入数量全部0蓝字销售订单则不推送存在部分数量为0则过滤
if (!"Y".equals(def15) && oneSuccess && "2".equals(oldValue.get(0).getStorageTimeStamp())) {
if ((ProfilesActiveConstant.PUSH_SCENE_TYPE_1.equals(pushScenarioType) || ProfilesActiveConstant.PUSH_SCENE_TYPE_2.equals(pushScenarioType)) && saleorderRequestChildrenDtoList.size() > 0) {
if ((ProfilesActiveConstant.PUSH_SCENE_TYPE_1.equals(pushScenarioType)
|| ProfilesActiveConstant.PUSH_SCENE_TYPE_2.equals(pushScenarioType))
&& !"0".equals(goodsRertunSonDetailsDto.getGroupShipQty().stripTrailingZeros().toPlainString())) {
if ("2".equals(oldValue.get(0).getStorageTimeStamp())) {
SaleorderRequestDto saleorderRequestDto1 = transformRedSalesOrderToBlueSalesOrder(saleorderRequestDto, bdBusitypeEntity2);
@ -4308,23 +4312,23 @@ public class SoSaleReturnPluginInitializerToC extends PluginBaseEntity {
*
* @param saleorderRequestChildrenDtoList u8c销售订单明细行
*/
private void checkSaleOrderNnumber(List<SaleorderRequestChildrenDto> saleorderRequestChildrenDtoList) {
if (saleorderRequestChildrenDtoList == null || saleorderRequestChildrenDtoList.isEmpty()) {
return;
}
// 过滤逻辑转换为 BigDecimal 后判断是否为 0
saleorderRequestChildrenDtoList.removeIf(dto -> {
String numberStr = dto.getNnumber();
if (numberStr == null) {
return false; // 保留 null 根据业务需求调整
}
try {
BigDecimal number = new BigDecimal(numberStr);
return number.compareTo(BigDecimal.ZERO) == 0;
} catch (NumberFormatException e) {
return false;
}
});
}
// private void checkSaleOrderNnumber(List<SaleorderRequestChildrenDto> saleorderRequestChildrenDtoList) {
// if (saleorderRequestChildrenDtoList == null || saleorderRequestChildrenDtoList.isEmpty()) {
// return;
// }
//
// // 过滤逻辑转换为 BigDecimal 后判断是否为 0
// saleorderRequestChildrenDtoList.removeIf(dto -> {
// String numberStr = dto.getNnumber();
// if (numberStr == null) {
// return false; // 保留 null 根据业务需求调整
// }
// try {
// BigDecimal number = new BigDecimal(numberStr);
// return number.compareTo(BigDecimal.ZERO) == 0;
// } catch (NumberFormatException e) {
// return false;
// }
// });
// }
}