فهرست منبع

销售发货计划生成的销售出库单带入订单备注及银企直连余额错误及bug修复

hxh 1 ماه پیش
والد
کامیت
ae8a366acd

+ 3 - 3
src/custom/restcontroller/webmanage/sale/bankstatement/CreateCashbill.java

@@ -78,9 +78,9 @@ public class CreateCashbill extends Controller {
                 accountbalanceaddSqlFactory.addParameter("username", username);
                 sqlList.add(accountbalanceaddSqlFactory.getSQL());
             } else {
-                BigDecimal newbalance = amount.add(rowsaccountbalance.get(0).getBigDecimal("balance"));
-                sqlList.add("update sa_accountbalance set balance='" + newbalance
-                        + "',changedate=CURRENT_TIME,changeby ='银企直联自动任务',changeuserid='0' where sys_enterpriseid ='" + sys_enterpriseid
+//                BigDecimal newbalance = amount.add(rowsaccountbalance.get(0).getBigDecimal("balance"));
+                sqlList.add("update sa_accountbalance set balance=balance+" + amount
+                        + ",changedate=CURRENT_TIME,changeby ='银企直联自动任务',changeuserid='0' where sys_enterpriseid ='" + sys_enterpriseid
                         + "' and  sa_accountclassid=" + sa_accountclassid + " and siteid='" + siteid + "'");
             }
             sqlList.add(sqlFactory.getSQL());

+ 4 - 0
src/custom/restcontroller/webmanage/sale/order/OrderItems.java

@@ -1285,6 +1285,7 @@ public class OrderItems extends Controller {
     @CACHEING
     public String selectItemList() throws YosException {
         Long sa_orderid = content.getLong("sa_orderid");
+        boolean ismanage = content.getBooleanValue("ismanage");
 
         String type = "";
         Long order_sys_enterpriseid = 0L;
@@ -1318,6 +1319,9 @@ public class OrderItems extends Controller {
         itemquery.setSiteid(siteid);
         itemquery.setCondition("t1.itemno", "t1.itemname", "t1.model", "t1.spec", "t1.standards", "t3.material", "t3.erpitemno");
         itemquery.setWhere("status", "审核");
+        if(!ismanage){
+            itemquery.setWhere("t1.isonsale=1 and t1.isused=1");
+        }
         itemquery.setWhere("t1.ismodule=0");
         if (sys_enterpriseid > 0 || !type.equals("特殊订单")) {
             itemquery.setWhere("t1.isonsale", true);

+ 19 - 5
src/custom/restcontroller/webmanage/sale/sendplan/sendplandetail.java

@@ -360,6 +360,10 @@ public class sendplandetail extends Controller {
                         .getValue();
                 Iterator<JSONObject> senddetailpaoit1 = paolist.iterator();
                 Iterator<JSONObject> senddetailpaoit = paolist.iterator();
+                Iterator<JSONObject> senddetailpaoit2 = paolist.iterator();
+                List<JSONObject> list = new ArrayList<>();
+                senddetailpaoit2.forEachRemaining(list::add);
+                System.err.println(list.size());
                 SQLFactory sqlFactory = new SQLFactory(this, "销售出库单新增");
                 long st_stockbillid = createTableID("st_stockbill");
                 st_stockbillids.add(st_stockbillid);
@@ -386,7 +390,7 @@ public class sendplandetail extends Controller {
                     sqlFactory.addParameter("province", firstItem.getString("province"));
                     sqlFactory.addParameter("city", firstItem.getString("city"));
                     sqlFactory.addParameter("county", firstItem.getString("county"));
-                    sqlFactory.addParameter("remarks", mergeStrings(senddetailpaoit1,";"));
+                    sqlFactory.addParameter("remarks", mergeStrings(list,";"));
                 } else {
                     sqlFactory.addParameter("outplace", "");
                     sqlFactory.addParameter("rec_contactsid", 0);
@@ -560,15 +564,25 @@ public class sendplandetail extends Controller {
         return getSucReturnObject().toString();
     }
 
-    public static String mergeStrings(Iterator<JSONObject> iterator, String delimiter) throws YosException {
+    public static String mergeStrings(List<JSONObject> list, String delimiter) throws YosException {
         StringBuilder result = new StringBuilder();
-        while (iterator.hasNext()) {
-            JSONObject value = iterator.next();
+        Set<String> seen = new LinkedHashSet<>(); // 使用LinkedHashSet保持顺序
+        for (JSONObject jsonObject : list) {
+            System.err.println("1111");
+            String remark = jsonObject.getString("remarks");
+            if (remark != null && !remark.isEmpty()) {
+                seen.add(remark);
+            }
+        }
+
+        // 构建结果字符串
+        for (String remark : seen) {
             if (result.length() > 0) {
                 result.append(delimiter);
             }
-            result.append(value.getString("remarks"));
+            result.append(remark);
         }
+
         return result.toString();
     }
 

+ 3 - 1
src/custom/restcontroller/webmanage/sale/serviceorder/serviceorder.java

@@ -845,12 +845,14 @@ public class serviceorder extends Controller {
             if (RowsStatus.isNotEmpty()) {
                 if (!RowsStatus.get(0).getString("status").equals("新建")) {
                     //batchDeleteErr.addErr(sa_serviceorderid, "非新建状态的服务申请单无法删除");
-                    continue;
+                    //continue;
                 }
             }
 
             dbConnect.runSqlUpdate("delete from sa_serviceorder where siteid='" + siteid + "' and sa_serviceorderid="
                     + sa_serviceorderid);
+            dbConnect.runSqlUpdate("delete from sa_workorder where siteid='" + siteid + "' and sa_serviceorderid="
+                    + sa_serviceorderid);
         }
         return batchDeleteErr.getReturnObject().toString();