From 8e3a02c1facca35c5a90ce9b49505f373ae658f5 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 13 三月 2026 10:31:48 +0800
Subject: [PATCH] 代码提交
---
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java | 112 ++++++++++++++++++++++++++++++++------------------------
1 files changed, 64 insertions(+), 48 deletions(-)
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
index 1cc2a8b..a053db7 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
@@ -17,7 +17,7 @@
import com.ruoyi.common.utils.HttpClientKit;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.DtoConversionUtils;
-import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.project.common.IdGeneratorUtils;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.dto.ServiceReimbursementDto;
import com.ruoyi.project.domain.vo.CheckFundVO;
@@ -76,6 +76,9 @@
@Autowired
IServiceReimbursementpayeeSharedService payeeSharedService;
+
+ @Autowired
+ IServiceReimbursementpayeeService payeeService;
@Autowired
IServiceFundflowruleService serviceFundflowruleService;
@@ -210,7 +213,17 @@
List<ServiceReimbursementShared> serviceReimbursementShareds = sharedService.queryList(reimbursementShared1);
log.info("serviceReimbursementShareds鐨勬煡璇㈢粨鏋� :{}", serviceReimbursementShareds.size());
if (!CollectionUtils.isEmpty(serviceReimbursementShareds)) {
- return true;
+ //濡傛灉涓嶄负绌猴紝鍒欏皢鍒嗕韩琛ㄩ噷鐨勬暟鎹垹闄わ紙鍥犱负鎺ヤ笅鍘伙紝鑰佹暟鎹笂浼犵殑闄勪欢锛屽彲鑳戒笉鏄兂瑕佺殑浜嗭紝杩樼敤鑰侀檮浠讹紝鏄湁闂鐨勶紱鎵�浠ラ渶瑕佸皢鑰佺殑share鏁版嵁鍒犻櫎锛岀劧鍚庡啀鏂板锛屼笂浼犳柊闄勪欢锛�
+ for (ServiceReimbursementShared serviceReimbursementShared : serviceReimbursementShareds) {
+ sharedService.removeById(serviceReimbursementShared.getId());
+
+ ServiceReimbursementdetailShared srds = new ServiceReimbursementdetailShared();
+ srds.setRbid(serviceReimbursementShared.getId());
+ List<ServiceReimbursementdetailShared> serviceReimbursementdetailShareds = detailSharedService.queryList(srds);
+ for (ServiceReimbursementdetailShared serviceReimbursementdetailShared : serviceReimbursementdetailShareds) {
+ detailSharedService.removeById(serviceReimbursementdetailShared.getId());
+ }
+ }
}
//濡傛灉娌℃湁鎻掑叆锛屽垯璧颁笅闈㈢殑娴佺▼
@@ -234,7 +247,7 @@
// //涓婁紶OA鏂囦欢
//灏唖erviceReimbursementdetail琛ㄩ噷鐨刬d璧嬪�肩粰Rdid; 灏唖erviceReimbursementShared閲岀殑ID璧嬪�肩粰RBID,骞跺皢serviceReimbursementdetailShared琛ㄩ噷鐨刬d缃┖锛岀敱鏁版嵁搴撻噸鏂扮敓鎴�
for (int i = 0; i < details.size(); i++) {
- serviceReimbursementdetailShareds.get(i).setRdid(serviceReimbursementdetailShareds.get(i).getId());
+ serviceReimbursementdetailShareds.get(i).setRdid(details.get(i).getId());
serviceReimbursementdetailShareds.get(i).setRbid(serviceReimbursementShared.getId());
serviceReimbursementdetailShareds.get(i).setId(null);
//涓婁紶OA鏂囦欢
@@ -257,7 +270,16 @@
// detailSharedService.saveBatch(serviceReimbursementdetailShareds);
for (ServiceReimbursementdetailShared serviceReimbursementdetailShared : serviceReimbursementdetailShareds) {
if (ObjectUtils.isNotEmpty(serviceReimbursementdetailShared)) {
+ log.info("鏇存柊serviceReimbursementdetail琛ㄩ噷鐨勫�间负:{}", serviceReimbursementdetailShared);
detailSharedService.save(serviceReimbursementdetailShared);
+
+ log.info("鏇存柊serviceReimbursementdetail琛ㄩ噷鐨勯檮浠跺瓧娈�:{},{}", serviceReimbursementdetailShared.getAnnexfiles(), serviceReimbursementdetailShared.getInvoicefiles());
+ //鏇存柊serviceReimbursementdetail琛ㄩ噷鐨勯檮浠跺瓧娈�
+ ServiceReimbursementdetail serviceReimbursementdetail = new ServiceReimbursementdetail();
+ serviceReimbursementdetail.setId(serviceReimbursementdetailShared.getRdid());
+ serviceReimbursementdetail.setAnnexfiles(serviceReimbursementdetailShared.getAnnexfiles());
+ serviceReimbursementdetail.setInvoicefiles(serviceReimbursementdetailShared.getInvoicefiles());
+ serviceReimbursementdetailMapper.updateById(serviceReimbursementdetail);
} else {
log.info("serviceReimbursementdetailShared涓虹┖浜�");
}
@@ -551,18 +573,15 @@
addSharedData(serviceReimbursement.getId());
List<ServiceReimbursementShared> serviceReimbursementSharedList = sharedService.getRemShareInfoByRemId(serviceReimbursement.getId());
if (org.springframework.util.CollectionUtils.isEmpty(serviceReimbursementSharedList)) return false;
-
log.info("serviceReimbursementSharedList鐨勬暟鎹噺涓猴細{}", serviceReimbursementSharedList.size());
//detail璇︽儏
- ServiceReimbursementdetailShared serviceReimbursementdetailShared = new ServiceReimbursementdetailShared();
- serviceReimbursementdetailShared.setRbid(serviceReimbursementSharedList.get(0).getId());
- List<ServiceReimbursementdetailShared> serviceReimbursementdetailShareds = detailSharedService.queryList(serviceReimbursementdetailShared);
+ List<ServiceReimbursementdetail> serviceReimbursementdetailList = serviceReimbursementdetailMapper.getAllDetailsByRBID(serviceReimbursement.getId());
//payee璇︽儏
- ServiceReimbursementpayeeShared serviceReimbursementpayeeShared = new ServiceReimbursementpayeeShared();
- serviceReimbursementpayeeShared.setRbid(serviceReimbursementSharedList.get(0).getId());
- List<ServiceReimbursementpayeeShared> serviceReimbursementpayeeShareds = payeeSharedService.queryList(serviceReimbursementpayeeShared);
+ ServiceReimbursementpayee serviceReimbursementpayee = new ServiceReimbursementpayee();
+ serviceReimbursementpayee.setRbid(serviceReimbursement.getId());
+ List<ServiceReimbursementpayee> serviceReimbursementpayees = payeeService.queryList(serviceReimbursementpayee);
// 鏁版嵁鐨勫皝瑁�
@@ -576,10 +595,10 @@
ServiceReimbursement sr = serviceReimbursementMapper.selectById(serviceReimbursement.getId());
data2.put("formmain_1209", formmain_1209(sr));
// 鏄庣粏琛ㄥ瓧娈垫暟鎹紝涓庨檮浠剁殑澶勭悊
- Map<String, List<Map<String, Object>>> map1 = formson_1210(serviceReimbursementdetailShareds);
+ Map<String, List<Map<String, Object>>> map1 = formson_1210(serviceReimbursementdetailList);
data2.put("formson_1210", map1.get("formson_1210"));
data2.put("thirdAttachments", map1.get("annexfilesList"));
- data2.put("formson_1211", formson_1211(serviceReimbursementpayeeShareds));
+ data2.put("formson_1211", formson_1211(serviceReimbursementpayees));
data.put("data", data2);
//妯℃澘缂栧彿锛岀敱鑷磋繙鏂规彁渚涳紝璇ュ弬鏁板喅瀹氬彂璧峰崗鍚岀郴缁熶腑鍝釜娴佺▼
data.put("templateCode", "cyfbxd_rzhc_ceshi");
@@ -635,44 +654,42 @@
return true;
}
- private static final AtomicLong COUNTER = new AtomicLong(System.currentTimeMillis());
-
- private Map<String, List<Map<String, Object>>> formson_1210(List<ServiceReimbursementdetailShared> serviceReimbursementdetailSharedList) {
+ private Map<String, List<Map<String, Object>>> formson_1210(List<ServiceReimbursementdetail> serviceReimbursementdetailList) {
Map<String, List<Map<String, Object>>> allMap = new HashMap<>();
List<Map<String, Object>> list = new ArrayList<>();
List<Map<String, Object>> annexfilesList = new ArrayList<>();
- for (ServiceReimbursementdetailShared reimbursementdetailShared : serviceReimbursementdetailSharedList) {
+ for (ServiceReimbursementdetail reimbursementdetail : serviceReimbursementdetailList) {
Map<String, Object> map = new HashMap<>();
- map.put("浜ら�氬伐鍏�", reimbursementdetailShared.getTraffictype());
- map.put("浜ら�氳垂", reimbursementdetailShared.getTrafficexpense());
- map.put("甯傚唴浜ら��", reimbursementdetailShared.getCityfee());
- map.put("浣忓璐�", reimbursementdetailShared.getHotelexpense());
- map.put("鏉傝垂", reimbursementdetailShared.getOtherexpense());
- map.put("浼欓璐规姤閿�", reimbursementdetailShared.getFoodexpenses());
- map.put("浼欓璐硅ˉ鍔�", reimbursementdetailShared.getFoodallowance());
- map.put("鍏朵粬璐圭敤", reimbursementdetailShared.getOtherfeeamount());
- map.put("鍏朵粬璐圭敤璇存槑", reimbursementdetailShared.getOtherfeedesc());
+ map.put("浜ら�氬伐鍏�", reimbursementdetail.getTraffictype());
+ map.put("浜ら�氳垂", reimbursementdetail.getTrafficexpense());
+ map.put("甯傚唴浜ら��", reimbursementdetail.getCityfee());
+ map.put("浣忓璐�", reimbursementdetail.getHotelexpense());
+ map.put("鏉傝垂", reimbursementdetail.getOtherexpense());
+ map.put("浼欓璐规姤閿�", reimbursementdetail.getFoodexpenses());
+ map.put("浼欓璐硅ˉ鍔�", reimbursementdetail.getFoodallowance());
+ map.put("鍏朵粬璐圭敤", reimbursementdetail.getOtherfeeamount());
+ map.put("鍏朵粬璐圭敤璇存槑", reimbursementdetail.getOtherfeedesc());
map.put("閲戦鍚堣", "");
- map.put("鍑哄樊鏃堕棿璧�", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(reimbursementdetailShared.getStarttime()));
- map.put("鍑哄彂鍦扮偣", reimbursementdetailShared.getDeparture());
- map.put("鍑哄樊鏃堕棿姝�", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(reimbursementdetailShared.getEndtime()));
- map.put("鍑哄樊鐩殑鍦�", reimbursementdetailShared.getDestination());
- map.put("澶╂暟", reimbursementdetailShared.getDays());
- BigDecimal total = safe(reimbursementdetailShared.getCityfee()).add(safe(reimbursementdetailShared.getTrafficexpense())).add(safe(reimbursementdetailShared.getHotelexpense())).add(safe(reimbursementdetailShared.getOtherexpense())).add(safe(reimbursementdetailShared.getFoodexpenses())).add(safe(reimbursementdetailShared.getFoodallowance())).add(safe(reimbursementdetailShared.getOtherfeeamount()));
+ map.put("鍑哄樊鏃堕棿璧�", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(reimbursementdetail.getStarttime()));
+ map.put("鍑哄彂鍦扮偣", reimbursementdetail.getDeparture());
+ map.put("鍑哄樊鏃堕棿姝�", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(reimbursementdetail.getEndtime()));
+ map.put("鍑哄樊鐩殑鍦�", reimbursementdetail.getDestination());
+ map.put("澶╂暟", reimbursementdetail.getDays());
+ BigDecimal total = safe(reimbursementdetail.getCityfee()).add(safe(reimbursementdetail.getTrafficexpense())).add(safe(reimbursementdetail.getHotelexpense())).add(safe(reimbursementdetail.getOtherexpense())).add(safe(reimbursementdetail.getFoodexpenses())).add(safe(reimbursementdetail.getFoodallowance())).add(safe(reimbursementdetail.getOtherfeeamount()));
map.put("瀹為檯鎶ラ攢閲戦", total);
- map.put("璐㈠姟澶囨敞", reimbursementdetailShared.getRemark());
- map.put("id", reimbursementdetailShared.getRdid());
- map.put("鍑哄樊浜�", reimbursementdetailShared.getPersonname());
+ map.put("璐㈠姟澶囨敞", reimbursementdetail.getRemark());
+ map.put("id", reimbursementdetail.getId());
+ map.put("鍑哄樊浜�", reimbursementdetail.getPersonname());
map.put("鍥炰氦閫氬伐鍏�", "");
- map.put("浜哄憳绫诲埆", reimbursementdetailShared.getPersontype());
+ map.put("浜哄憳绫诲埆", reimbursementdetail.getPersontype());
map.put("浣忓璐规爣鍑�", "");
- map.put("浣忓璐规爣鍑嗗悎璁�", reimbursementdetailShared.getHotelexpense());
- Long fpuuid = COUNTER.incrementAndGet();
+ map.put("浣忓璐规爣鍑嗗悎璁�", reimbursementdetail.getHotelexpense());
+ Long fpuuid = IdGeneratorUtils.nextId();
map.put("鍙戠エ闄勪欢", fpuuid);
map.put("绁ㄦ嵁璇嗗埆", "");
map.put("璇嗗埆浜�", "");
map.put("搴忓彿1", "");
- Long qtuuid = COUNTER.incrementAndGet();
+ Long qtuuid = IdGeneratorUtils.nextId();
map.put("鍏朵粬闄勪欢", qtuuid);
map.put("涓汉绁ㄥす鐢ㄦ埛", "");
map.put("璇嗗埆绁ㄦ嵁", "");
@@ -680,8 +697,8 @@
list.add(map);
//闄勪欢澶勭悊
- String annexfiles = reimbursementdetailShared.getAnnexfiles();
- String invoicefiles = reimbursementdetailShared.getInvoicefiles();
+ String annexfiles = reimbursementdetail.getAnnexfiles();
+ String invoicefiles = reimbursementdetail.getInvoicefiles();
int i = 0;
if (StringUtils.isNotEmpty(annexfiles)) {
@@ -716,18 +733,18 @@
return val == null ? BigDecimal.ZERO : val;
}
- private List<Map<String, Object>> formson_1211(List<ServiceReimbursementpayeeShared> serviceReimbursementpayeeShareds) {
+ private List<Map<String, Object>> formson_1211(List<ServiceReimbursementpayee> serviceReimbursementpayees) {
Map<String, List<Map<String, Object>>> allMap = new HashMap<>();
List<Map<String, Object>> list = new ArrayList<>();
- for (ServiceReimbursementpayeeShared serviceReimbursementpayeeShared : serviceReimbursementpayeeShareds) {
+ for (ServiceReimbursementpayee serviceReimbursementpayee : serviceReimbursementpayees) {
Map<String, Object> map = new HashMap<>();
- map.put("鏀舵浜�", serviceReimbursementpayeeShared.getPersonname());
- map.put("鍗″彿", serviceReimbursementpayeeShared.getBankcardno());
- map.put("寮�鎴烽摱琛�", serviceReimbursementpayeeShared.getBankname());
- map.put("鎵撴閲戦", serviceReimbursementpayeeShared.getAmount());
- map.put("浜哄憳绫诲埆鎵撴", serviceReimbursementpayeeShared.getPersontype());
+ map.put("鏀舵浜�", serviceReimbursementpayee.getPersonname());
+ map.put("鍗″彿", serviceReimbursementpayee.getBankcardno());
+ map.put("寮�鎴烽摱琛�", serviceReimbursementpayee.getBankname());
+ map.put("鎵撴閲戦", serviceReimbursementpayee.getAmount());
+ map.put("浜哄憳绫诲埆鎵撴", serviceReimbursementpayee.getPersontype());
map.put("鏍哥畻椤圭洰", "");
map.put("棰勭畻椤圭洰", "");
map.put("鍊熸柟鎽樿", "");
@@ -810,7 +827,6 @@
public int uploadOAFileAndUpdateDb(ServiceReimbursementdetailShared remShare) throws Exception {
log.info("uploadOAFileAndUpdate鏂规硶鐨勫叆鍙�:{}", remShare);
- System.out.println("uploadOAFileAndUpdate鏂规硶鐨勫叆鍙�:" + remShare);
//涓婁紶OA鏂囦欢
String strRes = getToken();
--
Gitblit v1.9.3