wanghongzhi 1 年之前
父節點
當前提交
c6a6493bed

+ 114 - 0
easydo-chengfa/src/main/java/easydo/technology/controller/ApproveInfoController.java

@@ -0,0 +1,114 @@
+package easydo.technology.controller;
+
+import easydo.technology.annotation.WebLog;
+import easydo.technology.components.JdbcClient;
+import easydo.technology.model.ApproveInfo;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import javax.sql.DataSource;
+import java.sql.Connection;
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/approveInfo")
+public class ApproveInfoController {
+    @Resource
+    JdbcClient jdbcClient;
+    @Resource
+    DataSource dataSource;
+
+    @WebLog
+    @RequestMapping(value = "/getPage")
+    public Object getPage(@RequestBody Map<String, Object> map) throws Exception {
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+
+            Map<String, Object> page = jdbcClient.getJdbcPage(map, ApproveInfo.class, connection);
+            return new ResponseEntity<>(page, HttpStatus.OK);
+        } catch (Exception e) {
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
+    }
+
+    @WebLog
+    @RequestMapping(value = "/getList")
+    public Object getList(@RequestBody Map<String, Object> map) throws Exception {
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+
+            List<ApproveInfo> list = jdbcClient.getJdbcList(map, ApproveInfo.class, connection);
+            return new ResponseEntity<>(list, HttpStatus.OK);
+        } catch (Exception e) {
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
+    }
+
+    @WebLog
+    @RequestMapping(value = "/save")
+    public Object save(@RequestBody ApproveInfo model) throws Exception {
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+            connection.setAutoCommit(false);
+
+            jdbcClient.jdbcInsert(model, connection);
+            connection.commit();
+            return new ResponseEntity<>(model, HttpStatus.OK);
+        } catch (Exception e) {
+            connection.rollback();
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
+    }
+
+    @WebLog
+    @RequestMapping(value = "/update")
+    public Object update(@RequestBody ApproveInfo model) throws Exception {
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+            connection.setAutoCommit(false);
+
+            jdbcClient.jdbcUpdateById(model, connection);
+            connection.commit();
+            return new ResponseEntity<>(model, HttpStatus.OK);
+        } catch (Exception e) {
+            connection.rollback();
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
+    }
+
+    @WebLog
+    @RequestMapping(value = "/remove")
+    public Object remove(@RequestBody ApproveInfo model) throws Exception {
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+            connection.setAutoCommit(false);
+
+            jdbcClient.jdbcRemoveById(model, connection);
+            connection.commit();
+            return new ResponseEntity<>(model, HttpStatus.OK);
+        } catch (Exception e) {
+            connection.rollback();
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
+    }
+}

+ 26 - 3
easydo-chengfa/src/main/java/easydo/technology/controller/GLDMasterController.java

@@ -1,15 +1,20 @@
 package easydo.technology.controller;
 
 import easydo.technology.annotation.WebLog;
+import easydo.technology.components.JdbcClient;
+import easydo.technology.model.ApproveInfo;
 import easydo.technology.service.GLDMasterService;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.annotation.Resource;
+import javax.sql.DataSource;
+import java.sql.Connection;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -20,12 +25,14 @@ public class GLDMasterController {
     GLDMasterService gldMasterService;
     @Value("${GLD.APPROVE.mgtGroupId}")
     String mgtGroupId;
-    @Value("${GLD.APPROVE.formId}")
-    String formId;
     @Value("${tenantId_gld_master}")
     String tenantId;
     @Value("${GLD.host}")
     String host;
+    @Resource
+    DataSource dataSource;
+    @Resource
+    JdbcClient jdbcClient;
 
     @WebLog
     @RequestMapping("/getToken")
@@ -33,13 +40,29 @@ public class GLDMasterController {
         Map<String, Object> result = new HashMap<>();
         String token = gldMasterService.getGetToken();
         result.put("mgtGroupId", mgtGroupId);
-        result.put("formId", formId);
         result.put("tenantId", tenantId);
         result.put("token", token);
         result.put("host", host);
         return new ResponseEntity<>(result, HttpStatus.OK);
     }
 
+    @WebLog
+    @RequestMapping("/getFormId")
+    public Object getFormId(@RequestBody ApproveInfo approveInfo) throws Exception {
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+
+            approveInfo = jdbcClient.getJdbcModel(approveInfo, connection);
+            return new ResponseEntity<>(approveInfo.getFormId(), HttpStatus.OK);
+        } catch (Exception e) {
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
+    }
+
+
     @WebLog
     @GetMapping("/removeToken")
     public Object removeToken() throws Exception {

+ 53 - 5
easydo-chengfa/src/main/java/easydo/technology/controller/TestController.java

@@ -1,6 +1,8 @@
 package easydo.technology.controller;
 
+import java.sql.Connection;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Resource;
@@ -10,7 +12,9 @@ import javax.sql.DataSource;
 
 import com.alibaba.fastjson.JSONObject;
 import easydo.technology.exception.BizException;
-import easydo.technology.model.SysUser;
+import easydo.technology.model.*;
+import easydo.technology.model.vo.GLDContract;
+import easydo.technology.service.GLDCostService;
 import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.web.bind.annotation.*;
 
@@ -36,6 +40,8 @@ public class TestController {
     private PasswordEncoder passwordEncoder;
     @Resource
     RedisUtils redisUtils;
+    @Resource
+    GLDCostService gldCostService;
 
     /*
      * public static void main(String[] args) {
@@ -96,10 +102,52 @@ public class TestController {
     @WebLog
     @RequestMapping(value = "/getPage")
     public Object getPage() throws Exception {
-//        redisUtils.set("test", "123456", 600);
-//        log.info(redisUtils.get("test").toString());
-        if(true){
-            throw new BizException("122345678");
+        Connection connection = null;
+        Map<String, Object> map = new HashMap<>();
+        try {
+            connection = dataSource.getConnection();
+//            connection.setAutoCommit(false);
+            map.put("isHaveContract", 0);
+            map.put("projectIdBegin", 1);
+            List<Purchase> list = jdbcClient.getJdbcList(map, Purchase.class, connection);
+            for (Purchase model : list) {
+                List<GLDContract> contractList = gldCostService.getContractList(model.getProjectId(),
+                        model.getPurchaseNo());
+                if (!contractList.isEmpty()) {
+                    PurchaseBidNotice bidNotice = new PurchaseBidNotice();
+                    bidNotice.setPurchaseId(model.getId());
+                    bidNotice = jdbcClient.getJdbcModel(bidNotice, connection);
+                    Supplier supplier = new Supplier();
+                    supplier.setId(bidNotice.getBidCompanyIds());
+                    supplier = jdbcClient.getJdbcModel(supplier, connection);
+
+                    for (GLDContract contract : contractList) {
+                        PurchaseContract purchaseContract = new PurchaseContract();
+                        purchaseContract.setPurchaseId(model.getId());
+                        purchaseContract.setProjectId(model.getProjectId());
+                        purchaseContract.setContractName(contract.getName());
+                        purchaseContract.setContractNo(contract.getCode());
+                        purchaseContract.setSignAmount(contract.getTaxAmount());
+                        purchaseContract.setCreateTime(contract.getCreateTime());
+                        purchaseContract.setEndTime(contract.getApprovedEndTime());
+                        purchaseContract.setObjectId(contract.getObjectId());
+                        purchaseContract.setFileName(contract.getFileName());
+                        purchaseContract.setSupplierId(supplier.getId());
+                        purchaseContract.setSupplierName(supplier.getSupplierName());
+                        purchaseContract.setSupplierNo(supplier.getSupplierNo());
+                        jdbcClient.jdbcInsert(purchaseContract, connection);
+                    }
+                    model.setIsHaveContract(true);
+                    jdbcClient.jdbcUpdateById(model, connection);
+                }
+            }
+
+//            connection.commit();
+        } catch (Exception e) {
+//            connection.commit();
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
         }
         return "success";
     }

+ 12 - 0
easydo-chengfa/src/main/java/easydo/technology/model/ApproveInfo.java

@@ -0,0 +1,12 @@
+package easydo.technology.model;
+
+import lombok.Data;
+
+@Data
+public class ApproveInfo {
+    private String id;
+    private String busType;
+    private String formId;
+    private String formCode;
+    private String formName;
+}

+ 2 - 0
easydo-chengfa/src/main/java/easydo/technology/model/Supplier.java

@@ -47,6 +47,8 @@ public class Supplier extends ZeroSpringFolder<Supplier> {
     private String provinceCode;
     private String cityCode;
     private String regionCode;
+    private String nature;
+    private Boolean isCustomer;
 
     @NotTableField
     private Integer bidCount;

+ 51 - 18
easydo-chengfa/src/main/java/easydo/technology/service/GLDApproveService.java

@@ -1,11 +1,14 @@
 package easydo.technology.service;
 
+import java.sql.Connection;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.UUID;
 
 import javax.annotation.Resource;
+import javax.sql.DataSource;
 
+import easydo.technology.model.ApproveInfo;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
@@ -29,10 +32,6 @@ public class GLDApproveService {
     String mgtGroupId;
     @Value("${GLD.APPROVE.authorization}")
     String authorization;
-    @Value("${GLD.APPROVE.formCode}")
-    String formCode;
-    @Value("${GLD.APPROVE.formName}")
-    String formName;
     @Value("${GLD.host}")
     String host;
     @Value("${GLD.APPROVE.startApprove}")
@@ -41,15 +40,34 @@ public class GLDApproveService {
     String getApproveInfo;
     @Resource
     JdbcClient jdbcClient;
+    @Resource
+    DataSource dataSource;
 
     public String startApprove(GLDApproveVo vo) throws Exception {
+
         Long userId = SecurityUtils.getCurrentUserId();
-        SysUser user = new SysUser();
-        user.setUserId(userId);
-        user = jdbcClient.getJdbcModel(user);
         GldMember member = new GldMember();
-        member.setPhone(user.getPhone());
-        member = jdbcClient.getJdbcModel(member);
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+            SysUser user = new SysUser();
+            user.setUserId(userId);
+            user = jdbcClient.getJdbcModel(user, connection);
+
+            member.setPhone(user.getPhone());
+            member = jdbcClient.getJdbcModel(member, connection);
+
+            ApproveInfo approveInfo = new ApproveInfo();
+            approveInfo.setBusType(vo.getTargetType());
+            approveInfo = jdbcClient.getJdbcModel(approveInfo, connection);
+            vo.setStartPos(approveInfo.getFormCode());
+            vo.setStartPosName(approveInfo.getFormName());
+
+        } catch (Exception e) {
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
 
         String url = (host + startApprove).replace("{deptId}", mgtGroupId);
         Map<String, String> header = new HashMap<>();
@@ -57,8 +75,8 @@ public class GLDApproveService {
         header.put("Authorization", authorization);
         JSONObject object = new JSONObject();
         object.put("subject", "startPosName");
-        object.put("startPos", formCode);
-        object.put("startPosName", formName);
+        object.put("startPos", vo.getStartPos());
+        object.put("startPosName", vo.getStartPosName());
         object.put("templateId", vo.getTemplateId());
         object.put("targetType", vo.getTargetType());
 //        object.put("targetId", vo.getTargetId());
@@ -74,12 +92,27 @@ public class GLDApproveService {
 
     public String restartApprove(GLDApproveVo vo) throws Exception {
         Long userId = SecurityUtils.getCurrentUserId();
-        SysUser user = new SysUser();
-        user.setUserId(userId);
-        user = jdbcClient.getJdbcModel(user);
         GldMember member = new GldMember();
-        member.setPhone(user.getPhone());
-        member = jdbcClient.getJdbcModel(member);
+        Connection connection = null;
+        try {
+            connection = dataSource.getConnection();
+            SysUser user = new SysUser();
+            user.setUserId(userId);
+            user = jdbcClient.getJdbcModel(user, connection);
+            member.setPhone(user.getPhone());
+            member = jdbcClient.getJdbcModel(member, connection);
+
+            ApproveInfo approveInfo = new ApproveInfo();
+            approveInfo.setBusType(vo.getTargetType());
+            approveInfo = jdbcClient.getJdbcModel(approveInfo, connection);
+            vo.setStartPos(approveInfo.getFormCode());
+            vo.setStartPosName(approveInfo.getFormName());
+
+        } catch (Exception e) {
+            throw e;
+        } finally {
+            jdbcClient.finallyExecute(connection);
+        }
 
         String url = (host + startApprove).replace("{deptId}", mgtGroupId);
         Map<String, String> header = new HashMap<>();
@@ -87,8 +120,8 @@ public class GLDApproveService {
         header.put("Authorization", authorization);
         JSONObject object = new JSONObject();
         object.put("subject", "startPosName");
-        object.put("startPos", formCode);
-        object.put("startPosName", formName);
+        object.put("startPos", vo.getStartPos());
+        object.put("startPosName", vo.getStartPosName());
         object.put("templateId", vo.getTemplateId());
         object.put("targetType", vo.getTargetType());
 //        object.put("targetId", vo.getTargetId());

+ 25 - 5
easydo-chengfa/src/main/java/easydo/technology/service/GLDCostService.java

@@ -123,11 +123,15 @@ public class GLDCostService {
                 String approvedEndTime = sdf.format(date);
                 object.put("approvedEndTime", approvedEndTime);
             }
-            JSONObject contractObj = (JSONObject) object.getJSONArray("contractDetailedList").get(0);
             GLDContract contract = JSONObject.parseObject(object.toJSONString(), GLDContract.class);
-            contract.setObjectId(contractObj.getString("objectId"));
-            contract.setFileName(contractObj.getString("name"));
-            list.add(contract);
+
+            JSONArray attachmentInfoList = object.getJSONArray("extAttachmentInfoList");
+            for (Object attach : attachmentInfoList) {
+                JSONObject attachObj = (JSONObject) attach;
+                contract.setObjectId(attachObj.getString("objectId"));
+                contract.setFileName(attachObj.getString("name"));
+                list.add(contract);
+            }
         }
         return list;
     }
@@ -189,4 +193,20 @@ public class GLDCostService {
     // log.info(JSONArray.toJSONString(list));
     // }
 
-}
+
+    public static void main(String[] args) {
+        JSONObject data = new JSONObject();
+        data.put("projectId", "11200363");
+        // data.put("projectCode", projectCode);
+        data.put("procurementApprovalCode", "ZCPU2024092300001");
+        data.put("queryDetail", true);
+        String url = "http://218.201.101.181:14780" + "/cost-management/openapi/contracts/list";
+        Map<String, String> header = new HashMap<>();
+        header.put("Authorization", "Basic a0ZkMkE4UkhSM1l1ZlplQ1lVUGNjVWFMblJWQW5ZZ1c6VTJNakoycVZiaGNVYlI5VlVyUUdYeVFQekp1WkdoNm4=");
+        header.put("X-CORAL-TENANT", "5600003");
+        String uuid = UUID.randomUUID().toString();
+        log.info(uuid + "查询合同信息req========>" + data.toJSONString() + ",url========>" + url);
+        JSONObject resObj = HttpClientUtil.sendPOSTWithHeader(url, data.toJSONString(), header);
+        log.info(uuid + "查询合同信息res========>" + resObj.toJSONString());
+    }
+}

+ 2 - 2
easydo-chengfa/src/main/java/easydo/technology/service/MDMService.java

@@ -45,8 +45,8 @@ public class MDMService {
         }
         supplierObj.put("C_SORCE_SYSTEM", "04");
         supplierObj.put("C_FULLNAME", supplier.getSupplierName());
-        supplierObj.put("C_NATURE", "01");
-        supplierObj.put("C_WHETHER_CUSTOMER", 0);
+        supplierObj.put("C_NATURE", supplier.getNature());
+        supplierObj.put("C_WHETHER_CUSTOMER", supplier.getIsCustomer() ? 1 : 0);
         supplierObj.put("C_WHETHER_SUPPLIER", 1);
         supplierObj.put("C_UNISOCIALCREDIT_CODE", supplier.getCreditCode());
         supplierObj.put("C_COUNTRY", "CHN");

+ 0 - 3
easydo-chengfa/src/main/resources/config/application-dev.yml

@@ -186,9 +186,6 @@ GLD:
     authorization: "Basic YlFvc0tIeWJkSlZUZGtMcXA0U1VIMlE0ejNZQjc5eVA6b1ZmaU5zR1c1NVZzSW5ITTlDOVI3c2g0SHlpVGMxY2w="
   APPROVE:
     mgtGroupId: "11200297"
-    formId: "flow/STD_Dcm_PROCUREMENT_SYSTEM"
-    formCode: "STD_Dcm_PROCUREMENT_SYSTEM"
-    formName: "第三方招采系统"
     startApprove: "/task/{deptId}/tasks/submit"
     getApproveInfo: "/task/{deptId}/tasks?ids={ids}&taskType=APPROVAL"
     authorization: "Basic YlFvc0tIeWJkSlZUZGtMcXA0U1VIMlE0ejNZQjc5eVA6b1ZmaU5zR1c1NVZzSW5ITTlDOVI3c2g0SHlpVGMxY2w="

+ 0 - 3
easydo-chengfa/src/main/resources/config/application-prod.yml

@@ -184,9 +184,6 @@ GLD:
     authorization: "Basic YlFvc0tIeWJkSlZUZGtMcXA0U1VIMlE0ejNZQjc5eVA6b1ZmaU5zR1c1NVZzSW5ITTlDOVI3c2g0SHlpVGMxY2w="
   APPROVE:
     mgtGroupId: "11200297"
-    formId: "flow/STD_Dcm_PROCUREMENT_SYSTEM"
-    formCode: "STD_Dcm_PROCUREMENT_SYSTEM"
-    formName: "第三方招采系统"
     startApprove: "/task/{deptId}/tasks/submit"
     getApproveInfo: "/task/{deptId}/tasks?ids={ids}&taskType=APPROVAL"
     authorization: "Basic YlFvc0tIeWJkSlZUZGtMcXA0U1VIMlE0ejNZQjc5eVA6b1ZmaU5zR1c1NVZzSW5ITTlDOVI3c2g0SHlpVGMxY2w="

+ 0 - 3
easydo-chengfa/src/main/resources/config/application-test.yml

@@ -184,9 +184,6 @@ GLD:
     authorization: "Basic YlFvc0tIeWJkSlZUZGtMcXA0U1VIMlE0ejNZQjc5eVA6b1ZmaU5zR1c1NVZzSW5ITTlDOVI3c2g0SHlpVGMxY2w="
   APPROVE:
     mgtGroupId: "11200297"
-    formId: "flow/STD_Dcm_PROCUREMENT_SYSTEM"
-    formCode: "STD_Dcm_PROCUREMENT_SYSTEM"
-    formName: "第三方招采系统"
     startApprove: "/task/{deptId}/tasks/submit"
     getApproveInfo: "/task/{deptId}/tasks?ids={ids}&taskType=APPROVAL"
     authorization: "Basic YlFvc0tIeWJkSlZUZGtMcXA0U1VIMlE0ejNZQjc5eVA6b1ZmaU5zR1c1NVZzSW5ITTlDOVI3c2g0SHlpVGMxY2w="