|  | @@ -829,6 +829,101 @@ public class MedicalViewApiController {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    /**
 | 
	
		
			
				|  |  | +     * 门诊挂号记录查询
 | 
	
		
			
				|  |  | +     *
 | 
	
		
			
				|  |  | +     * @param mzyReqrec
 | 
	
		
			
				|  |  | +     * @return
 | 
	
		
			
				|  |  | +     */
 | 
	
		
			
				|  |  | +    @RequestMapping(value = "/getRegistrationForPaid", method = {RequestMethod.POST})
 | 
	
		
			
				|  |  | +    public Map<String, Object> getRegistrationForPaid(@RequestBody MzyReqrec mzyReqrec) {
 | 
	
		
			
				|  |  | +        Map<String, Object> results = new HashMap<>();
 | 
	
		
			
				|  |  | +        if (mzyReqrec == null) {
 | 
	
		
			
				|  |  | +            results.put("resultCode", -1);
 | 
	
		
			
				|  |  | +            results.put("resultMessage", "门诊挂号记录查询参数为空");
 | 
	
		
			
				|  |  | +            return results;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        if (mzyReqrec.getPatientId() == null) {
 | 
	
		
			
				|  |  | +            results.put("resultCode", -1);
 | 
	
		
			
				|  |  | +            results.put("resultMessage", "患者ID不能为空");
 | 
	
		
			
				|  |  | +            return results;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        try {
 | 
	
		
			
				|  |  | +            mzyReqrec.setOpId(Constants.BRZZJF_CODE);
 | 
	
		
			
				|  |  | +            MzyReqrecPageDto mzyReqrecPageDto = new MzyReqrecPageDto();
 | 
	
		
			
				|  |  | +            mzyReqrecPageDto.setPageSize(1000);
 | 
	
		
			
				|  |  | +            mzyReqrecPageDto.setMzyReqrec(mzyReqrec);
 | 
	
		
			
				|  |  | +            mzyReqrecPageDto.setPatientIds(Arrays.asList(mzyReqrec.getPatientId()));
 | 
	
		
			
				|  |  | +            mzyReqrecPageDto.setTableName("mzy_reqrec");
 | 
	
		
			
				|  |  | +            List<MzyReqrec> mzyReqrecList = mzyReqrecService.queryMzyReqrecWithPage(mzyReqrecPageDto);
 | 
	
		
			
				|  |  | +            List<Map<String,Object>> list = new ArrayList<>();
 | 
	
		
			
				|  |  | +            Map<String, String> employeeMap = null;
 | 
	
		
			
				|  |  | +            Set<String> set = new HashSet<>();
 | 
	
		
			
				|  |  | +            employeeMap = getStringStringMap(mzyReqrecList, list, employeeMap, set);
 | 
	
		
			
				|  |  | +            mzyReqrecPageDto.setTableName("mzy_reqrec_b");
 | 
	
		
			
				|  |  | +            mzyReqrecList = mzyReqrecService.queryMzyReqrecWithPage(mzyReqrecPageDto);
 | 
	
		
			
				|  |  | +            getStringStringMap(mzyReqrecList, list, employeeMap, set);
 | 
	
		
			
				|  |  | +            if (list == null || list.size() == 0) {
 | 
	
		
			
				|  |  | +                results.put("resultCode", -1);
 | 
	
		
			
				|  |  | +                results.put("resultMessage", "未查询到挂号记录");
 | 
	
		
			
				|  |  | +                return results;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            results.put("resultCode", 0);
 | 
	
		
			
				|  |  | +            results.put("resultMessage", "挂号记录查询成功");
 | 
	
		
			
				|  |  | +            results.put("data", list);
 | 
	
		
			
				|  |  | +            return results;
 | 
	
		
			
				|  |  | +        } catch (Exception e) {
 | 
	
		
			
				|  |  | +            e.printStackTrace();
 | 
	
		
			
				|  |  | +            results.put("resultCode", -1);
 | 
	
		
			
				|  |  | +            results.put("resultMessage", "门诊挂号记录查询失败,请联系管理员,错误信息{"+e.getMessage()+"}");
 | 
	
		
			
				|  |  | +            log.error("系统异常,错误信息{}", e.getMessage());
 | 
	
		
			
				|  |  | +            return results;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    private Map<String, String> getStringStringMap(List<MzyReqrec> mzyReqrecList, List<Map<String, Object>> list, Map<String, String> employeeMap, Set<String> set) {
 | 
	
		
			
				|  |  | +        if(mzyReqrecList!=null && mzyReqrecList.size()>0){
 | 
	
		
			
				|  |  | +            if (employeeMap == null) {
 | 
	
		
			
				|  |  | +                List<Employee> employees = employeeService.queryAll();
 | 
	
		
			
				|  |  | +                if (employees != null) {
 | 
	
		
			
				|  |  | +                    employeeMap = employees.stream().collect(Collectors.toMap(Employee::getEmployeeCode, Employee::getEmployeeName));
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            for (MzyReqrec mr:mzyReqrecList){
 | 
	
		
			
				|  |  | +                if(set.contains(mr.getPsordnum())){
 | 
	
		
			
				|  |  | +                    continue;
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                Map<String,Object> map = new HashMap<>();
 | 
	
		
			
				|  |  | +                map.put("patientId",mr.getPatientId());
 | 
	
		
			
				|  |  | +                map.put("doctorName",employeeMap.get(mr.getDoctorCode()));
 | 
	
		
			
				|  |  | +                map.put("unitName",zdUnitCodeService.queryDeptNameByIdInCache(mr.getUnitCode()));
 | 
	
		
			
				|  |  | +                map.put("requestDay",DateUtil.fomart(mr.getRequestDay(),"yyyy-MM-dd HH:mm:ss"));
 | 
	
		
			
				|  |  | +                if (StringUtils.isNotBlank(mr.getChargeType())) {
 | 
	
		
			
				|  |  | +                    MzyZdChargeType mzyZdChargeType = mzyZdChargeTypeService.queryByCode(mr.getChargeType());
 | 
	
		
			
				|  |  | +                    if (mzyZdChargeType != null) {
 | 
	
		
			
				|  |  | +                        map.put("chargeType", mzyZdChargeType.getName());
 | 
	
		
			
				|  |  | +                    }else {
 | 
	
		
			
				|  |  | +                        map.put("chargeType","");
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                BigDecimal fee=BigDecimal.ZERO;
 | 
	
		
			
				|  |  | +                if (mr.getReqFee() == null) {
 | 
	
		
			
				|  |  | +                    mr.setReqFee(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                if (mr.getClinicFee() == null) {
 | 
	
		
			
				|  |  | +                    mr.setClinicFee(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                if (mr.getOthFee() == null) {
 | 
	
		
			
				|  |  | +                    mr.setOthFee(BigDecimal.ZERO);
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +                fee = fee.add(mr.getReqFee()).add(mr.getClinicFee()).add(mr.getOthFee());
 | 
	
		
			
				|  |  | +                map.put("fee",fee);
 | 
	
		
			
				|  |  | +                list.add(map);
 | 
	
		
			
				|  |  | +                set.add(mr.getPatientId());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        return employeeMap;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      /**
 |