فهرست منبع

采购变更轮询

Hu Jie 7 سال پیش
والد
کامیت
581f97479f
1فایلهای تغییر یافته به همراه53 افزوده شده و 50 حذف شده
  1. 53 50
      src/main/java/com/uas/erp/schedular/b2b/task/SaleDownChangeTask.java

+ 53 - 50
src/main/java/com/uas/erp/schedular/b2b/task/SaleDownChangeTask.java

@@ -115,7 +115,7 @@ public class SaleDownChangeTask extends AbstractTask {
         post("/erp/sale/change", dataWrap(idStr));
     }
 
-    @TaskMapping(title = "下载直接在平台回复的信息,修改到客户采购变更单、客户采购单", fixedDelay = 60000, method = Method.DOWNLOAD)
+    @TaskMapping(title = "下载直接在b2b平台回复的信息,修改到客户采购变更单、客户采购单", fixedDelay = 60000, method = Method.DOWNLOAD)
     public void downloadChangeReply() {
         List<SaleDownChangeReply> replies = getForList("/erp/sale/change/reply", SaleDownChangeReply.class);
         if (!CollectionUtils.isEmpty(replies)) {
@@ -148,31 +148,31 @@ public class SaleDownChangeTask extends AbstractTask {
                     sqls.add("update SaleDownDetail set (sd_delivery,sd_qty,sd_price,sd_taxrate)=(select max(nvl(scd_newdelivery,scd_delivery)),max(nvl(scd_newqty,scd_qty)),max(nvl(scd_newprice,scd_price)),max(nvl(scd_newtaxrate,scd_taxrate)) from SaleDownChangeDetail where scd_scid=" + sc_id +
                                     " 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 && 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)"
-                                + " select %s,'%s',sa_id,sa_code,sc_recorder,sysdate,sc_remark,'已提交','COMMITED',sa_pocode,sa_kind from sale,saledownchange where sa_id=%s and sc_id=%s and sa_pocode=sc_sacode and sa_custcode=sc_custcode",
-                                changeId, code, sa_id, sc_id));
-                        sqls.add(String.format("insert into SaleChangeDetail(scd_id,scd_scid,scd_code,scd_said,scd_sacode,scd_sddetno,scd_prodid,scd_prodcode,scd_newprodcode," +
-                            "scd_qty,scd_newqty,scd_price,scd_newprice,scd_delivery,scd_newdelivery,scd_taxrate,scd_newtaxrate,scd_payments,scd_paymentname," +
-                            "scd_newpayments,scd_currency,scd_newcurrency,scd_total,scd_newtotal) select SaleChangeDetail_SEQ.nextval,%s,'%s',sa_id,sa_code," +
-                            "sd_detno,sd_prodid,sd_prodcode,scd_newprodcode,sd_qty,scd_newqty,sd_price,scd_newprice,sd_delivery,scd_newdelivery,sd_taxrate," +
-                            "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));
-                    }
+//                    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 && 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)"
+//                                + " select %s,'%s',sa_id,sa_code,sc_recorder,sysdate,sc_remark,'已提交','COMMITED',sa_pocode,sa_kind from sale,saledownchange where sa_id=%s and sc_id=%s and sa_pocode=sc_sacode and sa_custcode=sc_custcode",
+//                                changeId, code, sa_id, sc_id));
+//                        sqls.add(String.format("insert into SaleChangeDetail(scd_id,scd_scid,scd_code,scd_said,scd_sacode,scd_sddetno,scd_prodid,scd_prodcode,scd_newprodcode," +
+//                            "scd_qty,scd_newqty,scd_price,scd_newprice,scd_delivery,scd_newdelivery,scd_taxrate,scd_newtaxrate,scd_payments,scd_paymentname," +
+//                            "scd_newpayments,scd_currency,scd_newcurrency,scd_total,scd_newtotal) select SaleChangeDetail_SEQ.nextval,%s,'%s',sa_id,sa_code," +
+//                            "sd_detno,sd_prodid,sd_prodcode,scd_newprodcode,sd_qty,scd_newqty,sd_price,scd_newprice,sd_delivery,scd_newdelivery,sd_taxrate," +
+//                            "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));
+//                    }
                 }
             }
             jdbcTemplate.batchExecute(sqls);
-            if (changeId != 0) {
-                // 变更单审核动作,包括变更信息写到订单等操作
-                if (!saleChangeAgent.audit(changeId)) {
-                    throw new RuntimeException("[调用UAS接口执行变更单审核动作]出现异常");
-                }
-            }
+//            if (changeId != 0) {
+//                // 变更单审核动作,包括变更信息写到订单等操作
+//                if (!saleChangeAgent.audit(changeId)) {
+//                    throw new RuntimeException("[调用UAS接口执行变更单审核动作]出现异常");
+//                }
+//            }
 
         }
 
@@ -181,43 +181,46 @@ public class SaleDownChangeTask extends AbstractTask {
     private void saveUnNeedReply(SaleDownChange saleDownChange) {
         Integer changeId = 0;
         List<String> sqls = new ArrayList<>();
+        List<String> sqlschange = new ArrayList<>();
         Integer sc_id = jdbcTemplate.getInt("select sc_id from saledownchange where sc_code=?", saleDownChange.getSc_code());
         if (null != sc_id) {
-            sqls.add("update saledownchange set sc_agreed= -1 , sc_replyremark='无需回复',sc_status='" + Status.AUDITED.display()
+            sqlschange.add("update saledownchange set sc_agreed= -1 , sc_replyremark='无需回复',sc_status='" + Status.AUDITED.display()
                     + "',sc_statuscode='" + Status.AUDITED.code() + "',sc_sendstatus='已下载' where sc_id=" + sc_id);
             // 变更达成
-            sqls.add("update SaleDown set (sa_payments,sa_currency,sa_rate)=(select max(nvl(sc_newpayments,sc_payments)),max(nvl(sc_currency,sc_newcurrency)),max(nvl(sc_rate,sc_newrate)) from SaleDownChange where sc_sacode=sa_code and sc_id=" + sc_id +
+            sqlschange.add("update SaleDown set (sa_payments,sa_currency,sa_rate)=(select max(nvl(sc_newpayments,sc_payments)),max(nvl(sc_currency,sc_newcurrency)),max(nvl(sc_rate,sc_newrate)) from SaleDownChange where sc_sacode=sa_code and sc_id=" + sc_id +
                     ") where sa_code=(select sc_sacode from SaleDownChange where sc_id=" + sc_id + ")");
-            sqls.add("update SaleDownDetail set (sd_custprodcode,sd_custproddetail,sd_custprodspec,sd_custprodunit,sd_prodcode)=(select max(scd_newcustprodcode),max(scd_newcustproddetail),max(scd_newcustprodspec),max(scd_newcustprodunit),max(scd_newprodcode) from SaleDownChangeDetail where scd_sacode=sd_code and scd_sddetno=sd_detno and scd_scid=" + sc_id +
+            sqlschange.add("update SaleDownDetail set (sd_custprodcode,sd_custproddetail,sd_custprodspec,sd_custprodunit,sd_prodcode)=(select max(scd_newcustprodcode),max(scd_newcustproddetail),max(scd_newcustprodspec),max(scd_newcustprodunit),max(scd_newprodcode) from SaleDownChangeDetail where scd_sacode=sd_code and scd_sddetno=sd_detno and scd_scid=" + sc_id +
                     ") where exists (select 1 from SaleDownChangeDetail where scd_scid=" + sc_id +
                     " and scd_sacode=sd_code and scd_sddetno=sd_detno and nvl(scd_newprodcode,scd_prodcode)<>scd_prodcode)");
-            sqls.add("update SaleDownDetail set (sd_delivery,sd_qty,sd_price,sd_taxrate)=(select max(nvl(scd_newdelivery,scd_delivery)),max(nvl(scd_newqty,scd_qty)),max(nvl(scd_newprice,scd_price)),max(nvl(scd_newtaxrate,scd_taxrate)) from SaleDownChangeDetail where scd_scid=" + sc_id +
+            sqlschange.add("update SaleDownDetail set (sd_delivery,sd_qty,sd_price,sd_taxrate)=(select max(nvl(scd_newdelivery,scd_delivery)),max(nvl(scd_newqty,scd_qty)),max(nvl(scd_newprice,scd_price)),max(nvl(scd_newtaxrate,scd_taxrate)) from SaleDownChangeDetail where scd_scid=" + sc_id +
                     " 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)");
+            jdbcTemplate.batchExecute(sqlschange);
+
             // 存在订单
-            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 && 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)"
-                                + " select %s,'%s',sa_id,sa_code,sc_recorder,sysdate,sc_remark,'已提交','COMMITED',sa_pocode,sa_kind from sale,saledownchange where sa_id=%s and sc_id=%s and sa_pocode=sc_sacode and sa_custcode=sc_custcode",
-                        changeId, code, sa_id, sc_id));
-                sqls.add(String.format("insert into SaleChangeDetail(scd_id,scd_scid,scd_code,scd_said,scd_sacode,scd_sddetno,scd_prodid,scd_prodcode,scd_newprodcode," +
-                                "scd_qty,scd_newqty,scd_price,scd_newprice,scd_delivery,scd_newdelivery,scd_taxrate,scd_newtaxrate,scd_payments,scd_paymentname," +
-                                "scd_newpayments,scd_currency,scd_newcurrency,scd_total,scd_newtotal) select SaleChangeDetail_SEQ.nextval,%s,'%s',sa_id,sa_code," +
-                                "sd_detno,sd_prodid,sd_prodcode,scd_newprodcode,sd_qty,scd_newqty,sd_price,scd_newprice,sd_delivery,scd_newdelivery,sd_taxrate," +
-                                "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));
-            }
+//            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 && 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)"
+//                                + " select %s,'%s',sa_id,sa_code,sc_recorder,sysdate,sc_remark,'已提交','COMMITED',sa_pocode,sa_kind from sale,saledownchange where sa_id=%s and sc_id=%s and sa_pocode=sc_sacode and sa_custcode=sc_custcode",
+//                        changeId, code, sa_id, sc_id));
+//                sqls.add(String.format("insert into SaleChangeDetail(scd_id,scd_scid,scd_code,scd_said,scd_sacode,scd_sddetno,scd_prodid,scd_prodcode,scd_newprodcode," +
+//                                "scd_qty,scd_newqty,scd_price,scd_newprice,scd_delivery,scd_newdelivery,scd_taxrate,scd_newtaxrate,scd_payments,scd_paymentname," +
+//                                "scd_newpayments,scd_currency,scd_newcurrency,scd_total,scd_newtotal) select SaleChangeDetail_SEQ.nextval,%s,'%s',sa_id,sa_code," +
+//                                "sd_detno,sd_prodid,sd_prodcode,scd_newprodcode,sd_qty,scd_newqty,sd_price,scd_newprice,sd_delivery,scd_newdelivery,sd_taxrate," +
+//                                "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));
+//            }
         }
         jdbcTemplate.batchExecute(sqls);
-        if (changeId != 0) {
-            // 变更单审核动作,包括变更信息写到订单等操作
-            if (!saleChangeAgent.audit(changeId)) {
-                throw new RuntimeException("[调用UAS接口执行变更单审核动作]出现异常");
-            }
-        }
+//        if (changeId != 0) {
+//            // 变更单审核动作,包括变更信息写到订单等操作
+//            if (!saleChangeAgent.audit(changeId)) {
+//                throw new RuntimeException("[调用UAS接口执行变更单审核动作]出现异常");
+//            }
+//        }
     }
 
 
@@ -237,7 +240,7 @@ public class SaleDownChangeTask extends AbstractTask {
         post("/erp/sale/change/reply/back", dataWrap(idStr));
     }
 
-    @TaskMapping(title = "下载直接在平台回复的信息,修改客户采购变更单、客户采购单", fixedDelay = 60000, method = Method.DOWNLOAD)
+    @TaskMapping(title = "下载直接在平台回复的信息,修改平台客户采购变更单、客户采购单", fixedDelay = 60000, method = Method.DOWNLOAD)
     public void uploadSaleChangeReply() {
         List<SaleDownChangeReply> replies = jdbcTemplate.queryForBeanList("select b2b_pc_id,sc_id,sc_code,sc_agreed,sc_replyremark from SaleDownChange where SC_SENDSTATUS='待上传' and sc_agreed is not null and sc_custuu is not null",
                 SaleDownChangeReply.class);