From 2c456094bdf1cc7e1bab5e0dbee00bb1f2743488 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期一, 17 七月 2023 13:50:12 +0800 Subject: [PATCH] 1、审批顺序:审批时,从一级到五级逐级审批,回退时,由审批人员指定回退级别,如从五级审批退回到经办人(需要重新修改材料的人员处),每一级可以看到回退的信息;修改完成后,直接从经办人处到达五级审批或退回的审批人。被退回的信息修改完成后,直接从经办人到达五级审批或退回的审批人处,那么其他层级的审批人虽然不需要审批,但要能够看到重新修改后的信息。 说明: (1)差旅费报销主表:service_reimbursement 标识字段:FlowLevel(当前审核级别 处于哪个阶段 0:申请;1:一级审核;2:二级审核;3:三级审核等; 4:四级审核等; 5:五级审核等);RecordStatus(记录状态 详见字典sys_travelexpensestatus) (2)费用报销主表:service_fund 标识字段:FlowLevel(当前审核级别 处于哪个阶段 0:申请;1:一级审核;2:二级审核;3:三级审核等; 4:四级审核等; 5:五级审核等);RecordStatus(记录状态 详见字典sys_travelexpensestatus) (3)审批流程设置表:service_fundflowrule (4)审批流程记录表:service_fundflow --- ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 107 insertions(+), 9 deletions(-) diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java index 853243b..4c5d042 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java @@ -1,28 +1,126 @@ package com.ruoyi.quartz.task; +import com.ruoyi.project.domain.*; +import com.ruoyi.project.domain.vo.DingTalkReqVo; +import com.ruoyi.project.service.*; +import com.ruoyi.project.service.impl.DingTalkServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; import com.ruoyi.common.utils.StringUtils; +import java.lang.reflect.Array; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; + /** * 瀹氭椂浠诲姟璋冨害娴嬭瘯 - * + * * @author ruoyi */ @Component("ryTask") -public class RyTask -{ - public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) - { +public class RyTask { + @Autowired + private DingTalkService dingTalkService; + + @Autowired + private IServiceReimbursementSharedService serviceReimbursementSharedService; + + @Autowired + private IServiceFundSharedService serviceFundSharedService; + + + @Autowired + private IServiceFundService serviceFundService; + + @Autowired + private IServiceReimbursementService serviceReimbursementService; + + @Autowired + private IServiceFundflowService fundflowService; + + public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) { System.out.println(StringUtils.format("鎵ц澶氬弬鏂规硶锛� 瀛楃涓茬被鍨媨}锛屽竷灏旂被鍨媨}锛岄暱鏁村瀷{}锛屾诞鐐瑰瀷{}锛屾暣褰}", s, b, l, d, i)); } - public void ryParams(String params) - { + public void ryParams(String params) { System.out.println("鎵ц鏈夊弬鏂规硶锛�" + params); } - public void ryNoParams() - { + public void ryNoParams() { System.out.println("鎵ц鏃犲弬鏂规硶"); } + + public void checkReportInfo() { + //鏌ュ嚭鎵�鏈夎鍖婚櫌閫�鍥炵殑Fund鏁版嵁 + List<ServiceFundShared> serviceFundShareds = serviceFundSharedService.queryFundShareList(); + for (ServiceFundShared serviceFundShared : serviceFundShareds) { + String[] split = serviceFundShared.getCxrjyj().split("&"); + String phone = serviceFundShared.getPhone(); + //灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎 + serviceFundSharedService.delfundsharedInfoById(serviceFundShared.getId()); + + ServiceFund serviceFund = new ServiceFund(); + serviceFund.setId(serviceFundShared.getSerfunid()); + List<ServiceFund> serviceFunds = serviceFundService.queryList(serviceFund); + ServiceFund serviceFund1 = serviceFunds.get(0); + serviceFund1.setFlowlevel(0); + serviceFund1.setDel_flag(0); + serviceFund1.setBackflowlevel(199); + serviceFundService.updateById(serviceFund1); + sendMeg(split,phone); + } + + + //鏌ュ嚭鎵�鏈夎鍖婚櫌閫�鍥炵殑Reimbursement鏁版嵁 + List<ServiceReimbursementShared> serviceReimbursementShareds = serviceReimbursementSharedService.queryReShareList(); + for (ServiceReimbursementShared serviceReimbursementShared : serviceReimbursementShareds) { + String phone = serviceReimbursementShared.getPhone(); + String[] split = serviceReimbursementShared.getCxrjyj().split("&"); + + //灏嗗垎浜噷鐨勮鏁版嵁鍒犻櫎 + serviceReimbursementSharedService.delResharedInfoById(serviceReimbursementShared.getId()); + + //灏咶lowlevel 璁剧疆涓�0; + ServiceReimbursement serviceReimbursement = new ServiceReimbursement(); + serviceReimbursement.setId(serviceReimbursementShared.getReimid()); + List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(serviceReimbursement); + ServiceReimbursement serviceReimbursement1 = serviceReimbursementList.get(0); + serviceReimbursement1.setFlowlevel(0L); + serviceReimbursement1.setDelFlag(0); + serviceReimbursement1.setBackflowlevel(199L); + serviceReimbursementService.updateById(serviceReimbursement1); + sendMeg(split,phone); + + } + + } + + public void sendMeg(String[] split,String phone) { + //璁板綍鎿嶄綔璁板綍 + ServiceFundflow serviceFundflow = new ServiceFundflow(); + serviceFundflow.setCreateBy("admin"); + serviceFundflow.setCreateTime(new Date()); + serviceFundflow.setUpdateBy("admin"); + serviceFundflow.setUpdateTime(new Date()); + serviceFundflow.setCheckusername(split[0]); + serviceFundflow.setFlowcontent(split[2]); + serviceFundflow.setFlowconclusion(2); + serviceFundflow.setFundtype(2); + serviceFundflow.setFlowlevel(100); + fundflowService.save(serviceFundflow); + + ArrayList<ConcurrentHashMap<String, String>> contentList = new ArrayList<>(); + ConcurrentHashMap map = new ConcurrentHashMap(); + map.put("瀹℃壒浜�", split[0]); + map.put("瀹℃壒鏃堕棿", split[1]); + map.put("鎰忚", split[2]); + contentList.add(map); + DingTalkReqVo dingTalkReqVo = new DingTalkReqVo(); + dingTalkReqVo.setTitle("璐㈠姟绯荤粺椹冲洖淇℃伅"); + dingTalkReqVo.setNumber("13634195431"); + dingTalkReqVo.setContents(contentList); + dingTalkService.sendNotification(dingTalkReqVo); + } + } -- Gitblit v1.9.3