|
@@ -161,19 +161,20 @@ public class NucleicServiceImpl implements NucleicService {
|
|
|
|
|
|
private List<NucleicItemResponseData> getScheduleListCommon(int hospitalId, String deptCode, String doctorCode,
|
|
|
String serviceCode, int startOffset, int endOffset) throws AppMessageException {
|
|
|
- String redisKeyPattern = "SCHEDULE_LIST_%s_%s_%d_%s";
|
|
|
+ //支付宝核酸
|
|
|
+ String redisKeyPattern = "ALI_HS_SCHEDULE_LIST_%s_%s_%d_%s";
|
|
|
String key = String.format(redisKeyPattern, deptCode, doctorCode, hospitalId, serviceCode);
|
|
|
if (startOffset >= 0 && endOffset >= 0) {
|
|
|
- redisKeyPattern = "SCHEDULE_LIST_%s_%s_%d_%s_%d_%d";
|
|
|
+ redisKeyPattern = "ALI_HS_SCHEDULE_LIST_%s_%s_%d_%s_%d_%d";
|
|
|
key = String.format(redisKeyPattern, deptCode, doctorCode, hospitalId, serviceCode, startOffset, endOffset);
|
|
|
}
|
|
|
-// String value = jedisCommands.get(key);
|
|
|
-// if (!StringHelper.isNullOrWhiteSpace(value)) {
|
|
|
-// Map<String, Object> cacheMap = JsonSerializer.from(value, Map.class);
|
|
|
-// if (cacheMap != null) {
|
|
|
-// return cacheMap;
|
|
|
-// }
|
|
|
-// }
|
|
|
+ String value = jedisCommands.get(key);
|
|
|
+ if (!StringHelper.isNullOrWhiteSpace(value)) {
|
|
|
+ List<NucleicItemResponseData> lss = JsonSerializer.from(value, List.class);
|
|
|
+ if (lss != null) {
|
|
|
+ return lss;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
List<Dept> deptList = systemSrv.getDeptListByHospitalId(hospitalId);
|
|
|
if (deptList == null || deptList.size() == 0) {
|
|
@@ -206,9 +207,8 @@ public class NucleicServiceImpl implements NucleicService {
|
|
|
}
|
|
|
List<NucleicItemResponseData> lst = getConvertedScheduleList(hospitalId, startOffset, endOffset, deptCode,
|
|
|
doctorCode, serviceCode);
|
|
|
-
|
|
|
-// jedisCommands.set(key, JsonSerializer.toJson(map));
|
|
|
-// jedisCommands.expire(key, 3 * 60);
|
|
|
+ jedisCommands.set(key, JsonSerializer.toJson(lst));
|
|
|
+ jedisCommands.expire(key, 3 * 60);
|
|
|
return lst;
|
|
|
}
|
|
|
|
|
@@ -241,27 +241,8 @@ public class NucleicServiceImpl implements NucleicService {
|
|
|
} else {
|
|
|
scheduleList = new LinkedList<>();
|
|
|
}
|
|
|
-// // 单日查询的情况
|
|
|
-// if (startOffset == endOffset) {
|
|
|
-// Calendar c = Calendar.getInstance();
|
|
|
-// if (startOffset > 0) {
|
|
|
-// c.add(Calendar.DATE, startOffset);
|
|
|
-// }
|
|
|
-// String strDate = DateUtil.formatDate(c.getTime(), "yyyy-MM-dd"); //日期
|
|
|
-// List<Map<String, Object>> list = new ArrayList<>();
|
|
|
-// list.add(convertToScheduleMap(scheduleList, c, strDate, 0, hospitalId));
|
|
|
-// return list;
|
|
|
-// } else {
|
|
|
+
|
|
|
return convertToScheduleMap(scheduleList, hospitalId);
|
|
|
-// return IntStream.range(startOffset, endOffset).mapToObj(offset -> {
|
|
|
-// Calendar c = Calendar.getInstance();
|
|
|
-// if (offset > 0) {
|
|
|
-// c.add(Calendar.DATE, offset);
|
|
|
-// }
|
|
|
-// String strDate = DateUtil.formatDate(c.getTime(), "yyyy-MM-dd"); //日期
|
|
|
-// return convertToScheduleMap(scheduleList.stream().filter(s -> strDate.equals(s.getServiceDate())).collect(Collectors.toList()),
|
|
|
-// c, strDate, offset, hospitalId);
|
|
|
-// }).collect(Collectors.toList());
|
|
|
|
|
|
}
|
|
|
|
|
@@ -282,15 +263,9 @@ public class NucleicServiceImpl implements NucleicService {
|
|
|
int doctorId;
|
|
|
boolean hasScheduling = scheduleList.size() > 0; //当期日期是否有排班
|
|
|
|
|
|
-// Map<String, Object> groupMap = new HashMap<>();
|
|
|
-// groupMap.put("serviceDate", strDate);
|
|
|
-// groupMap.put("offset", offset);
|
|
|
-// groupMap.put("week", DateUtil.getDayOfWeekShort(calendar));
|
|
|
|
|
|
for (Schedule s : scheduleList) {
|
|
|
-// if (doctorList.stream().noneMatch(p -> s.getDoctorCode().equals(p.getDoctorCode()))) {
|
|
|
-// continue;
|
|
|
-// }
|
|
|
+
|
|
|
|
|
|
doctorId = 0;
|
|
|
avatar = Constants.DOCTOR_AVATAR_URL;
|
|
@@ -313,102 +288,24 @@ public class NucleicServiceImpl implements NucleicService {
|
|
|
data.setFee(Checker.getIntegerValue(fee));
|
|
|
String feeStr = fee.toString();
|
|
|
data.setNucleicItemFee(feeStr);
|
|
|
- data.setNucleicItemDesc(s.getServiceDate() + " " + s.getDatePeriodName());
|
|
|
- data.setNucleicItemName(s.getDoctorName());
|
|
|
- data.setStartTime(s.getStartTime());
|
|
|
- data.setEndTime(s.getEndTime());
|
|
|
+ data.setNucleicItemDesc(Checker.getStringValue(s.getServiceDate()) + " " + Checker.getStringValue(s.getDatePeriodName()));
|
|
|
+ data.setNucleicItemName(Checker.getStringValue(s.getDoctorName()));
|
|
|
+ data.setStartTime(Checker.getStringValue(s.getStartTime()));
|
|
|
+ data.setEndTime(Checker.getStringValue(s.getEndTime()));
|
|
|
data.setDatePeriod(s.getDatePeriod());
|
|
|
- data.setDeptCode(s.getDeptCode());
|
|
|
- data.setAvailableNumStr(s.getAvailableNumStr());
|
|
|
- data.setDeptName(s.getDeptName());
|
|
|
- data.setDoctorCode(s.getDoctorCode());
|
|
|
- data.setDoctorName(s.getDoctorName());
|
|
|
- data.setNucleicItemId(s.getScheduleItemCode());
|
|
|
-
|
|
|
-// scheduleMap.put("scheduleItemCode", s.getScheduleItemCode()); //门诊排班项记录标识
|
|
|
-// scheduleMap.put("serviceDate", s.getServiceDate()); //门诊排班日期(yyyy-MM-dd)
|
|
|
-// scheduleMap.put("datePeriod", s.getDatePeriod()); //排班时段代码
|
|
|
-// scheduleMap.put("datePeriodName", s.getDatePeriodName()); //排班时段名称
|
|
|
-// scheduleMap.put("deptCode", s.getDeptCode()); //科室代码
|
|
|
-// scheduleMap.put("deptName", s.getDeptName()); //科室名称
|
|
|
-// scheduleMap.put("doctorCode", s.getDoctorCode()); //医生代码
|
|
|
-// scheduleMap.put("doctorName", s.getDoctorName()); //医生名称
|
|
|
-// scheduleMap.put("doctorId", doctorId); //医生Id
|
|
|
-// scheduleMap.put("avatar", avatar); //医生图片链接
|
|
|
-// scheduleMap.put("doctorTitle", s.getDoctorTitle()); //医生职称
|
|
|
-// scheduleMap.put("doctorSpec", s.getDoctorSpec()); //医生专长
|
|
|
-// scheduleMap.put("fee", s.getFee()); //预约挂号总费用
|
|
|
-// scheduleMap.put("regFee", s.getRegFee()); //挂号费
|
|
|
-// scheduleMap.put("checkupFee", s.getCheckupFee()); //诊查费
|
|
|
-// scheduleMap.put("serviceFee", s.getServiceFee()); //服务费
|
|
|
-// scheduleMap.put("otherFee", s.getOtherFee()); //其它费
|
|
|
-// scheduleMap.put("admitAddress", s.getAdmitAddress()); //就诊地址
|
|
|
-// scheduleMap.put("scheduleStatus", s.getScheduleStatus()); //出诊状态(1-可预约 0-已满 2-停诊 3-其它(不可预约))
|
|
|
-// scheduleMap.put("availableTotalNum", s.getAvailableTotalNum()); //该时段可预约的总号源数
|
|
|
-// scheduleMap.put("availableLeftNum", s.getAvailableLeftNum()); //该时段剩余号源数
|
|
|
-// scheduleMap.put("serviceName", s.getServiceName()); //亚专科名称
|
|
|
-// scheduleMap.put("serviceCode", s.getServiceCode()); //亚专科代码
|
|
|
-//
|
|
|
-// String statusName = "";
|
|
|
-//
|
|
|
-// switch (s.getScheduleStatus()) {
|
|
|
-// case 1:
|
|
|
-// statusName = "可预约";
|
|
|
-// break;
|
|
|
-// case 0:
|
|
|
-// statusName = "已满";
|
|
|
-// break;
|
|
|
-// case 2:
|
|
|
-// statusName = "停诊";
|
|
|
-// break;
|
|
|
-// default:
|
|
|
-// statusName = "停诊";
|
|
|
-// break;
|
|
|
-// }
|
|
|
-//
|
|
|
-// scheduleMap.put("scheduleStatusName", statusName);
|
|
|
-//
|
|
|
-// switch (s.getDatePeriod()) {
|
|
|
-// case 2:
|
|
|
-// forenoonList.add(scheduleMap);
|
|
|
-// break;
|
|
|
-// case 3:
|
|
|
-// afternoonList.add(scheduleMap);
|
|
|
-// break;
|
|
|
-// case 4:
|
|
|
-// nightList.add(scheduleMap);
|
|
|
-// break;
|
|
|
-// case 5:
|
|
|
-// afterMidnightList.add(scheduleMap);
|
|
|
-// break;
|
|
|
-// case 6: //午间排班记录返回数
|
|
|
-// midnoonList.add(scheduleMap);
|
|
|
-// break;
|
|
|
-//
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-// groupMap.put("hasScheduling", hasScheduling ? 1 : 0); //当期日期是否有排班
|
|
|
-// groupMap.put("forenoonSchedules", forenoonList); //上午排班记录
|
|
|
-// groupMap.put("afternoonSchedules", afternoonList); //下午排班记录
|
|
|
-// groupMap.put("nightSchedules", nightList); //晚上排班记录
|
|
|
-// groupMap.put("afterMidnightSchedules", afterMidnightList); //晚上排班记录
|
|
|
-// groupMap.put("midnoonSchedules", midnoonList); //午间排班记录
|
|
|
-// return groupMap;
|
|
|
-// return data;
|
|
|
+ data.setDeptCode(Checker.getStringValue(s.getDeptCode()));
|
|
|
+ data.setAvailableNumStr(Checker.getStringValue(s.getAvailableNumStr()));
|
|
|
+ data.setDeptName(Checker.getStringValue(s.getDeptName()));
|
|
|
+ data.setDoctorCode(Checker.getStringValue(s.getDoctorCode()));
|
|
|
+ data.setDoctorName(Checker.getStringValue(s.getDoctorName()));
|
|
|
+ data.setNucleicItemId(Checker.getStringValue(s.getScheduleItemCode()));
|
|
|
list.add(data);
|
|
|
}
|
|
|
return list;
|
|
|
}
|
|
|
|
|
|
|
|
|
-// private GetDoctorByHisCodeResponse getDoctorByHisCode (String doctorCode,int hospitalId){
|
|
|
-// GetDoctorByHisCodeRequest getDoctorByHisCodeRequest = GetDoctorByHisCodeRequest.newBuilder()
|
|
|
-// .setHospitalId(hospitalId)
|
|
|
-// .setHisCode(doctorCode)
|
|
|
-// .build();
|
|
|
-// return doctorServiceBlockingStub.getDoctorByHisCode(getDoctorByHisCodeRequest);
|
|
|
-// }
|
|
|
+
|
|
|
|
|
|
private GetDoctorByHisCodeResponse getDoctorByHisCode(String doctorCode, int hospitalId) {
|
|
|
GetDoctorByHisCodeRequest getDoctorByHisCodeRequest = GetDoctorByHisCodeRequest.newBuilder()
|