fix 映射字段补充

This commit is contained in:
2025-02-25 17:28:20 +08:00
parent 0d90d3cc32
commit 8c915f73ce
4 changed files with 42 additions and 25 deletions

View File

@@ -28,4 +28,9 @@ public class WorkGridPageResponse
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 用户数量
/// </summary>
public int UserCount { get; set; }
}

View File

@@ -1,5 +1,7 @@
using Dlhis.Entity.Basic.Enums;
using Kurisu.AspNetCore.Utils.Converters;
using Kurisu.AspNetCore.Utils.Extensions;
using Newtonsoft.Json;
namespace Dlhis.Basic.WorkGrids.Response;
@@ -30,12 +32,14 @@ public class WorkGridTimePeriodPageResponse
/// <summary>
/// 开始时间
/// </summary>
public TimeOnly Start { get; set; }
[JsonConverter(typeof(ToDateJsonConverter))]
public DateTime Start { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public TimeOnly End { get; set; }
[JsonConverter(typeof(ToDateJsonConverter))]
public DateTime End { get; set; }
/// <summary>
/// 配置描述

View File

@@ -32,6 +32,11 @@ public class WorkGridService : IWorkGridService
.WhereIF(request.Id.HasValue, x => x.Id != request.Id)
.AnyAsync();
if (!await _dbContext.Queryable<GainfoEntity>().Where(x => x.Code == request.LeaderUserCode).AnyAsync())
{
true.ThrowIfTrue($"工号:{request.LeaderUserCode}不存在");
}
exists.ThrowIfTrue($"{request.LeaderUserCode}已存在管理的网格");
if (!request.Id.HasValue)
@@ -63,7 +68,8 @@ public class WorkGridService : IWorkGridService
Name = x.Name,
LeaderUserCode = x.LeaderUserCode,
UserName = ga.Name,
Remark = x.Remark
Remark = x.Remark,
UserCount = SqlFunc.Subqueryable<WorkGridUserEntity>().Where(p => p.WorkGridCode == x.Code).Count()
})
.ToPageListAsync(request);
}

View File

@@ -50,9 +50,11 @@ public class WorkGridTimePeriodService : IWorkGridTimePeriodService
/// <inheritdoc />
public async Task<Pagination<WorkGridTimePeriodPageResponse>> GetPageAsync(WorkGridTimePeriodPageRequest request)
{
return await _dbContext.Queryable<WorkGridTimePeriodEntity>()
var data = await _dbContext.Queryable<WorkGridTimePeriodEntity>()
.Select<WorkGridTimePeriodPageResponse>()
.ToPageListAsync(request);
return data;
}
//*************************************************************************************************************************************************
@@ -69,25 +71,25 @@ public class WorkGridTimePeriodService : IWorkGridTimePeriodService
.SingleAsync();
}
/// <summary>
/// 检查时间段重合检查
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
private async Task CheckDuplicateTimePeriodAsync(WorkGridTimePeriodSaveRequest request)
{
var periods = await _dbContext.Queryable<WorkGridTimePeriodEntity>()
.Where(x => x.Type != request.Type)
.Select(x => new TimePeriod
{
Start = x.Start,
End = x.End
})
.ToListAsync();
foreach (var period in periods)
{
period.IsDuplicate(request.Adapt<TimePeriod>()).ThrowIfTrue($"存在时间段重合[{period.Start}-{period.End}]");
}
}
// /// <summary>
// /// 检查时间段重合检查
// /// </summary>
// /// <param name="request"></param>
// /// <returns></returns>
// private async Task CheckDuplicateTimePeriodAsync(WorkGridTimePeriodSaveRequest request)
// {
// var periods = await _dbContext.Queryable<WorkGridTimePeriodEntity>()
// .Where(x => x.Type != request.Type)
// .Select(x => new TimePeriod
// {
// Start = x.Start,
// End = x.End
// })
// .ToListAsync();
//
// foreach (var period in periods)
// {
// period.IsDuplicate(request.Adapt<TimePeriod>()).ThrowIfTrue($"存在时间段重合[{period.Start}-{period.End}]");
// }
// }
}