Index: ssts-web/src/main/webapp/disinfectsystem/config/gzszyy/spring/HIS.xml =================================================================== diff -u -r37700 -r37971 --- ssts-web/src/main/webapp/disinfectsystem/config/gzszyy/spring/HIS.xml (.../HIS.xml) (revision 37700) +++ ssts-web/src/main/webapp/disinfectsystem/config/gzszyy/spring/HIS.xml (.../HIS.xml) (revision 37971) @@ -1,4 +1,4 @@ - + + + - \ No newline at end of file Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/datasynchronization/dao/gzszyy/InvoicePlanDaoImpl.java =================================================================== diff -u --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/datasynchronization/dao/gzszyy/InvoicePlanDaoImpl.java (revision 0) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/datasynchronization/dao/gzszyy/InvoicePlanDaoImpl.java (revision 37971) @@ -0,0 +1,160 @@ +package com.forgon.disinfectsystem.datasynchronization.dao.gzszyy; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang.StringUtils; + +import com.forgon.databaseadapter.service.DateQueryAdapter; +import com.forgon.disinfectsystem.entity.operationreservation.SurgerySchedule; +import com.forgon.disinfectsystem.inventorymanagement.dao.InvoicePlanDao; +import com.forgon.disinfectsystem.inventorymanagement.model.HrpInvoicePlan; +import com.forgon.disinfectsystem.inventorymanagement.model.HrpTousseItem; +import com.forgon.tools.date.DateTools; +import com.forgon.tools.hibernate.ObjectDao; + +public class InvoicePlanDaoImpl implements InvoicePlanDao{ + + private ObjectDao objectDao; + + private DateQueryAdapter dateQueryAdapter; + + public void setObjectDao(ObjectDao objectDao) { + this.objectDao = objectDao; + } + + public void setDateQueryAdapter(DateQueryAdapter dateQueryAdapter) { + this.dateQueryAdapter = dateQueryAdapter; + } + + @Override + public HrpInvoicePlan[] findInvoicePlanByTimeAndPage(Date startDate, + Date endDate, int pagesize, int pagenumber, + List serialNumbers) { + // TODO Auto-generated method stub + return null; + } + + @Override + public int findInvoicePlanTotalByTime(Date startDate, Date endDate, + List serialNumbers) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public HrpTousseItem[] findTousseItemBySerialNumber(String serialNumber) { + // TODO Auto-generated method stub + return null; + } + + @Override + public HrpInvoicePlan findHrpInvoicePlanBySerialNumber(String serialNumber) { + // TODO Auto-generated method stub + return null; + } + + @Override + public HrpInvoicePlan[] findHrpInvoicePlanByTime(Date startDate, + Date endDate, List serialNumbers) { + // TODO Auto-generated method stub + return null; + } + + @SuppressWarnings("unchecked") + @Override + public List findHrpInvoicePlanByTimes(Date startDate, Date endDate) { + if(startDate == null || endDate == null){ + return null; + } + StringBuffer sql = new StringBuffer(); + sql.append("select po from "); + sql.append(SurgerySchedule.class.getSimpleName()); + sql.append(" po where "); + sql.append(dateQueryAdapter.dateAreaSql("po.scheduleTime" + , DateTools.getFormatDateStr(startDate, DateTools.COMMON_DATE_HMS) + , DateTools.getFormatDateStr(endDate, DateTools.COMMON_DATE_HMS))); + List surgeryScheduleList = objectDao.findByHql(sql.toString()); + if(CollectionUtils.isEmpty(surgeryScheduleList)){ + return null; + } + + //未安排+已安排+已完成 + List hrpInvoicePlanList = new ArrayList(); + for (SurgerySchedule surgerySchedule : surgeryScheduleList) { + HrpInvoicePlan hrpInvoicePlan = new HrpInvoicePlan(); + hrpInvoicePlan.setSerialNumber(surgerySchedule.getSurgeryScheduleId()); + hrpInvoicePlan.setConsoleName(surgerySchedule.getSurgeryScheduleTimes()); + hrpInvoicePlan.setOperationTime(surgerySchedule.getScheduleTime()); + hrpInvoicePlan.setHospitalNumber(surgerySchedule.getHospitalNumber()); + setScheduleStatus(hrpInvoicePlan, surgerySchedule); + hrpInvoicePlanList.add(hrpInvoicePlan); + } + return hrpInvoicePlanList; + } + + /** + * 返回手术状态 + * @param hrpInvoicePlan + * @param surgerySchedule + */ + private void setScheduleStatus(HrpInvoicePlan hrpInvoicePlan, SurgerySchedule surgerySchedule) { + String scheduleStatus = surgerySchedule.getSurgeryStatus(); + if(StringUtils.equals(scheduleStatus, SurgerySchedule.SURGERY_STATUS_COMPLETE)){ + scheduleStatus = HrpInvoicePlan.SCHEDULE_STATUS_FINISH; + }else if(StringUtils.equals(scheduleStatus, SurgerySchedule.SURGERY_STATUS_BOOKED)){ + scheduleStatus = HrpInvoicePlan.SCHEDULE_STATUS_SCHEDULED; + }else if(StringUtils.equals(scheduleStatus, SurgerySchedule.SURGERY_STATUS_CANCELLED) + || StringUtils.equals(scheduleStatus, SurgerySchedule.SURGERY_STATUS_DELETED)){ + scheduleStatus = HrpInvoicePlan.SCHEDULE_STATUS_CANCEL; + }else if(StringUtils.equals(scheduleStatus, SurgerySchedule.SURGERY_STATUS_WAITLIST)){ + scheduleStatus = HrpInvoicePlan.SCHEDULE_STATUS_APPLICATION; + } + hrpInvoicePlan.setScheduleStatus(scheduleStatus); + } + + @Override + public List findHrpInvoicePlanByTimeAndDepartCoding( + Date startDate, Date endDate, String departCoding) { + // TODO Auto-generated method stub + return null; + } + + @Override + public HrpInvoicePlan[] findHrpInvoicePlanpListByAppliedSerialNumbers( + List serialNumbers) { + // TODO Auto-generated method stub + return null; + } + + @Override + public List findSyncOperationReservationBySerialNumbers( + List serialNumbers) { + // TODO Auto-generated method stub + return null; + } + + @Override + public List findSyncOperationReservationByTimes( + Date startDate, Date endDate) { + // TODO Auto-generated method stub + return null; + } + + @Override + public List findSyncInvoicePlanByTimeAndRecordState( + Date startDate, Date endDate, String recordState) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void updateSyncInvoicePlanState(String recordState, + String serialNumber) { + // TODO Auto-generated method stub + + } + +} Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/operationreservation/service/OperationReservationManagerImpl.java =================================================================== diff -u -r37427 -r37971 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/operationreservation/service/OperationReservationManagerImpl.java (.../OperationReservationManagerImpl.java) (revision 37427) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/operationreservation/service/OperationReservationManagerImpl.java (.../OperationReservationManagerImpl.java) (revision 37971) @@ -115,6 +115,9 @@ @Autowired(required=false) private InvoicePlanDao invoicePlanDao; + @Autowired(required=false) + private InvoicePlanDao invoicePlanDao2; + public void setDateQueryAdapter(DateQueryAdapter dateQueryAdapter) { this.dateQueryAdapter = dateQueryAdapter; } @@ -1366,16 +1369,25 @@ @Override public List findTodayOperationReservaton() { + Calendar startTime = Calendar.getInstance(); + Calendar endTime = Calendar.getInstance(); + startTime.set(Calendar.HOUR_OF_DAY, 0); + startTime.set(Calendar.MINUTE, 0); + startTime.set(Calendar.SECOND, 0); + endTime.set(Calendar.HOUR_OF_DAY, 23); + endTime.set(Calendar.MINUTE, 59); + endTime.set(Calendar.SECOND, 59); + if(invoicePlanDao2 != null){ + List hrpInvoicePlanList = invoicePlanDao2.findHrpInvoicePlanByTimes(startTime.getTime(), endTime.getTime()); + if(CollectionUtils.isNotEmpty(hrpInvoicePlanList)){ + return hrpInvoicePlanList; + } + } if(invoicePlanDao != null){ - Calendar startTime = Calendar.getInstance(); - Calendar endTime = Calendar.getInstance(); - startTime.set(Calendar.HOUR_OF_DAY, 0); - startTime.set(Calendar.MINUTE, 0); - startTime.set(Calendar.SECOND, 0); - endTime.set(Calendar.HOUR_OF_DAY, 23); - endTime.set(Calendar.MINUTE, 59); - endTime.set(Calendar.SECOND, 59); - return invoicePlanDao.findHrpInvoicePlanByTimes(startTime.getTime(), endTime.getTime()); + List hrpInvoicePlanList = invoicePlanDao.findHrpInvoicePlanByTimes(startTime.getTime(), endTime.getTime()); + if(CollectionUtils.isNotEmpty(hrpInvoicePlanList)){ + return hrpInvoicePlanList; + } } return null; }