From 5152d8c282f56853eff61071db43e20a8defa4b8 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 13 十一月 2025 13:43:58 +0800
Subject: [PATCH] 代码提交
---
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java | 138 +++++++++++++++++++++++++++++++--------------
1 files changed, 94 insertions(+), 44 deletions(-)
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
index 4f24c58..0434b71 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -15,6 +15,7 @@
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
+import com.ruoyi.common.enums.ApplyTypeEnum;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.HttpClientKit;
import com.ruoyi.common.utils.StringUtils;
@@ -45,6 +46,7 @@
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors;
/**
@@ -176,7 +178,7 @@
serviceFundSharedMapper.delfundsharedInfoById(null, serviceFund1.getId());
//杩欎釜娑堟伅鍙戦�侊紝灏变笉鍦ㄨ繖鍋氫簡锛屽湪瀹℃壒璁板綍鐨勬帴鍙i噷鍋氾紙鍗虫棩蹇楁帴鍙o級
- //sendMeg(serviceFund1.getApplytype(), sysUser.getPhonenumber());
+// sendMeg(serviceFund1.getApplytype(), sysUser.getPhonenumber());
}
return true;
@@ -421,7 +423,8 @@
SysUser user = loginUser.getUser();
if (serviceFund.getFlowlevel() == Long.valueOf(serviceFundflowrules.get(0).getFlowlevel() - 1) && serviceFund.getBackflowlevel() == 100) {
log.info("璐㈠姟閫�鍥炲啀鎻愪氦锛屽嚭绾冲啀娆″鎵癸紝涔嬪悗鎻愪氦鍒拌储鍔�");
- serviceFund.setFinancechecher("瀹℃壒浜猴細" + user.getUserName() + " & 瀹℃壒鏃堕棿" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃");
+// serviceFund.setFinancechecher("瀹℃壒浜猴細" + user.getNickName() + " & 瀹℃壒鏃堕棿" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃");
+ serviceFund.setFinancechecher(user.getNickName());
serviceFund.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
serviceFund.setRecordstatus(99);
@@ -443,6 +446,7 @@
serviceFundflow.setCheckuserno(user.getUserName());
serviceFundflow.setCheckusername(user.getNickName());
serviceFundflow.setFundtype(2);
+ serviceFundflow.setCheckTime(new Date());
serviceFundflow.setApplytype(serviceFund.getApplytype());
serviceFundflow.setFlowconclusion(CheckFlag);
serviceFundflow.setFlowcontent("閫氳繃");
@@ -454,7 +458,8 @@
List<Integer> roleIds = sysUserRoleMapper.getUserRoleByUserId(user.getUserId());
if (roleIds != null && roleIds.contains(11)) {
//11涓鸿储鍔�
- serviceFund.setFinancechecher("瀹℃壒浜猴細" + user.getUserName() + " & 瀹℃壒鏃堕棿" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃");
+// serviceFund.setFinancechecher("瀹℃壒浜猴細" + user.getNickName() + " & 瀹℃壒鏃堕棿" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃");
+ serviceFund.setFinancechecher(user.getNickName());
}
//璁板綍涓�涓嬶紝涓嬩竴绾х殑瀹℃壒锛屼互渚夸簬涓嬩竴绾ч��鍥炲悗锛屽彂璧疯�呮彁浜ゆ椂锛岃兘鍐嶆彁鍒板綋鍓嶅鎵瑰眰绾�
@@ -466,7 +471,6 @@
FlowLevel = 0;
RecordStatus = -1;
log.info("serviceFund杩涙潵浜嗗悧锛燂紵锛燂紵锛燂紵 :{},{}", RecordStatus, FlowLevel);
- System.out.println("serviceFund杩涙潵浜嗗悧锛燂紵锛燂紵锛燂紵");
} else {
RecordStatus = (FlowLevel + 1) * 2 - 1;
FlowLevel = (FlowLevel - 1);
@@ -502,6 +506,7 @@
serviceFundflow.setFundtype(2);
serviceFundflow.setApplytype(serviceFund.getApplytype());
serviceFundflow.setFlowconclusion(CheckFlag);
+ serviceFundflow.setCheckTime(new Date());
if (StringUtils.isNotBlank(checkFundVO.getFlowcontent())) {
serviceFundflow.setFlowcontent(checkFundVO.getFlowcontent());
} else {
@@ -528,8 +533,6 @@
}
}
System.out.println("serviceFund鐨勫�兼槸--------:" + serviceFund);
- log.info("寮�濮嬫洿鏂扮殑鐨勫�兼槸--------");
-
Boolean aBoolean1 = updateById(serviceFund);
log.info("integer鏇存柊鐨勭殑鍊兼槸-------- :{}", aBoolean1);
ServiceSystemmessage serviceSystemmessage = new ServiceSystemmessage();
@@ -608,7 +611,7 @@
// 涓昏〃瀛楁鏁版嵁
Map<String, Object> data2 = new HashMap<>();
- data2.put("formmain_0831", getformmain_0831(fundShareInfos.get(0)));
+ data2.put("formmain_0831", getformmain_0831(serviceFund));
// 鏄庣粏琛ㄥ瓧娈垫暟鎹紝涓庨檮浠剁殑澶勭悊
Map<String, List<Map<String, Object>>> map1 = formson_0832(serviceFunddetailShareds);
data2.put("formson_0832", map1.get("formson_0832"));
@@ -679,12 +682,18 @@
return true;
}
+ private static final AtomicLong COUNTER = new AtomicLong(System.currentTimeMillis());
+
private Map<String, List<Map<String, Object>>> formson_0832(List<ServiceFunddetailShared> serviceFunddetailSharedList) {
Map<String, List<Map<String, Object>>> allMap = new HashMap<>();
List<Map<String, Object>> list = new ArrayList<>();
List<Map<String, Object>> annexfilesList = new ArrayList<>();
for (ServiceFunddetailShared serviceFunddetailShared : serviceFunddetailSharedList) {
+ //闄勪欢澶勭悊
+ String annexfiles = serviceFunddetailShared.getAnnexfiles();
+ String invoicefiles = serviceFunddetailShared.getInvoicefiles();
+
Map<String, Object> map = new HashMap<>();
map.put("搴忓彿1", serviceFunddetailShared.getOrderno());
map.put("璐圭敤椤圭洰", serviceFunddetailShared.getItemname());
@@ -692,15 +701,21 @@
map.put("寮�鎴烽摱琛�", serviceFunddetailShared.getDepositbank());
map.put("鍗″彿", serviceFunddetailShared.getBankcardno());
map.put("鏀剁泭浜哄灞炴垨涓撳", serviceFunddetailShared.getBeneficiaryname());
- map.put("绋庡悗閲戦", serviceFunddetailShared.getTaxamount());
+ map.put("绋庡悗閲戦", serviceFunddetailShared.getTaxedamount());
map.put("浣滃簾鏈�缁堥噾棰�", null);
- Long fpuuid = System.currentTimeMillis() + 5;
- map.put("鍙戠エ闄勪欢", fpuuid);
+ Long fpuuid = COUNTER.incrementAndGet();
+ map.put("鍙戠エ闄勪欢", "");
+ if (StringUtils.isNotEmpty(invoicefiles)) {
+ map.put("鍙戠エ闄勪欢", fpuuid);
+ }
map.put("鍙戠エ璇嗗埆", null);
map.put("璇嗗埆浜�", null);
- map.put("绋庨", null);
- long qtuuid = System.currentTimeMillis() + 20;
- map.put("鍏朵粬闄勪欢", qtuuid);
+ map.put("绋庨", serviceFunddetailShared.getTaxamount());
+ long qtuuid = COUNTER.incrementAndGet();
+ map.put("鍏朵粬闄勪欢", "");
+ if (StringUtils.isNotEmpty(annexfiles)) {
+ map.put("鍏朵粬闄勪欢", qtuuid);
+ }
map.put("椤圭洰缂栫爜", serviceFunddetailShared.getItemcode());
map.put("棰勭畻椤圭洰", null);
map.put("璐锋柟绉戠洰", null);
@@ -710,9 +725,6 @@
map.put("璐圭敤璇存槑", null);
list.add(map);
- //闄勪欢澶勭悊
- String annexfiles = serviceFunddetailShared.getAnnexfiles();
- String invoicefiles = serviceFunddetailShared.getInvoicefiles();
int i = 0;
if (StringUtils.isNotEmpty(annexfiles)) {
@@ -744,48 +756,85 @@
}
- private Map<String, Object> getformmain_0831(ServiceFundShared serviceFundShared) {
+ private Map<String, Object> getformmain_0831(ServiceFund serviceFund) {
+ ServiceFundflow serviceFundflow = new ServiceFundflow();
+ serviceFundflow.setFundid(serviceFund.getId());
+ serviceFundflow.setFundtype(2);
+ List<ServiceFundflow> serviceFundflows = serviceFundflowService.queryList(serviceFundflow);
+
Map<String, Object> formmain_0831 = new HashMap<>();
- formmain_0831.put("鎹愮尞鑰呭鍚�", serviceFundShared.getDonorname());
- formmain_0831.put("鎶ラ攢浜哄憳", serviceFundShared.getUsername());
- formmain_0831.put("涓氬姟鍖哄煙", serviceFundShared.getDeptmentname());
- formmain_0831.put("缁忔墜浜�", serviceFundShared.getUsername());
- formmain_0831.put("濉〃鏃堕棿", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(serviceFundShared.getApplyTime()));
- formmain_0831.put("鎶ラ攢閲戦鍚堣", serviceFundShared.getPretaxcost());
+ formmain_0831.put("鎹愮尞鑰呭鍚�", serviceFund.getDonorname());
+ formmain_0831.put("鎶ラ攢浜哄憳", serviceFund.getUsername());
+ formmain_0831.put("涓氬姟鍖哄煙", serviceFund.getDeptmentname());
+ formmain_0831.put("缁忔墜浜�", serviceFund.getUsername());
+ formmain_0831.put("濉〃鏃堕棿", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(serviceFund.getApplyTime()));
+ formmain_0831.put("鎶ラ攢閲戦鍚堣", serviceFund.getPretaxcost());
formmain_0831.put("涓婁紶闄勪欢", null);
formmain_0831.put("澶囨敞", null);
- formmain_0831.put("璐㈠姟瀹℃壒", serviceFundShared.getFinancechecher());
- formmain_0831.put("璐㈠姟閮ㄨ礋璐d汉瀹℃壒", serviceFundShared.getFinancedirector());
- formmain_0831.put("鍔炲叕瀹や富浠诲鎵�", serviceFundShared.getOfficedirector());
- formmain_0831.put("涓氬姟鍓櫌闀垮鎵�", serviceFundShared.getBusvicepresident());
- formmain_0831.put("璐㈠姟鍓櫌闀垮鎵�", serviceFundShared.getFinvicepresident());
- formmain_0831.put("涓績璐熻矗浜哄鎵�", serviceFundShared.getOpochecker());
- formmain_0831.put("鏀粯鏂瑰紡", serviceFundShared.getZffs());
- formmain_0831.put("缁勯暱", null);
- formmain_0831.put("瀹℃壒浜哄憳", null);
- formmain_0831.put("鏀粯鏃ユ湡", serviceFundShared.getRiqi());
+ formmain_0831.put("璐㈠姟瀹℃壒", null);
+ formmain_0831.put("璐㈠姟閮ㄨ礋璐d汉瀹℃壒", getLastApprovalInfo(serviceFundflows, serviceFund.getFinancedirector()));
+
+// formmain_0831.put("鍔炲叕瀹や富浠诲鎵�", "鍔炲叕瀹や富浠诲鎵�", "瀹℃壒浜猴細鍛ㄨ偛鎴� & 瀹℃壒鏃堕棿锛�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃");
+ if (serviceFund.getBackflowlevel() == 3)
+ formmain_0831.put("鍔炲叕瀹や富浠诲鎵�", "瀹℃壒浜猴細鍛ㄨ偛鎴� & 瀹℃壒鏃堕棿锛�" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃");
+ else formmain_0831.put("鍔炲叕瀹や富浠诲鎵�", getLastApprovalInfo(serviceFundflows, "鍛ㄨ偛鎴�"));
+
+ formmain_0831.put("涓氬姟鍓櫌闀垮鎵�", serviceFund.getBusvicepresident());
+ formmain_0831.put("璐㈠姟鍓櫌闀垮鎵�", serviceFund.getFinvicepresident());
+ formmain_0831.put("涓績璐熻矗浜哄鎵�", serviceFund.getOpochecker());
+ formmain_0831.put("鏀粯鏂瑰紡", serviceFund.getZffs());
+ formmain_0831.put("缁勯暱", getLastApprovalInfo(serviceFundflows, serviceFund.getManagername()));
+ formmain_0831.put("瀹℃壒浜哄憳", StringUtils.isEmpty(getLastApprovalInfo(serviceFundflows, serviceFund.getFinancechecher())) ? "闄堟厱鍗�" : getLastApprovalInfo(serviceFundflows, serviceFund.getFinancechecher()));
+ formmain_0831.put("鏀粯鏃ユ湡", serviceFund.getRiqi());
formmain_0831.put("璇嗗埆浜�-浣滃簾", null);
- formmain_0831.put("璐㈠姟瀹℃壒绛惧瓧", serviceFundShared.getFinancedirector());
- formmain_0831.put("璐㈠姟閮ㄨ礋璐d汉绛惧瓧", serviceFundShared.getFinancedirector());
- formmain_0831.put("琛ㄨ揪绫诲瀷", null);
- formmain_0831.put("绋庡墠閲戦鍚堣", serviceFundShared.getPretaxcost());
- formmain_0831.put("绋庨鍚堣", serviceFundShared.getPretaxcost() - serviceFundShared.getTaxedcost());
+ formmain_0831.put("璐㈠姟瀹℃壒绛惧瓧", serviceFund.getFinancedirector());
+ formmain_0831.put("璐㈠姟閮ㄨ礋璐d汉绛惧瓧", serviceFund.getFinancedirector());
+ formmain_0831.put("琛ㄨ揪绫诲瀷", StringUtils.isEmpty(serviceFund.getApplytype()) ? null : ApplyTypeEnum.getDescByCode(serviceFund.getApplytype()));
+ formmain_0831.put("绋庡墠閲戦鍚堣", serviceFund.getPretaxcost());
+ formmain_0831.put("绋庨鍚堣", serviceFund.getPretaxcost() - serviceFund.getTaxedcost());
formmain_0831.put("琛ㄥ崟缂栧彿1", null);
formmain_0831.put("缂栫爜", null);
formmain_0831.put("CIF璐﹀閰嶇疆1", null);
formmain_0831.put(" 闄㈠尯", null);
- formmain_0831.put("鏄惁鏀粯", serviceFundShared.getIsdistribute());
+ formmain_0831.put("鏄惁鏀粯", serviceFund.getIsdistribute());
formmain_0831.put("鍑瘉鍙�", null);
formmain_0831.put("閾惰鍥炲崟", null);
formmain_0831.put("OFD", null);
formmain_0831.put("琛ㄥ崟闄勪欢", null);
formmain_0831.put("鐜伴噾娴侀噺鍒嗘瀽", null);
formmain_0831.put("鍑瘉绫诲埆", null);
- formmain_0831.put("绋庡悗閲戦鍚堣", serviceFundShared.getTaxedcost());
+ formmain_0831.put("绋庡悗閲戦鍚堣", serviceFund.getTaxedcost());
formmain_0831.put("鍘嗗彶瀹℃壒璁板綍", null);
- formmain_0831.put("琛ㄥ崟缂栧彿", serviceFundShared.getSerfunid());
+ formmain_0831.put("琛ㄥ崟缂栧彿", serviceFund.getId());
formmain_0831.put("鍘嗗彶瀹℃壒鍗曟煡璇�", null);
return formmain_0831;
+ }
+
+
+ public String getLastApprovalInfo(List<ServiceFundflow> serviceFundflows, String managerName) {
+ log.info("---------------serviceFundflows鐨勫叆鍙備负锛歿},managerName鐨勫�间负锛歿}", serviceFundflows, managerName);
+ if (StringUtils.isEmpty(managerName)) return "";
+ if (CollectionUtils.isEmpty(serviceFundflows)) {
+ //濡傛灉鏄渶鍚庝竴涓汉瀹℃壒锛岃繖涓椂鍊欏彲鑳絝low閲岃繕娌℃湁鐢熸垚杩涘幓
+ SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ return "瀹℃壒浜猴細" + managerName + " & 瀹℃壒鏃堕棿锛�" + sd.format(new Date()) + " & 瀹℃壒缁撴灉锛氶�氳繃";
+ }
+ //鍘讳竴涓嬬┖鏍�
+ String mn = managerName.trim();
+ Optional<ServiceFundflow> lastApproval = serviceFundflows.stream().filter(flow -> mn.trim().contains(flow.getCheckusername())).max(Comparator.comparing(ServiceFundflow::getCreateTime));
+
+ if (lastApproval.isPresent()) {
+ ServiceFundflow flow = lastApproval.get();
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ if (flow.getCheckTime() == null) {
+ flow.setCheckTime(new Date());
+ }
+ String formattedTime = sdf.format(flow.getCheckTime());
+
+ return "瀹℃壒浜猴細" + managerName + " & 瀹℃壒鏃堕棿锛�" + formattedTime + " & 瀹℃壒缁撴灉锛氶�氳繃";
+ }
+
+ return "";
}
@Override
@@ -1641,7 +1690,7 @@
Map<String, Object> map = new HashMap<String, Object>();
map.put("userName", "opo");
map.put("password", "4126407a-9821-4874-be41-6568abd6dbe5");
- map.put("loginName", "demo");
+ map.put("loginName", "OPO绯荤粺");
JSONObject jsonObj = new JSONObject(map);
@@ -1768,11 +1817,12 @@
serviceFundflow.setUpdateBy(serviceProcessVO.getCheckusername());
serviceFundflow.setCheckusername(serviceProcessVO.getCheckusername());
serviceFundflow.setCreateTime(new Date());
+ serviceFundflow.setCheckTime(new Date());
serviceFundflow.setUpdateTime(new Date());
serviceFundflow.setFlowcontent(serviceProcessVO.getFlowcontent());
serviceFundflow.setFlowconclusion(StringUtils.isNotEmpty(serviceProcessVO.getFlowconclusion()) ? Integer.valueOf(serviceProcessVO.getFlowconclusion()) : null);
- if (serviceProcessVO.getApplytype() == "0") serviceFundflow.setFundtype(1);
- if (serviceProcessVO.getApplytype() == "1") serviceFundflow.setFundtype(2);
+ if (serviceProcessVO.getApplytype().equals("0")) serviceFundflow.setFundtype(1);
+ if (serviceProcessVO.getApplytype().equals("1")) serviceFundflow.setFundtype(2);
serviceFundflow.setFlowlevel(100);
serviceFundflow.setApplytype(serviceProcessVO.getApplytype());
serviceFundflow.setFundid(StringUtils.isNotEmpty(serviceProcessVO.getBackCode()) ? Long.valueOf(serviceProcessVO.getBackCode()) : null);
--
Gitblit v1.9.3