Commit 69b2df6a by 泽锋 李

fix

parent f48eed5b
......@@ -1719,6 +1719,43 @@ truncate table dc_base_stock_record_temp;
", commandTimeout: 0);
_connection.Execute(@" -- 刷新sku汇总
set session transaction isolation level read uncommitted;
start transaction;
-- 清空视图表的数据
Truncate table dc_base_sku_sum_temp;
insert into dc_base_sku_sum_temp(`bailun_sku`,
`usable_stock`,
`on_the_way`,
`stock_amount`,
`on_the_way_amount` ,
`history_sevenday_sales`,
`history_fourteenday_sales`,
`history_thirtyday_sales`)
(
select t1.bailun_sku,sum(t1.usable_stock) as 'usable_stock',sum(ifnull(t5.quantity_transfer,0)+ifnull(t5.quantity_purchase,0)) as 'on_the_way',
sum(ifnull(t1.usable_stock,0) * ifnull(t2.unit_price,0)) as 'stock_amount',(ifnull(t5.quantity_transfer,0)+ifnull(t5.quantity_purchase,0)) as 'on_the_way_amount',
AVG(ifnull(t8.history_sevenday_sales,0)) as 'history_sevenday_sales',AVG(ifnull(t8.history_fourteenday_sales,0)) as 'history_fourteenday_sales',AVG(ifnull(t8.history_thirtyday_sales,0)) as 'history_thirtyday_sales'
from
dc_base_stock as t1
left join dc_base_sku as t2 on t1.bailun_sku=t2.bailun_sku
left join dc_mid_transit as t5 on t1.bailun_sku = t5.bailun_sku and t1.warehouse_code = t5.warehouse_code
left join dc_auto_config_sku_warehouse as t7 on t1.bailun_sku = t7.bailun_sku and t1.warehouse_code = t7.warehouse_code
left join dc_auto_turnover as t8 on t1.bailun_sku = t8.bailun_sku and t1.warehouse_code = t8.warehouse_code
group by t1.bailun_sku
);
alter table dc_base_sku_sum rename dc_base_sku_sumTemp;
alter table dc_base_sku_sum_temp rename dc_base_sku_sum;
alter table dc_base_sku_sumTemp rename dc_base_sku_sum_temp;
truncate table dc_base_sku_sum_temp;
", commandTimeout: 0);
}
catch (Exception ex)
......@@ -1778,9 +1815,8 @@ start transaction;
-- 清空视图表的数据
Truncate table dc_report_cash_flow_sku_group_temp;
insert dc_report_cash_flow_sku_group_temp(`warehouse_code`,`bailun_sku`,`balance`,`current_date_begin`,`current_date_end`,`last_date_begin`,`last_date_end`,`current_income`,`current_expend`,`last_income`,`last_expend`,`type`)
insert dc_report_cash_flow_sku_group_temp(`bailun_sku`,`balance`,`current_date_begin`,`current_date_end`,`last_date_begin`,`last_date_end`,`current_income`,`current_expend`,`last_income`,`last_expend`,`type`)
select
warehouse_code,
bailun_sku,
sum(val) as 'balance',
@btime as current_date_begin,
......@@ -1793,9 +1829,9 @@ sum(case when occur_time<@btime and data_type in (2) then val else 0 end ) as 'l
sum(case when occur_time<@btime and data_type not in (2) then val else 0 end ) as 'last_expend',
1 as 'type'
from dc_report_cash_flow_log where occur_time>=@lastBtime and data_type in (2,3,5,8,9,10,11,12)
GROUP BY bailun_sku,warehouse_code;
GROUP BY bailun_sku;
insert dc_report_cash_flow_sku_group_temp(`warehouse_code`,`bailun_sku`,`balance`,`current_date_begin`,`current_date_end`,`last_date_begin`,`last_date_end`,`current_income`,`current_expend`,`last_income`,`last_expend`,`type`)
insert dc_report_cash_flow_sku_group_temp(`bailun_sku`,`balance`,`current_date_begin`,`current_date_end`,`last_date_begin`,`last_date_end`,`current_income`,`current_expend`,`last_income`,`last_expend`,`type`)
select
warehouse_code,
bailun_sku,
......@@ -1810,7 +1846,7 @@ sum(case when pay_time<@btime and data_type in (2) then val else 0 end ) as 'las
sum(case when pay_time<@btime and data_type not in (2) then val else 0 end ) as 'last_expend',
2 as 'type'
from dc_report_cash_flow_log where pay_time>=@lastBtime and data_type in (2,3,5,8,9,10,11,12)
GROUP BY bailun_sku,warehouse_code;
GROUP BY bailun_sku;
alter table dc_report_cash_flow_sku_group rename dc_report_cash_flow_sku_groupTemp;
......
......@@ -1057,7 +1057,17 @@ where t1.create_time>=@btime and t1.create_time<=@etime ";
{
search.data_type = 1;
}
var sql = " select t1.*,t2.sku_title_cn as 'sku_name',t2.`status` as 'sku_status',t2.buyer_name from dc_report_cash_flow_sku_group as t1 left join dc_base_sku as t2 on t1.bailun_sku=t2.bailun_sku where t1.type=@type ";
var sql = @" select t1.*,t2.sku_title_cn as 'sku_name',t2.`status` as 'sku_status',t2.buyer_name,t3.warehouse_extend_name as 'warehouse_name',ifnull(t4.usable_stock,0) as 'usable_stock',(ifnull(t5.quantity_transfer,0)+ifnull(t5.quantity_purchase,0)) as 'on_the_way',
(ifnull(t4.usable_stock,0) * t2.unit_price) as 'stock_amount',(ifnull(t5.quantity_transfer,0)+ifnull(t5.quantity_purchase,0)) as 'on_the_way_amount',ifnull(t8.history_sevenday_sales,0) as 'history_sevenday_sales',ifnull(t8.history_fourteenday_sales,0) as 'history_fourteenday_sales',ifnull(t8.history_thirtyday_sales,0) as 'history_thirtyday_sales'
from dc_report_cash_flow_sku_group as t1
left join dc_base_sku as t2 on t1.bailun_sku=t2.bailun_sku
left join dc_base_warehouse as t3 on t1.warehouse_code = t3.warehouse_code
left join dc_base_stock as t4 on t1.bailun_sku = t4.bailun_sku and t1.warehouse_code = t4.warehouse_code
left join dc_mid_transit as t5 on t1.bailun_sku = t5.bailun_sku and t1.warehouse_code = t5.warehouse_code
left join dc_auto_config_sku_label as t6 on t1.bailun_sku = t6.bailun_sku
left join dc_auto_config_sku_warehouse as t7 on t1.bailun_sku = t7.bailun_sku and t1.warehouse_code = t7.warehouse_code
left join dc_auto_turnover as t8 on t1.bailun_sku = t8.bailun_sku and t1.warehouse_code = t8.warehouse_code
where t1.type=@type ";
DynamicParameters parameters = new DynamicParameters();
parameters.Add("type", search.data_type);
......@@ -1066,6 +1076,47 @@ where t1.create_time>=@btime and t1.create_time<=@etime ";
sql += " and t1.bailun_sku=@bailun_sku ";
parameters.Add("bailun_sku", search.bailun_sku);
}
if (!string.IsNullOrWhiteSpace(search.sku_label))
{
sql += " and t6.label=@sku_label ";
parameters.Add("sku_label", search.sku_label);
}
if (!string.IsNullOrWhiteSpace(search.buyer_name))
{
sql += " and t2.buyer_name = @buyer_name";
parameters.Add("buyer_name", search.buyer_name);
}
if (search.monitor_status == 1)
{
sql += " and t7.`status`=1 ";
}
if (search.monitor_status == 0)
{
sql += " and ( t7.`status`=0 or t7.`status` is null ) ";
}
if (!string.IsNullOrWhiteSpace(search.supplier_name))
{
sql += " and t2.suppliers_name =@suppliers_name ";
parameters.Add("suppliers_name", search.supplier_name);
}
if (search.warehouse_code != null)
{
sql += $" and t1.warehouse_code=@warehouse_code ";
parameters.Add("warehouse_code", search.warehouse_code);
}
else
{
if (!string.IsNullOrWhiteSpace(search.warehousetype))
{
sql += " and t3.hq_type=" + $"'{search.warehousetype}'";
}
if (search.warehousearea > 0)
{
sql += " and t3.area_id=" + search.warehousearea;
}
}
return _connection.Page<dc_report_cash_flow_sku_group_dto>(sql, search, parameters);
}
......
......@@ -69,7 +69,7 @@ namespace AutoTurnOver.Models
public int data_type { get; set; }
}
public class dc_report_cash_flow_log_dto: dc_report_cash_flow_log
public class dc_report_cash_flow_log_dto : dc_report_cash_flow_log
{
public string data_type_str
{
......@@ -88,17 +88,17 @@ namespace AutoTurnOver.Models
public enum dc_report_cash_flow_log_data_type_enum
{
销售数量 = 1,
销售金额 =2,
销售金额 = 2,
退款 = 3,
利润 = 4,
平台费用 = 5,
释放销售成本 = 6,
释放头程费用 = 7,
尾程费用 =8,
尾程费用 = 8,
新增采购费用 = 9,
新增头程费用 = 10,
FBA = 11,
PayPal =12
PayPal = 12
}
public enum dc_report_cash_flow_log_pay_type_enum
......@@ -144,15 +144,23 @@ namespace AutoTurnOver.Models
{
public string data_type { get; set; }
}
public class dc_report_cash_flow_config_dto: dc_report_cash_flow_config
public class dc_report_cash_flow_config_dto : dc_report_cash_flow_config
{
public string data_type_str
{
get
{
public string data_type_str { get {
return ((dc_report_cash_flow_log_data_type_enum)data_type).ToString();
} }
}
}
public string settlement_type_str { get {
public string settlement_type_str
{
get
{
return ((dc_report_cash_flow_settlement_type_enum)settlement_type).ToString();
} }
}
}
}
......@@ -197,6 +205,7 @@ namespace AutoTurnOver.Models
{
public int id { get; set; }
public string bailun_sku { get; set; }
public string warehouse_code { get; set; }
public decimal balance { get; set; }
public DateTime current_date_begin { get; set; }
public DateTime current_date_end { get; set; }
......@@ -208,16 +217,64 @@ namespace AutoTurnOver.Models
public decimal last_expend { get; set; }
public decimal type { get; set; }
}
public class dc_report_cash_flow_sku_group_dto: dc_report_cash_flow_sku_group
public class dc_report_cash_flow_sku_group_dto : dc_report_cash_flow_sku_group
{
public string sku_name { get; set; }
public int sku_status { get; set; }
public string buyer_name { get; set; }
public string warehouse_name { get; set; }
/// <summary>
/// 可用库存
/// </summary>
public decimal usable_stock { get; set; }
/// <summary>
/// 在途数量
/// </summary>
public decimal on_the_way { get; set; }
/// <summary>
/// 在途金额
/// </summary>
public decimal on_the_way_amount { get; set; }
/// <summary>
/// 库存金额
/// </summary>
public decimal stock_amount { get; set; }
/// <summary>
/// 过去7天日均
/// </summary>
public decimal history_sevenday_sales { get; set; }
/// <summary>
/// 过去14天日均
/// </summary>
public decimal history_fourteenday_sales { get; set; }
/// <summary>
/// 过去30天日均
/// </summary>
public decimal history_thirtyday_sales { get; set; }
}
public class dc_report_cash_flow_sku_group_search_dto: page_search_dto
public class dc_report_cash_flow_sku_group_search_dto : page_search_dto
{
public string bailun_sku { get; set; }
public int? data_type { get; set; }
public string warehousetype { get; set; }
public int? warehousearea { get; set; }
public string warehouse_code { get; set; }
public string sku_label { get; set; }
/// <summary>
/// 监控状态
/// 1= 停止监控
/// 0 = 开启监控
/// </summary>
public int? monitor_status { get; set; }
public string buyer_name { get; set; }
public string supplier_name { get; set; }
}
}
......@@ -87,7 +87,7 @@ namespace AutoTurnOver.Controllers
return File(memory, "text/csv", "现金流明细.csv");
}
public JsonResult GetSkuView(string bailun_sku, int offset, int limit, string order, string sort)
public JsonResult GetSkuView(int? data_type , string sku_label, string bailun_sku, int offset, int limit, string order, string sort, string buyer_name, string warehousecode, string supplier_name, string warehousetype, int? warehousearea, int? monitor_status = null)
{
try
{
......@@ -98,6 +98,14 @@ namespace AutoTurnOver.Controllers
rows = limit,
sidx = sort,
sord = order,
buyer_name = buyer_name,
sku_label = sku_label,
data_type = data_type,
monitor_status = monitor_status,
supplier_name = supplier_name,
warehousearea = warehousearea,
warehousetype = warehousetype,
warehouse_code = warehousecode
};
var services = new CashFlowServices();
var page_data = services.SkuView(m);
......
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