fix 去除餐次名称

This commit is contained in:
cheche
2024-01-17 16:29:00 +08:00
parent c97daa2554
commit 7c36528646
4 changed files with 43 additions and 38 deletions

View File

@@ -18,12 +18,6 @@ public class BusinessPlaceShiftSaveRequest : IValidatableObject
/// </summary> /// </summary>
public string CustomCode { get; set; } public string CustomCode { get; set; }
/// <summary>
/// 餐次名称
/// </summary>
[Required(ErrorMessage = "餐次名称不能为空")]
public string Name { get; set; }
/// <summary> /// <summary>
/// 序号 /// 序号
/// </summary> /// </summary>

View File

@@ -30,9 +30,10 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
{ {
var page = await _dbContext.Queryable<CanteenBusinessShiftEntity>() var page = await _dbContext.Queryable<CanteenBusinessShiftEntity>()
.LeftJoin<CanteenBusinessPlaceEntity>((shift, place) => shift.BusinessPlaceCode == place.Code) .LeftJoin<CanteenBusinessPlaceEntity>((shift, place) => shift.BusinessPlaceCode == place.Code)
.WhereIF(request.Search.IsPresent(), (shift, place) => shift.CustomCode.Contains(request.Search) || shift.Name.Contains(request.Search)) .LeftJoin<BasicTypeEntity>((shift, place,type)=>shift.Code.ToString() == type.Code)
.WhereIF(request.Search.IsPresent(), (shift, place) => shift.CustomCode.Contains(request.Search) )
.WhereIF(request.BusinessPlaceCode.HasValue, (shift, place) => shift.BusinessPlaceCode == request.BusinessPlaceCode) .WhereIF(request.BusinessPlaceCode.HasValue, (shift, place) => shift.BusinessPlaceCode == request.BusinessPlaceCode)
.Select((shift, place) => new BusinessPlaceShiftResponse .Select((shift, place, type) => new BusinessPlaceShiftResponse
{ {
Id = shift.Id, Id = shift.Id,
BusinessPlaceCode = place.Code, BusinessPlaceCode = place.Code,
@@ -40,7 +41,7 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
BusinessPlace = place.Name, BusinessPlace = place.Name,
Code = shift.Code, Code = shift.Code,
CustomCode = shift.CustomCode, CustomCode = shift.CustomCode,
Name = shift.Name, Name = type.Display,
Start = shift.Start, Start = shift.Start,
End = shift.End End = shift.End
}) })
@@ -55,6 +56,7 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
await DuplicateTimePeriodAsync(request); await DuplicateTimePeriodAsync(request);
await CheckPlaceExistsAsync(request.BusinessPlaceCode); await CheckPlaceExistsAsync(request.BusinessPlaceCode);
if (!request.Id.HasValue) if (!request.Id.HasValue)
{ {
var entity = request.Adapt<CanteenBusinessShiftEntity>(); var entity = request.Adapt<CanteenBusinessShiftEntity>();
@@ -95,20 +97,29 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
(tenantResult.Code == ApiStateCode.Success).ThrowIfFalse(tenantResult.Msg); (tenantResult.Code == ApiStateCode.Success).ThrowIfFalse(tenantResult.Msg);
var tenantInfo = tenantResult.Data; var tenantInfo = tenantResult.Data;
var list = new List<BusinessPlaceShiftTinyResponse>();
foreach (var shiftinfo in shifts)
{
var name = _dbContext.Queryable<BasicTypeEntity>()
.Where(x => x.Code == shiftinfo.Code.ToString())
.Select(x => x.Display)
.First();
var shift = new BusinessPlaceShiftTinyResponse
{
CustomCode = shiftinfo.CustomCode,
Name = name,
Start = shiftinfo.Start,
End = shiftinfo.End
};
list.Add(shift);
}
return new BusinessPlaceWithShiftResponse return new BusinessPlaceWithShiftResponse
{ {
CustomCode = placeCustomCode, CustomCode = placeCustomCode,
Name = place.Name, Name = place.Name,
TenantCode = tenantInfo.Code, TenantCode = tenantInfo.Code,
TenantName = tenantInfo.Name, TenantName = tenantInfo.Name,
Shifts = shifts.Select(shift => new BusinessPlaceShiftTinyResponse Shifts = list
{
CustomCode = shift.CustomCode,
Name = shift.Name,
Start = shift.Start,
End = shift.End
})
.ToList()
}; };
} }
@@ -159,4 +170,5 @@ public class BusinessPlaceShiftService : IBusinessPlaceShiftService
existsSameCustomCode.ThrowIfTrue($"自定义手工号[{request.CustomCode}]存在重复,请检查."); existsSameCustomCode.ThrowIfTrue($"自定义手工号[{request.CustomCode}]存在重复,请检查.");
} }
} }

View File

@@ -38,10 +38,11 @@ public class BalanceService : IBalanceService
.LeftJoin<DepartmentEntity>((record, ga, department) => ga.DepartmentNo == department.No) .LeftJoin<DepartmentEntity>((record, ga, department) => ga.DepartmentNo == department.No)
.LeftJoin<CanteenBusinessPlaceEntity>((record, ga, department, bplace) => record.BusinessPlaceCode == bplace.Code) .LeftJoin<CanteenBusinessPlaceEntity>((record, ga, department, bplace) => record.BusinessPlaceCode == bplace.Code)
.LeftJoin<CanteenBusinessShiftEntity>((record, ga, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code) .LeftJoin<CanteenBusinessShiftEntity>((record, ga, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code)
.LeftJoin<BasicTypeEntity>((record, ga, department, bplace, bshift, type) => record.BusinessShiftCode.ToString() == type.Code)
.WhereIF(request.SearchDateTimePeriod?.Start.HasValue == true, record => record.CostDate >= request.SearchDateTimePeriod.Start) .WhereIF(request.SearchDateTimePeriod?.Start.HasValue == true, record => record.CostDate >= request.SearchDateTimePeriod.Start)
.WhereIF(request.SearchDateTimePeriod?.End.HasValue == true, record => record.CostDate <= request.SearchDateTimePeriod.End) .WhereIF(request.SearchDateTimePeriod?.End.HasValue == true, record => record.CostDate <= request.SearchDateTimePeriod.End)
.OrderBy(record => record.CreateTime, OrderByType.Desc) .OrderBy(record => record.CreateTime, OrderByType.Desc)
.Select((record, ga, department, bplace, bshift) => new BalanceRecordResponse .Select((record, ga, department, bplace, bshift,type) => new BalanceRecordResponse
{ {
Id = record.Id, Id = record.Id,
Amount = record.Amount, Amount = record.Amount,
@@ -64,7 +65,7 @@ public class BalanceService : IBalanceService
Name = record.Name, Name = record.Name,
DepartmentName = department.Name, DepartmentName = department.Name,
BusinessPlaceName = bplace.Name, BusinessPlaceName = bplace.Name,
BusinessShiftName = bshift.Name, BusinessShiftName = type.Display,
CostDateTime = record.CreateTime // todo CostDateTime = record.CreateTime // todo
}) })
.ToPageListAsync(request); .ToPageListAsync(request);
@@ -82,9 +83,10 @@ public class BalanceService : IBalanceService
.LeftJoin<DepartmentEntity>((record, department) => record.DepartmentNo == department.No) .LeftJoin<DepartmentEntity>((record, department) => record.DepartmentNo == department.No)
.LeftJoin<CanteenBusinessPlaceEntity>((record, department, bplace) => record.BusinessPlaceCode == bplace.Code) .LeftJoin<CanteenBusinessPlaceEntity>((record, department, bplace) => record.BusinessPlaceCode == bplace.Code)
.LeftJoin<CanteenBusinessShiftEntity>((record, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code) .LeftJoin<CanteenBusinessShiftEntity>((record, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code)
.LeftJoin<BasicTypeEntity>((record, department, bplace, bshift,type) =>record.BusinessShiftCode.ToString() == type.Code)
.Where(record => record.CostId == request.CostId) .Where(record => record.CostId == request.CostId)
.OrderBy(record => record.CreateTime, OrderByType.Desc) .OrderBy(record => record.CreateTime, OrderByType.Desc)
.Select((record, department, bplace, bshift) => new BalanceRecordResponse .Select((record, department, bplace, bshift,type) => new BalanceRecordResponse
{ {
Id = record.Id, Id = record.Id,
Amount = record.Amount, Amount = record.Amount,
@@ -107,7 +109,7 @@ public class BalanceService : IBalanceService
Name = record.Name, Name = record.Name,
DepartmentName = department.Name, DepartmentName = department.Name,
BusinessPlaceName = bplace.Name, BusinessPlaceName = bplace.Name,
BusinessShiftName = bshift.Name, BusinessShiftName = type.Display,
CostDateTime = record.CreateTime // todo CostDateTime = record.CreateTime // todo
}) })
.ToPageListAsync(request); .ToPageListAsync(request);
@@ -125,6 +127,7 @@ public class BalanceService : IBalanceService
.LeftJoin<DepartmentEntity>((record, department) => record.DepartmentNo == department.No) .LeftJoin<DepartmentEntity>((record, department) => record.DepartmentNo == department.No)
.LeftJoin<CanteenBusinessPlaceEntity>((record, department, bplace) => record.BusinessPlaceCode == bplace.Code) .LeftJoin<CanteenBusinessPlaceEntity>((record, department, bplace) => record.BusinessPlaceCode == bplace.Code)
.LeftJoin<CanteenBusinessShiftEntity>((record, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code) .LeftJoin<CanteenBusinessShiftEntity>((record, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code)
.LeftJoin<BasicTypeEntity>((record, department, bplace, bshift, type) => record.BusinessShiftCode.ToString() == type.Code)
.WhereIF(!request.Name.IsEmpty(), record => record.Name == request.Name) .WhereIF(!request.Name.IsEmpty(), record => record.Name == request.Name)
.WhereIF(!request.DepartmentNo.IsEmpty(), record => record.DepartmentNo == request.DepartmentNo) .WhereIF(!request.DepartmentNo.IsEmpty(), record => record.DepartmentNo == request.DepartmentNo)
.WhereIF(!request.UserCode.IsEmpty(), record => record.UserCode == request.UserCode) .WhereIF(!request.UserCode.IsEmpty(), record => record.UserCode == request.UserCode)
@@ -134,7 +137,7 @@ public class BalanceService : IBalanceService
.WhereIF(request.StartDatetime.HasValue, record => record.CostDateTime >= request.StartDatetime) .WhereIF(request.StartDatetime.HasValue, record => record.CostDateTime >= request.StartDatetime)
.WhereIF(request.EndDatetime.HasValue, record => record.CostDateTime <= request.EndDatetime) .WhereIF(request.EndDatetime.HasValue, record => record.CostDateTime <= request.EndDatetime)
.OrderBy(record => record.CreateTime, OrderByType.Desc) .OrderBy(record => record.CreateTime, OrderByType.Desc)
.Select((record, department, bplace, bshift) => new BalanceRecordResponse .Select((record, department, bplace, bshift,type) => new BalanceRecordResponse
{ {
Id = record.Id, Id = record.Id,
Amount = record.Amount, Amount = record.Amount,
@@ -157,7 +160,7 @@ public class BalanceService : IBalanceService
Name = record.Name, Name = record.Name,
DepartmentName = department.Name, DepartmentName = department.Name,
BusinessPlaceName = bplace.Name, BusinessPlaceName = bplace.Name,
BusinessShiftName = bshift.Name, BusinessShiftName = type.Display,
CostDateTime = record.CreateTime // todo CostDateTime = record.CreateTime // todo
}) })
.ToPageListAsync(request); .ToPageListAsync(request);
@@ -297,14 +300,14 @@ public class BalanceService : IBalanceService
private async Task<Dictionary<string, string>> GetShiftCode() private async Task<Dictionary<string, string>> GetShiftCode()
{ {
var list = await _dbContext.Queryable<CanteenBusinessShiftEntity>().ToListAsync(); var list = await _dbContext.Queryable<BasicTypeEntity>().ToListAsync();
var shiftCodeDict = new Dictionary<string, string>(); var shiftCodeDict = new Dictionary<string, string>();
var breakfastCode = list.FirstOrDefault(x => x.Name == "早餐")?.Code.ToString(); var breakfastCode = list.FirstOrDefault(x => x.Display == "早餐")?.Code;
var lunchCode = list.FirstOrDefault(x => x.Name == "午餐")?.Code.ToString(); var lunchCode = list.FirstOrDefault(x => x.Display == "午餐")?.Code;
var dinnerCode = list.FirstOrDefault(x => x.Name == "晚餐")?.Code.ToString(); var dinnerCode = list.FirstOrDefault(x => x.Display == "晚餐")?.Code;
var lateNightCode = list.FirstOrDefault(x => x.Name == "宵夜")?.Code.ToString(); var lateNightCode = list.FirstOrDefault(x => x.Display == "宵夜")?.Code;
shiftCodeDict.Add("Breakfast", breakfastCode); shiftCodeDict.Add("Breakfast", breakfastCode);
shiftCodeDict.Add("Lunch", lunchCode); shiftCodeDict.Add("Lunch", lunchCode);
@@ -384,12 +387,13 @@ public class BalanceService : IBalanceService
.LeftJoin<DepartmentEntity>((record, ga, department) => ga.DepartmentNo == department.No) .LeftJoin<DepartmentEntity>((record, ga, department) => ga.DepartmentNo == department.No)
.LeftJoin<CanteenBusinessPlaceEntity>((record, ga, department, bplace) => record.BusinessPlaceCode == bplace.Code) .LeftJoin<CanteenBusinessPlaceEntity>((record, ga, department, bplace) => record.BusinessPlaceCode == bplace.Code)
.LeftJoin<CanteenBusinessShiftEntity>((record, ga, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code) .LeftJoin<CanteenBusinessShiftEntity>((record, ga, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code)
.LeftJoin<BasicTypeEntity>((record, ga, department, bplace, bshift, type) => record.BusinessShiftCode.ToString() == type.Code)
.WhereIF(request.SearchDate.HasValue, record => record.CostDate >= start) .WhereIF(request.SearchDate.HasValue, record => record.CostDate >= start)
.WhereIF(request.SearchDate.HasValue, record => record.CostDate <= end) .WhereIF(request.SearchDate.HasValue, record => record.CostDate <= end)
.Where(record => record.TenantId == device.TenantId || (record.DeviceInfo == device.Code.ToString() || record.DeviceInfo == device.UniqueNo)) .Where(record => record.TenantId == device.TenantId || (record.DeviceInfo == device.Code.ToString() || record.DeviceInfo == device.UniqueNo))
.Where(record => record.Type == BalanceRecordTypeEnumType.Out && record.Status == BalanceRecordStatusEnumType.Valid) .Where(record => record.Type == BalanceRecordTypeEnumType.Out && record.Status == BalanceRecordStatusEnumType.Valid)
.OrderBy(record => record.CreateTime, OrderByType.Desc) .OrderBy(record => record.CreateTime, OrderByType.Desc)
.Select((record, ga, department, bplace, bshift) => new BalanceRecordResponse .Select((record, ga, department, bplace, bshift,type) => new BalanceRecordResponse
{ {
Id = record.Id, Id = record.Id,
Amount = record.Amount, Amount = record.Amount,
@@ -412,7 +416,7 @@ public class BalanceService : IBalanceService
Name = record.Name, Name = record.Name,
DepartmentName = department.Name, DepartmentName = department.Name,
BusinessPlaceName = bplace.Name, BusinessPlaceName = bplace.Name,
BusinessShiftName = bshift.Name, BusinessShiftName = type.Display,
CostDateTime = record.CostDateTime CostDateTime = record.CostDateTime
}).ToPageListAsync(request); }).ToPageListAsync(request);
@@ -439,11 +443,12 @@ public class BalanceService : IBalanceService
.LeftJoin<DepartmentEntity>((record, ga, department) => ga.DepartmentNo == department.No) .LeftJoin<DepartmentEntity>((record, ga, department) => ga.DepartmentNo == department.No)
.LeftJoin<CanteenBusinessPlaceEntity>((record, ga, department, bplace) => record.BusinessPlaceCode == bplace.Code) .LeftJoin<CanteenBusinessPlaceEntity>((record, ga, department, bplace) => record.BusinessPlaceCode == bplace.Code)
.LeftJoin<CanteenBusinessShiftEntity>((record, ga, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code) .LeftJoin<CanteenBusinessShiftEntity>((record, ga, department, bplace, bshift) => record.BusinessShiftCode == bshift.Code)
.LeftJoin<BasicTypeEntity>((record, ga, department, bplace, bshift,type) =>record.BusinessShiftCode.ToString() == type.Code)
.WhereIF(request.SearchDateTimePeriod?.Start.HasValue == true, record => record.CostDate >= request.SearchDateTimePeriod.Start) .WhereIF(request.SearchDateTimePeriod?.Start.HasValue == true, record => record.CostDate >= request.SearchDateTimePeriod.Start)
.WhereIF(request.SearchDateTimePeriod?.End.HasValue == true, record => record.CostDate <= request.SearchDateTimePeriod.End) .WhereIF(request.SearchDateTimePeriod?.End.HasValue == true, record => record.CostDate <= request.SearchDateTimePeriod.End)
.Where((record, ga) => ga.IdentityUserId == userId) .Where((record, ga) => ga.IdentityUserId == userId)
.OrderBy(record => record.CreateTime, OrderByType.Desc) .OrderBy(record => record.CreateTime, OrderByType.Desc)
.Select((record, ga, department, bplace, bshift) => new BalanceRecordUserResponse .Select((record, ga, department, bplace, bshift,type) => new BalanceRecordUserResponse
{ {
Id = record.Id, Id = record.Id,
Amount = record.Amount, Amount = record.Amount,
@@ -452,7 +457,7 @@ public class BalanceService : IBalanceService
Source = record.Source, Source = record.Source,
No = record.No, No = record.No,
BusinessPlaceName = bplace.Name, BusinessPlaceName = bplace.Name,
BusinessShiftName = bshift.Name, BusinessShiftName = type.Display,
CostDateTime = record.CreateTime // todo CostDateTime = record.CreateTime // todo
}) })
.ToPageListAsync(request); .ToPageListAsync(request);

View File

@@ -28,12 +28,6 @@ public class CanteenBusinessShiftEntity : SugarBaseEntity, ITenantId
[SugarColumn(ColumnDescription = "自定义手工号")] [SugarColumn(ColumnDescription = "自定义手工号")]
public string CustomCode { get; set; } public string CustomCode { get; set; }
/// <summary>
/// 餐次名称
/// </summary>
[SugarColumn(ColumnDescription = "餐次名称")]
public string Name { get; set; }
/// <summary> /// <summary>
/// 经营开始时间 /// 经营开始时间
/// </summary> /// </summary>