YunTongJackYunTask/Reportapi/MyCode.Project.Repositories/BusiOrderGoodsDocInRepository.cs
2025-11-20 18:14:49 +08:00

152 lines
5.5 KiB
C#

using MyCode.Project.Repositories.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MyCode.Project.Domain.Message;
using MyCode.Project.Domain.Model;
using MyCode.Project.Domain.Repositories;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Infrastructure.Search;
using MyCode.Project.Domain.Message.Response.JackYun;
namespace MyCode.Project.Repositories
{
public class BusiOrderGoodsDocInRepository: Repository<BusiOrderGoodsDocIn>, IBusiOrderGoodsDocInRepository
{
public BusiOrderGoodsDocInRepository(MyCodeSqlSugarClient context) : base(context)
{ }
// SELECT
// -- 分组字段
// CONVERT(date, InOutDate2) AS 出入库日期,
// WarehouseCode AS 仓库编码,
// WarehouseName AS 仓库名称,
// GoodsNo AS 商品编码,
// GoodsName AS 商品名称,
// SkuName AS 规格,
// UnitName AS 单位,
// -- 合计数据
// SUM(Quantity) AS 总数量,
// SUM(BaceCurrencyCostAmount) AS 总入库金额,
// SUM(BaceCurrencyNoTaxAmount) AS 总本币无税金额,
// SUM(BaceCurrencyWithTaxAmount) AS 总本币含税金额,
// SUM(BaceCurrencyTaxAmount) AS 总本币税额,
// SUM(TransNoTaxAmount) AS 总原币无税金额,
// SUM(TransHasTaxAmount) AS 总原币含税金额,
// SUM(TransTaxAmount) AS 总原币税额,
// -- 计数统计
// COUNT(DISTINCT GoodsdocNo) AS 入库单数,
// COUNT(*) AS 明细行数
//FROM[dbo].[BusiOrderGoodsDocIn]
// WHERE Status IN(0) -- 根据业务需求调整状态筛选
// GROUP BY
// CONVERT(date, InOutDate2),
// WarehouseCode,
// WarehouseName,
// GoodsNo,
// GoodsName,
// SkuName,
// UnitName
//ORDER BY
// CONVERT(date, InOutDate2) DESC,
// WarehouseCode,
// GoodsNo;
#region GetPushGoodsDocInOrder()
/// <summary>
/// 获取合并后的吉客云采购入库单订单
/// </summary>
/// <returns></returns>
public List<BusiOrderGoodsDocInSummary> GetPushGoodsDocInOrder()
{
string sql = $@"SELECT
-- 分组字段
CONVERT(date, InOutDate2) AS InOutDate2,
WarehouseCode AS WarehouseCode,
WarehouseName AS WarehouseName,
[GoodsdocNo] AS [GoodsdocNo] ,[ApplyCompanyName],[VendCustomerName],
-- 合计数据
SUM(Quantity) AS Quantity ,-- 总数量,
SUM(BaceCurrencyCostAmount) AS BaceCurrencyCostAmount,--总入库金额,
SUM(BaceCurrencyNoTaxAmount) AS BaceCurrencyNoTaxAmount,--总本币无税金额,
SUM(BaceCurrencyWithTaxAmount) AS BaceCurrencyWithTaxAmount,--总本币含税金额,
SUM(BaceCurrencyTaxAmount) AS BaceCurrencyTaxAmount,-- 总本币税额,
SUM(TransNoTaxAmount) AS TransNoTaxAmount,--总原币无税金额,
SUM(TransHasTaxAmount) AS TransHasTaxAmount,--总原币含税金额,
SUM(TransTaxAmount) AS TransTaxAmount,--总原币税额,
-- 计数统计
COUNT(DISTINCT GoodsdocNo) AS 入库单数,
COUNT(*) AS 明细行数
FROM [dbo].[BusiOrderGoodsDocIn]
WHERE Status IN (0) -- 根据业务需求调整状态筛选
GROUP BY
CONVERT(DATE, InOutDate2),
WarehouseCode,
WarehouseName,
[GoodsdocNo] ,[ApplyCompanyName],[VendCustomerName]
ORDER BY
CONVERT(date, InOutDate2) DESC,
WarehouseCode,
[GoodsdocNo]; ";
var list = this.SelectList<BusiOrderGoodsDocInSummary>(sql);
return list;
}
#endregion
// #region GetPushGoodsDocInOrder(获取合并后的吉客云采购入库单订单)
// /// <summary>
// /// 获取合并后的吉客云采购入库单订单
// /// </summary>
// /// <returns></returns>
// public List<BusiOrderGoodsDocInSummary> GetPushGoodsDocInOrder()
// {
// string sql = $@"SELECT
// -- 分组字段
// CONVERT(date, InOutDate2) AS InOutDate2,
// WarehouseCode AS WarehouseCode,
// WarehouseName AS WarehouseName,
// VendCode ,[ApplyCompanyName],[VendCustomerName],
// -- 合计数据
// SUM(Quantity) AS Quantity ,-- 总数量,
// SUM(BaceCurrencyCostAmount) AS BaceCurrencyCostAmount,--总入库金额,
// SUM(BaceCurrencyNoTaxAmount) AS BaceCurrencyNoTaxAmount,--总本币无税金额,
// SUM(BaceCurrencyWithTaxAmount) AS BaceCurrencyWithTaxAmount,--总本币含税金额,
// SUM(BaceCurrencyTaxAmount) AS BaceCurrencyTaxAmount,-- 总本币税额,
// SUM(TransNoTaxAmount) AS TransNoTaxAmount,--总原币无税金额,
// SUM(TransHasTaxAmount) AS TransHasTaxAmount,--总原币含税金额,
// SUM(TransTaxAmount) AS TransTaxAmount,--总原币税额,
// -- 计数统计
// COUNT(DISTINCT GoodsdocNo) AS 入库单数,
// COUNT(*) AS 明细行数
//FROM [dbo].[BusiOrderGoodsDocIn]
//WHERE Status IN (0) -- 根据业务需求调整状态筛选
//GROUP BY
// CONVERT(DATE, InOutDate2),
// WarehouseCode,
// WarehouseName,
// VendCode ,[ApplyCompanyName],[VendCustomerName]
//ORDER BY
// CONVERT(date, InOutDate2) DESC,
// WarehouseCode,
// VendCode ; ";
// var list = this.SelectList<BusiOrderGoodsDocInSummary>(sql);
// return list;
// }
// #endregion
}
}