Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java =================================================================== diff -u -r13740 -r14003 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 13740) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/action/TousseDefinitionAction.java (.../TousseDefinitionAction.java) (revision 14003) @@ -36,6 +36,7 @@ import org.springframework.security.core.context.SecurityContextHolder; import com.forgon.directory.acegi.tools.AcegiHelper; +import com.forgon.directory.model.CssdHandleTousses; import com.forgon.directory.model.OrgUnit; import com.forgon.disinfectsystem.basedatamanager.supplyroomconfig.service.SupplyRoomConfigManager; import com.forgon.disinfectsystem.basedatamanager.taskGroup.service.TaskGroupManager; @@ -313,6 +314,18 @@ if(newTousse){ //添加对应供应室处理器械包配置 tousseDefinitionManager.addCssdHandleToussesConfig(tousseDefinition); + }else{ + //如果优先处理科室发生修改且供应室处理器械包配置未配置该包的处理科室,则新增对应供应室处理器械包配置 + CssdHandleTousses cssdHandleTousses = + (CssdHandleTousses)objectDao.getBySql(CssdHandleTousses.class.getSimpleName(), + " where tousseDefinitionId = " + tousseDefinition.getAncestorID() + " and orgUnitCode = '" + tousseDefinition.getHandlerDepartCode() + "'"); + if(cssdHandleTousses == null){ + tousseDefinitionManager.addCssdHandleToussesConfig(tousseDefinition); + }else{ + //否则更新任务组 + cssdHandleTousses.setTaskGroup(tousseDefinition.getTaskGroup()); + objectDao.saveOrUpdate(cssdHandleTousses); + } } } catch (Exception e) { msg = "{success:false,message:\"保存失败!\"}"; @@ -843,12 +856,17 @@ // str = str + "[ '" + list.get(i) + "'],"; // } // } + //处理科室 + String handlerDepartCode = StrutsParamUtils.getPraramValue("handlerDepartCode", ""); List taskGroupList = taskGroupManager.findAllTaskGroup(); List> taskGroupNameList = new ArrayList>(); for(TaskGroup taskGroup : taskGroupList){ List tempList = new ArrayList(); - tempList.add(taskGroup.getTaskGroupName()); - taskGroupNameList.add(tempList); + //如果处理科室为空或任务组的处理科室为当前处理科室 + if(StringUtils.isBlank(handlerDepartCode) || StringUtils.equals(handlerDepartCode, taskGroup.getDepartCode())){ + tempList.add(taskGroup.getTaskGroupName()); + taskGroupNameList.add(tempList); + } } String jsonStr = JSONArray.fromObject(taskGroupNameList).toString(); HttpServletResponse response = StrutsParamUtils.getResponse(); @@ -1374,7 +1392,7 @@ map.put("id", tousseDefinition.getId()); map.put("name", tousseDefinition.getName()); map.put("borrowPrice", tousseDefinition.getBorrowPrice() == null ? 0 : tousseDefinition.getBorrowPrice()); - map.put("displayName", tousseDefinition.getName()); + map.put("displayName", StringUtils.isNotBlank(tousseDefinition.getExternalCode()) ? tousseDefinition.getExternalCode() + " " + tousseDefinition.getName() : tousseDefinition.getName()); map.put("isCleanedEntirely", tousseDefinition.getIsCleanedEntirely()); map.put("price", tousseDefinition.getPrice()); map.put("spelling", tousseDefinition.getSpelling()); @@ -1387,7 +1405,7 @@ map.put("id", tousseDefinition.getId()); map.put("name", tousseDefinition.getName()); map.put("borrowPrice", tousseDefinition.getBorrowPrice() == null ? 0 : tousseDefinition.getBorrowPrice()); - map.put("displayName", tousseDefinition.getName()); + map.put("displayName", StringUtils.isNotBlank(tousseDefinition.getExternalCode()) ? tousseDefinition.getExternalCode() + " " + tousseDefinition.getName() : tousseDefinition.getName()); map.put("isCleanedEntirely", tousseDefinition.getIsCleanedEntirely()); map.put("price", tousseDefinition.getPrice()); map.put("spelling", tousseDefinition.getSpelling()); Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseView.js =================================================================== diff -u -r12331 -r14003 --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseView.js (.../tousseView.js) (revision 12331) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseView.js (.../tousseView.js) (revision 14003) @@ -157,6 +157,7 @@ {header : "价格(元)",width : 65,dataIndex : 'price'}, {header : "借出单价(元/天)",width : 100,dataIndex : 'borrowPrice'}, {header : "大小",width : 60,dataIndex : 'packageSize'}, + {header : "外部编码",width : 60,dataIndex : 'externalCode'}, {header : "已上传图片",width : 80,dataIndex : 'isUploadImage',renderer : str_no}, {header : "已上传视频",width : 80,dataIndex : 'isUploadVideo',renderer : str_no}, {header : "是否回收",width : 80,dataIndex : 'isRecycling',renderer : str_no}, @@ -181,6 +182,7 @@ {name : 'isReview'}, {name : 'borrowPrice'}, {name : 'packageSize'}, + {name : 'externalCode'}, {name : 'isUploadImage'}, {name : 'isUploadVideo'}, {name : 'spelling'}, Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java =================================================================== diff -u -r13903 -r14003 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 13903) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/service/TousseDefinitionManagerImpl.java (.../TousseDefinitionManagerImpl.java) (revision 14003) @@ -1664,7 +1664,7 @@ Map temp = new HashMap(); temp.put("id", tousseDefinition.getId()); temp.put("name", tousseDefinition.getName()); - temp.put("displayName", tousseDefinition.getName()); + temp.put("displayName", StringUtils.isNotBlank(tousseDefinition.getExternalCode()) ? tousseDefinition.getExternalCode() + " " + tousseDefinition.getName() : tousseDefinition.getName()); temp.put("spelling", tousseDefinition.getSpelling()); Double price = tousseDefinition.getPrice(); Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseForm.js =================================================================== diff -u -r13962 -r14003 --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseForm.js (.../tousseForm.js) (revision 13962) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/tousse/tousseForm.js (.../tousseForm.js) (revision 14003) @@ -191,8 +191,8 @@ url : WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getTaskGroupName.do', listeners:{ load:function(store,records) { - if(records.length>0 && id==0) { - if (top.Ext.getCmp('taskGroup') && top.Ext.getCmp('taskGroup').getValue() == '') { + if(records.length > 0) { + if (top.Ext.getCmp('taskGroup')) { top.Ext.getCmp('taskGroup').setValue(records[0].data.taskGroupName); } } @@ -638,7 +638,22 @@ top.Ext.getCmp('isSterile').enable(); top.Ext.getCmp('isSterile').setValue('否'); top.Ext.getCmp('isApplyEntireTousse').enable(); + + //是否回收设为是 + top.Ext.getCmp('isRecycling').enable(); + top.Ext.getCmp('isRecycling').setValue('是'); + }else if(record.data.value == '敷料包'){ + //是否回收设为否 + top.Ext.getCmp('isRecycling').disable(); + top.Ext.getCmp('isRecycling').setValue('否'); + //是否灭菌禁用并默认赋值为'是' + top.Ext.getCmp('isSterile').disable(); + top.Ext.getCmp('isSterile').setValue('是'); + top.Ext.getCmp('isApplyEntireTousse').disable(); }else{ + //是否回收设为是 + top.Ext.getCmp('isRecycling').enable(); + top.Ext.getCmp('isRecycling').setValue('是'); //否则禁用并默认赋值为'是' top.Ext.getCmp('isSterile').disable(); top.Ext.getCmp('isSterile').setValue('是'); @@ -695,17 +710,62 @@ layout : 'form', items:[{ xtype : 'combo', + fieldLabel : '优先处理科室', + id : 'handlerDepartName', + name : 'handlerDepartName', + editable:false, + valueField : 'departName', + displayField : 'departName', + store : new Ext.data.Store({ + proxy : new Ext.data.HttpProxy({ + url : WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getHandlerDeparts.do', + method : 'POST' + }), + reader : new Ext.data.JsonReader({ + totalProperty : 'totalCount', + root : 'data' + }, [ + {name : 'departCode',mapping : 'departCode'}, + {name : 'departName',mapping : 'departName'} + ]) + }), + forceSelection : true, + allowBlank : false, + triggerAction : 'all', + anchor : '100%', + listeners:{ + select:function(combo, record, index){ + combo.setValue(record.data.departName); + top.Ext.getCmp("handlerDepartCode").setValue(record.data.departCode); + taskGroupJsonStore.baseParams["handlerDepartCode"] = record.data.departCode; + taskGroupJsonStore.load(); + top.Ext.getCmp("taskGroup").enable(); + } + } + }] + },{ + columnWidth : .25, + layout : 'form', + items:[{ + xtype : 'combo', fieldLabel : '任务组', id : 'taskGroup', name : 'taskGroup', + disabled:(id == 0 ? true : false), editable:false, valueField : 'taskGroupName', displayField : 'taskGroupName', store : taskGroupJsonStore, forceSelection : true, allowBlank : false, triggerAction : 'all', - anchor : '100%' + anchor : '100%', + listeners : { + beforequery : function (){ + taskGroupJsonStore.baseParams["handlerDepartCode"] = top.Ext.getCmp("handlerDepartCode").getValue(); + taskGroupJsonStore.load(); + } + } }] }, { columnWidth : .25, @@ -1115,42 +1175,7 @@ } }] - },{ - columnWidth : .25, - layout : 'form', - items:[{ - xtype : 'combo', - fieldLabel : '优先处理科室', - id : 'handlerDepartName', - name : 'handlerDepartName', - editable:false, - valueField : 'departName', - displayField : 'departName', - store : new Ext.data.Store({ - proxy : new Ext.data.HttpProxy({ - url : WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getHandlerDeparts.do', - method : 'POST' - }), - reader : new Ext.data.JsonReader({ - totalProperty : 'totalCount', - root : 'data' - }, [ - {name : 'departCode',mapping : 'departCode'}, - {name : 'departName',mapping : 'departName'} - ]) - }), - forceSelection : true, - allowBlank : false, - triggerAction : 'all', - anchor : '100%', - listeners:{ - select:function(combo, record, index){ - combo.setValue(record.data.departName); - top.Ext.getCmp("handlerDepartCode").setValue(record.data.departCode); - } - } - }] - }, { + }, { columnWidth : .25, layout : 'form', hidden : sstsConfig && sstsConfig.enableTousseDefinitionIsPecPackConfig ? false : true, @@ -1474,6 +1499,18 @@ } }] },{ + columnWidth : .25, + layout : 'form', + items:[{ + xtype : 'textfield', + fieldLabel : "外部编码", + allowBlank : true, + allowNegative:false, + name : 'externalCode', + id : 'externalCode', + anchor : '100%' + }] + },{ columnWidth : .7, layout : 'form', id : 'videoPanel', @@ -1682,7 +1719,7 @@ listeners :{ 'activate' : function(f) { if(id == 0){ - taskGroupJsonStore.load(); + //taskGroupJsonStore.load();//新增器械包时任务组不加载 packTypeStore.load(); //大小及是否整包清洗之前未选择过时,才赋初始值 if(top.Ext.getCmp('packageSize') && top.Ext.getCmp('packageSize').getValue() == ''){ @@ -1706,6 +1743,19 @@ top.Ext.getCmp('isSterile').enable(); top.Ext.getCmp('isSterile').setValue('否'); top.Ext.getCmp('isApplyEntireTousse').enable(); + }else if(top.Ext.getCmp('tousseType') == '敷料包'){ + if(top.Ext.getCmp('isRecycling').getValue() == '是'){ + //如果是否回收为是的话允许修改,如果为否,则禁用 + top.Ext.getCmp('isRecycling').enable(); + top.Ext.getCmp('isRecycling').setValue('否'); + }else{ + //如果是否回收为是的话允许修改,如果为否,则禁用 + top.Ext.getCmp('isRecycling').disable(); + } + + top.Ext.getCmp('isSterile').disable(); + top.Ext.getCmp('isSterile').setValue('是'); + top.Ext.getCmp('isApplyEntireTousse').disable(); }else{ top.Ext.getCmp('isSterile').disable(); top.Ext.getCmp('isSterile').setValue('是');