Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManager.java =================================================================== diff -u -r20534 -r20727 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManager.java (.../RecyclingApplicationManager.java) (revision 20534) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManager.java (.../RecyclingApplicationManager.java) (revision 20727) @@ -356,4 +356,11 @@ * @return void */ public void timingSyncHrpDisposableGoodsInvoicePlan(); + + /** + * 干预申请单的申请时间(支持批量). + * @param ids 申请单id集合 + * @param applicationTime 申请时间 + */ + public void interfereApplicationTime(String[] ids, Date applicationTime); } Index: ssts-web/src/main/webapp/homepage/menuconfigure.js =================================================================== diff -u -r20716 -r20727 --- ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 20716) +++ ssts-web/src/main/webapp/homepage/menuconfigure.js (.../menuconfigure.js) (revision 20727) @@ -392,12 +392,19 @@ {hidden :SSTS_ASSESTS_Get,text:"消毒供应中心物品领用",href:WWWROOT+'/disinfectsystem/assestManagement/godownEntry/interfere/godownOutToSupplyRoomView.jsp',hrefTarget:linkTarget,leaf:true} ] }, + { + text:"科室申领干预管理", + singleClickExpand:singleClickExpandTree, + hidden:SSTS_InterfereRecyclingApplication_ViewMenu, + children:[ + {text:"申请单干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereGoodsApplicationView.jsp',hrefTarget:linkTarget,leaf:true} + ] + }, {hidden :SSTS_InterfereSterilizationRecord_ViewMenu,text:"灭菌器械包干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereSterilizationView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterferePacking_ViewMenu,text:"装配记录干预管理",href:WWWROOT+'/disinfectsystem/interfere/packing/historyPackingView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterfereSterilizationRecord_ViewMenu,text:"灭菌记录干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereSterilizationView1.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterfereWashAndDisinfectRecord_ViewMenu,text:"清洗记录干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereWashAndDisinfectRecordView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterfereSterilizationRecord_ViewMenu,text:"代理灭菌单干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereProxyDisinfectionView.jsp',hrefTarget:linkTarget,leaf:true}, - {hidden :SSTS_InterfereRecyclingApplication_ViewMenu,text:"申请单干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereGoodsApplicationView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterfereForeigntousseApplication_ViewMenu,text:"外来器械干预管理",href:WWWROOT+'/disinfectsystem/interfere/interfereForeignTousseApplicationView.jsp',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterfereOrgUnit_ViewMenu,text:"科室干预管理",href:WWWROOT+'/disinfectsystem/interfere/processSameOrgunitName/processSameOrgunitNameData.mhtml',hrefTarget:linkTarget,leaf:true}, {hidden :SSTS_InterfereTerminateInvoicePlan_ViewMenu,text:"批量终止申请单管理",href:WWWROOT+'/disinfectsystem/interfere/interfereTerminateInvoicePlanView.jsp',hrefTarget:linkTarget,leaf:true}, Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/RecyclingApplicationAction.java =================================================================== diff -u -r20702 -r20727 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/RecyclingApplicationAction.java (.../RecyclingApplicationAction.java) (revision 20702) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/action/RecyclingApplicationAction.java (.../RecyclingApplicationAction.java) (revision 20727) @@ -1842,4 +1842,23 @@ } + /** + * 干预申请单的申请时间. + */ + public void interfereApplicationTime() { + String ids = StrutsParamUtils.getPraramValue("ids", null); + String applicationTime = StrutsParamUtils.getPraramValue("applicationTime", null); + + if(StringTools.isNotBlank(ids) && StringTools.isNotBlank(applicationTime)){ + JSONObject result = JSONUtil.buildJsonObject(true, "干预成功"); + try { + recyclingApplicationManager.interfereApplicationTime(ids.split(","), ForgonDateUtils.safelyParseDate(applicationTime)); + } catch (Exception e) { + e.printStackTrace(); + result = JSONUtil.buildJsonObject(false, "干预失败"); + } + StrutsResponseUtils.output(result); + } + } + } Index: ssts-web/src/main/webapp/disinfectsystem/interfere/interfereGoodsApplicationView.js =================================================================== diff -u -r13381 -r20727 --- ssts-web/src/main/webapp/disinfectsystem/interfere/interfereGoodsApplicationView.js (.../interfereGoodsApplicationView.js) (revision 13381) +++ ssts-web/src/main/webapp/disinfectsystem/interfere/interfereGoodsApplicationView.js (.../interfereGoodsApplicationView.js) (revision 20727) @@ -1,5 +1,86 @@ var entityName = "申请"; var grid; + +/** + * 干预申请单的申请时间. + */ +function interfereApplicationTime(ids, applicationTime){ + var window = null; + var formPanel = null; + + formPanel = new top.Ext.FormPanel({ + frame : true, + labelSeparator : ':', + bodyStyle : 'padding:5px 5px 0px 5px', + width : 300, + height : 100, + labelAlign : 'right', + buttonAlign : 'center', + items : [{ + xtype : 'datefieldWithMin', + fieldLabel : '申请时间', + id : 'applicationTime', + name : 'applicationTime', + editable : false, + value: applicationTime, + format : 'Y-m-d H:i', + altFormats:'Y-m-d|Y-n-j|y-n-j|y-m-j|y-m-d|y-n-d|Y-n-d|Y-m-j|Ymd|Ynj|ynj|ymj|ymd|ynd|Ynd|Ymj|Y/m/d|Y/n/j|y/n/j|y/m/j|y/m/d|y/n/d|Y/n/d|Y/m/j', + allowBlank : false, + anchor : '95%' + }], + buttons : [{ + id : 'saveBtn', + text : '保存', + handler : function(){ + var saveBtn = top.Ext.getCmp('saveBtn'); + if (!formPanel.getForm().isValid()) { + showResult('请正确填写表单值'); + return false; + } + saveBtn.disable(); + + formPanel.getForm().submit({ + url : WWWROOT + '/disinfectSystem/recyclingApplicationAction!interfereApplicationTime.do', + method : 'POST', + waitMsg : '正在保存数据,请稍候', + waitTitle : '提交表单', + params : {ids : ids , applicationTime : Ext.util.Format.date(top.Ext.getCmp('applicationTime').getValue(), 'Y-m-d H:i:s')}, + success : function(form, action) { + var result = Ext.decode(action.response.responseText); + showResult(result.message); + window.close(); + grid.dwrReload(); + }, + failure : function(form, action) { + var result = Ext.decode(action.response.responseText); + showResult(result.message); + saveBtn.enable(); + } + }); + } + }, { + text : '取消', + id : 'saveAndNewBtn', + handler : function() { + window.close(); + } + }] + }); + + window = new top.Ext.Window({ + id : 'problemWin', + layout : 'fit', + title : '干预申请时间', + modal : true, + autoHeight : true, + border : false, + plain : true, + items : [formPanel] + }); + + window.show(); +} + Ext.onReady(function() { Ext.QuickTips.init(); @@ -163,11 +244,36 @@ {type: 'string', dataIndex: 'remark'} ] }); - var tbar = []; grid = new Ext.ux.ForgonPageGrid({ title : entityName + '单列表', - tbar : tbar, + tbar : [{ + text : '干预申请时间', + iconCls : 'btn_ext_application_add', + handler : function() { + var ids = []; + var applicationTime = null; + var selectionModel = grid.getSelectionModel(); + var flag = 1; + selectionModel.each(function(row){ + if (flag == 1) { + applicationTime = row.data.applicationTime; + if (applicationTime.length > 16) { + applicationTime = applicationTime.substring(0, 16); + } + flag ++; + } + ids.push(row.data.id); + }); + + if(ids.length > 0){ + interfereApplicationTime(ids.join(','), applicationTime); + }else{ + showResult("未选中任何记录!"); + return; + } + } + }], pageSize : 20, defaultSortField : 'submitTime', defaultSortDirection : 'DESC', Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r20705 -r20727 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 20705) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 20727) @@ -5563,4 +5563,24 @@ } }, 5, TimeUnit.SECONDS); } + + @Override + public void interfereApplicationTime(String[] ids, Date applicationTime) { + if (ids != null) { + for (String id : ids) { + RecyclingApplication recyclingApplication = get(id); + + Date tmepApplicationTime = recyclingApplication.getApplicationTime(); + recyclingApplication.setApplicationTime(applicationTime); + + String remark = String.format("申请时间由%s被干预成%s", + ForgonDateUtils.safelyFormatDate(tmepApplicationTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMM, ""), + ForgonDateUtils.safelyFormatDate(applicationTime, ForgonDateUtils.SIMPLEDATEFORMAT_YYYYMMDDHHMM, "")); + CssdUtils.appendRemarkOfInvoicePlan(recyclingApplication, remark); + recyclingApplication.setSubmitTime(new Date()); + objectDao.saveOrUpdate(recyclingApplication); + } + } + } + }