其他git仓库代码同步

This commit is contained in:
mzr 2025-11-07 20:20:15 +08:00
parent 29147f682c
commit 6910229b30
1 changed files with 120 additions and 49 deletions

View File

@ -123,7 +123,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
} }
// String csettleorgid = bvos[0].getCsettleorgid(); // String csettleorgid = bvos[0].getCsettleorgid();
String ccurrencyorgid = o1.toString(); String ccurrencyorgid = o1.toString();
// UFDouble exchangerate = SOCurrencyUtil.getInCurrencyRateByOrg(csettleorgid, BFPubTools.getString_TrimAsNull(o), ccurrencyorgid, dbilldate); // UFDouble exchangerate = SOCurrencyUtil.getInCurrencyRateByOrg(csettleorgid,
// BFPubTools.getString_TrimAsNull(o), ccurrencyorgid, dbilldate);
for (SaleOrderBVO bvo : bvos) { for (SaleOrderBVO bvo : bvos) {
bvo.setCcurrencyid(BFPubTools.getString_TrimAsNull(o1)); bvo.setCcurrencyid(BFPubTools.getString_TrimAsNull(o1));
if (!BFPubTools.getString_TrimAsNull(o).equals(ccurrencyorgid)) { if (!BFPubTools.getString_TrimAsNull(o).equals(ccurrencyorgid)) {
@ -132,12 +133,12 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
// bvo.setNexchangerate(UFDouble.ONE_DBL); // bvo.setNexchangerate(UFDouble.ONE_DBL);
} }
// 折本汇率判空及保留小数位数 // 折本汇率判空及保留小数位数
UFDouble exchangerate1 = getUFDouble_NullAsOne(bvo.getNexchangerate()).setScale(2, UFDouble.ROUND_HALF_UP); UFDouble exchangerate1 = getUFDouble_NullAsOne(bvo.getNexchangerate()).setScale(2,
UFDouble.ROUND_HALF_UP);
bvo.setNexchangerate(exchangerate1); bvo.setNexchangerate(exchangerate1);
} }
} }
BillVOsCheckRule checker = new BillVOsCheckRule(new SaleOrderValidator()); BillVOsCheckRule checker = new BillVOsCheckRule(new SaleOrderValidator());
checker.check(vos); checker.check(vos);
Map<String, String> origcurrencyMap = new HashMap<>(); Map<String, String> origcurrencyMap = new HashMap<>();
@ -286,14 +287,27 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
childrenVO.setVchangerate(measrate);// 换算率 childrenVO.setVchangerate(measrate);// 换算率
childrenVO.setVqtunitrate(measrate);// 报价换算率 childrenVO.setVqtunitrate(measrate);// 报价换算率
UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate); UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate);
// UFDouble measrateNum = UFDouble.ONE_DBL;
// if (null != measrateNums && measrateNums.length != 0) {
// measrateNum = measrateNums[0].div(measrateNums[1]).setScale(2, 4);
// }
// // 主数量
// UFDouble nnum = childrenVO.getNnum().setScale(2, UFDouble.ROUND_HALF_UP);
// childrenVO.setNnum(nnum);
// UFDouble nastnum = nnum.multiply(measrateNum).setScale(2, UFDouble.ROUND_HALF_UP);
// childrenVO.setNastnum(nastnum);// 数量
// childrenVO.setNqtunitnum(nastnum);// 报价单位数量
// sumnum = sumnum.add(nnum);
// sumnny = sumnny.add(norigtaxmny);
UFDouble measrateNum = UFDouble.ONE_DBL; UFDouble measrateNum = UFDouble.ONE_DBL;
if (null != measrateNums && measrateNums.length != 0) { if (null != measrateNums && measrateNums.length != 0) {
measrateNum = measrateNums[0].div(measrateNums[1]).setScale(2, 4); measrateNum = measrateNums[0].div(measrateNums[1]);
} }
// 主数量 // 主数量
UFDouble nnum = childrenVO.getNnum().setScale(2, UFDouble.ROUND_HALF_UP); UFDouble nnum = childrenVO.getNnum();
childrenVO.setNnum(nnum); childrenVO.setNnum(nnum);
UFDouble nastnum = nnum.multiply(measrateNum).setScale(2, UFDouble.ROUND_HALF_UP); UFDouble nastnum = nnum.multiply(measrateNum);
childrenVO.setNastnum(nastnum);// 数量 childrenVO.setNastnum(nastnum);// 数量
childrenVO.setNqtunitnum(nastnum);// 报价单位数量 childrenVO.setNqtunitnum(nastnum);// 报价单位数量
sumnum = sumnum.add(nnum); sumnum = sumnum.add(nnum);
@ -301,7 +315,7 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
} }
ordervo.getParentVO().setNtotalnum(sumnum); ordervo.getParentVO().setNtotalnum(sumnum);
ordervo.getParentVO().setNtotalorigmny(sumnny.setScale(2, 4)); ordervo.getParentVO().setNtotalorigmny(sumnny);
} }
@Override @Override
@ -427,16 +441,16 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
boolean hasNewStatus = Arrays.stream(bvos).anyMatch(bvo -> bvo.getStatus() == VOStatus.NEW); boolean hasNewStatus = Arrays.stream(bvos).anyMatch(bvo -> bvo.getStatus() == VOStatus.NEW);
// 新增子表或改订单类型的情况下不校验是否存在下游 // 新增子表或改订单类型的情况下不校验是否存在下游
/*if (!hasNewStatus && !isChangedTranType) { /*if (!hasNewStatus && !isChangedTranType) {
String countSql = "SELECT count(1) FROM so_saleinvoice_b a" String countSql = "SELECT count(1) FROM so_saleinvoice_b a"
+ " LEFT JOIN so_saleinvoice b ON a.csaleinvoiceid = b.csaleinvoiceid" + " LEFT JOIN so_saleinvoice b ON a.csaleinvoiceid = b.csaleinvoiceid"
+ " WHERE b.fopposeflag = 0 AND nvl(b.dr, 0) = 0 and csrcid = '[csrcid]' "; + " WHERE b.fopposeflag = 0 AND nvl(b.dr, 0) = 0 and csrcid = '[csrcid]' ";
countSql = countSql.replace("[csrcid]", hvo.getCsaleorderid()); countSql = countSql.replace("[csrcid]", hvo.getCsaleorderid());
Integer num = (Integer) getDao().executeQuery(countSql, new ColumnProcessor()); Integer num = (Integer) getDao().executeQuery(countSql, new ColumnProcessor());
if (num > 0) { if (num > 0) {
// fopposeflag 对冲标记 0=正常 1=已被对冲 2=对冲生成 // fopposeflag 对冲标记 0=正常 1=已被对冲 2=对冲生成
ExceptionUtils.wrappBusinessException("下游存在未红冲完成的销售发票"); ExceptionUtils.wrappBusinessException("下游存在未红冲完成的销售发票");
return null; return null;
} }
}*/ }*/
} }
@ -479,7 +493,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
// 订单类型 // 订单类型
// String ctrantypeid = orderHVO.getAttributeValue("ctrantypeid") + ""; // String ctrantypeid = orderHVO.getAttributeValue("ctrantypeid") + "";
String vtrantypecode = orderHVO.getVtrantypecode(); String vtrantypecode = orderHVO.getVtrantypecode();
// NCCForUAPLogger.debug("setOtherId-ccustomerid:" + ccustomerid + ",vtrantypecode:" + vtrantypecode); // NCCForUAPLogger.debug("setOtherId-ccustomerid:" + ccustomerid +
// ",vtrantypecode:" + vtrantypecode);
try { try {
String sql = ""; String sql = "";
// 部门 // 部门
@ -487,7 +502,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
sql = " select pk_vid,pk_dept from org_dept where code = '[code]' "; sql = " select pk_vid,pk_dept from org_dept where code = '[code]' ";
sql = sql.replace("[code]", cdeptvid); sql = sql.replace("[code]", cdeptvid);
Map deptMap = (Map) getDao().executeQuery(sql, new MapProcessor()); Map deptMap = (Map) getDao().executeQuery(sql, new MapProcessor());
// NCCForUAPLogger.debug("APISaleOrderMaitainImpl-setOtherId-deptObj:" + deptMap); // NCCForUAPLogger.debug("APISaleOrderMaitainImpl-setOtherId-deptObj:" +
// deptMap);
if (deptMap != null && !deptMap.isEmpty()) { if (deptMap != null && !deptMap.isEmpty()) {
if (!"".equals(deptMap.getOrDefault("pk_dept", "") + "")) { if (!"".equals(deptMap.getOrDefault("pk_dept", "") + "")) {
orderHVO.setCdeptid(deptMap.getOrDefault("pk_dept", "") + ""); orderHVO.setCdeptid(deptMap.getOrDefault("pk_dept", "") + "");
@ -502,7 +518,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
sql = " select pk_psndoc from bd_psndoc where code = '[code]' "; sql = " select pk_psndoc from bd_psndoc where code = '[code]' ";
sql = sql.replace("[code]", cemployeeid); sql = sql.replace("[code]", cemployeeid);
Object staffObj = getDao().executeQuery(sql, new ColumnProcessor("pk_psndoc")); Object staffObj = getDao().executeQuery(sql, new ColumnProcessor("pk_psndoc"));
// NCCForUAPLogger.debug("APISaleOrderMaitainImpl-setOtherId-staffObj:" + staffObj); // NCCForUAPLogger.debug("APISaleOrderMaitainImpl-setOtherId-staffObj:" +
// staffObj);
if (staffObj != null) { if (staffObj != null) {
String id = BFPubTools.getString_TrimAsNull(staffObj); String id = BFPubTools.getString_TrimAsNull(staffObj);
if (!id.isEmpty()) { if (!id.isEmpty()) {
@ -541,7 +558,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
IBilltypeService billtypeService = NCLocator.getInstance().lookup(IBilltypeService.class); IBilltypeService billtypeService = NCLocator.getInstance().lookup(IBilltypeService.class);
BilltypeVO billtype = billtypeService.getBilltype(vtrantypecode); BilltypeVO billtype = billtypeService.getBilltype(vtrantypecode);
if (billtype != null && billtype.getPk_billtypeid() != null) { if (billtype != null && billtype.getPk_billtypeid() != null) {
// NCCForUAPLogger.debug("setOtherId-pk_billtypeid:" + billtype.getPk_billtypeid()); // NCCForUAPLogger.debug("setOtherId-pk_billtypeid:" +
// billtype.getPk_billtypeid());
orderHVO.setCtrantypeid(billtype.getPk_billtypeid()); orderHVO.setCtrantypeid(billtype.getPk_billtypeid());
} }
} }
@ -724,12 +742,14 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate); UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate);
UFDouble measrateNum = UFDouble.ONE_DBL; UFDouble measrateNum = UFDouble.ONE_DBL;
if (null != measrateNums && measrateNums.length != 0) { if (null != measrateNums && measrateNums.length != 0) {
measrateNum = measrateNums[0].div(measrateNums[1]).setScale(2, 4); measrateNum = measrateNums[0].div(measrateNums[1]);
} }
// 主数量 // 主数量
UFDouble nnum = sourceBVO.getNnum().setScale(2, UFDouble.ROUND_HALF_UP); // UFDouble nnum = sourceBVO.getNnum().setScale(2, UFDouble.ROUND_HALF_UP);
targetBVO.setNnum(nnum); UFDouble nnum = sourceBVO.getNnum();
UFDouble nastnum = nnum.multiply(measrateNum).setScale(2, UFDouble.ROUND_HALF_UP); // UFDouble nastnum = nnum.multiply(measrateNum).setScale(2,
// UFDouble.ROUND_HALF_UP);
UFDouble nastnum = nnum.multiply(measrateNum);
targetBVO.setNastnum(nastnum);// 数量 targetBVO.setNastnum(nastnum);// 数量
targetBVO.setNqtunitnum(nastnum);// 报价单位数量 targetBVO.setNqtunitnum(nastnum);// 报价单位数量
@ -742,20 +762,21 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
defList = getDefList("BIP-ddh"); defList = getDefList("BIP-ddh");
targetBVO.setVbdef5(defList.getOrDefault(vbdef5, "")); targetBVO.setVbdef5(defList.getOrDefault(vbdef5, ""));
// 新增字段的setter方法 // 新增字段的setter方法
targetBVO.setVbdef10(sourceBVO.getVbdef10()); // 项目名称 targetBVO.setVbdef10(sourceBVO.getVbdef10()); // 项目名称
targetBVO.setVbdef13(sourceBVO.getVbdef13()); // 国网行项目号 targetBVO.setVbdef13(sourceBVO.getVbdef13()); // 国网行项目号
targetBVO.setVbdef14(sourceBVO.getVbdef14()); // 合同销售订单变更明细id targetBVO.setVbdef14(sourceBVO.getVbdef14()); // 合同销售订单变更明细id
targetBVO.setVbdef18(sourceBVO.getVbdef18()); // 是否定制 targetBVO.setVbdef18(sourceBVO.getVbdef18()); // 是否定制
targetBVO.setVbdef22(sourceBVO.getVbdef22()); // 国内采购订单号 targetBVO.setVbdef22(sourceBVO.getVbdef22()); // 国内采购订单号
if (StringUtils.isNotEmpty(sourceBVO.getCrowno())) { if (StringUtils.isNotEmpty(sourceBVO.getCrowno())) {
targetBVO.setCrowno(sourceBVO.getCrowno()); // 行号 targetBVO.setCrowno(sourceBVO.getCrowno()); // 行号
} }
if (StringUtils.isNotEmpty(sourceBVO.getVbdef19())) { if (StringUtils.isNotEmpty(sourceBVO.getVbdef19())) {
targetBVO.setVbdef19(sourceBVO.getVbdef19()); // 计划开工日期 targetBVO.setVbdef19(sourceBVO.getVbdef19()); // 计划开工日期
} }
if (StringUtils.isNotEmpty(sourceBVO.getVbdef20())) { if (StringUtils.isNotEmpty(sourceBVO.getVbdef20())) {
targetBVO.setVbdef20(sourceBVO.getVbdef20()); // 计划完工日期 targetBVO.setVbdef20(sourceBVO.getVbdef20()); // 计划完工日期
} }
targetBVO.setVbdef24(sourceBVO.getVbdef24()); // 计划评审日期
} }
@ -985,8 +1006,9 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
if (map == null) { if (map == null) {
throw new BusinessException(cmaterialvid + "物料未查到"); throw new BusinessException(cmaterialvid + "物料未查到");
} }
// NCCForUAPLogger.debug(String.format("setMaterl: cqtunitid = [%S], cunitid = [%S], castunitid = [%S]", // NCCForUAPLogger.debug(String.format("setMaterl: cqtunitid = [%S], cunitid =
// map.get("cqtunitid"), map.get("cunitid"), map.get("castunitid"))); // [%S], castunitid = [%S]",
// map.get("cqtunitid"), map.get("cunitid"), map.get("castunitid")));
bVO.setAttributeValue("castunitid", map.get("castunitid")); bVO.setAttributeValue("castunitid", map.get("castunitid"));
bVO.setAttributeValue("vchangerate", map.get("vchangerate")); bVO.setAttributeValue("vchangerate", map.get("vchangerate"));
@ -1000,7 +1022,7 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
bVO.setVqtunitrate(map.get("measrate") + "");// 报价换算率 bVO.setVqtunitrate(map.get("measrate") + "");// 报价换算率
// UFDouble nqtunitnum = BFPubTools.getUFDouble_NullAsZero(nnum) // UFDouble nqtunitnum = BFPubTools.getUFDouble_NullAsZero(nnum)
// .div(BFPubTools.getUFDouble_NullAsZero(map.get("measrate").toString().split("/")[0])); // .div(BFPubTools.getUFDouble_NullAsZero(map.get("measrate").toString().split("/")[0]));
// bVO.setAttributeValue("nqtunitnum", nqtunitnum); // bVO.setAttributeValue("nqtunitnum", nqtunitnum);
sql = "select sl.pk_taxcode from bd_taxrate sl inner join bd_taxcode sm on sl.pk_taxcode=sm.pk_taxcode where sl.taxrate=" sql = "select sl.pk_taxcode from bd_taxrate sl inner join bd_taxcode sm on sl.pk_taxcode=sm.pk_taxcode where sl.taxrate="
@ -1027,9 +1049,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
return null; return null;
} }
IUAPQueryBS queryBS = NCLocator.getInstance().lookup(IUAPQueryBS.class); IUAPQueryBS queryBS = NCLocator.getInstance().lookup(IUAPQueryBS.class);
String sql = " select nvl(measrate, '1/1') measrate" + String sql = " select nvl(measrate, '1/1') measrate" + " from bd_materialconvert" + " where pk_material='"
" from bd_materialconvert" + + pk_material + "' ";
" where pk_material='" + pk_material + "' ";
return (Map<String, Object>) queryBS.executeQuery(sql, new MapProcessor()); return (Map<String, Object>) queryBS.executeQuery(sql, new MapProcessor());
} }
@ -1195,14 +1216,30 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
// newBvo.setVchangerate(measrate);// 换算率 // newBvo.setVchangerate(measrate);// 换算率
// newBvo.setVqtunitrate(measrate);// 报价换算率 // newBvo.setVqtunitrate(measrate);// 报价换算率
UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate); UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate);
// UFDouble measrateNum = UFDouble.ONE_DBL;
// if (null != measrateNums && measrateNums.length != 0) {
// measrateNum = measrateNums[0].div(measrateNums[1]).setScale(2, 4);
// }
// // 主数量
// UFDouble nnum = BFPubTools.getUFDouble_NullAsZero(bodydata.get("nnum")).setScale(2, UFDouble.ROUND_HALF_UP);
// newBvo.setNnum(nnum);
// UFDouble nastnum = nnum.multiply(measrateNum).setScale(2, UFDouble.ROUND_HALF_UP);
// newBvo.setNastnum(nastnum);// 数量
// newBvo.setNqtunitnum(nastnum);// 报价单位数量
//
// UFDouble[] measrateNums = HslParseUtil.parseHsl(measrate);
// UFDouble measrateNum = UFDouble.ONE_DBL;
// if (null != measrateNums && measrateNums.length != 0) {
// measrateNum = measrateNums[0].div(measrateNums[1]).setScale(2, 4);
// }
UFDouble measrateNum = UFDouble.ONE_DBL; UFDouble measrateNum = UFDouble.ONE_DBL;
if (null != measrateNums && measrateNums.length != 0) { if (null != measrateNums && measrateNums.length != 0) {
measrateNum = measrateNums[0].div(measrateNums[1]).setScale(2, 4); measrateNum = measrateNums[0].div(measrateNums[1]);
} }
// 主数量 // 主数量
UFDouble nnum = BFPubTools.getUFDouble_NullAsZero(bodydata.get("nnum")).setScale(2, UFDouble.ROUND_HALF_UP); UFDouble nnum = BFPubTools.getUFDouble_NullAsZero(bodydata.get("nnum"));
UFDouble nastnum = nnum.multiply(measrateNum);
newBvo.setNnum(nnum); newBvo.setNnum(nnum);
UFDouble nastnum = nnum.multiply(measrateNum).setScale(2, UFDouble.ROUND_HALF_UP);
newBvo.setNastnum(nastnum);// 数量 newBvo.setNastnum(nastnum);// 数量
newBvo.setNqtunitnum(nastnum);// 报价单位数量 newBvo.setNqtunitnum(nastnum);// 报价单位数量
@ -1213,10 +1250,13 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
String vbdef5 = bodydata.getOrDefault("vbdef5", "") + "";// 合同销售订单号 String vbdef5 = bodydata.getOrDefault("vbdef5", "") + "";// 合同销售订单号
defList.clear(); defList.clear();
defList = getDefList("BIP-ddh"); defList = getDefList("BIP-ddh");
newBvo.setVbdef5(defList.getOrDefault(vbdef5, "")); newBvo.setVbdef5(defList.getOrDefault(vbdef5, "~"));
newBvo.setVbdef10(bodydata.getOrDefault("vbdef10", "") + "");// 项目名称 newBvo.setVbdef10(bodydata.getOrDefault("vbdef10", "~") + "");// 项目名称
newBvo.setVbdef13(bodydata.getOrDefault("vbdef13", "") + "");// 国网行项目号 newBvo.setVbdef13(bodydata.getOrDefault("vbdef13", "~") + "");// 国网行项目号
newBvo.setVbdef22(bodydata.getOrDefault("vbdef22", "") + "");// 国内采购订单号 newBvo.setVbdef22(bodydata.getOrDefault("vbdef22", "~") + "");// 国内采购订单号
if (bodydata.get("vbdef24") != null && !"".equals(bodydata.get("vbdef24")) && !"~".equals(bodydata.get("vbdef24"))) {
newBvo.setVbdef24(bodydata.get("vbdef24") + "");// 计划评审日期
}
bvoList.add(newBvo); bvoList.add(newBvo);
} }
@ -1393,7 +1433,6 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
String accessToken = ""; String accessToken = "";
Map<String, String> params = new HashMap<>(); Map<String, String> params = new HashMap<>();
params.put("appKey", appKey); params.put("appKey", appKey);
String timestamp = String.valueOf(System.currentTimeMillis()); String timestamp = String.valueOf(System.currentTimeMillis());
params.put("timestamp", timestamp); params.put("timestamp", timestamp);
@ -1428,7 +1467,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
return accessToken; return accessToken;
} }
public static String doSendHttp(String baseUrl, String method, Map<String, String> paramMap, String mediaType, Map<String, String> headers, String json) { public static String doSendHttp(String baseUrl, String method, Map<String, String> paramMap, String mediaType,
Map<String, String> headers, String json) {
HttpURLConnection urlConnection = null; HttpURLConnection urlConnection = null;
InputStream in = null; InputStream in = null;
OutputStream out = null; OutputStream out = null;
@ -1768,7 +1808,6 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
} }
} }
/** /**
* 更新关联的下游单据 * 更新关联的下游单据
* *
@ -1782,6 +1821,8 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
String ccustomerid = hvo.getCcustomerid(); String ccustomerid = hvo.getCcustomerid();
String ccustomervid = hvo.getCcustomervid(); String ccustomervid = hvo.getCcustomervid();
String cemployeeid = hvo.getCemployeeid(); String cemployeeid = hvo.getCemployeeid();
//zhangxinah 订单客户和开票客户同步核销明细表
dealWithBalance(hvo);
String cdeptid = hvo.getCdeptid(); String cdeptid = hvo.getCdeptid();
String cdeptvid = hvo.getCdeptvid(); String cdeptvid = hvo.getCdeptvid();
SaleOrderBVO[] bvos = vo.getChildrenVO(); SaleOrderBVO[] bvos = vo.getChildrenVO();
@ -1946,5 +1987,35 @@ public class APISaleOrderMaitainImpl implements IAPISaleOrderMaitain {
} }
} }
/**
* zhangxinah 订单客户和开票客户同步核销明细表
* @param hvo
*/
private void dealWithBalance(SaleOrderHVO hvo) {
String csaleorderid=hvo.getCsaleorderid();
String ccustomerid = hvo.getCcustomerid();
String ccustomervid = hvo.getCcustomervid();
String cinvoicecustid = hvo.getCinvoicecustid();
String cinvoicecustvid = hvo.getCinvoicecustvid();
//zhangxinah 订单客户和开票客户同步核销明细表
// 构建并执行更新SQL
String updateSql = "UPDATE so_balance SET "
+ " ccustomerid = '[ccustomerid]', "
+ " ccustomervid = '[ccustomervid]',"
+ " cinvoicecustid = '[cinvoicecustid]',"
+ " cinvoicecustvid = '[cinvoicecustvid]'"
+ " WHERE csaleorderid = '[csaleorderid]'";
updateSql = updateSql.replace("[ccustomerid]", ccustomerid);
updateSql = updateSql.replace("[ccustomervid]", ccustomervid);
updateSql = updateSql.replace("[cinvoicecustid]", cinvoicecustid);
updateSql = updateSql.replace("[cinvoicecustvid]", cinvoicecustvid);
updateSql = updateSql.replace("[csaleorderid]", csaleorderid);
try {
getDao().executeUpdate(updateSql);
} catch (Exception e) {
ExceptionUtils.wrappBusinessException("so-updateRelatedBill-exp: " + e.getMessage());
}
}
} }