diff --git a/DOAN.Admin.WebApi/Controllers/MES/SmartScreen/Site/SiteSafeGreenCrossSmartController.cs b/DOAN.Admin.WebApi/Controllers/MES/SmartScreen/Site/SiteSafeGreenCrossSmartController.cs index b00826b..664247d 100644 --- a/DOAN.Admin.WebApi/Controllers/MES/SmartScreen/Site/SiteSafeGreenCrossSmartController.cs +++ b/DOAN.Admin.WebApi/Controllers/MES/SmartScreen/Site/SiteSafeGreenCrossSmartController.cs @@ -12,9 +12,9 @@ namespace DOAN.Admin.WebApi.Controllers.MES.SmartScreen.Site public class SiteSafeGreenCrossSmartController : BaseController { - private readonly ISiteSafeGreenCrossSmartService siteSafeGreenCrossSmartService; + private readonly ISiteSafeGreenCrossSmartService _siteSafeGreenCrossSmartService; public SiteSafeGreenCrossSmartController(ISiteSafeGreenCrossSmartService siteSafeGreenCrossSmartService) { - siteSafeGreenCrossSmartService = siteSafeGreenCrossSmartService; + _siteSafeGreenCrossSmartService = siteSafeGreenCrossSmartService; } @@ -22,7 +22,7 @@ namespace DOAN.Admin.WebApi.Controllers.MES.SmartScreen.Site [HttpGet("greencross")] public IActionResult GetGeenCrossSmartScreenForMonth() { - var response = siteSafeGreenCrossSmartService.GetGeenCrossSmartScreenForMonth(); + var response = _siteSafeGreenCrossSmartService.GetGeenCrossSmartScreenForMonth(); return SUCCESS(response); } diff --git a/DOAN.Model/MES/Andon/Dto/SiteSafeGreenCrossDto.cs b/DOAN.Model/MES/Andon/Dto/SiteSafeGreenCrossDto.cs index f929910..04b4562 100644 --- a/DOAN.Model/MES/Andon/Dto/SiteSafeGreenCrossDto.cs +++ b/DOAN.Model/MES/Andon/Dto/SiteSafeGreenCrossDto.cs @@ -28,8 +28,14 @@ namespace DOAN.Model.MES.Andon.Dto public string UpdatedBy { get; set; } public DateTime? UpdatedTime { get; set; } - - - + } + /// + /// 现场安全绿色十字架输入输出对象 + /// + public class SiteSafeGreenCrossBoardDto + { + public int Id { get; set; } + public int SafeDateInt { get; set; } + public int SafeNum { get; set; } = 0; } } \ No newline at end of file diff --git a/DOAN.Service/MES/Andon/SiteSafeGreenCrossService.cs b/DOAN.Service/MES/Andon/SiteSafeGreenCrossService.cs index bbd067c..a8ddfac 100644 --- a/DOAN.Service/MES/Andon/SiteSafeGreenCrossService.cs +++ b/DOAN.Service/MES/Andon/SiteSafeGreenCrossService.cs @@ -26,6 +26,7 @@ namespace DOAN.Service.MES.Andon.Service var response = Queryable() .Where(predicate.ToExpression()) + .OrderBy(it=>it.SafeDate) .ToPage(parm); return response; diff --git a/DOAN.Service/MES/SmartScreen/Site/IService/ISiteSafeGreenCrossSmartService.cs b/DOAN.Service/MES/SmartScreen/Site/IService/ISiteSafeGreenCrossSmartService.cs index 469cd93..81f461e 100644 --- a/DOAN.Service/MES/SmartScreen/Site/IService/ISiteSafeGreenCrossSmartService.cs +++ b/DOAN.Service/MES/SmartScreen/Site/IService/ISiteSafeGreenCrossSmartService.cs @@ -10,6 +10,6 @@ namespace DOAN.Service.MES.SmartScreen.Site.IService public interface ISiteSafeGreenCrossSmartService { - public List GetGeenCrossSmartScreenForMonth(); + public List GetGeenCrossSmartScreenForMonth(); } } diff --git a/DOAN.Service/MES/SmartScreen/Site/SiteSafeGreenCrossSmartService.cs b/DOAN.Service/MES/SmartScreen/Site/SiteSafeGreenCrossSmartService.cs index 8cf9460..e25ded5 100644 --- a/DOAN.Service/MES/SmartScreen/Site/SiteSafeGreenCrossSmartService.cs +++ b/DOAN.Service/MES/SmartScreen/Site/SiteSafeGreenCrossSmartService.cs @@ -1,54 +1,74 @@ -using DOAN.Model.MES.Andon; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using DOAN.Model.MES.Andon; using DOAN.Model.MES.Andon.Dto; using DOAN.Model.MES.quality.FQC; using DOAN.Service.MES.SmartScreen.Quality.IService; using DOAN.Service.MES.SmartScreen.Site.IService; using Infrastructure.Attribute; using Mapster; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; namespace DOAN.Service.MES.SmartScreen.Site { - - - [AppService(ServiceType = typeof(ISiteSafeGreenCrossSmartService), ServiceLifetime = LifeTime.Transient)] - public class SiteSafeGreenCrossSmartService : BaseService, ISiteSafeGreenCrossSmartService + [AppService( + ServiceType = typeof(ISiteSafeGreenCrossSmartService), + ServiceLifetime = LifeTime.Transient + )] + public class SiteSafeGreenCrossSmartService + : BaseService, + ISiteSafeGreenCrossSmartService { - public List GetGeenCrossSmartScreenForMonth() + public List GetGeenCrossSmartScreenForMonth() { - UseTran2(() => - { - DateTime nowDate = DateTime.Now.Date; - bool TodayExist = Context.Queryable().Where(it => it.SafeDate == nowDate).Any(); - if (!TodayExist) - { - - Context.Insertable(new SiteSafeGreenCross() - { - SafeDate = nowDate, - SafeNum = 1, - CreatedBy = "auto", - CreatedTime = DateTime.Now, - UpdatedBy = "auto", - UpdatedTime = DateTime.Now - }).ExecuteCommand(); - } - - }); - // 获取本月第一天 DateTime firstDayOfMonth = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); - // 获取本月最后一天 DateTime lastDayOfMonth = firstDayOfMonth.AddMonths(1).AddDays(-1); - var list = Context.Queryable().Where(it => it.SafeDate >= firstDayOfMonth && it.SafeDate <= lastDayOfMonth) - .ToList().Adapt>(); - + // 获取当天 + DateTime nowDate = DateTime.Now.Date; + UseTran2(() => + { + for (int i = 1; i < nowDate.Day; i++) + { + // 判断该日期记录是否存在 + DateTime checkDate = new DateTime(nowDate.Year, nowDate.Month, i); + bool isExist = Context + .Queryable() + .Where(it => it.SafeDate >= firstDayOfMonth) + .Where(it => it.SafeDate == checkDate) + .Any(); + if (!isExist) + { + Context + .Insertable( + new SiteSafeGreenCross() + { + SafeDate = checkDate, + SafeNum = 1, + CreatedBy = "auto", + CreatedTime = DateTime.Now, + UpdatedBy = "auto", + UpdatedTime = DateTime.Now + } + ) + .ExecuteCommand(); + } + } + }); + var list = Context + .Queryable() + .Where(it => it.SafeDate >= firstDayOfMonth && it.SafeDate <= lastDayOfMonth) + .Select(it => new SiteSafeGreenCrossBoardDto + { + Id = it.Id, + SafeDateInt = it.SafeDate != null ? it.SafeDate.Value.Day : 0, + SafeNum = it.SafeNum ?? 0 + }) + .ToList(); return list; } }