fix 临时修改送餐代码
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
{
|
||||
public class DispositionDishesDto
|
||||
{
|
||||
public Guid DisherCode { get; set; }
|
||||
public string DisherCode { get; set; }
|
||||
|
||||
public int RestrictedNum { get; set; }
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ namespace Dlhis.Canteen.Order.Request
|
||||
/// <summary>
|
||||
/// 菜品
|
||||
/// </summary>
|
||||
public Guid DishesCode { get; set; }
|
||||
public string DishesCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数量
|
||||
|
||||
@@ -1,59 +1,51 @@
|
||||
using Dlhis.Entity.Canteen.Enums;
|
||||
using SqlSugar.DbConvert;
|
||||
using SqlSugar;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Dlhis.Canteen.Order.Request
|
||||
namespace Dlhis.Canteen.Order.Request;
|
||||
|
||||
public class SaveDishesRequest
|
||||
{
|
||||
public class SaveDishesRequest
|
||||
{
|
||||
public long? Id { get; set; }
|
||||
|
||||
public long? Id { get; set; }
|
||||
/// <summary>
|
||||
/// 大类
|
||||
/// </summary>
|
||||
public string PCategory { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 大类
|
||||
/// </summary>
|
||||
public string Categories { get; set; }
|
||||
/// <summary>`
|
||||
/// 小类
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string Category { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 小类
|
||||
/// </summary>
|
||||
public string SubCategories { get; set; }
|
||||
/// <summary>
|
||||
/// 菜品名称
|
||||
/// </summary>
|
||||
[Required]
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型
|
||||
/// </summary>
|
||||
[EnumDataType(typeof(CanteenDishesEnumType))]
|
||||
public CanteenDishesEnumType Type { get; set; }
|
||||
[Required]
|
||||
public string CustomCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 描述
|
||||
/// </summary>
|
||||
public string Description { get; set; }
|
||||
/// <summary>
|
||||
/// 描述
|
||||
/// </summary>
|
||||
public string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单价
|
||||
/// </summary>
|
||||
public decimal Amount { get; set; }
|
||||
/// <summary>
|
||||
/// 单价
|
||||
/// </summary>
|
||||
[Range(0, 10000)]
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单位
|
||||
/// </summary>
|
||||
public string Unit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片
|
||||
/// </summary>
|
||||
public string Image { get; set; }
|
||||
/// <summary>
|
||||
/// 图片
|
||||
/// </summary>
|
||||
public string ImageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
public bool Enable { get; set; }
|
||||
}
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
public bool Enable { get; set; }
|
||||
}
|
||||
|
||||
@@ -1,44 +1,39 @@
|
||||
using Dlhis.Entity.Canteen.Enums;
|
||||
using Dlhis.Entity.Device.Enums;
|
||||
using SqlSugar;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace Dlhis.Canteen.Order.Request
|
||||
namespace Dlhis.Canteen.Order.Request;
|
||||
|
||||
public class SaveMenuRequest : IValidatableObject
|
||||
{
|
||||
public class SaveMenuRequest
|
||||
/// <summary>
|
||||
/// 所属营业点
|
||||
/// </summary>
|
||||
public Guid PlaceCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 营业日期,不能小于等于当天
|
||||
/// </summary>
|
||||
public DateTime Date { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 餐次段
|
||||
/// </summary>
|
||||
public ShiftEnumType ShiftType { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
|
||||
{
|
||||
public long? Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单名称
|
||||
/// </summary>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 所属营业点
|
||||
/// </summary>
|
||||
[Required]
|
||||
public Guid PlaceCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 厂区
|
||||
/// </summary>
|
||||
public string Factory { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 营业日期
|
||||
/// </summary>
|
||||
public DateOnly StartDate { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 餐次段
|
||||
/// </summary>
|
||||
public List<ShiftEnumType> ShiftTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
public bool Enable { get; set; }
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace Dlhis.Canteen.Order.Response
|
||||
/// <summary>
|
||||
/// 菜品编码
|
||||
/// </summary>
|
||||
public Guid Code { get; set; }
|
||||
public string Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品名称
|
||||
@@ -28,7 +28,7 @@ namespace Dlhis.Canteen.Order.Response
|
||||
/// <summary>
|
||||
/// 菜品类型
|
||||
/// </summary>
|
||||
public CanteenDishesEnumType Type { get; set; }
|
||||
public CanteenMenuEnumType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品类型描述
|
||||
|
||||
@@ -120,7 +120,7 @@ namespace Dlhis.Canteen.Order.Response
|
||||
/// <summary>
|
||||
/// 订单类型
|
||||
/// </summary>
|
||||
public CanteenDishesEnumType OrderType { get; set; }
|
||||
public CanteenMenuEnumType OrderType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单类型CN
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
using Dlhis.Canteen.Order.Request;
|
||||
using Dlhis.Canteen.Order.Response;
|
||||
using Kurisu.Core.DataAccess.Dto;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace Dlhis.Canteen.Order.Services
|
||||
{
|
||||
@@ -14,7 +13,5 @@ namespace Dlhis.Canteen.Order.Services
|
||||
Task<Pagination<GetDishesResponse>> GetDishesAsync(GetDishesRequest request);
|
||||
|
||||
Task SaveDishesAsync(SaveDishesRequest request);
|
||||
|
||||
Task DispositionDishesAsync(DispositionDishesRequest request);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,16 +24,16 @@ namespace Dlhis.Canteen.Order.Services.Implements
|
||||
|
||||
public async Task<Pagination<GetMenuResponse>> GetMenuAsync(GetMenuRequest request)
|
||||
{
|
||||
|
||||
var page = await _dbContext.Queryable<CanteenMenuEntity>()
|
||||
.LeftJoin<BusinessPlaceEntity>((x,place) => x.PlaceCode == place.Code)
|
||||
.WhereIF(!request.Factory.IsEmpty(),x => x.Factory == request.Factory)
|
||||
.LeftJoin<BusinessPlaceEntity>((x, place) => x.PlaceCode == place.Code)
|
||||
.WhereIF(request.PlaceCode.HasValue, x => request.PlaceCode == x.PlaceCode)
|
||||
.WhereIF(!request.Search.IsEmpty(),x => x.Name.Contains(request.Search))
|
||||
.Select((x,place) => new GetMenuResponse
|
||||
.WhereIF(!request.Search.IsEmpty(), x => x.Name.Contains(request.Search))
|
||||
.Select((x, place) => new GetMenuResponse
|
||||
{
|
||||
ShiftTypesSrt = x.ShiftTypes.ToString(),
|
||||
PlaceName = place.Name,
|
||||
},true)
|
||||
|
||||
}, true)
|
||||
.ToPageListAsync(request);
|
||||
return page;
|
||||
}
|
||||
@@ -44,50 +44,12 @@ namespace Dlhis.Canteen.Order.Services.Implements
|
||||
.FirstAsync(x => x.Code == request.PlaceCode);
|
||||
place.ThrowIfNull($"{request.PlaceCode}:该营业点不存在!");
|
||||
|
||||
if (!request.Id.HasValue)
|
||||
{
|
||||
var entity = request.Adapt<CanteenMenuEntity>();
|
||||
entity.Code = Guid.NewGuid();
|
||||
await _dbContext.InsertAsync(entity);
|
||||
}
|
||||
else
|
||||
{
|
||||
var entity = await _dbContext.Queryable<CanteenMenuEntity>()
|
||||
.Where(x => x.Id == request.Id).FirstAsync();
|
||||
request.Adapt(entity);
|
||||
await _dbContext.UpdateAsync(entity);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public async Task<Pagination<GetDishesResponse>> GetDishesAsync(GetDishesRequest request)
|
||||
{
|
||||
if (!request.MenuCode.HasValue)
|
||||
{
|
||||
return await _dbContext.Queryable<CanteenDishesEntity>()
|
||||
.Select<GetDishesResponse>()
|
||||
.ToPageListAsync(request);
|
||||
}
|
||||
else
|
||||
{
|
||||
var relas = await _dbContext.Queryable<CanteenMenuDishersRelationshipEntity>()
|
||||
.Where(x => x.MenuCode == request.MenuCode)
|
||||
.ToListAsync();
|
||||
|
||||
var disCodes = relas.Select(x => x.DishersCode).ToList();
|
||||
|
||||
var page = await _dbContext.Queryable<CanteenDishesEntity>()
|
||||
.Where(discher => disCodes.Contains(discher.Code))
|
||||
.Select<GetDishesResponse>()
|
||||
.ToPageListAsync(request);
|
||||
|
||||
foreach (var res in page.Data)
|
||||
{
|
||||
res.RestrictedNum = relas.Where(x => x.DishersCode == res.Code)
|
||||
.Select(x => x.RestrictedNum)
|
||||
.FirstOrDefault();
|
||||
}
|
||||
return page;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public async Task SaveDishesAsync(SaveDishesRequest request)
|
||||
@@ -95,33 +57,18 @@ namespace Dlhis.Canteen.Order.Services.Implements
|
||||
if (!request.Id.HasValue)
|
||||
{
|
||||
var dishers = request.Adapt<CanteenDishesEntity>();
|
||||
dishers.Code = Guid.NewGuid();
|
||||
//todo 检验重复
|
||||
dishers.CustomCode = request.CustomCode;
|
||||
await _dbContext.InsertAsync(dishers);
|
||||
}
|
||||
else
|
||||
{
|
||||
var entity = await _dbContext.Queryable<CanteenDishesEntity>()
|
||||
.Where(x => x.Id == request.Id).FirstAsync();
|
||||
|
||||
request.Adapt(entity);
|
||||
await _dbContext.UpdateAsync(entity);
|
||||
}
|
||||
}
|
||||
|
||||
public async Task DispositionDishesAsync(DispositionDishesRequest request)
|
||||
{
|
||||
var lst = new List<CanteenMenuDishersRelationshipEntity>();
|
||||
|
||||
foreach (var dto in request.DishersDtos)
|
||||
{
|
||||
var entity = new CanteenMenuDishersRelationshipEntity
|
||||
{
|
||||
MenuCode = request.MenudCode,
|
||||
DishersCode = dto.DisherCode,
|
||||
RestrictedNum = dto.RestrictedNum,
|
||||
};
|
||||
lst.Add(entity);
|
||||
}
|
||||
await _dbContext.InsertAsync(lst);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,17 +27,18 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
|
||||
public async Task<Pagination<GetMiniProgramOrderResponse>> GetMiniProgramOrderAsync(GetMiniProgramOrderRequest request)
|
||||
{
|
||||
var page = await _dbContext.Queryable<MiniProgramOrderEntity>()
|
||||
.LeftJoin<BusinessPlaceEntity>((order,place) => order.PlaceCode == place.Code)
|
||||
.LeftJoin<CanteenDishesEntity>((order, place,dishers) => order.DishesCode == dishers.Code)
|
||||
.LeftJoin<DepartmentEntity>((order, place, dishers,depart) => order.DepartmentNo == depart.No)
|
||||
.LeftJoin<BusinessPlaceEntity>((order, place) => order.PlaceCode == place.Code)
|
||||
.LeftJoin<CanteenDishesEntity>((order, place, dishers) => order.DishesCode == dishers.CustomCode)
|
||||
.LeftJoin<DepartmentEntity>((order, place, dishers, depart) => order.DepartmentNo == depart.No)
|
||||
.WhereIF(!request.Search.IsEmpty(), order => order.Name == request.Search || order.Code == request.Search)
|
||||
.OrderBy(order => order.CostDate,SqlSugar.OrderByType.Desc)
|
||||
.WhereIF(request.SysDate.HasValue, order => order.SysDate == request.SysDate)
|
||||
.OrderBy(order => order.CostDate, OrderByType.Desc)
|
||||
.Select((order, place, dishers, depart) => new GetMiniProgramOrderResponse
|
||||
{
|
||||
PlaceName = place.Name,
|
||||
DepartmentName = depart.Name,
|
||||
DishesName = dishers.Name,
|
||||
},true)
|
||||
}, true)
|
||||
.ToPageListAsync(request);
|
||||
return page;
|
||||
}
|
||||
@@ -61,8 +62,8 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
|
||||
|
||||
public async Task<Pagination<GetDetailResponse>> GetDetailAsync(GetDetailRequest request)
|
||||
{
|
||||
var page = await _dbContext.Queryable<OrderDetailsEntity>()
|
||||
.WhereIF(!request.Search.IsEmpty(),x => x.ThirdNo == request.Search)
|
||||
var page = await _dbContext.Queryable<OrderDetailsEntity>()
|
||||
.WhereIF(!request.Search.IsEmpty(), x => x.ThirdNo == request.Search)
|
||||
.Select<GetDetailResponse>()
|
||||
.ToPageListAsync(request);
|
||||
|
||||
@@ -79,7 +80,7 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
|
||||
true.ThrowIfTrue("20:30之后无法订餐!");
|
||||
}
|
||||
//判断营业日
|
||||
var dishes = await _dbContext.Queryable<CanteenDishesEntity>().Where(x => x.Code == request.DishesCode).FirstAsync();
|
||||
var dishes = await _dbContext.Queryable<CanteenDishesEntity>().Where(x => x.CustomCode == request.DishesCode).FirstAsync();
|
||||
dishes.Enable.ThrowIfFalse($"{dishes.Name}没启用!");
|
||||
|
||||
var menu = await _dbContext.Queryable<CanteenMenuEntity>().Where(x => x.Code == request.MenuCode).FirstAsync();
|
||||
@@ -92,7 +93,7 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
|
||||
true.ThrowIfTrue($"菜品:{dishes.Name}对应的菜单:{menu.Name}不在营业日!");
|
||||
}
|
||||
|
||||
var restricted= await _dbContext.Queryable< CanteenMenuDishersRelationshipEntity>()
|
||||
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)
|
||||
@@ -112,17 +113,17 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
|
||||
flag.ThrowIfTrue($"工号:{request.UserCode} 姓名:{gainfo.Name} 已经定过{tomorrow}的{request.ShiftType.GetDescription()}!");
|
||||
|
||||
//支付方式
|
||||
var result = await _tenantApi.GetTenantTreeAsync();
|
||||
var tree = result.Data;
|
||||
var shanxi = tree.Where(x => x.Name == "山西基地").FirstOrDefault();
|
||||
var codes = shanxi.Next.Select(x => x.Code).ToList();
|
||||
if (!codes.Contains(gainfo.Factory))
|
||||
{
|
||||
if (request.PayType == CanteenPayEnumType.Repair)
|
||||
{
|
||||
true.ThrowIfTrue($"非山西,支付方式不能为{request.PayType.GetDescription()}");
|
||||
}
|
||||
}
|
||||
/* var result = await _tenantApi.GetTenantTreeAsync();
|
||||
var tree = result.Data;
|
||||
var shanxi = tree.Where(x => x.Name == "山西基地").FirstOrDefault();
|
||||
var codes = shanxi.Next.Select(x => x.Code).ToList();
|
||||
if (!codes.Contains(gainfo.Factory))
|
||||
{
|
||||
if (request.PayType == CanteenPayEnumType.Repair)
|
||||
{
|
||||
true.ThrowIfTrue($"非山西,支付方式不能为{request.PayType.GetDescription()}");
|
||||
}
|
||||
}*/
|
||||
|
||||
//生成订单
|
||||
var order = new MiniProgramOrderEntity
|
||||
@@ -150,24 +151,25 @@ public class MiniProgramOrderDetailService : IMiniProgramOrderDetailService
|
||||
{
|
||||
ThirdNo = order.No,
|
||||
SysDate = tomorrow,
|
||||
ShiftType= request.ShiftType,
|
||||
DishesCode= request.DishesCode,
|
||||
ShiftType = request.ShiftType,
|
||||
DishesCode = request.DishesCode,
|
||||
DishesName = dishes.Name,
|
||||
Price = dishes.Amount,
|
||||
Price = dishes.Price,
|
||||
Unit = dishes.Unit,
|
||||
Num = request.DishesNum,
|
||||
Amount = request.DishesNum * dishes.Amount,
|
||||
OrderStatus = OrderDetailsStatusEnumType.I,
|
||||
Number = request.DishesNum,
|
||||
Amount = request.DishesNum * dishes.Price,
|
||||
Status = OrderDetailsStatusEnumType.I,
|
||||
};
|
||||
order.TotalAmount = detail.Amount;
|
||||
order.Amount = detail.Amount;
|
||||
await _dbContext.InsertAsync(order);
|
||||
await _dbContext.InsertAsync(detail);
|
||||
|
||||
//扣减份数
|
||||
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();
|
||||
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("更新版本冲突");
|
||||
}
|
||||
|
||||
@@ -1,83 +1,76 @@
|
||||
using Dlhis.Entity.Canteen.Enums;
|
||||
using Kurisu.Core.DataAccess.Entity;
|
||||
using Kurisu.Core.DataAccess.Entity;
|
||||
using Kurisu.SqlSugar;
|
||||
using Mapster;
|
||||
using SqlSugar;
|
||||
using SqlSugar.DbConvert;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Entities
|
||||
namespace Dlhis.Entity.Canteen.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 菜品表
|
||||
/// </summary>
|
||||
[SugarTable(TableName = "CanteenDishes", TableDescription = "菜品表")]
|
||||
public class CanteenDishesEntity : SugarBaseEntity, ITenantId
|
||||
{
|
||||
/// <summary>
|
||||
/// 菜品表
|
||||
/// 大类
|
||||
/// </summary>
|
||||
[SugarTable(TableName = "CanteenDishes", TableDescription = "菜品表")]
|
||||
public class CanteenDishesEntity : SugarBaseEntity, ITenantId
|
||||
{
|
||||
[SugarColumn(ColumnDescription = "父类")]
|
||||
public string PCategory { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 大类
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "大类")]
|
||||
public string Categories { get; set; }
|
||||
/// <summary>
|
||||
/// 小类
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "分类", IsNullable = false)]
|
||||
public string Category { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 小类
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "小类")]
|
||||
public string SubCategories { get; set; }
|
||||
/// <summary>
|
||||
/// 营业点
|
||||
/// </summary>
|
||||
public Guid BusinessPlaceCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品编码")]
|
||||
public Guid Code { get; set; }
|
||||
/// <summary>
|
||||
/// 菜品编码
|
||||
/// </summary>
|
||||
[AdaptIgnore(MemberSide.Destination)]
|
||||
[SugarColumn(ColumnDescription = "菜品编码", IsNullable = false)]
|
||||
public string CustomCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品名称
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品名称")]
|
||||
public string Name { get; set; }
|
||||
/// <summary>
|
||||
/// 菜品名称
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品名称", IsNullable = false)]
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 类型
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "类型", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))]
|
||||
public CanteenDishesEnumType Type { get; set; }
|
||||
///// <summary>
|
||||
///// 类型
|
||||
///// </summary>
|
||||
//[SugarColumn(ColumnDescription = "类型", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))]
|
||||
//public CanteenDishesEnumType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 描述
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "描述")]
|
||||
public string Description { get; set; }
|
||||
/// <summary>
|
||||
/// 描述
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "描述")]
|
||||
public string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单价
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单价")]
|
||||
public decimal Amount { get; set; }
|
||||
/// <summary>
|
||||
/// 单价
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单价")]
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单位
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单位")]
|
||||
public string Unit { get; set; }
|
||||
/// <summary>
|
||||
/// 图片
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "图片")]
|
||||
public string ImageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 图片
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "图片")]
|
||||
public string Image { get; set; }
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "bit", ColumnDescription = "是否启用")]
|
||||
public bool Enable { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "bit", ColumnDescription = "是否启用")]
|
||||
public bool Enable { get; set; }
|
||||
|
||||
public string TenantId { get; set; }
|
||||
}
|
||||
public string TenantId { get; set; }
|
||||
}
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
using Kurisu.SqlSugar;
|
||||
using SqlSugar;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Entities
|
||||
{
|
||||
/// <summary>
|
||||
/// 菜单菜品表
|
||||
/// </summary>
|
||||
[SugarTable(TableName = "CanteenMenuDishersRelationship", TableDescription = "菜单菜品表")]
|
||||
public class CanteenMenuDishersRelationshipEntity : SugarBaseEntity
|
||||
{
|
||||
/// <summary>
|
||||
/// 菜单code
|
||||
/// </summary>
|
||||
public Guid MenuCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品code
|
||||
/// </summary>
|
||||
public Guid DishersCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 限售份数
|
||||
/// </summary>
|
||||
public int RestrictedNum { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 版本
|
||||
/// </summary>
|
||||
public int Version { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,7 @@
|
||||
using Kurisu.Core.DataAccess.Entity;
|
||||
using Kurisu.SqlSugar;
|
||||
using SqlSugar;
|
||||
using SqlSugar.DbConvert;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Entities;
|
||||
|
||||
@@ -9,52 +10,63 @@ namespace Dlhis.Entity.Canteen.Entities;
|
||||
/// 菜单表
|
||||
/// </summary>
|
||||
[SugarTable(TableName = "CanteenMenu", TableDescription = "菜单表")]
|
||||
public class CanteenMenuEntity : SugarBaseEntity, ITenantId
|
||||
public class CanteenMenuEntity : SugarBaseEntity, ITenantId, IVersion
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 菜单编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜单编码")]
|
||||
public Guid Code { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单名称
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜单名称")]
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜单类型
|
||||
/// </summary>
|
||||
[SugarColumn(SqlParameterDbType = typeof(EnumToStringConvert))]
|
||||
public CanteenMenuEnumType Type { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 所属营业点
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "所属营业点")]
|
||||
public Guid PlaceCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 厂区
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "厂区")]
|
||||
public string Factory { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 营业日期
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "营业日期")]
|
||||
public DateOnly StartDate { get; set; }
|
||||
[SugarColumn(ColumnDataType = "date", ColumnDescription = "营业日期")]
|
||||
public DateTime Date { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 餐次段
|
||||
/// 餐次
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "varchar(150)", IsJson = true, ColumnDescription = "餐次段", DefaultValue = "[]")]
|
||||
public List<ShiftEnumType> ShiftTypes { get; set; }
|
||||
[SugarColumn(ColumnDataType = "varchar(50)", ColumnDescription = "餐次")]
|
||||
public ShiftEnumType ShiftType { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 菜品编码
|
||||
/// </summary>
|
||||
public string DishesCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 剩余数量
|
||||
/// </summary>
|
||||
public int Number { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否启用
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "bit", ColumnDescription = "是否启用")]
|
||||
public bool Enable { get; set; }
|
||||
|
||||
|
||||
public string TenantId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 并发控制
|
||||
/// </summary>
|
||||
public int Version { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -72,12 +72,6 @@ namespace Dlhis.Entity.Canteen.Entities
|
||||
[SugarColumn(ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert), ColumnDescription = "餐次")]
|
||||
public ShiftEnumType ShiftType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品")]
|
||||
public Guid DishesCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 手机号码
|
||||
/// </summary>
|
||||
@@ -88,19 +82,13 @@ namespace Dlhis.Entity.Canteen.Entities
|
||||
/// 用餐日期
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "用餐日期")]
|
||||
public DateOnly SysDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 下单时间
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "下单时间")]
|
||||
public DateTime CostDate { get; set; }
|
||||
public DateTime UseDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 支付方式
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "支付方式", ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert))]
|
||||
public CanteenPayEnumType PayType { get; set; }
|
||||
public BalanceRecordSourceEnumType PayType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单状态
|
||||
@@ -112,13 +100,14 @@ namespace Dlhis.Entity.Canteen.Entities
|
||||
/// 订单类型
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert), ColumnDescription = "订单类型")]
|
||||
public CanteenDishesEnumType OrderType { get; set; }
|
||||
public CanteenMenuEnumType OrderType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 总金额
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "总金额")]
|
||||
public decimal TotalAmount { get; set; }
|
||||
[SugarColumn(ColumnDescription = "金额")]
|
||||
public decimal Amount { get; set; }
|
||||
|
||||
|
||||
public string TenantId { get; set; }
|
||||
}
|
||||
|
||||
@@ -4,74 +4,50 @@ using Kurisu.SqlSugar;
|
||||
using SqlSugar;
|
||||
using SqlSugar.DbConvert;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Entities
|
||||
namespace Dlhis.Entity.Canteen.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 订餐明细表
|
||||
/// </summary>
|
||||
[SugarTable(TableName = "OrderDetails", TableDescription = "订餐明细表")]
|
||||
public class OrderDetailsEntity : SugarBaseEntity, ITenantId
|
||||
{
|
||||
/// <summary>
|
||||
/// 订餐明细表
|
||||
/// 订单号
|
||||
/// </summary>
|
||||
[SugarTable(TableName = "OrderDetails", TableDescription = "订餐明细表")]
|
||||
public class OrderDetailsEntity : SugarBaseEntity, ITenantId
|
||||
{
|
||||
/// <summary>
|
||||
/// 订单号
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "订单号")]
|
||||
public string ThirdNo { get; set; }
|
||||
[SugarColumn(ColumnDescription = "订单号")]
|
||||
public string OrderNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 营业日(用餐日期)
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "营业日")]
|
||||
public DateOnly SysDate { get; set; }
|
||||
/// <summary>
|
||||
/// 菜品编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品编码")]
|
||||
public string DishesCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 餐次
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert), ColumnDescription = "餐次")]
|
||||
public ShiftEnumType ShiftType { get; set; }
|
||||
/// <summary>
|
||||
/// 单价
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单价")]
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品编码
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品编码")]
|
||||
public Guid DishesCode { get; set; }
|
||||
/// <summary>
|
||||
/// 数量
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "数量")]
|
||||
public int Number { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 菜品名称
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "菜品名称")]
|
||||
public string DishesName { get; set; }
|
||||
/// <summary>
|
||||
/// 单位
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单位")]
|
||||
public string Unit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单价
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单价")]
|
||||
public decimal Price { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 单位
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "单位")]
|
||||
public string Unit { get; set; }
|
||||
/// <summary>
|
||||
/// 订单明细状态
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert), ColumnDescription = "订单明细状态")]
|
||||
public OrderDetailsStatusEnumType Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数量
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "数量")]
|
||||
public int Num { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 金额
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDescription = "金额")]
|
||||
public decimal Amount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 订单明细状态
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnDataType = "varchar(50)", SqlParameterDbType = typeof(EnumToStringConvert), ColumnDescription = "订单明细状态")]
|
||||
public OrderDetailsStatusEnumType OrderStatus { get; set; }
|
||||
|
||||
public string TenantId { get; set; }
|
||||
}
|
||||
public string TenantId { get; set; }
|
||||
}
|
||||
|
||||
@@ -1,35 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// 菜品类型
|
||||
/// </summary>
|
||||
[Description("菜品类型")]
|
||||
public enum CanteenDishesEnumType
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 订餐
|
||||
/// </summary>
|
||||
[Description("订餐")]
|
||||
Order = 1,
|
||||
|
||||
/// <summary>
|
||||
/// 扫码点餐
|
||||
/// </summary>
|
||||
[Description("扫码点餐")]
|
||||
QrCode=2,
|
||||
|
||||
/// <summary>
|
||||
/// 通用
|
||||
/// </summary>
|
||||
[Description("通用")]
|
||||
General = 3,
|
||||
}
|
||||
}
|
||||
28
Src/Dlhis.Entity/Canteen/Enums/CanteenMenuEnumType.cs
Normal file
28
Src/Dlhis.Entity/Canteen/Enums/CanteenMenuEnumType.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Enums;
|
||||
|
||||
/// <summary>
|
||||
/// 菜品类型 CanteenMenuEnumType
|
||||
/// </summary>
|
||||
[Description("菜品类型")]
|
||||
public enum CanteenMenuEnumType
|
||||
{
|
||||
/// <summary>
|
||||
/// 订餐
|
||||
/// </summary>
|
||||
[Description("订餐")]
|
||||
Order = 1,
|
||||
|
||||
/// <summary>
|
||||
/// 扫码点餐
|
||||
/// </summary>
|
||||
[Description("扫码点餐")]
|
||||
QrCode=2,
|
||||
|
||||
/// <summary>
|
||||
/// 通用
|
||||
/// </summary>
|
||||
[Description("通用")]
|
||||
General = 3,
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Dlhis.Entity.Canteen.Enums
|
||||
{
|
||||
/// <summary>
|
||||
/// 支付方式
|
||||
/// </summary>
|
||||
[Description("支付方式")]
|
||||
public enum CanteenPayEnumType
|
||||
{
|
||||
/// <summary>
|
||||
/// 餐补
|
||||
/// </summary>
|
||||
[Description("餐补")]
|
||||
Repair = 1,
|
||||
|
||||
/// <summary>
|
||||
/// 现场
|
||||
/// </summary>
|
||||
[Description("现场")]
|
||||
Scene = 2,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user