public JsonResult Index(LoadWebCommandQueueListRequest req) { ViewBag.CommandQueueCreateTimeRange = req.CommandQueueCreateTimeRange; ViewBag.CommandId = req.CommandId.ToString(); ViewBag.ExecuteStatus = req.CommandStatus.ToString(); ViewBag.NodeId = req.NodeId.ToString(); ViewBag.TaskId = req.TaskId.ToString(); ViewBag.CommandQueueId = req.CommandQueueId.ToString(); ResponseBase <PageInfoResponse <List <WebCommandQueueListDto> > > tasklist = PostToServer <PageInfoResponse <List <WebCommandQueueListDto> >, LoadWebCommandQueueListRequest>(ClientProxy.LoadWebCommandQueueList_Url, req); if (tasklist.Status != ResponesStatus.Success) { return(Json(new { sEcho = 0, iTotalRecords = 0, iTotalDisplayRecords = 0, aaData = new List <string>() })); } return(Json(tasklist.Data)); }
public ResponseBase <PageInfoResponse <List <WebCommandQueueListDto> > > LoadWebCommandQueueList(LoadWebCommandQueueListRequest req) { try { DateTime starttime = Convert.ToDateTime(req.CommandQueueCreateTimeRange.Split('/')[0]); DateTime endtime = Convert.ToDateTime(req.CommandQueueCreateTimeRange.Split('/')[1]).AddDays(1); int pageIndex = (req.iDisplayStart / req.iDisplayLength) + 1; int totalCount = 0; List <tb_commandqueue> cmdqueuelist = cmdqueuerespository.Find(out totalCount, pageIndex, req.iDisplayLength, x => x.createtime.ToString(), x => x.nodeid == (req.NodeId <= 0 ? x.nodeid : req.NodeId) && x.id > req.LastMaxId && x.commandstate == (req.CommandStatus < 0 ? x.commandstate : req.CommandStatus) && x.createtime >= starttime && x.createtime < endtime && x.commanddetailid == (req.CommandId <= 0?x.commanddetailid:req.CommandId) && x.taskid == (req.TaskId <= 0 ?x.taskid:req.TaskId) && x.id == (req.CommandQueueId <= 0?x.id:req.CommandQueueId) ).ToList(); if (cmdqueuelist.Count <= 0) { return(ResponseToClient <PageInfoResponse <List <WebCommandQueueListDto> > >(ResponesStatus.Failed, "命令列表为空")); } List <WebCommandQueueListDto> dto = new List <WebCommandQueueListDto>(); cmdqueuelist.ForEach(x => { dto.Add(new WebCommandQueueListDto() { CommandQueueDetail = x, NodeDetail = noderepository.FindSingle(m => m.id == x.nodeid), TaskDetail = taskRep.FindSingle(n => n.id == x.taskid), CommandLog = ((ExecuteStatus)x.commandstate == ExecuteStatus.ExecuteFailed || (ExecuteStatus)x.commandstate == ExecuteStatus.ExecuteSucess) ? cmdLogRep.FindSingle(k => k.commandqueueid == x.id):null, }); }); // LoadWebCommandQueueListResponse adata = new LoadWebCommandQueueListResponse() { CommandQueueList = dto.OrderBy(x => x.CommandQueueDetail.id).ToList() }; return(ResponseToClient <PageInfoResponse <List <WebCommandQueueListDto> > >(ResponesStatus.Success, "", new PageInfoResponse <List <WebCommandQueueListDto> >() { aaData = dto, iTotalDisplayRecords = totalCount, iTotalRecords = totalCount, sEcho = req.sEcho })); } catch (Exception ex) { return(ResponseToClient <PageInfoResponse <List <WebCommandQueueListDto> > >(ResponesStatus.Exception, "刷新命令队列异常:" + JsonConvert.SerializeObject(ex))); } }