Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/ReAppTableSqlHandler.java =================================================================== diff -u -r16630 -r16838 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/ReAppTableSqlHandler.java (.../ReAppTableSqlHandler.java) (revision 16630) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/ReAppTableSqlHandler.java (.../ReAppTableSqlHandler.java) (revision 16838) @@ -59,8 +59,9 @@ */ public void createTousseGroupFilterSql(Map sqlWhereParamMap, StringBuilder sqlBuilder) { String tousseGroupId = sqlWhereParamMap.get("tousseGroupId"); - if (!"all".equals(tousseGroupId)) { - sqlBuilder.append(String.format(" and (po.id in (select ti.invoicePlan.id from TousseItem ti,TousseDefinition td,TousseGroup tg where ti.tousseDefinitionId = td.id and td.tousseGroupID = tg.id and tg.id = %s and ti.tousseType = '器械包'))", tousseGroupId)); + if (StringUtils.isNotBlank(tousseGroupId) && tousseGroupId.indexOf("all") == -1) { + String ids = SqlBuilder.build_IN_Statement("tg.id", SqlBuilder.IN, tousseGroupId.split(Constants.IDS_SEPARATOR_COMMA)); + sqlBuilder.append(String.format(" and (po.id in (select ti.invoicePlan.id from TousseItem ti,TousseDefinition td,TousseGroup tg where ti.tousseDefinitionId = td.id and td.tousseGroupID = tg.id and ti.tousseType = '器械包' and %s))", ids)); } } Index: ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationView.jsp =================================================================== diff -u -r16835 -r16838 --- ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationView.jsp (.../goodsApplicationView.jsp) (revision 16835) +++ ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsApplicationView.jsp (.../goodsApplicationView.jsp) (revision 16838) @@ -339,7 +339,9 @@ var actionType_confirmReturn = '<%=ForeignTousseApplication.ACTION_TYPE_CONFIRM_RETURN%>'; - +<%--多选下拉框--%> + + Index: ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js =================================================================== diff -u -r16835 -r16838 --- ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js (.../goodsTemplateApplicationView.js) (revision 16835) +++ ssts-web/src/main/webapp/disinfectsystem/recyclingApplication/goodsTemplateApplicationView.js (.../goodsTemplateApplicationView.js) (revision 16838) @@ -3656,17 +3656,20 @@ {name: 'tousseGroupName', mapping: 'displayField'} ] } - return createCombo({ + return createCombo({ + xtype: 'multiSelect', + storeConfig : touseGroupStoreConfig, fieldLabel: '按器械包分组', displayField: 'tousseGroupName', valueField: 'id', - storeConfig : touseGroupStoreConfig, - listeners: { - select: function (combo, record, index) { - var tousseGroupId = record.get('id'); - reloadConditionPara(tousseGroupId, 'parm_s_tousseGroupId'); - } - } + //这个要设置成false,不然多选鼠标离开之后,combo上面的值不会显示 + forceSelection : false, + listeners: { + select: function (combo, record, index) { + // var tousseGroupId = record.get('id'); + reloadConditionPara(combo.getValue(), 'parm_s_tousseGroupId'); + } + } }); } @@ -3690,20 +3693,20 @@ } /** - * 创建下拉选项统一方法 + * 创建下拉选项统一方法(xtype可以是combo或者multiSelect,如果要使用multiSelect则要引入multiSelect的js和css) * @param comboConfig 下拉选项的配置 * @returns */ function createCombo(comboConfig) { return { - xtype: 'combo', + xtype: comboConfig.xtype || 'combo', fieldLabel: comboConfig.fieldLabel, store: createStore(comboConfig.storeConfig), - width: comboConfig.width || 100, + width: comboConfig.width || 150, triggerAction: 'all', displayField: comboConfig.displayField, valueField: comboConfig.valueField, - forceSelection: true, + forceSelection: Ext.isEmpty(comboConfig.forceSelection) ? true : comboConfig.forceSelection, value: '全部', editable: false, listeners: comboConfig.listeners