Index: ssts-web/src/main/webapp/disinfectsystem/reportforms/departSatisfyView.js =================================================================== diff -u -r30854 -r31360 --- ssts-web/src/main/webapp/disinfectsystem/reportforms/departSatisfyView.js (.../departSatisfyView.js) (revision 30854) +++ ssts-web/src/main/webapp/disinfectsystem/reportforms/departSatisfyView.js (.../departSatisfyView.js) (revision 31360) @@ -6,7 +6,21 @@ Ext.QuickTips.init(); // 记录cookie(3步) function reloadReport(){ - var monthSearch= $Id('monthSearch').value; + var startTime = $Id('startTime').value; + var endTime = $Id('endTime').value; + if(startTime == '' || startTime == null){ + showResult("开始时间不能为空"); + $Id('startTime').focus(); + return false; + }else if(endTime == '' || endTime == null){ + showResult("结束时间不能为空"); + $Id('endTime').focus(); + return false; + }else if(startTime > endTime){ + showResult("开始时间不能大于结束时间"); + $Id('startTime').focus(); + return false; + } myMask = new Ext.LoadMask(Ext.getBody(), { msg: '正在加载,请稍候!', removeMask: true @@ -16,7 +30,8 @@ var url = WWWROOT + '/jasperreports/jasperreportsAction!createReportFromJavaBeanSource.do'; var params = { jasperreportName : 'departSatisfyReport.jasper', - month : monthSearch, + startTime : startTime, + endTime : endTime, reportName:'departSatisfyReport' } @@ -25,14 +40,13 @@ var sign = true; var dwrCallParams = null; - + var dt = new Date(); var tbar = [{ text : '导出Excel', iconCls : 'btn_ext_refresh', id : 'editTbar', handler : function() { - var month = Ext.getCmp('monthSearch').getRawValue(); - location.href=WWWROOT + "/disinfectsystem/reportforms/departmentMonthlyExport.jsp?month="+month+"&reportType=科室月报明细"; + //location.href=WWWROOT + "/disinfectsystem/reportforms/departmentMonthlyExport.jsp?month="+month+"&reportType=科室月报明细"; } } ]; @@ -62,27 +76,32 @@ height : 40, labelWidth : 70, items : [{ - width : 200, + width : 220, layout : 'form', - labelWidth : 60, - items : [new Ext.form.DateField({ - id:'monthSearch', - name : 'monthSearch', - fieldLabel : '年月', - readOnly : true, - format:'Y-m', - value : new Date(), - anchor : '95%', - listeners : { - /*specialkey : function(field, ee) { - alert(09); - if (ee.getKey() == Ext.EventObject.ENTER) { - initQueryValueAndReload(); - } - }*/ - } - })] - }, { + items : [{ + xtype : 'datefield', + fieldLabel : '开始日期', + id : 'startTime', + name : 'startTime', + format : 'Y-m', + allowBlank : true, + anchor : '95%', + value : dt + }] + },{ + width : 220, + layout : 'form', + items : [{ + xtype : 'datefield', + fieldLabel : '结束日期', + id : 'endTime', + name : 'endTime', + format : 'Y-m', + allowBlank : true, + anchor : '95%', + value : dt + }] + },{ width : 80, layout : 'form', items : [{ @@ -103,7 +122,8 @@ minWidth : 70, iconCls : 'icon_set', handler : function() { - $Id('monthSearch').value = ""; + Ext.getCmp("startTime").setValue(dt); + Ext.getCmp("endTime").setValue(dt); } }] }] Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java =================================================================== diff -u -r31356 -r31360 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 31356) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/action/JasperreportsAction.java (.../JasperreportsAction.java) (revision 31360) @@ -2316,10 +2316,19 @@ map.put("title", "设备监测报表"); return map; }else if (reportName.equals("departSatisfyReport")) {// 满意度调查报表 - String monthSearch = StrutsParamUtils.getPraramValue("month", ""); - map.put("title", (StringUtils.isNotBlank(monthSearch) ? "(" - + monthSearch + ")" : "") - + "满意度调查报表"); + String startTime = StrutsParamUtils.getPraramValue("startTime", ""); + String endTime = StrutsParamUtils.getPraramValue("endTime", ""); + String timeStr = null; + if(StringUtils.isNotBlank(startTime) && StringUtils.isNotBlank(endTime)){ + if(startTime.equals(endTime)){ + timeStr = startTime; + }else{ + timeStr = startTime + "至" + endTime; + } + map.put("title", "满意度调查报表("+ timeStr + ")"); + }else{ + map.put("title", "满意度调查报表"); + } return map; } else if (reportName.equals("monthReportChart")) { String month = StrutsParamUtils.getPraramValue("month", null); @@ -2801,14 +2810,14 @@ ParseException { List supplyRoomConfigs = supplyRoomConfigManager .getSupplyRoomList(SupplyRoomConfig.SUPPLYROOM_TYPE_APPLY); - String monthAndYear = StrutsParamUtils.getPraramValue("month", ""); - Map dateMap = getMonthStartAndEndDate(monthAndYear); + String startDay = StrutsParamUtils.getPraramValue("startTime", ""); + String endDay = StrutsParamUtils.getPraramValue("endTime", ""); List infos = new ArrayList(); Set satisfactionSurveyTemplateIds = new HashSet(); Map map = getAllSuveryDepart(); - if (map != null && map.size() != 0 && dateMap != null) { - String startDay = dateMap.get("startDay"); - String endDay = dateMap.get("endDay"); + if (map != null && map.size() != 0 && StringUtils.isNotBlank(startDay) && StringUtils.isNotBlank(endDay)) { + startDay = startDay + "-01 00:00:00"; + endDay = getMonthEndDate(endDay); Set orgCodeSet = map.keySet(); Map totalScores = new HashMap(); for (String orgCoding : orgCodeSet) { @@ -4296,8 +4305,30 @@ } return null; } - /** + * 获取某个月的开始日期下一个月的第一天 2012-01-01 2012-02-01 + * + * @param month + * @return + */ + public String getMonthEndDate(String month) { + if (StringUtils.isNotBlank(month)) { + Date date = null; + try { + date = new SimpleDateFormat("yyyy-MM").parse(month); + } catch (ParseException e) { + e.printStackTrace(); + } + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.add(Calendar.DAY_OF_MONTH, + calendar.getActualMaximum(Calendar.DAY_OF_MONTH) - 1); + return new SimpleDateFormat("yyyy-MM-dd").format(calendar + .getTime()) + " 23:59:59"; + } + return null; + } + /** * 获取一个月的开始日期、结束日期 * * @param month