Commit 82b46e65 by 泽锋 李

新增计算fba仓历史销量的服务

parent 7498a544
...@@ -555,7 +555,7 @@ left join dc_base_warehouse as dbw on t1.warehouse_code = dbw.warehouse_code ...@@ -555,7 +555,7 @@ left join dc_base_warehouse as dbw on t1.warehouse_code = dbw.warehouse_code
total = 0; total = 0;
} }
else else
{ {
if (search_data.is_warehouse_sum) if (search_data.is_warehouse_sum)
{ {
countSql += " group by t1.warehouse_code "; countSql += " group by t1.warehouse_code ";
...@@ -569,12 +569,13 @@ left join dc_base_warehouse as dbw on t1.warehouse_code = dbw.warehouse_code ...@@ -569,12 +569,13 @@ left join dc_base_warehouse as dbw on t1.warehouse_code = dbw.warehouse_code
{ {
total = 0; total = 0;
} }
else{ else
{
total = _connection.QueryFirst<int>(countSql, parameters, commandTimeout: 0); total = _connection.QueryFirst<int>(countSql, parameters, commandTimeout: 0);
} }
} }
if (!string.IsNullOrEmpty(search_data.sort) && !string.IsNullOrEmpty(search_data.order)) if (!string.IsNullOrEmpty(search_data.sort) && !string.IsNullOrEmpty(search_data.order))
...@@ -835,7 +836,7 @@ left join dc_base_warehouse as t4 on t4.warehouse_code = t4.warehouse_code ...@@ -835,7 +836,7 @@ left join dc_base_warehouse as t4 on t4.warehouse_code = t4.warehouse_code
total = 0; total = 0;
} }
else else
{ {
if (search_data.is_warehouse_sum) if (search_data.is_warehouse_sum)
{ {
countSql += " group by t1.warehouse_code "; countSql += " group by t1.warehouse_code ";
...@@ -849,12 +850,13 @@ left join dc_base_warehouse as t4 on t4.warehouse_code = t4.warehouse_code ...@@ -849,12 +850,13 @@ left join dc_base_warehouse as t4 on t4.warehouse_code = t4.warehouse_code
{ {
total = 0; total = 0;
} }
else{ else
{
total = _connection.QueryFirst<int>(countSql, parameters, commandTimeout: 0); total = _connection.QueryFirst<int>(countSql, parameters, commandTimeout: 0);
} }
} }
if (!string.IsNullOrEmpty(search_data.sort) && !string.IsNullOrEmpty(search_data.order)) if (!string.IsNullOrEmpty(search_data.sort) && !string.IsNullOrEmpty(search_data.order))
...@@ -1139,6 +1141,68 @@ where bailun_sku in @skus", new { skus = skus.Split(',').ToList() }); ...@@ -1139,6 +1141,68 @@ where bailun_sku in @skus", new { skus = skus.Split(',').ToList() });
var res = conn.Execute(sql.ToString()); var res = conn.Execute(sql.ToString());
Console.WriteLine($" 新增 {datas.Count} 条数据,耗时 {watch.ElapsedMilliseconds} 毫秒 "); Console.WriteLine($" 新增 {datas.Count} 条数据,耗时 {watch.ElapsedMilliseconds} 毫秒 ");
} }
/// <summary>
/// 刷新fba的过去销量
/// </summary>
public static void ResetFbaExtendSales(DateTime date)
{
// 时间点
// 最近1天
var btime1 = date.AddDays(-1).ToDayHome();
var etime1 = date.AddDays(-1).ToDayEnd();
var btime7 = date.AddDays(-8).ToDayHome();
var etime7 = date.AddDays(-1).ToDayEnd();
var btime30 = date.AddDays(-31).ToDayHome();
var etime30 = date.AddDays(-1).ToDayEnd();
int page = 0;
int rows = 1000;
while (true)
{
page++;
var configs = _connection.Query<dc_config_fba_extend>($@" select * from dc_config_fba_extend limit {(page - 1) * rows},{rows} ").ToList();
if (configs == null || configs.Count <= 0)
{
break;
}
foreach (var item in configs)
{
var tempData = _connection.QueryFirstOrDefault<dc_config_fba_extend_temp_dto>($@"
select t1.bailun_sku,t1.warehouse_code,
sum(case when t1.create_time>=@btime1 and t1.create_time<=@etime1 then t1.amount_sales * t1.order_to_usd_exchange_rate * t1.bailun_sku_quantity_ordered else 0 end) as 'amount_sales_usd_1',
sum(case when t1.create_time>=@btime1 and t1.create_time<=@etime1 then t1.bailun_sku_quantity_ordered else 0 end) as 'bailun_sku_quantity_ordered_1',
sum(case when t1.create_time>=@btime7 and t1.create_time<=@etime7 then t1.amount_sales * t1.order_to_usd_exchange_rate * t1.bailun_sku_quantity_ordered else 0 end) as 'amount_sales_usd_7',
sum(case when t1.create_time>=@btime7 and t1.create_time<=@etime7 then t1.bailun_sku_quantity_ordered else 0 end) as 'bailun_sku_quantity_ordered_7',
sum(case when t1.create_time>=@btime30 and t1.create_time<=@etime30 then t1.amount_sales * t1.order_to_usd_exchange_rate * t1.bailun_sku_quantity_ordered else 0 end) as 'amount_sales_usd_30',
sum(case when t1.create_time>=@btime30 and t1.create_time<=@etime30 then t1.bailun_sku_quantity_ordered else 0 end) as 'bailun_sku_quantity_ordered_30'
from dc_base_oms_sku_30 as t1 where t1.create_time>=@btime1 and t1.create_time<=@etime30
and t1.bailun_sku=@bailun_sku and t1.warehouse_code=@warehouse_code
", new { btime1, etime1, btime7, etime7, btime30, etime30, item.bailun_sku, item.warehouse_code }) ?? new dc_config_fba_extend_temp_dto();
_connection.Execute($@" update dc_config_fba_extend set
amount_sales_usd_1=@amount_sales_usd_1,
bailun_sku_quantity_ordered_1=@bailun_sku_quantity_ordered_1,
amount_sales_usd_7=@amount_sales_usd_7,
bailun_sku_quantity_ordered_7=@bailun_sku_quantity_ordered_7,
amount_sales_usd_30=@amount_sales_usd_30,
bailun_sku_quantity_ordered_30=@bailun_sku_quantity_ordered_30
where id=@id
", new
{
amount_sales_usd_1 = tempData.amount_sales_usd_1,
bailun_sku_quantity_ordered_1 = tempData.bailun_sku_quantity_ordered_1,
amount_sales_usd_7 = tempData.amount_sales_usd_7,
bailun_sku_quantity_ordered_7 = tempData.bailun_sku_quantity_ordered_7,
amount_sales_usd_30 = tempData.amount_sales_usd_30,
bailun_sku_quantity_ordered_30 = tempData.bailun_sku_quantity_ordered_30,
id = item.id
});
}
}
}
} }
......
using System;
using System.Collections.Generic;
using System.Text;
namespace AutoTurnOver.DB
{
/// <summary>
/// fba 扩展表
/// </summary>
public class dc_config_fba_extend
{
public int id { get; set; }
public string bailun_sku { get; set; }
public string asin { get; set; }
public string bailun_account { get; set; }
public string web_site { get; set; }
public string product_type { get; set; }
public string group_name { get; set; }
public string sale_name { get; set; }
public string warehouse_code { get; set; }
public string bailun_sku_warehouse_code { get; set; }
public decimal amount_sales_usd_1 { get; set; }
public decimal bailun_sku_quantity_ordered_1 { get; set; }
public decimal amount_sales_usd_7 { get; set; }
public decimal bailun_sku_quantity_ordered_7 { get; set; }
public decimal amount_sales_usd_30 { get; set; }
public decimal bailun_sku_quantity_ordered_30 { get; set; }
}
public class dc_config_fba_extend_temp_dto
{
public decimal amount_sales_usd_1 { get; set; }
public decimal bailun_sku_quantity_ordered_1 { get; set; }
public decimal amount_sales_usd_7 { get; set; }
public decimal bailun_sku_quantity_ordered_7 { get; set; }
public decimal amount_sales_usd_30 { get; set; }
public decimal bailun_sku_quantity_ordered_30 { get; set; }
}
}
...@@ -24,4 +24,6 @@ namespace AutoTurnOver.Models ...@@ -24,4 +24,6 @@ namespace AutoTurnOver.Models
public string bl_operator { get; set; } public string bl_operator { get; set; }
} }
} }
...@@ -52,6 +52,12 @@ namespace ResetOutofstock ...@@ -52,6 +52,12 @@ namespace ResetOutofstock
report_cash_flow_dao.CalculationOrderCostLogistics(now.AddMonths(-3), DateTime.Parse(now.AddDays(-1).ToString("yyyy-MM-dd 23:59:59"))); report_cash_flow_dao.CalculationOrderCostLogistics(now.AddMonths(-3), DateTime.Parse(now.AddDays(-1).ToString("yyyy-MM-dd 23:59:59")));
Console.WriteLine($"结束 刷新订单尾程费,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); Console.WriteLine($"结束 刷新订单尾程费,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
} }
if (now.Hour == 0 && now.Minute == 06)
{
Console.WriteLine($"开始 刷新fba历史销量,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
daily.ResetFbaExtendSales(now);
Console.WriteLine($"结束 刷新fba历史销量,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
}
if (now.Hour == 2 && now.Minute == 23) if (now.Hour == 2 && now.Minute == 23)
{ {
if (now.DayOfWeek == DayOfWeek.Monday) if (now.DayOfWeek == DayOfWeek.Monday)
......
...@@ -28,7 +28,7 @@ namespace ResetOutofstock ...@@ -28,7 +28,7 @@ namespace ResetOutofstock
//report.PurchaseWeekBackUp(); //report.PurchaseWeekBackUp();
//report.PurchaseWeekBackUp(); //report.PurchaseWeekBackUp();
//await new TaskDownloadServices().Download(); //await new TaskDownloadServices().Download();
dc_base_trans_temp_schedule_dao.SynchroTransTempScheduleData();
} }
catch (Exception ex) catch (Exception ex)
{ {
......
...@@ -41,9 +41,9 @@ namespace ResetOutofstock ...@@ -41,9 +41,9 @@ namespace ResetOutofstock
//}); //});
Task.Factory.StartNew(() => Task.Factory.StartNew(() =>
{ {
Console.WriteLine($"开始 init 上周销量 ,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); Console.WriteLine($"开始 init ,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
report.ResetLastweekData(); daily.ResetFbaExtendSales(DateTime.Now);
Console.WriteLine($"结束 init 上周销量 ,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); Console.WriteLine($"结束 init ,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
}); });
......
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