public IActionResult GetDutyCheckPackageProcess(Guid organizationId) { try { if (organizationId == null || organizationId == new Guid()) { return(NoContent()); } using (var db = new AllInOneContext.AllInOneContext()) { DutyCheckPackage package = db.DutyCheckPackage .Include(t => t.DutyCheckPackLogs).ThenInclude(t => t.DutyCheckLog).ThenInclude(t => t.Status) .FirstOrDefault(p => p.StartTime <= DateTime.Now && p.EndTime >= DateTime.Now); if (package == null) { return(NoContent()); } var endLogs = package.DutyCheckPackLogs.Where(p => p.DutyCheckLog.Status.SystemOptionCode.Equals("16000003")).Count(); int status = 0; if (endLogs > 0) { status = 2; } DutyCheckPackageProcess process = new DutyCheckPackageProcess { Description = "", EndTime = package.EndTime, StartTime = package.StartTime, Total = package.DutyCheckPackLogs.Count(), CompetedCount = endLogs, ProcessStatus = status }; return(new ObjectResult(process)); } } catch (Exception ex) { _logger.LogError("根据组织机构ID获取查勤进度状态:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace); return(BadRequest(new ApplicationException { ErrorCode = "Unknown", ErrorMessage = ex.Message })); } }
///// <summary> ///// 获取查勤进度 ///// </summary> ///// <returns></returns> //[HttpGet] //[Route("~/Paps/dutyCheckLog/organizationId={organizationId}")] //public IActionResult GetDutyCheckLogByProcess(Guid organizationId) //{ // using (var db = new AllInOneContext.AllInOneContext()) // { // DutyCheckLog data = db.DutyCheckLog // .Include(t => t.Apprise).ThenInclude(t => t.AppraiseICO) // .Include(t => t.Apprise).ThenInclude(t => t.AppraiseType) // .Include(t => t.DutyCheckOperation).ThenInclude(t => t.Attachments).ThenInclude(t => t.Attachment) // .Include(t => t.DutyCheckOperation).ThenInclude(t => t.Attachments).ThenInclude(t => t.AttachmentType) // .Include(t => t.DutyCheckSiteSchedule).ThenInclude(t => t.CheckDutySite) // .Include(t => t.DutyCheckSiteSchedule).ThenInclude(t => t.CheckMan) // .Include(t => t.DutyCheckStaff) // .Include(t => t.Organization) // .Include(t => t.RecordType) // .Include(t => t.Status) // .FirstOrDefault( // p => p.OrganizationId.Equals(organizationId) // && ); // if (data == null) // { // return NoContent(); // } // return new ObjectResult(data); // } //} /// <summary> /// 检查查勤进度 /// </summary> private void CheckPackageProcess(Guid organizationId) { try { if (organizationId == null || organizationId == new Guid()) { return; } using (var db = new AllInOneContext.AllInOneContext()) { DutyCheckPackage package = db.DutyCheckPackage .Include(t => t.DutyCheckPackLogs).ThenInclude(t => t.DutyCheckLog).ThenInclude(t => t.Status) .FirstOrDefault(p => p.StartTime <= DateTime.Now && p.EndTime >= DateTime.Now); if (package == null) { MQPulish.PublishMessage("DutyCheckPackageProcess", new DutyCheckPackageProcess { ProcessStatus = 0, Description = "尚未开始" }); return; } var endLogs = package.DutyCheckPackLogs.Where(p => p.DutyCheckLog.Status.SystemOptionCode.Equals("16000003")).Count(); int status = 0; if (endLogs > 0) { status = 2; } DutyCheckPackageProcess process = new DutyCheckPackageProcess { Description = "", EndTime = package.EndTime, StartTime = package.StartTime, Total = package.DutyCheckPackLogs.Count(), CompetedCount = endLogs, ProcessStatus = status }; MQPulish.PublishMessage("DutyCheckPackageProcess", process); } } catch (Exception ex) { Console.WriteLine(string.Format("根据组织机构ID获取查勤进度状态:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace)); } }