From 054cfdd53b732d2f60627fc9ac7cf92233d3c200 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 17 十一月 2023 16:17:56 +0800 Subject: [PATCH] 代码提交 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseAnnextypeController.java | 3 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java | 8 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java | 3 ruoyi-common/src/main/java/com/ruoyi/common/config/IsAspectAspect.java | 55 ++++++ ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java | 3 ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java | 18 + ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml | 222 +++++++++++++++--------- ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceExpertexpenseController.java | 4 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java | 13 + ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java | 14 + ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatecompletioninfoController.java | 1 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonateorganController.java | 1 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonationwitnessController.java | 1 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java | 40 +++ ruoyi-project/src/main/resources/mapper/project/ServiceFunddetailMapper.xml | 19 + ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java | 8 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMedicalevaluationServiceImpl.java | 34 ++- ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml | 4 ruoyi-common/src/main/java/com/ruoyi/common/annotation/NotRepeatCommit.java | 17 + ruoyi-common/src/main/java/com/ruoyi/common/utils/ChineseUtils.java | 15 + ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceOrganallocationController.java | 3 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java | 1 ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMedicalevaluationController.java | 5 ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java | 13 + 24 files changed, 367 insertions(+), 138 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseAnnextypeController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseAnnextypeController.java index 3443496..cdcf9b2 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseAnnextypeController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/BaseAnnextypeController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -81,7 +82,7 @@ @PreAuthorize("@ss.hasPermi('system:annextype:add')") @Log(title = "鎹愮尞闄勪欢", businessType = BusinessType.INSERT) @PostMapping("/add") - @RepeatSubmit + @RepeatSubmit public AjaxResult add(@RequestBody BaseAnnextype baseAnnextype) { log.info("鏂板鎹愮尞闄勪欢{}锛�", baseAnnextype); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java index 3ec5767..e5f80e1 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.constant.HttpStatus; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatecompletioninfoController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatecompletioninfoController.java index 05667b9..6c86822 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatecompletioninfoController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatecompletioninfoController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.core.controller.BaseController; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonateorganController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonateorganController.java index 99a3912..bbef2d5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonateorganController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonateorganController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonationwitnessController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonationwitnessController.java index c28d50e..e622cbf 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonationwitnessController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonationwitnessController.java @@ -4,6 +4,7 @@ import java.text.SimpleDateFormat; import java.util.*; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.enums.OrganEnum; import com.ruoyi.common.utils.StringUtils; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java index 8f3537b..af6b309 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java @@ -3,6 +3,7 @@ import java.util.Arrays; import java.util.List; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.project.domain.vo.EthicalReviewVO; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; @@ -87,7 +88,7 @@ //@PreAuthorize("@ss.hasPermi('project:ethicalreviewopinions:add')") @Log(title = "浼︾悊瀹℃煡涓撳鎰忚", businessType = BusinessType.INSERT) @PostMapping - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult add(@RequestBody ServiceEthicalreviewopinions serviceEthicalreviewopinions) { return toAjax(serviceEthicalreviewopinionsService.save(serviceEthicalreviewopinions)); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceExpertexpenseController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceExpertexpenseController.java index ee85f90..04321d8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceExpertexpenseController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceExpertexpenseController.java @@ -2,6 +2,8 @@ import java.util.Arrays; import java.util.List; + +import com.ruoyi.common.annotation.NotRepeatCommit; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.security.access.prepost.PreAuthorize; @@ -79,7 +81,7 @@ @ApiOperation("鏂板璐圭敤鐢宠涓�") @Log(title = "璐圭敤鐢宠涓�", businessType = BusinessType.INSERT) @PostMapping - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult add(@RequestBody ServiceExpertexpense serviceExpertexpense) { return toAjax(serviceExpertexpenseService.save(serviceExpertexpense)); 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 c4f23c9..b4e3261 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 @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.constant.HttpStatus; @@ -481,6 +482,7 @@ * 瀹℃牳璐圭敤 */ @ApiOperation("瀹℃牳璐圭敤") + @RepeatSubmit // @Log(title = "瀹℃牳璐圭敤", businessType = BusinessType.OTHER) @PostMapping("/checkfund") public AjaxResult checkFund(@RequestBody CheckFundVO checkFundVO) { @@ -2099,6 +2101,7 @@ /** * 璐圭敤绫诲瀷璁℃暟 */ +// @NotRepeatCommit(key = "param:arg[1]", value = 30000) @ApiOperation("璐圭敤绫诲瀷璁℃暟") @GetMapping(value = "/countItem/{infoid}/{itemid}") public AjaxResult countItem(@PathVariable Long infoid, @PathVariable Long itemid) { @@ -2123,10 +2126,10 @@ /** * 鍚堣涓◣ */ + @NotRepeatCommit(key = "param:arg[1]", value = 30000) @ApiOperation("鍚堣涓◣") @Log(title = "鍚堣涓◣", businessType = BusinessType.INSERT) @PostMapping("/totaltax") - @RepeatSubmit public AjaxResult totaltax(@RequestBody TotalTaxVO totalTaxVO) { Map<String, List<ServiceFunddetailExcel>> totaltax = serviceFundService.totaltax(totalTaxVO); if (ObjectUtils.isEmpty(totaltax)) { @@ -2139,7 +2142,13 @@ key2 = key; } ExcelUtil<ServiceFunddetailExcel> util = new ExcelUtil<ServiceFunddetailExcel>(ServiceFunddetailExcel.class); - return AjaxResult.success(util.exportExcel(totaltax.get(key2), key2)); + AjaxResult ajaxResult = util.exportExcel(totaltax.get(key2), key2); + String msg = (String) ajaxResult.get("msg"); + + Map dataMap = new HashMap(); + dataMap.put("downloadUrl", "/profile/download/" + msg); + + return AjaxResult.success(dataMap); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java index 8e0fec5..dccd9ee 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFunddetailController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -13,6 +14,7 @@ import com.ruoyi.project.service.IServiceFunddetailService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -25,6 +27,7 @@ * @author ruoyi * @date 2022-01-25 */ +@Slf4j @Api("璐圭敤鐢宠鏄庣粏") @RestController @RequestMapping("/project/funddetail") @@ -76,7 +79,7 @@ //@PreAuthorize("@ss.hasPermi('project:funddetail:add')") @Log(title = "璐圭敤鐢宠鏄庣粏", businessType = BusinessType.INSERT) @PostMapping - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult add(@RequestBody ServiceFunddetail serviceFunddetail) { return toAjax(serviceFunddetailService.save(serviceFunddetail)); } @@ -88,8 +91,9 @@ //@PreAuthorize("@ss.hasPermi('project:funddetail:edit')") @Log(title = "璐圭敤鐢宠鏄庣粏", businessType = BusinessType.UPDATE) @PostMapping("/edit") - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult edit(@RequestBody ServiceFunddetail serviceFunddetail) { + log.info("淇敼鐨勬暟鎹俊鎭細{}", serviceFunddetail); return toAjax(serviceFunddetailService.updateById(serviceFunddetail)); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMedicalevaluationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMedicalevaluationController.java index ff622ef..9f8b375 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMedicalevaluationController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMedicalevaluationController.java @@ -3,6 +3,7 @@ import java.util.Arrays; import java.util.List; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.project.domain.vo.MedicalEvaluationVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -90,7 +91,7 @@ //@PreAuthorize("@ss.hasPermi('project:medicalevaluation:add')") @Log(title = "鍖诲璇勪及", businessType = BusinessType.INSERT) @PostMapping - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult add(@RequestBody ServiceMedicalevaluation serviceMedicalevaluation) { return toAjax(serviceMedicalevaluationService.save(serviceMedicalevaluation)); } @@ -102,7 +103,7 @@ //@PreAuthorize("@ss.hasPermi('project:medicalevaluation:edit')") @Log(title = "鍖诲璇勪及", businessType = BusinessType.UPDATE) @PostMapping("/edit") - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult edit(@RequestBody ServiceMedicalevaluation serviceMedicalevaluation) { List<ServiceMedicalevaluation> list = serviceMedicalevaluationService.queryList(serviceMedicalevaluation); if (CollectionUtils.isEmpty(list)) { diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceOrganallocationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceOrganallocationController.java index bac82e9..24d25be 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceOrganallocationController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceOrganallocationController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; @@ -75,7 +76,7 @@ //@PreAuthorize("@ss.hasPermi('project:organallocation:add')") @Log(title = "鍣ㄥ畼鍒嗛厤", businessType = BusinessType.INSERT) @PostMapping - @RepeatSubmit + @NotRepeatCommit(key = "param:arg[1]", value = 30000) public AjaxResult add(@RequestBody ServiceOrganallocation serviceOrganallocation) { return toAjax(serviceOrganallocationService.save(serviceOrganallocation)); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java index 89a96cb..9d64cfc 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java @@ -1,6 +1,7 @@ package com.ruoyi.web.controller.project; import com.ruoyi.common.annotation.Log; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.constant.HttpStatus; @@ -220,7 +221,7 @@ //@PreAuthorize("@ss.hasPermi('project:reimbursement:add')") @Log(title = "鎶ラ攢鐢宠", businessType = BusinessType.INSERT) @PostMapping - @RepeatSubmit + @RepeatSubmit @Options(useGeneratedKeys = true, keyProperty = "id") public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) { if (!Objects.isNull(serviceReimbursement)) { diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/NotRepeatCommit.java b/ruoyi-common/src/main/java/com/ruoyi/common/annotation/NotRepeatCommit.java new file mode 100644 index 0000000..7d0a48e --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/annotation/NotRepeatCommit.java @@ -0,0 +1,17 @@ +package com.ruoyi.common.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 褰撳墠鏁版嵁锛屾槸鍚﹂噸澶嶆彁浜� + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface NotRepeatCommit { + String key() default "not_repeat_commit:"; + + long value() default 10000; +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/config/IsAspectAspect.java b/ruoyi-common/src/main/java/com/ruoyi/common/config/IsAspectAspect.java new file mode 100644 index 0000000..a98f658 --- /dev/null +++ b/ruoyi-common/src/main/java/com/ruoyi/common/config/IsAspectAspect.java @@ -0,0 +1,55 @@ +package com.ruoyi.common.config; + +import com.ruoyi.common.annotation.NotRepeatCommit; +import com.ruoyi.common.filter.RepeatedlyRequestWrapper; +import com.ruoyi.common.utils.http.HttpHelper; +import org.apache.logging.log4j.util.Strings; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Component; + +import javax.servlet.http.HttpServletRequest; +import java.util.concurrent.TimeUnit; + +@Aspect +@Component +public class IsAspectAspect { + @Autowired + private RedisTemplate redisTemplate; + + @Around("@annotation(notRepeat)") + public Object before(ProceedingJoinPoint point, NotRepeatCommit notRepeat) { + String nowParams = ""; + + String key = getKey(notRepeat.key(), point.getArgs()); + if (Strings.isNotBlank(key)) { + // 涓嶅瓨鍦� 灏辨坊鍔� 缂撳瓨 璁剧疆 鏃堕棿 + if (!redisTemplate.opsForValue().setIfAbsent(key, "1", notRepeat.value(), TimeUnit.MILLISECONDS)) { + throw new RuntimeException("璇峰嬁閲嶅鎻愪氦"); + } + } + + try { + return point.proceed(); + } catch (Throwable throwable) { + throw new RuntimeException("鏈嶅姟鍣ㄥ紓甯�"); + } + } + + /** + * key 鐢熸垚绛栫暐 + * + * @param key key琛ㄨ揪寮� + * @param args 鍙傛暟 + * @return 鐢熸垚鐨刱ey + */ + private String getKey(String key, Object[] args) { + for (int i = 0; i < args.length; i++) { + key = key.replace("arg[" + i + "]", args[i].toString()); + } + return key; + } +} diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java index 846a0a0..2389e95 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java @@ -5,6 +5,7 @@ import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.spring.SpringUtils; +import lombok.extern.slf4j.Slf4j; import java.math.BigDecimal; import java.text.DecimalFormat; @@ -16,6 +17,7 @@ * * @author ls */ +@Slf4j public class TaxtUtils { /** * 鍒嗛殧绗� @@ -67,35 +69,39 @@ public static String getTaxationBefore(BigDecimal money) { //褰揦<=800鏃讹紝涓◣T=0 BigDecimal taxMoney = new BigDecimal(0.0); + if (money.doubleValue() <= 800) { + taxMoney = money; + } //绗竴涓弬鏁版槸闄ゆ暟锛岀浜屼釜鍙傛暟浠h〃淇濈暀鍑犱綅灏忔暟锛岀涓変釜浠h〃鐨勬槸浣跨敤鐨勬ā寮� if (money.doubleValue() > 800 && money.doubleValue() <= 3360) { - taxMoney = money.subtract(new BigDecimal(160)).divide(new BigDecimal(0.8),2,BigDecimal.ROUND_UP); + taxMoney = money.subtract(new BigDecimal(160)).divide(new BigDecimal(0.8), 2, BigDecimal.ROUND_UP); } if (money.doubleValue() > 3360 && money.doubleValue() <= 21000) { - taxMoney = money.divide(new BigDecimal(0.84),2,BigDecimal.ROUND_DOWN); + taxMoney = money.divide(new BigDecimal(0.84), 2, BigDecimal.ROUND_DOWN); } if (money.doubleValue() > 21000 && money.doubleValue() <= 40000) { money = money.subtract(new BigDecimal(2000)); - taxMoney = money.divide(new BigDecimal(0.76),2,BigDecimal.ROUND_DOWN); + taxMoney = money.divide(new BigDecimal(0.76), 2, BigDecimal.ROUND_DOWN); } if (money.doubleValue() > 40000) { money = money.subtract(new BigDecimal(7000)); - taxMoney = money.divide(new BigDecimal(0.68),2,BigDecimal.ROUND_DOWN); + taxMoney = money.divide(new BigDecimal(0.68), 2, BigDecimal.ROUND_DOWN); } DecimalFormat decimalFormat = new DecimalFormat("#.00"); String format = decimalFormat.format(taxMoney); + log.info("绋庡墠閲戦涓猴細{}", format); return format; } public static void main(String[] args) { - String taxation = getTaxation(new BigDecimal(21000)); - String taxationBefore = getTaxationBefore(new BigDecimal(52000)); + String taxation = getTaxation(new BigDecimal(400)); + String taxationBefore = getTaxationBefore(new BigDecimal(400)); System.out.println(taxation + " " + taxationBefore); diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ChineseUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ChineseUtils.java index e978d6c..cd1b79e 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ChineseUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ChineseUtils.java @@ -9,7 +9,18 @@ * @return */ public static boolean isChinese(String str) { - String regex = "[\\u4e00-\\u9fa5]+"; - return str.matches(regex); + for (int i = 0; i < str.length(); i++) { + char c = str.charAt(i); + if (isChineseCharacter(c)) { + return true; + } + } + return false; } + + private static boolean isChineseCharacter(char c) { + // 姹夊瓧鐨刄nicode缂栫爜鑼冨洿鏄�0x4E00鍒�0x9FA5 + return c >= 0x4E00 && c <= 0x9FA5; + } + } diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java index e7a2428..adef112 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java @@ -347,5 +347,13 @@ @ApiModelProperty("鏄惁绠楃◣锛�0鏈畻绋庯紝1宸茬畻绋�") private Integer istax; + + /** + * 璁$畻绋庤垂鏃堕棿 + */ + @ApiModelProperty("璁$畻绋庤垂鏃堕棿") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date fundtaxtime; + } 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 76c4855..83f25d9 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 @@ -11,6 +11,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.utils.ChineseUtils; @@ -138,8 +139,17 @@ } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public Boolean addFundSharedInfo(Long id) { + log.info("fund琛ㄧ殑id锛歿}", id); + //鍒ゆ柇涓�涓嬶紝share琛ㄦ槸鍚﹀凡缁忓瓨鍦ㄤ簡 + Map<String, Object> map = new HashMap<>(); + map.put("serfunid", id); + List<ServiceFundShared> serviceFundSharedList = serviceFundSharedMapper.selectByMap(map); + if (!CollectionUtils.isEmpty(serviceFundSharedList)) { + return true; + } + ServiceFund serviceFund = serviceFundMapper.selectById(id); ServiceFundShared serviceFundShared = DtoConversionUtils.sourceToTarget(serviceFund, ServiceFundShared.class); serviceFundShared.setSerfunid(serviceFundShared.getId()); @@ -669,7 +679,6 @@ @Override public int countItem(Long infoid, Long itemid) { List<ServiceFund> serviceFunds = serviceFundMapper.getInfoByInfoId(infoid); - int count = 0; for (ServiceFund s : serviceFunds) { long fundid = s.getId(); diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java index 122dc77..079fc2e 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFunddetailServiceImpl.java @@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.tax.PerformanceTaxtUtils; import com.ruoyi.common.tax.TaxtUtils; import com.ruoyi.common.utils.bean.DtoConversionUtils; @@ -16,6 +17,7 @@ import com.ruoyi.project.domain.vo.*; import com.ruoyi.project.mapper.ServiceFundMapper; import lombok.extern.flogger.Flogger; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,6 +37,7 @@ * @author ruoyi * @date 2022-01-25 */ +@Slf4j @Service public class ServiceFunddetailServiceImpl extends ServiceImpl<ServiceFunddetailMapper, ServiceFunddetail> implements IServiceFunddetailService { protected final Logger logger = LoggerFactory.getLogger(this.getClass()); @@ -260,6 +263,15 @@ @Override @Transactional(rollbackFor = Exception.class) public Boolean calculateTax(List<ServiceFunddetail> serviceFunddetails) { + if (CollectionUtils.isEmpty(serviceFunddetails)) { + throw new BaseException("绠楃◣鏉′欢涓虹┖锛岃妫�鏌ュ悗锛屽啀杩涜璁$畻"); + } + //杩欎釜鏄负浜嗚幏鍙杅und_tax_time + Long fundid = serviceFunddetails.get(0).getFundid(); + log.info("绠楃◣鐨刦undid鐨勫�间负锛歿}", fundid); + ServiceFund serviceFund1 = serviceFundMapper.selectById(fundid); + log.info("fund琛ㄧ殑fundtextime鍊间负锛歿}", serviceFund1.getFundtaxtime()); + //鐢ㄤ簬涓存椂淇濆瓨宸茬粡绠楀ソ鐨�"璐圭敤璇︽儏鏁版嵁" List<ServiceFunddetail> temporarySave = new ArrayList<>(); @@ -283,15 +295,16 @@ //鑾峰彇褰撴湀鐨勭涓�澶� Date firstDay = Date.from(LocalDate.now().with(TemporalAdjusters.firstDayOfMonth()).atStartOfDay(ZoneId.systemDefault()).toInstant()); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String firstDatStr = dateFormat.format(firstDay); +// SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); +// String firstDatStr = dateFormat.format(firstDay); TaxMoneyByItemEO taxMoneyVO = new TaxMoneyByItemEO(); - - taxMoneyVO.setTaxTime(new Date()); + if (serviceFund1.getFundtaxtime() != null) { + taxMoneyVO.setTaxTime(serviceFund1.getFundtaxtime()); + } else { + taxMoneyVO.setTaxTime(new Date()); + } taxMoneyVO.setFirstDay(firstDay); -// taxMoneyVO.setApplyType(Long.valueOf(serviceFunddetail.getApplytype())); taxMoneyVO.setFundID(serviceFunddetail.getFundid()); -// taxMoneyVO.setBeneficiaryNo(serviceFunddetail.getBeneficiaryno()); taxMoneyVO.setIDCard(serviceFunddetail.getIdcardno()); //鏌ュ嚭绋庡墠銆佺◣銆佺◣鍚庣殑鎬婚锛堜笉鍖呭惈鏈锛� TaxMoneySumEO taxSum = serviceFunddetailMapper.getTaxSum(taxMoneyVO); @@ -338,7 +351,11 @@ ServiceFunddetail serviceFunddetail3 = DtoConversionUtils.sourceToTarget(serviceFunddetail, ServiceFunddetail.class); serviceFunddetail3.setTaxamount(taxAmountNow.doubleValue()); serviceFunddetail3.setTaxedamount(texdAfterNow.doubleValue()); - serviceFunddetail3.setTaxTime(new Date()); + if (ObjectUtils.isEmpty(serviceFund1.getFundtaxtime())) { + serviceFunddetail3.setTaxTime(new Date()); + } else { + serviceFunddetail3.setTaxTime(serviceFund1.getFundtaxtime()); + } logger.info("鎵撳嵃绋庡墠serviceFunddetail3鏁版嵁 :{}", serviceFunddetail3); // 灏嗚鏉℃暟鎹洿鏂� @@ -365,7 +382,11 @@ ServiceFunddetail serviceFunddetail3 = DtoConversionUtils.sourceToTarget(serviceFunddetail, ServiceFunddetail.class); serviceFunddetail3.setAmount(amountNow.doubleValue()); serviceFunddetail3.setTaxamount(tax.doubleValue()); - serviceFunddetail3.setTaxTime(new Date()); + if (ObjectUtils.isEmpty(serviceFund1.getFundtaxtime())) { + serviceFunddetail3.setTaxTime(new Date()); + } else { + serviceFunddetail3.setTaxTime(serviceFund1.getFundtaxtime()); + } logger.info("鎵撳嵃serviceFunddetail3:{}", serviceFunddetail3); // 灏嗚鏉℃暟鎹洿鏂� updateById(serviceFunddetail3); @@ -377,6 +398,9 @@ ServiceFund serviceFund = new ServiceFund(); serviceFund.setPretaxcost(pretaxcost.doubleValue()); serviceFund.setId(serviceFunddetails.get(0).getFundid()); + if (ObjectUtils.isEmpty(serviceFund1.getFundtaxtime())) { + serviceFund.setFundtaxtime(new Date()); + } // 1 宸茬畻绋� serviceFund.setIstax(1); serviceFundMapper.updateById(serviceFund); diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMedicalevaluationServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMedicalevaluationServiceImpl.java index 2397c4e..b91ddef 100644 --- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMedicalevaluationServiceImpl.java +++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMedicalevaluationServiceImpl.java @@ -7,13 +7,16 @@ import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.project.domain.vo.MedicalEvaluationVO; +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; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + import java.util.ArrayList; import java.util.Map; + import com.ruoyi.common.utils.StringUtils; import com.ruoyi.project.mapper.ServiceMedicalevaluationMapper; import com.ruoyi.project.domain.ServiceMedicalevaluation; @@ -21,13 +24,13 @@ /** * 鍖诲璇勪及Service涓氬姟灞傚鐞� - * + * * @author ruoyi * @date 2021-11-19 */ +@Slf4j @Service -public class ServiceMedicalevaluationServiceImpl extends ServiceImpl<ServiceMedicalevaluationMapper, ServiceMedicalevaluation> implements IServiceMedicalevaluationService -{ +public class ServiceMedicalevaluationServiceImpl extends ServiceImpl<ServiceMedicalevaluationMapper, ServiceMedicalevaluation> implements IServiceMedicalevaluationService { @Autowired ServiceMedicalevaluationMapper serviceMedicalevaluationMapper; @@ -35,21 +38,21 @@ /** * 鏌ヨ鍖诲璇勪及鍒楄〃 - * + * * @param serviceMedicalevaluation 鍖诲璇勪及 * @return 鍖诲璇勪及 */ @Override public List<ServiceMedicalevaluation> queryList(ServiceMedicalevaluation serviceMedicalevaluation) { LambdaQueryWrapper<ServiceMedicalevaluation> wrappers = Wrappers.lambdaQuery(); - if (StringUtils.isNotNull(serviceMedicalevaluation.getId())){ - wrappers.eq(ServiceMedicalevaluation::getId ,serviceMedicalevaluation.getId()); + if (StringUtils.isNotNull(serviceMedicalevaluation.getId())) { + wrappers.eq(ServiceMedicalevaluation::getId, serviceMedicalevaluation.getId()); } - if (StringUtils.isNotNull(serviceMedicalevaluation.getInfoid())){ - wrappers.eq(ServiceMedicalevaluation::getInfoid ,serviceMedicalevaluation.getInfoid()); + if (StringUtils.isNotNull(serviceMedicalevaluation.getInfoid())) { + wrappers.eq(ServiceMedicalevaluation::getInfoid, serviceMedicalevaluation.getInfoid()); } - if (StringUtils.isNotBlank(serviceMedicalevaluation.getDonorno())){ - wrappers.eq(ServiceMedicalevaluation::getDonorno ,serviceMedicalevaluation.getDonorno()); + if (StringUtils.isNotBlank(serviceMedicalevaluation.getDonorno())) { + wrappers.eq(ServiceMedicalevaluation::getDonorno, serviceMedicalevaluation.getDonorno()); } return this.list(wrappers); } @@ -58,17 +61,18 @@ public List<MedicalEvaluationVO> selectVOList(MedicalEvaluationVO medicalEvaluationVO) { SysUser user = SecurityUtils.getLoginUser().getUser(); - List <SysRole> l = user.getRoles(); + log.info("鐢ㄦ埛鐨勮鑹叉槸锛歿}", user); + List<SysRole> l = user.getRoles(); Boolean b = false; - for(SysRole r : l){ - if(r.getRoleId().longValue() == 3){ + for (SysRole r : l) { + if (r.getRoleId().longValue() == 3) { b = true; } } - if(b){ + if (b) { medicalEvaluationVO.setBasecreateby(user.getUserName()); } - + log.info("selectVOList鐨勫叆鍙傛槸锛歿}", medicalEvaluationVO); return serviceMedicalevaluationMapper.selectVOList(medicalEvaluationVO); } 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 d0be9a1..72c9c02 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 @@ -153,6 +153,16 @@ @Transactional public Boolean addSharedData(Long id) { log.info("addSharedData鏂规硶鐨勫叆鍙俰d :{}", id); + //鍏堝垽鏂竴涓媠hare琛ㄦ槸鍚﹀凡缁忔彃鍏� + ServiceReimbursementShared reimbursementShared1 = new ServiceReimbursementShared(); + reimbursementShared1.setReimid(id); + reimbursementShared1.setDelFlag(0L); + List<ServiceReimbursementShared> serviceReimbursementShareds = sharedService.queryList(reimbursementShared1); + if (!CollectionUtils.isEmpty(serviceReimbursementShareds)) { + return true; + } + + //濡傛灉娌℃湁鎻掑叆锛屽垯璧颁笅闈㈢殑娴佺▼ ServiceReimbursement serviceReimbursement = serviceReimbursementMapper.selectById(id); Map<String, Object> columnMap = new HashMap<>(); columnMap.put("rbid", id); @@ -214,8 +224,8 @@ } @Override - public List<SpFinancialExpensesReimbursementOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT, Integer CHECKFLAG, Integer APPLYTYPE, Integer CHECKSTATUS,String donorname) { - return serviceReimbursementMapper.getListBypower(PAUSERNO, PAFUNDTYPE, PAAPPLICANT, PAAPPLICATIONBEGTIME, PAAPPLICATIONENDTIME, PADEPARTMENT, CHECKFLAG, APPLYTYPE, CHECKSTATUS,donorname); + public List<SpFinancialExpensesReimbursementOut> getListBypower(String PAUSERNO, Integer PAFUNDTYPE, String PAAPPLICANT, String PAAPPLICATIONBEGTIME, String PAAPPLICATIONENDTIME, String PADEPARTMENT, Integer CHECKFLAG, Integer APPLYTYPE, Integer CHECKSTATUS, String donorname) { + return serviceReimbursementMapper.getListBypower(PAUSERNO, PAFUNDTYPE, PAAPPLICANT, PAAPPLICATIONBEGTIME, PAAPPLICATIONENDTIME, PADEPARTMENT, CHECKFLAG, APPLYTYPE, CHECKSTATUS, donorname); } @Override diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml index 6f37717..03fbb1b 100644 --- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml +++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonationwitnessMapper.xml @@ -1,65 +1,106 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper -PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" -"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.project.mapper.ServiceDonationwitnessMapper"> - + <resultMap type="com.ruoyi.project.domain.ServiceDonationwitness" id="ServiceDonationwitnessResult"> - <result property="id" column="ID" /> - <result property="infoid" column="InfoID" /> - <result property="donorno" column="DonorNo" /> - <result property="gainhospitalno" column="GainHospitalNo" /> - <result property="gainhospitalname" column="GainHospitalName" /> - <result property="deathtime" column="DeathTime" /> - <result property="deathreason" column="DeathReason" /> - <result property="deathjudgedocto" column="DeathJudgeDoctO" /> - <result property="deathjudgedoctt" column="DeathJudgeDoctT" /> - <result property="deathjudgeannex" column="DeathJudgeAnnex" /> - <result property="operationbegtime" column="OperationBegTime" /> - <result property="operationendtime" column="OperationEndTime" /> - <result property="operationdoctor" column="OperationDoctor" /> - <result property="isspendremember" column="IsSpendRemember" /> - <result property="isrestoreremains" column="IsRestoreRemains" /> - <result property="rememberannex" column="RememberAnnex" /> - <result property="responsibleuserid" column="ResponsibleUserID" /> - <result property="responsibleusername" column="ResponsibleUserName" /> - <result property="coordinateduserido" column="CoordinatedUserIDO" /> - <result property="coordinatedusernameo" column="CoordinatedUserNameO" /> - <result property="coordinateduseridt" column="CoordinatedUserIDT" /> - <result property="coordinatedusernamet" column="CoordinatedUserNameT" /> - <result property="abdominalaortacannulatime" column="AbdominalAortaCannulaTime" /> - <result property="abdominalaortaperfusiontime" column="AbdominalAortaPerfusionTime" /> - <result property="portalveincannulatime" column="PortalVeinCannulaTime" /> - <result property="portalveinperfusiontime" column="PortalVeinPerfusionTime" /> - <result property="pulmonaryarterycannulatime" column="PulmonaryArteryCannulaTime" /> - <result property="pulmonaryarteryperfusiontime" column="PulmonaryArteryPerfusionTime" /> - <result property="aortacannulatime" column="AortaCannulaTime" /> - <result property="aortaperfusiontime" column="AortaPerfusionTime" /> - <result property="del_flag" column="del_flag" /> - <result property="createBy" column="create_by" /> - <result property="createTime" column="create_time" /> - <result property="updateBy" column="update_by" /> - <result property="updateTime" column="update_time" /> - <result property="organdonation" column="OrganDonation" /> - <result property="organdonationOther" column="OrganDonation_Other" /> - <result property="donationcategory" column="DonationCategory" /> + <result property="id" column="ID"/> + <result property="infoid" column="InfoID"/> + <result property="donorno" column="DonorNo"/> + <result property="gainhospitalno" column="GainHospitalNo"/> + <result property="gainhospitalname" column="GainHospitalName"/> + <result property="deathtime" column="DeathTime"/> + <result property="deathreason" column="DeathReason"/> + <result property="deathjudgedocto" column="DeathJudgeDoctO"/> + <result property="deathjudgedoctt" column="DeathJudgeDoctT"/> + <result property="deathjudgeannex" column="DeathJudgeAnnex"/> + <result property="operationbegtime" column="OperationBegTime"/> + <result property="operationendtime" column="OperationEndTime"/> + <result property="operationdoctor" column="OperationDoctor"/> + <result property="isspendremember" column="IsSpendRemember"/> + <result property="isrestoreremains" column="IsRestoreRemains"/> + <result property="rememberannex" column="RememberAnnex"/> + <result property="responsibleuserid" column="ResponsibleUserID"/> + <result property="responsibleusername" column="ResponsibleUserName"/> + <result property="coordinateduserido" column="CoordinatedUserIDO"/> + <result property="coordinatedusernameo" column="CoordinatedUserNameO"/> + <result property="coordinateduseridt" column="CoordinatedUserIDT"/> + <result property="coordinatedusernamet" column="CoordinatedUserNameT"/> + <result property="abdominalaortacannulatime" column="AbdominalAortaCannulaTime"/> + <result property="abdominalaortaperfusiontime" column="AbdominalAortaPerfusionTime"/> + <result property="portalveincannulatime" column="PortalVeinCannulaTime"/> + <result property="portalveinperfusiontime" column="PortalVeinPerfusionTime"/> + <result property="pulmonaryarterycannulatime" column="PulmonaryArteryCannulaTime"/> + <result property="pulmonaryarteryperfusiontime" column="PulmonaryArteryPerfusionTime"/> + <result property="aortacannulatime" column="AortaCannulaTime"/> + <result property="aortaperfusiontime" column="AortaPerfusionTime"/> + <result property="del_flag" column="del_flag"/> + <result property="createBy" column="create_by"/> + <result property="createTime" column="create_time"/> + <result property="updateBy" column="update_by"/> + <result property="updateTime" column="update_time"/> + <result property="organdonation" column="OrganDonation"/> + <result property="organdonationOther" column="OrganDonation_Other"/> + <result property="donationcategory" column="DonationCategory"/> </resultMap> <sql id="selectServiceDonationwitnessVo"> - select ID, InfoID, DonorNo, GainHospitalNo, GainHospitalName, DeathTime, DeathReason, DeathJudgeDoctO, DeathJudgeDoctT, DeathJudgeAnnex, OperationBegTime, OperationEndTime, OperationDoctor, IsSpendRemember, IsRestoreRemains, RememberAnnex, ResponsibleUserID, ResponsibleUserName, CoordinatedUserIDO, CoordinatedUserNameO, CoordinatedUserIDT, CoordinatedUserNameT, AbdominalAortaCannulaTime, AbdominalAortaPerfusionTime, PortalVeinCannulaTime, PortalVeinPerfusionTime, PulmonaryArteryCannulaTime, PulmonaryArteryPerfusionTime, AortaCannulaTime, AortaPerfusionTime, del_flag, create_by, create_time, update_by, update_time, OrganDonation, OrganDonation_Other, DonationCategory from service_donationwitness + select ID, + InfoID, + DonorNo, + GainHospitalNo, + GainHospitalName, + DeathTime, + DeathReason, + DeathJudgeDoctO, + DeathJudgeDoctT, + DeathJudgeAnnex, + OperationBegTime, + OperationEndTime, + OperationDoctor, + IsSpendRemember, + IsRestoreRemains, + RememberAnnex, + ResponsibleUserID, + ResponsibleUserName, + CoordinatedUserIDO, + CoordinatedUserNameO, + CoordinatedUserIDT, + CoordinatedUserNameT, + AbdominalAortaCannulaTime, + AbdominalAortaPerfusionTime, + PortalVeinCannulaTime, + PortalVeinPerfusionTime, + PulmonaryArteryCannulaTime, + PulmonaryArteryPerfusionTime, + AortaCannulaTime, + AortaPerfusionTime, + del_flag, + create_by, + create_time, + update_by, + update_time, + OrganDonation, + OrganDonation_Other, + DonationCategory + from service_donationwitness </sql> - <select id="selectServiceDonationwitnessList" parameterType="com.ruoyi.project.domain.ServiceDonationwitness" resultMap="ServiceDonationwitnessResult"> + <select id="selectServiceDonationwitnessList" parameterType="com.ruoyi.project.domain.ServiceDonationwitness" + resultMap="ServiceDonationwitnessResult"> <include refid="selectServiceDonationwitnessVo"/> <where> - <if test="donorno != null and donorno != ''"> and DonorNo = #{donorno}</if> - <if test="gainhospitalname != null and gainhospitalname != ''"> and GainHospitalName like concat('%', #{gainhospitalname}, '%')</if> - <if test="operationdoctor != null and operationdoctor != ''"> and OperationDoctor = #{operationdoctor}</if> + <if test="donorno != null and donorno != ''">and DonorNo = #{donorno}</if> + <if test="gainhospitalname != null and gainhospitalname != ''">and GainHospitalName like concat('%', + #{gainhospitalname}, '%') + </if> + <if test="operationdoctor != null and operationdoctor != ''">and OperationDoctor = #{operationdoctor}</if> </where> </select> <select id="selectVOList" resultType="com.ruoyi.project.domain.vo.DonationWitnessVO"> - SELECT + SELECT `service_donatebaseinfo`.`ID` AS `ID`, `service_donatebaseinfo`.`DonorNo` AS `DonorNo`, `service_donatebaseinfo`.`DonationCategory` AS `DonationCategory`, @@ -116,25 +157,34 @@ `service_donationwitness`.`create_time` AS `createtime`, `service_donationwitness`.`update_by` AS `updateby`, `service_donationwitness`.`update_time` AS `updatetime` - FROM + FROM - `service_donatebaseinfo` - LEFT JOIN `service_donationwitness` ON - `service_donatebaseinfo`.`ID` = `service_donationwitness`.`InfoID` - LEFT JOIN `base_organization` ON - `base_organization`.`OrganizationID` = `service_donatebaseinfo`.`TreatmentHospitalNo` + `service_donatebaseinfo` + LEFT JOIN `service_donationwitness` ON + `service_donatebaseinfo`.`ID` = `service_donationwitness`.`InfoID` + LEFT JOIN `base_organization` ON + `base_organization`.`OrganizationID` = `service_donatebaseinfo`.`TreatmentHospitalNo` <where> - <if test="donorno != null and donorno != ''"> and `service_donatebaseinfo`.`DonorNo` = #{donorno}</if> - <if test="name != null and name != ''"> and `service_donatebaseinfo`.`Name` like concat('%', #{name}, '%')</if> - <if test="idcardno != null and idcardno != ''"> and `service_donatebaseinfo`.`IDCardNo` = #{idcardno}</if> - <if test="treatmenthospitalno != null and treatmenthospitalno != ''"> and `service_donatebaseinfo`.`TreatmentHospitalNo` = #{treatmenthospitalno}</if> - <if test="recordstate != null and recordstate != ''"> and `service_donatebaseinfo`.`RecordState` = #{recordstate}</if> - <if test="basecreateby != null and basecreateby != ''"> and `service_donatebaseinfo`.`create_by` = #{basecreateby}</if> - <if test="starttime != null "> and `service_donationwitness`.OperationBegTime >= #{starttime} </if> - <if test="endtime != null "> and `service_donationwitness`.OperationBegTime <= #{endtime}</if> - <if test="reporterno != null and reporterno != ''"> and `service_donatebaseinfo`.ReporterNo = #{reporterno}</if> - <if test="city != null and city != ''"> and `base_organization`.`City` = #{city}</if> + <if test="donorno != null and donorno != ''">and `service_donatebaseinfo`.`DonorNo` = #{donorno}</if> + <if test="name != null and name != ''">and `service_donatebaseinfo`.`Name` like concat('%', #{name}, '%') + </if> + <if test="idcardno != null and idcardno != ''">and `service_donatebaseinfo`.`IDCardNo` = #{idcardno}</if> + <if test="treatmenthospitalno != null and treatmenthospitalno != ''">and + `service_donatebaseinfo`.`TreatmentHospitalNo` = #{treatmenthospitalno} + </if> + <if test="recordstate != null and recordstate != ''">and `service_donatebaseinfo`.`RecordState` = + #{recordstate} + </if> + <if test="basecreateby != null and basecreateby != ''">and `service_donatebaseinfo`.`create_by` = + #{basecreateby} + </if> + <if test="starttime != null ">and `service_donationwitness`.OperationBegTime >= #{starttime}</if> + <if test="endtime != null ">and `service_donationwitness`.OperationBegTime <= #{endtime}</if> + <if test="reporterno != null and reporterno != ''">and `service_donatebaseinfo`.ReporterNo = + #{reporterno} + </if> + <if test="city != null and city != ''">and `base_organization`.`City` = #{city}</if> </where> order by `service_donationwitness`.`create_time` desc @@ -145,20 +195,20 @@ inner join service_donatebaseinfo b on w.InfoID = b.id inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID where w.DonationCategory = "DBD" - <if test="starttime != null "> and w.OperationBegTime >= #{starttime} </if> - <if test="endtime != null "> and w.OperationBegTime <= #{endtime}</if> - <if test="city != null and city != ''"> and o.City = #{city} </if> - <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if> + <if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if> + <if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if> + <if test="city != null and city != ''">and o.City = #{city}</if> + <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if> </select> <select id="getDCDDonaterNumberThisYear" resultType="java.lang.Integer"> select count(*) from service_donationwitness w inner join service_donatebaseinfo b on w.InfoID = b.id inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID where w.DonationCategory = "DCD" - <if test="starttime != null "> and w.OperationBegTime >= #{starttime} </if> - <if test="endtime != null "> and w.OperationBegTime <= #{endtime}</if> - <if test="city != null and city != ''"> and o.City = #{city} </if> - <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if> + <if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if> + <if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if> + <if test="city != null and city != ''">and o.City = #{city}</if> + <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if> </select> <select id="getDBCDDonaterNumberThisYear" resultType="java.lang.Integer"> @@ -166,22 +216,26 @@ inner join service_donatebaseinfo b on w.InfoID = b.id inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID where w.DonationCategory = "DBCD" - <if test="starttime != null "> and w.OperationBegTime >= #{starttime} </if> - <if test="endtime != null "> and w.OperationBegTime <= #{endtime}</if> - <if test="city != null and city != ''"> and o.City = #{city} </if> - <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if> + <if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if> + <if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if> + <if test="city != null and city != ''">and o.City = #{city}</if> + <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if> </select> <select id="getDonationCategoryByInfoId" resultType="java.lang.String"> - select DonationCategory from service_donationwitness - where InfoID = #{infoId} and del_flag = 0 + select DonationCategory + from service_donationwitness + where InfoID = #{infoId} + and del_flag = 0 </select> <select id="countNumber" resultType="java.lang.Integer"> - select count(*) from service_donationwitness - where OperationBegTime >= #{starttime} and OperationBegTime <= #{endtime} + select count(*) + from service_donationwitness + where OperationBegTime >= #{starttime} + and OperationBegTime <= #{endtime} </select> <select id="selectByInfoId" resultType="com.ruoyi.project.domain.ServiceDonationwitness"> <include refid="selectServiceDonationwitnessVo"/> - where InfoID = #{infoid} + where InfoID = #{infoid} and del_flag!=1 </select> <select id="getAllDonatePeople" resultType="com.ruoyi.project.domain.ServiceDonationwitness"> <include refid="selectServiceDonationwitnessVo"/> @@ -191,10 +245,10 @@ inner join service_donatebaseinfo b on w.InfoID = b.id inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID <where> - <if test="starttime != null "> and w.OperationBegTime >= #{starttime} </if> - <if test="endtime != null "> and w.OperationBegTime <= #{endtime}</if> - <if test="city != null and city != ''"> and o.City = #{city} </if> - <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if> + <if test="starttime != null ">and w.OperationBegTime >= #{starttime}</if> + <if test="endtime != null ">and w.OperationBegTime <= #{endtime}</if> + <if test="city != null and city != ''">and o.City = #{city}</if> + <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if> </where> </select> <select id="getWitnessList" resultType="com.ruoyi.project.domain.ServiceDonationwitness"> diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml index 3dc5bd9..4156250 100644 --- a/ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml +++ b/ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml @@ -58,6 +58,7 @@ <result property="checkstatus" column="checkstatus"/> <result property="performancetype" column="performancetype"/> <result property="istax" column="istax"/> + <result property="fundtaxtime" column="fundtaxtime"/> </resultMap> @@ -115,7 +116,8 @@ bh, checkstatus, performancetype, - istax + istax, + fundtaxtime from service_fund </sql> diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceFunddetailMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceFunddetailMapper.xml index c7bbbb4..3ff8a43 100644 --- a/ruoyi-project/src/main/resources/mapper/project/ServiceFunddetailMapper.xml +++ b/ruoyi-project/src/main/resources/mapper/project/ServiceFunddetailMapper.xml @@ -263,13 +263,18 @@ <select id="getTaxSum" parameterType="com.ruoyi.project.domain.vo.TaxMoneyByItemEO" resultType="com.ruoyi.project.domain.vo.TaxMoneySumEO"> - SELECT sum(Amount) amounts, sum(TaxAmount) taxAmounts, sum(TaxedAmount) taxedAmounts - FROM service_funddetail - where fundID < #{fundID} - and tax_time < #{taxTime} - and tax_time >= #{firstDay} - and IDCardNo = #{IDCard} - and ApplyType in (1, 2) + SELECT sum(a.Amount) amounts, sum(a.TaxAmount) taxAmounts, sum(a.TaxedAmount) taxedAmounts + FROM service_funddetail a,service_fund b + where a.FundID = b.id + and a.tax_time < #{taxTime} + and a.tax_time >= #{firstDay} + and a.IDCardNo = #{IDCard} + and a.del_flag != 1 + and b.id != #{fundID} + and b.fundtaxtime < #{taxTime} + and b.fundtaxtime >= #{firstDay} + and b.del_flag != 1 + and b.ApplyType in (1, 2) </select> <select id="totlaTax" resultType="com.ruoyi.project.domain.ServiceFunddetail"> -- Gitblit v1.9.3