Commit 8f997c90 by 泽锋 李

1、利润最大化:点击去到产品库

2、利润最大化:字段放后面,
3、利润最大化:汇总行
4、利润最大化:上前3列固定列,显示异常
parent 538033e2
......@@ -2031,15 +2031,56 @@ order by t1.gmt_modified asc
/// <param name="sku">sku</param>
/// <param name="warehouse_code">仓库编码</param>
/// <returns></returns>
public static List<dc_report_profit_analysis> ProfitAnalysis(Condition_AutoTurnOver m, int offset, int limit, ref int total, string order = "", string sort = "", bool isSum = false)
public static List<dc_report_profit_analysis_dto> ProfitAnalysis(Condition_AutoTurnOver m, int offset, int limit, ref int total, string order = "", string sort = "", bool isSum = false)
{
DynamicParameters parameters = new DynamicParameters();
var sql = "";
sql = @" select ta.* from dc_report_profit_analysis as ta
if (m.isSum)
{
sql = @"
select
AVG(ta.sales_avg_180) as 'sales_avg_180',
AVG(ta.sales_avg_90) as 'sales_avg_90',
AVG(ta.sales_avg_30) as 'sales_avg_30',
AVG(ta.sales_avg_7) as 'sales_avg_7',
sum(ta.quantity_final_advise) as 'quantity_final_advise',
sum(ta.quantity_final_advise_amount) as 'quantity_final_advise_amount',
sum(ta.turnover) as 'turnover',
sum(ta.freight_price) as 'freight_price',
sum(ta.freight_unit_price) as 'freight_unit_price',
sum(ta.quantity_final_advise_ocean) as 'quantity_final_advise_ocean',
sum(ta.quantity_final_advise_ocean_amount) as 'quantity_final_advise_ocean_amount',
sum(ta.freight_price_ocean) as 'freight_price_ocean',
sum(ta.quantity_final_advise_air) as 'quantity_final_advise_air',
sum(ta.quantity_final_advise_air_amount) as 'quantity_final_advise_air_amount',
sum(ta.freight_price_air) as 'freight_price_air',
sum(ta.freight_price_ocean_difference_amount) as 'freight_price_ocean_difference_amount',
sum(ta.quantity_final_ocean_difference_amount) as 'quantity_final_ocean_difference_amount',
sum(ta.freight_price_air_difference_amount) as 'freight_price_air_difference_amount',
sum(ta.quantity_final_air_difference_amount) as 'quantity_final_air_difference_amount',
sum(ta.freight_price_ocean_air_difference) as 'freight_price_ocean_air_difference',
sum(ta.quantity_final__ocean_air_difference_amount) as 'quantity_final__ocean_air_difference_amount',
sum(ta.quantity_safe_inventory) as 'quantity_safe_inventory',
sum(ta.freight_price_ocean_30_difference) as 'freight_price_ocean_30_difference',
sum(ta.freight_price_air_30_difference) as 'freight_price_air_30_difference',
sum(ta.freight_price_air_ocean_30_difference) as 'freight_price_air_ocean_30_difference',
sum(ta.ocean_purchase) as 'ocean_purchase',
sum(ta.ocean_purchase_amount) as 'ocean_purchase_amount'
from dc_report_profit_analysis as ta
left join dc_auto_turnover as dat on dat.warehouse_code = ta.warehouse_code and dat.bailun_sku = ta.bailun_sku
left join dc_base_sku as t4 on dat.bailun_sku = t4.bailun_sku
";
}
else
{
sql = @" select ta.*,t4.product_code from dc_report_profit_analysis as ta
left join dc_auto_turnover as dat on dat.warehouse_code = ta.warehouse_code and dat.bailun_sku = ta.bailun_sku
left join dc_base_sku as t4 on dat.bailun_sku = t4.bailun_sku
";
}
var sqlCount = @"
select
......@@ -2061,7 +2102,6 @@ left join dc_auto_turnover as dat on dat.warehouse_code = ta.warehouse_code and
if (m.categoryModels != null || (!string.IsNullOrWhiteSpace(m.product_type)))
{
sqlCount += " left join dc_base_sku as t4 on dat.bailun_sku = t4.bailun_sku ";
sql += " left join dc_base_sku as t4 on dat.bailun_sku = t4.bailun_sku ";
}
if (m.monitor_status != null)
{
......@@ -2313,7 +2353,7 @@ left join dc_auto_turnover as dat on dat.warehouse_code = ta.warehouse_code and
}
if (limit > 1000)
if (limit > 1000 || m.isSum)
{
total = 0;
}
......@@ -2343,7 +2383,7 @@ left join dc_auto_turnover as dat on dat.warehouse_code = ta.warehouse_code and
}
}
sql += " limit " + offset + "," + limit;
var obj = _connection.Query<dc_report_profit_analysis>(sql, parameters, buffered: false, commandTimeout: 0).AsList();
var obj = _connection.Query<dc_report_profit_analysis_dto>(sql, parameters, buffered: false, commandTimeout: 0).AsList();
return obj;
}
......
......@@ -309,6 +309,8 @@ namespace AutoTurnOver.Models
public class Condition_AutoTurnOver
{
public bool isSum { get; set; }
[Description("sku标签")]
public string sku_label { get; set; }
......
......@@ -292,4 +292,8 @@ namespace AutoTurnOver.Models
/// </summary>
public string formula_json { get; set;}
}
public class dc_report_profit_analysis_dto: dc_report_profit_analysis {
public string product_code { get; set; }
}
}
......@@ -689,7 +689,7 @@ namespace AutoTurnOver.Services
return DB.dc_auto_turnover.TransferProfitList(bailun_sku, warehouse_code);
}
public List<dc_report_profit_analysis> ProfitAnalysis(Condition_AutoTurnOver m, int offset, int limit, ref int total, string order = "", string sort = "")
public List<dc_report_profit_analysis_dto> ProfitAnalysis(Condition_AutoTurnOver m, int offset, int limit, ref int total, string order = "", string sort = "")
{
if (!string.IsNullOrWhiteSpace(m.categoryIds))
{
......
......@@ -93,6 +93,18 @@ namespace AutoTurnOver.Controllers
}
[NoLogin]
public JsonResult ProfitAnalysisSumFooter([FromQuery]Condition_AutoTurnOver m)
{
var services = new SkuAutoTurnServices();
var total = 0;
m.isSum = true;
var list = services.ProfitAnalysis(m, 0, 1, ref total, "", "");
return new JsonResult(list == null || list.Count <= 0 ? new dc_report_profit_analysis_dto() : list[0]);
}
public JsonResult ExportProfitAnalysis([FromQuery] dc_base_stock_search_dto search_data)
{
try
......
......@@ -22,11 +22,11 @@ namespace ResetOutofstock
//dc_base_transfer_extend_dao.SynchroLmsTransferOrder();
//dc_base_supplier_dao.SynchroBailunLmsChannel();
//dc_base_trans_temp_schedule_dao.SynchroTransTempScheduleData(true);
//dc_auto_turnover.CalculationProfitAnalysis("944766402", "ESFBABLEM");
//dc_auto_turnover.CalculationProfitAnalysis("946549801", "GB4PXBL");
//dc_auto_turnover.SynchroCalculationProfitAnalysis();
//dc_auto_turnover.SynchroCalculationProfitAnalysis();
//dc_base_transfer_freight_dao.CalculationSingle("944913201", "MMDUSFBA");
//dc_base_transfer_freight_dao.CalculationSingle("946549801", "GB4PXBL");
//dc_base_transfer_freight_dao.Init();
}
catch (Exception ex)
......
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