Commit 43986469 by guanzhenshan

增加根据sku获取时间段内的销量数据的接口

parent 4391e0d3
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models.Ebay
{
/// <summary>
/// Ebay Sku 时间段内的销售数据
/// </summary>
public class mEbaySkuSales
{
public string platform_type { get; set; }
public string website { get; set; }
public string bailun_sku { get; set; }
/// <summary>
/// 销售数量
/// </summary>
public int bailun_sku_quantity_ordered { get; set; }
/// <summary>
/// 销售额
/// </summary>
public decimal amount_sales { get; set; }
}
}
......@@ -3317,6 +3317,48 @@ namespace Bailun.DC.Services
}
/// <summary>
/// 获取Ebay Sku的销售数据
/// </summary>
/// <param name="page">当前页</param>
/// <param name="pagesize">每页记录数</param>
/// <param name="start">开始时间</param>
/// <param name="end">结束时间</param>
/// <param name="skus">sku数组</param>
/// <param name="platform">平台类型</param>
/// <returns></returns>
public List<Models.Ebay.mEbaySkuSales> ListEbaySkuSalesCount(int page, int pagesize, DateTime start, DateTime end, string[] skus, string platform)
{
var sql = $@"select t1.platform_type,t1.website,t1.bailun_sku,sum(t1.bailun_sku_quantity_ordered) as bailun_sku_quantity_ordered,sum(t1.bailun_sku_quantity_ordered*t1.amount_sales*t1.seller_order_exchange_rate) as amount_sales from dc_base_oms_sku t1
where t1.create_time>='{start.ToString("yyyy-MM-dd HH:mm:ss")}' and t1.create_time<'{end.ToString("yyyy-MM-dd HH:mm:ss")}' and bailun_order_status!='Canceled'";
if (!string.IsNullOrEmpty(platform))
{
sql += $" and platform_type = '{platform}'";
}
if (skus.Length > 0)
{
sql += $" and bailun_sku in ('{string.Join("','",skus)}')";
}
sql += " group by t1.bailun_sku,t1.website,t1.platform_type";
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
var obj = cn.Query<Models.Ebay.mEbaySkuSales>(sql+" limit "+(page-1)*pagesize+","+pagesize, null, null, true, 2 * 60).ToList();
return obj;
}
}
#endregion
#region Platform Common
......
......@@ -454,5 +454,46 @@ namespace Bailun.DC.Web.Controllers
}
/// <summary>
/// 获取Ebay Sku的销售数据
/// </summary>
/// <param name="page">页码</param>
/// <param name="start">开始时间</param>
/// <param name="end">结束时间</param>
/// <param name="skus">sku数组</param>
/// <param name="platform">平台</param>
/// <returns></returns>
[HttpPost]
public JsonResult EbaySkuSales(int page,DateTime start, DateTime end, string skus, string platform = "Ebay")
{
int pagesize = 1000;
try
{
var obj = new Services.OrdersServices().ListEbaySkuSalesCount(page, pagesize, start, end, skus.Split(','), platform);
return Json(new
{
success = true,
msg = "",
data = obj.Select(a=>new {
a.platform_type,
a.website,
a.bailun_sku,
count = a.bailun_sku_quantity_ordered,
amount = a.amount_sales
})
});
}
catch (Exception ex)
{
return Json(new {
success = false,
msg = "出现异常,异常信息:"+ex.Message
});
}
}
}
}
\ 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