|  | @@ -1,5 +1,6 @@
 | 
	
		
			
				|  |  |  package thyyxxk.webserver.service.reports;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 | 
	
		
			
				|  |  |  import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 | 
	
		
			
				|  |  |  import lombok.extern.slf4j.Slf4j;
 | 
	
		
			
				|  |  |  import org.springframework.stereotype.Service;
 | 
	
	
		
			
				|  | @@ -9,11 +10,9 @@ import thyyxxk.webserver.entity.ResultVo;
 | 
	
		
			
				|  |  |  import thyyxxk.webserver.entity.datamodify.GetDropdownBox;
 | 
	
		
			
				|  |  |  import thyyxxk.webserver.entity.querydata.KeShiFeiiYongTongJi;
 | 
	
		
			
				|  |  |  import thyyxxk.webserver.entity.querydata.QueryDrugsAndProjects;
 | 
	
		
			
				|  |  | +import thyyxxk.webserver.entity.xc.XcPageHelp;
 | 
	
		
			
				|  |  |  import thyyxxk.webserver.service.PublicServer;
 | 
	
		
			
				|  |  | -import thyyxxk.webserver.utils.DateUtil;
 | 
	
		
			
				|  |  | -import thyyxxk.webserver.utils.ExcelUtil;
 | 
	
		
			
				|  |  | -import thyyxxk.webserver.utils.ResultVoUtil;
 | 
	
		
			
				|  |  | -import thyyxxk.webserver.utils.StringUtil;
 | 
	
		
			
				|  |  | +import thyyxxk.webserver.utils.*;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  import javax.servlet.http.HttpServletResponse;
 | 
	
		
			
				|  |  |  import java.util.*;
 | 
	
	
		
			
				|  | @@ -40,6 +39,20 @@ public class KeShiShouRuServer {
 | 
	
		
			
				|  |  |          this.publicServer = publicServer;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    static class PersonComparator implements Comparator<KeShiFeiiYongTongJi> {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        @Override
 | 
	
		
			
				|  |  | +        public int compare(KeShiFeiiYongTongJi p1, KeShiFeiiYongTongJi p2) {
 | 
	
		
			
				|  |  | +            if (p1.getChargeDateString() != null && p2.getChargeDateString() != null) {
 | 
	
		
			
				|  |  | +                Date o1 = DateUtil.parse(p1.getChargeDateString(), DateUtil.DATE);
 | 
	
		
			
				|  |  | +                Date o2 = DateUtil.parse(p2.getChargeDateString(), DateUtil.DATE);
 | 
	
		
			
				|  |  | +                assert o1 != null;
 | 
	
		
			
				|  |  | +                return o1.compareTo(o2);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            return -1;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      public ResultVo<KeShiFeiiYongTongJi> getKeShouFei(QueryDrugsAndProjects param) {
 | 
	
		
			
				|  |  |          if (StringUtil.isBlank(param.getStartTime()) || StringUtil.isBlank(param.getEndTime())) {
 | 
	
	
		
			
				|  | @@ -47,9 +60,7 @@ public class KeShiShouRuServer {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          KeShiFeiiYongTongJi qp = new KeShiFeiiYongTongJi();
 | 
	
		
			
				|  |  | -        log.info("查询科室收费统计 ==> 执行科室:{},开始{},结束:{}。项目编码:{},录入人:{},申请科室:{},总数:{},当前页:{},页大小:{}",
 | 
	
		
			
				|  |  | -                param.getExecUnitList(), param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                param.getChargeCodeMx(), param.getOpId(), param.getReqDeptCode(), param.getTotal(), param.getCurrentPage(), param.getPageSize());
 | 
	
		
			
				|  |  | +        log.info("查询科室收费统计 ==> 执行科室:{},开始{},结束:{}。项目编码:{},录入人:{},申请科室:{},总数:{},当前页:{},页大小:{}", param.getExecUnitList(), param.getStartTime(), param.getEndTime(), param.getChargeCodeMx(), param.getOpId(), param.getReqDeptCode(), param.getTotal(), param.getCurrentPage(), param.getPageSize());
 | 
	
		
			
				|  |  |          List<String> keShiLieBiao = publicServer.getKeShiLieBiaoList(param.getExecUnitList());
 | 
	
		
			
				|  |  |          GetDropdownBox renHuanCodeHeCodeRs = new GetDropdownBox();
 | 
	
		
			
				|  |  |          if (StringUtil.notBlank(param.getOpId())) {
 | 
	
	
		
			
				|  | @@ -62,67 +73,145 @@ public class KeShiShouRuServer {
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  |              page = new Page<>(param.getCurrentPage(), param.getPageSize());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        QueryWrapper<?> qw = new QueryWrapper<>();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          if (param.getLaiYuan() == 0) {
 | 
	
		
			
				|  |  | +            qw.ge("charge_date", param.getStartTime());
 | 
	
		
			
				|  |  | +            qw.le("charge_date", param.getEndTime());
 | 
	
		
			
				|  |  | +            if (ListUtil.notBlank(keShiLieBiao)) {
 | 
	
		
			
				|  |  | +                qw.in("a.exec_unit", keShiLieBiao);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(param.getChargeCodeMx())) {
 | 
	
		
			
				|  |  | +                qw.eq("a.charge_code_mx", param.getChargeCodeMx());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(renHuanCodeHeCodeRs.getCode())) {
 | 
	
		
			
				|  |  | +                qw.eq("a.op_id_code", renHuanCodeHeCodeRs.getCode());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(param.getReqDeptCode())) {
 | 
	
		
			
				|  |  | +                qw.eq("a.ward_code", param.getReqDeptCode());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              switch (param.getFenLei()) {
 | 
	
		
			
				|  |  |                  case 0:
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLei(page, keShiLieBiao, param.getStartTime(),
 | 
	
		
			
				|  |  | -                            param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(),
 | 
	
		
			
				|  |  | -                            param.getReqDeptCode(), "CONVERT(varchar(100), charge_date, 23) charge_date_string"));
 | 
	
		
			
				|  |  | +                    qw.groupBy("CONVERT(varchar(100), charge_date, 23)");
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLeiV2(page,
 | 
	
		
			
				|  |  | +                            qw,
 | 
	
		
			
				|  |  | +                            "CONVERT(varchar(100), charge_date, 23) charge_date_string,"));
 | 
	
		
			
				|  |  |                      qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  |                  case 1:
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLei(page, keShiLieBiao, param.getStartTime(),
 | 
	
		
			
				|  |  | -                            param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(),
 | 
	
		
			
				|  |  | -                            param.getReqDeptCode(), "op_id_code"));
 | 
	
		
			
				|  |  | +                    qw.groupBy("op_id_code");
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLeiV2(page,
 | 
	
		
			
				|  |  | +                            qw,
 | 
	
		
			
				|  |  | +                            "op_id_code,opName = (select rtrim(name) from a_employee_mi where code = op_id_code ),"));
 | 
	
		
			
				|  |  |                      qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  |                  case 2:
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLei(page, keShiLieBiao, param.getStartTime(),
 | 
	
		
			
				|  |  | -                            param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(),
 | 
	
		
			
				|  |  | -                            param.getReqDeptCode(), "charge_code_mx"));
 | 
	
		
			
				|  |  | +                    qw.groupBy("charge_code_mx,serial");
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLeiV2(page,
 | 
	
		
			
				|  |  | +                            qw,
 | 
	
		
			
				|  |  | +                            "charge_code_mx,charge_code_name =(select dbo.get_charge_name(charge_code_mx, serial)),"));
 | 
	
		
			
				|  |  |                      qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  | -                default:
 | 
	
		
			
				|  |  | +                case 3:
 | 
	
		
			
				|  |  | +                    // todo 肖蟾自定义分页插件
 | 
	
		
			
				|  |  | +//                    XcPageHelp<KeShiFeiiYongTongJi> pageHelp = new XcPageHelp<>(1, 40);
 | 
	
		
			
				|  |  | +//                    QueryWrapper<?> qw2 = new QueryWrapper<>();
 | 
	
		
			
				|  |  | +//                    qw2.ge("charge_date", "2023-02-01 00:00:00")
 | 
	
		
			
				|  |  | +//                            .le("charge_date", "2023-02-28 23:59:59");
 | 
	
		
			
				|  |  | +//
 | 
	
		
			
				|  |  | +//                    dao.test(pageHelp, qw2, "3100000");
 | 
	
		
			
				|  |  | +//                    if (true) {
 | 
	
		
			
				|  |  | +//                        return ResultVoUtil.fail(ExceptionEnum.LOGICAL_ERROR, "测试");
 | 
	
		
			
				|  |  | +//                    }
 | 
	
		
			
				|  |  |                      if (param.getTotal() == 0) {
 | 
	
		
			
				|  |  | -                        qp = dao.getKeShiFeiYongZhuYuanTotal(keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                                param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode());
 | 
	
		
			
				|  |  | +                        qp = dao.getKeShiFeiYongZhuYuanTotal(keShiLieBiao, param.getStartTime(), param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode());
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getKeShiFeiYongZhuYuan(param.getCurrentPage(), param.getPageSize(), keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                            param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode()));
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getKeShiFeiYongZhuYuan(param.getCurrentPage(), param.getPageSize(), keShiLieBiao, param.getStartTime(), param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode()));
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                case 4:
 | 
	
		
			
				|  |  | +                    qw.groupBy("a.ward_code");
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getZhuYuanFeiYongXiangMuFenLeiV2(page,
 | 
	
		
			
				|  |  | +                            qw,
 | 
	
		
			
				|  |  | +                            "a.ward_code,wardCodeName = (select rtrim(name) from zd_unit_code where code = a.ward_code),"));
 | 
	
		
			
				|  |  | +                    qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                default:
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  | -            huanZheBiao = "mz_patient_mi";
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(param.getStartTime())) {
 | 
	
		
			
				|  |  | +                qw.ge("confirm_time", param.getStartTime());
 | 
	
		
			
				|  |  | +                qw.le("confirm_time", param.getEndTime());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (ListUtil.notBlank(param.getExecUnitList())) {
 | 
	
		
			
				|  |  | +                qw.in("exec_dept", param.getExecUnitList());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(param.getChargeCodeMx())) {
 | 
	
		
			
				|  |  | +                qw.eq("charge_item_code", param.getChargeCodeMx());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(param.getCode())) {
 | 
	
		
			
				|  |  | +                qw.eq("confirm_id", param.getCode());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if (StringUtil.notBlank(param.getReqDeptCode())) {
 | 
	
		
			
				|  |  | +                qw.eq("warn_dept", param.getReqDeptCode());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              switch (param.getFenLei()) {
 | 
	
		
			
				|  |  |                  case 0:
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getMenZhenFeiYongXiangMuFenLei(page, keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                            param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode(), "CONVERT(varchar(100),charge_date, 23)"));
 | 
	
		
			
				|  |  | +                    qw.groupBy("CONVERT(varchar(100),confirm_time, 23)");
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getMenZhenFeiYongXiangMuFenLeiV2(
 | 
	
		
			
				|  |  | +                            page,
 | 
	
		
			
				|  |  | +                            qw,
 | 
	
		
			
				|  |  | +                            "CONVERT(varchar(100),confirm_time, 23) as charge_date_string,"
 | 
	
		
			
				|  |  | +                    ));
 | 
	
		
			
				|  |  |                      qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  |                  case 1:
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getMenZhenFeiYongXiangMuFenLei(page, keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                            param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode(), "confirm_id"));
 | 
	
		
			
				|  |  | +                    qw.groupBy("confirm_id");
 | 
	
		
			
				|  |  | +                    qp.setData(
 | 
	
		
			
				|  |  | +                            dao.getMenZhenFeiYongXiangMuFenLeiV2(page,
 | 
	
		
			
				|  |  | +                                    qw,
 | 
	
		
			
				|  |  | +                                    "confirm_id,opName = (select rtrim(name) from a_employee_mi where code = confirm_id),")
 | 
	
		
			
				|  |  | +                    );
 | 
	
		
			
				|  |  |                      qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  |                  case 2:
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getMenZhenFeiYongXiangMuFenLei(page, keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                            param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode(), "charge_item_code"));
 | 
	
		
			
				|  |  | +                    qw.groupBy("charge_item_code,group_no");
 | 
	
		
			
				|  |  | +                    qp.setData(
 | 
	
		
			
				|  |  | +                            dao.getMenZhenFeiYongXiangMuFenLeiV2(page,
 | 
	
		
			
				|  |  | +                                    qw,
 | 
	
		
			
				|  |  | +                                    "charge_item_code as charge_code_mx,charge_code_name =(select dbo.get_charge_name(charge_item_code, group_no)),")
 | 
	
		
			
				|  |  | +                    );
 | 
	
		
			
				|  |  |                      qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  | -                default:
 | 
	
		
			
				|  |  | +                case 3:
 | 
	
		
			
				|  |  |                      if (param.getTotal() == 0) {
 | 
	
		
			
				|  |  | -                        qp = dao.getMenZhenFeiYongTotal(keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                                param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode());
 | 
	
		
			
				|  |  | +                        qp = dao.getMenZhenFeiYongTotal(keShiLieBiao, param.getStartTime(), param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode());
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    qp.setData(dao.getMenZhenFeiYong(param.getCurrentPage(), param.getPageSize(), keShiLieBiao, param.getStartTime(), param.getEndTime(),
 | 
	
		
			
				|  |  | -                            param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode()));
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getMenZhenFeiYong(param.getCurrentPage(), param.getPageSize(), keShiLieBiao, param.getStartTime(), param.getEndTime(), param.getChargeCodeMx(), renHuanCodeHeCodeRs.getCode(), renHuanCodeHeCodeRs.getCodeRs(), param.getReqDeptCode()));
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                case 4:
 | 
	
		
			
				|  |  | +                    qw.groupBy("warn_dept");
 | 
	
		
			
				|  |  | +                    qp.setData(dao.getMenZhenFeiYongXiangMuFenLeiV2(
 | 
	
		
			
				|  |  | +                            page,
 | 
	
		
			
				|  |  | +                            qw,
 | 
	
		
			
				|  |  | +                            "warn_dept as wardCode,wardCodeName = (select rtrim(name) from zd_unit_code where code = warn_dept),"));
 | 
	
		
			
				|  |  | +                    qp.setTotal(page.getTotal());
 | 
	
		
			
				|  |  | +                    break;
 | 
	
		
			
				|  |  | +                default:
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |                      break;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -        pingJieZiDuanMingChen(qp, huanZheBiao);
 | 
	
		
			
				|  |  | +//        pingJieZiDuanMingChen(qp, huanZheBiao);
 | 
	
		
			
				|  |  |          return ResultVoUtil.success(qp);
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      private void pingJieZiDuanMingChen(KeShiFeiiYongTongJi qp, String huanZheBiao) {
 | 
	
		
			
				|  |  |          if (qp.getData() != null && !qp.getData().isEmpty()) {
 | 
	
		
			
				|  |  |              Set<String> huanZheHaoSet = new HashSet<>();
 | 
	
	
		
			
				|  | @@ -139,28 +228,18 @@ public class KeShiShouRuServer {
 | 
	
		
			
				|  |  |              });
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            Map<String, String> huanZheXingMingMap = dao.huanZheXingMing(huanZheHaoSet, huanZheBiao)
 | 
	
		
			
				|  |  | -                    .stream()
 | 
	
		
			
				|  |  | -                    .collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  | -            Map<String, String> xiangMuMingChenMap = dao.xiangMuMingChen(xiangMuSet)
 | 
	
		
			
				|  |  | -                    .stream()
 | 
	
		
			
				|  |  | -                    .collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  | +            Map<String, String> huanZheXingMingMap = dao.huanZheXingMing(huanZheHaoSet, huanZheBiao).stream().collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  | +            Map<String, String> xiangMuMingChenMap = dao.xiangMuMingChen(xiangMuSet).stream().collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            Map<String, String> huoQuKeShiMap = dao.huoQuKeShiHuoRenYuan(keShiSet, "zd_unit_code")
 | 
	
		
			
				|  |  | -                    .stream()
 | 
	
		
			
				|  |  | -                    .collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  | +            Map<String, String> huoQuKeShiMap = dao.huoQuKeShiHuoRenYuan(keShiSet, "zd_unit_code").stream().collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              // 获取人员信息
 | 
	
		
			
				|  |  |              List<GetDropdownBox> RenYuan = dao.huoQuKeShiHuoRenYuan(luRuRenSet, "a_employee_mi");
 | 
	
		
			
				|  |  |              // 第一次用 code 匹配
 | 
	
		
			
				|  |  | -            Map<String, String> luRuRenXingMingMap = RenYuan
 | 
	
		
			
				|  |  | -                    .stream()
 | 
	
		
			
				|  |  | -                    .collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  | +            Map<String, String> luRuRenXingMingMap = RenYuan.stream().collect(Collectors.toMap(GetDropdownBox::getCode, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              // 第二次用 code_rs 匹配
 | 
	
		
			
				|  |  | -            Map<String, String> luRuRenXingMingRenShiMap = RenYuan
 | 
	
		
			
				|  |  | -                    .stream()
 | 
	
		
			
				|  |  | -                    .collect(Collectors.toMap(GetDropdownBox::getCodeRs, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  | +            Map<String, String> luRuRenXingMingRenShiMap = RenYuan.stream().collect(Collectors.toMap(GetDropdownBox::getCodeRs, GetDropdownBox::getName, (key1, key2) -> key1));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              qp.getData().forEach(item -> {
 | 
	
		
			
				|  |  |                  if (huanZheXingMingMap.containsKey(item.getPatient())) {
 |