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

Merge remote-tracking branch 'origin/develop' into develop

shenjingwei 5 месяцев назад
Родитель
Сommit
64226081a3

+ 83 - 3
src/custom/beans/stockbill/bills/XSCK.java

@@ -118,6 +118,39 @@ public class XSCK extends BasicBill {
                         sqlList.add("update st_stockbill_items set wmsuploadflag2=1 where st_stockbill_itemsid=" + row.getLong("st_stockbill_itemsid"));
                     }
                 }
+                //判断是否关闭订单
+                int orderautoclosepoint = Parameter.getInteger(siteid, "orderautoclosepoint");
+                if(orderautoclosepoint==2){
+                    ArrayList<Long> sa_orderids = itemRows.toArrayList("sa_orderid",new ArrayList<>());
+                    QuerySQL querySQL = SQLFactory.createQuerySQL(controller, "sa_order", "sa_orderid");
+                    querySQL.addJoinTable(BaseClass.JOINTYPE.inner, "sa_orderitems", "t2", "t2.sa_orderid = t1.sa_orderid and t2.siteid = t1.siteid",
+                            "undeliqty","sa_orderitemsid");
+                    querySQL.setTableAlias("t1");
+                    querySQL.setWhere("t1.siteid", siteid);
+                    querySQL.setWhere("t1.sa_orderid", sa_orderids);
+                    querySQL.setWhere("t1.status='审核' and t2.undeliqty!=0");
+                    Rows rows = querySQL.query();
+                    RowsMap rowsMap =rows.toRowsMap("sa_orderid");
+                    RowsMap itemRowsMap=itemRows.toRowsMap("sa_orderid");
+                    for(Long sa_orderid : sa_orderids){
+                        Rows stockbillitemrows = itemRowsMap.getOrDefault(String.valueOf(sa_orderid),new Rows());
+                        Rows orderrows = rowsMap.getOrDefault(String.valueOf(sa_orderid),new Rows());
+                        RowsMap stockbillitemrowsMap =stockbillitemrows.toRowsMap("sa_orderitemsid");
+                        int count=0;
+                        for(Row row : orderrows){
+                            if(stockbillitemrowsMap.containsKey(row.getString("sa_orderitemsid"))){
+                                if(stockbillitemrowsMap.getOrDefault(row.getString("sa_orderitemsid"),new Rows()).sum("qty").compareTo(row.getBigDecimal("undeliqty"))==0){
+                                    count++;
+                                }
+                            }
+                        }
+                        if(orderrows.size()==count){
+                            sqlList.add("update sa_order set status='关闭',closeby='"+controller.username+"',closedate=CURRENT_TIME where sa_orderid=" +sa_orderid);
+                        }
+                    }
+
+                }
+
                 sqlList.addAll(updateAccountbalance_freez(isInStock(ischeck)));
             } else {
                 if (order_paymentnode.equals("3")) {
@@ -166,7 +199,13 @@ public class XSCK extends BasicBill {
                     }
 
                 }
-
+                int orderautoclosepoint = Parameter.getInteger(siteid, "orderautoclosepoint");
+                if(orderautoclosepoint==2){
+                    ArrayList<Long> sa_orderids = itemRows.toArrayList("sa_orderid",new ArrayList<>());
+                    for(Long sa_orderid : sa_orderids){
+                        sqlList.add("update sa_order set status='审核',closeby='',closedate=NULL where sa_orderid=" +sa_orderid);
+                    }
+                }
             }
 
 
@@ -192,6 +231,14 @@ public class XSCK extends BasicBill {
                         sqlList.add("update st_stockbill_items set wmsuploadflag2=0 where st_stockbill_itemsid=" + row.getLong("st_stockbill_itemsid"));
                     }
                 }
+                //判断是否关闭订单
+                int orderautoclosepoint = Parameter.getInteger(siteid, "orderautoclosepoint");
+                if(orderautoclosepoint==2){
+                    ArrayList<Long> sa_orderids = itemRows.toArrayList("sa_orderid",new ArrayList<>());
+                    for(Long sa_orderid : sa_orderids){
+                        sqlList.add("update sa_order set status='审核',closeby='',closedate=NULL where sa_orderid=" +sa_orderid);
+                    }
+                }
                 sqlList.addAll(updateAccountbalance_freez(isInStock(ischeck)));
             } else {
                 if (order_paymentnode.equals("3")) {
@@ -235,6 +282,39 @@ public class XSCK extends BasicBill {
                         sqlList.add("update sa_orderitems set verifiedqty=ifnull(verifiedqty,0)-"+row.getBigDecimal("sumqty")+" where sa_orderitemsid=" + row.getLong("sa_orderitemsid"));
                     }
                 }
+                //判断是否关闭订单
+                int orderautoclosepoint = Parameter.getInteger(siteid, "orderautoclosepoint");
+                if(orderautoclosepoint==2){
+                    ArrayList<Long> sa_orderids = itemRows.toArrayList("sa_orderid",new ArrayList<>());
+                    QuerySQL querySQL = SQLFactory.createQuerySQL(controller, "sa_order", "sa_orderid");
+                    querySQL.addJoinTable(BaseClass.JOINTYPE.inner, "sa_orderitems", "t2", "t2.sa_orderid = t1.sa_orderid and t2.siteid = t1.siteid",
+                            "undeliqty","sa_orderitemsid");
+                    querySQL.setTableAlias("t1");
+                    querySQL.setWhere("t1.siteid", siteid);
+                    querySQL.setWhere("t1.sa_orderid", sa_orderids);
+                    querySQL.setWhere("t1.status='审核' and t2.undeliqty!=0");
+                    Rows rows = querySQL.query();
+                    RowsMap rowsMap =rows.toRowsMap("sa_orderid");
+                    RowsMap itemRowsMap=itemRows.toRowsMap("sa_orderid");
+                    for(Long sa_orderid : sa_orderids){
+                        Rows stockbillitemrows = itemRowsMap.getOrDefault(String.valueOf(sa_orderid),new Rows());
+                        Rows orderrows = rowsMap.getOrDefault(String.valueOf(sa_orderid),new Rows());
+                        RowsMap stockbillitemrowsMap =stockbillitemrows.toRowsMap("sa_orderitemsid");
+                        int count=0;
+                        for(Row row : orderrows){
+                            if(stockbillitemrowsMap.containsKey(row.getString("sa_orderitemsid"))){
+                                if(stockbillitemrowsMap.getOrDefault(row.getString("sa_orderitemsid"),new Rows()).sum("qty").compareTo(row.getBigDecimal("undeliqty"))==0){
+                                    count++;
+                                }
+                            }
+                        }
+                        if(orderrows.size()==count){
+                            sqlList.add("update sa_order set status='关闭',closeby='"+controller.username+"',closedate=CURRENT_TIME where sa_orderid=" +sa_orderid);
+                        }
+                    }
+
+                }
+
             }
 
         }
@@ -250,7 +330,7 @@ public class XSCK extends BasicBill {
     public ArrayList<String> updateAccountbalance_freez(boolean addorsub) throws YosException {
         ArrayList<String> sqllist = new ArrayList<>();
         /******** 冻结数据 ********/
-        Rows rows = dbConnect.runSqlQuery("select t4.sa_accountbalanceid,t3.sa_orderid,t3.sonum,ROUND(sum(t1.qty*t2.price*ifnull(t2.pricerate,1)*ifnull(t2.rwpricerate,1)), 2) amount from st_stockbill_items t1 \n" +
+        Rows rows = dbConnect.runSqlQuery("select t4.sa_accountbalanceid,t3.sa_orderid,t3.sonum,t3.type,ROUND(sum(t1.qty*t2.price*ifnull(t2.pricerate,1)*ifnull(t2.rwpricerate,1)), 2) amount from st_stockbill_items t1 \n" +
                 "                   inner join sa_orderitems t2 on t1.sa_orderitemsid=t2.sa_orderitemsid and t1.siteid=t2.siteid\n" +
                 "                  inner join sa_order t3 on t2.sa_orderid=t3.sa_orderid and t2.siteid=t3.siteid\n" +
                 "\t\t\t\t\t\t\t\t\tleft join sa_accountbalance t4 on t4.sa_accountclassid=t3.sa_accountclassid and t4.sys_enterpriseid=t3.sys_enterpriseid and t4.siteid=t3.siteid\n" +
@@ -274,7 +354,7 @@ public class XSCK extends BasicBill {
                     insertSQL.setValue("sourcetable", "sa_order");
                     insertSQL.setValue("sourceid", sa_orderid);
                     insertSQL.setValue("amount", amount);
-                    insertSQL.setValue("remarks", "由销售订单" + sonum + "审核时冻结");
+                    insertSQL.setValue("remarks", "由"+ (row.getString("type").equals("配件订单")?"配件":"销售")+"订单" + sonum + "审核时冻结");
                     insertSQL.setValue("createby", userInfo.getUserName());
                     insertSQL.setDateValue("createdate");
                     sqllist.add(insertSQL.getSQL());

+ 1 - 0
src/custom/restcontroller/sale/order/Order.java

@@ -80,6 +80,7 @@ public class Order extends Controller {
         QuerySQL expressformQuery = SQLFactory.createQuerySQL(this, "expressform", "*").setTableAlias("t1");
         expressformQuery.addJoinTable(JOINTYPE.inner, "sa_expressform_stockbill", "t2", "t2.expressformid = t1.expressformid");
         expressformQuery.addJoinTable(JOINTYPE.inner, "st_stockbill_items", "t3", "t3.st_stockbillid = t2.st_stockbillid","sa_orderid");
+        expressformQuery.addJoinTable(JOINTYPE.inner, "st_stockbill", "t4", "t3.st_stockbillid = t4.st_stockbillid","tracknumber");
         expressformQuery.setWhere("t3.sa_orderid", sa_orderids);
         expressformQuery.setOrderBy("t1.createdate desc");
         expressformQuery.setDistinct(true);

+ 1 - 0
src/custom/restcontroller/webmanage/sale/accessoryorder/accessoryorder.java

@@ -144,6 +144,7 @@ public class accessoryorder extends Controller {
         QuerySQL expressformQuery = SQLFactory.createQuerySQL(this, "expressform", "*").setTableAlias("t1");
         expressformQuery.addJoinTable(JOINTYPE.inner, "sa_expressform_stockbill", "t2", "t2.expressformid = t1.expressformid");
         expressformQuery.addJoinTable(JOINTYPE.inner, "st_stockbill_items", "t3", "t3.st_stockbillid = t2.st_stockbillid","sa_orderid");
+        expressformQuery.addJoinTable(JOINTYPE.inner, "st_stockbill", "t4", "t3.st_stockbillid = t4.st_stockbillid","tracknumber");
         expressformQuery.setWhere("t3.sa_orderid", rows.toArrayList("sa_orderid"));
         expressformQuery.setOrderBy("t1.createdate desc");
         expressformQuery.setDistinct(true);

+ 58 - 22
src/custom/restcontroller/webmanage/sale/order/Order.java

@@ -644,6 +644,7 @@ public class Order extends Controller {
         QuerySQL expressformQuery = SQLFactory.createQuerySQL(this, "expressform", "*").setTableAlias("t1");
         expressformQuery.addJoinTable(JOINTYPE.inner, "sa_expressform_stockbill", "t2", "t2.expressformid = t1.expressformid");
         expressformQuery.addJoinTable(JOINTYPE.inner, "st_stockbill_items", "t3", "t3.st_stockbillid = t2.st_stockbillid","sa_orderid");
+        expressformQuery.addJoinTable(JOINTYPE.inner, "st_stockbill", "t4", "t3.st_stockbillid = t4.st_stockbillid","tracknumber");
         expressformQuery.setWhere("t3.sa_orderid", sa_orderids);
         expressformQuery.setOrderBy("t1.createdate desc");
         expressformQuery.setDistinct(true);
@@ -1608,13 +1609,14 @@ public class Order extends Controller {
         }
 
         Row orderRow = rows.get(0);
-        Rows departmenthrrows =dbConnect.runSqlQuery("select *from sys_departmenthrid where hrid="+hrid);
-
+        Rows departmenthrrows =dbConnect.runSqlQuery("select t1.*,t2.depname from sys_departmenthrid t1 left join sys_department t2 on t1.departmentid=t2.departmentid where t1.hrid="+hrid);
+        Rows accountbalancerows = dbConnect.runSqlQuery("select * from  sa_accountbalance t1 inner join sa_accountclass t2 on  t1.sa_accountclassid=t2.sa_accountclassid and t1.siteid=t2.siteid where t2.accountname='现金账户' and t1.sys_enterpriseid=" + orderRow.getLong("sys_enterpriseid"));
         long st_stockbillid = createTableID("st_stockbill");
         InsertSQL insertSQL = SQLFactory.createInsertSQL(this, "st_stockbill");
         insertSQL.setUniqueid(st_stockbillid);
         insertSQL.setSiteid(siteid);
         insertSQL.setValue("sys_enterpriseid", orderRow.getLong("sys_enterpriseid"));
+        insertSQL.setValue("sa_accountclassid",accountbalancerows.isNotEmpty()?accountbalancerows.get(0).getLong("sa_accountclassid"):0);
         insertSQL.setValue("rec_contactsid",  orderRow.getLong("rec_contactsid"));
         insertSQL.setValue("departmentid", departmenthrrows.isNotEmpty()?departmenthrrows.get(0).getLong("departmentid"):0);
         insertSQL.setValue("stockid", 0);
@@ -1694,7 +1696,27 @@ public class Order extends Controller {
             sqlList.add(insertSQL.getSQL());
         }
         dbConnect.runSqlUpdate(sqlList);
-        dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
+
+        String depname= departmenthrrows.isNotEmpty()?departmenthrrows.get(0).getString("depname"):"";
+        if(depname.equals("售后部")){
+            if(accountbalancerows.isNotEmpty()){
+                if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
+                    if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount=0,paydiscountamount="+payamount+" where st_stockbillid="+st_stockbillid);
+                    }else{
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount.subtract(accountbalancerows.get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerows.get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                    }
+                }else{
+                    dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
+                }
+
+            }else{
+                dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
+            }
+        }else{
+            dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
+        }
+
         content.put("st_stockbillid",st_stockbillid);
         return getSucReturnObject().setData(st_stockbillid).toString();
     }
@@ -1746,15 +1768,15 @@ public class Order extends Controller {
             }
         }
         Row orderRow = rows.get(0);
-        Rows departmenthrrows =dbConnect.runSqlQuery("select *from sys_departmenthrid where hrid="+hrid);
+        Rows departmenthrrows =dbConnect.runSqlQuery("select t1.*,t2.depname from sys_departmenthrid t1 left join sys_department t2 on t1.departmentid=t2.departmentid where t1.hrid="+hrid);
         Rows accountbalancerows = dbConnect.runSqlQuery("select * from  sa_accountbalance t1 inner join sa_accountclass t2 on  t1.sa_accountclassid=t2.sa_accountclassid and t1.siteid=t2.siteid where t2.accountname='现金账户' and t1.sys_enterpriseid=" + orderRow.getLong("sys_enterpriseid"));
-
         long st_stockbillid = createTableID("st_stockbill");
         InsertSQL insertSQL = SQLFactory.createInsertSQL(this, "st_stockbill");
         insertSQL.setUniqueid(st_stockbillid);
         insertSQL.setSiteid(siteid);
         insertSQL.setValue("sys_enterpriseid", orderRow.getLong("sys_enterpriseid"));
         insertSQL.setValue("rec_contactsid",  orderRow.getLong("rec_contactsid"));
+        insertSQL.setValue("sa_accountclassid",accountbalancerows.isNotEmpty()?accountbalancerows.get(0).getLong("sa_accountclassid"):0);
         insertSQL.setValue("departmentid", departmenthrrows.isNotEmpty()?departmenthrrows.get(0).getLong("departmentid"):0);
         insertSQL.setValue("stockid", 0);
         insertSQL.setValue("type", "销售出库");
@@ -1767,7 +1789,7 @@ public class Order extends Controller {
 
         insertSQL.setValue("outplace", rowsdetail.get(0).getString("outplace"));
         insertSQL.setValue("delivery", orderRow.getString("delivery"));
-        insertSQL.setValue("logisticsmethod", orderRow.getString("logisticsmethod"));
+        insertSQL.setValue("logisticsmethod", "");
         insertSQL.setValue("invoice_enterprisename", orderRow.getString("invoicename"));
         insertSQL.setValue("invoice_address", orderRow.getString("invoiceaddress"));
         insertSQL.setValue("invoice_taxno", orderRow.getString("invoicetaxno"));
@@ -1832,21 +1854,28 @@ public class Order extends Controller {
             sqlList.add(insertSQL.getSQL());
         }
         dbConnect.runSqlUpdate(sqlList);
-        if(accountbalancerows.isNotEmpty()){
-            if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
-                if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
-                    dbConnect.runSqlUpdate("update st_stockbill set payamount=0,paydiscountamount="+accountbalancerows.get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+
+        String depname= departmenthrrows.isNotEmpty()?departmenthrrows.get(0).getString("depname"):"";
+        if(depname.equals("售后部")){
+            if(accountbalancerows.isNotEmpty()){
+                if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
+                    if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount=0,paydiscountamount="+payamount+" where st_stockbillid="+st_stockbillid);
+                    }else{
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount.subtract(accountbalancerows.get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerows.get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                    }
                 }else{
-                    dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount.subtract(accountbalancerows.get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerows.get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                    dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
                 }
+
             }else{
                 dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
             }
-
         }else{
             dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
         }
 
+
         content.put("st_stockbillid",st_stockbillid);
         return getSucReturnObject().setData(st_stockbillid).toString();
     }
@@ -2017,7 +2046,7 @@ public class Order extends Controller {
         Rows accountbalancerows =accountbalanceQuerySQL.query();
         RowsMap accountbalancerowsMap = accountbalancerows.toRowsMap("sys_enterpriseid");
 
-        Rows departmenthrrows =dbConnect.runSqlQuery("select *from sys_departmenthrid where hrid="+hrid);
+        Rows departmenthrrows =dbConnect.runSqlQuery("select t1.*,t2.depname from sys_departmenthrid t1 left join sys_department t2 on t1.departmentid=t2.departmentid where t1.hrid="+hrid);
         for(String sys_enterpriseid :enterpriseSet){
             for(String delivery:deliverySet){
                 if(enterpriserowsMap.get(sys_enterpriseid).toRowsMap("delivery").containsKey(delivery)){
@@ -2028,6 +2057,7 @@ public class Order extends Controller {
                     insertSQL.setSiteid(siteid);
                     insertSQL.setValue("sys_enterpriseid", sys_enterpriseid);
                     insertSQL.setValue("rec_contactsid",  orderdetailRows.get(0).getLong("rec_contactsid"));
+                    insertSQL.setValue("sa_accountclassid",accountbalancerows.isNotEmpty()?accountbalancerows.get(0).getLong("sa_accountclassid"):0);
                     insertSQL.setValue("departmentid", departmenthrrows.isNotEmpty()?departmenthrrows.get(0).getLong("departmentid"):0);
                     insertSQL.setValue("stockid", 0);
                     insertSQL.setValue("type", "销售出库");
@@ -2040,7 +2070,7 @@ public class Order extends Controller {
 
                     insertSQL.setValue("outplace", orderdetailRows.get(0).getString("outplace"));
                     insertSQL.setValue("delivery", orderdetailRows.get(0).getString("delivery"));
-                    insertSQL.setValue("logisticsmethod", orderdetailRows.get(0).getString("logisticsmethod"));
+                    insertSQL.setValue("logisticsmethod","");
                     insertSQL.setValue("invoice_enterprisename",enterprisefinancerowsMap.containsKey(sys_enterpriseid)?enterprisefinancerowsMap.get(sys_enterpriseid).get(0).getString("enterprisename"):"");
                     insertSQL.setValue("invoice_address",enterprisefinancerowsMap.containsKey(sys_enterpriseid)?enterprisefinancerowsMap.get(sys_enterpriseid).get(0).getString("address"):"");
                     insertSQL.setValue("invoice_taxno",enterprisefinancerowsMap.containsKey(sys_enterpriseid)?enterprisefinancerowsMap.get(sys_enterpriseid).get(0).getString("taxno"):"");
@@ -2101,13 +2131,17 @@ public class Order extends Controller {
                         i++;
                         sqlList.add(insertSQL.getSQL());
                     }
-
-                    if(accountbalancerowsMap.containsKey(sys_enterpriseid)){
-                        if(accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
-                            if(accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
-                                sqlList.add("update st_stockbill set payamount=0,paydiscountamount="+accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                    String depname= departmenthrrows.isNotEmpty()?departmenthrrows.get(0).getString("depname"):"";
+                    if(depname.equals("售后部")){
+                        if(accountbalancerowsMap.containsKey(sys_enterpriseid)){
+                            if(accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
+                                if(accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
+                                    sqlList.add("update st_stockbill set payamount=0,paydiscountamount="+payamount+" where st_stockbillid="+st_stockbillid);
+                                }else{
+                                    sqlList.add("update st_stockbill set payamount="+payamount.subtract(accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                                }
                             }else{
-                                sqlList.add("update st_stockbill set payamount="+payamount.subtract(accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerowsMap.get(sys_enterpriseid).get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                                sqlList.add("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
                             }
                         }else{
                             sqlList.add("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
@@ -2115,6 +2149,8 @@ public class Order extends Controller {
                     }else{
                         sqlList.add("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
                     }
+
+
 //                    sqlList.add("update st_stockbill set payamount="+payamount+" where st_stockbillid="+st_stockbillid);
                     stockbillcount++;
                 }
@@ -2821,7 +2857,7 @@ public class Order extends Controller {
         }
 
 
-        sqlList.addAll(updateAccountbalance_freez(amount, true, "由销售订单" + sonum + "审核时冻结", sys_enterpriseid, sa_accountclassid, sa_orderid));
+        sqlList.addAll(updateAccountbalance_freez(amount, true, "由"+ (row.getString("type").equals("配件订单")?"配件":"销售")+"订单" + sonum + "审核时冻结", sys_enterpriseid, sa_accountclassid, sa_orderid));
 
         sqlList.add(getOrderCheckSql(sa_orderid, reviewtype));
 
@@ -2885,7 +2921,7 @@ public class Order extends Controller {
 
         String message = "您的订单【" + sonum + "】已反审核,请注意查看!";
 
-        sqlList.addAll(updateAccountbalance_freez(amount, false, "由销售订单" + sonum + "审核时冻结", sys_enterpriseid, sa_accountclassid, sa_orderid));
+        sqlList.addAll(updateAccountbalance_freez(amount, false, "由"+ (row.getString("type").equals("配件订单")?"配件":"销售")+"订单" + sonum + "审核时冻结", sys_enterpriseid, sa_accountclassid, sa_orderid));
 
         sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "订单反审核", "订单反审核成功,金额:" + amount).getSQL());
 

+ 11 - 2
src/custom/restcontroller/webmanage/sale/order/OrderItems.java

@@ -80,6 +80,7 @@ public class OrderItems extends Controller {
             JSONObject item = (JSONObject) obj;
             Long itemid = item.getLong("itemid");
             Long sa_orderitemsid = item.getLong("sa_orderitemsid");
+            long sa_customersid =item.getLongValue("sa_customersid");
             BigDecimal qty = item.getBigDecimal("qty");
             sumqty = sumqty.add(qty);
 
@@ -113,7 +114,14 @@ public class OrderItems extends Controller {
                 }
 
                 spec = orderItemsHelper.getCustomSpec(itemRowsMap, item);
-                Rows rows = dbConnect.runSqlQuery("SELECT sa_orderitemsid,price from sa_orderitems WHERE siteid='" + siteid + "' and itemid=" + itemid + " and sa_orderid=" + sa_orderid + " and sa_promotion_itemsid=" + item.getLongValue("sa_promotion_itemsid"));
+                Rows rows = new Rows();
+                if(!type.equals("配件订单")){
+                    rows= dbConnect.runSqlQuery("SELECT sa_orderitemsid,price from sa_orderitems WHERE siteid='" + siteid + "' and itemid=" + itemid + " and sa_orderid=" + sa_orderid + " and sa_promotion_itemsid=" + item.getLongValue("sa_promotion_itemsid"));
+                }else{
+                    if(sa_customersid!=0){
+                        rows= dbConnect.runSqlQuery("SELECT t1.sa_orderitemsid,qty from sa_orderitems t1 left join sa_warrantycard t2 on t1.cardno=t2.cardno  WHERE t1.siteid='" + siteid + "' and t1.itemid=" + itemid + " and t1.sa_orderid=" + sa_orderid + " and t2.sa_customersid=" +sa_customersid);
+                    }
+                }
 
                 if (rows.isEmpty()) {
                     sa_orderitemsid = createTableID("sa_orderitems");
@@ -123,8 +131,9 @@ public class OrderItems extends Controller {
                         sa_orderitemsid = createTableID("sa_orderitems");
                         isInsert = true;
                     } else {
-                        price1 = rows.get(0).getBigDecimal("price");
+                        //price1 = rows.get(0).getBigDecimal("price");
                         sa_orderitemsid = rows.get(0).getLong("sa_orderitemsid");
+                        item.put("qty",item.getBigDecimal("qty").add(rows.get(0).getBigDecimal("qty")));
                         isInsert = false;
                     }
 

+ 6 - 2
src/custom/restcontroller/webmanage/sale/sendplan/SQL/销售出库单新增.sql

@@ -1,2 +1,6 @@
-insert into st_stockbill (siteid, st_stockbillid,createby, createdate, billno,billdate,changeby, changedate,checkby,checkdate,sys_enterpriseid, rb,type,remarks,status,departmentid,outplace,rec_contactsid,delivery)
-values ($siteid$, $st_stockbillid$,$createby$, $createdate$, $billno$,$billdate$, $changeby$, $changedate$,$checkby$,$checkdate$,$sys_enterpriseid$,$rb$,$type$,$remarks$,'新建',$departmentid$,$outplace$,$rec_contactsid$,$delivery$);
+insert into st_stockbill (siteid, st_stockbillid,createby, createdate, billno,billdate,changeby, changedate,checkby,checkdate,sys_enterpriseid,
+                          rb,type,remarks,status,departmentid,outplace,rec_contactsid,delivery,logisticsmethod,invoice_enterprisename,invoice_address,
+                          invoice_taxno,name,phonenumber,address)
+values ($siteid$, $st_stockbillid$,$createby$, $createdate$, $billno$,$billdate$, $changeby$, $changedate$,$checkby$,$checkdate$,$sys_enterpriseid$,
+        $rb$,$type$,$remarks$,'新建',$departmentid$,$outplace$,$rec_contactsid$,$delivery$,$logisticsmethod$,$invoice_enterprisename$,$invoice_address$,
+        $invoice_taxno$,$name$,$phonenumber$,$address$);

+ 17 - 2
src/custom/restcontroller/webmanage/sale/sendplan/sendplandetail.java

@@ -367,11 +367,25 @@ public class sendplandetail extends Controller {
                 if (firstItem != null) {
                     sqlFactory.addParameter("outplace", firstItem.getStringValue("outplace"));
                     sqlFactory.addParameter("rec_contactsid", firstItem.getStringValue("rec_contactsid"));
-                    sqlFactory.addParameter("delivery", firstItem.getStringValue("delivery"));
+                    sqlFactory.addParameter("delivery", "");
+                    sqlFactory.addParameter("logisticsmethod", firstItem.getStringValue("logisticsmethod"));
+                    sqlFactory.addParameter("invoice_enterprisename", firstItem.getStringValue("invoicename"));
+                    sqlFactory.addParameter("invoice_address", firstItem.getStringValue("invoiceaddress"));
+                    sqlFactory.addParameter("invoice_taxno", firstItem.getStringValue("invoicetaxno"));
+                    sqlFactory.addParameter("name", firstItem.getStringValue("contact"));
+                    sqlFactory.addParameter("phonenumber", firstItem.getStringValue("phonenumber"));
+                    sqlFactory.addParameter("address", firstItem.getStringValue("address"));
                 } else {
                     sqlFactory.addParameter("outplace", "");
                     sqlFactory.addParameter("rec_contactsid", 0);
                     sqlFactory.addParameter("delivery", "");
+                    sqlFactory.addParameter("logisticsmethod", "");
+                    sqlFactory.addParameter("invoice_enterprisename", "");
+                    sqlFactory.addParameter("invoice_address","");
+                    sqlFactory.addParameter("invoice_taxno", "");
+                    sqlFactory.addParameter("name", "");
+                    sqlFactory.addParameter("phonenumber", "");
+                    sqlFactory.addParameter("address", "");
                 }
 
 
@@ -451,7 +465,8 @@ public class sendplandetail extends Controller {
         sqlFactory.addParameter("siteid", siteid);
         QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_sendplandetail", "sa_sendplanid", "sa_sendplandetailid", "colorflag", "outplace", "sendqty", "willoutqty", "willinqty", "canuseqty");
         querySQL.setTableAlias("t1");
-        querySQL.addJoinTable(JOINTYPE.left, "sa_order", "t2", "t1.siteid = t2.siteid and t1.sa_orderid = t2.sa_orderid", "sonum", "checkdate", "sys_enterpriseid", "sa_orderid", "rec_contactsid", "delivery", "invoicename", "invoiceaddress");
+        querySQL.addJoinTable(JOINTYPE.left, "sa_order", "t2", "t1.siteid = t2.siteid and t1.sa_orderid = t2.sa_orderid", "sonum", "checkdate", "sys_enterpriseid", "sa_orderid", "rec_contactsid", "delivery","logisticsmethod"
+                , "invoicename", "invoiceaddress","invoicetaxno","contact","phonenumber","address");
         querySQL.addJoinTable(JOINTYPE.left, "sa_orderitems", "t3", "t3.siteid = t1.siteid and t3.sa_orderitemsid = t1.sa_orderitemsid", "rowno", "remarks", "sa_orderitemsid");
         querySQL.addJoinTable(JOINTYPE.left, "sa_agents", "t4", "t4.siteid = t1.siteid and t4.sa_agentsid = t1.sa_agentsid", "agentnum");
         querySQL.addJoinTable(JOINTYPE.left, "sys_enterprise", "t5", "t5.siteid = t4.siteid and t5.sys_enterpriseid = t4.sys_enterpriseid", "enterprisename", "abbreviation");

+ 2 - 2
src/custom/restcontroller/webmanage/sale/sendrepair/sendrepair_pj.java

@@ -59,8 +59,8 @@ public class sendrepair_pj extends Controller {
         ArrayList<String> sqlList = new ArrayList<>();
         Rows rowscount = dbConnect.runSqlQuery("select billno,status from sa_sendrepair where sa_sendrepairid=" + sa_sendrepairid);
         if (!rowscount.isEmpty()) {
-            if (!rowscount.get(0).getString("status").equals("新建")) {
-                return getErrReturnObject().setErrMsg("非新建状态的送修单无法新增修改").toString();
+            if (rowscount.get(0).getString("status").equals("审核") || rowscount.get(0).getString("status").equals("退款确认")) {
+                return getErrReturnObject().setErrMsg("审核或退款确认状态的送修单无法新增修改").toString();
             }
         }
         int i = 0;

+ 26 - 11
src/custom/restcontroller/webmanage/sale/serviceorder/serviceorder.java

@@ -19,6 +19,7 @@ import common.data.*;
 import org.apache.commons.lang.StringUtils;
 import org.apache.cxf.configuration.security.DNConstraintsType;
 import restcontroller.R;
+import restcontroller.webmanage.executorService.Executor;
 import restcontroller.webmanage.sale.serviceorder.tools.HttpURLRest;
 import restcontroller.webmanage.sale.serviceorder.tools.VerificationManage;
 import restcontroller.webmanage.sale.workorder.workorder;
@@ -775,7 +776,6 @@ public class serviceorder extends Controller {
         }else{
             //return getErrReturnObject().setErrMsg("工单创建人信息有误").toString();
         }
-
         if(usertype==99){
             customerphone=userrows.get(0).getString("phonenumber");
         }else{
@@ -784,22 +784,37 @@ public class serviceorder extends Controller {
             }
         }
 
+
         if (!Pattern.matches("^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$", customerphone)) {
             return getErrReturnObject().setErrMsg("手机格式有误").toString();
         }
         String verificationCode = createVerificationCode();
-        Sms sms = new Sms();
-        sms.sendout(Sms.SmsType.PassWord,customerphone, Parameter.getString("chuanglan_sms_model_password"), new String[]{verificationCode});
-        message_map.put(customerphone, new VerificationManage(verificationCode));
+        dbConnect.runSqlUpdate("update sa_workorder set verificationcode='"+verificationCode+"' where sa_workorderid="+sa_workorderid);
+        Rows wxserviceRows = dbConnect.runSqlQuery("select t2.userid from sys_wechatapp_openids t1 inner join sys_users t2 on t1.userid=t2.userid where t2.phonenumber='"+customerphone+"'");
         Row row = new Row();
-        if (!BaseClass.isdebug() && !Arrays.asList(Parameter.getString("system_invalidate_phonenumber").split(",")).contains(customerphone)) {
-            row.put("code", 1);
-            row.put("msg", "手机验证码已发送,请注意查收!");
-        }else{
-            row.put("code", 1);
-            row.put("msg", "手机验证码为:"+verificationCode);
+        if(wxserviceRows.isEmpty()){
+            ArrayList<Long> userids = wxserviceRows.toArrayList("userid",new ArrayList<>());
+            JSONObject extradata = new JSONObject();
+            extradata.put("extraUserList", userids);
+            Executor.sendEml(this, "verificationcode_push", sa_workorderid,siteid, extradata);
+            if (!BaseClass.isdebug() && !Arrays.asList(Parameter.getString("system_invalidate_phonenumber").split(",")).contains(customerphone)) {
+                row.put("code", 1);
+                row.put("msg", "验证码已发送,请注意查收!");
+            }
+        }else {
+            if(StringUtils.isNotBlank("customerphone")){
+                Sms sms = new Sms();
+                sms.sendout(Sms.SmsType.PassWord,customerphone, Parameter.getString("chuanglan_sms_model_password"), new String[]{verificationCode});
+                message_map.put(customerphone, new VerificationManage(verificationCode));
+            }
+            if (!BaseClass.isdebug() && !Arrays.asList(Parameter.getString("system_invalidate_phonenumber").split(",")).contains(customerphone)) {
+                row.put("code", 1);
+                row.put("msg", "手机验证码已发送,请注意查收!");
+            }else{
+                row.put("code", 1);
+                row.put("msg", "手机验证码为:"+verificationCode);
+            }
         }
-
         return getSucReturnObject().setData(row).toString();
     }
 

+ 1 - 1
src/custom/restcontroller/webmanage/sale/stockbill/stockbill.java

@@ -1739,7 +1739,7 @@ public class stockbill extends Controller {
                     insertSQL.setValue("sourcetable", "sa_order");
                     insertSQL.setValue("sourceid", sa_orderid);
                     insertSQL.setValue("amount", amount);
-                    insertSQL.setValue("remarks", "由销售订单" + sonum + "审核时冻结");
+                    insertSQL.setValue("remarks", "由订单" + sonum + "审核时冻结");
                     insertSQL.setValue("createby", username);
                     insertSQL.setDateValue("createdate");
                     sqllist.add(insertSQL.getSQL());

+ 45 - 12
src/custom/restcontroller/webmanage/sale/stockbill/stockbillitems.java

@@ -55,6 +55,9 @@ public class stockbillitems extends Controller {
             if (whereObject.containsKey("enddate") && !"".equals(whereObject.getString("enddate"))) {
                 where.append(" and t3.checkdate <='").append(getDate_Str(whereObject.getDate("enddate"),1)).append("' ");
             }
+            if (whereObject.containsKey("type") && !"".equals(whereObject.getString("type"))) {
+                where.append(" and t3.type ='").append(whereObject.getString("type")).append("' ");
+            }
         }
 //        SQLFactory sqlFactory = new SQLFactory(this, "发货商品列表查询", pageSize, pageNumber, pageSorting);
 //        sqlFactory.addParameter_SQL("where", where);
@@ -72,7 +75,7 @@ public class stockbillitems extends Controller {
         querySQL.setSiteid(siteid);
         querySQL.setWhere("t3.STATUS = '审核' and ifnull(t1.undeliqty, 0) !=0 and ifnull(t1.isfreeze, 0) =0 AND ifnull( t1.isclose, 0 )= 0");
         querySQL.setWhere("t3.sys_enterpriseid",content.getLongValue("sys_enterpriseid"));
-        querySQL.setWhere("if(ifnull(t2.batchcontrol,0)!=0,1=1,t1.sa_orderitemsid not in (select sa_orderitemsid from st_stockbill_items where st_stockbillid='"+content.getLongValue("st_stockbillid")+"'))");
+        querySQL.setWhere("if(ifnull(t2.batchcontrol,0)!=0,1=1,not EXISTS(select 1 from st_stockbill_items where st_stockbillid='"+content.getLongValue("st_stockbillid")+"' and sa_orderitemsid=t1.sa_orderitemsid))");
         //querySQL.setWhere("t1.sa_orderitemsid not in(select t1.sa_orderitemsid from (select t1.sa_orderitemsid,t1.siteid,SUM(t1.qty) qty from sa_dispatch_items t1 inner join sa_dispatch t2 on t1.sa_dispatchid=t2.sa_dispatchid and t1.siteid=t2.siteid where t2.status in('新建','提交') group by t1.sa_orderitemsid,t1.siteid) t1 inner join  sa_orderitems t3 on t1.sa_orderitemsid=t3.sa_orderitemsid and t1.siteid=t3.siteid where t3.undeliqty=t1.qty)");
         querySQL.setWhere(where.toString());
         querySQL.setPage(pageSize, pageNumber);
@@ -181,7 +184,7 @@ public class stockbillitems extends Controller {
 
         for (Object obj : iteminfos) {
             JSONObject iteminfo = (JSONObject) obj;
-            if (iteminfo.getLong("st_stockbill_istemsid") <= 0 || dbConnect
+            if (iteminfo.getLong("st_stockbill_itemsid") <= 0 || dbConnect
                     .runSqlQuery("select st_stockbill_itemsid from st_stockbill_items where st_stockbill_itemsid="
                             + iteminfo.getLong("st_stockbill_itemsid"))
                     .isEmpty()) {
@@ -275,14 +278,30 @@ public class stockbillitems extends Controller {
         }
 
         dbConnect.runSqlUpdate(sqlList);
+
+
         Rows rowsdetail = dbConnect.runSqlQuery("select amount,qty from st_stockbill_items where st_stockbillid=" + st_stockbillid);
-        Rows stockbillrows= dbConnect.runSqlQuery("select paydiscountamount from st_stockbill where st_stockbillid=" + st_stockbillid);
-        if(stockbillrows.isNotEmpty()){
-            if(stockbillrows.get(0).getBigDecimal("paydiscountamount").compareTo(rowsdetail.sum("amount"))>0){
-                dbConnect.runSqlUpdate("update st_stockbill set paydiscountamount="+rowsdetail.sum("amount")+",payamount=0 where st_stockbillid="+st_stockbillid);
+        Rows stockbillrows= dbConnect.runSqlQuery("select t1.sys_enterpriseid,t1.paydiscountamount,t2.depname from st_stockbill t1 left join sys_department t2 on t1.departmentid=t2.departmentid where t1.st_stockbillid=" + st_stockbillid);
+        Rows accountbalancerows = dbConnect.runSqlQuery("select * from  sa_accountbalance t1 inner join sa_accountclass t2 on  t1.sa_accountclassid=t2.sa_accountclassid and t1.siteid=t2.siteid where t2.accountname='现金账户' and t1.sys_enterpriseid=" + stockbillrows.get(0).getLong("sys_enterpriseid"));
+        String depname= stockbillrows.get(0).getString("depname");
+        BigDecimal payamount=rowsdetail.sum("amount");
+        if(depname.equals("售后部")){
+            if(accountbalancerows.isNotEmpty()){
+                if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
+                    if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount=0,paydiscountamount="+payamount+" where st_stockbillid="+st_stockbillid);
+                    }else{
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount.subtract(accountbalancerows.get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerows.get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                    }
+                }else{
+                    dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+",paydiscountamount=0 where st_stockbillid="+st_stockbillid);
+                }
+
             }else{
-                dbConnect.runSqlUpdate("update st_stockbill set payamount="+rowsdetail.sum("amount")+"-paydiscountamount where st_stockbillid="+st_stockbillid);
+                dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+",paydiscountamount=0 where st_stockbillid="+st_stockbillid);
             }
+        }else{
+            dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+",paydiscountamount=0 where st_stockbillid="+st_stockbillid);
         }
         return querStcokbillItemsList();
     }
@@ -375,13 +394,27 @@ public class stockbillitems extends Controller {
         updateRowNo(st_stockbillid);
 
         Rows rowsdetail = dbConnect.runSqlQuery("select amount,qty from st_stockbill_items where st_stockbillid=" + st_stockbillid);
-        Rows stockbillrows= dbConnect.runSqlQuery("select paydiscountamount from st_stockbill where st_stockbillid=" + st_stockbillid);
-        if(stockbillrows.isNotEmpty()){
-            if(stockbillrows.get(0).getBigDecimal("paydiscountamount").compareTo(rowsdetail.sum("amount"))>0){
-                dbConnect.runSqlUpdate("update st_stockbill set paydiscountamount="+rowsdetail.sum("amount")+",payamount=0 where st_stockbillid="+st_stockbillid);
+        Rows stockbillrows= dbConnect.runSqlQuery("select t1.sys_enterpriseid,t1.paydiscountamount,t2.depname from st_stockbill t1 left join sys_department t2 on t1.departmentid=t2.departmentid where t1.st_stockbillid=" + st_stockbillid);
+        Rows accountbalancerows = dbConnect.runSqlQuery("select * from sa_accountbalance t1 inner join sa_accountclass t2 on t1.sa_accountclassid=t2.sa_accountclassid and t1.siteid=t2.siteid where t2.accountname='现金账户' and t1.sys_enterpriseid=" + stockbillrows.get(0).getLong("sys_enterpriseid"));
+        String depname= stockbillrows.get(0).getString("depname");
+        BigDecimal payamount=rowsdetail.sum("amount");
+        if(depname.equals("售后部")){
+            if(accountbalancerows.isNotEmpty()){
+                if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(BigDecimal.ZERO)>0){
+                    if(accountbalancerows.get(0).getBigDecimal("discountamount").compareTo(payamount)>0){
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount=0,paydiscountamount="+payamount+" where st_stockbillid="+st_stockbillid);
+                    }else{
+                        dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount.subtract(accountbalancerows.get(0).getBigDecimal("discountamount"))+",paydiscountamount="+accountbalancerows.get(0).getBigDecimal("discountamount")+" where st_stockbillid="+st_stockbillid);
+                    }
+                }else{
+                    dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+",paydiscountamount=0 where st_stockbillid="+st_stockbillid);
+                }
+
             }else{
-                dbConnect.runSqlUpdate("update st_stockbill set payamount="+rowsdetail.sum("amount")+"-paydiscountamount where st_stockbillid="+st_stockbillid);
+                dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+",paydiscountamount=0 where st_stockbillid="+st_stockbillid);
             }
+        }else{
+            dbConnect.runSqlUpdate("update st_stockbill set payamount="+payamount+",paydiscountamount=0 where st_stockbillid="+st_stockbillid);
         }
 
         return batchDeleteErr.getReturnObject().toString();

+ 5 - 0
src/custom/restcontroller/webmanage/sale/u8/u8billcodes.java

@@ -53,7 +53,12 @@ public class u8billcodes extends Controller {
         querySQL.setTableAlias("t1");
         querySQL.addJoinTable(JOINTYPE.left, "plm_item", "t2", "t1.siteid = t2.siteid and t1.itemid = t2.itemid","itemno","itemname","spec","model");
         querySQL.addJoinTable(JOINTYPE.left, "st_stock", "t3", "t1.siteid = t3.siteid and t1.stockid = t3.stockid","stockno","stockname");
+        querySQL.addJoinTable(JOINTYPE.left, "st_stockbill", "t4", "t1.siteid = t4.siteid and t1.st_stockbillid = t4.st_stockbillid","billdate","outplace");
+        querySQL.addJoinTable(JOINTYPE.left, "sv_agents", "t5", "t4.siteid = t5.siteid and t4.sys_enterpriseid = t5.sys_enterpriseid","agentnum","enterprisename","abbreviation");
+        querySQL.addJoinTable(JOINTYPE.left, "plm_unit", "t6", "t2.siteid = t6.siteid and t2.unitid = t6.unitid","unitname");
+
         querySQL.setWhere("t1.siteid", siteid);
+
         querySQL.setWhere("t1.u8id", u8id);
         querySQL.setWhere(where);
         querySQL.setPage(pageSize, pageNumber);

+ 4 - 1
src/custom/restcontroller/webmanage/sale/u8prodprice/u8prodprice.java

@@ -130,10 +130,13 @@ public class u8prodprice extends Controller {
 
         QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sa_u8prodprice", "*");
         querySQL.setTableAlias("t1");
-
+        querySQL.addQueryFields("begindate","DATE(t1.begindate)");
+        querySQL.addQueryFields("enddate","DATE(t1.enddate)");
         querySQL.setSiteid(siteid);
+
         querySQL.setWhere(where.toString());
         querySQL.setPage(pageSize, pageNumber);
+        querySQL.setOrderBy("t1.sa_u8prodpriceid desc");
         Rows rows = querySQL.query();
 
         return getSucReturnObject().setData(rows).toString();

+ 1 - 1
src/custom/restcontroller/webmanage/sale/warrantycard/warrantycard.java

@@ -144,7 +144,7 @@ public class warrantycard extends Controller {
         // 加上一年
         LocalDate newDate = date.plusYears(warrantyday);
 
-        dbConnect.runSqlUpdate(DataContrlLog.createLog(this, "sa_warrantycard", sa_warrantycardid, "保修日期修改", "原日期为 ["+rows.get(0).getDate("begdate")+" - "+rows.get(0).getDate("enddate")+"],修改后日期为 ["+begindate+" - "+(StringUtils.isBlank(enddate) ? newDate.toString() : enddate)+"]。").getSQL());
+        dbConnect.runSqlUpdate(DataContrlLog.createLog(this, "sa_warrantycard", sa_warrantycardid, "保修日期修改", "原日期为 ["+rows.get(0).getString("begdate")+" - "+rows.get(0).getString("enddate")+"],修改后日期为 ["+begindate+" - "+(StringUtils.isBlank(enddate) ? newDate.toString() : enddate)+"]。").getSQL());
         UpdateSQL updateSQL = SQLFactory.createUpdateSQL(this, "sa_warrantycard");
         updateSQL.setUniqueid(sa_warrantycardid);
         updateSQL.setSiteid(siteid);