fix 券发放查询增加厂区

This commit is contained in:
2025-12-17 11:06:18 +08:00
parent 4bca8859ef
commit 54ed9e5933
5 changed files with 17 additions and 8 deletions

View File

@@ -173,6 +173,7 @@ public class BookingOrderService : IBookingOrderService
.Where(p => p.OrderNo == x.No) .Where(p => p.OrderNo == x.No)
.Where(p => p.BookingDate >= request.BookingPeriod.Start) .Where(p => p.BookingDate >= request.BookingPeriod.Start)
.Where(p => p.BookingDate <= request.BookingPeriod.End) .Where(p => p.BookingDate <= request.BookingPeriod.End)
.Where(p => p.IsDeleted == false)
.Any() .Any()
) )
.WhereIF(request.ShiftType.HasValue, x => x.ShiftType == request.ShiftType) .WhereIF(request.ShiftType.HasValue, x => x.ShiftType == request.ShiftType)
@@ -203,9 +204,9 @@ public class BookingOrderService : IBookingOrderService
x.BookingDate = details.First(item => item.OrderNo == x.No).BookingDate; x.BookingDate = details.First(item => item.OrderNo == x.No).BookingDate;
x.TotalNumber = details.Where(item => item.OrderNo == x.No).Sum(item => item.Number); x.TotalNumber = details.Where(item => item.OrderNo == x.No).Sum(item => item.Number);
x.DishesInfos = details.Where(item => item.OrderNo == x.No).Select(item => new x.DishesInfos = details.Where(item => item.OrderNo == x.No).Select(item => new
{ {
item.Name item.Name
}) })
.ToList(); .ToList();
}); });

View File

@@ -30,7 +30,10 @@ public class WalletService : IWalletService
{ {
Code = x.Code, Code = x.Code,
Name = x.Name + "钱包", Name = x.Name + "钱包",
Factories = SqlFunc.Subqueryable<WalletEntity>().Where(p => p.Code == x.Code).ToList(p => p.Factory) Factories = SqlFunc.Subqueryable<WalletEntity>()
.Where(p => p.Code == x.Code)
.Where(p => p.IsDeleted == false)
.ToList(p => p.Factory)
}) })
.ToListAsync(); .ToListAsync();
} }

View File

@@ -1,6 +1,4 @@
using Dlhis.Basic.Vouchers.Request; using Dlhis.Basic.Vouchers.Request;
using Dlhis.Canteen.Order.Request;
using Dlhis.Canteen.Order.Response;
using Dlhis.Canteen.Tickets.Request; using Dlhis.Canteen.Tickets.Request;
using Dlhis.Canteen.Tickets.Services; using Dlhis.Canteen.Tickets.Services;
using Dlhis.Canteen.Voucher.Requests; using Dlhis.Canteen.Voucher.Requests;
@@ -39,6 +37,7 @@ public class VouchersController : ControllerBase
/// <param name="request"></param> /// <param name="request"></param>
/// <returns></returns> /// <returns></returns>
[HttpGet("page")] [HttpGet("page")]
[IgnoreTenant]
public async Task<Pagination<VoucherPageResponse>> GetPageAsync([FromQuery] VoucherPageRequest request) public async Task<Pagination<VoucherPageResponse>> GetPageAsync([FromQuery] VoucherPageRequest request)
{ {
return await _namedResolver.GetService<IVoucherService>(request.Type.ToString() + "VoucherService").GetPageAsync(request); return await _namedResolver.GetService<IVoucherService>(request.Type.ToString() + "VoucherService").GetPageAsync(request);

View File

@@ -32,4 +32,9 @@ public class VoucherPageRequest : PageDto
/// 二级部门 /// 二级部门
/// </summary> /// </summary>
public string DepartmentNoSecond { get; set; } public string DepartmentNoSecond { get; set; }
/// <summary>
/// 筛选厂区
/// </summary>
public List<string> Factories { get; set; }
} }

View File

@@ -26,12 +26,13 @@ public abstract class BaseVoucherService : IVoucherService
public async Task<Pagination<VoucherPageResponse>> GetPageAsync(VoucherPageRequest request) public async Task<Pagination<VoucherPageResponse>> GetPageAsync(VoucherPageRequest request)
{ {
var tenantId = _currentUser.GetStringTenantId(); //var tenantId = _currentUser.GetStringTenantId();
var pagination = await DbContext.Queryable<VoucherEntity>() var pagination = await DbContext.Queryable<VoucherEntity>()
.LeftJoin<VoucherUserInfoEntity>((x, u) => x.No == u.VoucherNo) .LeftJoin<VoucherUserInfoEntity>((x, u) => x.No == u.VoucherNo)
.LeftJoin<GainfoEntity>((x, u, ga) => u.UserCode == ga.Code) .LeftJoin<GainfoEntity>((x, u, ga) => u.UserCode == ga.Code)
.Where((x, u) => x.Type == request.Type && u.Factory == tenantId) .Where((x, u) => x.Type == request.Type)
.WhereIF(request.Factories.IsPresent(), (x, u) => request.Factories.Contains(u.Factory))
.WhereIF(request.UserCode.IsPresent(), (x, u, ga) => u.UserCode == request.UserCode) .WhereIF(request.UserCode.IsPresent(), (x, u, ga) => u.UserCode == request.UserCode)
.WhereIF(request.SearchDateTimePeriod.HasValue(), .WhereIF(request.SearchDateTimePeriod.HasValue(),
(x, u, ga) => x.CreateTime >= request.SearchDateTimePeriod.Start && (x, u, ga) => x.CreateTime >= request.SearchDateTimePeriod.Start &&