Commit dad41cdb by zhoujinhui

新增查询库存数量和金额接口

parent 1e119e43
using AutoTurnOver.DB.Base; using AutoTurnOver.DB.Base;
using AutoTurnOver.Models; using AutoTurnOver.Models;
using AutoTurnOver.Models.ApiDto; using AutoTurnOver.Models.ApiDto;
using AutoTurnOver.Models.ApiDto.Stock;
using AutoTurnOver.Models.Base; using AutoTurnOver.Models.Base;
using AutoTurnOver.Utility; using AutoTurnOver.Utility;
using Dapper; using Dapper;
...@@ -129,6 +130,31 @@ left join dc_auto_sales as t2 on t1.bailun_sku = t2.bailun_sku and t1.warehouse_ ...@@ -129,6 +130,31 @@ left join dc_auto_sales as t2 on t1.bailun_sku = t2.bailun_sku and t1.warehouse_
return _connection.Page<api_sku_tort_dto>(sql, search, parameters); return _connection.Page<api_sku_tort_dto>(sql, search, parameters);
} }
/// <summary>
/// 查询库存金额
/// </summary>
/// <param name="search"></param>
/// <returns></returns>
public static async Task<List<api_base_stock_amount_info_output_dto>> GetBaseStockAmountInfo(api_base_stock_amount_info_input_dto search)
{
StringBuilder sqlText = new StringBuilder();
sqlText.Append(@"
SELECT t1.bailun_sku,t1.warehouse_code,t3.warehouse_name,t1.usable_stock + t1.occupy_stock as 'sum_usable_stock',
((t1.usable_stock + t1.occupy_stock) * t2.unit_price) as 'sum_usable_stock_amount'
FROM dc_base_stock as t1
left join dc_base_sku as t2 on t1.bailun_sku = t2.bailun_sku
LEFT JOIN dc_base_warehouse AS t3 ON t3.warehouse_code = t1.warehouse_code
WHERE t1.bailun_sku IN @bailun_skus
");
DynamicParameters parameters = new DynamicParameters();
parameters.Add("bailun_skus", search.bailun_skus);
if (!string.IsNullOrWhiteSpace(search.warehouse_code))
{
sqlText.Append(" AND t1.warehouse_code = @warehouse_code ");
parameters.Add("warehouse_code", search.warehouse_code);
}
var data = await _connection.QueryAsync<api_base_stock_amount_info_output_dto>(sqlText.ToString(), parameters);
return data.ToList();
}
} }
} }
using System;
using System.Collections.Generic;
using System.Text;
namespace AutoTurnOver.Models.ApiDto.Stock
{
/// <summary>
/// 查询sku库存金额输入参数
/// </summary>
public class api_base_stock_amount_info_input_dto
{
/// <summary>
/// 百伦sku
/// </summary>
public List<string> bailun_skus { get; set; }
/// <summary>
/// 仓库编码
/// </summary>
public string warehouse_code { get; set; }
}
}
namespace AutoTurnOver.Models.ApiDto.Stock
{
/// <summary>
/// 查询库存金额输出参数
/// </summary>
public class api_base_stock_amount_info_output_dto
{
/// <summary>
/// 百伦sku
/// </summary>
public string bailun_sku { get; set; }
/// <summary>
/// 仓库编码
/// </summary>
public string warehouse_code { get; set; }
/// <summary>
/// 仓库名称
/// </summary>
public string warehouse_name { get; set; }
/// <summary>
/// 可用库存数量
/// </summary>
public int sum_usable_stock { get; set; }
/// <summary>
/// 可用库存总金额
/// </summary>
public decimal sum_usable_stock_amount { get; set; }
}
}
...@@ -11,6 +11,7 @@ using AutoTurnOver.DB; ...@@ -11,6 +11,7 @@ using AutoTurnOver.DB;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using AutoTurnOver.Models.Base; using AutoTurnOver.Models.Base;
using System.Threading.Tasks; using System.Threading.Tasks;
using AutoTurnOver.Models.ApiDto.Stock;
namespace AutoTurnOver.Services namespace AutoTurnOver.Services
{ {
...@@ -815,5 +816,15 @@ namespace AutoTurnOver.Services ...@@ -815,5 +816,15 @@ namespace AutoTurnOver.Services
{ {
return api_dao.GetSkuTort(search); return api_dao.GetSkuTort(search);
} }
/// <summary>
/// 查询库存金额
/// </summary>
/// <param name="search"></param>
/// <returns></returns>
public static async Task<List<api_base_stock_amount_info_output_dto>> GetBaseStockAmountInfo(api_base_stock_amount_info_input_dto search)
{
return await api_dao.GetBaseStockAmountInfo(search);
}
} }
} }
...@@ -5,6 +5,7 @@ using System.Threading.Tasks; ...@@ -5,6 +5,7 @@ using System.Threading.Tasks;
using AutoTurnOver.Common; using AutoTurnOver.Common;
using AutoTurnOver.Models; using AutoTurnOver.Models;
using AutoTurnOver.Models.ApiDto; using AutoTurnOver.Models.ApiDto;
using AutoTurnOver.Models.ApiDto.Stock;
using AutoTurnOver.Services; using AutoTurnOver.Services;
using AutoTurnOver.Utility; using AutoTurnOver.Utility;
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
...@@ -289,5 +290,15 @@ namespace AutoTurnOver.Controllers ...@@ -289,5 +290,15 @@ namespace AutoTurnOver.Controllers
} }
/// <summary>
/// 根据一个或多个sku查询库存金额
/// </summary>
/// <param name="search"></param>
/// <returns></returns>
[HttpPost("GetBaseStockAmountInfo")]
public async Task<ActionResult<RequestResultDto>> GetBaseStockAmountInfo([FromBody] api_base_stock_amount_info_input_dto search)
{
return new RequestResultDto { success = true, data = await ApiServices.GetBaseStockAmountInfo(search) };
}
} }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment