Commit 317190e2 by zhoujinhui

LM仓库采购建议

parent e238e16e
...@@ -103,7 +103,12 @@ namespace AutoGeneratePurchaseAdvise ...@@ -103,7 +103,12 @@ namespace AutoGeneratePurchaseAdvise
Console.WriteLine($"结束推送 jit精油采购建议 任务,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}"); Console.WriteLine($"结束推送 jit精油采购建议 任务,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
} }
if (now.Hour == 10 && now.Minute == 05) // LM仓库采购建议
{
Console.WriteLine($"开始推送 jit精油采购建议 任务,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
PurchaseAdviseServices.AutoPushBuySys(8);
Console.WriteLine($"结束推送 jit精油采购建议 任务,线程Id:{Thread.CurrentThread.ManagedThreadId}{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}");
}
if (now.Hour == 13 && now.Minute == 01) if (now.Hour == 13 && now.Minute == 01)
{ {
......
...@@ -1274,6 +1274,73 @@ left join dc_mid_transit as t9 on t1.bailun_sku = t9.bailun_sku and t1.warehouse ...@@ -1274,6 +1274,73 @@ left join dc_mid_transit as t9 on t1.bailun_sku = t9.bailun_sku and t1.warehouse
} }
/// <summary> /// <summary>
/// 导入缺货明细 张莹霞1 LM仓库
/// </summary>
/// <param name="mainID"></param>
public static int ImportJITShortageDetailedLM(int mainID)
{
var time = DateTime.Now;
// 计算之前先刷新一遍缺货,一面产生间隙(8点56进系统的单,没有算到缺货里面,下午1点那波也不会算上他)
//ResetShortageField();
if (mainID <= 0)
{
mainID = purchase_advise.Add(new dc_auto_purchase_advise { create_time = time, no = purchase_advise.GenerateOrderNo(), buy_sys_plan_no = "ImportJITShortageDetailedLM", title = $"LM仓库 jit 缺货 {DateTime.Now.ToString("HH:mm")}" }) ?? 0;
}
// 采购员为 张莹霞 的商品 按缺货数量下单
var datas = _connection.Query<dc_auto_purchase_advise_detailed>(@"select
t1.bailun_sku,
'GZBLLM' as 'warehouse_code',
( sum(t7.quantity_out_stock) - ( sum((case when t7.quantity_out_stock>0 then 0 else (t1.usable_stock+t1.occupy_order) end )) + sum(t1.quantity_transfer) + sum(t7.quantity_purchase) ) ) as 'quantity_init_advise', -- 原始采购建议数量 new
( sum(t7.quantity_out_stock) - ( sum((case when t7.quantity_out_stock>0 then 0 else (t1.usable_stock+t1.occupy_order) end )) + sum(t1.quantity_transfer) + sum(t7.quantity_purchase) ) ) as 'quantity_final_advise', -- 计算moq之后的数量 new
t6.product_inner_code as 'product_inner_code', -- 内部商品编码 new
0 as 'goods_quantity_init_advise', -- 商品本次的建议下单数量 new
0 as 'goods_moq', -- 商品的moq new
0 as 'good_sku_codes', -- 商品涉及的下单所有sku new
0 as 'goods_history_fourteenday_sales', -- 商品的最近14日总日均销量
-1 as 'history_fourteenday_sales', -- sku的最近14日日均
0 as 'quantity_actual', -- 真实下单数量
@main_id as 'main_id',
t2.forecast_formula as 'forecast_formula',
t2.fit_forecast_formula as 'fit_forecast_formula',
0 as 'turnover_days',
0 as 'supplier_delivery',
0 as inspection_delivery,
0 as transfer_delivery,
0 as sales_upper_limit,
0 as 'ispush',
2 as 'type',
t6.suppliers_id,
t7.quantity_out_stock,
2 as 'purchase_type_jit',
sum(t7.quantity_out_stock_aliexpress) as 'quantity_out_stock_aliexpress',
sum(t7.quantity_out_stock_amazon) as 'quantity_out_stock_amazon',
sum(t7.quantity_out_stock_other) as 'quantity_out_stock_other',
t9.quantity_transfer_order as 'quantity_transfer_order',
t9.quantity_transfer_temp_schedule as 'quantity_transfer_temp_schedule',
t9.quantity_transfer_temporary_storage as 'quantity_transfer_temporary_storage'
from dc_base_stock as t1
left join dc_auto_sales as t2 on t1.bailun_sku = t2.bailun_sku and t1.warehouse_code = t2.warehouse_code
left join dc_auto_config_sku_warehouse as t5 on t1.bailun_sku = t5.bailun_sku and t1.warehouse_code = t5.warehouse_code
left join dc_base_sku as t6 on t1.bailun_sku = t6.bailun_sku
left join dc_mid_transit as t7 on t1.bailun_sku = t7.bailun_sku and t1.warehouse_code = t7.warehouse_code
left join dc_mid_transit as t9 on t1.bailun_sku = t9.bailun_sku and t1.warehouse_code = t9.warehouse_code
where t6.`status`=2 and ( t6.buyer_name in ('张莹霞1') and t1.warehouse_code in ('GZBLLM') )
and ( t5.`status`=0 or t5.`status` is null )
GROUP BY t1.bailun_sku
HAVING ( sum((case when t7.quantity_out_stock>0 then 0 else (t1.usable_stock+t1.occupy_order) end )) + sum(t7.quantity_transfer) + sum(t7.quantity_purchase) < sum(t7.quantity_out_stock) ) ", new { main_id = mainID }, commandTimeout: 0).ToList();
if (datas != null && datas.Count >= 1)
{
WritePurchaseAdvise(datas);
}
return mainID;
}
/// <summary>
/// 导入缺货明细 张莹霞1 /// 导入缺货明细 张莹霞1
/// </summary> /// </summary>
/// <param name="mainID"></param> /// <param name="mainID"></param>
......
...@@ -602,7 +602,10 @@ namespace AutoTurnOver.Services ...@@ -602,7 +602,10 @@ namespace AutoTurnOver.Services
{ {
mainID = purchase_advise.ImportDuLiShortageDetailed(0); mainID = purchase_advise.ImportDuLiShortageDetailed(0);
} }
else if (type == 8) //LM仓库采购建议
{
mainID = purchase_advise.ImportJITShortageDetailedLM(0);
}
Console.WriteLine($"采购建议生成,id:{mainID}"); Console.WriteLine($"采购建议生成,id:{mainID}");
List<dc_auto_purchase_advise_detailed_dto> datas = new List<dc_auto_purchase_advise_detailed_dto>(); List<dc_auto_purchase_advise_detailed_dto> datas = new List<dc_auto_purchase_advise_detailed_dto>();
......
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