Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.jsp =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.jsp (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.jsp (revision 38294) @@ -0,0 +1,22 @@ +<%@ page contentType="text/html; charset=UTF-8"%> +<%@ include file="/common/taglibs.jsp"%> +<%@page import="com.forgon.disinfectsystem.common.CssdUtils"%> + + + +<%@ include file="/common/includeExtJsAndCss.jsp"%> +<%@ include file="/common/includeExtJs4_2.jsp"%> + +装配删除原因设置 + + + + + + + + \ No newline at end of file Index: ssts-web/src/main/webapp/homepage/menuconfigure.js =================================================================== diff -u -r38058 -r38294 --- ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 38058) +++ ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 38294) @@ -1062,6 +1062,7 @@ {hidden :SSTS_UseRecordConvertConfig_Manager,text:"使用记录转换配置",href:WWWROOT+'/disinfectsystem/basedatamanager/useRecordConvertConfig/useRecordConvertConfigView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_RecyclePrint_Menu,text:"器械包回收备注设置",href:WWWROOT+'/systemmanage/httpOption.mhtml?listId=recycleItem_remark',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_SpecialInfection_manager,text:"特殊感染类型设置",href:WWWROOT+'/disinfectsystem/basedatamanager/specialInfection/specialInfectionView.jsp',hrefTarget:linkTarget,leaf:true}, + {hidden :!sstsConfig.enableReduceSendAmountAfterTerminatePackAmountFunction,text:"装配删除原因设置",href:WWWROOT+'/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :!sstsConfig.enablePatientAreaSetting,text:"病区设置",href:WWWROOT+'/systemmanage/httpOption.mhtml?listId=patientArea',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_application_end_cause_manager,text:"申请单终止原因设置",href:WWWROOT+'/systemmanage/httpOption.mhtml?listId=application_end_cause',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_application_end_cause_manager,text:"器械包废弃原因设置",href:WWWROOT+'/systemmanage/httpOption.mhtml?listId=tousse_discard_cause',hrefTarget:linkTarget,leaf:true}, Index: ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js =================================================================== diff -u -r38257 -r38294 --- ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 38257) +++ ssts-web/src/main/webapp/disinfectsystem/packing/packingView.js (.../packingView.js) (revision 38294) @@ -466,6 +466,341 @@ }); } +//ZSWY-231:删除物品列表 +function removeTaskRecord(id){ + var goodsList = top.Ext.getCmp('goodsListGrid').getStore(); + for(var i=0;i"+ v +""; + }}, + {header : "申请科室",width : 80,dataIndex : 'department',menuDisabled:true}, + {id : 'autoWidth',header:'操作',dataIndex:'button',width:40,menuDisabled:true, + renderer: function(v,p,record){ + var packingTaskId = record.data.packingTaskId; + var str = ""; + return str; + } + } + ]); + + var deleteCauseStore = new Ext.data.Store({ + proxy: new Ext.data.HttpProxy({ + url : WWWROOT + '/disinfectSystem/core/httpOptionAction!getHttpOptionTextAndValueById.do?optionId=causeOfdeletePackingTask', + method: 'POST' + }), + reader: new Ext.data.JsonReader({ + fields: [ + {name : 'id',mapping : 'id'}, + {name : 'name',mapping : 'name'} + ] + }), + listeners : { + load : function(thiz, records, options){ + deleteCauseStore.insert(records.length, new deleteCauseItems({ 'id': '', 'name': '其他' })); + } + } + }); + + var form = new top.Ext.FormPanel({ + id : 'taskRecordForm', + frame : true, + border : 0, + labelSeparator : ':', + bodyStyle : 'padding:5px 5px 0px 5px', + width : 600, + labelAlign:'right', + autoHeight : true, + autoScroll : true, + items : [{ + xtype:"fieldset", + layout:'column', + title :'基础数据', + autoHeight:true, + items:[{ + layout : 'column', + items : [{ + xtype : 'hidden', + name : 'id', + id : 'id' + },{ + columnWidth : 1, + layout : 'form', + labelWidth : 70, + items : [{ + xtype : 'textfield', + fieldLabel : '操作员', + maxLength : '16', + id : 'user', + name : 'user', + allowBlank : false, + anchor : '100%', + readOnly : true, + value:userName, + cls:'fieldReadOnlyNoRemove' + }] + },{ + columnWidth : 1, + layout : 'form', + labelWidth : 70, + items:[{ + xtype : 'combo', + fieldLabel : '终止原因', + id : 'deleteCause', + name : 'deleteCause', + minChars : 0, + valueField : 'id', + displayField : 'name', + store : deleteCauseStore, + forceSelection : true, + lazyInit : true, + triggerAction : 'all', + hideTrigger : false, + typeAhead : false, + allowBlank : true, + editable:false, + anchor : '97%', + listeners : { + select : function(combo, record, index) { + if(record.data.name == '其他'){ + top.Ext.getCmp('orderCauseBox').show(); + }else { + top.Ext.getCmp('orderCauseBox').hide(); + } + } + } + }] + },{ + columnWidth : 1, + layout : 'form', + labelWidth : 70, + id:'orderCauseBox', + hidden:true, + items : [{ + xtype : 'textarea', + height : 45, + fieldLabel : '', + labelSeparator: '', + id : 'orderCause', + name : 'orderCause', + width:400, + allowBlank : true, + anchor : '100%' + }] + }] + }] + },{ + xtype:"fieldset", + layout:'column', + title :'物品列表', + autoHeight:true, + items:[{ + layout : 'form', + columnWidth : 1, + items :[new top.Ext.grid.EditorGridPanel({ + id : 'goodsListGrid', + store : goodsListStore, + bodyStyle : 'border:1px solid #afd7af', + cm : cm, + width :620, + height : 220, + viewConfig: { + forceFit:true + }, + autoExpandColumn : 'autoWidth', + border : true, + frame : false, + clicksToEdit : 1,// 设置点击几次才可编辑 + selModel : new top.Ext.grid.RowSelectionModel({ + singleSelect : false + }), + listeners:{ + beforeedit : function(e){ + tempAmount = e.record.data['oldAmount']; + }, + afteredit : function(e) { + if(e.value<1){ + showResult("输入数量不能小于1!" , null , sstsConfig.messagePauseTimeOnPackingPage); + e.record.set('amount',1); + return; + } + + //输入的数量不能小于已补充的数量 + if(e.value > tempAmount){ + showResult("终止数量不可大于待装配数量" , null , sstsConfig.messagePauseTimeOnPackingPage); + e.record.set('amount',tempAmount); + return; + } + } + } + })] + }] + }], + buttonAlign :'center', + buttons : [{ + text : '保存', + id : 'saveBtn', + hidden:false, + handler : function(){ + top.Ext.MessageBox.confirm("请确认","终止待装配数量将导致相应的发货物品数量减少,是否继续?",function(btn) { + if(btn=='yes') { + batchUpdatePackingTask(win); + } + }); + } + },{ + text : '取消', + handler : function() { + win.close(); + } + }] + }); + + var win = new top.Ext.Window({ + id : 'deleteTaskWin', + layout : 'fit', + title : '装配终止操作', + width : 680, + modal : true, + autoHeight : true, + closeAction:'close', + border : false, + height:380, + plain : true, + items : [ form ] + }); + win.show(); +} + +//ZSWY-231:装配终止 +function batchUpdatePackingTask(win){ + var deleteCause = top.Ext.getCmp('deleteCause').getRawValue(); + if(deleteCause == '其他'){ + deleteCause = top.Ext.getCmp('orderCause').getRawValue(); + } + var deleteInfo = []; + var goodsList = top.Ext.getCmp('goodsListGrid').getStore(); + for(var i=0;i"; + if(sstsConfig.enableReduceSendAmountAfterTerminatePackAmountFunction){ + var basketName = record.get('basketName'); + var department = record.get('department'); + str += ""; + }else { + str += ""; + } } } if (status == '待装配') { @@ -3676,7 +4017,7 @@ } }, "-", { text: '删除', - hidden: SSTS_PackingTask_Delete, + hidden: sstsConfig.enableReduceSendAmountAfterTerminatePackAmountFunction ? true : SSTS_PackingTask_Delete, iconCls: 'btn_ext_application_del', handler: function () { var waitPackingTreeGrid = Ext4.getCmp('waitPackingTreeGrid'); @@ -3705,6 +4046,38 @@ }); deletePackingTask(ids, null, null, true, null); } + }, { + text: '终止', + iconCls: 'btn_ext_pause', + hidden: !sstsConfig.enableReduceSendAmountAfterTerminatePackAmountFunction, + handler: function () { + var waitPackingTreeGrid = Ext4.getCmp('waitPackingTreeGrid'); + var selNodes = waitPackingTreeGrid.getView().getChecked(); + if (selNodes.length == 0) { + showMultipleResult('请先选择需要终止的待装配任务'); + return; + } + var arr = []; + Ext4.each(selNodes, function (pNode) { + if (pNode.childNodes.length == 0) { + var notLossReport = false; + var damages = pNode.data.damages; + var errors = pNode.data.errors; + if(damages.length > 0 || errors.length > 0){ + notLossReport = true; + } + arr.push({ + tousseName:pNode.data.tousseName, + amount:pNode.data.amount, + basketName:pNode.data.basketName, + department:pNode.data.department, + packingTaskId:pNode.data.taskId, + notLossReport:notLossReport + }) + } + }); + deleteTaskRecord(arr); + } }, "-", { xtype: 'triggerfield', id: 'tousseOrDepart', Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseForm.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseForm.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseForm.js (revision 38294) @@ -0,0 +1,166 @@ +var configWin; +var formPanel; + +function cancel() { + configWin.close(); +} + +//排序 +function moveMaterial(orderType) { + setTimeout(function () { + var selectedRecords = deleteCauseGrid.getSelectionModel().getSelection(); + var id = selectedRecords[0].data.id; + Ext4.Ajax.request({ + url: WWWROOT + '/disinfectSystem/core/httpOptionAction!sortHttpOption.do', + params: { id: id, orderType: orderType }, + 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); + } + }); + }, 500); +} + +//删除装配删除原因设置 +function deleteConfig(grid) { + var selectedRecords = grid.getSelectionModel().getSelection(); + var selectedCount = grid.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/core/httpOptionAction!deleteHttpOption.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 saveConfig(id) { + var value = top.Ext4.getCmp('name').getValue(); + var mask = new Ext4.LoadMask({ + msg: '正在保存,请稍候...', + target: formPanel + }); + mask.show(); + Ext4.Ajax.request({ + url: WWWROOT + '/disinfectSystem/core/httpOptionAction!saveOrUpdateHttpOption.do', + params: { id: id, optionText: value, optionListId: 'causeOfdeletePackingTask' }, + success: function (response, options) { + var result = Ext4.decode(response.responseText); + if (result.success) { + configWin.close(); + listStore.load(); + showResult('保存成功'); + } else { + showResult(result.message); + } + mask.hide(); + }, + failure: function (response, options) { + showResult('保存失败!'); + mask.hide(); + } + }); +} + +//显示装配删除原因设置信息的窗口 +function showAddOrEditWindow(id, value) { + formPanel = new top.Ext4.form.Panel({ + id: 'configForm', + frame: true, + labelSeparator: ':', + bodyStyle: 'padding:5px 5px 0px 5px;', + width: 400, + buttonAlign: 'center', + fieldDefaults: { + labelAlign: 'right', + labelWidth: 70 + }, + items: [{ + layout: 'column', + items: [{ + columnWidth: 0.98, + layout: 'form', + border: 0, + style: 'margin-bottom:10px', + items: [{ + xtype: 'textfield', + fieldLabel: '名称', + id: 'name', + name: 'name', + allowBlank: false, + value: value || '', + anchor: '95%' + }] + }] + }], + buttons: [{ + id: 'saveBtn', + text: '保存', + handler: function () { + if (formPanel.getForm().isValid()) { + saveConfig(id); + } else { + showResult('请填写表单!'); + return false; + } + } + }, { + text: '取消', + handler: cancel + }] + }); + configWin = new top.Ext4.window.Window({ + id: 'configWin', + layout: 'column', + title: '装配删除原因设置信息', + width: 400, + height: 130, + border: false, + plain: true, + modal: true, + items: [{ + region: 'center', + width: 400, + layout: 'fit', + items: [formPanel] + }] + }); + configWin.show(); +} + Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.js =================================================================== diff -u --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.js (revision 0) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/packingDeleteCause/packingDeleteCauseView.js (revision 38294) @@ -0,0 +1,93 @@ +var listStore; +var deleteCauseGrid; + +Ext4.onReady(function () { + Ext4.QuickTips.init(); + var columns = [ + { header: "id", dataIndex: 'id', hidden: true }, + { header: "名称", dataIndex: 'name', width: 150 }, + { + header: "操作", dataIndex: 'serialNumber', width: 100, renderer: function (v, p, record) { + var id = record.data.id; + var str = "" + + ""; + return str; + } + } + ]; + var tbar = [{ + text: '添加', + iconCls: 'btn_ext_application_add', + handler: function () { + showAddOrEditWindow(''); + } + }, '-', { + text: '修改', + iconCls: 'btn_ext_application_edit', + handler: function () { + var selectedRecords = deleteCauseGrid.getSelectionModel().getSelection(); + var selectedCount = deleteCauseGrid.getSelectionModel().getCount(); + if (selectedCount < 1) { + showResult("请选择要修改的数据"); + } else if (selectedCount > 1) { + showResult("只能修改一条数据"); + } else { + var id = selectedRecords[0].data['id']; + var name = selectedRecords[0].data['name']; + showAddOrEditWindow(id, name); + } + } + }, '-', { + text: '删除', + iconCls: 'btn_ext_application_del', + handler: function () { + deleteConfig(deleteCauseGrid); + } + }]; + + listStore = new Ext4.data.JsonStore({ + proxy: { + type: 'ajax', + url: WWWROOT + '/disinfectSystem/core/httpOptionAction!getHttpOptionTextAndValueById.do?optionId=causeOfdeletePackingTask', + reader: { + root: 'data' + }, + extraParams: {} + }, + fields: [ + { name: 'id' }, + { name: 'name' } + ] + }); + + listStore.loadPage(1); + + deleteCauseGrid = new Ext4.grid.GridPanel({ + title: '装配删除原因设置', + columns: columns, + frame: false, + autoScroll: false, + store: listStore, + tbar: tbar, + dockedItems: [{ + xtype: 'pagingtoolbar', + store: listStore, // same store GridPanel is using + dock: 'bottom', + displayInfo: true + }], + viewConfig: { + autoFill: true + }, + selModel: new Ext4.selection.CheckboxModel() + }); + + new Ext4.container.Viewport({ + layout: 'border', + items: [{ + region: 'center', + layout: 'fit', + items: [deleteCauseGrid] + }] + }); + +}); \ No newline at end of file