liusheng
2024-02-22 d5c2c0762ccbb2bb33635f99480d404f1fb10d5a
修改流程代码提交
已修改9个文件
272 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java 211 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceFundController.java
@@ -530,7 +530,8 @@
                if (serviceFund.getFlowlevel() == 1 && serviceFund.getBackflowlevel() == 100) {
                    log.info("财务退回再提交,出纳再次审批,之后提交到财务");
                    //说明是财务退回再提交的.需要出纳再看一遍,没问题之后,往分享表里新增
                    serviceFundService.addFundSharedInfo(serviceFund.getId());
//                    serviceFundService.addFundSharedInfo(serviceFund.getId());
                    serviceFund.setFlowlevel(3L);
                    serviceFund.setFlowlevel(100L);
                    serviceFund.setRecordstatus(99);
                    serviceFundService.updateById(serviceFund);
@@ -616,9 +617,9 @@
                //通过
                serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "级审核通过");
                serviceSystemmessage.setMessagecontent("您" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceFund.getCreateTime()) + "提交的关于捐献案例【" + serviceFund.getDonorname() + "】的费用申请已通过" + (OriginalFlowLevel + 1) + "级审核");
                if (TotalLevel == OriginalFlowLevel + 1) {
                    serviceFundService.addFundSharedInfo(checkFundVO.getFundid());
                }
//                if (TotalLevel == OriginalFlowLevel + 1) {
//                    serviceFundService.addFundSharedInfo(checkFundVO.getFundid());
//                }
            } else {
                //驳回
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
@@ -370,7 +370,9 @@
                if (serviceReimbursement.getFlowlevel() == 1 && serviceReimbursement.getBackflowlevel() == 100) {
                    log.info("出差补贴被 财务退回再提交,出纳再次审批,之后提交到财务:{}", serviceReimbursement.getId());
                    //说明是财务退回再提交的.需要出纳再看一遍,没问题之后,往分享表里新增
                    serviceReimbursementService.addSharedData(serviceReimbursement.getId());
//                    serviceReimbursementService.addSharedData(serviceReimbursement.getId());
                    serviceReimbursement.setFlowlevel(3L);
                    serviceReimbursement.setFlowlevel(100L);
                    serviceReimbursement.setRecordstatus(99);
                    boolean b = serviceReimbursementService.updateById(serviceReimbursement);
@@ -471,10 +473,12 @@
                serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "级审核通过");
                serviceSystemmessage.setMessagecontent("您" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(serviceReimbursement.getCreateTime()) + "提交的关于捐献案例【" + serviceReimbursement.getDonorname() + "】的差旅费申请已通过" + (OriginalFlowLevel + 1) + "级审核");
                log.info("totalLevel的值 : {},  OriginalFlowLevel的值:{}", totalLevel, OriginalFlowLevel);
                if (totalLevel == OriginalFlowLevel + 1) {
                    //所有数据新增到备份表
                    serviceReimbursementService.addSharedData(checkFundVO.getFundid());
                }
                //这一块放定时任务里做
//                if (totalLevel == OriginalFlowLevel + 1) {
//                    //所有数据新增到备份表
//                    serviceReimbursementService.addSharedData(checkFundVO.getFundid());
//                }
            } else {
                //驳回
                serviceSystemmessage.setMessagetitle("" + (OriginalFlowLevel + 1) + "级审核驳回");
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceFund.java
@@ -362,5 +362,14 @@
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "上报时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date applyTime;
    @ApiModelProperty("数据是否进入shared表   0:否     1:是")
    private Integer uploadStates = 0;
    /**
     * 来用记录插入分享表失败
     */
    @ApiModelProperty("来用记录插入分享表失败")
    private String notes;
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceReimbursement.java
@@ -328,6 +328,12 @@
    private String bh;
    /**
     * 来用记录插入分享表失败
     */
    @ApiModelProperty("来用记录插入分享表失败")
    private String notes;
    /**
     * 预审状态:1、待预审;2、预算通过,等待纸质报销材料;3、收到纸质报销材料
     */
    @ApiModelProperty("预审状态:1、待预审;2、预算通过,等待纸质报销材料;3、收到纸质报销材料")
@@ -348,5 +354,8 @@
//    @ApiModelProperty("结束时间")
//    private Date endtime;
    @ApiModelProperty("数据是否进入shared表   0:否     1:是")
    private Integer uploadStates = 0;
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -109,6 +109,9 @@
        if (serviceFund.getUploadtime() != null) {
            wrappers.eq(ServiceFund::getUploadtime, serviceFund.getUploadtime());
        }
        if (serviceFund.getUploadStates() != null) {
            wrappers.eq(ServiceFund::getUploadStates, serviceFund.getUploadStates());
        }
        if (serviceFund.getFlowlevel() != null) {
            wrappers.eq(ServiceFund::getFlowlevel, serviceFund.getFlowlevel());
        }
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceReimbursementServiceImpl.java
@@ -100,6 +100,9 @@
        if (serviceReimbursement.getRecordstatus() != null) {
            wrappers.eq(ServiceReimbursement::getRecordstatus, serviceReimbursement.getRecordstatus());
        }
        if (serviceReimbursement.getUploadStates() != null) {
            wrappers.eq(ServiceReimbursement::getUploadStates, serviceReimbursement.getUploadStates());
        }
        if (StringUtils.isNotBlank(serviceReimbursement.getUploadflag())) {
            wrappers.eq(ServiceReimbursement::getUploadflag, serviceReimbursement.getUploadflag());
        }
ruoyi-project/src/main/resources/mapper/project/ServiceFundMapper.xml
@@ -60,7 +60,9 @@
        <result property="istax" column="istax"/>
        <result property="fundtaxtime" column="fundtaxtime"/>
        <result property="applyTime" column="apply_time"/>
        <result property="applyTime" column="apply_time"/>
        <result property="uploadStates" column="upload_states"/>
        <result property="notes" column="notes"/>
    </resultMap>
    <sql id="selectServiceFundVo">
@@ -119,7 +121,9 @@
               performancetype,
               istax,
               apply_time,
               fundtaxtime
               fundtaxtime,
               upload_states,
               notes
        from service_fund
    </sql>
ruoyi-project/src/main/resources/mapper/project/ServiceReimbursementMapper.xml
@@ -63,6 +63,8 @@
        <result property="checkstatus" column="checkstatus"/>
        <result property="performancetype" column="performancetype"/>
        <result property="applyTime" column="apply_time"/>
        <result property="uploadStates" column="upload_states"/>
        <result property="notes" column="notes"/>
    </resultMap>
    <sql id="selectServiceReimbursementVo">
@@ -121,7 +123,9 @@
               bh,
               checkstatus,
               apply_time,
               performancetype
               performancetype,
               upload_states,
               notes
        from service_reimbursement
    </sql>
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -41,23 +41,10 @@
    private IServiceFundSharedService serviceFundSharedService;
    @Autowired
    private IServiceFunddetailSharedService serviceFunddetailSharedService;
    private IServiceFundflowruleService iServiceFundflowruleService;
    @Autowired
    private IServiceFunddetailService serviceFunddetailService;
    @Autowired
    private IServiceReimbursementdetailService serviceReimbursementdetailService;
    @Autowired
    private IServiceReimbursementdetailSharedService reimbursementdetailSharedService;
    @Autowired
    private IServiceFundService serviceFundService;
//    @Autowired
//    private IServiceReimbursementService serviceReimbursementService;
    @Autowired
@@ -74,109 +61,6 @@
    public void ryNoParams() {
        System.out.println("执行无参方法");
    }
//    public void checkDBInfo() {
//        ServiceFund serviceFund = new ServiceFund();
//        serviceFund.setFlowlevel(3L);
//        List<ServiceFund> serviceFunds = serviceFundService.queryList(serviceFund);
//        for (ServiceFund serviceFund1 : serviceFunds) {
//            ServiceFundShared serviceFundShared = new ServiceFundShared();
//            serviceFundShared.setSerfunid(serviceFund1.getId());
//            List<ServiceFundShared> serviceFundShareds = serviceFundSharedService.queryList(serviceFundShared);
//            if (CollectionUtils.isEmpty(serviceFundShareds)) {
//                ServiceFundShared serviceFundShared1 = DtoConversionUtils.sourceToTarget(serviceFund1, ServiceFundShared.class);
//                serviceFundShared1.setSerfunid(serviceFund1.getId());
//                serviceFundShared1.setId(null);
//                serviceFundSharedService.save(serviceFundShared1);
//            }
//        }
//        //FUND
//        List<ServiceFunddetail> serviceFunddetailnew = new ArrayList<>();
//        List<ServiceFunddetail> serviceFunddetails = serviceFunddetailService.queryList(new ServiceFunddetail());
//        for (ServiceFunddetail serviceFunddetail : serviceFunddetails) {
////            if (!ObjectUtils.isEmpty(serviceFunddetail.getAnnexfiles())) {
////                serviceFunddetailnew.add(serviceFunddetail);
////            } else {
//            Long fundid = serviceFunddetail.getFundid();
//            ServiceFund byId = serviceFundService.getById(fundid);
//            if (!ObjectUtils.isEmpty(byId)) {
//                if (byId.getFlowlevel() != null && byId.getFlowlevel() == 3) {
//                    serviceFunddetailnew.add(serviceFunddetail);
//                }
////                }
//            }
//        }
//        for (ServiceFunddetail serviceFunddetail1 : serviceFunddetailnew) {
//            //需要先查一下这个对应的fdid(shared表)在详情备份表是否存在
//            ServiceFunddetailShared serviceFunddetailShared = new ServiceFunddetailShared();
//            serviceFunddetailShared.setFdid(serviceFunddetail1.getId());
//            List<ServiceFunddetailShared> serviceFunddetailShareds = serviceFunddetailSharedService.queryList(serviceFunddetailShared);
//            if (CollectionUtils.isEmpty(serviceFunddetailShareds)) {
//                serviceFundService.addFundSharedInfo(serviceFunddetail1.getFundid());
//            }
////            ServiceFunddetailShared serviceFunddetailShared = new ServiceFunddetailShared();
////            serviceFunddetailShared.setFdid(serviceFunddetail1.getId());
////            List<ServiceFunddetailShared> serviceFunddetailShareds = serviceFunddetailSharedService.queryList(serviceFunddetailShared);
////            if (CollectionUtils.isEmpty(serviceFunddetailShareds)) {
////                ServiceFunddetailShared serviceFunddetailShared1 = DtoConversionUtils.sourceToTarget(serviceFunddetail1, ServiceFunddetailShared.class);
////                serviceFunddetailShared1.setId(null);
////                ServiceFundShared serviceFundShared = new ServiceFundShared();
////                serviceFundShared.setSerfunid(serviceFunddetail1.getFundid());
////                List<ServiceFundShared> serviceFundShareds = serviceFundSharedService.queryList(serviceFundShared);
////                serviceFunddetailShared1.setFundid(serviceFundShareds.get(0).getId());
////                serviceFunddetailShared1.setFdid(serviceFunddetail1.getId());
////                serviceFunddetailSharedService.save(serviceFunddetailShared1);
////            }
//        }
//
//
//        //reimbursement
//        List<ServiceReimbursementdetail> serviceReimbursementdetailsNew = new ArrayList<>();
//        List<ServiceReimbursementdetail> serviceReimbursementdetails = serviceReimbursementdetailService.queryList(new ServiceReimbursementdetail());
//        for (ServiceReimbursementdetail reimbursementdetail : serviceReimbursementdetails) {
////            if (!ObjectUtils.isEmpty(reimbursementdetail.getAnnexfiles())) {
////                serviceReimbursementdetailsNew.add(reimbursementdetail);
////            } else {
//            Long rbid = reimbursementdetail.getRbid();
//            ServiceReimbursement byId = serviceReimbursementService.getById(rbid);
//            if (!ObjectUtils.isEmpty(byId)) {
//                if (byId.getFlowlevel() != null && byId.getFlowlevel() == 3) {
//                    serviceReimbursementdetailsNew.add(reimbursementdetail);
//                }
////                }
//            }
//        }
//        for (ServiceReimbursementdetail serviceReimbursementdetail : serviceReimbursementdetailsNew) {
//            //需要先查一下这个对应的rbid(shared表)在详情备份表是否存在
//            ServiceReimbursementdetailShared serviceReimbursementdetailShared = new ServiceReimbursementdetailShared();
//            serviceReimbursementdetailShared.setRdid(serviceReimbursementdetail.getId());
//            List<ServiceReimbursementdetailShared> serviceReimbursementdetailShareds = reimbursementdetailSharedService.queryList(serviceReimbursementdetailShared);
//            if (CollectionUtils.isEmpty(serviceReimbursementdetailShareds)) {
//                serviceReimbursementService.addSharedData(serviceReimbursementdetail.getRbid());
//            }
//        }
////            ServiceReimbursementdetailShared serviceReimbursementdetailShared = new ServiceReimbursementdetailShared();
////            serviceReimbursementdetailShared.setRdid(serviceReimbursementdetail.getId());
////            if (serviceReimbursementdetail.getRbid() == 872) {
////                System.out.println("-------------------");
////            }
////            List<ServiceReimbursementdetailShared> serviceReimbursementdetailShareds = reimbursementdetailSharedService.queryList(serviceReimbursementdetailShared);
////
////            if (CollectionUtils.isEmpty(serviceReimbursementdetailShareds)) {
////                ServiceReimbursementdetailShared reimbursementdetailShared = DtoConversionUtils.sourceToTarget(serviceReimbursementdetail, ServiceReimbursementdetailShared.class);
////                reimbursementdetailShared.setId(null);
////                ServiceReimbursementShared serviceReimbursementShared = new ServiceReimbursementShared();
////                serviceReimbursementShared.setReimid(serviceReimbursementdetail.getRbid());
////                List<ServiceReimbursementShared> serviceReimbursementShareds = serviceReimbursementSharedService.queryList(serviceReimbursementShared);
////                if (!CollectionUtils.isEmpty(serviceReimbursementShareds) && !ObjectUtils.isEmpty(serviceReimbursementShareds.get(0))) {
////                    reimbursementdetailShared.setRbid(serviceReimbursementShareds.get(0).getId());
////                    reimbursementdetailShared.setRdid(serviceReimbursementdetail.getId());
////                    reimbursementdetailSharedService.save(reimbursementdetailShared);
////                }
////            }
////        }
//
//    }
    public void checkReportInfo() {
        //查出所有被医院退回的Fund数据
@@ -424,6 +308,7 @@
                ServiceReimbursement serviceReimbursement1 = serviceReimbursementList.get(0);
                serviceReimbursement1.setFlowlevel(100L);
                serviceReimbursement1.setDelFlag(0);
                serviceReimbursement1.setUploadStates(0);
                serviceReimbursement1.setBackflowlevel(199L);
                serviceReimbursement1.setRecordstatus(-1);
                serviceReimbursementService.updateById(serviceReimbursement1);
@@ -706,4 +591,96 @@
    }
    /**
     * 将数据存到分享表中
     */
    public void addDataShared() {
        ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule();
        //处理差旅报销
        serviceFundflowrule.setApplytype("0");
        List<ServiceFundflowrule> serviceFundflowrules = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("差旅的最高等级:{}", serviceFundflowrules.get(0).getTotallevel());
        ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
        serviceReimbursement.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
        serviceReimbursement.setUploadStates(0);
        serviceReimbursement.setDelFlag(0);
        List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(serviceReimbursement);
        for (ServiceReimbursement serviceReimbursement1 : serviceReimbursementList) {
            try {
                log.info("插入分享表的ID为:{}", serviceReimbursement1.getId());
                Boolean aBoolean = serviceReimbursementService.addSharedData(serviceReimbursement1.getId());
                if (aBoolean) {
                    ServiceReimbursement serviceReimbursement3 = new ServiceReimbursement();
                    serviceReimbursement3.setId(serviceReimbursement1.getId());
                    serviceReimbursement3.setUploadStates(1);
                    boolean b = serviceReimbursementService.updateById(serviceReimbursement3);
                    log.info("serviceReimbursement是否插入成功{},{}", aBoolean, b);
                }
            } catch (Exception e) {
                ServiceReimbursement serviceReimbursement2 = new ServiceReimbursement();
                serviceReimbursement2.setId(serviceReimbursement1.getId());
                serviceReimbursement2.setNotes("插入分享表失败");
                serviceReimbursementService.updateById(serviceReimbursement2);
            }
        }
        //专家劳务费申请
        serviceFundflowrule.setApplytype("1");
        List<ServiceFundflowrule> serviceFundflowrules2 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("专家劳务的最高等级:{}", serviceFundflowrules2.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules2.get(0).getTotallevel().longValue(), "1");
        //伦理专家劳务费申请
        serviceFundflowrule.setApplytype("2");
        List<ServiceFundflowrule> serviceFundflowrules3 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("伦理专家劳务费申请:{}", serviceFundflowrules3.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules3.get(0).getTotallevel().longValue(), "2");
        //医学成本报销
        serviceFundflowrule.setApplytype("3");
        List<ServiceFundflowrule> serviceFundflowrules4 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("医学成本报销:{}", serviceFundflowrules4.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules4.get(0).getTotallevel().longValue(), "3");
        //办公费用报销
        serviceFundflowrule.setApplytype("4");
        List<ServiceFundflowrule> serviceFundflowrules5 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("办公费用报销:{}", serviceFundflowrules5.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules5.get(0).getTotallevel().longValue(), "4");
        //绩效审批报销
        serviceFundflowrule.setApplytype("5");
        List<ServiceFundflowrule> serviceFundflowrules6 = iServiceFundflowruleService.queryList(serviceFundflowrule);
        log.info("办公费用报销:{}", serviceFundflowrules6.get(0).getTotallevel());
        addFunfShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
    }
    private void addFunfShared(Long totallevel, String applyType) {
        ServiceFund serviceFund = new ServiceFund();
        serviceFund.setFlowlevel(totallevel);
        serviceFund.setUploadStates(0);
        serviceFund.setDel_flag(0);
        serviceFund.setApplytype(applyType);
        List<ServiceFund> serviceFundList = serviceFundService.queryList(serviceFund);
        for (ServiceFund serviceFund1 : serviceFundList) {
            try {
                log.info("插入分享表的FundID为:{}", serviceFund1.getId());
                Boolean aBoolean = serviceFundService.addFundSharedInfo(serviceFund1.getId());
                if (aBoolean) {
                    ServiceFund serviceFund2 = new ServiceFund();
                    serviceFund2.setId(serviceFund1.getId());
                    serviceFund2.setUploadStates(1);
                    boolean b = serviceFundService.updateById(serviceFund2);
                    log.info("serviceReimbursement是否插入成功{},{}", aBoolean, b);
                }
            } catch (Exception e) {
                ServiceFund serviceFund2 = new ServiceFund();
                serviceFund2.setId(serviceFund1.getId());
                serviceFund2.setNotes("插入fund分享表失败");
                serviceFundService.updateById(serviceFund2);
            }
        }
    }
}