绿十字逻辑调整
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -28,8 +28,14 @@ namespace DOAN.Model.MES.Andon.Dto
|
||||
public string UpdatedBy { get; set; }
|
||||
|
||||
public DateTime? UpdatedTime { get; set; }
|
||||
|
||||
|
||||
|
||||
}
|
||||
/// <summary>
|
||||
/// 现场安全绿色十字架输入输出对象
|
||||
/// </summary>
|
||||
public class SiteSafeGreenCrossBoardDto
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public int SafeDateInt { get; set; }
|
||||
public int SafeNum { get; set; } = 0;
|
||||
}
|
||||
}
|
||||
@@ -26,6 +26,7 @@ namespace DOAN.Service.MES.Andon.Service
|
||||
|
||||
var response = Queryable()
|
||||
.Where(predicate.ToExpression())
|
||||
.OrderBy(it=>it.SafeDate)
|
||||
.ToPage<SiteSafeGreenCross, SiteSafeGreenCrossDto>(parm);
|
||||
|
||||
return response;
|
||||
|
||||
@@ -10,6 +10,6 @@ namespace DOAN.Service.MES.SmartScreen.Site.IService
|
||||
public interface ISiteSafeGreenCrossSmartService
|
||||
{
|
||||
|
||||
public List<SiteSafeGreenCrossDto> GetGeenCrossSmartScreenForMonth();
|
||||
public List<SiteSafeGreenCrossBoardDto> GetGeenCrossSmartScreenForMonth();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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<SiteSafeGreenCross>, ISiteSafeGreenCrossSmartService
|
||||
[AppService(
|
||||
ServiceType = typeof(ISiteSafeGreenCrossSmartService),
|
||||
ServiceLifetime = LifeTime.Transient
|
||||
)]
|
||||
public class SiteSafeGreenCrossSmartService
|
||||
: BaseService<SiteSafeGreenCross>,
|
||||
ISiteSafeGreenCrossSmartService
|
||||
{
|
||||
public List<SiteSafeGreenCrossDto> GetGeenCrossSmartScreenForMonth()
|
||||
public List<SiteSafeGreenCrossBoardDto> GetGeenCrossSmartScreenForMonth()
|
||||
{
|
||||
UseTran2(() =>
|
||||
{
|
||||
DateTime nowDate = DateTime.Now.Date;
|
||||
bool TodayExist = Context.Queryable<SiteSafeGreenCross>().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<SiteSafeGreenCross>().Where(it => it.SafeDate >= firstDayOfMonth && it.SafeDate <= lastDayOfMonth)
|
||||
.ToList().Adapt<List<SiteSafeGreenCrossDto>>();
|
||||
|
||||
// 获取当天
|
||||
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<SiteSafeGreenCross>()
|
||||
.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<SiteSafeGreenCross>()
|
||||
.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;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user