Index: forgon-core/src/main/java/com/forgon/log/model/Log.java =================================================================== diff -u -r26387 -r26768 --- forgon-core/src/main/java/com/forgon/log/model/Log.java (.../Log.java) (revision 26387) +++ forgon-core/src/main/java/com/forgon/log/model/Log.java (.../Log.java) (revision 26768) @@ -70,6 +70,8 @@ public static final String MODEL_GoodsBinding = "物品绑定"; public static final String MODEL_TIMERTASK = "定时任务"; public static final String MODEL_REPORT = "报表"; + public static final String MODEL_QUALITYMONITORING = "质量监测"; + public static final String MODEL_ROUTINEMONITORING = "定期监测"; public static final String TYPE_ADD = "A";//添加 public static final String TYPE_UPDATE = "U";//修改 Index: ssts-web/src/main/webapp/disinfectsystem/routineMonitoring/routineMonitoringView.js =================================================================== diff -u -r23637 -r26768 --- ssts-web/src/main/webapp/disinfectsystem/routineMonitoring/routineMonitoringView.js (.../routineMonitoringView.js) (revision 23637) +++ ssts-web/src/main/webapp/disinfectsystem/routineMonitoring/routineMonitoringView.js (.../routineMonitoringView.js) (revision 26768) @@ -2537,6 +2537,66 @@ } +var mask = null; +function getMask(){ + if(!mask){ + mask = new Ext.LoadMask(Ext.getBody(), { + msg : '正在处理打印请求,请稍候...' + }); + } + return mask; +} + +/** + * 把"已审核"转成"未审核"的方法 + * + */ +function becomeNotAudited(grid) { + var records = grid.getSelectionModel().getSelections(); + if (records.length == 0) { + showResult("请选择要返回的" + entityName + "记录!"); + return false; + } + var ids = []; + for (var i = 0, len = records.length; i < len; i++) { + if (records[i].data['status'] != '未审核') { + ids.push(records[i].data['id']); + }else{ + showResult("所选的记录不是已审核状态,请选择已审核的" + entityName + "记录!"); + return false; + } + } + + top.Ext.MessageBox.confirm("请确认","确定要返回成未审核状态吗?", function(button, text) { + if ("yes" == button) { + getMask(); + mask.msg = '正在处理请求,请稍候...'; + mask.show(); + Ext.Ajax.request({ + url : WWWROOT+ '/disinfectSystem/qualityMonitoringInstanceAction!updateStatus.do', + params : {ids : JSON.stringify(ids), status : statusUnreview}, + success : function(response, options) { + mask.hide(); + var result = Ext.decode(response.responseText); + if(result.message){ + showResult(result.message); + } + if(result.success){ + showResult('所选的记录已成功返回成未审核状态!'); + grid.dwrReload(); + } + }, + failure : function(response, options) { + mask.hide(); + showResult('后台程序忙,请联系管理员!'); + } + }); + } + + }); + +} + Ext.onReady(function() { Ext.QuickTips.init(); // 记录cookie(3步) @@ -2607,6 +2667,13 @@ handler : function() { reviewRoutineMonitoring(grid); } + }, '-', { + text : '返回', + iconCls : 'btn_ext_refresh', + hidden : SSTS_RoutineMonitoring_Return, + handler : function() { + becomeNotAudited(grid); + } }]; var dwrCallParams = null; Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/service/QualityMonitoringInstanceManager.java =================================================================== diff -u -r24173 -r26768 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/service/QualityMonitoringInstanceManager.java (.../QualityMonitoringInstanceManager.java) (revision 24173) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/service/QualityMonitoringInstanceManager.java (.../QualityMonitoringInstanceManager.java) (revision 26768) @@ -1,5 +1,6 @@ package com.forgon.disinfectsystem.qualitymonitoring.instance.service; +import java.util.List; import java.util.Map; import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoring.QualityMonitoringInstance; @@ -24,4 +25,12 @@ * @return */ public boolean isTousseInstanceRepacking(String barcodes); + + /** + * 修改定期监测记录的状态 + * @param idList id集合 + * @param status 要修改的目标状态(未审核或已审核) + */ + public void updateStatus(List idList , String status); + } Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/service/QualityMonitoringInstanceManagerImpl.java =================================================================== diff -u -r24173 -r26768 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/service/QualityMonitoringInstanceManagerImpl.java (.../QualityMonitoringInstanceManagerImpl.java) (revision 24173) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/service/QualityMonitoringInstanceManagerImpl.java (.../QualityMonitoringInstanceManagerImpl.java) (revision 26768) @@ -51,6 +51,7 @@ import com.forgon.tools.db.DatabaseUtil; import com.forgon.tools.hibernate.BasePoManagerImpl; import com.forgon.tools.string.StringTools; +import com.forgon.tools.util.SqlUtils; /** * @author WangYi 2016-11-28 15:11:39 @@ -726,4 +727,11 @@ return ret ; } + @Override + public void updateStatus(List idList, String status) { + objectDao.executeUpdate(String.format("update %s set status='%s' where %s", + QualityMonitoringInstance.class.getSimpleName(), status, + SqlUtils.getNonStringFieldInLargeCollectionsPredicate("id", idList))); + } + } Index: ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/action/QualityMonitoringInstanceAction.java =================================================================== diff -u -r24173 -r26768 --- ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/action/QualityMonitoringInstanceAction.java (.../QualityMonitoringInstanceAction.java) (revision 24173) +++ ssts-qualitymon/src/main/java/com/forgon/disinfectsystem/qualitymonitoring/instance/action/QualityMonitoringInstanceAction.java (.../QualityMonitoringInstanceAction.java) (revision 26768) @@ -2,6 +2,7 @@ import java.io.IOException; import java.io.OutputStream; +import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Date; @@ -11,6 +12,7 @@ import javax.servlet.http.HttpServletResponse; +import net.sf.json.JSONArray; import net.sf.json.JSONNull; import net.sf.json.JSONObject; import net.sf.json.JsonConfig; @@ -31,6 +33,8 @@ import com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoringconfig.QualityMonitoringDefinition; import com.forgon.disinfectsystem.qualitymonitoring.instance.service.QualityMonitoringInstanceManager; import com.forgon.disinfectsystem.tousse.imagefilemanager.service.ImageFileManager; +import com.forgon.log.model.Log; +import com.forgon.log.service.LogManager; import com.forgon.tools.ImageUtils; import com.forgon.tools.StrutsParamUtils; import com.forgon.tools.StrutsResponseUtils; @@ -56,7 +60,9 @@ private ImageFileManager imageFileManager; private SupplyRoomConfigManager supplyRoomConfigManager; - + + private LogManager appLogManager; + public SupplyRoomConfigManager getSupplyRoomConfigManager() { return supplyRoomConfigManager; } @@ -75,6 +81,10 @@ this.qualityMonitoringInstanceManager = qualityMonitoringInstanceManager; } + public void setAppLogManager(LogManager appLogManager) { + this.appLogManager = appLogManager; + } + /** * 保存质量监测记录. */ @@ -322,6 +332,51 @@ StrutsResponseUtils.output(json); } + /** + * 更改定期监测记录的状态 + * request请求参数如下: + * ids:定期监测记录id数组,jsonarray格式,如2或1,2,3 + * status:未审核、已审核等 + * response响应格式如下: + * success:是否成功-true或false + * message:提示消息 + */ + public void updateStatus(){ + JSONObject result = JSONUtil.buildJsonObject(false); + String ids = StrutsParamUtils.getPraramValue("ids", null); + String status = StrutsParamUtils.getPraramValue("status", null); + if(StringUtils.isBlank(ids)){ + JSONUtil.addMessage(result, "ids参数为空,请选择要操作的定期监测记录"); + }else if(StringUtils.isBlank(status)){ + JSONUtil.addMessage(result, "状态为空,值非法"); + }else{ + JSONArray jsonArray = JSONArray.fromObject(ids); + if(jsonArray.size() == 0){ + + }else{ + List idList = new ArrayList(); + for (int i = 0;i < jsonArray.size(); i++) { + Long id = jsonArray.optLong(i); + if(!idList.contains(id)){ + idList.add(id); + } + } + try{ + qualityMonitoringInstanceManager.updateStatus(idList , status); + appLogManager.saveLog(AcegiHelper.getLoginUser(), + Log.MODEL_ROUTINEMONITORING, Log.TYPE_UPDATE, + String.format("定期监测状态修改,ids:%s,状态修改为:%s", ids, status)); + JSONUtil.addSuccess(result, true); + }catch(RuntimeException exception){ + JSONUtil.addMessage(result, exception.getMessage()); + }catch(Exception exception){ + JSONUtil.addMessage(result, "后台程序忙,请联系管理员!"); + } + } + } + StrutsResponseUtils.output(result); + } + public void iniInfo() { String id = StrutsParamUtils.getPraramValue("id", ""); Index: ssts-web/src/main/resources/systemset/operationDefine.xml =================================================================== diff -u -r26757 -r26768 --- ssts-web/src/main/resources/systemset/operationDefine.xml (.../operationDefine.xml) (revision 26757) +++ ssts-web/src/main/resources/systemset/operationDefine.xml (.../operationDefine.xml) (revision 26768) @@ -159,7 +159,7 @@ - + Index: ssts-web/src/main/webapp/disinfectsystem/routineMonitoring/routineMonitoringView.jsp =================================================================== diff -u -r16978 -r26768 --- ssts-web/src/main/webapp/disinfectsystem/routineMonitoring/routineMonitoringView.jsp (.../routineMonitoringView.jsp) (revision 16978) +++ ssts-web/src/main/webapp/disinfectsystem/routineMonitoring/routineMonitoringView.jsp (.../routineMonitoringView.jsp) (revision 26768) @@ -1,3 +1,4 @@ +<%@page import="com.forgon.disinfectsystem.entity.qualitymonitoringmanager.qualitymonitoring.QualityMonitoringInstance"%> <%@page import="com.forgon.disinfectsystem.entity.customform.formdefinition.FormDefinition"%> <%@ page contentType="text/html; charset=UTF-8"%> <%@ include file="/common/taglibs.jsp"%> @@ -46,11 +47,22 @@ SSTS_RoutineMonitoring_Review = false; +var SSTS_RoutineMonitoring_Return = true; + +SSTS_RoutineMonitoring_Review = false; + + +//器械包类型:外来器械包、外来器械拆分小包 var PACKAGE_TYPE_FOREIGN = '<%=TousseDefinition.PACKAGE_TYPE_FOREIGN%>'; var PACKAGE_TYPE_SPLIT = '<%=TousseDefinition.PACKAGE_TYPE_SPLIT%>'; +//自定义表单类型:定期监测、质量监测 var formType_routineMonitoring = '<%=FormDefinition.FOMRTYPE_PERIODICMONITORING%>'; var formType_qualityMonitoring = '<%=FormDefinition.FOMRTYPE_QUALITYMONITORING%>'; + +//定期监测状态:未审核与已审核 +var statusUnreview = '<%=QualityMonitoringInstance.STATUS_UNREVIEW %>'; +var statusReviewed = '<%=QualityMonitoringInstance.STATUS_REVIEWED %>';