From 323e4e535e3539d9aa49aecaa25c46ed00c2c9dd Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 07 四月 2023 20:29:20 +0800
Subject: [PATCH] yxh
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java | 282 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 261 insertions(+), 21 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
index 863f73d..df35e04 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -1,14 +1,20 @@
package com.ruoyi.web.controller.project;
-import java.io.*;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.config.RuoYiConfig;
import com.ruoyi.common.constant.HttpStatus;
+import com.ruoyi.common.core.controller.BaseController;
+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.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.HttpClientKit;
+import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.service.*;
@@ -18,23 +24,13 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Options;
-import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.ruoyi.common.annotation.Log;
-import com.ruoyi.common.annotation.RepeatSubmit;
-import com.ruoyi.common.core.controller.BaseController;
-import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.enums.BusinessType;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.*;
+import java.math.BigDecimal;
+import java.text.SimpleDateFormat;
+import java.util.*;
import static com.ruoyi.web.controller.project.ServiceReimbursementController.convert;
@@ -66,6 +62,9 @@
@Autowired
private IServiceSystemmessageService ServiceSystemmessage;
+
+ @Autowired
+ private IServiceFundSharedService fundServiceShare;
public ServiceFundController() {
@@ -202,7 +201,239 @@
{
boolean b = serviceFundService.save(serviceFund);
Long id = serviceFund.getId();
+ if(b)
+ {
+ addReiSharedDatd(serviceFund,1);
+ }
return AjaxResult.success(id);
+ }
+
+
+ public int addReiSharedDatd(ServiceFund serviceFund,int nType)
+ {
+ //remShare = ;
+ ServiceFundShared remShare = null;
+ if(nType == 1)
+ {
+ remShare = new ServiceFundShared();
+ remShare.setSerfunid(serviceFund.getId());
+ }
+ else //modify
+ {
+ List<ServiceFundShared> remlist = fundServiceShare.getFundShareInfoById(serviceFund.getId());
+ if(remlist!=null)
+ remShare =remlist.get(0);
+ }
+
+ remShare.setDonorno(serviceFund.getDonorno());
+ remShare.setDonorname(serviceFund.getDonorname());
+ remShare.setUserno(serviceFund.getUserno());
+ remShare.setUsername(serviceFund.getUsername());
+ remShare.setUnitname(serviceFund.getUnitname());
+ remShare.setUnitno(serviceFund.getUnitno());
+ remShare.setUnituserno(serviceFund.getUnituserno());
+ remShare.setPhone(serviceFund.getPhone());
+ remShare.setAnnexbankcard(serviceFund.getAnnexbankcard());
+ remShare.setAnnexregistform(serviceFund.getAnnexregistform());
+ Double nTemp= serviceFund.getPretaxcost();
+ if( nTemp == null) nTemp = 0d;
+ remShare.setPretaxcost(BigDecimal.valueOf(nTemp));
+ //remShare.setAnnexfiles(serviceReimbursement.getAnnexfiles());
+ // remShare.setAmountrequested(BigDecimal.valueOf(serviceReimbursement.getAmountrequested()));
+
+ nTemp= serviceFund.getTaxedcost();
+ if( nTemp == null) nTemp = 0d;
+ remShare.setTaxedcost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getTotalcost();
+ if( nTemp == null) nTemp = 0d;
+ remShare.setTotalcost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getExpertcost();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setExpertcost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getEthicscost();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setEthicscost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getMedicalcost();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setMedicalcost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getFamilycost();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setFamilycost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getAftercarecost();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setAftercarecost(BigDecimal.valueOf(nTemp));
+
+ nTemp = serviceFund.getAmountrequested();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setAmountrequested(BigDecimal.valueOf(nTemp));
+
+
+ remShare.setApplytype(serviceFund.getApplytype());
+
+ nTemp = serviceFund.getPrepaidamount();
+ if(nTemp == null) nTemp = 0.0;
+ remShare.setPrepaidamount(BigDecimal.valueOf(nTemp));
+
+ remShare.setInvoicecount(serviceFund.getInvoicecount());
+ remShare.setAttachcount(serviceFund.getAttachcount());
+ remShare.setManagerno(serviceFund.getManagerno());
+ remShare.setManagername(serviceFund.getManagername());
+ remShare.setDeptmentno(serviceFund.getDeptmentno());
+ remShare.setDeptmentname(serviceFund.getDeptmentname());
+ remShare.setOpochecker(serviceFund.getOpochecker());
+ remShare.setFinvicepresident(serviceFund.getFinvicepresident());
+ remShare.setBusvicepresident(serviceFund.getBusvicepresident());
+ remShare.setOfficedirector(serviceFund.getOfficedirector());
+ remShare.setFinancedirector(serviceFund.getFinancedirector());
+ remShare.setFinancechecher(serviceFund.getFinancechecher());
+ //remShare.setIsdistribute(serviceFund.getIsdistribute());
+ remShare.setRecordstatus(serviceFund.getRecordstatus());
+ remShare.setUploadflag(serviceFund.getUploadflag());
+ remShare.setUploadtime(serviceFund.getUploadtime());
+ long nLevel = serviceFund.getFlowlevel();
+ remShare.setFlowlevel(nLevel);
+
+ remShare.setInfoid(serviceFund.getInfoid());
+
+ //remShare.setOaid(serviceReimbursement.getOaid());
+ //remShare.setDonorno(serviceReimbursement.getDonorno());
+
+ boolean bRet = false;
+ if(nType==1)
+ {
+ bRet = fundServiceShare.save(remShare);
+ }
+ else
+ {
+ //remShare.setId(serviceReimbursement.);
+ bRet = fundServiceShare.updateById(remShare);
+ }
+
+ //if(!bRet) return -1;
+ String strMutfileUrl = remShare.getAnnexbankcard();
+ //鏈夐檮浠舵椂鎵嶈皟鐢ㄧ涓夋柟杩涜涓婁紶
+ if(strMutfileUrl == null) return 0;
+ if(strMutfileUrl.isEmpty()) return 0;
+
+ try
+ {
+ uploadOAFileAndUpdateDb(remShare);
+ }
+ catch (Exception e)
+ {
+ logger.error("璋冪敤绗笁鏂规帴鍙e嚭閿�!");
+ e.printStackTrace();
+ }
+
+ //姝ゅ淇濆瓨鎴愬姛鍚庤涓婁紶OA锛屼繚瀛樿繑鍥炲��
+
+ return 0;
+ }
+
+
+ int uploadOAFileAndUpdateDb(ServiceFundShared remShare)
+ {
+ //涓婁紶OA鏂囦欢
+ //String strUrl = "http://129.88.242.39:8899/seeyon/rest/token?userName=opo&password=127814f8-84e8-4304-84a5-a71573567efd&loginName=demo3";
+ String strUrl = "http://129.88.242.39:8899/seeyon/rest/token";
+ //String strUrl = "http://slb.hospitalstar.com:8899/seeyon/rest/token";
+ //涓婁紶鏂囦欢鎴愬姛鍚庯紝鍘绘洿鏂扮浉鍏崇殑鏁版嵁搴�
+
+
+ Map<String, Object> map = new HashMap<String, Object>();
+ map.put("userName","opo");
+ map.put("password","4126407a-9821-4874-be41-6568abd6dbe5");
+ map.put("loginName","demo3");
+
+ JSONObject jsonObj = new JSONObject(map);
+
+ System.out.println("uploadOAFileAndUpdateDb + jsonObject"+jsonObj.toString() + "\r\n" + jsonObj.toJSONString());
+ String strRes = HttpClientKit.postOpr(strUrl,jsonObj.toString());//
+ //String strRes = HttpClientKit.postMsg(strUrl,jsonObj);//寰楀埌杩斿洖鐨則oken?
+
+ JSONObject json1 = JSONObject.parseObject(strRes);
+ strRes = json1.get("id").toString();
+
+ ///if(strRes.isEmpty() || "" == strRes) return -1;// 涓虹┖浠h〃澶辫触
+
+ //涓嬮潰闇�姹傝皟鐢ㄦ枃浠剁殑鎺ュ彛锛岃皟鐢ㄦ垚鍔熻繑鍥炲悗锛屽緱鍒癴ilename鍜宖ileid 鐢ㄨ繖浜屼釜鍊煎幓鏇存柊鏁版嵁
+
+ String filePath = RuoYiConfig.getUploadPath();
+ String strMutfileUrl = remShare.getAnnexbankcard();//鍙兘瀛樺湪澶氫釜鍦板潃锛屼互,鍒嗗紑
+
+ String strFUrl = "http://129.88.242.39:8899/seeyon/rest/attachment?token="+strRes;
+ //String strFUrl = "http://slb.hospitalstar.com:8899/seeyon/rest/attachment?token="+strRes;
+ //strFUrl = String.format(strFUrl, strRes);
+
+ /*File test = null;
+ File file = new File("E:\\YYJQ\\OPO\\WEB\\Upload\\upload\\2023\\02\\17");
+ if (file.exists() && file.isDirectory()) {
+ // 鑾峰彇鎵�鏈夌洸鐩掓枃浠跺す
+ File[] ones = file.listFiles();
+ for (File one : ones) {
+ test = one;
+ }
+ }*/
+
+ String filename = "";
+ String fileid = "";
+
+ String[] urlArray = strMutfileUrl.split(",");
+ for (int i = 0; i < urlArray.length; i++)
+ {
+ String strOneFileName = urlArray[i];
+ String strTemp = strOneFileName.substring(15);
+ String strFile = filePath + strTemp ;
+ //FileUploadUtils.getAbsoluteFile(filePath,strOneFileName);
+ String struploadResult = "";
+ File filetest = new File(strFile);
+ try
+ {
+ struploadResult = HttpClientKit.sendPostWithFile(filetest,strFUrl);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ }
+
+
+ //String strFRes = HttpClientKit.postMsg(strFUrl,jsonFObj);
+ if(struploadResult == null) return 0;
+ if(struploadResult.isEmpty()) return 0;
+
+ JSONObject jsonR = JSONObject.parseObject(struploadResult);
+
+ JSONArray jsonArr = jsonR.getJSONArray("atts");
+ for(int j=0;j<jsonArr.size();j++)
+ {
+ JSONObject jsonRet = jsonArr.getJSONObject(j);
+ String name1= jsonRet.get("filename").toString();
+ String id1 = jsonRet.get("fileUrl").toString();
+ filename+=name1;
+ fileid+=id1;
+ if(i!=urlArray.length-1)
+ {
+ filename+=",";
+ fileid+=",";
+ }
+ }
+
+ }
+
+ long nId = remShare.getId();
+ remShare.setId(nId);
+ remShare.setFilename(filename);
+ remShare.setFileid(fileid);
+ boolean bRet = fundServiceShare.updateById(remShare);
+ if(!bRet) return -1;
+
+ return 0;
}
/**
@@ -217,6 +448,10 @@
{
boolean b = serviceFundService.save(serviceFundVO);
Long id = serviceFundVO.getId();
+ if(b)
+ {
+ addReiSharedDatd(serviceFundVO,1);
+ }
List<ServiceFunddetail> serviceFunddetails=serviceFundVO.getServiceFunddetails();
serviceFunddetails.forEach(item->item.setFundid(id));
serviceFunddetailService.saveBatch(serviceFunddetails);
@@ -351,7 +586,12 @@
@RepeatSubmit
public AjaxResult edit(@RequestBody ServiceFund serviceFund)
{
- return toAjax(serviceFundService.updateById(serviceFund));
+ boolean bret = serviceFundService.updateById(serviceFund);
+ if(bret)
+ {
+ addReiSharedDatd(serviceFund,2);
+ }
+ return toAjax(bret);
}
/**
--
Gitblit v1.9.3