Просмотр исходного кода

Merge branch 'master' of ssh://10.10.100.21/source/uas_schedular

chenw 6 лет назад
Родитель
Сommit
995ef27fe5
1 измененных файлов с 25 добавлено и 4 удалено
  1. 25 4
      src/main/java/com/uas/erp/schedular/mall/task/OrderTask.java

+ 25 - 4
src/main/java/com/uas/erp/schedular/mall/task/OrderTask.java

@@ -154,9 +154,9 @@ public class OrderTask extends AbstractTask {
                         //2.生成销售订单
                         generateSale(order, saleCode);
                         //3.生成采购验收单
-                        Map<String, String> purchaseInMap = purcahseIn(purchaseCode);
+                        Map<String, String> purchaseInMap = purcahseIn(order, saleCode, purchaseCode);
                         //4.生成销售出货单
-                        String saleOutCode = saleOut(saleCode, purchaseInMap.get("batchCode"));
+                        String saleOutCode = saleOut(order, saleCode, purchaseInMap.get("batchCode"));
                         //5.过账
                         postPurchaseAndSale(purchaseInMap.get("inoutno"), saleOutCode);
                     }
@@ -181,7 +181,7 @@ public class OrderTask extends AbstractTask {
      * 生成销售出货单并过账
      * @param saleCode
      */
-    private String saleOut(String saleCode,String batchCode) {
+    private String saleOut(Order order, String saleCode,String batchCode) {
         String saleOutCode = jdbcTemplate.generateCode("ProdInOut!Sale", 2);
         Integer saleOutId = jdbcTemplate.generate("prodinout_seq");
         //主表
@@ -197,6 +197,9 @@ public class OrderTask extends AbstractTask {
 
         jdbcTemplate.execute(mainSql, saleCode);
         jdbcTemplate.execute(detailSql, saleCode);
+        String logOrderSql = "insert into LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK)" +
+                "values(LOGORDER_SEQ.NEXTVAL,'" + order.getCode() + "', '成功', sysdate,'" + saleCode + "', '销售出货单生成成功')";
+        jdbcTemplate.execute(logOrderSql);
         return saleOutCode;
     }
 
@@ -204,7 +207,7 @@ public class OrderTask extends AbstractTask {
      * 生成采购验收单
      * @param purchaseCode
      */
-    private Map<String, String> purcahseIn(String purchaseCode) {
+    private Map<String, String> purcahseIn(Order order,String saleCode, String purchaseCode) {
         Map<String, String> resultMap = new HashMap<>(2);
         String purcCheckinCode = jdbcTemplate.generateCode("ProdInOut!PurcCheckin",2);
         Integer purcCheckinId = jdbcTemplate.getInt("SELECT PRODINOUT_SEQ.NEXTVAL FROM DUAL");
@@ -224,6 +227,9 @@ public class OrderTask extends AbstractTask {
         jdbcTemplate.execute(detailSql, purchaseCode);
         resultMap.put("batchCode", batchCode);
         resultMap.put("inoutno", purcCheckinCode);
+        String logOrderSql = "insert into LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK)" +
+                "values(LOGORDER_SEQ.NEXTVAL,'" + order.getCode() + "', '成功', sysdate,'" + saleCode + "', '采购验收单生成成功')";
+        jdbcTemplate.execute(logOrderSql);
         return resultMap;
     }
 
@@ -236,6 +242,12 @@ public class OrderTask extends AbstractTask {
         int saleId = jdbcTemplate.getInt("SELECT SALE_SEQ.NEXTVAL FROM DUAL");
         //客户资料
         Customer customer = generateCustomer(order);
+        if(ObjectUtils.isEmpty(customer)){
+            String logOrderSql = "insert into LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK)" +
+                    "values(LOGORDER_SEQ.NEXTVAL,'" + order.getCode() + "', '失败', sysdate,'', '销售订单生成失败,没有客户资料')";
+            jdbcTemplate.execute(logOrderSql);
+            return;
+        }
         //销售订单主表
         String insertSaleSql = "INSERT INTO SALE(SA_ID,SA_CODE,SA_DATE,SA_KIND,SA_CURRENCY,SA_RATE,SA_CUSTID,SA_CUSTCODE,SA_CUSTNAME,SA_APCUSTCODE,"
                 + "SA_APCUSTNAME,SA_PAYMENTSCODE,SA_PAYMENTS,SA_SELLERCODE,SA_SELLER,SA_DEPARTMENTCODE,SA_DEPARTMENTNAME,"
@@ -248,6 +260,9 @@ public class OrderTask extends AbstractTask {
         jdbcTemplate.execute(insertSaleSql, saleId, saleCode, customer.getCu_id(), customer.getCu_code(), customer.getCu_name(), customer.getCu_arcode(), customer.getCu_arname(),
                 order.getOrderDeliveryAddr().getDeliveryAddress(), order.getCode(), order.getBuyerName(), order.getBuyerMobile());
         jdbcTemplate.execute(insertDetailSql);
+        String logOrderSql = "insert into LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK)" +
+                "values(LOGORDER_SEQ.NEXTVAL,'" + order.getCode() + "', '成功', sysdate,'" + saleCode + "', '销售订单生成成功')";
+        jdbcTemplate.execute(logOrderSql);
     }
 
     /**
@@ -331,6 +346,9 @@ public class OrderTask extends AbstractTask {
                 prodCode = String.valueOf(productMap.get("prodCode"));
                 prodId = Integer.valueOf(String.valueOf(productMap.get("prodId")));
             }else {
+                String logOrderSql = "insert into LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK)" +
+                        "values(LOGORDER_SEQ.NEXTVAL,'" + order.getCode() + "', '失败', sysdate,'', '采购订单生成失败,没有物料资料')";
+                jdbcTemplate.execute(logOrderSql);
                 return false;
             }
             String insertDetailSql = "insert into PurchaseDetail(pd_id,pd_puid,pd_detno,pd_code,pd_prodcode,pd_prodid,pd_qty,pd_price,pd_rate,pd_delivery) "
@@ -344,6 +362,9 @@ public class OrderTask extends AbstractTask {
         String sendStatus = jdbcTemplate.getString("SELECT PU_SENDSTATUS FROM PURCHASE WHERE PU_ID = ?", purchaseId);
         LOGGER.info("生成的采购订单id={},上传状态={}", purchaseId, sendStatus);
         jdbcTemplate.execute("UPDATE PURCHASE SET PU_SENDSTATUS = '已上传' WHERE PU_ID = ?", purchaseId);
+        String logOrderSql = "insert into LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK)" +
+                "values(LOGORDER_SEQ.NEXTVAL,'" + order.getCode() + "', '成功', sysdate,'" + saleCode + "', '采购订单生成成功')";
+        jdbcTemplate.execute(logOrderSql);
         return true;
     }