YunTongJackYunTask/Reportapi/MyCode.Project.Repositories/BusiOrderGoodsDocInRepository.cs
2025-11-06 18:12:17 +08:00

130 lines
4.3 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,
GoodsNo AS GoodsNo,
GoodsName AS GoodsName,
SkuName AS SkuName,
UnitName AS UnitName,
SkuBarcode AS SkuBarcode,
[CurrencyCode]
,[CurrencyCodeName]
,[CurrencyRate]
,[CreateUserName]
,[CompanyName],VendCustomerName,VendCode ,[ApplyCompanyName],
[TaxRate]
,[TransNoTaxPrice]
,[TransHasTaxPrice],
-- 合计数据
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,
GoodsNo,
GoodsName,
SkuName,
UnitName,SkuBarcode ,[CurrencyCode]
,[CurrencyCodeName]
,[CurrencyRate]
,[CreateUserName]
,[CompanyName],CompanyName,VendCustomerName,VendCode ,[ApplyCompanyName], [TaxRate]
,[TransNoTaxPrice]
,[TransHasTaxPrice]
ORDER BY
CONVERT(date, InOutDate2) DESC,
WarehouseCode,
GoodsNo;";
var list = this.SelectList<BusiOrderGoodsDocInSummary>(sql);
return list;
}
#endregion
}
}