Index: ssts-web/src/main/resources/systemset/operationDefine.xml =================================================================== diff -u -r18066 -r18094 --- ssts-web/src/main/resources/systemset/operationDefine.xml (.../operationDefine.xml) (revision 18066) +++ ssts-web/src/main/resources/systemset/operationDefine.xml (.../operationDefine.xml) (revision 18094) @@ -324,6 +324,7 @@ + Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r18088 -r18094 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 18088) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 18094) @@ -187,6 +187,7 @@ import com.forgon.disinfectsystem.jasperreports.javabeansource.TousseSterilizationInspectSituationBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.TousseWorkLoadChildVO; import com.forgon.disinfectsystem.jasperreports.javabeansource.TousseWorkLoadVO; +import com.forgon.disinfectsystem.jasperreports.javabeansource.UrgentNeedGoodsProcessingCycle; import com.forgon.disinfectsystem.jasperreports.javabeansource.UseRecordBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.UseRecordEnteringBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.UseRecordEnteringTousse; @@ -15014,7 +15015,7 @@ if(StringUtils.isNotBlank(endTime) && endTime.trim().length() == 16){ endTime = endTime + ":59"; } - String betweenSql = dateQueryAdapter.dateAreaSql("ore.operationTime", startTime, endTime); + String betweenSql = "and " + dateQueryAdapter.dateAreaSql("ore.operationTime", startTime, endTime); String operatingRoomSql = ""; if (StringTools.isNotBlank(operationRoomName)) { @@ -15024,7 +15025,7 @@ String sql = String.format("select oro.id operationRoomId,oro.orgUnitName orgUnitName,oro.operationRoomName,ore.id operationReservationId,ore.operationTime,ore.consoleName,ti.tousseName,ti.amount " + "from OperationReservation ore join TousseItem ti on ti.recyclingApplication_ID=ore.id " + "join OperationRoom oro on oro.operationRoomName=ore.operatingRoom " - + "where %s %s and oro.isInvoice='%s' order by ore.operationTime", betweenSql, operatingRoomSql, Constants.STR_YES); + + "where oro.isInvoice='%s' %s %s order by ore.operationTime", Constants.STR_YES, betweenSql, operatingRoomSql); ResultSet result = objectDao.executeSql(sql); Map map1 = new LinkedHashMap(); @@ -15126,7 +15127,7 @@ if(StringUtils.isNotBlank(endTime) && endTime.trim().length() == 16){ endTime = endTime + ":59"; } - String betweenSql = dateQueryAdapter.dateAreaSql("ore.operationTime", startTime, endTime); + String betweenSql = "and " + dateQueryAdapter.dateAreaSql("ore.operationTime", startTime, endTime); String operatingRoomSql = ""; if (StringTools.isNotBlank(operationRoomName)) { @@ -15136,8 +15137,8 @@ String sql = String.format("select oro.id operationRoomId,oro.orgUnitName,oro.operationRoomName,ore.id operationReservationId,ore.operationTime,ti.tousseName,sum(ti.amount) amount " + "from OperationReservation ore join TousseItem ti on ti.recyclingApplication_ID=ore.id " + "join OperationRoom oro on oro.operationRoomName=ore.operatingRoom " - + "where %s %s and oro.isInvoice='%s' group by oro.id,oro.orgUnitName,oro.operationRoomName,ore.id,ore.operationTime,ti.tousseName order by ore.operationTime", - betweenSql, operatingRoomSql, Constants.STR_YES); + + "where oro.isInvoice='%s' %s %s group by oro.id,oro.orgUnitName,oro.operationRoomName,ore.id,ore.operationTime,ti.tousseName order by ore.operationTime", + Constants.STR_YES, betweenSql, operatingRoomSql); ResultSet result = objectDao.executeSql(sql); Map map1 = new LinkedHashMap(); @@ -15299,4 +15300,110 @@ } } + @Override + public List getUrgentNeedGoodsProcessingCycleData( + String startTime, String endTime, String tousseName) { + List list = new ArrayList(); + if (StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)) { + String betweenSql = "and " + dateQueryAdapter.dateAreaSql("rr.recyclingTime", startTime, endTime, true); + + String tousseNameSql = ""; + if (StringTools.isNotBlank(tousseName)) { + tousseNameSql += String.format("and ri.tousseName='%s'", tousseName); + } + + String sql = String.format("select * from (" + + "select distinct ri.tousseName,ttr.transitionTime tousseTransitionTime,rr.recyclingTime,wtr.transitionTime washTransitionTime," + + "tin.operationTime,sr.startDate,sr.endDate,tin.invoiceSendTime,case when ti.urgentLevel='特急' then '特急' else '加急' end urgentLevel," + + "tin.id,bd.barcode,tin.idCardInstanceBarcode,s.ownGroup " + + "from RecyclingRecord rr " + + "join RecyclingItem ri on ri.recyclingRecord_id=rr.id " + + "join TousseItem ti on ti.recyclingApplication_ID=rr.recyclingApplication_id " + + "left join TousseTransitionRecord ttr on ttr.recyclingApplicationId=rr.recyclingApplication_id " + + "left join TousseTransitionItem tti on tti.tousseTransitionRecordId=ttr.id " + + "left join WashTransitionItem wti on wti.idCardBarcode=tti.idCardInstanceBarcode " + + "left join WashTransitionRecord wtr on wtr.id=wti.washTransitionRecordId " + + "left join TousseInstance tin on tin.recyclingRecordId=rr.id " + + "left join barcodeDevice bd on bd.id=tin.id " + + "left join SterilizationRecord sr on sr.id=tin.sterilizationRecord_id " + + "left join Sterilizer s on s.id=sr.sterilizer_id " + + "where ri.urgentAmount>0 and ((tin.id is null) or (tin.id is not null and tin.isUrgentTousse='%s')) %s %s" + + ") t order by t.recyclingTime", + Constants.STR_YES, betweenSql, tousseNameSql); + ResultSet result = objectDao.executeSql(sql); + try { + while(result.next()){ + String name = StringTools.defaultString(result.getString("tousseName")); + String urgentLevel = StringTools.defaultString(result.getString("urgentLevel")); + String barcode = StringTools.defaultString(result.getString("barcode")); + String idCardInstanceBarcode = StringTools.defaultString(result.getString("idCardInstanceBarcode")); + String ownGroup = StringTools.defaultString(result.getString("ownGroup")); + + String recyclingTime = ForgonDateUtils.safelyFormatDate(result.getTimestamp("recyclingTime"), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMM, + ForgonDateUtils.safelyFormatDate(result.getTimestamp("washTransitionTime"), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMM, "")); + String invoiceSendTime = ForgonDateUtils.safelyFormatDate(result.getTimestamp("invoiceSendTime"), ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMM, ""); + + Date tousseTransitionDateTime = result.getTimestamp("tousseTransitionTime"); + Date recyclingDateTime = result.getTimestamp("recyclingTime"); + Date washTransitionDateTime = result.getTimestamp("washTransitionTime"); + Date operationDateTime = result.getTimestamp("operationTime"); + Date startDateTime = result.getTimestamp("startDate"); + Date endDateTime = result.getTimestamp("endDate"); + Date invoiceSendDateTime = result.getTimestamp("invoiceSendTime"); + if (tousseTransitionDateTime != null) { //如果有预回收的时间,则取之 + recyclingDateTime = tousseTransitionDateTime; + } + + UrgentNeedGoodsProcessingCycle bean = new UrgentNeedGoodsProcessingCycle(); + //计算总时长 + if (recyclingDateTime != null && invoiceSendDateTime != null) { + Long totalDuration = (invoiceSendDateTime.getTime() - recyclingDateTime.getTime())/1000/60; + bean.setTotalDuration(totalDuration.intValue()); + } + //计算回收到清洗交接时长 + if (recyclingDateTime != null && washTransitionDateTime != null) { + Long recyclingToWashTransitionDuration = (washTransitionDateTime.getTime() - recyclingDateTime.getTime())/1000/60; + bean.setRecyclingToWashTransitionDuration(Math.abs(recyclingToWashTransitionDuration.intValue())); + } + //计算装配到灭菌时长 + if (operationDateTime != null && startDateTime != null) { + Long packingToSterilizationDuration = (startDateTime.getTime() - operationDateTime.getTime())/1000/60; + bean.setPackingToSterilizationDuration(packingToSterilizationDuration.intValue()); + } + //计算灭菌时长 + if (startDateTime != null && endDateTime != null) { + Long sterilizationDuration = (endDateTime.getTime() - startDateTime.getTime())/1000/60; + bean.setSterilizationDuration(sterilizationDuration.intValue()); + } + //计算灭菌到发货时长 + if (endDateTime != null && invoiceSendDateTime != null) { + Long sterilizationToDeliveryDuration = (invoiceSendDateTime.getTime() - endDateTime.getTime())/1000/60; + bean.setSterilizationToDeliveryDuration(sterilizationToDeliveryDuration.intValue()); + } + + if (StringTools.isNotBlank(recyclingTime)) { + bean.setRecyclingDate(recyclingTime.substring(0, 10)); + bean.setRecyclingTime(recyclingTime.substring(11)); + } + if (StringTools.isNotBlank(invoiceSendTime)) { + bean.setDeliveryTime(invoiceSendTime.substring(11)); + } + bean.setGoodsName(name); + bean.setUrgentLevel(urgentLevel); + bean.setBarcode(barcode); + bean.setIdCardInstanceBarcode(idCardInstanceBarcode); + bean.setSterilerGroup(ownGroup); + + list.add(bean); + } + } catch (SQLException e) { + e.printStackTrace(); + }finally { + DatabaseUtil.closeResultSetAndStatement(result); + } + } + + return list; + } + } Index: ssts-web/src/main/webapp/jasperRtp/urgentNeedGoodsProcessingCycle.jasper =================================================================== diff -u Binary files differ Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.jsp =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.jsp (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.jsp (revision 18094) @@ -0,0 +1,26 @@ +<%@page contentType="text/html; charset=UTF-8"%> +<%@include file="/common/taglibs.jsp"%> +<%@include file="/common/includeExtJsAndCss.jsp"%> + + + + + + + + + +急用物品处理周期统计报表 + + + + + + + +
+
+
+ + \ No newline at end of file Index: ssts-web/src/main/webapp/jasperRtp/urgentNeedGoodsProcessingCycle.jrxml =================================================================== diff -u --- ssts-web/src/main/webapp/jasperRtp/urgentNeedGoodsProcessingCycle.jrxml (revision 0) +++ ssts-web/src/main/webapp/jasperRtp/urgentNeedGoodsProcessingCycle.jrxml (revision 18094) @@ -0,0 +1,434 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <band height="38" splitType="Stretch"> + <textField> + <reportElement uuid="92583da9-df82-4d1e-8401-fb9282ba8645" x="0" y="0" width="1300" height="38"/> + <textElement textAlignment="Center" verticalAlignment="Middle"> + <font size="14" isBold="true"/> + </textElement> + <textFieldExpression><![CDATA[$P{title}]]></textFieldExpression> + </textField> + </band> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Index: ssts-web/src/main/webapp/homepage/menu.jsp =================================================================== diff -u -r18066 -r18094 --- ssts-web/src/main/webapp/homepage/menu.jsp (.../menu.jsp) (revision 18066) +++ ssts-web/src/main/webapp/homepage/menu.jsp (.../menu.jsp) (revision 18094) @@ -320,7 +320,7 @@ * 《财务核算及物品发放报表》菜单 */ var SSTS_DepartmentMonthly_Menu = true; - + SSTS_DepartmentMonthly_Menu = false; @@ -432,6 +432,17 @@ SSTS_ForeignTousseAfterUseDelivery = false; +/** + * 《急用物品处理周期统计报表》权限 + */ +var SSTS_UrgentNeedGoodsProcessingCycle = true; + + SSTS_UrgentNeedGoodsProcessingCycle = false; + +if (!sstsConfig.enableUrgentNeedGoodsProcessingCycleReport){ + SSTS_UrgentNeedGoodsProcessingCycle = true; +} + /*系统告警开始*/ var SSTS_SystemWarning_Menu = true; Index: ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js =================================================================== diff -u -r18085 -r18094 --- ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 18085) +++ ssts-web/src/main/webapp/disinfectsystem/config/zsyy/config.js (.../config.js) (revision 18094) @@ -113,5 +113,7 @@ //是否启用手术间管理界面(true为启用,false或者不配置都不启用) enableOperationRoomManagerViwe:true, //是否启用手术排班物品查询(true为启用,false或者不配置都不启用) - enableOperationReservationInvoiceReport : true + enableOperationReservationInvoiceReport : true, + //是否启急用物品处理周期统计报表(true为启用,false或者不配置都不启用) + enableUrgentNeedGoodsProcessingCycleReport : true } \ No newline at end of file Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/UrgentNeedGoodsProcessingCycle.java =================================================================== diff -u --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/UrgentNeedGoodsProcessingCycle.java (revision 0) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/javabeansource/UrgentNeedGoodsProcessingCycle.java (revision 18094) @@ -0,0 +1,184 @@ +package com.forgon.disinfectsystem.jasperreports.javabeansource; +/** + * 急用物品处理周期统计报表的javabean + * @author Chenjiaru 2017-05-13 + * + */ +public class UrgentNeedGoodsProcessingCycle { + + /** + * 加急物品的回收日期格式:2017-01-01 + */ + private String recyclingDate = ""; + + /** + * 加急物品的名称 + */ + private String goodsName = ""; + + /** + * 加急程度 + */ + private String urgentLevel = "加急"; + + /** + * 加急物品的回收时间格式:00:00 + */ + private String recyclingTime = ""; + + /** + * 加急物品的发货时间格式:00:00 + */ + private String deliveryTime = ""; + + /** + * 加急物品的处理总时长(分钟) + */ + private Integer totalDuration; + + /** + * 回收到清洗交接时长(分钟),如果有预回收则为预回收到清洗交接的时长 + */ + private Integer recyclingToWashTransitionDuration; + + /** + * 装配到灭菌时长(分钟) + */ + private Integer packingToSterilizationDuration; + + /** + * 灭菌分组 + */ + private String sterilerGroup = ""; + + /** + * 灭菌时长(分钟) + */ + private Integer sterilizationDuration; + + /** + * 灭菌到发货时长(分钟) + */ + private Integer sterilizationToDeliveryDuration; + + /** + * 条码 + */ + private String barcode = ""; + + /** + * 标识牌实例条码 + */ + private String idCardInstanceBarcode = ""; + + public String getRecyclingDate() { + return recyclingDate; + } + + public void setRecyclingDate(String recyclingDate) { + this.recyclingDate = recyclingDate; + } + + public String getGoodsName() { + return goodsName; + } + + public void setGoodsName(String goodsName) { + this.goodsName = goodsName; + } + + public String getUrgentLevel() { + return urgentLevel; + } + + public void setUrgentLevel(String urgentLevel) { + this.urgentLevel = urgentLevel; + } + + public String getRecyclingTime() { + return recyclingTime; + } + + public void setRecyclingTime(String recyclingTime) { + this.recyclingTime = recyclingTime; + } + + public String getDeliveryTime() { + return deliveryTime; + } + + public void setDeliveryTime(String deliveryTime) { + this.deliveryTime = deliveryTime; + } + + public Integer getTotalDuration() { + return totalDuration; + } + + public void setTotalDuration(Integer totalDuration) { + this.totalDuration = totalDuration; + } + + public Integer getRecyclingToWashTransitionDuration() { + return recyclingToWashTransitionDuration; + } + + public void setRecyclingToWashTransitionDuration( + Integer recyclingToWashTransitionDuration) { + this.recyclingToWashTransitionDuration = recyclingToWashTransitionDuration; + } + + public Integer getPackingToSterilizationDuration() { + return packingToSterilizationDuration; + } + + public void setPackingToSterilizationDuration( + Integer packingToSterilizationDuration) { + this.packingToSterilizationDuration = packingToSterilizationDuration; + } + + public String getSterilerGroup() { + return sterilerGroup; + } + + public void setSterilerGroup(String sterilerGroup) { + this.sterilerGroup = sterilerGroup; + } + + public Integer getSterilizationDuration() { + return sterilizationDuration; + } + + public void setSterilizationDuration(Integer sterilizationDuration) { + this.sterilizationDuration = sterilizationDuration; + } + + public Integer getSterilizationToDeliveryDuration() { + return sterilizationToDeliveryDuration; + } + + public void setSterilizationToDeliveryDuration( + Integer sterilizationToDeliveryDuration) { + this.sterilizationToDeliveryDuration = sterilizationToDeliveryDuration; + } + + public String getBarcode() { + return barcode; + } + + public void setBarcode(String barcode) { + this.barcode = barcode; + } + + public String getIdCardInstanceBarcode() { + return idCardInstanceBarcode; + } + + public void setIdCardInstanceBarcode(String idCardInstanceBarcode) { + this.idCardInstanceBarcode = idCardInstanceBarcode; + } + + + + +} Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r18066 -r18094 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 18066) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 18094) @@ -894,6 +894,13 @@ return jasperReportManager.getOperationReservationSumData(startTime, endTime, operationRoomName); } } + }else if("urgentNeedGoodsProcessingCycle".equals(reportName)){ + String startTime = StrutsParamUtils.getPraramValue("startTime", ""); + String endTime = StrutsParamUtils.getPraramValue("endTime", ""); + String tousseName = StrutsParamUtils.getPraramValue("tousseName", ""); + if (StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)) { + return jasperReportManager.getUrgentNeedGoodsProcessingCycleData(startTime, endTime, tousseName); + } } return null; } @@ -1470,6 +1477,11 @@ String endTime = StrutsParamUtils.getPraramValue("endTime", ""); map.put("title", String.format("手术排班物品查询(%s~%s)", startTime, endTime)); return map; + }else if("urgentNeedGoodsProcessingCycle".equals(reportName)){ + String startTime = StrutsParamUtils.getPraramValue("startTime", ""); + String endTime = StrutsParamUtils.getPraramValue("endTime", ""); + map.put("title", String.format("急用物品处理周期统计报表(%s~%s)", startTime, endTime)); + return map; } return map; Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.js (revision 18094) @@ -0,0 +1,158 @@ +var entityName = "急用物品处理周期统计报表"; +var form; + +/** + * 加载报表的数据 + * + */ +var myMask; +function reloadReport(){ + if (!form.getForm().isValid()) { + showResult('请正确填写表单各值'); + return false; + } + + var startTime = $Id('startTime').value; + var endTime = $Id('endTime').value; + var tousseId = Ext.getCmp('tousse').getValue(); + var tousseName = Ext.getCmp('tousse').getRawValue(); + + myMask = new Ext.LoadMask(Ext.getBody(), { + msg: '正在加载,请稍候!', + removeMask: true + }); + myMask.show(); + + window.open(WWWROOT + "/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do" + + "?jasperreportName=urgentNeedGoodsProcessingCycle.jasper&reportName=urgentNeedGoodsProcessingCycle" + + "&startTime=" + startTime + + "&endTime=" + endTime + + "&tousseName=" + tousseName, + 'thisIframe', '_self'); +} + + +Ext.onReady(function() { + Ext.QuickTips.init(); + + var dt = new Date(); + var startDayofMonth = dt.getFullYear() + "/" + (dt.getMonth() + 1) + "/01"; + + + //“器械包combo”的数据储存器 + var tousseStore = new Ext.data.Store({ + proxy : new Ext.data.HttpProxy({ + url : WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!searchTousseByTypeArr.do', + method : 'POST' + }), + reader : new Ext.data.JsonReader({ + totalProperty : 'totalCount', + root : 'data' + }, [ + {name : 'id',mapping : 'id'}, + {name : 'name',mapping : 'name'}] + ) + }); + + form = new Ext.form.FormPanel({ + title : entityName, + region : 'north', + labelAlign : 'right', + buttonAlign : 'center', + collapsible : true, + collapseMode : 'mini', + split : true, + border : 0, + frame : true, + bodyStyle : 'padding:0px auto;margin:0px',// padding:1px;padding-top:5px; + height : 105, + items : [{ + layout : 'column', + height : 40, + labelWidth : 70, + items : [{ + width : 220, + layout : 'form', + items : [{ + xtype : 'datefield', + fieldLabel : '开始日期', + id : 'startTime', + name : 'startTime', + format : 'Y-m-d', + allowBlank : true, + anchor : '95%', + value : new Date(startDayofMonth) + }] + },{ + width : 220, + layout : 'form', + items : [{ + xtype : 'datefield', + fieldLabel : '结束日期', + id : 'endTime', + name : 'endTime', + format : 'Y-m-d', + allowBlank : true, + anchor : '95%', + value : dt + }] + },{ + width : 280, + layout : 'form', + labelSeparator : '选择器械包:', + items : [{ + xtype : 'combo', + id : 'tousse', + name : 'tousse', + valueField : 'id', + displayField : 'name', + store : tousseStore, + forceSelection : true, + triggerAction : 'all', + queryParam : 'spell', + minChars : 0, + anchor : '95%' + }] + }] + }], + buttons:[{ + xtype : 'button', + text : '查询', + minWidth : 70, + iconCls : 'icon_search', + handler : function() { + reloadReport(); + } + },{ + xtype : 'button', + text : '重置', + minWidth : 70, + iconCls : 'icon_set', + handler : function() { + $Id('startTime').value = ""; + $Id('endTime').value = ""; + } + }] + }); + + + var reportForm = new Ext.Panel({ + frame:false,//渲染面板 + autoScroll:true,//自动显示滚动条 + collapsible:true,//允许展开和收缩 + bodyPadding:5, + html:'' + + }); + + var viewport = new Ext.Viewport({ + layout : 'border', + items : [form, { + region : 'center', + margins : '0 0 0 0', + layout : 'fit', + items : reportForm + }] + }); + +}); \ No newline at end of file Index: ssts-web/src/main/webapp/homepage/menuconfigure.js =================================================================== diff -u -r18090 -r18094 --- ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 18090) +++ ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 18094) @@ -521,7 +521,8 @@ {hidden :SSTS_TousseMaterialMonthCheckReport,text:"消毒供应中心器械月盘点统计报表",href:WWWROOT+'/disinfectsystem/reportforms/supplyRoomApplianceMonthStatisticsView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_BorrowReport,text:"借还物品统计报表",href:WWWROOT+'/disinfectsystem/reportforms/borrowReportView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_ForeignTousseSterilizationMonitorAndDelivery,text:"含植入物器械包灭菌监测及发放情况报表",href:WWWROOT+'/disinfectsystem/reportforms/foreignTousseSterilizationMonitorAndDelivery.jsp',hrefTarget:linkTarget,leaf:true}, - {hidden :SSTS_ForeignTousseAfterUseDelivery,text:"外来器械使用后交接报表",href:WWWROOT+'/disinfectsystem/reportforms/foreignTousseAfterUseDelivery.jsp',hrefTarget:linkTarget,leaf:true} + {hidden :SSTS_ForeignTousseAfterUseDelivery,text:"外来器械使用后交接报表",href:WWWROOT+'/disinfectsystem/reportforms/foreignTousseAfterUseDelivery.jsp',hrefTarget:linkTarget,leaf:true}, + {hidden :SSTS_UrgentNeedGoodsProcessingCycle,text:"急用物品处理周期统计报表",href:WWWROOT+'/disinfectsystem/reportforms/urgentNeedGoodsProcessingCycleView.jsp',hrefTarget:linkTarget,leaf:true} ] }]; Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java =================================================================== diff -u -r18066 -r18094 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java (.../JasperReportManager.java) (revision 18066) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManager.java (.../JasperReportManager.java) (revision 18094) @@ -56,6 +56,7 @@ import com.forgon.disinfectsystem.jasperreports.javabeansource.TousseOverLoadBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.TousseSterilizationInspectSituationBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.TousseWorkLoadVO; +import com.forgon.disinfectsystem.jasperreports.javabeansource.UrgentNeedGoodsProcessingCycle; import com.forgon.disinfectsystem.jasperreports.javabeansource.UseRecordBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.UseRecordEnteringBean; import com.forgon.disinfectsystem.jasperreports.javabeansource.UseRecordItemBean; @@ -533,4 +534,14 @@ */ public List getOperationReservationSumData(String startTime, String endTime, String operationRoomName); + + /** + * 获取急用物品处理周期统计报表的数据 + * @param startTime 开始时间格式如:2017-01-01 + * @param endTime 结束时间格式如:2017-01-01 + * @param tousseName 指定想要查询的器械包名称,如果不指定则查询全部器械包 + * @return + */ + public List getUrgentNeedGoodsProcessingCycleData(String startTime, + String endTime, String tousseName); }