Commit bcb65349 by 泽锋 李

fix

parent 3567a1e4
...@@ -43,9 +43,13 @@ namespace ShortagePush ...@@ -43,9 +43,13 @@ namespace ShortagePush
{ {
try try
{ {
System.Console.WriteLine($"开始刷新周转建议,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); System.Console.WriteLine($"开始刷新周转建议-采购单,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
new SkuAutoTurnServices().ResetPurchaseAdvise(); new SkuAutoTurnServices().ResetPurchaseAdvise();
System.Console.WriteLine($"结束刷新周转建议,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); System.Console.WriteLine($"结束刷新周转建议-采购单,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
System.Console.WriteLine($"开始刷新周转建议-by 调拨单,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
new SkuAutoTurnServices().ResetPurchaseAdviseByTransfer();
System.Console.WriteLine($"结束刷新周转建议- by调拨单,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
} }
catch (Exception ex) catch (Exception ex)
...@@ -56,7 +60,7 @@ namespace ShortagePush ...@@ -56,7 +60,7 @@ namespace ShortagePush
Thread.Sleep(30 * 1000); Thread.Sleep(30 * 1000);
} }
}); });
return Task.CompletedTask; return Task.CompletedTask;
......
...@@ -47,6 +47,7 @@ namespace AutoGeneratePurchaseAdvise ...@@ -47,6 +47,7 @@ namespace AutoGeneratePurchaseAdvise
//PurchaseAdviseServices.AutoPushBuySys(4); //PurchaseAdviseServices.AutoPushBuySys(4);
//new SkuAutoTurnServices().ResetPurchaseAdvise(); //new SkuAutoTurnServices().ResetPurchaseAdvise();
//new SkuAutoTurnServices().ResetPurchaseAdvise(); //new SkuAutoTurnServices().ResetPurchaseAdvise();
//new SkuAutoTurnServices().ResetPurchaseAdviseByTransfer();
} }
catch (Exception ex) catch (Exception ex)
{ {
......
...@@ -1098,7 +1098,7 @@ from dc_auto_turnover where gmt_modified>=@btime and gmt_modified<=@etime ...@@ -1098,7 +1098,7 @@ from dc_auto_turnover where gmt_modified>=@btime and gmt_modified<=@etime
/// <summary> /// <summary>
/// 更新采购建议 /// 更新采购建议
/// </summary> /// </summary>
public static void ResetPurchaseAdviseSingle(string bailun_sku,string warehouse_code) public static void ResetPurchaseAdviseSingle(string bailun_sku,string warehouse_code,string remarks)
{ {
_connection.Insert(new dc_base_queue _connection.Insert(new dc_base_queue
{ {
...@@ -1108,7 +1108,7 @@ from dc_auto_turnover where gmt_modified>=@btime and gmt_modified<=@etime ...@@ -1108,7 +1108,7 @@ from dc_auto_turnover where gmt_modified>=@btime and gmt_modified<=@etime
error_stack_trace = "", error_stack_trace = "",
message = new { bailun_sku = bailun_sku, warehouse_code = warehouse_code }.ToJson(), message = new { bailun_sku = bailun_sku, warehouse_code = warehouse_code }.ToJson(),
type = "刷新周转表", type = "刷新周转表",
remarks = "采购单更新" remarks = remarks
}); });
} }
......
...@@ -514,7 +514,7 @@ namespace AutoTurnOver.Services ...@@ -514,7 +514,7 @@ namespace AutoTurnOver.Services
{ {
bailun_sku_warehouse_codes.Add($"{item.bailun_sku}{item.warehouse_code}"); bailun_sku_warehouse_codes.Add($"{item.bailun_sku}{item.warehouse_code}");
//添加到队列,重新刷数据 //添加到队列,重新刷数据
AutoTurnOver.DB.dc_auto_turnover.ResetPurchaseAdviseSingle(item.bailun_sku, item.warehouse_code); AutoTurnOver.DB.dc_auto_turnover.ResetPurchaseAdviseSingle(item.bailun_sku, item.warehouse_code, "采购单更新");
count++; count++;
} }
...@@ -539,5 +539,93 @@ namespace AutoTurnOver.Services ...@@ -539,5 +539,93 @@ namespace AutoTurnOver.Services
new_task_synchro_log.status = 1; new_task_synchro_log.status = 1;
conn.Update(new_task_synchro_log); conn.Update(new_task_synchro_log);
} }
public void ResetPurchaseAdviseByTransfer()
{
var conn = MyMySqlConnection._connection;
// 如果遇到出周转建议的时候,则停止
var last_data = conn.QuerySingleOrDefault<DateTime>(" select MAX(create_time) from dc_auto_purchase_advise ");
if ((DateTime.Now - last_data).TotalMinutes <= 20)
{
return;
}
var task_name = "ResetPurchaseAdviseByTransfer_v1";
// 查询最后一次成功抓取的记录
var last_task_synchro_log = conn.QuerySingleOrDefault<task_synchro_log>(" select * from task_synchro_log where task_name=@task_name and status=1 order by end_time desc limit 1 ", new { task_name = task_name });
var new_task_synchro_log = new task_synchro_log
{
create_date = DateTime.Now,
end_time = DateTime.Now.AddMinutes(-20),
status = 0,
task_name = task_name
};
if (last_task_synchro_log != null)
{
new_task_synchro_log.start_time = last_task_synchro_log.end_time.AddMinutes(-1);
}
else
{
new_task_synchro_log.start_time = new DateTime(2021,1,1);
}
new_task_synchro_log.id = conn.Insert(new_task_synchro_log) ?? 0;
int count = 0;
var bailun_sku_warehouse_codes = new List<string>();
var page = 1;
var rows = 1000;
var btime = DateTime.Now;
while (true)
{
var datas = conn.Query<dc_base_transfer_info_sku_dto>($" select t2.sku as 'bailun_sku',t1.targetwareno as 'warehouse_code' from dc_base_transfer_info as t1 left join dc_base_transfer_info_skus as t2 on t1.dataid=t2.dataid where t1.timestamp>=@btime and t1.timestamp<=@etime limit {(page - 1) * rows},{(rows)} ", new
{
btime = new_task_synchro_log.start_time,
etime = new_task_synchro_log.end_time
}).ToList();
if (datas == null || datas.Count <= 0)
{
break;
}
page++;
foreach (var item in datas)
{
bailun_sku_warehouse_codes.Add($"{item.bailun_sku}{item.warehouse_code}");
//添加到队列,重新刷数据
AutoTurnOver.DB.dc_auto_turnover.ResetPurchaseAdviseSingle(item.bailun_sku, item.warehouse_code, "调拨单更新");
count++;
}
}
if (bailun_sku_warehouse_codes != null && bailun_sku_warehouse_codes.Count >= 1)
{
// 等待周转跑完
AutoTurnOver.DB.dc_auto_turnover.WaitTurnoverQueueTask();
// 清理已经删除的数据
conn.Execute(" update dc_auto_purchase_advise_detailed set status=-1 where bailun_sku_warehouse_code in @bailun_sku_warehouse_codes ", new
{
bailun_sku_warehouse_codes = bailun_sku_warehouse_codes
}, commandTimeout: 0);
// 出周转建议
PurchaseAdviseServices.Generate(btime, false);
}
new_task_synchro_log.count = count;
new_task_synchro_log.status = 1;
conn.Update(new_task_synchro_log);
}
public class dc_base_transfer_info_sku_dto
{
public string bailun_sku { get; set; }
public string warehouse_code { get; set; }
}
} }
} }
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