|
|
@@ -950,6 +950,10 @@ public class Order extends Controller {
|
|
|
if (sys_enterpriseid <= 0) {
|
|
|
return getErrReturnObject().setErrMsg("请选择订货企业信息").toString();
|
|
|
}
|
|
|
+ if(!(row.getString("status").equals("新建") && !row.getString("type").equals("特殊订单")) || !(row.getString("status").equals("确认") && row.getString("type").equals("特殊订单"))){
|
|
|
+ return getErrReturnObject().setErrMsg("新建或非确认无法提交").toString();
|
|
|
+ }
|
|
|
+
|
|
|
// String type = row.getString("type");
|
|
|
//提交
|
|
|
String status = "提交";
|
|
|
@@ -1247,7 +1251,55 @@ public class Order extends Controller {
|
|
|
return getSucReturnObject().toString();
|
|
|
}
|
|
|
|
|
|
- @API(title = "复核反复核", apiversion = R.ID20230331102503.v1.class)
|
|
|
+ @API(title = "预提交反预提交", apiversion = R.ID20230331152503.v1.class)
|
|
|
+ @CACHEING_CLEAN(apiClass = {Order.class, OrderItems.class, restcontroller.sale.order.Order.class})
|
|
|
+ public String presubmit() throws YosException {
|
|
|
+ boolean isrecheck = content.getBooleanValue("isrecheck");
|
|
|
+ Long sa_orderid = content.getLong("sa_orderid");
|
|
|
+ Rows rows = getOrderRows(this, sa_orderid);
|
|
|
+ if (rows.isEmpty()) {
|
|
|
+ return getErrReturnObject().setErrMsg("订单不存在").toString();
|
|
|
+ }
|
|
|
+ Row row = rows.get(0);
|
|
|
+ String sonum = row.getString("sonum");
|
|
|
+ //验证结算企业
|
|
|
+ Long sys_enterpriseid = row.getLong("sys_enterpriseid");
|
|
|
+
|
|
|
+ BigDecimal amount = beans.order.Order.getAmount(this, sa_orderid);
|
|
|
+ ArrayList<String> sqlList = new ArrayList<>();
|
|
|
+ if (isrecheck) {
|
|
|
+ if (!row.getString("status").equals("新建")) {
|
|
|
+ return getErrReturnObject().setErrMsg("单号为:【" + row.getString("sonum") + "】的订单为非新建状态,无法预提交")
|
|
|
+ .toString();
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ if (!row.getString("status").equals("预提交")) {
|
|
|
+ return getErrReturnObject().setErrMsg("单号为:【" + row.getString("sonum") + "】的订单为非预提交状态,无法撤回")
|
|
|
+ .toString();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ SQLFactory sqlFactoryupdate;
|
|
|
+ String message ="";
|
|
|
+ if (isrecheck) {
|
|
|
+ message = "您的订单【" + sonum + "】已预提交,请注意查看!";
|
|
|
+ sqlFactoryupdate = new SQLFactory(this, "订单预提交");
|
|
|
+ sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "预提交", "订单预提交成功,金额:" + amount).getSQL());
|
|
|
+ } else {
|
|
|
+ message = "您的订单【" + sonum + "】已反预提交,请注意查看!";
|
|
|
+ sqlFactoryupdate = new SQLFactory(this, "订单反预提交");
|
|
|
+ sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "反预提交", "订单反预提交成功,金额:" + amount).getSQL());
|
|
|
+ }
|
|
|
+ sqlFactoryupdate.addParameter("siteid", siteid);
|
|
|
+ sqlFactoryupdate.addParameter("sa_orderid", sa_orderid);
|
|
|
+ sqlFactoryupdate.addParameter("recheckby", username);
|
|
|
+ sqlList.add(sqlFactoryupdate.getSQL());
|
|
|
+
|
|
|
+ dbConnect.runSqlUpdate(sqlList);
|
|
|
+ sendMsg(message, sa_orderid, sys_enterpriseid);
|
|
|
+ return getSucReturnObject().toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ @API(title = "确认反确认", apiversion = R.ID20230331102503.v1.class)
|
|
|
@CACHEING_CLEAN(apiClass = {Order.class, OrderItems.class, restcontroller.sale.order.Order.class})
|
|
|
public String recheck() throws YosException {
|
|
|
boolean isrecheck = content.getBooleanValue("isrecheck");
|
|
|
@@ -1265,26 +1317,31 @@ public class Order extends Controller {
|
|
|
BigDecimal amount = beans.order.Order.getAmount(this, sa_orderid);
|
|
|
ArrayList<String> sqlList = new ArrayList<>();
|
|
|
if (isrecheck) {
|
|
|
- if (!row.getString("status").equals("审核")) {
|
|
|
- return getErrReturnObject().setErrMsg("单号为:【" + row.getString("sonum") + "】的订单为非审核状态,无法复核")
|
|
|
+ if (!row.getString("status").equals("预提交")) {
|
|
|
+ return getErrReturnObject().setErrMsg("单号为:【" + row.getString("sonum") + "】的订单为非预提交状态,无法确认")
|
|
|
.toString();
|
|
|
}
|
|
|
} else {
|
|
|
- if (!row.getString("status").equals("复核")) {
|
|
|
- return getErrReturnObject().setErrMsg("单号为:【" + row.getString("sonum") + "】的订单为非复核状态,无法反复核")
|
|
|
+ if (!row.getString("status").equals("确认")) {
|
|
|
+ return getErrReturnObject().setErrMsg("单号为:【" + row.getString("sonum") + "】的订单为非确认状态,无法反确认")
|
|
|
.toString();
|
|
|
}
|
|
|
}
|
|
|
SQLFactory sqlFactoryupdate;
|
|
|
String message ="";
|
|
|
if (isrecheck) {
|
|
|
- message = "您的订单【" + sonum + "】已复核,请注意查看!";
|
|
|
- sqlFactoryupdate = new SQLFactory(this, "订单复核");
|
|
|
- sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "复核", "订单复核成功,金额:" + amount).getSQL());
|
|
|
+ message = "您的订单【" + sonum + "】已确认,请注意查看!";
|
|
|
+ sqlFactoryupdate = new SQLFactory(this, "订单确认");
|
|
|
+ sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "确认", "订单确认成功,金额:" + amount).getSQL());
|
|
|
} else {
|
|
|
- message = "您的订单【" + sonum + "】已反复核,请注意查看!";
|
|
|
- sqlFactoryupdate = new SQLFactory(this, "订单反复核");
|
|
|
- sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "反复核", "订单反复核成功,金额:" + amount).getSQL());
|
|
|
+ message = "您的订单【" + sonum + "】已反确认,请注意查看!";
|
|
|
+ if(row.getBoolean("createflag")){
|
|
|
+ sqlFactoryupdate = new SQLFactory(this, "订单反确认(业务端创建)");
|
|
|
+ }else {
|
|
|
+ sqlFactoryupdate = new SQLFactory(this, "订单反确认(管理端创建)");
|
|
|
+ }
|
|
|
+
|
|
|
+ sqlList.add(DataContrlLog.createLog(this, "sa_order", sa_orderid, "反确认", "订单反确认成功,金额:" + amount).getSQL());
|
|
|
}
|
|
|
sqlFactoryupdate.addParameter("siteid", siteid);
|
|
|
sqlFactoryupdate.addParameter("sa_orderid", sa_orderid);
|
|
|
@@ -1362,13 +1419,18 @@ public class Order extends Controller {
|
|
|
|
|
|
BigDecimal amount = beans.order.Order.getAmount(this, sa_orderid);
|
|
|
ArrayList<String> sqlList = new ArrayList<>();
|
|
|
+ if(row.getString("type").equals("特殊订单")){
|
|
|
+ sqlList.add("update sa_order set status='确认' where sa_orderid = "+sa_orderid+" and siteid='"+siteid+"'");
|
|
|
+ }else{
|
|
|
+ SQLFactory sqlFactory = new SQLFactory(this, "订单_撤回");
|
|
|
+ sqlFactory.addParameter("siteid", siteid);
|
|
|
+ sqlFactory.addParameter("userid", userid);
|
|
|
+ sqlFactory.addParameter("username", username);
|
|
|
+ sqlFactory.addParameter_in("sa_orderid", sa_orderid);
|
|
|
+ sqlList.add(sqlFactory.getSQL());
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
- SQLFactory sqlFactory = new SQLFactory(this, "订单_撤回");
|
|
|
- sqlFactory.addParameter("siteid", siteid);
|
|
|
- sqlFactory.addParameter("userid", userid);
|
|
|
- sqlFactory.addParameter("username", username);
|
|
|
- sqlFactory.addParameter_in("sa_orderid", sa_orderid);
|
|
|
- sqlList.add(sqlFactory.getSQL());
|
|
|
|
|
|
sqlList.addAll(returnPayBill(row, "订单撤回", "由" + sonum + "订单撤回时自动产生"));
|
|
|
|