/// <summary> /// 保存 /// </summary> /// <param name="vm"></param> /// <returns></returns> public ResponseStatusView SaveResponse(ResponseStatusView vm) { if (vm == null) { return(null); } using (var dbContext = new DbContext().ConnectionStringName(ConnectionUtil.connWXB, DbProviderTypes.MySql)) { if (vm.ID.HasValue) { dbContext.Update("responsestatus").Column("Status", vm.Status) .Column("StartTime", vm.StartTime) .Column("EndTime", vm.EndTime) .Column("Inputer", vm.Inputer) .Column("InputerID", vm.InputerID) .Where("ID", vm.ID.Value) .Execute(); } else { vm.ID = dbContext.Insert("responsestatus").Column("Status", vm.Status) .Column("StartTime", vm.StartTime) .Column("EndTime", vm.EndTime) .Column("Inputer", vm.Inputer) .Column("InputerID", vm.InputerID) .ExecuteReturnLastId <int>(); } return(vm); } }
/// <summary> /// 获取最新响应状态 /// </summary> /// <returns></returns> public ResponseStatusView GetResponseStatus() { string sql = @" select * from responsestatus ORDER BY ID DESC LIMIT 0,1 "; using (var dbContext = new DbContext().ConnectionStringName(ConnectionUtil.connWXB, DbProviderTypes.MySql)) { ResponseStatusView resVM = dbContext.Sql(sql).QuerySingle <ResponseStatusView>(reader => { ResponseStatusView temp = new ResponseStatusView(); if (!string.IsNullOrEmpty(reader["ID"].ToString())) { temp.ID = reader.AsInt("ID"); } if (!string.IsNullOrEmpty(reader["Status"].ToString())) { temp.Status = reader.AsInt("Status"); } if (!string.IsNullOrEmpty(reader["StartTime"].ToString())) { temp.StartTime = Convert.ToDateTime(reader["StartTime"]); } if (!string.IsNullOrEmpty(reader["EndTime"].ToString())) { temp.EndTime = Convert.ToDateTime(reader["EndTime"]); } if (!string.IsNullOrEmpty(reader["InputerID"].ToString())) { temp.InputerID = reader.AsInt("InputerID"); } if (!string.IsNullOrEmpty(reader["Inputer"].ToString())) { temp.Inputer = reader.AsString("InputerID"); } return(temp); }); //若表一条数据没有,则创建一条状态为'应急'的数据 if (resVM == null) { resVM = new ResponseStatusView(); resVM.ID = dbContext.Insert("responsestatus").Column("Status", (int)EnumResponseStatus.应急) .ExecuteReturnLastId <int>(); resVM.Status = (int)EnumResponseStatus.应急; } return(resVM); } }
/// <summary> /// 保存 /// </summary> /// <param name="vm"></param> /// <returns></returns> public ActionResult SaveResponse(ResponseStatusView vm) { if (vm == null) { return(Json(new { Code = -400, Msg = "参数不能为空", })); } try { ResponseStatusService rpSV = new ResponseStatusService(); vm.Inputer = UserData.Name; vm.InputerID = UserData.UserId; vm = rpSV.SaveResponse(vm); #region 日志 var log = new LogVM() { Operator = this.UserData.Name, OperatorID = this.UserData.UserId, RoleType = this.UserData.RoleType, OperateTime = DateTime.Now, OperateType = (int)EnumOperateType.编辑 }; log.OperateDescribe = ((EnumOperateType)log.OperateType).ToString() + "响应状态"; Logger.AddLog(log); #endregion return(Json(new { Code = 200, Msg = "保存成功", Data = new { ID = vm.ID, Status = vm.Status, StatusText = ((EnumResponseStatus)vm.Status).ToString() } })); } catch (Exception ex) { throw ex; } }
public ActionResult Edit(int responseId = 0) { try { ResponseStatusView vm = new ResponseStatusService().GetResponseStatusByID(responseId); if (vm == null) { vm = new ResponseStatusView(); } return(View("Edit", vm)); } catch (Exception ex) { LogHelper.WriteLog(ex.Message); throw ex; } }
/// <summary> /// 通过Id获取响应状态详情 /// </summary> /// <param name="responseStatusId"></param> /// <returns></returns> public ResponseStatusView GetResponseStatusByID(int ID) { string sql = string.Format(@" select * from responsestatus where ID = {0} ", ID); using (var dbContext = new DbContext().ConnectionStringName(ConnectionUtil.connWXB, DbProviderTypes.MySql)) { ResponseStatusView resVM = dbContext.Sql(sql).QuerySingle <ResponseStatusView>(reader => { ResponseStatusView temp = new ResponseStatusView(); if (!string.IsNullOrEmpty(reader["ID"].ToString())) { temp.ID = reader.AsInt("ID"); } if (!string.IsNullOrEmpty(reader["Status"].ToString())) { temp.Status = reader.AsInt("Status"); } if (!string.IsNullOrEmpty(reader["StartTime"].ToString())) { temp.StartTime = Convert.ToDateTime(reader["StartTime"]); } if (!string.IsNullOrEmpty(reader["EndTime"].ToString())) { temp.EndTime = Convert.ToDateTime(reader["EndTime"]); } if (!string.IsNullOrEmpty(reader["InputerID"].ToString())) { temp.InputerID = reader.AsInt("InputerID"); } if (!string.IsNullOrEmpty(reader["Inputer"].ToString())) { temp.Inputer = reader.AsString("InputerID"); } return(temp); }); return(resVM); } }
/// <summary> /// 保存 /// </summary> /// <param name="vm"></param> /// <returns></returns> public ActionResult SaveResponse(ResponseStatusView vm) { if (vm == null) { return(Json(new { Code = -400, Msg = "参数不能为空", })); } try { ResponseStatusService rpSV = new ResponseStatusService(); vm.Inputer = UserData.Name; vm.InputerID = UserData.UserId; if (vm.Status.HasValue && !vm.StartTime.HasValue && !vm.EndTime.HasValue) { vm.StartTime = DateTime.Now; } vm = rpSV.SaveResponse(vm); #region 日志 var log = new LogVM() { Operator = this.UserData.Name, OperatorID = this.UserData.UserId, RoleTypes = this.UserData.RoleTypes, OperateTime = DateTime.Now, OperateType = (int)EnumOperateType.编辑 }; log.OperateDescribe = ((EnumOperateType)log.OperateType).ToString() + "响应状态"; Logger.AddLog(log); #endregion if (vm.EndTime.HasValue && DateTime.Now >= vm.EndTime.Value.AddDays(1)) { vm.Status = null; } else if (!vm.EndTime.HasValue && vm.StartTime.HasValue && DateTime.Now < vm.StartTime) { vm.Status = null; } return(Json(new { Code = 200, Msg = "保存成功", Data = new { ID = vm.ID, Status = vm.Status, StatusText = vm.Status.HasValue ? ((EnumResponseStatus)vm.Status).ToString() : "--" } })); } catch (Exception ex) { LogHelper.WriteLog(ex.Message); throw ex; } }