Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/dwr/table/RecyclingApplicationTableManager.java =================================================================== diff -u -r14604 -r14607 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/dwr/table/RecyclingApplicationTableManager.java (.../RecyclingApplicationTableManager.java) (revision 14604) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/dwr/table/RecyclingApplicationTableManager.java (.../RecyclingApplicationTableManager.java) (revision 14607) @@ -223,15 +223,50 @@ this.createApplyFilterSql(sqlBuilder, deliverStatusSql); } } - - String sql = sqlBuilder.toString(); + + String showSubmitTime = sqlWhereParamMap.get("showSubmitTime"); + if (!StringUtils.isEmpty(showSubmitTime)){ + this.createSubmitTimeFilterSql(sqlBuilder,showSubmitTime); + } + + String sql = sqlBuilder.toString(); return gridManager.renderGrid(parameterMap, InvoicePlan.class.getSimpleName(), sql, new String[] { "applicationItems", "returnedTousseItems", "invoice", "recyclingRecord", "recyclingApplications", "parent" }); } + /** + * 创建申请单申请时间过滤条件(近三天、近一周、近三个月”) + * @param sqlBuilder 原来的sql + * @param showSubmitTime 前端传过来的条件 + */ + private void createSubmitTimeFilterSql(StringBuilder sqlBuilder,String showSubmitTime){ + Date now = new Date(); + String today = dateQueryAdapter.dateAdapter(now); + String condition = null; + switch (showSubmitTime){ + case "threeDay":{ + condition = dateQueryAdapter.dateAdapter(DateUtils.addDays(now,-3)); + break; + } + case "oneWeek":{ + condition = dateQueryAdapter.dateAdapter(DateUtils.addWeeks(now,-1)); + break; + } + case "threeMonth":{ + condition = dateQueryAdapter.dateAdapter(DateUtils.addMonths(now,-3)); + break; + } + //default默认是全部 + default:{} + } + if (condition != null){ + sqlBuilder.append(String.format(" AND (po.submitTime between %s and %s OR po.recyclingTime between %s and %s) ",condition,today, condition, today)); + } + } + /** * 创建临床科室的科室申领过滤的sql * 今天提交或者没提交的,今天之前提交的且回收状态处于待回收,部分回收;发货状态处于待发货,部分发货;归还状态处于未归还,部分归还,归还待确认; Index: ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js =================================================================== diff -u -r14578 -r14607 --- ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js (.../goodsTemplateApplicationView.js) (revision 14578) +++ ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js (.../goodsTemplateApplicationView.js) (revision 14607) @@ -3141,6 +3141,15 @@ grid.dwrReload(); } + /** + * 设置隐藏域里的时间筛选过滤 + * @param val 要设定的值 + */ + function reloadHiddenField(val) { + var submitTime = document.getElementById('parm_s_showSubmitTime'); + submitTime.value = val; + grid.dwrReload(); + } //快速筛选按钮 var quickScreenMenu = new Ext.menu.Menu({ @@ -3178,6 +3187,34 @@ }] }); + //时间筛选combo Store + var submitTimeStatus = new Ext.data.SimpleStore({ + fields: ['key', 'val'], + data: [['all', '全部'], ['threeDay', '近三天'],['oneWeek','近一周'],['threeMonth','近三个月']] + }); + + //时间筛选combo + var submitTimeCombo = { + xtype: 'combo', + fieldLabel: '时间筛选', + // emptyText:'请选择申请单日期', + store: submitTimeStatus, + width: 120, + mode: 'local', + triggerAction: 'all', + displayField: 'val', + forceSelection: true, + value: '全部', + editable: false, + listeners : { + select : function(combo, record, index){ + var condition = record.get('key'); + reloadHiddenField(condition); + } + } + }; + + var isSupplyRoomUser = validateIsSupplyRoomUser(); var tbar = [{ text : '申请物品', @@ -3366,13 +3403,16 @@ text : '快速筛选', iconCls : 'btn_ext_application_edit', menu: quickScreenMenu - },'->',{ + },{ + text : '时间筛选:' + },submitTimeCombo, + '->',{ //加->表示往右居中 text : '全部申请单', iconCls : 'btn_ext_add_tousse', handler : function(){ //调用父级窗口的添加tab方法 - top.addTabJquery('showAllApplicationForm','显示全部申请单',top.DisinfectsystemTreeData[0].children[0].href); + top.addTabJquery('showAllApplicationForm','全部申请单',top.DisinfectsystemTreeData[0].children[0].href); // window.parent.addTabJquery(id,title,href); } }];