Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/containerForm.js
===================================================================
diff -u -r25816 -r26414
--- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/containerForm.js (.../containerForm.js) (revision 25816)
+++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/containerForm.js (.../containerForm.js) (revision 26414)
@@ -64,13 +64,17 @@
xtype : 'hidden',
name : 'departCode',
id : 'departCode'
+ },{
+ xtype : 'hidden',//科室编码隐藏域
+ name : "bindDepartCodes",
+ id : "bindDepartCodes"
}, {
layout : 'column',
- items : [ {
+ items : [{
columnWidth : 0.5,
layout : 'form',
labelWidth:80,
- items : [ {
+ items : [{
xtype : 'textfield',
fieldLabel : "条形码",
name : "barcode",
@@ -86,7 +90,6 @@
id : "containerName",
anchor : '95%'
},{
-
xtype : 'combo',
fieldLabel : '处理科室',
id : 'departName',
@@ -106,14 +109,29 @@
}
}
},{
- xtype : 'textfield',
- fieldLabel : "绑定科室编码",
- allowBlank : true,
- name : "bindDepartCodes",
- id : "bindDepartCodes",
- anchor : '95%'
- }]
- }, {
+ xtype : 'combo',
+ fieldLabel : '灭菌方式',
+ id : 'sterilingMode',
+ name : 'sterilingMode',
+ width : 130,
+ valueField : 'value',
+ displayField : 'value',
+ hidden : isDisinfectionBasket,
+ store : sterilingModeStore,
+ allowBlank: true,
+ editable:false,
+ forceSelection : true,
+ triggerAction : 'all',
+ anchor : '95%',
+ listeners : {
+ select : function(combo, record, index) {
+ if(record.data.id == 0 && record.data.value == " "){
+ top.Ext.getCmp("sterilingMode").setValue('');
+ }
+ }
+ }
+ }]
+ },{
columnWidth : 0.5,
layout : 'form',
labelWidth : 80,
@@ -174,31 +192,27 @@
forceSelection : true,
triggerAction : 'all',
anchor : '95%'
- },{
- xtype : 'combo',
- fieldLabel : '灭菌方式',
- id : 'sterilingMode',
- name : 'sterilingMode',
- width : 130,
- valueField : 'value',
- displayField : 'value',
- hidden : isDisinfectionBasket,
- store : sterilingModeStore,
- allowBlank: true,
- editable:false,
- forceSelection : true,
- triggerAction : 'all',
- anchor : '95%',
- listeners : {
- select : function(combo, record, index) {
- if(record.data.id == 0 && record.data.value == " "){
- top.Ext.getCmp("sterilingMode").setValue('');
- }
- }
- }
}]
- } ]
- } ],
+ },{
+ columnWidth :1,
+ layout : 'form',
+ labelWidth : 80,
+ items : [{
+ xtype : 'trigger',
+ fieldLabel : "绑定科室",
+ allowBlank : true,
+ name : "bindDepartNames",
+ id : "bindDepartNames",
+ msgTarget:'side',
+ readOnly:true,
+ onTriggerClick : function(){
+ setDepartOrgUnit('bindDepartCodes' , 'bindDepartNames' , top.Ext.getCmp('bindDepartCodes').getValue());
+ },
+ triggerClass : 'x-form-search-trigger',
+ anchor : '97.5%'
+ }]
+ }]
+ }],
buttons : [{
id : 'preview',
hidden : SSTS_ContainerBarcode_Print,
Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/containerView.jsp
===================================================================
diff -u -r24682 -r26414
--- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/containerView.jsp (.../containerView.jsp) (revision 24682)
+++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/containerView.jsp (.../containerView.jsp) (revision 26414)
@@ -22,6 +22,7 @@
+
Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/setDepartForm.js
===================================================================
diff -u
--- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/setDepartForm.js (revision 0)
+++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/container/setDepartForm.js (revision 26414)
@@ -0,0 +1,354 @@
+//科室与任务组grid表格的数据源
+var select_DepartsGridStore;
+//删除
+function removeSelect_DepartItem(p) {
+ var records = top.Ext.getCmp('select_DepartsGrid').getSelectionModel().getSelections();
+ if (records.length > 0) {
+ select_DepartsGridStore.remove(records[0]);
+ }
+}
+//删除多个
+function removeGridItem(supplyRoom){
+ var obj = top.Ext.getCmp('select_DepartsGrid');
+ var rows = obj.getSelectionModel().getSelections();// 返回值为
+ var store = obj.getStore();
+ if (rows.length == 0) {
+ showResult("请选择要删除的容器!");
+ return false;
+ }
+ if (rows) {
+ for ( var i = 0; i < rows.length; i++) {
+ store.remove(rows[i]);
+ }
+ }
+};
+/**
+ * 调用的入口函数、设置外来器械包的处理科室与任务组
+ * @param extHiddenElementId 控件id,即隐藏域的id
+ * @param extComboElementId 控件id,即下拉框的id
+ * @param departsCodes 页面上传回来的科室编码,多个情况用","
+ */
+function setDepartOrgUnit(extHiddenElementId, extComboElementId, departsCodes) {
+
+ //科室的窗口
+ var formWindowDeparts;
+ //确定保存
+ function saveSelect(extHiddenElementId, extComboElementId) {
+ var valueArr = [];
+ var showArr = [];
+ for (var i = 0; i < select_DepartsGridStore.getCount(); i++) {
+ var record = select_DepartsGridStore.getAt(i);
+ var obj = {};
+ // obj['departCode'] = record.get('departCode');
+ // obj['departName'] = record.get('departName');
+ valueArr.push(record.get('departCode'));
+ showArr.push(record.get('departName'));
+ }
+ if (valueArr.length != 0) {
+ // top.Ext.getCmp(extHiddenElementId).setValue(JSON.stringify(valueArr));
+ top.Ext.getCmp(extHiddenElementId).setValue(valueArr.join(";"));
+ top.Ext.getCmp(extComboElementId).setValue(showArr.join(" ; "));
+ } else {
+ top.Ext.getCmp(extHiddenElementId).setValue("");
+ top.Ext.getCmp(extComboElementId).setValue("");
+ }
+ select_DepartsGridStore.removeAll();
+ formWindowDeparts.close();
+ }
+
+ //科室record
+ var departAndTaskGroupRecord = Ext.data.Record.create([{
+ name: 'departCode'
+ },
+ {
+ name: 'departName'
+ }
+ ]);
+
+ /**
+ * 添加所选择的科室名称
+ */
+ function addSelect_Depart(name,departId) {
+ var departCode = top.Ext.getCmp('select_departCode').getValue();
+ var departName = top.Ext.getCmp('select_departCode').getRawValue();
+ if (departCode || (name != undefined && departId != undefined)) {
+ var isExist = false;
+ var isExistAll = false;
+ for (var i = 0; i < select_DepartsGridStore.getCount(); i++) {
+ var record = select_DepartsGridStore.getAt(i);
+ var tempName = record.get('departCode');
+ if (tempName == departCode || tempName == departId) {
+ isExist = true;
+ break;
+ }
+ }
+ if (!isExist) {
+ if( name != undefined && departId != undefined){
+ var record2 = new departAndTaskGroupRecord({
+ departCode: departId,
+ departName: name
+ });
+ select_DepartsGridStore.add(record2);
+ }else{
+ var record = new departAndTaskGroupRecord({
+ departCode: departCode,
+ departName: departName
+ });
+ select_DepartsGridStore.add(record);
+ }
+
+ top.Ext.getCmp('select_departCode').setValue('');
+ top.Ext.getCmp('select_departCode').setRawValue('');
+ }else {
+ if(name != undefined && departId != undefined){
+ showResult('科室:['+name+'] 已存在!');
+ }else{
+ showResult("供应编码:" + departCode + ",供应室名称:" + departName + "已添加,请不要重复添加!");
+ }
+
+ }
+ } else {
+ showResult("请选择供应室");
+ }
+ /* var departCode = top.Ext.getCmp('select_departCode').getValue();
+ var departName = top.Ext.getCmp('select_departCode').getRawValue();
+ if (departCode) {
+ var isExist = false;
+ for (var i = 0; i < select_DepartsGridStore.getCount(); i++) {
+ var record = select_DepartsGridStore.getAt(i);
+ if (record.get('departCode') == departCode) {
+ isExist = true;
+ break;
+ }
+ }
+ if (!isExist) {
+ var record = new departAndTaskGroupRecord({
+ departCode: departCode,
+ departName: departName
+ });
+ select_DepartsGridStore.add(record);
+ top.Ext.getCmp('select_departCode').setValue('');
+ top.Ext.getCmp('select_departCode').setRawValue('');
+ } else {
+ showResult("供应编码:" + departCode + ",供应室名称:" + departName + "已添加,请不要重复添加!");
+ }
+ } else {
+ showResult("请选择供应室");
+ } */
+ }
+ select_DepartsGridStore = new top.Ext.data.Store({
+ reader: departAndTaskGroupRecord
+ });
+ var smCheckbox = new top.Ext.grid.CheckboxSelectionModel({
+ singleSelect : false,
+ checkOnly: true
+ });
+ var cm = new top.Ext.grid.ColumnModel([
+ smCheckbox,
+ {
+ header: "科室编码",
+ width: 140,
+ dataIndex: 'departCode'
+ }, {
+ header: "科室名称",
+ width: 140,
+ dataIndex: 'departName'
+ }, {
+ header: '删除',
+ width: 40,
+ menuDisabled: true,
+ dataIndex: 'button',
+ renderer: function (v, p, record, index) {
+ return "
";
+ }
+ }]);
+
+ //科室数据源
+ var departJsonStore = new Ext.data.Store({
+ proxy: new Ext.data.HttpProxy({
+ url: WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getAllOrgUnitName.do',
+ method: 'POST'
+ }),
+ reader: new Ext.data.JsonReader({
+ root: 'data'
+ }, [{
+ name: 'departCode',
+ mapping: 'id'
+ },
+ {
+ name: 'name',
+ mapping: 'name'
+ }
+ ])
+ });
+
+ //顶部的工具栏
+ var tbar = [{
+ text: '选择科室'
+ }, {
+ xtype: 'combo',
+ id: 'select_departCode',
+ name: 'select_departCode',
+ queryParam: 'spell',
+ fieldLabel: '科室名称',
+ minChars: 0,
+ valueField: 'departId',
+ displayField: 'name',
+ anchor: '100%',
+ width: 200,
+ store: departJsonStore,
+ lazyInit: true,
+ triggerAction: 'all',
+ hideTrigger: true,
+ typeAhead: false,
+ allowBlank: true,
+ listeners: {
+ select: function (combo, record, index) {
+ var tem = record.data.departCode;
+ var name = record.data.name;
+ top.Ext.getCmp('select_departCode').setValue(tem);
+ top.Ext.getCmp('select_departCode').setRawValue(name);
+ }
+ }
+ }, {
+ text: '添加',
+ iconCls : 'btn_ext_add',
+ handler: function () {
+ addSelect_Depart();
+ }
+ },{
+ text: '添加全部',
+ iconCls : 'icon_systemset',
+ handler: function () {
+ Ext.Ajax.request({
+ url : WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!getAllOrgUnitName.do',
+ success : function(response, options) {
+ var result = Ext.decode(response.responseText);
+ var lenth = result.data.length;
+ for(var index = 0;index < lenth;index++){
+ var name = result.data[index].name;
+ var departId = result.data[index].id;
+ addSelect_Depart(name,departId);
+ //addGridItem(supplyRoomStoreApply,name,departId,"");
+ }
+ },
+ failure : function(response, options) {
+ }
+ });
+ }
+ },{
+ text: '删除',
+ iconCls : 'btn_ext_application_del',
+ handler : function() {
+ removeGridItem("select_DepartsGrid");
+ }
+ },{
+ text: '删除全部',
+ iconCls : 'btn_ext_application_del',
+ handler : function() {
+ top.Ext.MessageBox.confirm("请确认","确定要删除所有科室吗?",function(btn){
+ if(btn == "yes"){
+ select_DepartsGridStore.removeAll();
+ }
+ });
+ }
+ }
+];
+
+ var select_DepartsGridStoreFormObj = new top.Ext.FormPanel({
+ id: 'departAndTaskGroupForm',
+ frame: true,
+ labelAlign: 'right',
+ labelSeparator: ':',
+ bodyStyle: 'padding:5px 5px 0px 5px',
+ autoWidth: true,
+ autoHeight: true,
+ autoScroll: true,
+ items: [{
+ layout: 'column',
+ items: [{
+ columnWidth: 1,
+ layout: 'form',
+ items: [
+ new top.Ext.grid.GridPanel({
+ id: 'select_DepartsGrid',
+ store: select_DepartsGridStore,
+ tbar: tbar,
+ cm: cm,
+ width: 140,
+ height: 240,
+ isCheckboxSelectionModel: true,
+ frame: false,
+ viewConfig: {
+ forceFit: true
+ },
+ bodyStyle: 'border:1px solid #afd7af',
+ anchor: '100%',
+ sm:smCheckbox,
+ selModel: new top.Ext.grid.RowSelectionModel({
+ singleSelect: false,
+ checkOnly: true
+ })
+ })
+ ]
+ }]
+ }],
+ buttons: [{
+ id: 'saveBtn2',
+ text: '确定',
+ handler: function () {
+ saveSelect(extHiddenElementId, extComboElementId);
+ }
+ }, {
+ id: 'cancleBtn2',
+ text: '取消',
+ handler: function () {
+ select_DepartsGridStore.removeAll();
+ formWindowDeparts.close();
+ }
+ }]
+ });
+
+ formWindowDeparts = new top.Ext.Window({
+ id: 'formWindowDepartAndTaskGroupWin',
+ layout: 'fit',
+ title: '选择科室',
+ width: 650,
+ modal: true,
+ autoHeight: true,
+ border: false,
+ plain: true,
+ items: [select_DepartsGridStoreFormObj]
+ });
+ formWindowDeparts.show();
+ //根据传递的科室编码获取科室信息
+ if (departsCodes) {
+ departsCodes = departsCodes.replace(/;/g,",");
+ Ext.Ajax.request({
+ url: WWWROOT + '/disinfectSystem/baseData/supplyRoomConfigAction!loadOrgUnitInfoByOrgUnitCodings.do',
+ params: {
+ departCodes: departsCodes
+ },
+ success: function (response, options) {
+ var result = Ext.decode(response.responseText);
+ var data = result.data;
+ if (result.success) {
+ if (data) {
+ for (var i = 0; i < data.length; i++) {
+ var record = new departAndTaskGroupRecord({
+ departCode: data[i]["departCode"],
+ departName: data[i]["departName"]
+ });
+ select_DepartsGridStore.add(record);
+ }
+ }
+ } else {
+ showResult("加载科室信息" + result.message)
+ }
+ },
+ failure: function (response, options) {
+ showResult("加载科室信息报错");
+ }
+ })
+ };
+}
\ No newline at end of file