using DataEntity; using DataRWDAL.Base; using HxEnum; using SqlSugar; using System.Collections.Generic; using System.Linq; using XCommon.SqlSugar; using static HxEnum.OperationTypeEnum; namespace XImagingXhandler.XDAL { /// /// 错误状态表 /// public class ErrorStateDB : BaseDB { /// /// 登录错误状态 /// /// /// public static int AddErrorState(ErrorStateModel model) { using (var db = GetInstance()) { return db.Insertable(model).ExecuteCommand(); } } #region 跳过 /// /// 跳过 /// /// /// /// public static void Continue(string expId, ExpStatusEnum statusEnum, NodeOperationTypeEnum expOperationTypeEnum) { UpStatus(expId, statusEnum, expOperationTypeEnum); UpdateErrorState(); } #endregion #region 更新实验状态完成 /// /// 更新实验状态完成 /// /// /// /// private static void UpStatus(string id, ExpStatusEnum statusEnum, NodeOperationTypeEnum expOperationTypeEnum) { //var model = experimentBLL.GetExperimentById(id); //if (model != null) //{ // string executionLogId = Guid.NewGuid().ToString(); // #region 插入设备执行日志 // //string msg = $"实验:【{model.Name}】已{EnumManagement.GetFieldText(expOperationTypeEnum)}"; // //LogUtil.ClientLog(msg + "_插入设备执行日志"); // //new ExecutionLogBLL().AddExecutionLog(new ExecutionLogModel // //{ // // Id = executionLogId, // // ExperimentId = model.Id, // // Progress = 100, // // ExperimentStep = "中控软件", // // EquipmentAction = msg, // // StartTime = DateTime.Now, // // Equipment = "中控软件", // // Remark = msg, // // CreateTime = DateTime.Now // //}); // #endregion // #region 更新结束时间 // //var experimentModel = new ExperimentBLL().GetExperimentById(model.Id); // //experimentModel.Status = EnumManagement.GetEnumValue(statusEnum); // //if (expOperationTypeEnum == ExpOperationTypeEnum.ExpOperationTypeCEnum) // //{ // // experimentModel.ExpEndTime = DateTime.Now; // //} // //var expTime = new ExperimentBLL().Update(experimentModel); // //if (expTime != null) // //{ // // new ExecutionLogBLL().UpdateExecutionLogEndTime(executionLogId); //修改结束时间 // //} // #endregion //} } #endregion #region 修改错误状态 /// /// 修改错误状态 /// private static void UpdateErrorState() { #region 修改错误信息为已处理 var getInfoList = GetInfoListTopNum(1); if (getInfoList != null && getInfoList.Count > 0) { var errorStateModel = GetInfoListTopNum(1).FirstOrDefault(); errorStateModel.OperationState = EnumManagement.GetEnumValue(OperationStateEnum.OperationStateBEnum); Update(errorStateModel); //修改状态 } #endregion } /// /// 更新错误状态 /// /// /// public static int Update(ErrorStateModel model) { using (var db = GetInstance()) { return db.Updateable(model).ExecuteCommand(); } } /// /// 获取前几条数据 /// /// /// public static List GetInfoListTopNum(int topNum) { var operationStateEnum = EnumManagement.GetEnumValue(OperationStateEnum.OperationStateAEnum); var parameter = LinqExtensions.True(); parameter = parameter.And(t => t.OperationState == operationStateEnum); var result = GetList(topNum, parameter, b => b.CreateTime, OrderByType.Asc); if (result != null && result.Count > 0) { return result.ToList(); } return null; } #endregion } }