Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManager.java =================================================================== diff -u -r18575 -r18663 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManager.java (.../TousseDefinitionManager.java) (revision 18575) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManager.java (.../TousseDefinitionManager.java) (revision 18663) @@ -75,6 +75,8 @@ public JSONObject searchCustomTousseDefinitions(String searchString); + public JSONObject searchTousseAndForeignTousseDiposableGoods(String simpleSpell); + public JSONObject searchTousseAndDiposableGoods(String simpleSpell); public JSONObject searchTousseOrDiposableGoods(String simpleSpell, @@ -236,6 +238,33 @@ String pageIndex, String countOfLI, boolean showDisableGoods, boolean showExternalCodeOfDisposableGoods,String handleDepartCode); + /** + * 根据关键字进行检索,获取器械包或一次性物品..
+ * 如果searchString为中文,则按照器械包的(拼音码、五笔码、外部编码、名称)这四个字段进行检索
+ * 如果searchString为英文,则根据用户属性表的searchMode字段来决定
+ * + * @param simpleSpell 检索的关键字 + * @param isSeachTousse 为true时只查询器械包,为false时只查询一次性物品 + * @param includeCoustomTousse 为true时不过滤自定义器械包,为false时过滤自定义器械包 + * @param includeForeignTousse 为true时包含外来器械包,为false时过滤外来器械包 + * @param searchTousseBelonged 是否只搜索登录用户当前科室能处理的器械包 + * @param onlySearchRecyclingTousse 是否只搜索要回收的器械包 + * @param showReferencePrice + * @param pageIndex 页码 + * @param countOfLI 显示数目,当countOfLI为0时查询所有的记录,不分页 + * @param showDisableGoods 是否显示禁用物品 + * @param showExternalCodeOfDisposableGoods 是否显示一次性物品的外部编码 + * @param handleDepartCode + * + * @return + */ + public List> searchTousseOrDiposableGoodsBySpellAndWbCode( + String simpleSpell, boolean isSeachTousse, + boolean includeCoustomTousse, boolean searchTousseBelonged, + boolean onlySearchRecyclingTousse, boolean displayPrice, + boolean includeForeignTousse, + String pageIndex, String countOfLI, boolean showDisableGoods, + boolean showExternalCodeOfDisposableGoods,String handleDepartCode); // 根据包定义查找包定义,因为可能会存在多个,这里取id最大的 public TousseDefinition getMostRecentTousseDefinitionByTousseDefinition( TousseDefinition tousseDefinition); Index: ssts-web/src/main/webapp/disinfectsystem/qualitymonitoring/qualitymonitoringInstanceForm.js =================================================================== diff -u -r18615 -r18663 --- ssts-web/src/main/webapp/disinfectsystem/qualitymonitoring/qualitymonitoringInstanceForm.js (.../qualitymonitoringInstanceForm.js) (revision 18615) +++ ssts-web/src/main/webapp/disinfectsystem/qualitymonitoring/qualitymonitoringInstanceForm.js (.../qualitymonitoringInstanceForm.js) (revision 18663) @@ -2001,7 +2001,7 @@ }); tousseDefinitionStore = new Ext.data.Store({ proxy : new Ext.data.HttpProxy({ - url : WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getTousseAndDiposableGoodsData.do', + url : WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getTousseAndDiposableGoodsData.do?type='+encodeURI('器械包和外来器械包'), method : 'POST' }), reader : new Ext.data.JsonReader({ Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java =================================================================== diff -u -r18348 -r18663 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 18348) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 18663) @@ -1836,7 +1836,11 @@ json = tousseDefinitionManager .searchTousseOrDiposableGoods(spell, false); - } else { + }else if("器械包和外来器械包".equals(type.trim())){ + // 根据拼音码、五笔码获取器械包(内部器械包和自定义器械包、外来器械包)和一次性物品NAME和ID + json = tousseDefinitionManager + .searchTousseAndForeignTousseDiposableGoods(spell); + }else { // 根据拼音码、五笔码获取器械包(内部器械包和自定义器械包)和一次性物品NAME和ID json = tousseDefinitionManager .searchTousseAndDiposableGoods(spell); Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java =================================================================== diff -u -r18575 -r18663 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 18575) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 18663) @@ -931,7 +931,23 @@ map.put("data", mapList); return JSONObject.fromObject(map); } + + /** + * 搜索匹配的器械包(内部器械包和自定义器械包、外来器械包)和一次性物品NAME和ID + */ + @Override + public JSONObject searchTousseAndForeignTousseDiposableGoods(String searchString) { + List> mapList = searchTousseOrDiposableGoodsBySpellAndWbCode( + searchString, true, true, false,false,false,true,"1","0",false,false,null); + mapList.addAll(searchTousseOrDiposableGoodsBySpellAndWbCode( + searchString, false, true, false,false,false,true,"1","0",false,false,null)); + Map map = new HashMap(); + map.put("totalCount", mapList.size()); + map.put("data", mapList); + return JSONObject.fromObject(map); + } + /** * 重载 searchTousseAndDiposableGoods(String simpleSpell) 方法 * 根据拼音码、五笔码获取器械包(内部器械包和自定义器械包)或一次性物品NAME和ID @@ -959,6 +975,37 @@ map.put("data", mapList); return JSONObject.fromObject(map); } + /** + * 根据关键字进行检索,获取器械包或一次性物品..
+ * 如果searchString为中文,则按照器械包的(拼音码、五笔码、外部编码、名称)这四个字段进行检索
+ * 如果searchString为英文,则根据用户属性表的searchMode字段来决定
+ * + * @param simpleSpell 检索的关键字 + * @param isSeachTousse 为true时只查询器械包,为false时只查询一次性物品 + * @param includeCoustomTousse 为true时不过滤自定义器械包,为false时过滤自定义器械包 + * @param searchTousseBelonged 是否只搜索登录用户当前科室能处理的器械包 + * @param onlySearchRecyclingTousse 是否只搜索要回收的器械包 + * @param showReferencePrice + * @param pageIndex 页码 + * @param countOfLI 显示数目,当countOfLI为0时查询所有的记录,不分页 + * @param showDisableGoods 是否显示禁用物品 + * @param showExternalCodeOfDisposableGoods 是否显示一次性物品的外部编码 + * @param handleDepartCode + * + * @return + */ + @Override + @SuppressWarnings("unchecked") + public List> searchTousseOrDiposableGoodsBySpellAndWbCode( + String simpleSpell, boolean isSeachTousse, + boolean includeCoustomTousse, boolean searchTousseBelonged, + boolean onlySearchRecyclingTousse,boolean showReferencePrice, + String pageIndex, String countOfLI, boolean showDisableGoods, + boolean showExternalCodeOfDisposableGoods,String handleDepartCode) { + return searchTousseOrDiposableGoodsBySpellAndWbCode(simpleSpell,isSeachTousse,includeCoustomTousse, + searchTousseBelonged,onlySearchRecyclingTousse,showReferencePrice,false,pageIndex, + countOfLI,showDisableGoods,showExternalCodeOfDisposableGoods,handleDepartCode); + } /** * 根据关键字进行检索,获取器械包或一次性物品..
@@ -968,6 +1015,7 @@ * @param simpleSpell 检索的关键字 * @param isSeachTousse 为true时只查询器械包,为false时只查询一次性物品 * @param includeCoustomTousse 为true时不过滤自定义器械包,为false时过滤自定义器械包 + * @param includeForeignTousse 为true时包含外来器械包,为false时过滤外来器械包 * @param searchTousseBelonged 是否只搜索登录用户当前科室能处理的器械包 * @param onlySearchRecyclingTousse 是否只搜索要回收的器械包 * @param showReferencePrice @@ -985,6 +1033,7 @@ String simpleSpell, boolean isSeachTousse, boolean includeCoustomTousse, boolean searchTousseBelonged, boolean onlySearchRecyclingTousse,boolean showReferencePrice, + boolean includeForeignTousse, String pageIndex, String countOfLI, boolean showDisableGoods, boolean showExternalCodeOfDisposableGoods,String handleDepartCode) { // 有些输入法会输入"'",要过滤掉,不过滤执行sql会报异常 @@ -1006,23 +1055,20 @@ }*/ List> mapList = new ArrayList>(); if (isSeachTousse) { - if (includeCoustomTousse) {// 是否包含自定义器械包,是则不排除,否则排除 + // 排除外部代理灭菌和外来器械拆分小包 + sql += (" and po.tousseType != '" + + TousseDefinition.PACKAGE_TYPE_SPLIT + + "' and po.tousseType != '" + + TousseDefinition.PACKAGE_TYPE_FOREIGNPROXY + "'"); + + if(includeCoustomTousse == false){ sql += (" and po.tousseType != '" - + TousseDefinition.PACKAGE_TYPE_FOREIGN - + "' and po.tousseType != '" - + TousseDefinition.PACKAGE_TYPE_SPLIT - + "' and po.tousseType != '" - + TousseDefinition.PACKAGE_TYPE_FOREIGNPROXY + "'"); - } else {// 不包含自定义器械包 - sql += (" and po.tousseType != '" - + TousseDefinition.PACKAGE_TYPE_FOREIGN - + "' and po.tousseType != '" - + TousseDefinition.PACKAGE_TYPE_SPLIT - + "' and po.tousseType != '" - + TousseDefinition.PACKAGE_TYPE_FOREIGNPROXY - + "' and po.tousseType != '" + TousseDefinition.PACKAGE_TYPE_CUSTOM + "'"); } + if(includeForeignTousse == false){ + sql += (" and po.tousseType != '" + + TousseDefinition.PACKAGE_TYPE_FOREIGN + "'"); + } sql += " and po.forDisplay = 1 ";//自己生成的包定义不显示 if(searchTousseBelonged){ sql += " and po.ancestorID in (select tousseDefinitionId from " + CssdHandleTousses.class.getSimpleName()