fix 字段修改1

This commit is contained in:
cheche
2024-03-15 12:39:43 +08:00
parent 9fc0719bad
commit 69a80f2263
13 changed files with 67 additions and 59 deletions

View File

@@ -68,7 +68,7 @@ public class MenuDishesController : ControllerBase
}
/// <summary>
/// 配置菜单菜品
/// 配置每日菜单菜品及限售
/// </summary>
/// <param name="request"></param>
/// <returns></returns>

View File

@@ -0,0 +1,10 @@
namespace Dlhis.Canteen.Order.Request
{
public class DispositionDishesDto
{
public Guid DisherCode { get; set; }
public int RestrictedNum { get; set; }
}
}

View File

@@ -3,6 +3,8 @@
public class DispositionDishesRequest
{
public Guid MenudCode { get; set; }
public List<Guid> DishersCodes { get; set; }
public List<DispositionDishesDto> DishersDtos { get; set; }
}
}

View File

@@ -18,7 +18,7 @@ namespace Dlhis.Canteen.Order.Request
public Guid PlaceCode { get; set; }
/// <summary>
/// 餐别
/// 餐次
/// </summary>
public ShiftEnumType ShiftType { get; set; }
@@ -27,6 +27,11 @@ namespace Dlhis.Canteen.Order.Request
/// </summary>
public string Address { get; set; }
/// <summary>
/// 菜单
/// </summary>
public Guid MenuCode { get; set; }
/// <summary>
/// 菜品
/// </summary>

View File

@@ -46,11 +46,6 @@ namespace Dlhis.Canteen.Order.Request
/// </summary>
public string Unit { get; set; }
/// <summary>
/// 限售份数
/// </summary>
public int RestrictedNum { get; set; }
/// <summary>
/// 图片
/// </summary>

View File

@@ -26,14 +26,10 @@ namespace Dlhis.Canteen.Order.Request
public string Factory { get; set; }
/// <summary>
/// 开始日期
/// 营业日期
/// </summary>
public DateOnly StartDate { get; set; }
/// <summary>
/// 结束日期
/// </summary>
public DateOnly EndDate { get; set; }
/// <summary>
/// 餐次段

View File

@@ -7,10 +7,6 @@ namespace Dlhis.Canteen.Order.Response
{
public class GetDishesResponse
{
/// <summary>
/// 菜单名称
/// </summary>
public string MenuName { get; set; }
/// <summary>
/// 大类
@@ -57,10 +53,6 @@ namespace Dlhis.Canteen.Order.Response
/// </summary>
public string Unit { get; set; }
/// <summary>
/// 限售份数
/// </summary>
public int RestrictedNum { get; set; }
/// <summary>
/// 图片

View File

@@ -32,14 +32,10 @@ namespace Dlhis.Canteen.Order.Response
public string Factory { get; set; }
/// <summary>
/// 开始日期
/// 营业日期
/// </summary>
public DateOnly StartDate { get; set; }
/// <summary>
/// 结束日期
/// </summary>
public DateOnly EndDate { get; set; }
/// <summary>
/// 餐次段

View File

@@ -32,6 +32,7 @@ namespace Dlhis.Canteen.Order.Services.Implements
.Select((x,place) => new GetMenuResponse
{
ShiftTypesSrt = x.ShiftTypes.ToString(),
//ShiftTypesSrt = string.Join(", ", x.ShiftTypes.Select(enumValue => enumValue.GetDescription())),
PlaceName = place.Name,
},true)
.ToPageListAsync(request);
@@ -100,12 +101,14 @@ namespace Dlhis.Canteen.Order.Services.Implements
public async Task DispositionDishesAsync(DispositionDishesRequest request)
{
var lst = new List<CanteenMenuDishersRelationshipEntity>();
foreach (var dCode in request.DishersCodes)
foreach (var dto in request.DishersDtos)
{
var entity = new CanteenMenuDishersRelationshipEntity
{
MenuCode = request.MenudCode,
DishersCode = dCode,
DishersCode = dto.DisherCode,
RestrictedNum = dto.RestrictedNum,
};
lst.Add(entity);
}

View File

@@ -10,6 +10,7 @@ using Kurisu.Core.DataAccess.Dto;
using Kurisu.SqlSugar.Extensions;
using Kurisu.SqlSugar.Services;
using Mapster;
using SqlSugar;
namespace Dlhis.Canteen.Order.Services.Implements;
@@ -82,16 +83,20 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
var dishes = await _dbContext.Queryable<CanteenDishesEntity>().Where(x => x.Code == request.DishesCode).FirstAsync();
dishes.Enable.ThrowIfFalse($"{dishes.Name}没启用!");
//var menu = await _dbContext.Queryable<CanteenMenuEntity>().Where(x => x.Code == dishes.MenuCode).FirstAsync();
//menu.Enable.ThrowIfFalse($"{dishes.Name}没启用!");
var menu = await _dbContext.Queryable<CanteenMenuEntity>().Where(x => x.Code == request.MenuCode).FirstAsync();
menu.Enable.ThrowIfFalse($"{dishes.Name}没启用!");
// 获取用餐日期
DateOnly tomorrow = DateOnly.FromDateTime(DateTime.Today.AddDays(1));
//if (!(tomorrow >= menu.StartDate && tomorrow <= menu.EndDate))
//{
// true.ThrowIfTrue($"菜品:{dishes.Name}对应的菜单:{menu.Name}不在营业日!");
//}
if(dishes.RestrictedNum < 0)
if (tomorrow != menu.StartDate)
{
true.ThrowIfTrue($"菜品:{dishes.Name}对应的菜单:{menu.Name}不在营业日!");
}
var restricted= await _dbContext.Queryable< CanteenMenuDishersRelationshipEntity>()
.Where(x => x.MenuCode == request.MenuCode && x.DishersCode == request.DishesCode).FirstAsync();
restricted.ThrowIfNull($"每日菜单:{menu.Name} 还没有配置菜品:{dishes.Name} 的限售数量!");
if (restricted.RestrictedNum < 0)
{
true.ThrowIfTrue($"菜品:{dishes.Name}已售罄!");
}
@@ -99,6 +104,7 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
var gainfo = await _dbContext.Queryable<GainfoEntity>()
.Where(x => x.Code == request.UserCode)
.FirstAsync();
gainfo.ThrowIfNull($"用户{request.UserCode}无档案信息,无法订餐!");
//判断是否订过餐
var flag = await _dbContext.Queryable<MiniProgramOrderEntity>()
@@ -140,7 +146,7 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
OrderStatus = MiniProgramOrderStatusEnumType.I,
OrderType = dishes.Type,
};
//订单明细
//生成订单明细
var detail = new OrderDetailsEntity
{
ThirdNo = order.No,
@@ -155,11 +161,16 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
OrderStatus = OrderDetailsStatusEnumType.I,
};
order.TotalAmount = detail.Amount;
await _dbContext.InsertAsync(order);
await _dbContext.InsertAsync(detail);
dishes.RestrictedNum-=request.DishesNum;
await _dbContext.UpdateAsync(dishes);
//扣减份数
var effect = await _dbContext.Updateable<CanteenMenuDishersRelationshipEntity>()
.SetColumns(x => x.RestrictedNum == restricted.RestrictedNum - request.DishesNum)
.SetColumns(x => x.Version == x.Version + 1)
.Where(x => x.MenuCode == request.MenuCode && x.DishersCode == request.DishesCode && x.Version == restricted.Version)
.ExecuteCommandAsync();
if (effect <= 0) throw new VersionExceptions("更新版本冲突");
}
}