Ver Fonte

应付款

HULEI há 1 mês atrás
pai
commit
cd8a8c50a1

+ 33 - 0
com.awspaas.user.apps.donenow_crm/src/com/awspaas/user/apps/donenow_crm/controller/accountController.java

@@ -680,4 +680,37 @@ public class accountController extends BaseController {
             return ResponseObject.newErrResponse("查询合同服务名称失败:" + e.getMessage());
         }
     }
+
+    @Mapping(value = "com.awspaas.user.apps.donenow_crm.getContactUserId")
+    public ResponseObject getContactUserId(UserContext uc, String id) {
+        try {
+            if (id == null || id.trim().isEmpty()) {
+                return ResponseObject.newErrResponse("联系人ID不能为空");
+            }
+
+
+            String sql = "SELECT USERID " +
+                    "FROM BO_EU_DNCRM_CONTACT " +
+                    "WHERE id = ?";
+
+            Map<String, Object> contactInfo = DBSql.getMap(sql, new Object[]{id});
+
+            String userId = null;
+            if (contactInfo != null && contactInfo.get("USERID") != null) {
+                userId = contactInfo.get("USERID").toString();
+            }
+
+            Map<String, Object> result = new HashMap<>(1);
+            result.put("userId", userId);
+
+            ResponseObject responseObject = ResponseObject.newOkResponse();
+            responseObject.setData(result);
+            return responseObject;
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            return ResponseObject.newErrResponse("查询联系人USERID失败:" + e.getMessage());
+        }
+    }
+
 }

+ 49 - 0
com.awspaas.user.apps.donenow_ctt/src/com/awspaas/user/apps/donenow_ctt/controller/contractApproveController.java

@@ -2072,7 +2072,56 @@ public class contractApproveController {
         }
     }
 
+    @Mapping(value = "com.awspaas.user.apps.donenow_ivt.insertPayRequestDetail")
+    public ResponseObject insertPayRequestDetail(UserContext uc, String paymentPlanId, String payRequestId) {
+        try {
+            String querySql = "SELECT " +
+                    "PROJECT_LOCATION, PERIOD_BEGIN_DATE, PERIOD_END_DATE, LOCATION, EXTTEXT3, " +
+                    "ORDER_NO, PAY_DESC, PLAN_AMOUNT, PLAN_DATE, AMOUNT, REMARK, " +
+                    "PLAN_NO, PAYMENT_PLAN_ID, ORDER_ID, CONTRACT_SERVICE_ID, CONTRACT_COST_ID " +
+                    "FROM VIEW_EU_DNIVT_ORDER_PAYMENT_PLAN " +
+                    "WHERE PAY_PLAN_ID = ?";
+            Map<String, Object> planData = DBSql.getMap(querySql, new Object[]{paymentPlanId});
+
+            if (planData == null) {
+                return ResponseObject.newErrResponse("未找到支付计划ID为 " + paymentPlanId + " 的数据");
+            }
+
+            BO detailBO = new BO();
+
+            detailBO.set("PAY_REQUEST_ID", payRequestId);
+            detailBO.set("PAY_PLAN_ID", planData.get("PAY_PLAN_ID"));
+            detailBO.set("PROJECT_LOCATION", planData.get("PROJECT_LOCATION"));
+            detailBO.set("PERIOD_BEGIN_DATE", planData.get("PERIOD_BEGIN_DATE"));
+            detailBO.set("PERIOD_END_DATE", planData.get("PERIOD_END_DATE"));
+            detailBO.set("LOCATION", planData.get("LOCATION"));
+            detailBO.set("EXTTEXT3", planData.get("EXTTEXT3"));
+            detailBO.set("ORDER_NO", planData.get("ORDER_NO"));
+            detailBO.set("PAY_DESC", planData.get("PAY_DESC"));
+            detailBO.set("PLAN_AMOUNT", planData.get("PLAN_AMOUNT"));
+            detailBO.set("PLAN_DATE", planData.get("PLAN_DATE"));
+            detailBO.set("AMOUNT", planData.get("AMOUNT"));
+            detailBO.set("REMARK", planData.get("REMARK"));
+            detailBO.set("PLAN_NO", planData.get("PLAN_NO"));
+            detailBO.set("PAYMENT_PLAN_ID", planData.get("PAYMENT_PLAN_ID"));
+            detailBO.set("ORDER_ID", planData.get("ORDER_ID"));
+            detailBO.set("CONTRACT_SERVICE_ID", planData.get("CONTRACT_SERVICE_ID"));
+            detailBO.set("CONTRACT_COST_ID", planData.get("CONTRACT_COST_ID"));
+
+            SDK.getBOAPI().createDataBO("BO_EU_DNIVT_PAY_REQUEST_DETAIL", detailBO, uc);
 
+            Map<String, Object> result = new HashMap<>();
+            result.put("recordId", detailBO.getId());
+            result.put("message", "数据插入成功");
+
+            ResponseObject responseObject = ResponseObject.newOkResponse();
+            responseObject.setData(result);
+            return responseObject;
+        } catch (Exception e) {
+            e.printStackTrace();
+            return ResponseObject.newErrResponse("数据插入失败:" + e.getMessage());
+        }
+    }
 
 }
 

BIN
com.awspaas.user.apps.donenow_tst/lib/com.awspaas.user.apps.donenow_tst.jar


+ 59 - 4
com.awspaas.user.apps.donenow_tst/src/com/awspaas/user/apps/donenow_tst/controller/testController.java

@@ -8,14 +8,13 @@ import com.actionsoft.bpms.server.UserContext;
 import com.actionsoft.bpms.bo.engine.BO;
 import com.actionsoft.bpms.util.DBSql;
 import com.actionsoft.sdk.local.SDK;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.TypeReference;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Controller
 public class testController {
@@ -358,5 +357,61 @@ public class testController {
         return responseObject;
     }
 
+    @Mapping(value = "com.awspaas.user.apps.donenow_crm.batchUpdateExpenseReportIds")
+    public ResponseObject batchUpdateExpenseReportIds(UserContext uc, String idsJson, String oid) {
+        try {
+            // 1. 校验入参
+            if (idsJson == null || idsJson.trim().isEmpty()) {
+                return ResponseObject.newErrResponse("idsJson 参数不能为空");
+            }
+            if (oid == null || oid.trim().isEmpty()) {
+                return ResponseObject.newErrResponse("oid 参数不能为空");
+            }
+
+            // 2. 将 JSON 字符串转换为 List<String>
+            List<String> ids;
+            try {
+                ids = JSON.parseObject(idsJson, new TypeReference<List<String>>() {});
+            } catch (Exception e) {
+                return ResponseObject.newErrResponse("idsJson 格式错误,请传入合法的JSON数组字符串。");
+            }
+
+            if (ids.isEmpty()) {
+                return ResponseObject.newErrResponse("ids 数组不能为空");
+            }
+
+            // 3. 构建批量更新的 SQL 语句
+            StringBuilder sql = new StringBuilder();
+            sql.append("UPDATE BO_EU_DNSDK_EXPENSE ");
+            sql.append("SET EXPENSE_REPORT_ID = ? "); // 假设更新EXPENSE_REPORT_ID字段为oid
+            sql.append("WHERE id IN (");
+
+            List<Object> paramList = new ArrayList<>();
+            paramList.add(oid); // 先添加要更新的值
+
+            for (int i = 0; i < ids.size(); i++) {
+                sql.append("?");
+                if (i < ids.size() - 1) {
+                    sql.append(", ");
+                }
+                paramList.add(ids.get(i));
+            }
+            sql.append(")");
 
+            // 4. 执行批量更新
+            int affectedRows = DBSql.update(sql.toString(), paramList.toArray());
+
+            // 5. 封装并返回响应数据
+            Map<String, Object> result = new HashMap<>(1);
+            result.put("affectedRows", affectedRows); // 返回受影响的行数wsm
+
+            ResponseObject responseObject = ResponseObject.newOkResponse();
+            responseObject.setData(result);
+            return responseObject;
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            return ResponseObject.newErrResponse("批量更新失败:" + e.getMessage());
+        }
+    }
 }