Commit ed9fcdf2 by guanzhenshan

增加获取sku销量和利润的接口

parent 561f1614
......@@ -17,12 +17,19 @@ namespace Bailun.DC.Services
/// <param name="end"></param>
/// <param name="platform"></param>
/// <returns></returns>
public List<dc_base_oms_sku> ListSkuSaleCount(List<string> skus, DateTime start, DateTime? end, string platform)
public List<dc_base_oms_sku> ListSkuSaleCount(List<string> skus, DateTime start, DateTime? end, string platform,bool haswebsite=false)
{
var sql = $@"select t1.platform_type,t1.bailun_sku,sum(t1.bailun_sku_quantity_ordered) as bailun_sku_quantity_ordered,sum(t1.amount_sales*t1.seller_order_exchange_rate*t1.bailun_sku_quantity_ordered) as amount_sales,sum(t1.profit_total*t1.bailun_sku_quantity_ordered) as profit_total from dc_base_oms_sku t1
where t1.has_delete=0 and t1.company_id=1 and t1.has_scalp=0 and t1.has_innersale=0 and t1.bailun_interception_status in ('None','Failed') and t1.bailun_order_status!='Canceled' and ((t1.platform_type!='FBA' and t1.bailun_order_status!='CantHandle') or t1.platform_type='FBA') and t1.paid_time>='{start.ToString("yyyy-MM-dd")}'
";
if (haswebsite)
{
sql = $@"select t1.platform_type,t1.website,t1.bailun_sku,sum(t1.bailun_sku_quantity_ordered) as bailun_sku_quantity_ordered,sum(t1.amount_sales*t1.seller_order_exchange_rate*t1.bailun_sku_quantity_ordered) as amount_sales,sum(t1.profit_total*t1.bailun_sku_quantity_ordered) as profit_total from dc_base_oms_sku t1
where t1.has_delete=0 and t1.company_id=1 and t1.has_scalp=0 and t1.has_innersale=0 and t1.bailun_interception_status in ('None','Failed') and t1.bailun_order_status!='Canceled' and ((t1.platform_type!='FBA' and t1.bailun_order_status!='CantHandle') or t1.platform_type='FBA') and t1.paid_time>='{start.ToString("yyyy-MM-dd")}'
";
}
sql += $" and t1.bailun_sku in ('{string.Join("','",skus)}')";
if (end.HasValue)
......@@ -37,6 +44,11 @@ namespace Bailun.DC.Services
sql += " group by t1.platform_type,t1.bailun_sku";
if (haswebsite)
{
sql += ",t1.website";
}
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString_read))
{
if(cn.State== System.Data.ConnectionState.Closed)
......
......@@ -425,6 +425,7 @@ namespace Bailun.DC.Web.Areas.DataWareHouse.Controllers
var list = obj.Select(a => new
{
company = "香港百伦",
a.platform,
a.website,
a.orderno,
......
......@@ -113,8 +113,8 @@
field: 'datatime', title: '账单时间', width: '160'
},
{ field: 'orderno', title: '单号', width: '160'},
{ field: 'feetype', title: '费用类型', width: '120'},
{ field: 'financecategory', title: '会计科目分类', width: '130' },
{ field: 'datacenter_col', title: '数据中心费用类型', width: '160'},
/*{ field: 'financecategory', title: '会计科目分类', width: '130' },*/
{ field: 'subjectcode', title: '会计科目编码', width: '130' },
{ field: 'projectcode', title: '项目编码', width: '120' },
{
......
......@@ -1074,6 +1074,49 @@ namespace Bailun.DC.Web.Controllers
}
/// <summary>
/// 获取sku的销售数量、销售额、利润
/// </summary>
/// <param name="skus"></param>
/// <param name="start"></param>
/// <param name="end"></param>
/// <param name="platform"></param>
/// <returns></returns>
[HttpPost]
public JsonResult GetSkuPlatformSaleCount([FromBody] Models.Api.requestGetSkuSaleCount m)
{
try
{
var objSkuOrder = new Services.SkuOrderServices().ListSkuSaleCount(m.skus, m.start, m.end, m.platform,true);
//var objSkuStock = new Services.InventoryServices().ListStock(m.skus);
var obj = objSkuOrder.Select(a => new
{
a.platform_type,
a.website,
a.bailun_sku,
salecount = a.bailun_sku_quantity_ordered,
saleamount = a.amount_sales,
profit = a.profit_total,
});
return Json(new
{
success = true,
msg = "",
data = obj
});
}
catch (Exception ex)
{
return Json(new
{
success = false,
msg = ex.Message,
});
}
}
/// <summary>
/// 获取同仓库的sku库龄数据
/// </summary>
/// <param name="sku"></param>
......
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