Commit 77e81138 by 泽锋 李

fix

parent 73af4bce
...@@ -1234,16 +1234,16 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1234,16 +1234,16 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
new transfer_profit_dto{field_name ="freight_price_ocean", name ="海运周转运费",remarks = "海运周转数 * 最便宜的海运物流跑出来的运费单价 ",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_ocean", name ="海运周转运费",remarks = "海运周转数 * 最便宜的海运物流跑出来的运费单价 ",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="quantity_final_advise_air", name ="空运周转数(推荐空运)",remarks = "(空运运周转天数 * 日均销量)+ 安全库存",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="quantity_final_advise_air", name ="空运周转数(推荐空运)",remarks = "(空运运周转天数 * 日均销量)+ 安全库存",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="quantity_final_advise_air_amount", name ="空运周转金额",remarks = "空运周转数 * 采购价",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="quantity_final_advise_air_amount", name ="空运周转金额",remarks = "空运周转数 * 采购价",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_ocean", name ="空运周转运费",remarks="空运周转数 * 最便宜的空运物流跑出来的运费单价 ",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_air", name ="空运周转运费",remarks="空运周转数 * 最便宜的空运物流跑出来的运费单价 ",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_ocean_difference_amount", name ="实际-海运运费差值",remarks = "【实际周转运费】-【海运周转运费】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_ocean_difference_amount", name ="实际-海运运费差值",remarks = "【实际周转运费】-【海运周转运费】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="quantity_final_ocean_difference_amount", name ="实际-海运周转采购金额差值",remarks = "【实际建议周转金额】-【海运周转金额】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="quantity_final_ocean_difference_amount", name ="实际-海运周转采购金额差值",remarks = "【实际建议周转金额】-【海运周转金额】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_ocean_difference_amount_radio", name ="差值(海运)-实际周转运费占比",remarks = "【实际-海运运费差值】/ 【实际周转运费】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_ocean_difference_amount_radio", name ="差值(海运)-实际周转金额占比",remarks = "【实际-海运运费差值】/ 【实际周转运费】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_air_difference_amount", name ="实际-空运运费差值",remarks="【实际周转运费】-【空运周转运费】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_air_difference_amount", name ="实际-空运运费差值",remarks="【实际周转运费】-【空运周转运费】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="quantity_final_air_difference_amount", name ="实际-空运周转采购金额差值",remarks = "【实际建议周转金额】-【空运周转金额】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="quantity_final_air_difference_amount", name ="实际-空运周转采购金额差值",remarks = "【实际建议周转金额】-【空运周转金额】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_air_difference_amount_radio", name ="差值(空运)-实际周转运费占比",remarks = "【实际-空运运费差值】/ 【实际周转运费】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_air_difference_amount_radio", name ="差值(空运)-实际周转金额占比",remarks = "【实际-空运运费差值】/ 【实际周转运费】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_ocean_air_difference", name ="海运-空运运费差值",remarks="【海运周转运费】-【空运运周转运费】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_ocean_air_difference", name ="海运-空运运费差值",remarks="【海运周转运费】-【空运运周转运费】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="quantity_final__ocean_air_difference_amount", name ="海运-空运周转采购金额差值",remarks="【海运周转金额】-【空运周转金额】",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="quantity_final__ocean_air_difference_amount", name ="海运-空运周转采购金额差值",remarks="【海运周转金额】-【空运周转金额】",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="freight_price_ocean_air_difference_radio", name ="差值(海运-空运)-实际周转运费占比",remarks ="【海运-空运周转运费】/【实际周转运费】 ",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="freight_price_ocean_air_difference_radio", name ="差值(海运-空运)-实际周转金额占比",remarks ="【海运-空运周转运费】/【实际周转运费】 ",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="quantity_safe_inventory",remarks="安全库存数量" ,name ="安全库存数量",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="quantity_safe_inventory",remarks="安全库存数量" ,name ="安全库存数量",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="turnover_days_air", remarks ="空运周转天数", name ="空运周转天数",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="turnover_days_air", remarks ="空运周转天数", name ="空运周转天数",days = new List<transfer_profit_dto.day_dto>()},
new transfer_profit_dto{field_name ="turnover_days_ocean", remarks="海运周转天数", name ="海运周转天数",days = new List<transfer_profit_dto.day_dto>()}, new transfer_profit_dto{field_name ="turnover_days_ocean", remarks="海运周转天数", name ="海运周转天数",days = new List<transfer_profit_dto.day_dto>()},
...@@ -1258,7 +1258,8 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1258,7 +1258,8 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
var result_air = GetModelAir(bailun_sku, warehouse_code); var result_air = GetModelAir(bailun_sku, warehouse_code);
var result_ocean = GetModelOcean(bailun_sku, warehouse_code); var result_ocean = GetModelOcean(bailun_sku, warehouse_code);
var base_wa = _connection.QueryFirstOrDefault<string>(" select t2.`code` from dc_base_warehouse as t1 left join dc_base_country as t2 on t1.area_name = t2.`name` where warehouse_code=@warehouse_code ", new { warehouse_code }); var base_wa = _connection.QueryFirstOrDefault<string>(" select t2.`code` from dc_base_warehouse as t1 left join dc_base_country as t2 on t1.area_name = t2.`name` where warehouse_code=@warehouse_code ", new { warehouse_code });
var dc_mid_transit_data = _connection.QueryFirstOrDefault<int?>(" select quantity_transfer+quantity_purchase from dc_mid_transit as t1 where bailun_sku=@bailun_sku and warehouse_code=@warehouse_code ", new { bailun_sku, warehouse_code }) ?? 0; var quantity_transfer = _connection.QueryFirstOrDefault<int?>(" select quantity_transfer from dc_mid_transit as t1 where bailun_sku=@bailun_sku and warehouse_code=@warehouse_code ", new { bailun_sku, warehouse_code }) ?? 0;
var quantity_purchase = _connection.QueryFirstOrDefault<int?>(" select quantity_purchase from dc_mid_transit as t1 where bailun_sku=@bailun_sku and warehouse_code=@warehouse_code ", new { bailun_sku, warehouse_code }) ?? 0;
var dc_stock_data = _connection.QueryFirstOrDefault<int?>(" select usable_stock from dc_base_stock as t1 where bailun_sku=@bailun_sku and warehouse_code=@warehouse_code ", new { bailun_sku, warehouse_code }) ?? 0; var dc_stock_data = _connection.QueryFirstOrDefault<int?>(" select usable_stock from dc_base_stock as t1 where bailun_sku=@bailun_sku and warehouse_code=@warehouse_code ", new { bailun_sku, warehouse_code }) ?? 0;
var dc_base_sku_data = _connection.QueryFirstOrDefault<dc_base_sku>(" select * from dc_base_sku where bailun_sku=@bailun_sku ", new { bailun_sku }); var dc_base_sku_data = _connection.QueryFirstOrDefault<dc_base_sku>(" select * from dc_base_sku where bailun_sku=@bailun_sku ", new { bailun_sku });
...@@ -1348,6 +1349,8 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1348,6 +1349,8 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
}); });
modalData.quantity_safe_inventory = result.quantity_safe_inventory; modalData.quantity_safe_inventory = result.quantity_safe_inventory;
modalData.daily_weighted_sales = result.daily_weighted_sales;
modalData.quantity_safe_inventory_days = Math.Round(result.quantity_safe_inventory / result.daily_weighted_sales);
datas.FirstOrDefault(s => s.name == "安全库存数量").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "安全库存数量").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
...@@ -1356,6 +1359,15 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1356,6 +1359,15 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
}); });
modalData.turnover_days = result.turnover_days;
modalData.purchase_create_order_days = result.purchase_create_order_days;
modalData.payment_before_delivery = result.payment_before_delivery;
modalData.supplier_delivery = result.supplier_delivery;
modalData.inspection_delivery_days = result.inspection_delivery;
modalData.transfer_delivery = result.transfer_delivery;
modalData.abroad_inbound_delivery = result.abroad_inbound_delivery;
modalData.transfer_bale_delivery = result.transfer_bale_delivery;
modalData.turnover_days_air = result_air.turnover_days; modalData.turnover_days_air = result_air.turnover_days;
modalData.purchase_create_order_days_air = result_air.purchase_create_order_days; modalData.purchase_create_order_days_air = result_air.purchase_create_order_days;
modalData.payment_before_delivery_air = result_air.payment_before_delivery; modalData.payment_before_delivery_air = result_air.payment_before_delivery;
...@@ -1419,14 +1431,15 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1419,14 +1431,15 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
}); });
// 在库+在途 // 在库+在途
modalData.turnover = dc_mid_transit_data + dc_stock_data; modalData.turnover = quantity_transfer +quantity_purchase + dc_stock_data;
modalData.dc_stock_data = dc_stock_data; modalData.dc_stock_data = dc_stock_data;
modalData.dc_mid_transit_data = dc_mid_transit_data ; modalData.quantity_transfer = quantity_transfer;
modalData.quantity_purchase = quantity_purchase;
datas.FirstOrDefault(s => s.name == "实际周转数").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "实际周转数").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
val = modalData.turnover, val = modalData.turnover,
formula = $" 【实际周转数】 = 采购+调拨在途 ({dc_mid_transit_data}) + 在库 ({dc_stock_data}) " formula = $" 【实际周转数】 = 采购+调拨在途 ({quantity_transfer+ quantity_purchase}) + 在库 ({dc_stock_data}) "
}); });
modalData.freight_price = modalData.freight_unit_price * modalData.turnover; modalData.freight_price = modalData.freight_unit_price * modalData.turnover;
...@@ -1512,12 +1525,12 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1512,12 +1525,12 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
formula = $"【实际-海运周转采购金额差值】= 【实际建议周转金额 {modalData.quantity_final_advise_amount }】 - 【海运周转金额 {modalData.quantity_final_advise_ocean_amount}】" formula = $"【实际-海运周转采购金额差值】= 【实际建议周转金额 {modalData.quantity_final_advise_amount }】 - 【海运周转金额 {modalData.quantity_final_advise_ocean_amount}】"
}); });
modalData.freight_price_ocean_difference_amount_radio = (modalData.freight_price_ocean ?? 0) <= 0 ? 0M : (Math.Round((modalData.freight_price_ocean_difference_amount ?? 0) / modalData.freight_price.Value, 3)); modalData.freight_price_ocean_difference_amount_radio = (modalData.turnover_amount ?? 0) <= 0 ? 0M : (Math.Round((modalData.quantity_final_ocean_difference_amount ?? 0) / modalData.turnover_amount.Value, 3));
datas.FirstOrDefault(s => s.name == "差值(海运)-实际周转运费占比").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "差值(海运)-实际周转金额占比").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
val = modalData.freight_price_ocean_difference_amount_radio, val = modalData.freight_price_ocean_difference_amount_radio,
formula = $"【差值(海运)-实际周转运费占比】 = 【实际-海运运费差值 {modalData.freight_price_ocean_difference_amount}】/ 【实际周转运费 {modalData.freight_price}】 " formula = $"【差值(海运)-实际周转金额占比】 = 【实际-海运周转金额差值 {modalData.quantity_final_ocean_difference_amount}】/ 【实际周转金额 {modalData.turnover_amount}】 "
}); });
...@@ -1537,12 +1550,12 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1537,12 +1550,12 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
formula = $"【实际-空运运周转采购金额差值】= 【实际建议周转金额 {modalData.quantity_final_advise_amount }】 - 【空运周转金额 {modalData.quantity_final_advise_air_amount}】" formula = $"【实际-空运运周转采购金额差值】= 【实际建议周转金额 {modalData.quantity_final_advise_amount }】 - 【空运周转金额 {modalData.quantity_final_advise_air_amount}】"
}); });
modalData.freight_price_air_difference_amount_radio = (modalData.freight_price ?? 0) <= 0 ? 0M : (Math.Round((modalData.freight_price_air_difference_amount ?? 0) / modalData.freight_price.Value, 3)); modalData.freight_price_air_difference_amount_radio = (modalData.turnover_amount ?? 0) <= 0 ? 0M : (Math.Round((modalData.quantity_final_air_difference_amount ?? 0) / modalData.turnover_amount.Value, 3));
datas.FirstOrDefault(s => s.name == "差值(空运)-实际周转运费占比").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "差值(空运)-实际周转金额占比").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
val = modalData.freight_price_air_difference_amount_radio, val = modalData.freight_price_air_difference_amount_radio,
formula = $"【差值(空运)-实际周转运费占比】 = 【实际-空运周转运费差值 {modalData.freight_price_air_difference_amount}】/ 【实际建议周转金额 {modalData.freight_price}】 " formula = $"【差值(空运)-实际周转金额占比】 = 【实际-空运周转金额差值 {modalData.quantity_final_air_difference_amount}】/ 【实际建议周转金额 {modalData.turnover_amount}】 "
}); });
...@@ -1732,10 +1745,10 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1732,10 +1745,10 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
val = modalData.quantity_final_ocean_difference_amount val = modalData.quantity_final_ocean_difference_amount
}); });
datas.FirstOrDefault(s => s.name == "差值(海运)-实际周转运费占比").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "差值(海运)-实际周转金额占比").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
val = (modalData.freight_price ?? 0) <= 0 ? 0M : (Math.Round(modalData.quantity_final_ocean_difference_amount ?? 0 / modalData.freight_price.Value, 3)) val = (modalData.turnover_amount ?? 0) <= 0 ? 0M : (Math.Round(modalData.quantity_final_ocean_difference_amount ?? 0 / modalData.turnover_amount.Value, 3))
}); });
modalData.freight_price_air_difference_amount = modalData.freight_price - modalData.freight_price_air; modalData.freight_price_air_difference_amount = modalData.freight_price - modalData.freight_price_air;
...@@ -1751,10 +1764,10 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1751,10 +1764,10 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
val = modalData.quantity_final_air_difference_amount val = modalData.quantity_final_air_difference_amount
}); });
datas.FirstOrDefault(s => s.name == "差值(空运)-实际周转运费占比").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "差值(空运)-实际周转金额占比").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
val = (modalData.freight_price_air ?? 0) <= 0 ? 0M : (Math.Round(modalData.freight_price_air_difference_amount ?? 0 / modalData.freight_price_air.Value, 3)) val = (modalData.turnover_amount ?? 0) <= 0 ? 0M : (Math.Round(modalData.freight_price_air_difference_amount ?? 0 / modalData.turnover_amount.Value, 3))
}); });
#endregion #endregion
...@@ -1780,12 +1793,12 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime ...@@ -1780,12 +1793,12 @@ where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
formula = $"【海运-空运周转采购金额差值】= 【海运周转采购金额 {modalData.quantity_final_advise_ocean_amount }】 - 【空运运周转采购金额 {modalData.quantity_final_advise_air_amount}】" formula = $"【海运-空运周转采购金额差值】= 【海运周转采购金额 {modalData.quantity_final_advise_ocean_amount }】 - 【空运运周转采购金额 {modalData.quantity_final_advise_air_amount}】"
}); });
modalData.freight_price_ocean_air_difference_radio = (modalData.freight_price ?? 0) <= 0 ? 0M : (Math.Round((modalData.freight_price_ocean_air_difference ?? 0) / modalData.freight_price.Value, 3)); modalData.freight_price_ocean_air_difference_radio = (modalData.turnover_amount ?? 0) <= 0 ? 0M : (Math.Round((modalData.quantity_final__ocean_air_difference_amount ?? 0) / modalData.turnover_amount.Value, 3));
datas.FirstOrDefault(s => s.name == "差值(海运-空运)-实际周转运费占比").days.Add(new transfer_profit_dto.day_dto datas.FirstOrDefault(s => s.name == "差值(海运-空运)-实际周转金额占比").days.Add(new transfer_profit_dto.day_dto
{ {
date = this_time, date = this_time,
val = modalData.freight_price_ocean_air_difference_radio, val = modalData.freight_price_ocean_air_difference_radio,
formula = $"【差值(海运-空运)-实际周转运费占比】 = 【海运-空运周转运费差值 {modalData.freight_price_ocean_air_difference}】/ 【实际周转运费 {modalData.freight_price}】 " formula = $"【差值(海运-空运)-实际周转金额占比】 = 【海运-空运周转金额差值 {modalData.quantity_final__ocean_air_difference_amount}】/ 【实际周转运费 {modalData.turnover_amount}】 "
}); });
......
...@@ -23,7 +23,8 @@ namespace AutoTurnOver.Models.Report ...@@ -23,7 +23,8 @@ namespace AutoTurnOver.Models.Report
/// <summary> /// <summary>
/// 调拨+采购在途 /// 调拨+采购在途
/// </summary> /// </summary>
public int? dc_mid_transit_data; public int? quantity_transfer;
public int? quantity_purchase;
/// <summary> /// <summary>
/// 实际在库 /// 实际在库
/// </summary> /// </summary>
...@@ -211,6 +212,18 @@ namespace AutoTurnOver.Models.Report ...@@ -211,6 +212,18 @@ namespace AutoTurnOver.Models.Report
public decimal turnover_sales; public decimal turnover_sales;
public int turnover_days_air; public int turnover_days_air;
public decimal? freight_price_air_ocean_30_difference; public decimal? freight_price_air_ocean_30_difference;
/// <summary>
/// 安全库存备货天数
/// </summary>
public decimal quantity_safe_inventory_days;
public int turnover_days;
public int? purchase_create_order_days;
public int payment_before_delivery;
public int supplier_delivery;
public int inspection_delivery_days;
public int transfer_delivery;
public decimal abroad_inbound_delivery;
public decimal transfer_bale_delivery;
/// <summary> /// <summary>
/// 实际建议周转运费 /// 实际建议周转运费
...@@ -228,6 +241,11 @@ namespace AutoTurnOver.Models.Report ...@@ -228,6 +241,11 @@ namespace AutoTurnOver.Models.Report
public decimal? quantity_safe_inventory { get; set; } public decimal? quantity_safe_inventory { get; set; }
/// <summary> /// <summary>
/// 日均加权销量
/// </summary>
public decimal? daily_weighted_sales { get; set; }
/// <summary>
/// 空运周转天数 /// 空运周转天数
/// </summary> /// </summary>
public decimal? turnover_days_ocean { get; set; } public decimal? turnover_days_ocean { 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