fix 数据赋值,增加餐补数据修复处理

This commit is contained in:
2024-04-10 17:32:14 +08:00
parent c867dd2533
commit 2bc76b4ce5
13 changed files with 96 additions and 205 deletions

View File

@@ -23,12 +23,6 @@ public class BalanceRecordPageRequest : PageDto, IValidatableObject
/// </summary>
public string Factory { get; set; }
/// <summary>
/// 查询日期范围类型 DateTimeSearchEnumType
/// </summary>
[EnumDataType(typeof(DateTimeSearchEnumType))]
public DateTimeSearchEnumType? SearchDateTimeDimension { get; set; }
/// <summary>
/// 日期范围查询
/// </summary>
@@ -36,54 +30,11 @@ public class BalanceRecordPageRequest : PageDto, IValidatableObject
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
var today = DateTime.Today;
if (SearchDateTimeDimension.HasValue)
if (SearchDateTimePeriod != null)
{
//重新赋值
SearchDateTimePeriod = new DateTimePeriod();
if (SearchDateTimeDimension == DateTimeSearchEnumType.Day)
if (SearchDateTimePeriod.End.HasValue)
{
SearchDateTimePeriod.Start = today;
SearchDateTimePeriod.End = today.AddDays(1).AddSeconds(-1);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Week)
{
SearchDateTimePeriod.Start = today.AddDays(1 - (int)today.DayOfWeek);
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddDays(6);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Month)
{
SearchDateTimePeriod.Start = new DateTime(today.Year, today.Month, 1);
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddMonths(1).AddDays(-1);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Season)
{
SearchDateTimePeriod.Start = new DateTime(today.Year, today.Month, 1).AddMonths(2 - ((today.Month - 1) % 3));
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddMonths(2);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.HalfOfYear)
{
SearchDateTimePeriod.Start = today.AddDays(-180);
SearchDateTimePeriod.End = today;
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Year)
{
SearchDateTimePeriod.Start = new DateTime(today.Year, 1, 1);
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddYears(1).AddDays(-1);
}
SearchDateTimePeriod.Start = SearchDateTimePeriod.Start.Value;
SearchDateTimePeriod.End = SearchDateTimePeriod.End.Value;
}
else
{
if (SearchDateTimePeriod != null)
{
if (SearchDateTimePeriod.End.HasValue)
{
SearchDateTimePeriod.End = SearchDateTimePeriod.End.Value.AddDays(1).AddSeconds(-1);
}
SearchDateTimePeriod.End = SearchDateTimePeriod.End.Value.AddDays(1).AddSeconds(-1);
}
}

View File

@@ -7,12 +7,6 @@ namespace Dlhis.Canteen.Order.Request;
public class BalanceRecordUserPageRequest : PageDto, IValidatableObject
{
/// <summary>
/// 查询日期范围类型 DateTimeSearchEnumType
/// </summary>
[EnumDataType(typeof(DateTimeSearchEnumType))]
public DateTimeSearchEnumType? SearchDateTimeDimension { get; set; }
/// <summary>
/// 消费应用类型
/// </summary>
@@ -26,54 +20,11 @@ public class BalanceRecordUserPageRequest : PageDto, IValidatableObject
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
var now = DateTime.Now;
if (SearchDateTimeDimension.HasValue)
if (SearchDateTimePeriod != null)
{
//重新赋值
SearchDateTimePeriod = new DateTimePeriod();
if (SearchDateTimeDimension == DateTimeSearchEnumType.Day)
if (SearchDateTimePeriod.End != null)
{
SearchDateTimePeriod.Start = DateTime.Today;
SearchDateTimePeriod.End = new DateTime(now.Year, now.Month, now.Day, 23, 59, 59);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Week)
{
SearchDateTimePeriod.Start = now.AddDays(1 - (int)now.DayOfWeek);
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddDays(6);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Month)
{
SearchDateTimePeriod.Start = new DateTime(now.Year, now.Month, 1);
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddMonths(1).AddDays(-1);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Season)
{
SearchDateTimePeriod.Start = now.AddMonths(0 - (now.Month - 1) % 3);
SearchDateTimePeriod.End = now.AddMonths(3 - (now.Month - 1) % 3).AddMonths(1).AddDays(-1);
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.HalfOfYear)
{
SearchDateTimePeriod.Start = now.AddDays(-180);
SearchDateTimePeriod.End = now;
}
else if (SearchDateTimeDimension == DateTimeSearchEnumType.Year)
{
SearchDateTimePeriod.Start = new DateTime(now.Year, 1, 1);
SearchDateTimePeriod.End = SearchDateTimePeriod.Start.Value.AddYears(1).AddDays(-1);
}
SearchDateTimePeriod.Start = SearchDateTimePeriod.Start.Value.Date;
SearchDateTimePeriod.End = SearchDateTimePeriod.End.Value.Date;
}
else
{
if (SearchDateTimePeriod != null)
{
if (SearchDateTimePeriod.End != null)
{
SearchDateTimePeriod.End = SearchDateTimePeriod.End.Value.AddDays(1).AddSeconds(-1);
}
SearchDateTimePeriod.End = SearchDateTimePeriod.End.Value.AddDays(1).AddSeconds(-1);
}
}

View File

@@ -0,0 +1,31 @@
using System.ComponentModel.DataAnnotations;
namespace Dlhis.Canteen.Order.Request;
public class BalanceSupplementRequest : IValidatableObject
{
/// <summary>
/// 流水号
/// </summary>
[Required(ErrorMessage = "流水号")]
public string No { get; set; }
/// <summary>
/// 事由
/// </summary>
[Required(ErrorMessage = "事由")]
public string Reason { get; set; }
/// <summary>
/// 补金额数
/// </summary>
public decimal Amount { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (Amount == 0)
{
yield return new ValidationResult("金额不可为0元", new[] { nameof(Amount) });
}
}
}