Browse Source

农行付款人及出入库单审核优化

hu 6 months ago
parent
commit
c06a564923

+ 15 - 0
src/custom/restcontroller/R.java

@@ -5947,6 +5947,21 @@ public class R {
         public static class v1 {
         }
     }
+
+    public static class ID2025063013343503 {
+        public static class v1 {
+        }
+    }
+
+    public static class ID2025063013413803 {
+        public static class v1 {
+        }
+    }
+
+    public static class ID2025063013434203 {
+        public static class v1 {
+        }
+    }
 }
 
 

+ 99 - 0
src/custom/restcontroller/webmanage/sale/bankpayer/bankpayer.java

@@ -0,0 +1,99 @@
+package restcontroller.webmanage.sale.bankpayer;
+
+import beans.data.BatchDeleteErr;
+import beans.datacontrllog.DataContrlLog;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import common.Controller;
+import common.YosException;
+import common.annotation.API;
+import common.annotation.CACHEING;
+import common.annotation.CACHEING_CLEAN;
+import common.data.*;
+import restcontroller.R;
+
+import java.util.ArrayList;
+
+@API(title = "农行付款人")
+public class bankpayer extends Controller {
+    public bankpayer(JSONObject content) throws YosException {
+        super(content);
+    }
+
+    @API(title = "新增更新农行付款人", apiversion = R.ID2025063013343503.v1.class)
+    @CACHEING_CLEAN(apiClass = {bankpayer.class})
+    public String insertormodify_bankpayer() throws YosException {
+        ArrayList<String> sqlList = new ArrayList<>();
+        // 表名
+        String tableName = "sys_enterprise_bankpayer";
+        Long sys_enterprise_bankpayerid = content.getLong("sys_enterprise_bankpayerid");
+        long sys_enterpriseid=content.getLong("sys_enterpriseid");
+        String name = content.getStringValue("name");
+        if (sys_enterprise_bankpayerid <= 0 || dbConnect.runSqlQuery(
+                        "select sys_enterprise_bankpayerid from sys_enterprise_bankpayer where sys_enterprise_bankpayerid=" + sys_enterprise_bankpayerid)
+                .isEmpty()) {
+            sys_enterprise_bankpayerid = createTableID(tableName);
+            InsertSQL insertSQL = SQLFactory.createInsertSQL(this, tableName);
+            insertSQL.setUniqueid(sys_enterprise_bankpayerid);
+            insertSQL.setSiteid(siteid);
+            insertSQL.setValue("sys_enterpriseid", sys_enterpriseid);
+            insertSQL.setValue("name", name);
+            sqlList.add(insertSQL.getSQL());
+        } else {
+            UpdateSQL updateSQL = SQLFactory.createUpdateSQL(this, tableName);
+            updateSQL.setUniqueid(sys_enterprise_bankpayerid);
+            updateSQL.setSiteid(siteid);
+            updateSQL.setValue("sys_enterpriseid", sys_enterpriseid);
+            updateSQL.setValue("name", name);
+            sqlList.add(updateSQL.getSQL());
+
+        }
+        dbConnect.runSqlUpdate(sqlList);
+
+        return getSucReturnObject().toString();
+
+    }
+
+
+    @API(title = "查询农行付款人列表", apiversion = R.ID2025063013413803.v1.class)
+    @CACHEING
+    public String querybankpayerList() throws YosException {
+        long sys_enterpriseid =content.getLong("sys_enterpriseid");
+        StringBuffer where = new StringBuffer(" 1=1 ");
+        if (content.containsKey("where")) {
+            JSONObject whereObject = content.getJSONObject("where");
+            if (whereObject.containsKey("condition") && !"".equals(whereObject.getString("condition"))) {
+                where.append(" and(");
+                where.append("t1.name like'%").append(whereObject.getString("condition")).append("%' ");
+                where.append(")");
+            }
+
+        }
+
+        QuerySQL querySQL = SQLFactory.createQuerySQL(this, "sys_enterprise_bankpayer", "*");
+        querySQL.setTableAlias("t1");
+        querySQL.setSiteid(siteid);
+        querySQL.setWhere(where.toString());
+        querySQL.setWhere("t1.sys_enterpriseid",sys_enterpriseid);
+        querySQL.setPage(pageSize, pageNumber);
+        Rows rows = querySQL.query();
+
+        return getSucReturnObject().setData(rows).toString();
+    }
+
+
+    @API(title = "删除", apiversion = R.ID2025063013434203.v1.class)
+    @CACHEING_CLEAN(apiClass = {bankpayer.class})
+    public String delete() throws YosException {
+        JSONArray sys_enterprise_bankpayerids = content.getJSONArray("sys_enterprise_bankpayerids");
+        BatchDeleteErr batchDeleteErr = BatchDeleteErr.create(this, sys_enterprise_bankpayerids.size());
+        for (Object o : sys_enterprise_bankpayerids) {
+            long sys_enterprise_bankpayerid = Long.parseLong(o.toString());
+            dbConnect.runSqlUpdate("delete from sys_enterprise_bankpayer where siteid='" + siteid + "' and sys_enterprise_bankpayerid="
+                    + sys_enterprise_bankpayerid);
+        }
+        return batchDeleteErr.getReturnObject().toString();
+
+    }
+
+}

+ 1 - 1
src/custom/restcontroller/webmanage/sale/bankstatement/CreateBankstatement.java

@@ -65,7 +65,7 @@ public class CreateBankstatement {
                 Rows enterprise = controller.dbConnect.runSqlQuery("select sys_enterpriseid,bankcardno from sys_enterprise_bank where siteid='" + siteid + "' and bankcardno=" + jsonObject.getString("oppaccno"));
                 if (enterprise.isNotEmpty() && enterprise.size() == 1) {
                     long sys_enterpriseid = enterprise.get(0).getLong("sys_enterpriseid");
-                    JSONObject createcashbill = CreateCashbill.createcashbill(controller, sys_enterpriseid, amount, siteid, sa_bankstatementid, banktype);
+                    JSONObject createcashbill = CreateCashbill.createcashbill(controller, sys_enterpriseid, amount, siteid, sa_bankstatementid, banktype, jsonObject.getStringValue("oppname"));
                     if (createcashbill != null) {
                         sqlFactory.addParameter("sys_enterpriseid", sys_enterpriseid);
                         sqlFactory.addParameter("status", "已入账(系统)");

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

@@ -7,6 +7,7 @@ import common.ServiceController;
 import common.YosException;
 import common.data.Rows;
 import common.data.SQLFactory;
+import common.data.db.DBConnect;
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
@@ -34,7 +35,7 @@ public class CreateCashbill extends Controller {
      * @return
      * @throws YosException
      */
-    public static JSONObject createcashbill(ServiceController controller, long sys_enterpriseid, BigDecimal amount, String siteid, Long ownerid, String username) throws YosException {
+    public static JSONObject createcashbill(ServiceController controller, long sys_enterpriseid, BigDecimal amount, String siteid, Long ownerid, String username,String oppname) throws YosException {
         Rows sa_accountclassidRows = controller.dbConnect.runSqlQuery("select sa_accountclassid from sa_accountclass where siteid='" + siteid + "' and accountno='01'");
         if (sa_accountclassidRows.isNotEmpty()) {
             Long sa_accountclassid = sa_accountclassidRows.get(0).getLong("sa_accountclassid");
@@ -54,7 +55,13 @@ public class CreateCashbill extends Controller {
             sqlFactory.addParameter("username", username);
             sqlFactory.addParameter("ownertable", "sa_bankstatement");
             sqlFactory.addParameter("ownerid", ownerid);
-            sqlFactory.addParameter("remarks", "由" + username + "银企直连自动生成");
+            Rows bankpayerrows = controller.dbConnect.runSqlQuery("select * from sys_enterprise_bankpayer where siteid='"+siteid+"' and sys_enterpriseid="+sys_enterpriseid+" and name='"+oppname+"'");
+            if(bankpayerrows.isNotEmpty()){
+                sqlFactory.addParameter("remarks", "该单由农行银企直连自动生成,来源银行账户名称:"+oppname);
+            }else{
+                sqlFactory.addParameter("remarks", "该单由农行银企直连自动生成,来源银行账户名称:"+oppname+";未在指定打款人列表");
+            }
+
             // 审核逻辑判断
             Rows rowsaccountbalance = controller.dbConnect.runSqlQuery(
                     "select sa_accountbalanceid,balance,creditquota from sa_accountbalance where sys_enterpriseid ='"

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

@@ -325,7 +325,7 @@ public class stockbill extends Controller {
         String type=rows.get(0).getString("type");
         boolean isinstock = isinstock(type,rows.get(0).getString("rb"),true);
         if(type.equals("销售出库")){
-            String str = unxsckcheck(st_stockbillid);
+            String str = xsckcheck(st_stockbillid);
             if(!str.equals("success")){
                 return getErrReturnObject().setErrMsg(str)
                         .toString();