Ver código fonte

内控相关

liuyc 2 anos atrás
pai
commit
91025f376d

+ 2 - 0
blade-service/blade-control/src/main/java/org/springblade/ControlApplication.java

@@ -5,6 +5,7 @@ import org.springblade.core.cloud.feign.EnableBladeFeign;
 import org.springblade.core.launch.BladeApplication;
 import org.springframework.cloud.client.SpringCloudApplication;
 import org.springframework.scheduling.annotation.EnableAsync;
+import org.springframework.scheduling.annotation.EnableScheduling;
 
 
 /**
@@ -13,6 +14,7 @@ import org.springframework.scheduling.annotation.EnableAsync;
 @EnableAsync
 @EnableBladeFeign
 @SpringCloudApplication
+@EnableScheduling
 public class ControlApplication {
 
     public static void main(String[] args) {

+ 1 - 1
blade-service/blade-control/src/main/java/org/springblade/control/controller/ExpenseManagerController.java

@@ -284,7 +284,7 @@ public class ExpenseManagerController extends BladeController {
 
     @GetMapping("/invoice/upload")
     @ApiOperationSupport(order = 37)
-    @ApiOperation(value = "发票pdf上传", notes = "传入发票申请信息id、文件file")
+    @ApiOperation(value = "发票pdf上传", notes = "传入发票申请信息id、文件pdfUrl")
     public R<Object> invoiceUpload(@RequestParam Long id, @RequestParam String pdfUrl) {
         return R.status(invoiceService.invoiceUpload(id, pdfUrl));
     }

+ 8 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/EMFinancialReimbursementServiceImpl.java

@@ -39,6 +39,7 @@ public class EMFinancialReimbursementServiceImpl extends BaseServiceImpl<ExMFina
     private final IUserClient iUserClient;
     private final JdbcTemplate jdbcTemplate;
     private final TaskProcessServiceImpl taskProcessService;
+    private final ProjectInfoServiceImpl projectInfoServiceImpl;
 
     @Override
     public IPage<EMFinancialReimbursementInfoVO> financialPage(IPage<EMFinancialReimbursementInfo> page, EMFinancialReimbursementInfoDTO dto) {
@@ -47,6 +48,7 @@ public class EMFinancialReimbursementServiceImpl extends BaseServiceImpl<ExMFina
         IPage<EMFinancialReimbursementInfo> pages = this.page(page, queryWrapper.lambda().orderBy(true, true, EMFinancialReimbursementInfo::getCreateTime));
         List<DictInfo> dictInfoList = jdbcTemplate.query("select dict_name,dict_value from c_dict_info where code = 'expense_fr_type'", new BeanPropertyRowMapper<>(DictInfo.class));
         Map<Long, String> userMap = iUserClient.selectUserAll().stream().collect(Collectors.toMap(User::getId, User::getRealName));
+        List<ControlProjectInfo> controlProjectInfos = projectInfoServiceImpl.getBaseMapper().selectList(Wrappers.<ControlProjectInfo>lambdaQuery().select(ControlProjectInfo::getId, ControlProjectInfo::getName));
         return pages.convert(reimbursementInfo -> {
             EMFinancialReimbursementInfoVO vo = new EMFinancialReimbursementInfoVO();
             BeanUtils.copyProperties(reimbursementInfo, vo);
@@ -60,7 +62,12 @@ public class EMFinancialReimbursementServiceImpl extends BaseServiceImpl<ExMFina
                     break;
                 }
             }
-            vo.setProjectName(""); //TODO
+            for (ControlProjectInfo projectInfo : controlProjectInfos) {
+                if (projectInfo.getId().equals(vo.getProjectId())) {
+                    vo.setProjectName(projectInfo.getName());
+                    break;
+                }
+            }
             return vo;
         });
     }

+ 8 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/EMInvoiceServiceImpl.java

@@ -38,6 +38,7 @@ public class EMInvoiceServiceImpl extends BaseServiceImpl<ExMInvoiceMapper, EMIn
     private final IUserClient iUserClient;
     private final JdbcTemplate jdbcTemplate;
     private final TaskProcessServiceImpl taskProcessService;
+    private final ProjectInfoServiceImpl projectInfoServiceImpl;
 
     @Override
     public IPage<EMInvoiceInfoVO> invoicePage(IPage<EMInvoiceInfo> page, EMInvoiceInfoDTO dto) {
@@ -46,6 +47,7 @@ public class EMInvoiceServiceImpl extends BaseServiceImpl<ExMInvoiceMapper, EMIn
         IPage<EMInvoiceInfo> pages = this.page(page, queryWrapper.lambda().orderBy(true, true, EMInvoiceInfo::getCreateTime));
         Map<Long, String> userMap = iUserClient.selectUserAll().stream().collect(Collectors.toMap(User::getId, User::getRealName));
         List<DictInfo> dictInfoList1 = jdbcTemplate.query("select dict_name,dict_value from c_dict_info where code = 'invoice_type'", new BeanPropertyRowMapper<>(DictInfo.class));
+        List<ControlProjectInfo> controlProjectInfos = projectInfoServiceImpl.getBaseMapper().selectList(Wrappers.<ControlProjectInfo>lambdaQuery().select(ControlProjectInfo::getId, ControlProjectInfo::getName));
         return pages.convert(obj -> {
             EMInvoiceInfoVO vo = new EMInvoiceInfoVO();
             BeanUtils.copyProperties(obj, vo);
@@ -60,8 +62,13 @@ public class EMInvoiceServiceImpl extends BaseServiceImpl<ExMInvoiceMapper, EMIn
             }
 
             vo.setInvoiceContentType(null); //发票内容字典type TODO
-            vo.setProjectName(""); //关联项目名 TODO
 
+            for (ControlProjectInfo projectInfo : controlProjectInfos) {
+                if (projectInfo.getId().equals(vo.getProjectId())) {
+                    vo.setProjectName(projectInfo.getName());
+                    break;
+                }
+            }
             return vo;
         });
     }

+ 9 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/EMOutsourcingPayServiceImpl.java

@@ -37,6 +37,7 @@ public class EMOutsourcingPayServiceImpl extends BaseServiceImpl<ExMOutsourcingP
     private final IUserClient iUserClient;
     private final JdbcTemplate jdbcTemplate;
     private final TaskProcessServiceImpl taskProcessService;
+    private final ProjectInfoServiceImpl projectInfoServiceImpl;
 
     @Override
     public IPage<EMOutsourcingPayInfoVO> outsourcingPage(IPage<EMOutsourcingPayInfo> page, EMOutsourcingPayInfoDTO dto) {
@@ -45,13 +46,13 @@ public class EMOutsourcingPayServiceImpl extends BaseServiceImpl<ExMOutsourcingP
         IPage<EMOutsourcingPayInfo> pages = this.page(page, queryWrapper.lambda().orderBy(true, true, EMOutsourcingPayInfo::getCreateTime));
         Map<Long, String> userMap = iUserClient.selectUserAll().stream().collect(Collectors.toMap(User::getId, User::getRealName));
         List<DictInfo> dictInfoList = jdbcTemplate.query("select dict_name,dict_value from c_dict_info where code = 'outsourcing_type'", new BeanPropertyRowMapper<>(DictInfo.class));
+        List<ControlProjectInfo> controlProjectInfos = projectInfoServiceImpl.getBaseMapper().selectList(Wrappers.<ControlProjectInfo>lambdaQuery().select(ControlProjectInfo::getId, ControlProjectInfo::getName));
         return pages.convert(obj -> {
             EMOutsourcingPayInfoVO vo = new EMOutsourcingPayInfoVO();
             BeanUtils.copyProperties(obj, vo);
             vo.setCreateName(userMap.get(vo.getCreateUser()));
             vo.setApprovalStatusName(vo.getStatus().equals(1) ? "待审批" : (vo.getStatus().equals(2) ? "已审批" : (vo.getStatus().equals(3) ? "已驳回" : "未上报")));
             vo.setApprovalResultName(vo.getApprovalStatusName().equals("已审批") || vo.getApprovalStatusName().equals("已驳回") ? "已通过" : "未通过");
-            vo.setProjectName(""); //TODO 项目名
 
             for (DictInfo dictInfo : dictInfoList) {
                 if (dictInfo.getDictValue().equals(vo.getOutsourcingType() + "")) {
@@ -60,6 +61,13 @@ public class EMOutsourcingPayServiceImpl extends BaseServiceImpl<ExMOutsourcingP
                 }
             }
 
+            for (ControlProjectInfo projectInfo : controlProjectInfos) {
+                if (projectInfo.getId().equals(vo.getProjectId())) {
+                    vo.setProjectName(projectInfo.getName());
+                    break;
+                }
+            }
+
             return vo;
         });
 

+ 40 - 0
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/PublicScheduledTaskServiceImpl.java

@@ -0,0 +1,40 @@
+package org.springblade.control.service.impl;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import lombok.AllArgsConstructor;
+import org.springblade.control.entity.*;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDate;
+
+@Service
+@AllArgsConstructor
+public class PublicScheduledTaskServiceImpl {
+
+    private final EMFinancialReimbursementServiceImpl emFinancialReimbursementService;
+    private final EMInvoiceServiceImpl emInvoiceService;
+    private final EMLoanServiceImpl emLoanService;
+    private final EMOutsourcingPayServiceImpl emOutsourcingPayService;
+    private final EMPayServiceImpl emPayService;
+    private final EMPurchaseServiceImpl emPurchaseService;
+    private final EMUseCarServiceImpl emUseCarService;
+
+    /**
+     * 定时删除费用管理的草稿数据信息
+     * cron = 三个月执行一次
+     */
+    @Scheduled(cron = "0 0 0 1 */3 ?")
+    void delDraftDataInfo() {
+        LocalDate currentDate = LocalDate.now(); //当前时间
+        LocalDate threeMonthsAgo = currentDate.minusMonths(3); //三个月前的时间
+        emFinancialReimbursementService.remove(Wrappers.<EMFinancialReimbursementInfo>lambdaQuery().eq(EMFinancialReimbursementInfo::getIsTemp, 0).le(EMFinancialReimbursementInfo::getCreateTime, threeMonthsAgo));
+        emInvoiceService.remove(Wrappers.<EMInvoiceInfo>lambdaQuery().eq(EMInvoiceInfo::getIsTemp, 0).le(EMInvoiceInfo::getCreateTime, threeMonthsAgo));
+        emLoanService.remove(Wrappers.<EMLoanInfo>lambdaQuery().eq(EMLoanInfo::getIsTemp, 0).le(EMLoanInfo::getCreateTime, threeMonthsAgo));
+        emOutsourcingPayService.remove(Wrappers.<EMOutsourcingPayInfo>lambdaQuery().eq(EMOutsourcingPayInfo::getIsTemp, 0).le(EMOutsourcingPayInfo::getCreateTime, threeMonthsAgo));
+        emPayService.remove(Wrappers.<EMPayInfo>lambdaQuery().eq(EMPayInfo::getIsTemp, 0).le(EMPayInfo::getCreateTime, threeMonthsAgo));
+        emPurchaseService.remove(Wrappers.<EMPurchaseInfo>lambdaQuery().eq(EMPurchaseInfo::getIsTemp, 0).le(EMPurchaseInfo::getCreateTime, threeMonthsAgo));
+        emUseCarService.remove(Wrappers.<EMUseCarInfo>lambdaQuery().eq(EMUseCarInfo::getIsTemp, 0).le(EMUseCarInfo::getCreateTime, threeMonthsAgo));
+    }
+
+}