|
|
@@ -50,6 +50,8 @@ public class Order extends Controller {
|
|
|
@API(title = "新增或更新", apiversion = R.ID20221108111402.v1.class, intervaltime = 200)
|
|
|
@CACHEING_CLEAN(apiClass = {Order.class, OrderItems.class, restcontroller.sale.order.Order.class})
|
|
|
public String insertOrUpdate() throws YosException {
|
|
|
+
|
|
|
+ ArrayList<String> sqlList =new ArrayList<>();
|
|
|
//表名
|
|
|
String tableName = "sa_order";
|
|
|
Long sa_orderid = content.getLong("sa_orderid");
|
|
|
@@ -105,10 +107,10 @@ public class Order extends Controller {
|
|
|
//营销账户类型ID
|
|
|
if ((type.equals("标准订单") || type.equals("特殊订单")) && content.getString("tradefield").equals("整装工程")) {
|
|
|
sqlFactory.addParameter("sa_accountclassid", "69");
|
|
|
- updateAccountclassinfos(sa_orderid,69);
|
|
|
+ sqlList.addAll(updateAccountclassinfos(sa_orderid,69));
|
|
|
} else {
|
|
|
sqlFactory.addParameter("sa_accountclassid", beans.order.Order.getDefaultAccount(siteid, type));
|
|
|
- updateAccountclassinfos(sa_orderid,beans.order.Order.getDefaultAccount(siteid, type));
|
|
|
+ sqlList.addAll(updateAccountclassinfos(sa_orderid,beans.order.Order.getDefaultAccount(siteid, type)));
|
|
|
}
|
|
|
//品牌ID
|
|
|
sqlFactory.addParameter("sa_brandid", sa_brandid);
|
|
|
@@ -166,7 +168,7 @@ public class Order extends Controller {
|
|
|
}
|
|
|
if(content.containsKey("sa_accountclassid")){
|
|
|
sqlFactory.addParameter("sa_accountclassid", content.getLongValue("sa_accountclassid"));
|
|
|
- updateAccountclassinfos(sa_orderid,content.getLongValue("sa_accountclassid"));
|
|
|
+ sqlList.addAll(updateAccountclassinfos(sa_orderid,content.getLongValue("sa_accountclassid")));
|
|
|
}
|
|
|
} else {
|
|
|
//订单更新时
|
|
|
@@ -184,7 +186,7 @@ public class Order extends Controller {
|
|
|
}
|
|
|
}
|
|
|
sqlFactory.addParameter("sa_accountclassid", content.getLongValue("sa_accountclassid"));
|
|
|
- updateAccountclassinfos(sa_orderid, content.getLongValue("sa_accountclassid"));
|
|
|
+ sqlList.addAll(updateAccountclassinfos(sa_orderid, content.getLongValue("sa_accountclassid")));
|
|
|
}
|
|
|
if (billdate.equals("")) {
|
|
|
sqlFactory.addParameter_SQL("billdate", "createdate");
|
|
|
@@ -208,6 +210,7 @@ public class Order extends Controller {
|
|
|
|
|
|
dbConnect.runSqlUpdate(sql);
|
|
|
|
|
|
+ dbConnect.runSqlUpdate(sqlList);
|
|
|
content.put("sa_orderid", sa_orderid);
|
|
|
return selectDetail();
|
|
|
}
|
|
|
@@ -215,6 +218,7 @@ public class Order extends Controller {
|
|
|
@API(title = "购物车转化订单", apiversion = R.ID20221128183202.v1.class)
|
|
|
@CACHEING_CLEAN(apiClass = {Order.class, OrderItems.class, restcontroller.sale.order.Order.class})
|
|
|
public String ship() throws YosException {
|
|
|
+ ArrayList<String> sqlList1 =new ArrayList<>();
|
|
|
Long istool = content.getLongValue("istool");
|
|
|
Long sa_brandid = 0L;
|
|
|
String tradefield = content.getString("tradefield");
|
|
|
@@ -269,8 +273,10 @@ public class Order extends Controller {
|
|
|
//营销账户类型ID
|
|
|
if ((type.equals("标准订单") || type.equals("特殊订单")) && content.getString("tradefield").equals("整装工程")) {
|
|
|
sqlFactory.addParameter("sa_accountclassid", "69");
|
|
|
+ sqlList1.addAll(updateAccountclassinfos(sa_orderid,69));
|
|
|
} else {
|
|
|
sqlFactory.addParameter("sa_accountclassid", beans.order.Order.getDefaultAccount(siteid, type));
|
|
|
+ sqlList1.addAll(updateAccountclassinfos(sa_orderid,beans.order.Order.getDefaultAccount(siteid, type)));
|
|
|
}
|
|
|
|
|
|
//品牌ID
|
|
|
@@ -351,6 +357,8 @@ public class Order extends Controller {
|
|
|
|
|
|
dbConnect.runSqlUpdate(sqlList);
|
|
|
|
|
|
+ dbConnect.runSqlUpdate(sqlList1);
|
|
|
+
|
|
|
ClearData.clearShoppingCart(this);
|
|
|
|
|
|
return selectDetail();
|
|
|
@@ -2776,13 +2784,13 @@ public class Order extends Controller {
|
|
|
/**
|
|
|
* 更新订单扣款信息
|
|
|
*/
|
|
|
- public void updateAccountclassinfos(Long sa_orderid,long sa_accountclassid) throws YosException {
|
|
|
+ public ArrayList<String> updateAccountclassinfos(Long sa_orderid,long sa_accountclassid) throws YosException {
|
|
|
|
|
|
Rows orderRows = getOrderRows(this, sa_orderid);
|
|
|
-
|
|
|
+ ArrayList<String> sqlList =new ArrayList<>();
|
|
|
|
|
|
if (orderRows.isEmpty()) {
|
|
|
- return;
|
|
|
+ return sqlList;
|
|
|
}
|
|
|
JSONArray jsonArray =new JSONArray();
|
|
|
BigDecimal orderSumamount = BigDecimal.ZERO;
|
|
|
@@ -2791,7 +2799,7 @@ public class Order extends Controller {
|
|
|
orderSumamount=orderSumamount.add(classamountrow.getBigDecimal("sumamount"));
|
|
|
}
|
|
|
if(orderSumamount.compareTo(getAmount(this,sa_orderid))!=0){
|
|
|
- return;
|
|
|
+ return sqlList;
|
|
|
}
|
|
|
|
|
|
RowsMap classamountrowsMap =classamountrows.toRowsMap("topitemclassid");
|
|
|
@@ -2864,8 +2872,8 @@ public class Order extends Controller {
|
|
|
jsonArray.add(jsonObject);
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- dbConnect.runSqlUpdate("update sa_order set sa_accountclassinfos='"+jsonArray+"' where sa_orderid="+sa_orderid+" and siteid='"+siteid+"'");
|
|
|
+ sqlList.add("update sa_order set sa_accountclassinfos='"+jsonArray+"' where sa_orderid="+sa_orderid+" and siteid='"+siteid+"'");
|
|
|
+ return sqlList;
|
|
|
}
|
|
|
|
|
|
|