|
|
@@ -37,6 +37,11 @@ public class SaleDownChangeTask extends AbstractTask {
|
|
|
ContextHolder.setDataSize(changes.size());
|
|
|
saveSaleDownChange(changes);
|
|
|
// 回执
|
|
|
+ for (SaleDownChange saleDownChange : changes) {
|
|
|
+ if (saleDownChange.getSc_unNeedReply() == 1) {
|
|
|
+ saveUnNeedReply(saleDownChange);
|
|
|
+ }
|
|
|
+ }
|
|
|
onSaleDownChangeSuccess(changes);
|
|
|
}
|
|
|
}
|
|
|
@@ -49,7 +54,7 @@ public class SaleDownChangeTask extends AbstractTask {
|
|
|
saveSaleDownChange(changes);
|
|
|
//保存无需确认的采购订单
|
|
|
for (SaleDownChange saleDownChange : changes) {
|
|
|
- if (saleDownChange.getSc_unNeedReply().equals(Constant.YES)) {
|
|
|
+ if (saleDownChange.getSc_unNeedReply() == 1) {
|
|
|
saveUnNeedReply(saleDownChange);
|
|
|
}
|
|
|
}
|
|
|
@@ -127,8 +132,9 @@ public class SaleDownChangeTask extends AbstractTask {
|
|
|
private void saveChangeReply(List<SaleDownChangeReply> replies) {
|
|
|
List<String> sqls = new ArrayList<String>();
|
|
|
for (SaleDownChangeReply reply : replies) {
|
|
|
+ Integer changeId = 0;
|
|
|
Integer sc_id = jdbcTemplate.getInt("select sc_id from saledownchange where sc_code=? and sc_statuscode<>'AUDITED'", reply.getSc_code());
|
|
|
- if (null != sc_id) {
|
|
|
+ if (null != sc_id ) {
|
|
|
sqls.add("update saledownchange set sc_agreed=" + NumberUtil.nvl(reply.getSc_agreed(), 0) + ",sc_replyremark='"
|
|
|
+ StringUtil.nvl(reply.getSc_replyremark(), "") + "',sc_status='" + Status.AUDITED.display()
|
|
|
+ "',sc_statuscode='" + Status.AUDITED.code() + "',sc_sendstatus='已下载' where sc_id=" + sc_id);
|
|
|
@@ -143,8 +149,8 @@ public class SaleDownChangeTask extends AbstractTask {
|
|
|
" and scd_sacode=sd_code and scd_sddetno=sd_detno) where exists (select 1 from SaleDownChangeDetail where scd_scid=" + sc_id + " and scd_sacode=sd_code and scd_sddetno=sd_detno)");
|
|
|
// 存在订单
|
|
|
Integer sa_id = jdbcTemplate.getInt("select max(sa_id) from sale where (sa_pocode,sa_custcode)=(select sa_code,sa_custcode from saledown left join saledownchange on sa_code=sc_sacode and sa_customeruu=sc_custuu where sc_id=?)", sc_id);
|
|
|
- if (null != sa_id) {
|
|
|
- int changeId = jdbcTemplate.generate("SaleChange_SEQ");
|
|
|
+ if (null != sa_id && sa_id != 0) {
|
|
|
+ changeId = jdbcTemplate.generate("SaleChange_SEQ");
|
|
|
String code = jdbcTemplate.generateCode("SaleChange", 2);
|
|
|
// 自动产生对应销售变更单
|
|
|
sqls.add(String.format("insert into SaleChange(sc_id,sc_code,sc_saleid,sc_salecode,sc_recorderman,sc_indate,sc_remark,sc_status,sc_statuscode,sc_pocode,sc_sakind)"
|
|
|
@@ -157,15 +163,19 @@ public class SaleDownChangeTask extends AbstractTask {
|
|
|
"scd_newtaxrate,sa_paymentscode,sa_payments,sc_newpaymentscode,sa_currency,sc_newcurrency,sd_total,round(scd_newqty*scd_newprice,2) " +
|
|
|
"from saledetail,sale,saledownchangedetail,saledownchange where sd_said=%s and scd_scid=%s and sd_said=sa_id and scd_scid=sc_id and sa_pocode=sc_sacode and sd_detno=scd_sddetno",
|
|
|
changeId, code, sa_id, sc_id));
|
|
|
- // 变更单审核动作,包括变更信息写到订单等操作
|
|
|
- if (!saleChangeAgent.audit(changeId)) {
|
|
|
- throw new RuntimeException("[调用UAS接口执行变更单审核动作]出现异常");
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ jdbcTemplate.batchExecute(sqls);
|
|
|
+ if (changeId != 0) {
|
|
|
+ // 变更单审核动作,包括变更信息写到订单等操作
|
|
|
+ if (!saleChangeAgent.audit(changeId)) {
|
|
|
+ throw new RuntimeException("[调用UAS接口执行变更单审核动作]出现异常");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
- jdbcTemplate.batchExecute(sqls);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
private void saveUnNeedReply(SaleDownChange saleDownChange) {
|