Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/PackingAction.java =================================================================== diff -u -r15886 -r15893 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/PackingAction.java (.../PackingAction.java) (revision 15886) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/action/PackingAction.java (.../PackingAction.java) (revision 15893) @@ -250,6 +250,8 @@ String idCardInstanceId = request.getParameter("idCardBarcode"); String idCardDefinitionId = request.getParameter("idCardDefinitionId"); String disinfectionDate = request.getParameter("disinfectionDate"); + String depart = request.getParameter("depart");// 临床科室 + String departCoding = request.getParameter("departCoding");// 临床科室编码 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date = null; @@ -373,6 +375,8 @@ packingRecord.setTaskGroup((taskGroup==null||taskGroup.trim().length()==0)?td.getTaskGroup():taskGroup); packingRecord.setOrgUnitCoding(AcegiHelper.getLoginUser() .getOrgUnitCodingFromSupplyRoomConfig()); + packingRecord.setDepart(depart); + packingRecord.setDepartCoding(departCoding); packingManager.saveOrUpdate(packingRecord); // 打印条码、保存包实例 Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r15886 -r15893 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 15886) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 15893) @@ -782,6 +782,8 @@ if(recylingRecord != null){ department = recylingRecord.getDepart(); } + }else{ + department = packingRecord.getDepart(); } if(StringUtils.isNotBlank(department)){ obj.put("department", department); Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/packing/PackingRecord.java =================================================================== diff -u -r14386 -r15893 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/packing/PackingRecord.java (.../PackingRecord.java) (revision 14386) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/packing/PackingRecord.java (.../PackingRecord.java) (revision 15893) @@ -63,6 +63,15 @@ private String wrapper;// 包装员 /** + * 临床科室 + */ + private String depart; + /** + * 临床科室编码 + */ + private String departCoding; + + /** * 是否为自定义装配 */ private Boolean isDirectPacking = false; @@ -188,6 +197,22 @@ this.wrapper = wrapper; } + public String getDepart() { + return depart; + } + + public void setDepart(String depart) { + this.depart = depart; + } + + public String getDepartCoding() { + return departCoding; + } + + public void setDepartCoding(String departCoding) { + this.departCoding = departCoding; + } + public Boolean getIsDirectPacking() { return isDirectPacking; } Index: ssts-web/src/main/webapp/disinfectsystem/packing/directPacking.js =================================================================== diff -u -r15581 -r15893 --- ssts-web/src/main/webapp/disinfectsystem/packing/directPacking.js (.../directPacking.js) (revision 15581) +++ ssts-web/src/main/webapp/disinfectsystem/packing/directPacking.js (.../directPacking.js) (revision 15893) @@ -41,6 +41,22 @@ } }); + + //申请科室Store + var appDepartJsonStore = new Ext.data.Store({ + proxy : new Ext.data.HttpProxy({ + url : WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getApplicationDepartJson.do', + method : 'POST' + }), + reader : new Ext.data.JsonReader({ + root : 'data' + },[ + {name : 'id',mapping : 'id'}, + {name : 'departCode',mapping : 'departCode'}, + {name : 'name',mapping : 'name'} + ] + ) + }); //器械包 var tousseDefinitionStore = new Ext.data.Store({ @@ -148,6 +164,10 @@ var sterilingType = Ext.getCmp("sterilingType").getValue(); var sterilizer = Ext.getCmp("sterilizer").getValue(); var frequency = Ext.getCmp("frequency").getValue(); + var department = ''; + if(sstsConfig.selectDepartInCustomPacking){ + department=Ext.getCmp('depart').getValue(); + } if(barcodeStr != null && barcodeStr.length > 0){ var tousseName = Ext.getCmp('tousseName').getValue(); @@ -201,6 +221,7 @@ 'idCardDefinitionUseAmount':idCardDefinitionUseAmount,'packageTypeAbbreviation':packageTypeAbbreviation}; obj.sterilizerName = sterilizer; obj.sterileFrequency = frequency; + obj.department = department; defaultPrintPackage(obj); tempPrintNum--; } @@ -595,6 +616,11 @@ name : 'wrapperCode', value : wrapperCode },{ + xtype : 'hidden', + id : 'departCoding', + name : 'departCoding', + value : wrapperCode + },{ columnWidth : .33, layout : 'form', cls:'edit-5char-labelwidth', @@ -765,6 +791,38 @@ columnWidth : .33, layout : 'form', cls:'edit-5char-labelwidth', + hidden : !sstsConfig.selectDepartInCustomPacking, + items : [{ + xtype : 'combo', + fieldLabel : '申请科室', + itemId : 'depart', + name : 'depart', + id : 'depart', + queryParam : 'spell', + minChars : 0, + valueField : 'name', + displayField : 'name', + store : appDepartJsonStore, + forceSelection : true, + lazyInit : true, + triggerAction : 'all', + hideTrigger : true, + typeAhead : false, + allowBlank : true, + flex : 1, + listeners:{ + select:function(combo, record, index){ + Ext.getCmp('departCoding').setValue(record.data.departCode); + }, + focus : function(thiz){ + thiz.selectText(); + } + } + }] + },{ + columnWidth : .33, + layout : 'form', + cls:'edit-5char-labelwidth', items : [ { xtype : 'combo', fieldLabel : "包装类型", Index: forgon-core/src/main/java/com/forgon/directory/service/OrgUnitManagerImpl.java =================================================================== diff -u -r15615 -r15893 --- forgon-core/src/main/java/com/forgon/directory/service/OrgUnitManagerImpl.java (.../OrgUnitManagerImpl.java) (revision 15615) +++ forgon-core/src/main/java/com/forgon/directory/service/OrgUnitManagerImpl.java (.../OrgUnitManagerImpl.java) (revision 15893) @@ -482,6 +482,8 @@ String sql38 = "update Sterilizer set department = '" + newOrgName + "' where orgUnitCoding = '" + orgCoding + "'"; + //历史装配记录 + String sql39 = "update PackingRecord set depart = '" + newOrgName + "' where departCoding = '" + orgCoding + "'"; objectDao.excuteSQL(sql18); objectDao.excuteSQL(sql19); objectDao.excuteSQL(sql20); @@ -504,6 +506,7 @@ objectDao.excuteSQL(sql36); objectDao.excuteSQL(sql37); objectDao.excuteSQL(sql38); + objectDao.excuteSQL(sql39); } // 设置部门管理者 Index: ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/print/printConfig.js =================================================================== diff -u -r15805 -r15893 --- ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/print/printConfig.js (.../printConfig.js) (revision 15805) +++ ssts-web/src/main/webapp/disinfectsystem/config/dgszyy/print/printConfig.js (.../printConfig.js) (revision 15893) @@ -1020,6 +1020,48 @@ LODOP.ADD_PRINT_BARCODE("71mm","5mm","40mm","8mm","128Auto", obj.barcode);// 条码2 LODOP.ADD_PRINT_BARCODE("71mm","55mm","40mm","8mm","128Auto", obj.barcode);// 条码3 } +function getDepartAndName(obj){ + ret = ''; + if(!isUndefinedOrNullOrEmpty(obj.department)){ + ret += obj.department; + ret += '-'; + } + ret += obj.name; + return ret; +} +function getDepartAndNameHtm(obj,departSize,tousseSize,departBold){ + if (departSize <= 0){ + departSize = 1; + } + if(tousseSize <= 0){ + tousseSize = 1; + } + var ret = "