From 0bc118d74a03685d1b4685a0b7d38468f307b537 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 02 八月 2023 17:51:34 +0800
Subject: [PATCH] 修改代码
---
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java | 14 ++--
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java | 74 ++++++++++++++++++++++++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java | 61 --------------------
3 files changed, 83 insertions(+), 66 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 0595f39..58204bf 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
@@ -434,67 +434,8 @@
@RepeatSubmit
@Options(useGeneratedKeys = true, keyProperty = "id")
public AjaxResult addOrUpdateNew(@RequestBody ServiceFundVO serviceFundVO) {
- Long id = null;
- if (serviceFundVO.getId() == null) {
- boolean b = serviceFundService.save(serviceFundVO);
- id = serviceFundVO.getId();
- } else {
- serviceFundService.updateById(serviceFundVO);
- id = serviceFundVO.getId();
- }
- List<ServiceFunddetail> serviceFunddetails = serviceFundVO.getServiceFunddetails();
- double taxBefore = 0.0;
- double taxAfter = 0.0;
- for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
- serviceFunddetail.setFundid(id);
- log.info("serviceFunddetail鐨勫�间负 : {}", serviceFunddetail);
- if (serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getAmount() != null && serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getAmount() != 0.0) {
- // 绋庡墠绋庡悗閮戒笉涓虹┖
- if (serviceFunddetail.getId() == null) {
- serviceFunddetailService.save(serviceFunddetail);
- } else {
- serviceFunddetailService.updateById(serviceFunddetail);
- }
- continue;
- } else if (serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getTaxedamount() != 0.0) {
- // 绋庡悗姹傜◣鍓�,濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗
- if (StringUtils.isNotEmpty(serviceFundVO.getApplytype()) && serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) {
- Double taxationBefore = Double.valueOf(TaxtUtils.getTaxationBefore(BigDecimal.valueOf(serviceFunddetail.getTaxedamount())));
- // 绋庨噾
- String taxation = TaxtUtils.getTaxation(BigDecimal.valueOf(taxationBefore));
- serviceFunddetail.setAmount(Double.valueOf(taxationBefore));
- serviceFunddetail.setTaxamount(Double.parseDouble(taxation));
- }
- } else if (serviceFunddetail.getAmount() != null && serviceFunddetail.getAmount() != 0.0) {
- // 绋庡墠姹傜◣鍚�,濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗
- if (StringUtils.isNotEmpty(serviceFundVO.getApplytype()) && serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) {
- double tax = Double.parseDouble(TaxtUtils.getTaxation(BigDecimal.valueOf(serviceFunddetail.getAmount())));
- BigDecimal taxAfterMoney = BigDecimal.valueOf(serviceFunddetail.getAmount()).subtract(BigDecimal.valueOf(tax));
- serviceFunddetail.setTaxamount(tax);
- serviceFunddetail.setTaxedamount(taxAfterMoney.doubleValue());
- }
- }
-
- //鏍规嵁id鍒ゆ柇鏄柊澧炶繕鏄慨鏀�
- if (serviceFunddetail.getId() == null) {
- serviceFunddetailService.save(serviceFunddetail);
- } else {
- serviceFunddetailService.updateById(serviceFunddetail);
- }
- if (serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) {
- //濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗
- taxBefore = taxBefore + serviceFunddetail.getAmount();
- taxAfter = taxAfter + serviceFunddetail.getTaxedamount();
- }
- }
- //灏嗙◣鍓嶃�佺◣鍚庨噾棰濇洿鏂板埌fund琛ㄤ腑
- serviceFundVO.setPretaxcost(taxBefore);
- serviceFundVO.setTaxedcost(taxAfter);
- serviceFundService.updateById(serviceFundVO);
-// //灏嗚绠楀ソ鐨勬暟鎹紝淇濆瓨鍒癲etail琛ㄤ腑
-// serviceFunddetailService.saveBatch(serviceFunddetails);
- return AjaxResult.success(id);
+ return AjaxResult.success(serviceFundService.addOrUpdateNew(serviceFundVO));
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
index 2cb77c7..ea57e34 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceFundService.java
@@ -1,6 +1,7 @@
package com.ruoyi.project.service;
import java.util.List;
+
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.project.domain.ServiceFund;
import com.ruoyi.project.domain.ServiceFunddetail;
@@ -9,16 +10,15 @@
/**
* 璐圭敤鐢宠涓籗ervice鎺ュ彛
- *
+ *
* @author ruoyi
* @date 2022-01-24
*/
-public interface IServiceFundService extends IService<ServiceFund>
-{
+public interface IServiceFundService extends IService<ServiceFund> {
/**
* 鏌ヨ璐圭敤鐢宠涓诲垪琛�
- *
+ *
* @param serviceFund 璐圭敤鐢宠涓�
* @return 璐圭敤鐢宠涓婚泦鍚�
*/
@@ -29,11 +29,11 @@
List<ServiceFund> getInfoByInfoId(Long infoid);
-
Long getFundId(Long infoid);
/**
* 寰�鍒嗕韩琛ㄤ腑娣诲姞鏁版嵁
+ *
* @param id
* @return
*/
@@ -52,7 +52,9 @@
String returnId(Long id);
- List<SpFinancialExpensesFundOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT,Integer CHECKFLAG,Integer APPLYTYPE);
+ List<SpFinancialExpensesFundOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT, Integer CHECKFLAG, Integer APPLYTYPE);
int countItem(Long infoid, Long itemid);
+
+ Long addOrUpdateNew(ServiceFundVO serviceFundVO);
}
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 198c7b7..38adfd8 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
@@ -1,6 +1,7 @@
package com.ruoyi.project.service.impl;
import java.io.File;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -9,13 +10,16 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ruoyi.common.config.RuoYiConfig;
+import com.ruoyi.common.tax.TaxtUtils;
import com.ruoyi.common.utils.HttpClientKit;
import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.mapper.*;
import com.ruoyi.project.service.IServiceFundSharedService;
+import com.ruoyi.project.service.IServiceFunddetailService;
import com.ruoyi.project.service.IServiceFunddetailSharedService;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -31,6 +35,7 @@
* @author ruoyi
* @date 2022-01-24
*/
+@Slf4j
@Service
public class ServiceFundServiceImpl extends ServiceImpl<ServiceFundMapper, ServiceFund> implements IServiceFundService {
@Autowired
@@ -56,6 +61,9 @@
@Autowired
IServiceFunddetailSharedService detailSharedService;
+
+ @Autowired
+ private IServiceFunddetailService serviceFunddetailService;
/**
@@ -659,6 +667,72 @@
return count;
}
+ @Override
+ @Transactional
+ public Long addOrUpdateNew(ServiceFundVO serviceFundVO) {
+ Long id = null;
+ if (serviceFundVO.getId() == null) {
+ save(serviceFundVO);
+ id = serviceFundVO.getId();
+ } else {
+ updateById(serviceFundVO);
+ id = serviceFundVO.getId();
+ }
+ List<ServiceFunddetail> serviceFunddetails = serviceFundVO.getServiceFunddetails();
+
+ // 鐢ㄤ簬璁板綍绋庡墠銆佺◣鍚庣殑鎬诲拰
+ double taxBefore = 0.0;
+ double taxAfter = 0.0;
+
+ for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
+ serviceFunddetail.setFundid(id);
+ if (serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getAmount() != null && serviceFunddetail.getTaxedamount() != 0.0 && serviceFunddetail.getAmount() != 0.0) {
+ // 绋庡墠绋庡悗閮戒笉涓虹┖
+ if (serviceFunddetail.getId() == null) {
+ serviceFunddetailService.save(serviceFunddetail);
+ } else {
+ serviceFunddetailService.updateById(serviceFunddetail);
+ }
+ continue;
+ } else if (serviceFunddetail.getTaxedamount() != null && serviceFunddetail.getTaxedamount() != 0.0) {
+ // 绋庡悗姹傜◣鍓�,濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗
+ if (StringUtils.isNotEmpty(serviceFundVO.getApplytype()) && serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) {
+ Double taxationBefore = Double.valueOf(TaxtUtils.getTaxationBefore(BigDecimal.valueOf(serviceFunddetail.getTaxedamount())));
+ // 绋庨噾
+ String taxation = TaxtUtils.getTaxation(BigDecimal.valueOf(taxationBefore));
+ serviceFunddetail.setAmount(Double.valueOf(taxationBefore));
+ serviceFunddetail.setTaxamount(Double.parseDouble(taxation));
+ }
+ } else if (serviceFunddetail.getAmount() != null && serviceFunddetail.getAmount() != 0.0) {
+ // 绋庡墠姹傜◣鍚�,濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗
+ if (StringUtils.isNotEmpty(serviceFundVO.getApplytype()) && serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) {
+ double tax = Double.parseDouble(TaxtUtils.getTaxation(BigDecimal.valueOf(serviceFunddetail.getAmount())));
+ BigDecimal taxAfterMoney = BigDecimal.valueOf(serviceFunddetail.getAmount()).subtract(BigDecimal.valueOf(tax));
+ serviceFunddetail.setTaxamount(tax);
+ serviceFunddetail.setTaxedamount(taxAfterMoney.doubleValue());
+ }
+ }
+
+ //鏍规嵁id鍒ゆ柇鏄柊澧炶繕鏄慨鏀�
+ if (serviceFunddetail.getId() == null) {
+ serviceFunddetailService.save(serviceFunddetail);
+ } else {
+ serviceFunddetailService.updateById(serviceFunddetail);
+ }
+ if (serviceFundVO.getApplytype().equals("1") || serviceFundVO.getApplytype().equals("2")) {
+ //濡傛灉鏄笓瀹惰垂鐢宠 鎴� 浼︾悊涓撳璐圭敵璇� 鎵嶄細璁$畻绋庡墠绋庡悗
+ taxBefore = taxBefore + serviceFunddetail.getAmount();
+ taxAfter = taxAfter + serviceFunddetail.getTaxedamount();
+ }
+ }
+ //灏嗙◣鍓嶃�佺◣鍚庨噾棰濇洿鏂板埌fund琛ㄤ腑
+ serviceFundVO.setPretaxcost(taxBefore);
+ serviceFundVO.setTaxedcost(taxAfter);
+ updateById(serviceFundVO);
+
+ return id;
+ }
+
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";
--
Gitblit v1.9.3