| admin/config/prod/application-custom.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| api/src/main/java/com/ruoyi/api/third/controller/ReceivableBillApiController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
admin/config/prod/application-custom.yml
@@ -1,36 +1,36 @@ custom: rabbitmq: # 集群地址,用逗号分隔 host: 172.16.24.14 port: 5672 virtual-host: GF_HOST username: admin password: host: 61.143.42.70 port: 7008 virtual-host: GF_HOST_TEST username: user_test password: testuser_& serialNumber: cache: enabled: true #服务 相关配置 server: name: 管理系统 本地环境 name: 管理系统 测试环境 port: 8080 #访问端口 servlet-context-path: / #上下文 max-threads: 800 # # tomcat最大线程数,默认为200 min-spare-threads: 30 # Tomcat启动初始化的线程数,默认值25 # 登录 login: captchaType: false # 验证码类型 math 数组计算 char 字符验证 false 不需要验证码 captchaType: math # 验证码类型 math 数组计算 char 字符验证 false 不需要验证码 # 锁定用户的次数 ,0 或者空为不锁定 userLockCount: 5 # 锁定用户的有效期(分钟) userLockExpireTime: 60 #上传下载 相关配置 upload: profile: /Users/xiongbenda/Desktop/temp/uploadPath #上传目录 profile: /data/cwgl/uploadPath #上传目录 temp: temp #临时文件夹 multipart: max-file-size: 2GB # 单个文件大小 max-request-size: 2GB # 设置总上传的文件大小 network-path: "http://61.143.42.70:7000/cwgl-api/" network-path: "https://tmsapi.ygalogisticspark.com/api/" #日志 相关配置 logback: path: logs/ #日志目录 @@ -39,11 +39,11 @@ #数据库 相关配置 datasource: master: #主数据库 ip: 172.16.24.73 # IP port: 3306 #端口 database: ruoyi-base #数据库名 username: root #用户名 password: 123456 #密码 ip: 61.143.42.70 # IP port: 7006 #端口 database: hc_cwxt #数据库名 username: #用户名 password: #密码 slave: #从数据库 enabled: false #是否开启从数据库 关闭时以下信息可以不用配置 ip: # IP @@ -51,6 +51,13 @@ database: #数据库名 username: #用户名 password: #密码 cwsj: #从数据库 enabled: true #是否开启从数据库 关闭时以下信息可以不用配置 ip: 61.143.42.70 # IP port: 12027 #端口 database: zhjk_ot7 #数据库名 username: root #用户名 password: Zh29_!DFFixS #密码 druid: # 数据池 statViewServlet: #管理控制台账号 login-username: admin @@ -63,7 +70,7 @@ port: 6379 #端口 password: #密码 timeout: 10s #超时时间 keyprefix: ruoyibasedev #存储key前缀,避免多套环境key相同 keyprefix: cwxt:pro #存储key前缀,避免多套环境key相同 #swagger相关配置 swagger: enabled: true #是否开启 @@ -84,9 +91,11 @@ /app/car/login /common/* /login /getSysInfo /captchaImage /actuator/** /*/api-docs /api/** /druid/** /webjars/** /swagger-resources/** @@ -94,7 +103,28 @@ /profile/** /system/dict/data/type/** /websocket/** # 车辆每日数据API配置 vehicle-api: # API基础地址 baseUrl: https://api.scania-cn.com/vehicleData # API认证信息 appid: 0f4c9b15b6addc6f508e8944e046fa67 secret: MGY0YzliMTViNmFkZGM2ZjUwOGU4OTQ0ZTA0NmZhNjc= # 接口超时设置(毫秒) timeout: 30000 # 重试次数 retryCount: 3 driver: template1: /data/cwgl/chqjkcns.pdf template2: /data/cwgl/zjsf.pdf font: /data/cwgl/msyh.ttf font: /data/cwgl/msyh.ttf gdpaasApi: appid: "10006" sign: "fbd184d72c744daeb0bada07b2ebd722" salerTaxNum: "339901999999199" salerTel: "0756-77777777" extensionNumber: "" clerk: "钟文洋" salerAddress: "珠海市香洲区南屏镇通港一路120号" invoicingAddress: "http://localhost:6012/api/third/jyjy/common/invoicing" returnAddress: "http://172.16.24.19:6720/api/third/invoice" api/src/main/java/com/ruoyi/api/third/controller/ReceivableBillApiController.java
@@ -272,25 +272,35 @@ // 使用Map存储系统编号和ID的映射关系 Map<String, Integer> systemNoToIdMap = new HashMap<>(); // 批量插入后,ID已经自动设置到对象的id属性中 for (ReceivableFeeManagement feeManagement : feeManagementList) { // 假设插入后可以通过某种方式获取ID,这里简化处理 // 实际项目中可能需要根据业务逻辑获取ID systemNoToIdMap.put(feeManagement.getSystemNo(), feeManagement.getId()); systemNoToIdMap.put(feeManagement.getSystemNo(), feeManagement.getId()); } // 设置费用明细的关联ID // 重新构建费用明细列表,正确设置关联ID List<ReceivableFeeDetail> finalFeeDetailList = new ArrayList<>(); for (int i = 0; i < feeManagementList.size(); i++) { ReceivableFeeManagement feeManagement = feeManagementList.get(i); int detailIndex = 0; for (ReceivableFeeManagement feeManagement : feeManagementList) { Integer feeId = systemNoToIdMap.get(feeManagement.getSystemNo()); if (feeId != null && i < feeDetailList.size()) { ReceivableFeeDetail feeDetail = feeDetailList.get(i); feeDetail.setReceivableFeeId(feeId); finalFeeDetailList.add(feeDetail); if (feeId != null) { // 获取该费用管理记录对应的费用明细数量 int detailCount = 0; for (ReceivableBillApiDto.ReceivableFeeDto feeDto : fees) { if (feeDto.getDocumentNo().equals(feeManagement.getDocumentNo())) { detailCount = feeDto.getFeeDetails() != null ? feeDto.getFeeDetails().size() : 0; break; } } // 设置对应数量的费用明细的关联ID for (int i = 0; i < detailCount && detailIndex < feeDetailList.size(); i++) { ReceivableFeeDetail feeDetail = feeDetailList.get(detailIndex); feeDetail.setReceivableFeeId(feeId); finalFeeDetailList.add(feeDetail); detailIndex++; } } } @@ -505,25 +515,35 @@ // 使用Map存储系统编号和ID的映射关系 Map<String, Integer> systemNoToIdMap = new HashMap<>(); // 批量保存费用管理信息并获取ID // 批量插入后,ID已经自动设置到对象的id属性中 for (PayableFeeManagement feeManagement : feeManagementList) { // 假设插入后可以通过某种方式获取ID,这里简化处理 // 实际项目中可能需要根据业务逻辑获取ID systemNoToIdMap.put(feeManagement.getSystemNo(), feeManagement.getId()); systemNoToIdMap.put(feeManagement.getSystemNo(), feeManagement.getId()); } // 设置费用明细的关联ID // 重新构建费用明细列表,正确设置关联ID List<PayableFeeDetail> finalFeeDetailList = new ArrayList<>(); for (int i = 0; i < feeManagementList.size(); i++) { PayableFeeManagement feeManagement = feeManagementList.get(i); int detailIndex = 0; for (PayableFeeManagement feeManagement : feeManagementList) { Integer feeId = systemNoToIdMap.get(feeManagement.getSystemNo()); if (feeId != null && i < feeDetailList.size()) { PayableFeeDetail feeDetail = feeDetailList.get(i); feeDetail.setPayableFeeId(feeId); finalFeeDetailList.add(feeDetail); if (feeId != null) { // 获取该费用管理记录对应的费用明细数量 int detailCount = 0; for (PayableBillApiDto.PayableFeeDto feeDto : fees) { if (feeDto.getDocumentNo().equals(feeManagement.getDocumentNo())) { detailCount = feeDto.getFeeDetails() != null ? feeDto.getFeeDetails().size() : 0; break; } } // 设置对应数量的费用明细的关联ID for (int i = 0; i < detailCount && detailIndex < feeDetailList.size(); i++) { PayableFeeDetail feeDetail = feeDetailList.get(detailIndex); feeDetail.setPayableFeeId(feeId); finalFeeDetailList.add(feeDetail); detailIndex++; } } }