liusheng
2 天以前 1574cc259ecec7217d210c58d2bbf7b44a106234
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceFundServiceImpl.java
@@ -177,7 +177,7 @@
            serviceFundSharedMapper.delfundsharedInfoById(null, serviceFund1.getId());
            //这个消息发送,就不在这做了,在审批记录的接口里做(即日志接口)
            //sendMeg(serviceFund1.getApplytype(), sysUser.getPhonenumber());
//            sendMeg(serviceFund1.getApplytype(), sysUser.getPhonenumber());
        }
        return true;
@@ -422,7 +422,7 @@
            SysUser user = loginUser.getUser();
            if (serviceFund.getFlowlevel() == Long.valueOf(serviceFundflowrules.get(0).getFlowlevel() - 1) && serviceFund.getBackflowlevel() == 100) {
                log.info("财务退回再提交,出纳再次审批,之后提交到财务");
//                serviceFund.setFinancechecher("审批人:" + user.getUserName() + " & 审批时间" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + " & 审批结果:通过");
//                serviceFund.setFinancechecher("审批人:" + user.getNickName() + " & 审批时间" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + " & 审批结果:通过");
                serviceFund.setFinancechecher(user.getNickName());
                serviceFund.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
@@ -456,7 +456,7 @@
            List<Integer> roleIds = sysUserRoleMapper.getUserRoleByUserId(user.getUserId());
            if (roleIds != null && roleIds.contains(11)) {
                //11为财务
//                serviceFund.setFinancechecher("审批人:" + user.getUserName() + " & 审批时间" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " & 审批结果:通过");
//                serviceFund.setFinancechecher("审批人:" + user.getNickName() + " & 审批时间" + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " & 审批结果:通过");
                serviceFund.setFinancechecher(user.getNickName());
            }
@@ -469,7 +469,6 @@
                FlowLevel = 0;
                RecordStatus = -1;
                log.info("serviceFund进来了吗?????? :{},{}", RecordStatus, FlowLevel);
                System.out.println("serviceFund进来了吗??????");
            } else {
                RecordStatus = (FlowLevel + 1) * 2 - 1;
                FlowLevel = (FlowLevel - 1);
@@ -531,8 +530,6 @@
            }
        }
        System.out.println("serviceFund的值是--------:" + serviceFund);
        log.info("开始更新的的值是--------");
        Boolean aBoolean1 = updateById(serviceFund);
        log.info("integer更新的的值是-------- :{}", aBoolean1);
        ServiceSystemmessage serviceSystemmessage = new ServiceSystemmessage();
@@ -750,6 +747,11 @@
    private Map<String, Object> getformmain_0831(ServiceFund serviceFund) {
        ServiceFundflow serviceFundflow = new ServiceFundflow();
        serviceFundflow.setFundid(serviceFund.getId());
        serviceFundflow.setFundtype(2);
        List<ServiceFundflow> serviceFundflows = serviceFundflowService.queryList(serviceFundflow);
        Map<String, Object> formmain_0831 = new HashMap<>();
        formmain_0831.put("捐献者姓名", serviceFund.getDonorname());
        formmain_0831.put("报销人员", serviceFund.getUsername());
@@ -760,14 +762,14 @@
        formmain_0831.put("上传附件", null);
        formmain_0831.put("备注", null);
        formmain_0831.put("财务审批", null);
        formmain_0831.put("财务部负责人审批", serviceFund.getFinancedirector());
        formmain_0831.put("办公室主任审批", serviceFund.getOfficedirector());
        formmain_0831.put("财务部负责人审批", getLastApprovalInfo(serviceFundflows, serviceFund.getFinancedirector()));
        formmain_0831.put("办公室主任审批", getLastApprovalInfo(serviceFundflows, serviceFund.getOfficedirector()));
        formmain_0831.put("业务副院长审批", serviceFund.getBusvicepresident());
        formmain_0831.put("财务副院长审批", serviceFund.getFinvicepresident());
        formmain_0831.put("中心负责人审批", serviceFund.getOpochecker());
        formmain_0831.put("支付方式", serviceFund.getZffs());
        formmain_0831.put("组长", serviceFund.getManagername());
        formmain_0831.put("审批人员", serviceFund.getFinancechecher());
        formmain_0831.put("组长", getLastApprovalInfo(serviceFundflows, serviceFund.getManagername()));
        formmain_0831.put("审批人员", StringUtils.isEmpty(getLastApprovalInfo(serviceFundflows, serviceFund.getFinancechecher())) ? "陈慕华" : getLastApprovalInfo(serviceFundflows, serviceFund.getFinancechecher()));
        formmain_0831.put("支付日期", serviceFund.getRiqi());
        formmain_0831.put("识别人-作废", null);
        formmain_0831.put("财务审批签字", serviceFund.getFinancedirector());
@@ -793,6 +795,32 @@
        return formmain_0831;
    }
    public String getLastApprovalInfo(List<ServiceFundflow> serviceFundflows, String managerName) {
        log.info("---------------serviceFundflows的入参为:{},managerName的值为:{}", serviceFundflows, managerName);
        if (StringUtils.isEmpty(managerName)) return "";
        if (CollectionUtils.isEmpty(serviceFundflows)) {
            //如果是最后一个人审批,这个时候可能flow里还没有生成进去
            SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            return "审批人:" + managerName + " & 审批时间:" + sd.format(new Date()) + " & 审批结果:通过";
        }
        Optional<ServiceFundflow> lastApproval = serviceFundflows.stream().filter(flow -> managerName.contains(flow.getCheckusername())).max(Comparator.comparing(ServiceFundflow::getCreateTime));
        if (lastApproval.isPresent()) {
            ServiceFundflow flow = lastApproval.get();
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            if (flow.getCheckTime() == null) {
                flow.setCheckTime(new Date());
            }
            String formattedTime = sdf.format(flow.getCheckTime());
            return "审批人:" + managerName + " & 审批时间:" + formattedTime + " & 审批结果:通过";
        }
        return "";
    }
    @Override
    public Long getFundId(Long infoid) {
        return serviceFundMapper.getFundId(infoid);