饭餐查询接口增加饭票数量统计

This commit is contained in:
Liangwq 2026-08-20 15:25:23 +08:00
parent 3f5dc410e3
commit aa2cf39f17
7 changed files with 39 additions and 18 deletions

View File

@ -12,7 +12,8 @@ public class DapperHelper : IDapperHelper
DEV, DEV,
PRO, PRO,
DataFill, DataFill,
Canteen Canteen,
GYAPP
} }
/// <summary> /// <summary>
@ -88,6 +89,7 @@ public class DapperHelper : IDapperHelper
SysName.PRO => new SqlConnection(AppSettings.GetConnectionString("PRO")), SysName.PRO => new SqlConnection(AppSettings.GetConnectionString("PRO")),
SysName.DataFill => new SqlConnection(AppSettings.GetConnectionString("DataFill")), SysName.DataFill => new SqlConnection(AppSettings.GetConnectionString("DataFill")),
SysName.Canteen => new SqlConnection(AppSettings.GetConnectionString("Canteen")), SysName.Canteen => new SqlConnection(AppSettings.GetConnectionString("Canteen")),
SysName.GYAPP => new SqlConnection(AppSettings.GetConnectionString("GYAPP")),
_ => new SqlConnection(AppSettings.GetConnectionString("Default")) _ => new SqlConnection(AppSettings.GetConnectionString("Default"))
}; };

View File

@ -13,13 +13,11 @@ namespace ExternalAPI_NET8.Controllers;
public class CanteenController(ICanteenServices canteenServices) : ApiControllerBase public class CanteenController(ICanteenServices canteenServices) : ApiControllerBase
{ {
private readonly ICanteenServices _canteenServices = canteenServices;
[HttpGet] [HttpGet]
[AllowAnonymous] [AllowAnonymous]
public async Task<IActionResult> GetMealsAmount(string date) public async Task<IActionResult> GetMealsAmount(string date)
{ {
var a=await _canteenServices.GetMealsAmountAsync(date); var a=await canteenServices.GetMealsAmountAsync(date);
return RenderOk(a); return RenderOk(a);
} }
} }

View File

@ -50,7 +50,7 @@
</member> </member>
<member name="M:ExternalAPI_NET8.Controllers.OAPushController.ReveivePMInvoiceFromOA(Web.Core.Model.Entity.OAPush_PMInvoice)"> <member name="M:ExternalAPI_NET8.Controllers.OAPushController.ReveivePMInvoiceFromOA(Web.Core.Model.Entity.OAPush_PMInvoice)">
<summary> <summary>
接收采购付款审批流程数据1 接收采购付款审批流程数据
</summary> </summary>
<returns></returns> <returns></returns>
</member> </member>

View File

@ -1,9 +1,12 @@
namespace Web.Core.Model.Entity; namespace Web.Core.Model.Entity;
public class Ordermeals public class Ordermeal
{ {
public int lunch { get; set; } public int lunch { get; set; }
public int dinner { get; set; } public int dinner { get; set; }
public int total => lunch + dinner; public int total => lunch + dinner;
} }

View File

@ -10,6 +10,11 @@
<PropertyGroup Condition=" '$(Configuration)' == 'Release' "> <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DebugType>none</DebugType> <DebugType>none</DebugType>
<NoWarn>1701;1702;1591</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<NoWarn>1701;1702;1591</NoWarn>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>

View File

@ -4,5 +4,5 @@ namespace Web.Core.IServices.Canteen;
public interface ICanteenServices public interface ICanteenServices
{ {
public Task<Ordermeals> GetMealsAmountAsync(string date); public Task<Ordermeal> GetMealsAmountAsync(string date);
} }

View File

@ -6,16 +6,29 @@ namespace Web.Core.Services.Canteen;
public class CanteenServices(IDapperHelper dapperHelper) : ICanteenServices public class CanteenServices(IDapperHelper dapperHelper) : ICanteenServices
{ {
private readonly IDapperHelper _db = dapperHelper; public async Task<Ordermeal> GetMealsAmountAsync(string date)
public async Task<Ordermeals> GetMealsAmountAsync(string date)
{ {
string sql = """ var sql1 = """
WITH temp AS (SELECT Card_id,Dins1,Dins2,Dins1Cancel,Dins2Cancel FROM MealQuery(@date,@date)) WITH temp AS (SELECT Card_id,Dins1,Dins2,Dins1Cancel,Dins2Cancel FROM MealQuery(@date,@date))
SELECT ISNULL(SUM(CASE WHEN ISNULL(a.Dins1,0)=1 AND ISNULL(a.Dins1Cancel,0)=0 THEN 1 ELSE 0 END),0) AS lunch , SELECT ISNULL(SUM(CASE WHEN ISNULL(a.Dins1,0)=1 AND ISNULL(a.Dins1Cancel,0)=0 THEN 1 ELSE 0 END),0) AS lunch ,
ISNULL(SUM(CASE WHEN ISNULL(a.Dins2,0)=1 AND ISNULL(a.Dins2Cancel,0)=0 THEN 1 ELSE 0 END),0) AS dinner ISNULL(SUM(CASE WHEN ISNULL(a.Dins2,0)=1 AND ISNULL(a.Dins2Cancel,0)=0 THEN 1 ELSE 0 END),0) AS dinner
FROM temp a FROM temp a
"""; """;
return await _db.QueryFirstOrDefaultAsync<Ordermeals>(DapperHelper.SysName.Canteen, sql, new { date }); var sql2 =
"SELECT LunchNumber as lunch,DinnerNumber as dinner FROM dbo.MealCommitNumbers WHERE RecodeTime=@date";
var ordermeal1 =
await dapperHelper.QueryFirstOrDefaultAsync<Ordermeal>(DapperHelper.SysName.Canteen, sql1, new { date });
var ordermeal2 =
await dapperHelper.QueryFirstOrDefaultAsync<Ordermeal>(DapperHelper.SysName.GYAPP, sql2,
new { date });
return new Ordermeal
{
lunch = ordermeal1.lunch + (ordermeal2?.lunch ?? 0),
dinner = ordermeal1.dinner + (ordermeal2?.dinner ?? 0)
};
} }
} }