" + v + "
"; +} + +//删除器械维修记录 +function deleteInstrumentRepair() { + var selectedRecords = instrumentRepairGrid.getSelectionModel().getSelection(); + var selectedCount = instrumentRepairGrid.getSelectionModel().getCount(); + var ids = []; + if (selectedCount < 1) { + showResult("请选择要删除的数据"); + } else { + for (var i = 0, len = selectedRecords.length; i < len; i++) { + ids[i] = selectedRecords[i].data['id']; + } + Ext4.MessageBox.confirm("请确认", "确定要删除选中的信息吗?", function (button, text) { + if ("yes" == button) { + Ext4.Ajax.request({ + url: WWWROOT + '/disinfectSystem/baseData/instrumentRepairAction!deleteInstrumentRepair.do', + params: { ids: ids.join(';') }, + success: function (response, options) { + var result = Ext4.JSON.decode(response.responseText); + var success = result.success; + if (true != success) { + showResult(result.message); + return; + } else { + showResult('删除成功!'); + listStore.load(); + } + }, + failure: function (response, options) { + var result = Ext4.JSON.decode(response.responseText); + showResult(result.message); + } + }); + } + }); + } +} + +//审核器械维修记录 +function reviewInstrumentRepair() { + var selectedRecords = instrumentRepairGrid.getSelectionModel().getSelection(); + var selectedCount = instrumentRepairGrid.getSelectionModel().getCount(); + var ids = []; + if (selectedCount < 1) { + showResult("请选择要审核的数据"); + } else { + for (var i = 0, len = selectedRecords.length; i < len; i++) { + ids[i] = selectedRecords[i].data['id']; + } + Ext4.MessageBox.confirm("请确认", "确定要审核选中的信息吗?", function (button, text) { + if ("yes" == button) { + Ext4.Ajax.request({ + url: WWWROOT + '/disinfectSystem/baseData/instrumentRepairAction!reviewInstrumentRepair.do', + params: { ids: ids.join(';') }, + success: function (response, options) { + var result = Ext4.JSON.decode(response.responseText); + if (result.success) { + showResult('审核成功!'); + listStore.load(); + } else { + showResult(result.message || '审核失败'); + } + }, + failure: function (response, options) { + var result = Ext4.JSON.decode(response.responseText); + showResult(result.message); + } + }); + } + }); + } +} + +//是否隐藏字段名称 +function isHiddenField() { + var hiddenFieldsForInstrumentRepairRecords = sstsConfig.hiddenFieldsForInstrumentRepairRecords || []; + if (hiddenFieldsForInstrumentRepairRecords.length > 0) { + for (var i = 0; i < hiddenFieldsForInstrumentRepairRecords.length; i++) { + var item = []; + } + } else { + return false; + } +} + +Ext4.onReady(function () { + Ext4.QuickTips.init(); + var pageSize = 20; + var roomNumberIsHidden = false; + var washHandNurseNameIsHidden = false; + var repairNurseNameIsHidden = false; + var engineerIsHidden = false; + var repairTypeIsHidden = false; + var repairDateTimeIsHidden = false; + var outHandoverUserNameIsHidden = false; + var outHandoverDateTimeIsHidden = false; + var returnHandoverUserNameIsHidden = false; + var returnHandoverDateTimeIsHidden = false; + var discardDateTimeIsHidden = false; + var reviewStatusIsHidden = false; + var reviewerNameIsHidden = false; + var hiddenFieldsForInstrumentRepairRecords = sstsConfig.hiddenFieldsForInstrumentRepairRecords || []; + if (hiddenFieldsForInstrumentRepairRecords.length > 0) { + for (var i = 0; i < hiddenFieldsForInstrumentRepairRecords.length; i++) { + var item = hiddenFieldsForInstrumentRepairRecords[i]; + if (item == '房间号') { + roomNumberIsHidden = true; + } + if (item == '洗手护士(发现故障)' || item == '洗手护士(发现故障)') { + washHandNurseNameIsHidden = true; + } + if (item == '送修护士') { + repairNurseNameIsHidden = true; + } + if (item == '工程师') { + engineerIsHidden = true; + } + if (item == '送修类别') { + repairTypeIsHidden = true; + } + if (item == '维修时间') { + repairDateTimeIsHidden = true; + } + if (item == '出科交接人') { + outHandoverUserNameIsHidden = true; + } + if (item == '出科时间') { + outHandoverDateTimeIsHidden = true; + } + if (item == '回科交接人') { + returnHandoverUserNameIsHidden = true; + } + if (item == '回科时间') { + returnHandoverDateTimeIsHidden = true; + } + if (item == '报废时间') { + discardDateTimeIsHidden = true; + } + if (item == '审核状态') { + reviewStatusIsHidden = true; + } + if (item == '审核人') { + reviewerNameIsHidden = true; + } + } + } + + var columns = [ + { header: "登记人", dataIndex: 'registrantName', renderer: renderCallModifyFunction }, + { header: "登记时间", dataIndex: 'registerDateTime', width: 140 }, + { header: "状态", dataIndex: 'repairStatus', sortable: false, width: 80, renderer: rendererRepairStatus }, + { header: "器械名称", dataIndex: 'materialNameAndAmount', sortable: false, renderer: renderCallModifyFunction }, + { header: "房间号", dataIndex: 'roomNumber', sortable: false, hidden: roomNumberIsHidden }, + { header: "洗手护士(发现故障)", dataIndex: 'washHandNurseName', sortable: false, hidden: washHandNurseNameIsHidden }, + { header: "送修护士", dataIndex: 'repairNurseName', sortable: false, hidden: repairNurseNameIsHidden }, + { header: "工程师(现场)", dataIndex: 'engineer', sortable: false, hidden: engineerIsHidden }, + { header: "送修类别", dataIndex: 'repairType', sortable: false, hidden: repairTypeIsHidden }, + { header: "维修时间", dataIndex: 'repairDateTime', sortable: false, width: 140, hidden: repairDateTimeIsHidden }, + { header: "出科交接人", dataIndex: 'outHandoverUserName', sortable: false, hidden: outHandoverUserNameIsHidden }, + { header: "出科时间", dataIndex: 'outHandoverDateTime', sortable: false, width: 140, hidden: outHandoverDateTimeIsHidden }, + { header: "回科交接人", dataIndex: 'returnHandoverUserName', sortable: false, hidden: returnHandoverUserNameIsHidden }, + { header: "回科时间", dataIndex: 'returnHandoverDateTime', sortable: false, width: 140, hidden: returnHandoverDateTimeIsHidden }, + { header: "报废时间", dataIndex: 'discardDateTime', sortable: false, width: 140, hidden: discardDateTimeIsHidden }, + { header: "审核状态", dataIndex: 'reviewStatus', sortable: false, hidden: reviewStatusIsHidden }, + { header: "审核人", dataIndex: 'reviewerName', sortable: false, hidden: reviewerNameIsHidden }, + { header: "备注", dataIndex: 'remark', sortable: false } + ]; + var tbar = [{ + text: '添加', + iconCls: 'btn_ext_application_add', + hidden: SSTS_InstrumentRepair_handle, + handler: function () { + showAddOrEditWindow(); + } + }, '-', { + text: '修改', + iconCls: 'btn_ext_application_edit', + hidden: SSTS_InstrumentRepair_handle, + handler: function () { + var selectedRecords = instrumentRepairGrid.getSelectionModel().getSelection(); + var selectedCount = instrumentRepairGrid.getSelectionModel().getCount(); + if (selectedCount < 1) { + showResult("请选择要修改的数据"); + } else if (selectedCount > 1) { + showResult("只能修改一条数据"); + } else { + var id = selectedRecords[0].data['id']; + var reviewStatus = selectedRecords[0].data['reviewStatus']; + if (reviewStatus == '已审核') { + showResult('该记录状态为已审核,不能修改!'); + return + } + showAddOrEditWindow(id); + } + } + }, '-', { + text: '删除', + iconCls: 'btn_ext_application_del', + hidden: SSTS_InstrumentRepair_handle, + handler: function () { + deleteInstrumentRepair(); + } + }, '-', { + text: '审核', + iconCls: 'icon_set', + hidden: SSTS_InstrumentRepair_handle, + handler: function () { + reviewInstrumentRepair(); + } + }, '->', { + width: 70, + text: '搜索列', + id: 'searchButton', + menu: { + id: 'searchMenu', + items: [{ + xtype: 'menucheckitem', + name: 'registrantName', + checked: true, + text: '登记人' + }, { + xtype: 'menucheckitem', + name: 'repairStatus', + checked: true, + text: '状态' + }, { + xtype: 'menucheckitem', + name: 'roomNumber', + checked: true, + text: '房间号' + }, { + xtype: 'menucheckitem', + name: 'washHandNurseName', + checked: true, + text: '洗手护士' + }, { + xtype: 'menucheckitem', + name: 'repairNurseName', + checked: true, + text: '送修护士' + }, { + xtype: 'menucheckitem', + name: 'engineer', + checked: true, + text: '工程师' + }, { + xtype: 'menucheckitem', + name: 'repairType', + checked: true, + text: '送修类别' + }, { + xtype: 'menucheckitem', + name: 'outHandoverUserName', + checked: true, + text: '出科交接人' + }, { + xtype: 'menucheckitem', + name: 'returnHandoverUserName', + checked: true, + text: '回科交接人' + }, { + xtype: 'menucheckitem', + name: 'reviewStatus', + checked: true, + text: '审核状态' + }, { + xtype: 'menucheckitem', + name: 'reviewerName', + checked: true, + text: '审核人' + }, { + xtype: 'menucheckitem', + name: 'remark', + checked: true, + text: '备注' + }] + }, + listeners: { + focus: function (thisButton, The, eOpts) { + Ext4.getCmp('searchKeyWord').focus(); + } + } + }, { + xtype: 'textfield', + name: 'searchKeyWord', + id: 'searchKeyWord', + enableKeyEvents: true, + listeners: { + keydown: function (thisTextfield, e, eOpts) { + if (e.keyCode == 13) { + search(listStore); + } + } + } + }, { + text: '搜索', + handler: function (thisButton) { + search(listStore); + } + }]; + + listStore = new Ext4.data.JsonStore({ + pageSize: pageSize, + proxy: { + type: 'ajax', + url: WWWROOT + '/disinfectSystem/baseData/instrumentRepairAction!loadInstrumentRepairList.do', + reader: { + root: 'data', + totalProperty: 'totalCount' + }, + extraParams: {} + }, + fields: [ + { name: 'id' }, + { name: 'registrantName' }, + { name: 'registerDateTime' }, + { name: 'repairStatus' }, + { name: 'materialNameAndAmount' }, + { name: 'roomNumber' }, + { name: 'washHandNurseName' }, + { name: 'repairNurseName' }, + { name: 'engineer' }, + { name: 'repairType' }, + { name: 'repairDateTime' }, + { name: 'outHandoverUserName' }, + { name: 'outHandoverDateTime' }, + { name: 'returnHandoverUserName' }, + { name: 'returnHandoverDateTime' }, + { name: 'discardDateTime' }, + { name: 'reviewerName' }, + { name: 'reviewStatus' }, + { name: 'remark' } + ] + }); + + var pageSizeStore = new Ext4.data.Store({ + fields: [{ name: 'value' }], + data: [{ value: 20 }, { value: 40 }, { value: 60 }, { value: 80 }, { value: 100 }] + }); + + var combo = Ext4.create('Ext4.form.ComboBox', { + name: 'pagesize', + store: pageSizeStore, + valueField: 'value', + displayField: 'value', + editable: false, + emptyText: pageSize, + width: 50 + }); + + combo.on("select", function (comboBox, item) { + var pagingBar = Ext4.getCmp('pagingbar'); + var pageSize = parseInt(comboBox.getValue()) + pagingBar.pageSize = pageSize; + listStore.limit = pageSize; + listStore.pageSize = pageSize; + listStore.loadPage(1); + }) + + instrumentRepairGrid = new Ext4.grid.GridPanel({ + title: '器械维修管理', + columns: columns, + frame: false, + autoScroll: false, + store: listStore, + tbar: tbar, + dockedItems: [{ + xtype: 'pagingtoolbar', + store: listStore, + id: 'pagingbar', + dock: 'bottom', + items: ['-', '每页显示', combo, '条'], + displayInfo: true + }], + viewConfig: { + autoFill: true + }, + selModel: new Ext4.selection.CheckboxModel() + }); + + listStore.loadPage(1); + + new Ext4.container.Viewport({ + layout: 'border', + items: [{ + region: 'center', + layout: 'fit', + items: [instrumentRepairGrid] + }] + }); +}); \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/instrumentRepairManagement/instrumentRepairManagementForm.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/instrumentRepairManagement/instrumentRepairManagementForm.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/instrumentRepairManagement/instrumentRepairManagementForm.js (revision 33112) @@ -0,0 +1,1184 @@ +var win; +var departWin; +var formPanel; +var tousseArray = []; +var tousseCount = 0; + +function cancel() { + win.close(); +} + +//保存器械维修记录 +function saveForm() { + var registrantName = top.Ext4.getCmp('registrantName').getRawValue(); + var registerDateTime = top.Ext4.getCmp('registerDateTime').getRawValue(); + var repairStatus = top.Ext4.getCmp('repairStatus').getValue(); + var materialDefinitionName = top.Ext4.getCmp('materialDefinitionName').getRawValue(); + var materialDefinitionID = top.Ext4.getCmp('materialDefinitionID').getValue(); + var tousseDefinitionName = top.Ext4.getCmp('tousseDefinitionName').getRawValue(); + var tousseDefinitionID = top.Ext4.getCmp('tousseDefinitionID').getValue(); + var amount = top.Ext4.getCmp('amount').getValue(); + var roomNumber = top.Ext4.getCmp('roomNumber').getValue(); + var washHandNurseName = top.Ext4.getCmp('washHandNurseName').getRawValue(); + var repairNurseName = top.Ext4.getCmp('repairNurseName').getRawValue(); + var engineer = top.Ext4.getCmp('engineer').getValue(); + var repairType = top.Ext4.getCmp('repairType').getValue().value || ''; + var uniqueTousse = top.Ext4.getCmp('uniqueTousse').getValue().value || ''; + var repairDateTime = top.Ext4.getCmp('repairDateTime').getRawValue(); + var infected = top.Ext4.getCmp('infected').getValue().value || ''; + var infectDisease = ''; + var repairDesc = top.Ext4.getCmp('repairDesc').getValue(); + var outHandoverUserName = top.Ext4.getCmp('outHandoverUserName').getRawValue(); + var outHandoverDateTime = top.Ext4.getCmp('outHandoverDateTime').getRawValue(); + var returnHandoverUserName = top.Ext4.getCmp('returnHandoverUserName').getRawValue(); + var returnHandoverDateTime = top.Ext4.getCmp('returnHandoverDateTime').getRawValue(); + var discardDateTime = top.Ext4.getCmp('discardDateTime').getRawValue(); + var remark = top.Ext4.getCmp('remark').getValue(); + var id = top.Ext4.getCmp('id').getValue(); + if (infected == '是') { + infectDisease = top.Ext4.getCmp('infectDisease').getValue().value || ''; + var infectDisease6 = top.Ext4.getCmp('infectDisease6Value').getValue() || ''; + infectDisease = infectDisease.join(';'); + if (infectDisease6 !== '') { + var value = top.Ext4.getCmp('infectDisease6Value').getValue(); + if (value !== '') { + infectDisease += ':' + value; + } + } + } + var tousseMaterialInfo = [{ + amount: amount, + materialDefinitionID: materialDefinitionID, + tousseDefinitionID: tousseDefinitionID, + tousseDefinitionName: tousseDefinitionName, + materialDefinitionName: materialDefinitionName + }] + + if (tousseArray.length > 0) { + for (var i = 0; i < tousseArray.length; i++) { + var j = tousseArray[i]; + var materialDefinitionName = top.Ext4.getCmp('materialDefinitionName_' + j).getRawValue(); + var materialDefinitionID = top.Ext4.getCmp('materialDefinitionID_' + j).getValue(); + var tousseDefinitionName = top.Ext4.getCmp('tousseDefinitionName_' + j).getRawValue(); + var tousseDefinitionID = top.Ext4.getCmp('tousseDefinitionID_' + j).getValue(); + var amount = top.Ext4.getCmp('amount_' + j).getValue(); + tousseMaterialInfo.push({ + amount: amount, + materialDefinitionID: materialDefinitionID, + tousseDefinitionID: tousseDefinitionID, + tousseDefinitionName: tousseDefinitionName, + materialDefinitionName: materialDefinitionName + }) + } + } + var params = { + id: id, + registrantName: registrantName, + registerDateTime: registerDateTime, + repairStatus: repairStatus, + tousseMaterialInfo: JSON.stringify(tousseMaterialInfo), + roomNumber: roomNumber, + washHandNurseName: washHandNurseName, + repairNurseName: repairNurseName, + engineer: engineer, + repairType: repairType, + uniqueTousse: uniqueTousse, + repairDateTime: repairDateTime, + infected: infected, + infectDisease: infectDisease, + repairDesc: repairDesc, + outHandoverUserName: outHandoverUserName, + outHandoverDateTime: outHandoverDateTime, + returnHandoverUserName: returnHandoverUserName, + returnHandoverDateTime: returnHandoverDateTime, + discardDateTime: discardDateTime, + remark: remark + } + Ext4.Ajax.request({ + url: WWWROOT + '/disinfectSystem/baseData/instrumentRepairAction!saveInstrumentRepair.do', + params: params, + success: function (response, options) { + var result = Ext4.JSON.decode(response.responseText); + if (result.success) { + showResult('保存成功'); + listStore.loadPage(1); + win.close(); + } else { + showResult('系统加载出错,请稍候再试'); + } + }, + failure: function (response, options) { + showResult('系统加载出错,请稍候再试'); + } + }); +} + +//获取人员store +function getUserStore() { + var userStore = new Ext4.data.Store({ + proxy: { + type: 'ajax', + url: WWWROOT + '/systemmanage/user/userAction!loadUsersBySearchString.do', + reader: { + root: 'data' + } + }, + fields: [ + { name: 'id', mapping: 'id' }, + { name: 'fullName', mapping: 'fullName' } + ] + }); + return userStore; +} + +//获取材料的store +function getMaterialDefinition() { + var materialDefinitionStore = new Ext4.data.Store({ + proxy: { + type: 'ajax', + url: WWWROOT + '/disinfectSystem/baseData/materialDefinitionAction!getMaterialDefinitionDataIncludeForeignMD.do?selectType=material', + reader: { + root: 'data', + totalProperty: 'totalCount' + } + }, + fields: [ + { name: 'id', mapping: 'id' }, + { name: 'spelling', mapping: 'spelling' }, + { name: 'name', mapping: 'name' }, + { name: 'count', mapping: 'count' } + ] + }); + return materialDefinitionStore; +} + +//获取器械包的store +function getTousseDefinition() { + var tousseDefinitionStore = new Ext4.data.Store({ + proxy: { + type: 'ajax', + url: WWWROOT + '/disinfectSystem/baseData/tousseDefinitionAction!getTousseAndDiposableGoodsData.do?type=' + encodeURI('器械包和外来器械包'), + reader: { + root: 'data', + totalProperty: 'totalCount' + } + }, + fields: [ + { name: 'id', mapping: 'id' }, + { name: 'spelling', mapping: 'spelling' }, + { name: 'name', mapping: 'name' }, + { name: 'displayName', mapping: 'displayName' }, + { name: 'amount', mapping: 'amount' } + ] + }); + return tousseDefinitionStore; +} + +function getTime(time) { + if ((time || '') !== '') { + var t = time.split(':')[0] + ':' + time.split(':')[1]; + return t; + } +} + +//获取器械维修的详情 +function loadInstrumentRepair(id) { + Ext4.Ajax.request({ + url: WWWROOT + '/disinfectSystem/baseData/instrumentRepairAction!loadInstrumentRepair.do', + params: { id: id }, + success: function (response, options) { + var result = Ext4.JSON.decode(response.responseText); + if (result.success) { + var item = result.data; + top.Ext4.getCmp('registrantName').setRawValue(item.registrantName); + top.Ext4.getCmp('registerDateTime').setValue(getTime(item.registerDateTime)); + top.Ext4.getCmp('repairStatus').setValue(item.repairStatus); + tousseCount = item.instrumentRepairGoodsList.length - 1; + for (var i = 0; i < item.instrumentRepairGoodsList.length; i++) { + var list = item.instrumentRepairGoodsList[i]; + if (i == 0) { + top.Ext4.getCmp('materialDefinitionName').setRawValue(list.materialDefinitionName); + top.Ext4.getCmp('materialDefinitionID').setValue(list.materialDefinitionID); + top.Ext4.getCmp('tousseDefinitionName').setRawValue(list.tousseDefinitionName); + top.Ext4.getCmp('tousseDefinitionID').setValue(list.tousseDefinitionID); + top.Ext4.getCmp('amount').setValue(list.amount); + } else { + addTousseItems(i); + top.Ext4.getCmp('materialDefinitionName_' + i).setRawValue(list.materialDefinitionName); + top.Ext4.getCmp('materialDefinitionID_' + i).setValue(list.materialDefinitionID); + top.Ext4.getCmp('tousseDefinitionName_' + i).setRawValue(list.tousseDefinitionName); + top.Ext4.getCmp('tousseDefinitionID_' + i).setValue(list.tousseDefinitionID); + top.Ext4.getCmp('amount_' + i).setValue(list.amount); + tousseArray.push(i); + } + } + top.Ext4.getCmp('roomNumber').setValue(item.roomNumber); + top.Ext4.getCmp('washHandNurseName').setRawValue(item.washHandNurseName); + top.Ext4.getCmp('repairNurseName').setRawValue(item.repairNurseName); + top.Ext4.getCmp('engineer').setValue(item.engineer); + top.Ext4.getCmp('repairType').setValue({ value: item.repairType }); + top.Ext4.getCmp('uniqueTousse').setValue({ value: item.uniqueTousse }); + top.Ext4.getCmp('repairDateTime').setValue(getTime(item.registerDateTime)); + top.Ext4.getCmp('infected').setValue({ value: item.infected }); + if (item.infected == '是') { + if (item.infectDisease !== '') { + var arr = []; + for (var j = 0; j < item.infectDisease.split(';').length; j++) { + if (item.infectDisease.split(';')[j].indexOf('其他') > -1) { + var otherArr = item.infectDisease.split(';')[j].split(':'); + arr.push(otherArr[0]); + top.Ext4.getCmp('infectDisease6Value').setValue(otherArr[1]); + } else { + arr.push(item.infectDisease.split(';')[j]); + } + } + top.Ext4.getCmp('infectDisease').setValue({ value: arr }); + } + } + top.Ext4.getCmp('repairDesc').setValue(item.repairDesc); + top.Ext4.getCmp('outHandoverUserName').setRawValue(item.outHandoverUserName); + top.Ext4.getCmp('outHandoverDateTime').setValue(getTime(item.outHandoverDateTime)); + top.Ext4.getCmp('returnHandoverUserName').setRawValue(item.returnHandoverUserName); + top.Ext4.getCmp('returnHandoverDateTime').setValue(getTime(item.returnHandoverDateTime)); + top.Ext4.getCmp('discardDateTime').setValue(getTime(item.discardDateTime)); + top.Ext4.getCmp('remark').setValue(item.remark); + } else { + showResult('系统加载出错,请稍候再试'); + } + }, + failure: function (response, options) { + showResult('系统加载出错,请稍候再试'); + } + }); +} + +//更改维修状态 +function changeRepairStatusStore(status, timeObj) { + if (!timeObj.outHandoverUserNameIsHidden) { + top.Ext4.getCmp('outHandoverUserName').allowBlank = true; + } + if (!timeObj.outHandoverDateTimeIsHidden) { + top.Ext4.getCmp('outHandoverDateTime').allowBlank = true; + } + if (!timeObj.returnHandoverUserNameIsHidden) { + top.Ext4.getCmp('returnHandoverUserName').allowBlank = true; + } + if (!timeObj.returnHandoverDateTimeIsHidden) { + top.Ext4.getCmp('returnHandoverDateTime').allowBlank = true; + } + if (!timeObj.discardDateTimeIsHidden) { + top.Ext4.getCmp('discardDateTime').allowBlank = true; + } + + if (status == '维修中') { + if (!timeObj.outHandoverUserNameIsHidden) { + top.Ext4.getCmp('outHandoverUserName').allowBlank = false; + } + if (!timeObj.outHandoverDateTimeIsHidden) { + top.Ext4.getCmp('outHandoverDateTime').allowBlank = false; + } + } else if (status == '已修好') { + if (!timeObj.returnHandoverUserNameIsHidden) { + top.Ext4.getCmp('returnHandoverUserName').allowBlank = false; + } + if (!timeObj.returnHandoverDateTimeIsHidden) { + top.Ext4.getCmp('returnHandoverDateTime').allowBlank = false; + } + } else if (status == '报废') { + if (!timeObj.discardDateTimeIsHidden) { + top.Ext4.getCmp('discardDateTime').allowBlank = false; + } + } +} + +//添加器械包块 +function addTousseItems(index) { + var item = [{ + columnWidth: 0.29, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + id: 'itemBox1_' + index, + items: [{ + xtype: 'hidden', + id: 'materialDefinitionID_' + index, + name: 'materialDefinitionID_' + index + }, { + xtype: 'combo', + fieldLabel: '器械名称', + id: 'materialDefinitionName_' + index, + name: 'materialDefinitionName_' + index, + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'name', + store: getMaterialDefinition(), + lazyInit: true, + forceSelection: true, + triggerAction: 'all', + hideTrigger: true, + typeAhead: false, + allowBlank: false, + anchor: '60%', + listeners: { + select: function (combo, record, zIndex) { + top.Ext4.getCmp('materialDefinitionID_' + index).setValue(record[0].data.id); + } + } + }] + }, { + columnWidth: 0.01, + layout: 'form', + border: 0, + id: 'itemBox2_' + index, + items: [{ + xtype: 'displayfield', + fieldLabel: '' + }] + }, { + columnWidth: 0.03, + layout: 'form', + border: 0, + id: 'itemBox3_' + index, + items: [{ + xtype: 'button', + tooltip: '删除', + iconCls: 'btn_ext_application_del', + style: 'margin-top:2px', + handler: function () { + delTousseItems(index); + } + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + id: 'itemBox4_' + index, + style: 'margin-bottom:10px', + items: [{ + xtype: 'hidden', + id: 'tousseDefinitionID_' + index, + name: 'tousseDefinitionID_' + index + }, { + xtype: 'combo', + fieldLabel: '所属器械包', + id: 'tousseDefinitionName_' + index, + name: 'tousseDefinitionName_' + index, + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'name', + store: getTousseDefinition(), + lazyInit: true, + forceSelection: true, + triggerAction: 'all', + hideTrigger: true, + typeAhead: false, + allowBlank: false, + anchor: '95%', + listeners: { + select: function (combo, record, zIndex) { + top.Ext4.getCmp('tousseDefinitionID_' + index).setValue(record[0].data.id); + } + } + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + id: 'itemBox5_' + index, + style: 'margin-bottom:10px', + items: [{ + xtype: 'numberfield', + allowDecimals: false, + name: 'amount_' + index, + id: 'amount_' + index, + fieldLabel: "数量", + allowBlank: false, + blankText: '数量不能为空', + anchor: '95%' + }] + }] + top.Ext4.getCmp('tousseItem').add(item); +} + +//删除器械包块 +function delTousseItems(index) { + top.Ext4.getCmp('itemBox1_' + index).hide(); + top.Ext4.getCmp('itemBox2_' + index).hide(); + top.Ext4.getCmp('itemBox3_' + index).hide(); + top.Ext4.getCmp('itemBox4_' + index).hide(); + top.Ext4.getCmp('itemBox5_' + index).hide(); + var resultArr = []; + for (var i = 0; i < tousseArray.length; i++) { + if (tousseArray[i] !== index) { + resultArr.push(tousseArray[i]); + } + } + tousseArray = resultArr; +} + +//显示器械维修设置的窗口 +function showAddOrEditWindow(id, reviewStatus) { + tousseArray = []; + var repairStatusStore = new Ext4.data.Store({ + fields: [{ name: 'value' }], + data: [{ value: '维修中' }, { value: '待维修' }, { value: '已修好' }, { value: '报废' }] + }); + var roomNumberIsHidden = false; + var washHandNurseNameIsHidden = false; + var repairNurseNameIsHidden = false; + var engineerIsHidden = false; + var repairTypeIsHidden = false; + var repairDateTimeIsHidden = false; + var outHandoverUserNameIsHidden = false; + var outHandoverDateTimeIsHidden = false; + var returnHandoverUserNameIsHidden = false; + var returnHandoverDateTimeIsHidden = false; + var discardDateTimeIsHidden = false; + var uniqueTousseIsHidden = false; + var infectedIsHidden = false; + var repairDescIsHidden = false; + var hiddenFieldsForInstrumentRepairRecords = sstsConfig.hiddenFieldsForInstrumentRepairRecords || []; + if (hiddenFieldsForInstrumentRepairRecords.length > 0) { + for (var i = 0; i < hiddenFieldsForInstrumentRepairRecords.length; i++) { + var item = hiddenFieldsForInstrumentRepairRecords[i]; + if (item == '房间号') { + roomNumberIsHidden = true; + } + if (item == '洗手护士(发现故障)' || item == '洗手护士(发现故障)') { + washHandNurseNameIsHidden = true; + } + if (item == '送修护士') { + repairNurseNameIsHidden = true; + } + if (item == '工程师') { + engineerIsHidden = true; + } + if (item == '送修类别') { + repairTypeIsHidden = true; + } + if (item == '维修时间') { + repairDateTimeIsHidden = true; + } + if (item == '出科交接人') { + outHandoverUserNameIsHidden = true; + } + if (item == '出科时间') { + outHandoverDateTimeIsHidden = true; + } + if (item == '回科交接人') { + returnHandoverUserNameIsHidden = true; + } + if (item == '回科时间') { + returnHandoverDateTimeIsHidden = true; + } + if (item == '报废时间') { + discardDateTimeIsHidden = true; + } + if (item == '器械是否唯一') { + uniqueTousseIsHidden = true; + } + if (item == '是否感染') { + infectedIsHidden = true; + } + if (item == '器械故障现象描述并标记故障点') { + repairDescIsHidden = true; + } + } + } + formPanel = new top.Ext4.form.Panel({ + id: 'configForm', + frame: true, + labelSeparator: ':', + bodyStyle: 'padding:5px 5px 0px 5px;overflow: auto;', + width: 800, + fieldDefaults: { + labelAlign: 'right', + labelWidth: 100 + }, + buttonAlign: 'center', + items: [{ + xtype: 'hidden', + id: 'id', + name: 'id', + value: id || '' + }, { + layout: 'column', + items: [{ + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'combo', + fieldLabel: '登记人', + id: 'registrantName', + name: 'registrantName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'fullName', + store: getUserStore(), + lazyInit: true, + triggerAction: 'all', + hideTrigger: false, + typeAhead: true, + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'datefield', + fieldLabel: '登记时间', + labelAlign: 'right', + id: 'registerDateTime', + name: 'registerDateTime', + format: 'Y-m-d H:i', + allowBlank: false, + anchor: '95%', + value: new Date(newDate) + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'combo', + fieldLabel: '状态', + id: 'repairStatus', + name: 'repairStatus', + valueField: 'value', + displayField: 'value', + store: repairStatusStore, + value: '待维修', + editable: false, + mode: 'local', + triggerAction: 'all', + anchor: '95%', + listeners: { + select: function (combo, record, index) { + var value = record[0].data.value; + var timeObj = { + outHandoverUserNameIsHidden: outHandoverUserNameIsHidden, + outHandoverDateTimeIsHidden: outHandoverDateTimeIsHidden, + returnHandoverUserNameIsHidden: returnHandoverUserNameIsHidden, + returnHandoverDateTimeIsHidden: returnHandoverDateTimeIsHidden, + discardDateTimeIsHidden: discardDateTimeIsHidden + } + changeRepairStatusStore(value, timeObj); + } + } + }] + }, { + columnWidth: 0.29, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'hidden', + id: 'materialDefinitionID', + name: 'materialDefinitionID' + }, { + xtype: 'combo', + fieldLabel: '器械名称', + id: 'materialDefinitionName', + name: 'materialDefinitionName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'name', + store: getMaterialDefinition(), + lazyInit: true, + forceSelection: true, + triggerAction: 'all', + hideTrigger: true, + typeAhead: false, + allowBlank: false, + anchor: '60%', + listeners: { + select: function (combo, record, index) { + top.Ext4.getCmp('materialDefinitionID').setValue(record[0].data.id); + } + } + }] + }, { + columnWidth: 0.01, + layout: 'form', + border: 0, + items: [{ + xtype: 'displayfield', + fieldLabel: '' + }] + }, { + columnWidth: 0.03, + layout: 'form', + border: 0, + items: [{ + xtype: 'button', + tooltip: '添加', + iconCls: 'btn_ext_add', + style: 'margin-top:2px', + handler: function () { + tousseCount++; + tousseArray.push(tousseCount); + addTousseItems(tousseCount); + } + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'hidden', + id: 'tousseDefinitionID', + name: 'tousseDefinitionID' + }, { + xtype: 'combo', + fieldLabel: '所属器械包', + id: 'tousseDefinitionName', + name: 'tousseDefinitionName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'name', + store: getTousseDefinition(), + lazyInit: true, + forceSelection: true, + triggerAction: 'all', + hideTrigger: true, + typeAhead: false, + allowBlank: false, + anchor: '95%', + listeners: { + select: function (combo, record, index) { + top.Ext4.getCmp('tousseDefinitionID').setValue(record[0].data.id); + } + } + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'numberfield', + allowDecimals: false, + name: 'amount', + id: 'amount', + fieldLabel: "数量", + allowBlank: false, + blankText: '数量不能为空', + anchor: '95%' + }] + }, { + columnWidth: 1, + layout: 'column', + border: 0, + id: 'tousseItem', + style: 'margin-bottom:10px' + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: roomNumberIsHidden, + items: [{ + xtype: 'textfield', + fieldLabel: '房间号', + id: 'roomNumber', + name: 'roomNumber', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: washHandNurseNameIsHidden, + items: [{ + xtype: 'combo', + labelWidth: 140, + fieldLabel: '洗手护士(发现故障)', + id: 'washHandNurseName', + name: 'washHandNurseName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'fullName', + store: getUserStore(), + lazyInit: true, + triggerAction: 'all', + hideTrigger: false, + typeAhead: true, + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: repairNurseNameIsHidden, + items: [{ + xtype: 'combo', + fieldLabel: '送修护士', + id: 'repairNurseName', + name: 'repairNurseName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'fullName', + store: getUserStore(), + lazyInit: true, + triggerAction: 'all', + hideTrigger: false, + typeAhead: true, + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: engineerIsHidden, + items: [{ + xtype: 'textfield', + fieldLabel: '工程师(现场)', + id: 'engineer', + name: 'engineer', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.5, + layout: 'form', + border: 0, + height: 28, + style: 'margin-bottom:10px;', + hidden: repairTypeIsHidden, + items: [{ + id: 'repairType', + name: 'repairType', + fieldLabel: '送修类别', + xtype: 'checkboxgroup', + vertical: true, + items: [{ + id: 'repairType1', + name: 'value', + boxLabel: '送修厂家', + inputValue: '送修厂家', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('repairType2').setValue(false); + top.Ext4.getCmp('repairType3').setValue(false); + } + } + } + }, { + id: 'repairType2', + name: 'value', + boxLabel: '自行维修', + inputValue: '自行维修', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('repairType1').setValue(false); + top.Ext4.getCmp('repairType3').setValue(false); + } + } + } + }, { + id: 'repairType3', + name: 'value', + boxLabel: '无法维修', + inputValue: '无法维修', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('repairType1').setValue(false); + top.Ext4.getCmp('repairType2').setValue(false); + } + } + } + }] + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + height: 28, + style: 'margin-bottom:10px;', + hidden: uniqueTousseIsHidden, + items: [{ + id: 'uniqueTousse', + name: 'uniqueTousse', + fieldLabel: '器械是否唯一', + xtype: 'checkboxgroup', + vertical: true, + items: [{ + id: 'uniqueTousse1', + name: 'value', + boxLabel: '是', + inputValue: '是', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('uniqueTousse2').setValue(false); + } + } + } + }, { + id: 'uniqueTousse2', + name: 'value', + boxLabel: '否', + inputValue: '否', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('uniqueTousse1').setValue(false); + } + } + } + }] + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: repairDateTimeIsHidden, + items: [{ + xtype: 'datefield', + fieldLabel: '维修时间', + labelAlign: 'right', + id: 'repairDateTime', + name: 'repairDateTime', + format: 'Y-m-d H:i', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'displayfield', + fieldLabel: '' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + height: 28, + style: 'margin-bottom:10px;', + hidden: infectedIsHidden, + items: [{ + id: 'infected', + name: 'infected', + fieldLabel: '是否感染', + xtype: 'checkboxgroup', + vertical: true, + items: [{ + id: 'infected1', + name: 'value', + boxLabel: '是', + inputValue: '是', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('infected2').setValue(false); + top.Ext4.getCmp('infectDiseaseBox').show(); + if (top.Ext4.getCmp('infectDisease6').checked == true) { + top.Ext4.getCmp('infectDisease6Box').show(); + } else { + top.Ext4.getCmp('infectDisease6Box').hide(); + } + } else { + top.Ext4.getCmp('infectDiseaseBox').hide(); + top.Ext4.getCmp('infectDisease6Box').hide(); + } + } + } + }, { + id: 'infected2', + name: 'value', + boxLabel: '否', + inputValue: '否', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('infected1').setValue(false); + top.Ext4.getCmp('infectDiseaseBox').hide(); + top.Ext4.getCmp('infectDisease6Box').hide(); + } + } + } + }] + }] + }, { + columnWidth: 0.7, + layout: 'form', + border: 0, + height: 28, + style: 'margin-bottom:10px;', + id: 'infectDiseaseBox', + hidden: true, + items: [{ + id: 'infectDisease', + name: 'infectDisease', + fieldLabel: ' ', + labelWidth: 100, + xtype: 'checkboxgroup', + vertical: true, + items: [{ + id: 'infectDisease1', + name: 'value', + boxLabel: '乙肝', + inputValue: '乙肝' + }, { + id: 'infectDisease2', + name: 'value', + boxLabel: '丙肝', + inputValue: '丙肝' + }, { + id: 'infectDisease3', + name: 'value', + boxLabel: '梅毒', + inputValue: '梅毒' + }, { + id: 'infectDisease4', + name: 'value', + boxLabel: 'HIV', + inputValue: 'HIV' + }, { + id: 'infectDisease5', + name: 'value', + boxLabel: '多重耐药菌感染', + inputValue: '多重耐药菌感染', + width: 120 + }, { + id: 'infectDisease6', + name: 'value', + boxLabel: '其他', + inputValue: '其他', + listeners: { + change: function (el, checked) { + if (checked) { + top.Ext4.getCmp('infectDisease6Box').show(); + } else { + top.Ext4.getCmp('infectDisease6Box').hide(); + } + } + } + }] + }] + }, { + columnWidth: 0.2, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + id: 'infectDisease6Box', + hidden: true, + items: [{ + xtype: 'textfield', + fieldLabel: '', + id: 'infectDisease6Value', + name: 'infectDisease6Value', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.99, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: repairDescIsHidden, + items: [{ + xtype: 'textarea', + maxLength: '300', + height: 45, + fieldLabel: '器械故障现象描述并标记故障点', + id: 'repairDesc', + name: 'repairDesc', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: outHandoverUserNameIsHidden, + items: [{ + xtype: 'combo', + fieldLabel: '出科交接人', + id: 'outHandoverUserName', + name: 'outHandoverUserName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'fullName', + store: getUserStore(), + lazyInit: true, + triggerAction: 'all', + hideTrigger: false, + typeAhead: true, + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: outHandoverDateTimeIsHidden, + items: [{ + xtype: 'datefield', + fieldLabel: '出科时间', + labelAlign: 'right', + id: 'outHandoverDateTime', + name: 'outHandoverDateTime', + format: 'Y-m-d H:i', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'displayfield', + fieldLabel: '' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: returnHandoverUserNameIsHidden, + items: [{ + xtype: 'combo', + fieldLabel: '回科交接人', + id: 'returnHandoverUserName', + name: 'returnHandoverUserName', + queryParam: 'spell', + minChars: 0, + valueField: 'id', + displayField: 'fullName', + store: getUserStore(), + lazyInit: true, + triggerAction: 'all', + hideTrigger: false, + typeAhead: true, + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: returnHandoverDateTimeIsHidden, + items: [{ + xtype: 'datefield', + fieldLabel: '回科时间', + labelAlign: 'right', + id: 'returnHandoverDateTime', + name: 'returnHandoverDateTime', + format: 'Y-m-d H:i', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'displayfield', + fieldLabel: '' + }] + }, { + columnWidth: 0.33, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + hidden: discardDateTimeIsHidden, + items: [{ + xtype: 'datefield', + fieldLabel: '报废时间', + labelAlign: 'right', + id: 'discardDateTime', + name: 'discardDateTime', + format: 'Y-m-d H:i', + allowBlank: true, + anchor: '95%' + }] + }, { + columnWidth: 0.99, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'textarea', + maxLength: '300', + height: 45, + fieldLabel: '备注', + id: 'remark', + name: 'remark', + allowBlank: true, + anchor: '95%' + }] + }] + }], + buttons: [{ + id: 'saveBtn', + text: '保存', + hidden: (reviewStatus == '已审核') || SSTS_InstrumentRepair_handle, + handler: function () { + if (formPanel.getForm().isValid()) { + saveForm(); + } else { + showResult('请填写表单!'); + return false; + } + } + }, { + text: '取消', + handler: cancel + }] + }); + win = new top.Ext4.window.Window({ + id: 'win', + layout: 'border', + title: '器械维修记录', + width: 800, + height: 600, + border: false, + plain: true, + modal: true, + items: [{ + region: 'center', + width: 800, + layout: 'fit', + items: [formPanel] + }] + }); + win.show(); + if ((id || '') !== '') { + loadInstrumentRepair(id); + } +} + Index: ssts-web/src/main/webapp/ext/fontSize15/styles/common.css =================================================================== diff -u -r33084 -r33112 --- ssts-web/src/main/webapp/ext/fontSize15/styles/common.css (.../common.css) (revision 33084) +++ ssts-web/src/main/webapp/ext/fontSize15/styles/common.css (.../common.css) (revision 33112) @@ -420,4 +420,9 @@ /* GYEY-757:完善复选框的位置*/ .sterilizerCheckbox { margin-top: 4px !important; +} + +/* CDSLQYQYYY-98:取消边框*/ +#instrumentRepairForm-body .x4-panel-body-default { + border: none !important; } \ No newline at end of file Index: ssts-web/src/main/webapp/disinfectsystem/instrumentRepairManagement/instrumentRepairManagementView.jsp =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/instrumentRepairManagement/instrumentRepairManagementView.jsp (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/instrumentRepairManagement/instrumentRepairManagementView.jsp (revision 33112) @@ -0,0 +1,37 @@ +<%@page import="java.util.Date"%> +<%@page import="java.text.SimpleDateFormat"%> +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ include file="/common/taglibs.jsp"%> +<% + SimpleDateFormat dateFormat =new SimpleDateFormat("yyyy/MM/dd HH:mm"); + request.setAttribute("newDate", dateFormat.format(new Date())); +%> + + +<%@ include file="/common/includeExtJsAndCss.jsp"%> +<%@ include file="/common/includeExtJs4_2.jsp"%> + +