Commit 2e95eea7 by 泽锋 李

fix

parent 1154f09f
......@@ -1043,84 +1043,102 @@ select t7_1.warehouse_code,t7_1.bailun_sku,(to_days(t7_1.estimated_arrival_time)
/// </summary>
public static void CopyForecast()
{
_connection.Execute(@"REPLACE INTO dc_base_forecast_history(`bailun_sku`,`warehouse_code`,`bailun_sku_warehouse_code`,`date`,`date_str`,`create_date`,`sales`,`turnover_days`,`quantity_safe_inventory`,`supplier_delivery`,`transfer_config_delivery`,`transfer_bale_config_delivery`,`abroad_inbound_config_delivery`,`inspection_config_delivery`,`inspection_delivery`,`transfer_delivery`,`daily_weighted_sales`,`transfer_bale_delivery`,`abroad_inbound_delivery`,`quantity_final_advise`)
_connection.Execute(@"REPLACE INTO dc_base_forecast_history(`bailun_sku`,`warehouse_code`,`bailun_sku_warehouse_code`,`date`,`date_str`,`create_date`,`sales`,`turnover_days`,`quantity_safe_inventory`,`supplier_delivery`,`transfer_config_delivery`,`transfer_bale_config_delivery`,`abroad_inbound_config_delivery`,`inspection_config_delivery`,`inspection_delivery`,`transfer_delivery`,`daily_weighted_sales`,`transfer_bale_delivery`,`abroad_inbound_delivery`,`quantity_final_advise`,`usable_stock`,`quantity_transfer`,`quantity_purchase`)
(
select
bailun_sku,
warehouse_code,
CONCAT(bailun_sku,warehouse_code) as 'bailun_sku_warehouse_code',
gmt_modified as 'date',
DATE_FORMAT(gmt_modified,'%Y-%m-%d') as 'date_str',
t1.bailun_sku,
t1.warehouse_code,
CONCAT(t1.bailun_sku,t1.warehouse_code) as 'bailun_sku_warehouse_code',
t1.gmt_modified as 'date',
DATE_FORMAT(t1.gmt_modified,'%Y-%m-%d') as 'date_str',
now() as 'create_date',
forecast_oneday_sales as 'sales',
turnover_days as 'turnover_days',
quantity_safe_inventory as 'quantity_safe_inventory',
supplier_delivery as 'supplier_delivery',
transfer_config_delivery as 'transfer_config_delivery',
transfer_bale_config_delivery as 'transfer_bale_config_delivery',
abroad_inbound_config_delivery as 'abroad_inbound_config_delivery',
inspection_config_delivery as 'inspection_config_delivery',
inspection_delivery as 'inspection_delivery',
transfer_delivery as 'transfer_delivery',
daily_weighted_sales as 'daily_weighted_sales',
transfer_bale_delivery as 'transfer_bale_delivery',
abroad_inbound_delivery as 'abroad_inbound_delivery',
quantity_final_advise as 'quantity_final_advise'
from dc_auto_turnover where gmt_modified>=@btime and gmt_modified<=@etime
t1.forecast_oneday_sales as 'sales',
t1.turnover_days as 'turnover_days',
t1.quantity_safe_inventory as 'quantity_safe_inventory',
t1.supplier_delivery as 'supplier_delivery',
t1.transfer_config_delivery as 'transfer_config_delivery',
t1.transfer_bale_config_delivery as 'transfer_bale_config_delivery',
t1.abroad_inbound_config_delivery as 'abroad_inbound_config_delivery',
t1.inspection_config_delivery as 'inspection_config_delivery',
t1.inspection_delivery as 'inspection_delivery',
t1.transfer_delivery as 'transfer_delivery',
t1.daily_weighted_sales as 'daily_weighted_sales',
t1.transfer_bale_delivery as 'transfer_bale_delivery',
t1.abroad_inbound_delivery as 'abroad_inbound_delivery',
t1.quantity_final_advise as 'quantity_final_advise',
t2.usable_stock as 'usable_stock',
t3.quantity_transfer as 'quantity_transfer',
t3.quantity_purchase as 'quantity_purchase'
from dc_auto_turnover as t1
left join dc_base_stock as t2 on t1.bailun_sku = t2.bailun_sku and t1.warehouse_code =t2.warehouse_code
left join dc_mid_transit as t3 on t1.bailun_sku = t3.bailun_sku and t1.warehouse_code =t3.warehouse_code
where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
)
", new { btime = DateTime.Now.ToDayHome(), etime = DateTime.Now.ToDayEnd() }, commandTimeout: 0);
_connection.Execute(@"REPLACE INTO dc_base_forecast_history_ocean(`bailun_sku`,`warehouse_code`,`bailun_sku_warehouse_code`,`date`,`date_str`,`create_date`,`sales`,`turnover_days`,`quantity_safe_inventory`,`supplier_delivery`,`transfer_config_delivery`,`transfer_bale_config_delivery`,`abroad_inbound_config_delivery`,`inspection_config_delivery`,`inspection_delivery`,`transfer_delivery`,`daily_weighted_sales`,`transfer_bale_delivery`,`abroad_inbound_delivery`,`quantity_final_advise`)
_connection.Execute(@"REPLACE INTO dc_base_forecast_history_ocean(`bailun_sku`,`warehouse_code`,`bailun_sku_warehouse_code`,`date`,`date_str`,`create_date`,`sales`,`turnover_days`,`quantity_safe_inventory`,`supplier_delivery`,`transfer_config_delivery`,`transfer_bale_config_delivery`,`abroad_inbound_config_delivery`,`inspection_config_delivery`,`inspection_delivery`,`transfer_delivery`,`daily_weighted_sales`,`transfer_bale_delivery`,`abroad_inbound_delivery`,`quantity_final_advise`,`usable_stock`,`quantity_transfer`,`quantity_purchase`)
(
select
bailun_sku,
warehouse_code,
CONCAT(bailun_sku,warehouse_code) as 'bailun_sku_warehouse_code',
gmt_modified as 'date',
DATE_FORMAT(gmt_modified,'%Y-%m-%d') as 'date_str',
t1.bailun_sku,
t1.warehouse_code,
CONCAT(t1.bailun_sku,t1.warehouse_code) as 'bailun_sku_warehouse_code',
t1.gmt_modified as 'date',
DATE_FORMAT(t1.gmt_modified,'%Y-%m-%d') as 'date_str',
now() as 'create_date',
forecast_oneday_sales as 'sales',
turnover_days as 'turnover_days',
quantity_safe_inventory as 'quantity_safe_inventory',
supplier_delivery as 'supplier_delivery',
transfer_config_delivery as 'transfer_config_delivery',
transfer_bale_config_delivery as 'transfer_bale_config_delivery',
abroad_inbound_config_delivery as 'abroad_inbound_config_delivery',
inspection_config_delivery as 'inspection_config_delivery',
inspection_delivery as 'inspection_delivery',
transfer_delivery as 'transfer_delivery',
daily_weighted_sales as 'daily_weighted_sales',
transfer_bale_delivery as 'transfer_bale_delivery',
abroad_inbound_delivery as 'abroad_inbound_delivery',
quantity_final_advise as 'quantity_final_advise'
from dc_auto_turnover_ocean where gmt_modified>=@btime and gmt_modified<=@etime
t1.forecast_oneday_sales as 'sales',
t1.turnover_days as 'turnover_days',
t1.quantity_safe_inventory as 'quantity_safe_inventory',
t1.supplier_delivery as 'supplier_delivery',
t1.transfer_config_delivery as 'transfer_config_delivery',
t1.transfer_bale_config_delivery as 'transfer_bale_config_delivery',
t1.abroad_inbound_config_delivery as 'abroad_inbound_config_delivery',
t1.inspection_config_delivery as 'inspection_config_delivery',
t1.inspection_delivery as 'inspection_delivery',
t1.transfer_delivery as 'transfer_delivery',
t1.daily_weighted_sales as 'daily_weighted_sales',
t1.transfer_bale_delivery as 'transfer_bale_delivery',
t1.abroad_inbound_delivery as 'abroad_inbound_delivery',
t1.quantity_final_advise as 'quantity_final_advise',
t2.usable_stock as 'usable_stock',
t3.quantity_transfer as 'quantity_transfer',
t3.quantity_purchase as 'quantity_purchase'
from dc_auto_turnover_ocean as t1
left join dc_base_stock as t2 on t1.bailun_sku = t2.bailun_sku and t1.warehouse_code =t2.warehouse_code
left join dc_mid_transit as t3 on t1.bailun_sku = t3.bailun_sku and t1.warehouse_code =t3.warehouse_code
where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
)
", new { btime = DateTime.Now.ToDayHome(), etime = DateTime.Now.ToDayEnd() }, commandTimeout: 0);
_connection.Execute(@"REPLACE INTO dc_base_forecast_history_air(`bailun_sku`,`warehouse_code`,`bailun_sku_warehouse_code`,`date`,`date_str`,`create_date`,`sales`,`turnover_days`,`quantity_safe_inventory`,`supplier_delivery`,`transfer_config_delivery`,`transfer_bale_config_delivery`,`abroad_inbound_config_delivery`,`inspection_config_delivery`,`inspection_delivery`,`transfer_delivery`,`daily_weighted_sales`,`transfer_bale_delivery`,`abroad_inbound_delivery`,`quantity_final_advise`)
_connection.Execute(@"REPLACE INTO dc_base_forecast_history_air (`bailun_sku`,`warehouse_code`,`bailun_sku_warehouse_code`,`date`,`date_str`,`create_date`,`sales`,`turnover_days`,`quantity_safe_inventory`,`supplier_delivery`,`transfer_config_delivery`,`transfer_bale_config_delivery`,`abroad_inbound_config_delivery`,`inspection_config_delivery`,`inspection_delivery`,`transfer_delivery`,`daily_weighted_sales`,`transfer_bale_delivery`,`abroad_inbound_delivery`,`quantity_final_advise`,`usable_stock`,`quantity_transfer`,`quantity_purchase`)
(
select
bailun_sku,
warehouse_code,
CONCAT(bailun_sku,warehouse_code) as 'bailun_sku_warehouse_code',
gmt_modified as 'date',
DATE_FORMAT(gmt_modified,'%Y-%m-%d') as 'date_str',
t1.bailun_sku,
t1.warehouse_code,
CONCAT(t1.bailun_sku,t1.warehouse_code) as 'bailun_sku_warehouse_code',
t1.gmt_modified as 'date',
DATE_FORMAT(t1.gmt_modified,'%Y-%m-%d') as 'date_str',
now() as 'create_date',
forecast_oneday_sales as 'sales',
turnover_days as 'turnover_days',
quantity_safe_inventory as 'quantity_safe_inventory',
supplier_delivery as 'supplier_delivery',
transfer_config_delivery as 'transfer_config_delivery',
transfer_bale_config_delivery as 'transfer_bale_config_delivery',
abroad_inbound_config_delivery as 'abroad_inbound_config_delivery',
inspection_config_delivery as 'inspection_config_delivery',
inspection_delivery as 'inspection_delivery',
transfer_delivery as 'transfer_delivery',
daily_weighted_sales as 'daily_weighted_sales',
transfer_bale_delivery as 'transfer_bale_delivery',
abroad_inbound_delivery as 'abroad_inbound_delivery',
quantity_final_advise as 'quantity_final_advise'
from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
t1.forecast_oneday_sales as 'sales',
t1.turnover_days as 'turnover_days',
t1.quantity_safe_inventory as 'quantity_safe_inventory',
t1.supplier_delivery as 'supplier_delivery',
t1.transfer_config_delivery as 'transfer_config_delivery',
t1.transfer_bale_config_delivery as 'transfer_bale_config_delivery',
t1.abroad_inbound_config_delivery as 'abroad_inbound_config_delivery',
t1.inspection_config_delivery as 'inspection_config_delivery',
t1.inspection_delivery as 'inspection_delivery',
t1.transfer_delivery as 'transfer_delivery',
t1.daily_weighted_sales as 'daily_weighted_sales',
t1.transfer_bale_delivery as 'transfer_bale_delivery',
t1.abroad_inbound_delivery as 'abroad_inbound_delivery',
t1.quantity_final_advise as 'quantity_final_advise',
t2.usable_stock as 'usable_stock',
t3.quantity_transfer as 'quantity_transfer',
t3.quantity_purchase as 'quantity_purchase'
from dc_auto_turnover_air as t1
left join dc_base_stock as t2 on t1.bailun_sku = t2.bailun_sku and t1.warehouse_code =t2.warehouse_code
left join dc_mid_transit as t3 on t1.bailun_sku = t3.bailun_sku and t1.warehouse_code =t3.warehouse_code
where t1.gmt_modified>=@btime and t1.gmt_modified<=@etime
)
", new { btime = DateTime.Now.ToDayHome(), etime = DateTime.Now.ToDayEnd() }, commandTimeout: 0);
}
......@@ -1291,10 +1309,10 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
});
// 周转天数 * 加权日均
modalData.quantity_final_advise = (int)Math.Round(result.quantity_safe_inventory + (result.daily_weighted_sales * result.turnover_days));
modalData.quantity_final_advise = (int)Math.Round(result.turnover_sales +result.quantity_safe_inventory );
datas.FirstOrDefault(s => s.name == "实际建议周转数").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.quantity_final_advise
});
......@@ -1305,16 +1323,12 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
date = this_time,
val = modalData.quantity_final_advise_amount
});
if (this_time.ToString("MM-dd")=="02-25")
{
}
// 在库+在途
modalData.turnover = dc_mid_transit_data+ dc_stock_data;
datas.FirstOrDefault(s => s.name == "实际周转数").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.turnover
});
......@@ -1342,7 +1356,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
modalData.turnover_amount = modalData.turnover* modalData.unit_price;
modalData.quantity_final_advise_ocean = (int)Math.Round(result_ocean.quantity_safe_inventory + (result_ocean.daily_weighted_sales * result_ocean.turnover_days));
modalData.quantity_final_advise_ocean = (int)Math.Round(result_ocean.turnover_sales + result_ocean.turnover_sales);
datas.FirstOrDefault(s => s.name == "海运周转数(推荐海运)").days.Add(new transfer_profit_dto.day_dto
{
date = this_time,
......@@ -1361,10 +1375,10 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
val = modalData.freight_price_ocean
});
modalData.quantity_final_advise_air = (int)Math.Round(result_air.quantity_safe_inventory + (result_air.daily_weighted_sales * result_air.turnover_days));
modalData.quantity_final_advise_air = (int)Math.Round(result_air.turnover_sales + result_air.quantity_safe_inventory);
datas.FirstOrDefault(s => s.name == "空运周转数(推荐空运)").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.quantity_final_advise_air
});
......@@ -1434,7 +1448,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
});
datas.FirstOrDefault(s => s.name == "安全库存数量").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = quantity_safe_inventory
});
......@@ -1483,7 +1497,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
modalData.quantity_final_advise = ((dc_base_forecast_historydata.turnover_days * dc_base_forecast_historydata.daily_weighted_sales) + dc_base_forecast_historydata.quantity_safe_inventory);
datas.FirstOrDefault(s => s.name == "实际建议周转数").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.quantity_final_advise
});
......@@ -1502,7 +1516,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
});
datas.FirstOrDefault(s => s.name == "实际周转数").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.purchase_quantity
});
......@@ -1540,7 +1554,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
datas.FirstOrDefault(s => s.name == "海运周转数(推荐海运)").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.quantity_final_advise_ocean
});
......@@ -1571,7 +1585,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
datas.FirstOrDefault(s => s.name == "空运周转数(推荐空运)").days.Add(new transfer_profit_dto.day_dto
{
has_int = true,
has_int = false,
date = this_time,
val = modalData.quantity_final_advise_air
});
......@@ -1661,125 +1675,7 @@ from dc_auto_turnover_air where gmt_modified>=@btime and gmt_modified<=@etime
}
}
public class transfer_profit_modal_dto
{
/// <summary>
/// 实际建议周转数
/// </summary>
internal decimal? quantity_final_advise;
/// <summary>
/// 实际周转数
/// </summary>
internal int? turnover;
/// <summary>
/// 实际建议周转金额
/// </summary>
internal decimal? quantity_final_advise_amount;
/// <summary>
/// 实际周转金额
/// </summary>
internal decimal? turnover_amount;
/// <summary>
/// 实际周转数
/// </summary>
internal decimal? purchase_quantity;
/// <summary>
/// 实际运费单价
/// </summary>
internal decimal? freight_unit_price;
/// <summary>
/// 实际周转运费
/// </summary>
internal decimal? freight_price;
/// <summary>
/// 海运周转数(推荐海运)
/// </summary>
internal decimal? quantity_final_advise_ocean;
/// <summary>
/// 海运周转运费
/// </summary>
internal decimal? freight_price_ocean;
/// <summary>
/// 海运运费单价
/// </summary>
internal decimal freight_unit_price_ocean;
/// <summary>
/// 空运运费单价
/// </summary>
internal decimal freight_unit_price_air;
/// <summary>
/// 空运周转数(推荐空运)
/// </summary>
internal decimal? quantity_final_advise_air;
/// <summary>
/// 实际-海运周转运费差值
/// </summary>
internal decimal? freight_price_ocean_difference_amount;
/// <summary>
/// 空运周转金额
/// </summary>
internal decimal? quantity_final_advise_air_amount;
/// <summary>
/// 空运周转运费
/// </summary>
internal decimal? freight_price_air;
/// <summary>
/// 实际-空运运费差值
/// </summary>
internal decimal? freight_price_air_difference;
/// <summary>
/// 海运周转金额
/// </summary>
internal decimal? quantity_final_advise_ocean_amount;
/// <summary>
/// 实际-海运周转采购金额差值
/// </summary>
internal decimal? quantity_final_ocean_difference_amount;
/// <summary>
/// 实际-空运周转采购金额差值
/// </summary>
internal decimal? quantity_final_air_difference_amount;
/// <summary>
/// 海运-空运运费差值
/// </summary>
internal decimal? freight_price_ocean_air_difference;
/// <summary>
/// 海运-空运周转采购金额差值
/// </summary>
internal decimal? quantity_final__ocean_air_difference_amount;
/// <summary>
/// 实际-空运运费差值
/// </summary>
internal decimal? freight_price_air_difference_amount;
/// <summary>
/// 实际建议周转运费
/// </summary>
internal decimal? quantity_final_advise_freight;
/// <summary>
/// 采购单价
/// </summary>
public decimal? unit_price { get; set; }
}
......
using System;
using System.Collections.Generic;
using System.Text;
namespace AutoTurnOver.Models.Report
{
public class transfer_profit_modal_dto
{
/// <summary>
/// 实际建议周转数
/// </summary>
public decimal? quantity_final_advise;
/// <summary>
/// 实际周转数
/// </summary>
public int? turnover;
/// <summary>
/// 实际建议周转金额
/// </summary>
public decimal? quantity_final_advise_amount;
/// <summary>
/// 实际周转金额
/// </summary>
public decimal? turnover_amount;
/// <summary>
/// 实际周转数
/// </summary>
public decimal? purchase_quantity;
/// <summary>
/// 实际运费单价
/// </summary>
public decimal? freight_unit_price;
/// <summary>
/// 实际周转运费
/// </summary>
public decimal? freight_price;
/// <summary>
/// 海运周转数(推荐海运)
/// </summary>
public decimal? quantity_final_advise_ocean;
/// <summary>
/// 海运周转运费
/// </summary>
public decimal? freight_price_ocean;
/// <summary>
/// 海运运费单价
/// </summary>
public decimal freight_unit_price_ocean;
/// <summary>
/// 空运运费单价
/// </summary>
public decimal freight_unit_price_air;
/// <summary>
/// 空运周转数(推荐空运)
/// </summary>
public decimal? quantity_final_advise_air;
/// <summary>
/// 实际-海运周转运费差值
/// </summary>
public decimal? freight_price_ocean_difference_amount;
/// <summary>
/// 空运周转金额
/// </summary>
public decimal? quantity_final_advise_air_amount;
/// <summary>
/// 空运周转运费
/// </summary>
public decimal? freight_price_air;
/// <summary>
/// 实际-空运运费差值
/// </summary>
public decimal? freight_price_air_difference;
/// <summary>
/// 海运周转金额
/// </summary>
public decimal? quantity_final_advise_ocean_amount;
/// <summary>
/// 实际-海运周转采购金额差值
/// </summary>
public decimal? quantity_final_ocean_difference_amount;
/// <summary>
/// 实际-空运周转采购金额差值
/// </summary>
public decimal? quantity_final_air_difference_amount;
/// <summary>
/// 海运-空运运费差值
/// </summary>
public decimal? freight_price_ocean_air_difference;
/// <summary>
/// 海运-空运周转采购金额差值
/// </summary>
public decimal? quantity_final__ocean_air_difference_amount;
/// <summary>
/// 实际-空运运费差值
/// </summary>
public decimal? freight_price_air_difference_amount;
/// <summary>
/// 实际建议周转运费
/// </summary>
public decimal? quantity_final_advise_freight;
/// <summary>
/// 采购单价
/// </summary>
public decimal? unit_price { get; set; }
}
}
......@@ -17,6 +17,7 @@ namespace ResetOutofstock
{
var now = DateTime.Now;
dc_auto_turnover.CopyForecast();
//report.GenerateWeekTagStockDatas();
//dc_base_transfer_extend_dao.SynchroLmsTransferOrder();
}
......
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