Commit b5a56302 by 泽锋 李

调拨单入库日志分析

parent 5aeb79b5
...@@ -551,61 +551,85 @@ namespace AutoTurnOver.DB ...@@ -551,61 +551,85 @@ namespace AutoTurnOver.DB
var _connection = MyMySqlConnection._connection; var _connection = MyMySqlConnection._connection;
List<api_transport_count_order_transfer_dto> datas = new List<api_transport_count_order_transfer_dto>() { new api_transport_count_order_transfer_dto { } }; List<api_transport_count_order_transfer_dto> datas = new List<api_transport_count_order_transfer_dto>() { new api_transport_count_order_transfer_dto { } };
List<dc_base_trans_expectarrivaltime_temp> transDatas = new List<dc_base_trans_expectarrivaltime_temp>(); List<dc_base_trans_expectarrivaltime_temp> transDatas = new List<dc_base_trans_expectarrivaltime_temp>();
DynamicParameters parameters = new DynamicParameters();
parameters.Add("bailun_sku", data.bailun_sku);
parameters.Add("warehouse_code", data.targetwareno);
// 查询真实的调拨在途 // 查询真实的调拨在途
var orders = _connection.Query<dc_base_trans_expectarrivaltime_temp>(@"select var orders = _connection.Query<dc_base_trans_expectarrivaltime_temp>(@"select
ifnull(t2.`code`,'') as 'main_code',
ifnull(t8.expectarrivaltime,t2.expectarrivaltime) as 'expectarrivaltime', ifnull(t8.expectarrivaltime,t2.expectarrivaltime) as 'expectarrivaltime',
t1.sku as 'bailun_sku', t1.sku as 'bailun_sku',
t2.targetwareno as 'warehouse_code', t2.targetwareno as 'warehouse_code',
t1.deliverycount - t1.storagecount as 'count', t1.deliverycount - t1.storagecount as 'count',
ifnull(t2.`code`,'') as 'transfer_order_id', ifnull(t2.`code`,'') as 'transfer_order_id',
ifnull(t2.purchasecode,'') as 'purchase_id' ifnull(t2.purchasecode,'') as 'purchase_id',
(case when t9.transport_type=1 then '铁路运输' when t9.transport_type=2 then '海运' when t9.transport_type=3 then '空运' else '未知' end ) as 'transport_type_str'
from dc_base_transfer_info_skus as t1 from dc_base_transfer_info_skus as t1
left join dc_base_transfer_info as t2 on t1.dataid =t2.dataid left join dc_base_transfer_info as t2 on t1.dataid =t2.dataid
left join dc_base_warehouse as t3 on t2.targetwareno = t3.warehouse_code left join dc_base_warehouse as t3 on t2.targetwareno = t3.warehouse_code
left join ( select * from dc_lms_order_transfer_current_node GROUP BY data_id,sku ) as t8 on t2.dataid = t8.data_id and t1.sku = t8.sku left join ( select * from dc_lms_order_transfer_current_node GROUP BY data_id,sku ) as t8 on t2.dataid = t8.data_id and t1.sku = t8.sku
where t2.isdeleted=0 and t2.stateid not in (5,11,12) left join dc_base_lms_channel as t9 on t2.channelname = t9.`name`
where t2.isdeleted=0 and t2.stateid not in (5,11,12) and t9.transport_type in (1,2,3)
and t1.deliverycount > t1.storagecount and t1.deliverycount > t1.storagecount
and t2.isexception = 0 and t2.isexception = 0
and t3.hq_type in ('fba仓','第三方仓库') and t2.expectarrivaltime >='1991-01-01'").ToList(); and t3.hq_type in ('fba仓','第三方仓库') and t2.expectarrivaltime >='1991-01-01' and t1.sku=@bailun_sku and t2.targetwareno=@warehouse_code ", parameters).ToList();
if(orders!=null && orders.Count >= 1) if(orders!=null && orders.Count >= 1)
{ {
transDatas.AddRange(orders); transDatas.AddRange(orders);
} }
// 计算调拨临时数据 // 计算调拨临时数据
var temp_orders = _connection.Query<dc_base_trans_expectarrivaltime_temp>(@"select var temp_orders = _connection.Query<dc_base_trans_expectarrivaltime_temp>(@"select
t1.code as 'main_code',
t1.purchase_code as 'purchase_id', t1.purchase_code as 'purchase_id',
t1.sku as 'bailun_sku', t1.sku as 'bailun_sku',
t1.target_ware_no as 'warehouse_code' , t1.target_ware_no as 'warehouse_code' ,
(case when t1.create_state=0 then t1.product_num else t1.temp_delivery_count end) as 'count', (case when t1.create_state=0 then t1.product_num else t1.temp_delivery_count end) as 'count',
'' as 'transfer_order_id', '' as 'transfer_order_id',
'1991-01-01' as 'expectarrivaltime' '1991-01-01' as 'expectarrivaltime',
t1.transport_type_str
from dc_base_trans_temp_schedule as t1 from dc_base_trans_temp_schedule as t1
left join dc_base_warehouse as t2 on t1.target_ware_no = t2.warehouse_code left join dc_base_warehouse as t2 on t1.target_ware_no = t2.warehouse_code
where t1.is_delete=0 and t1.is_temp_data=1 and t1.is_exception=0 and t2.hq_type in ('fba仓') and t1.create_state in (0,1) where t1.is_delete=0 and t1.is_temp_data=1 and t1.is_exception=0 and t2.hq_type in ('fba仓') and t1.create_state in (0,1)
").ToList(); and t1.sku=@bailun_sku and t1.target_ware_no=@warehouse_code
", parameters).ToList();
if (temp_orders != null && temp_orders.Count >= 1) if (temp_orders != null && temp_orders.Count >= 1)
{ {
transDatas.AddRange(temp_orders); transDatas.AddRange(temp_orders);
} }
// 查询计划单 // 查询计划单
var plan_orders = _connection.Query<dc_base_trans_expectarrivaltime_temp>(@"select var plan_orders = _connection.Query<dc_base_trans_expectarrivaltime_temp>(@"select
t1.transfer_plan_order_id as 'main_code',
'' as 'purchase_id', '' as 'purchase_id',
t1.bailun_sku as 'bailun_sku', t1.bailun_sku as 'bailun_sku',
t1.warehouse_code as 'warehouse_code', t1.warehouse_code as 'warehouse_code',
t1.count as 'count', t1.count as 'count',
'' as 'transfer_order_id', '' as 'transfer_order_id',
'1991-01-01' as 'expectarrivaltime' '1991-01-01' as 'expectarrivaltime',
t1.transport_type as 'transport_type_str'
from dc_base_transfer_plan as t1 from dc_base_transfer_plan as t1
left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code
where t1.`status`=1 and t2.hq_type not IN ('国内仓','fba仓') and t1.deleted=0 where t1.`status`=1 and t2.hq_type not IN ('国内仓','fba仓') and t1.deleted=0
").ToList(); and t1.sku=@bailun_sku and t1.warehouse_code=@warehouse_code
", parameters).ToList();
if (plan_orders != null && plan_orders.Count >= 1) if (plan_orders != null && plan_orders.Count >= 1)
{ {
transDatas.AddRange(plan_orders); transDatas.AddRange(plan_orders);
} }
datas[0].order_count = transDatas.Select(s => s.main_code).Distinct().Count();
datas[0].product_count = transDatas.Sum(s=>s.count);
datas[0].order_count_1 = transDatas.Where(s=>s.transport_type_str=="铁路运输").Select(s => s.main_code).Distinct().Count();
datas[0].product_count_1 = transDatas.Where(s=>s.transport_type_str== "铁路运输").Sum(s => s.count);
datas[0].order_count_2 = transDatas.Where(s=>s.transport_type_str=="海运").Select(s => s.main_code).Distinct().Count();
datas[0].product_count_2 = transDatas.Where(s=>s.transport_type_str== "海运").Sum(s => s.count);
datas[0].order_count_2 = transDatas.Where(s=>s.transport_type_str=="空运").Select(s => s.main_code).Distinct().Count();
datas[0].product_count_2 = transDatas.Where(s=>s.transport_type_str== "空运").Sum(s => s.count);
// 在库库存分析
return null; return datas;
} }
/// <summary> /// <summary>
/// 获取lms 的调拨单时效 /// 获取lms 的调拨单时效
......
...@@ -38,7 +38,7 @@ namespace AutoTurnOver.DB ...@@ -38,7 +38,7 @@ namespace AutoTurnOver.DB
} }
else else
{ {
new_task_synchro_log.start_time = DateTime.Now; new_task_synchro_log.start_time = DateTime.Now.AddYears(-1);
} }
new_task_synchro_log.id = conn.Insert(new_task_synchro_log) ?? 0; new_task_synchro_log.id = conn.Insert(new_task_synchro_log) ?? 0;
......
...@@ -11,6 +11,7 @@ namespace AutoTurnOver.Models ...@@ -11,6 +11,7 @@ namespace AutoTurnOver.Models
public class dc_base_trans_expectarrivaltime_temp public class dc_base_trans_expectarrivaltime_temp
{ {
public int id { get; set; } public int id { get; set; }
public string main_code { get; set; }
public string bailun_sku { get; set; } public string bailun_sku { get; set; }
public string warehouse_code { get; set; } public string warehouse_code { get; set; }
public int count { get; set; } public int count { get; set; }
...@@ -25,5 +26,11 @@ namespace AutoTurnOver.Models ...@@ -25,5 +26,11 @@ namespace AutoTurnOver.Models
/// </summary> /// </summary>
public string purchase_id { get; set; } public string purchase_id { get; set; }
public DateTime expectarrivaltime { get; set; } public DateTime expectarrivaltime { get; set; }
/// <summary>
/// 运输方式
/// </summary>
public string transport_type_str { get; set; }
} }
} }
...@@ -23,7 +23,7 @@ namespace AutoTurnOver.Purchase.AverageTarget ...@@ -23,7 +23,7 @@ namespace AutoTurnOver.Purchase.AverageTarget
Console.WriteLine("采购平均值计算任务启动..."); Console.WriteLine("采购平均值计算任务启动...");
try try
{ {
report.ResetTransExpectArrivaltime(); //report.ResetTransExpectArrivaltime();
//PurchaseAverageTargetServices.CalculationTransfer("942517901", days: (360 * 3)); //PurchaseAverageTargetServices.CalculationTransfer("942517901", days: (360 * 3));
//PurchaseAverageTargetServices.Calculation("942517901", days: (360 * 3)); //PurchaseAverageTargetServices.Calculation("942517901", days: (360 * 3));
} }
......
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