liusheng
2023-05-10 a6f97d763f4d72e1353efd6273f97bf478a5d8fc
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceReimbursementController.java
@@ -32,6 +32,7 @@
import org.apache.commons.lang.StringUtils;
import org.apache.ibatis.annotations.Options;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.io.*;
@@ -188,6 +189,18 @@
    }
    /**
     * 往service_reimbursement_share,往service_reimbursementdetail_share,往service_reimbursementpyee_share新增备份数据
     *
     * @param id
     * @return
     */
    @GetMapping("/addShareData/{id}")
    public AjaxResult addSharedData(@PathVariable("id") Long id) {
        return AjaxResult.success(serviceReimbursementService.addSharedData(id));
    }
    /**
     * 新增报销申请
     */
    @ApiOperation("新增报销申请")
@@ -199,24 +212,23 @@
    public AjaxResult add(@RequestBody ServiceReimbursement serviceReimbursement) {
        boolean b = serviceReimbursementService.save(serviceReimbursement);
        if (b) {
            addReiSharedDatd(serviceReimbursement, 1);
        }
//        if (b) {
//            addReiSharedDatd(serviceReimbursement, 1);
//        }
        Long id = serviceReimbursement.getId();
        return AjaxResult.success(id);
    }
    public int addReiSharedDatd(ServiceReimbursement serviceReimbursement, int nType) {
        //remShare = ;
        ServiceReimbursementShared remShare = null;
        ServiceReimbursementShared remShare = new ServiceReimbursementShared();
        if (nType == 1) {
            remShare = new ServiceReimbursementShared();
            // remShare = new ServiceReimbursementShared();
            remShare.setReimid(serviceReimbursement.getId());
        } else //modify
        {
            List<ServiceReimbursementShared> remlist = serviceReimbursementServiceShare.getRemShareInfoByRemId(serviceReimbursement.getId());
            if (remlist != null)
                remShare = remlist.get(0);
            if (!CollectionUtils.isEmpty(remlist)) remShare = remlist.get(0);
        }
        remShare.setUserno(serviceReimbursement.getUserno());
@@ -618,9 +630,9 @@
    @PostMapping("/editMoney")
    public AjaxResult editMoney(@RequestBody List<ReimbursementService> serviceReimbursement) {
        boolean b = serviceReimbursementService.updateById(null);
        if (b) {
            addReiSharedDatd(null, 2);
        }
//        if (b) {
//            addReiSharedDatd(null, 2);
//        }
        return toAjax(b);
    }
@@ -702,8 +714,7 @@
        //获取报销支付信息
        List<ServiceReimbursementpayee> reimbursementpayeeInfo = reimbursementpayeeService.getReimbursementpayeeInfo(serviceReimbursementEo);
        Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream()
                .collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype));
        Map<String, List<ServiceReimbursementEo>> listMap = rdInfoByItem.stream().collect(Collectors.groupingBy(ServiceReimbursementEo::getPersontype));
        List<Map<String, BigDecimal>> list = new ArrayList<>();
        StringBuffer FYXM1 = new StringBuffer();
        StringBuffer FYXM2 = new StringBuffer();
@@ -791,17 +802,20 @@
        } else {
            dataMap.put("FYXM3", "");
        }
        //   dataMap.put("JEXS", rdInfoByItem.get(0).getAmountrequested());
        dataMap.put("JEXS", allMoney);
        //double temp = 0;
        //temp = Math.round(serviceReimbursement.getAmountrequested() * 100) * 0.01d;
        // dataMap.put("JEDS", convert(rdInfoByItem.get(0).getAmountrequested().doubleValue()) + "整");
        dataMap.put("JEDS", convert(allMoney.doubleValue()) + "整");
        String remark = "";
        for (ServiceReimbursementpayee serviceReimbursementpayee : reimbursementpayeeInfo) {
            remark += "<w:br/> "+PersonType.getInfoByCode(serviceReimbursementpayee.getPersontype())+ "(" + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount();
            remark += " 元; " + serviceReimbursementpayee.getBankname() + ": " + serviceReimbursementpayee.getBankcardno() + ") 备注: " + serviceReimbursementpayee.getRemark();
            remark += "<w:br/> " + serviceReimbursementpayee.getPersonname() + " " + serviceReimbursementpayee.getAmount();
            remark += " 元; ";
            if (!StringUtils.isEmpty(serviceReimbursementpayee.getBankname())) {
                remark += serviceReimbursementpayee.getBankname() + " ( " + serviceReimbursementpayee.getBankcardno() + ")";
            }
            remark += " 备注: " + serviceReimbursementpayee.getPersontype();
            if (!StringUtils.isEmpty(serviceReimbursementpayee.getRemark())) {
                remark += serviceReimbursementpayee.getRemark();
            }
        }
        dataMap.put("BXBZ", remark);
@@ -846,11 +860,16 @@
            map.put("DA", s.getDeparture() == null ? "" : s.getDeparture());
            Date et = s.getEndtime();
            SimpleDateFormat formatter_et = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            String date_et = formatter_et.format(et);
            String year_et = date_et.substring(0, 4);
            String month_et = date_et.substring(5, 7);
            String day_et = date_et.substring(8, 10);
            String year_et = null;
            String month_et = null;
            String day_et = null;
            if (et != null) {
                SimpleDateFormat formatter_et = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                String date_et = formatter_et.format(et);
                year_et = date_et.substring(0, 4);
                month_et = date_et.substring(5, 7);
                day_et = date_et.substring(8, 10);
            }
            map.put("AY", year_et == null ? "" : year_et);
            map.put("AM", month_et == null ? "" : month_et);