Browse Source

Merge remote-tracking branch 'origin/master'

liusw 6 years ago
parent
commit
cfadb14c1a

+ 3 - 3
src/main/java/com/uas/erp/schedular/diymall/domain/Order.java

@@ -45,13 +45,13 @@ public class Order {
     OrderExpress orderExpress; // 订单物流信息
     List<OrderTimeAxis> orderTimeAxis; //订单时间轴
     SellerDueBank sellerDueBank; // 商家收款信息
-    private int erpEnuu;        //erp-客户或供应商enuu
+    private Integer erpEnuu;        //erp-客户或供应商enuu
 
-    public int getErpEnuu() {
+    public Integer getErpEnuu() {
         return erpEnuu;
     }
 
-    public void setErpEnuu(int erpEnuu) {
+    public void setErpEnuu(Integer erpEnuu) {
         this.erpEnuu = erpEnuu;
     }
 

+ 20 - 9
src/main/java/com/uas/erp/schedular/mall/task/OrderTask.java

@@ -227,8 +227,8 @@ public class OrderTask extends AbstractTask {
                         + "sa_apcustcode,sa_apcustname,sa_paymentscode,sa_payments,'ADMIN','管理员',sa_departmentcode,sa_departmentname,sa_toplace,'已审核','AUDITED','未过账','UNPOST',sa_need3,sa_need2,'普通','ADMIN',SYSDATE,'ADMIN',SYSDATE,'未打印','UNPRINT','ADMIN','管理员','已上传' "
                         + " FROM SALE WHERE SA_CODE = ?";
         //明细表
-        String detailSql = "INSERT INTO PRODIODETAIL(pd_id,pd_piid,pd_pdno,pd_inoutno,pd_piclass,pd_auditstatus,pd_outqty,pd_ordercode,pd_orderdetno,pd_prodcode,pd_prodid,pd_whcode,pd_whname,pd_sendprice,pd_taxrate,pd_batchCode,pd_pocode) "
-                        + " SELECT PRODIODETAIL_SEQ.NEXTVAL," + saleOutId + ",ROWNUM,'" + saleOutCode + "','出货单','ENTERING',SD_QTY,SA_CODE,SD_DETNO,SD_PRODCODE,SD_PRODID,'SZ01','深圳仓',SD_PRICE,'13','"+ batchCode + "',SA_POCODE "
+        String detailSql = "INSERT INTO PRODIODETAIL(pd_id,pd_piid,pd_pdno,pd_inoutno,pd_piclass,pd_auditstatus,pd_outqty,pd_ordercode,pd_orderdetno,pd_prodcode,pd_prodid,pd_whcode,pd_whname,pd_sendprice,pd_taxrate,pd_batchCode,pd_pocode,pd_invoiceName) "
+                        + " SELECT PRODIODETAIL_SEQ.NEXTVAL," + saleOutId + ",ROWNUM,'" + saleOutCode + "','出货单','ENTERING',SD_QTY,SA_CODE,SD_DETNO,SD_PRODCODE,SD_PRODID,'SZ01','深圳仓',SD_PRICE,'13','"+ batchCode + "',SA_POCODE,sd_invoiceName "
                         + " FROM SALE LEFT JOIN SALEDETAIL ON SA_ID = SD_SAID WHERE SA_CODE = ?";
 
         jdbcTemplate.execute(mainSql, saleCode);
@@ -256,8 +256,8 @@ public class OrderTask extends AbstractTask {
         // 2.明细表数据
         //取批号
         String batchCode = jdbcTemplate.callForString("{call utl_rseq(?,?,?)}", "BatchCode", "/yyMMdd/5");
-        String detailSql = "insert into prodiodetail(pd_id,pd_piid,pd_pdno,pd_inoutno,pd_piclass,pd_accountstatus,pd_accountstatuscode,pd_ordercode,pd_orderdetno,pd_prodcode,pd_prodid,pd_whcode,pd_whname,pd_inqty,pd_orderprice,pd_taxrate,pd_batchcode) "
-                        + " select prodiodetail_seq.nextval," + purcCheckinId + ",rownum,'"+ purcCheckinCode +"','采购验收单','未核算','UNACCOUNT',pu_code,pd_detno,pd_prodcode,pd_prodid,'SZ01','深圳仓',pd_qty,pd_price,'13','"+batchCode+"' from purchase left join purchaseDetail on pu_id = pd_puid where pu_code = ?";
+        String detailSql = "insert into prodiodetail(pd_id,pd_piid,pd_pdno,pd_inoutno,pd_piclass,pd_accountstatus,pd_accountstatuscode,pd_ordercode,pd_orderdetno,pd_prodcode,pd_prodid,pd_whcode,pd_whname,pd_inqty,pd_orderprice,pd_taxrate,pd_batchcode,pd_invoiceName) "
+                        + " select prodiodetail_seq.nextval," + purcCheckinId + ",rownum,'"+ purcCheckinCode +"','采购验收单','未核算','UNACCOUNT',pu_code,pd_detno,pd_prodcode,pd_prodid,'SZ01','深圳仓',pd_qty,pd_price,'13','"+batchCode+"',pd_invoiceName from purchase left join purchaseDetail on pu_id = pd_puid where pu_code = ?";
 
         jdbcTemplate.execute(mainSql, purchaseCode);
         jdbcTemplate.execute(detailSql, purchaseCode);
@@ -290,8 +290,8 @@ public class OrderTask extends AbstractTask {
                 + "SA_TOPLACE,SA_POCODE,SA_STATUS,SA_STATUSCODE,SA_RECORDER,SA_RECORDDATE,SA_AUDITMAN,SA_AUDITDATE,sa_need3,SA_NEED2) "
                 + "VALUES(?,?,SYSDATE,'代运营订单','RMB','1',?,?,?,?,?,'PC31','CBD(款到发货)','ADMIN','管理员','B15','优软云运营组',?,?,'已审核','AUDITED','ADMIN',SYSDATE,'ADMIN',SYSDATE,?,?)";
         //销售订单明细表
-        String insertDetailSql = "INSERT INTO SALEDETAIL(SD_ID, SD_SAID, SD_CODE, SD_DETNO, SD_PRODID, SD_PRODCODE, SD_QTY, SD_PRICE, SD_TAXRATE, SD_DELIVERY) "
-                + "SELECT SALEDETAIL_SEQ.NEXTVAL,'"+saleId+"','"+saleCode+"',pd_detno,pd_prodid,pd_prodcode,pd_qty,pd_price,pd_rate,pd_delivery FROM PURCHASE LEFT JOIN PURCHASEDETAIL ON PU_ID = PD_PUID WHERE PU_REFCODE = '"+saleCode+"'";
+        String insertDetailSql = "INSERT INTO SALEDETAIL(SD_ID, SD_SAID, SD_CODE, SD_DETNO, SD_PRODID, SD_PRODCODE, SD_QTY, SD_PRICE, SD_TAXRATE, SD_DELIVERY,sd_invoiceName) "
+                + "SELECT SALEDETAIL_SEQ.NEXTVAL,'"+saleId+"','"+saleCode+"',pd_detno,pd_prodid,pd_prodcode,pd_qty,pd_price,pd_rate,pd_delivery,pd_invoiceName FROM PURCHASE LEFT JOIN PURCHASEDETAIL ON PU_ID = PD_PUID WHERE PU_REFCODE = '"+saleCode+"'";
 
         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());
@@ -366,6 +366,9 @@ public class OrderTask extends AbstractTask {
                         + "pu_paymentscode,pu_payments,pu_buyercode,pu_buyername,pu_departmentcode,pu_departmentname,pu_shipaddresscode,pu_pocode,pu_status,pu_statuscode,"
                         + "pu_recordman,pu_indate,pu_auditman,pu_auditdate,pu_getprice,pu_isadvance,PU_SENDSTATUS) values(?,?,sysdate,'代运营订单','RMB','1',?,?,?,?,?,?,?,?,'ADMIN','管理员','B15','优软云运营组',?,?,'已审核','AUDITED','ADMIN',sysdate,'ADMIN',sysdate,'0','unadvance','已上传')";
         //供应商资料生成逻辑
+        if (order.getErpEnuu() == null || order.getErpEnuu() == 0) {
+            return false;
+        }
         Vendor vendor = getVendorByUUOrName(order.getCode(), order.getErpEnuu());
         if (null == vendor) {
             return false;
@@ -387,8 +390,8 @@ public class OrderTask extends AbstractTask {
                 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) "
-                    + " values(PurchaseDetail_seq.nextval,"+ purchaseId +","+ (i+1) +",'"+ purchaseCode +"','"+ prodCode +"',"+prodId+",'"+ product.getAmount() +"','"+ product.getUnitPrice() +"','13',sysdate+"+product.getMaxDelivery()+")";
+            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,pd_invoiceName) "
+                    + " values(PurchaseDetail_seq.nextval,"+ purchaseId +","+ (i+1) +",'"+ purchaseCode +"','"+ prodCode +"',"+prodId+",'"+ product.getAmount() +"','"+ product.getUnitPrice() +"','13',sysdate+"+product.getMaxDelivery()+",'"+product.getInvoiceName()+"')";
             insertDetailSqlList.add(insertDetailSql);
         }
 
@@ -432,7 +435,15 @@ public class OrderTask extends AbstractTask {
                         + "values(productVendor_seq.nextval, ?, 1, ?, ?, ?, ?, ?, ?, ?, ?)";
                 jdbcTemplate.execute(insertProductVendorSql, productMap.get("prodId"), vendor.getVe_id(), vendor.getVe_code(), product.getMaterialCode(), product.getSpec(), product.getUnit(), vendor.getVe_name(), productMap.get("prodCode"), product.getMpq());
             }else if (count == 0) {
-                String code = "YS" + product.getMaterialCode();
+                String code = "";
+                if (StringUtils.isEmpty(product.getMaterialCode())) {
+                    String logOrderSql = "INSERT INTO LOGORDER(LO_ID, ORDERCODE , STATUS , SALESTIME , ORDERNUMBER , REMARK) "
+                            + "VALUES(LOGORDER_SEQ.NEXTVAL,'"  + orderCode + "', '失败', SYSDATE, null, '从平台获取到的产品信息uas物料编号为空')";
+                    jdbcTemplate.execute(logOrderSql);
+                    return null;
+                }else {
+                    code = "YS" + product.getMaterialCode();
+                }
                 int id = jdbcTemplate.getInt("SELECT PRODUCT_SEQ.NEXTVAL FROM DUAL");
                 //生成物料资料
                 String insertProductSql = "INSERT INTO PRODUCT(PR_ID,PR_CODE,PR_DETAIL,PR_SPEC,PR_UNIT,PR_ORISPECCODE,PR_BRAND,pr_taxcode,pr_manutype,pr_dhzc,PR_SUPPLYTYPE,PR_ZXBZS,PR_ZXDHL,PR_ACCEPTMETHOD,"

+ 1 - 1
src/main/java/com/uas/erp/schedular/mall/task/ProductTask.java

@@ -296,7 +296,7 @@ public class ProductTask extends AbstractTask {
             SECRETKEY = master.getMa_accesssecret();
         }
         //查询中间表 库存取整
-        List<Stock> stock = jdbcTemplate.queryForBeanList("select TSS_PRODCODE,round(tss_amount,0) tss_amount, TSS_DATE ,pr_zxdhl moq,pr_zxbzs mpq,getsaleprice_hkd(pr_code) price,pr_remark_sale invoiceModel,pr_remark_purchase invoiceName" +
+        List<Stock> stock = jdbcTemplate.queryForBeanList("select TSS_PRODCODE,round(tss_amount,0) tss_amount, TSS_DATE ,pr_zxdhl moq,pr_zxbzs mpq,getsaleprice_hkd(pr_code) price,pr_remark_sale invoiceModel,(case nvl(pr_remark_purchase,' ') when ' ' then pr_detail else pr_remark_purchase end) invoiceName" +
                 " FROM TT_SHOP_STOCK LEFT JOIN PRODUCT ON TSS_PRODCODE=pr_code",Stock.class);
 
         if (!CollectionUtils.isEmpty(stock)) {