Commit d16103d2 by 泽锋 李

新增全链路在途订单

parent 9b94f1bd
...@@ -277,6 +277,303 @@ where t1.is_delete=0 and t1.is_temp_data=1 and t1.is_exception=0 and t2.hq_type ...@@ -277,6 +277,303 @@ where t1.is_delete=0 and t1.is_temp_data=1 and t1.is_exception=0 and t2.hq_type
return datas; return datas;
} }
/// <summary>
/// 全链路在途订单
/// </summary>
/// <param name="search_data"></param>
/// <param name="categoryModels"></param>
/// <param name="total"></param>
/// <returns></returns>
public static List<dc_base_full_link_wait_order_dto> FullLinkWaitPage(dc_base_full_link_search_dto search_data, List<bailun_category_new_dto> categoryModels, ref int total)
{
DynamicParameters parameters = new DynamicParameters();
var sql = "";
if (search_data.isSum || search_data.is_warehouse_sum)
{
sql = @"
select
sum(ifnull(t1.purchase_quantity,0)) as 'purchase_quantity',
sum(ifnull(t1.purchase_quantity_arrival,0)) as 'purchase_quantity_arrival',
sum(ifnull(t1.purchase_quantity_inbound,0)) as 'purchase_quantity_inbound',
sum(ifnull(t1.purchase_quantity_not_inbound,0)) as 'purchase_quantity_not_inbound',
sum(ifnull(t1.transfer_quantity_not_inbound,0)) as 'transfer_quantity_not_inbound',
sum(ifnull(t1.transfer_quantity,0)) as 'transfer_quantity',
sum(ifnull(t1.transfer_put_quantity,0)) as 'transfer_put_quantity'
from dc_base_full_link_wait_order as t1
left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code
";
if ((categoryModels != null && categoryModels.Count >= 1) || !string.IsNullOrWhiteSpace(search_data.buyer_name) || search_data.product_type > 0)
{
sql += " left join dc_base_sku as t3 on t1.bailun_sku = t3.bailun_sku ";
}
if (search_data.has_tort != null)
{
sql += " left join dc_base_tort as t9 on t1.bailun_sku = t9.bailun_sku ";
}
if (search_data.monitor_status != null)
{
sql += " left join dc_auto_config_sku_warehouse as t10 on t1.bailun_sku = t10.bailun_sku and t1.warehouse_code = t10.warehouse_code ";
}
sql += " where 1=1 ";
}
else
{
sql = @"
select
t1.*,
t2.warehouse_name as 'warehouse_name',
t3.sku_title_cn as 'product_title',
t3.buyer_name as 'buyer_name',
t3.product_type_desc as 'product_type_desc',
t4.usable_stock as 'stock',
t6.history_sevenday_sales as 'history_sevenday_sales',
t6.history_fourteenday_sales as 'history_fourteenday_sales',
t6.history_thirtyday_sales as 'history_thirtyday_sales',
t7.type as 'forecast_type',
t8.`status` as 'prod_status',
t8.distribution_quantity as 'prod_distribution_quantity',
( t8.order_quantity - t8.distribution_quantity) as 'prod_not_distribution_quantity',
t8.prod_quantity as 'prod_quantity',
t11.expectarrivaltime as 'lms_expectarrivaltime',
t11.sign_time as 'lms_sign_time',
t11.put_time as 'lms_put_time',
t11.collect_time as 'lms_collect_time',
t11.flight_time as 'lms_flight_time',
t11.transport_time as 'lms_transport_time',
t11.ascan_time as 'lms_ascan_time',
t11.arrival_time as 'lms_arrival_time',
t11.clearance_time as 'lms_clearance_time',
t11.sail_time as 'lms_sail_time',
t11.node_date as 'lms_node_date',
t11.node_name as 'lms_node_name',
t11.transfer_no as 'lms_transfer_no',
t11.trackingno as 'lms_trackingno'
from dc_base_full_link_wait_order as t1
left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code
left join dc_base_sku as t3 on t1.bailun_sku = t3.bailun_sku
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_turnover as t6 on t1.bailun_sku = t6.bailun_sku and t1.warehouse_code = t6.warehouse_code
left join dc_auto_forecast_fluctuation as t7 on t1.bailun_sku = t7.bailun_sku and t1.warehouse_code = t7.warehouse_code
left join dc_base_prod_order as t8 on t1.bailun_sku = t8.bailun_sku and t1.purchase_no = t8.purchase_no
left join dc_lms_order_transfer_current_node as t11 on t1.transfer_no = t11.system_order_no and t1.bailun_sku = t11.sku
";
if (search_data.has_tort != null)
{
sql += " left join dc_base_tort as t9 on t1.bailun_sku = t9.bailun_sku ";
}
if (search_data.monitor_status != null)
{
sql += " left join dc_auto_config_sku_warehouse as t10 on t1.bailun_sku = t10.bailun_sku and t1.warehouse_code = t10.warehouse_code ";
}
sql += " where 1=1 ";
}
var countSql = @"
select
1
from dc_base_full_link_wait_order as t1
left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code
left join dc_lms_order_transfer_current_node as t11 on t1.transfer_no = t11.system_order_no and t1.bailun_sku = t11.sku
";
if ((categoryModels != null && categoryModels.Count >= 1) || !string.IsNullOrWhiteSpace(search_data.buyer_name) || search_data.product_type > 0)
{
countSql += " left join dc_base_sku as t3 on t1.bailun_sku = t3.bailun_sku ";
}
if (search_data.has_tort != null)
{
countSql += " left join dc_base_tort as t9 on t1.bailun_sku = t9.bailun_sku ";
}
if (search_data.monitor_status != null)
{
countSql += " left join dc_auto_config_sku_warehouse as t10 on t1.bailun_sku = t10.bailun_sku and t1.warehouse_code = t10.warehouse_code ";
}
countSql += " where 1=1 ";
if (search_data.f_start_date != null)
{
sql += " and t4.`first_inbound_date`>=@f_start_date ";
countSql += " and t4.`first_inbound_date`>=@f_start_date ";
parameters.Add("f_start_date", search_data.f_start_date.Value.ToString("yyyy-MM-dd 00:00:00"));
}
if (search_data.f_end_date != null)
{
sql += " and t4.`first_inbound_date`<=@f_end_date ";
countSql += " and t4.`first_inbound_date`<=@f_end_date ";
parameters.Add("f_end_date", search_data.f_end_date.Value.ToString("yyyy-MM-dd 23:59:59"));
}
if (search_data.start_date != null && search_data.end_date != null)
{
sql += " and t4.bailun_sku_warehouse_code in (select t_re.bailun_sku_warehouse_code from dc_base_stock_record_effective as t_re where t_re.stock_time >=@start_date and t_re.stock_time <=@end_date ) ";
countSql += " and t4.bailun_sku_warehouse_code in (select t_re.bailun_sku_warehouse_code from dc_base_stock_record_effective as t_re where t_re.stock_time >=@start_date and t_re.stock_time <=@end_date ) ";
parameters.Add("start_date", search_data.start_date.Value.ToString("yyyy-MM-dd 00:00:00"));
parameters.Add("end_date", search_data.end_date.Value.ToString("yyyy-MM-dd 23:59:59"));
}
if (categoryModels != null && categoryModels.Count >= 1)
{
sql += " and t3.category_simple_id in ( " + string.Join(",", categoryModels.Select(s => s.id).Distinct()) + ")";
countSql += " and t3.category_simple_id in ( " + string.Join(",", categoryModels.Select(s => s.id).Distinct()) + ")";
}
if (!string.IsNullOrWhiteSpace(search_data.buyer_name))
{
sql += " and t3.buyer_name = @buyer_name ";
countSql += " and t3.buyer_name = @buyer_name ";
parameters.Add("buyer_name", search_data.buyer_name);
}
if (!string.IsNullOrWhiteSpace(search_data.order_no))
{
sql += " and t1.transfer_no = @order_no ";
countSql += " and t1.transfer_no= @order_no ";
parameters.Add("order_no", search_data.order_no);
}
if (!string.IsNullOrWhiteSpace(search_data.order_no2))
{
sql += " and t1.purchase_no = @order_no2 ";
countSql += " and t1.purchase_no= @order_no2 ";
parameters.Add("order_no2", search_data.order_no2);
}
if (search_data.product_type > 0)
{
sql += " and t3.product_type = @product_type ";
countSql += " and t3.product_type = @product_type ";
parameters.Add("product_type", search_data.product_type);
}
if (search_data.monitor_status == 1)
{
sql += " and t10.`status`=1 ";
countSql += " and t10.`status`=1 ";
}
if (search_data.monitor_status == 0)
{
sql += " and ( t10.`status`=0 or t10.`status` is null ) ";
countSql += " and ( t10.`status`=0 or t10.`status` is null ) ";
}
if (search_data.has_tort != null)
{
if (search_data.has_tort == 0)
{
sql += " and t9.id is null ";
countSql += " and t9.id is null ";
}
else if (search_data.has_tort == 1)
{
sql += " and t9.id is not null ";
countSql += " and t9.id is not null ";
}
}
if (!string.IsNullOrWhiteSpace(search_data.warehousetype))
{
sql += " and t2.hq_type = @hq_type ";
countSql += " and t2.hq_type = @hq_type ";
parameters.Add("hq_type", search_data.warehousetype);
}
if (search_data.warehousearea > 0)
{
sql += " and t2.area_id = @area_id ";
countSql += " and t2.area_id = @area_id ";
parameters.Add("area_id", search_data.warehousearea);
}
if (search_data.searchType > 0 && !string.IsNullOrWhiteSpace(search_data.key_words))
{
switch (search_data.searchType)
{
case 1:
sql += " and t1.bailun_sku in @bailun_skus ";
countSql += " and t1.bailun_sku in @bailun_skus ";
parameters.Add("bailun_skus", search_data.key_words.Split(','));
break;
case 2:
sql += " and t1.bailun_sku like @bailun_sku ";
countSql += " and t1.bailun_sku like @bailun_sku ";
parameters.Add("bailun_sku", $"%{search_data.key_words}%");
break;
case 3:
sql += " and t3.product_inner_code like @product_inner_code ";
countSql += " and t3.product_inner_code like @product_inner_code ";
parameters.Add("product_inner_code", $"%{search_data.key_words}%");
break;
case 4:
sql += " and t3.sku_title_cn like @sku_title_cn ";
countSql += " and t3.sku_title_cn like @sku_title_cn ";
parameters.Add("sku_title_cn", $"%{search_data.key_words}%");
break;
case 5:
sql += " and t3.product_inner_code = @product_inner_code ";
countSql += " and t3.product_inner_code = @product_inner_code ";
parameters.Add("product_inner_code", $"{search_data.key_words}");
break;
}
}
if (!string.IsNullOrWhiteSpace(search_data.warehousecode))
{
sql += " and t1.warehouse_code=@warehouse_code ";
countSql += " and t1.warehouse_code=@warehouse_code ";
parameters.Add("warehouse_code", search_data.warehousecode);
}
if (!string.IsNullOrWhiteSpace(search_data.supplier_name))
{
sql += " and t3.suppliers_name =@suppliers_name ";
parameters.Add("suppliers_name", search_data.supplier_name);
}
if (search_data.isSum)
{
total = 0;
}
else
{
sql += " group by t1.`purchase_no`,t1.transfer_no,t1.bailun_sku,t11.transfer_no ";
countSql += " group by t1.`purchase_no`,t1.transfer_no,t1.bailun_sku,t11.transfer_no ";
if (search_data.limit > 1000)
{
total = 0;
}
else
{
total = _connection.Query<int>(countSql, parameters, commandTimeout: 0).Count();
}
if (!string.IsNullOrEmpty(search_data.sort) && !string.IsNullOrEmpty(search_data.order))
{
sql += " order by " + search_data.sort;
if (!string.IsNullOrEmpty(search_data.order))
{
sql += " " + search_data.order;
}
else
{
sql += " asc";
}
}
sql += " limit " + search_data.offset + "," + search_data.limit;
}
var obj = _connection.Query<dc_base_full_link_wait_order_dto>(sql, parameters, buffered: false, commandTimeout: 0).AsList();
foreach (var item in obj)
{
item.history_sevenday_sales = (item.history_sevenday_sales ?? 0).Round1();
item.history_fourteenday_sales = (item.history_fourteenday_sales ?? 0).Round1();
item.history_thirtyday_sales = (item.history_thirtyday_sales ?? 0).Round1();
}
return obj;
}
} }
} }
...@@ -168,4 +168,35 @@ namespace AutoTurnOver.Models ...@@ -168,4 +168,35 @@ namespace AutoTurnOver.Models
{ {
} }
public class dc_base_full_link_wait_order_dto: dc_base_full_link_wait_order
{
public string warehouse_name { get; set; }
public string product_title { get; set; }
public int stock { get; set; }
public string product_type_desc { get; set; }
public string buyer_name { get; set; }
public decimal? history_sevenday_sales { get; set; }
public decimal? history_fourteenday_sales { get; set; }
public decimal? history_thirtyday_sales { get; set; }
public string forecast_type_str { get; set; }
public string prod_status { get; set; }
public int? prod_not_distribution_quantity { get; set; }
public int? prod_distribution_quantity { get; set; }
public int? prod_quantity { get; set; }
public DateTime? lms_expectarrivaltime { get; set; }
public DateTime? lms_sign_time { get; set; }
public DateTime? lms_put_time { get; set; }
public DateTime? lms_collect_time { get; set; }
public DateTime? lms_flight_time { get; set; }
public DateTime? lms_transport_time { get; set; }
public DateTime? lms_ascan_time { get; set; }
public DateTime? lms_arrival_time { get; set; }
public DateTime? lms_clearance_time { get; set; }
public DateTime? lms_sail_time { get; set; }
public DateTime? lms_node_date { get; set; }
public string lms_node_name { get; set; }
public string lms_transfer_no { get; set; }
public string lms_trackingno { get; set; }
}
} }
...@@ -510,6 +510,61 @@ namespace AutoTurnOver.Models ...@@ -510,6 +510,61 @@ namespace AutoTurnOver.Models
public int? monitor_status { get; set; } public int? monitor_status { get; set; }
[Description("单号")] [Description("单号")]
public string order_no { get; set; } public string order_no { get; set; }
[Description("Asin")]
public string asin { get; set; }
public bool isSum { get; set; }
public bool is_warehouse_sum { get; set; }
public int? searchType { get; set; }
[Description("搜索关键词")]
public string key_words { get; set; }
[Description("仓库编码")]
public string warehousecode { get; set; }
[Description("采购员")]
public string buyer_name { get; set; }
[Description("供应商")]
public string supplier_name { get; set; }
public int offset { get; set; }
public int limit { get; set; }
public string order { get; set; }
public string sort { get; set; }
[Description("仓库类型")]
public string warehousetype { get; set; }
[Description("仓库国家")]
public int? warehousearea { get; set; }
public int? has_tort { get; set; } = null;
[Description("分类")]
public string categoryIds { get; set; } = null;
[Description("入库时间(起)")]
public DateTime? start_date { get; set; } = null;
[Description("入库时间(止)")]
public DateTime? end_date { get; set; } = null;
[Description("首次入库时间(起)")]
public DateTime? f_start_date { get; set; } = null;
[Description("首次入库时间(止)")]
public DateTime? f_end_date { get; set; } = null;
[Description("产品类型")]
public int? product_type { get; set; } = null;
}
public class dc_base_full_link_search_dto
{
[Description("监控状态")]
public int? monitor_status { get; set; }
[Description("调拨单号")]
public string order_no { get; set; }
[Description("采购单号")]
public string order_no2 { get; set; }
[Description("Asin")] [Description("Asin")]
public string asin { get; set; } public string asin { get; set; }
public bool isSum { get; set; } public bool isSum { get; set; }
......
...@@ -67,6 +67,22 @@ namespace AutoTurnOver.Services ...@@ -67,6 +67,22 @@ namespace AutoTurnOver.Services
} }
return DB.daily.FullLinkTransferList(search_data, categoryModels, ref total); return DB.daily.FullLinkTransferList(search_data, categoryModels, ref total);
} }
/// <summary>
/// 全链路在途订单
/// </summary>
/// <param name="search_data"></param>
/// <param name="total"></param>
/// <returns></returns>
public List<dc_base_full_link_wait_order_dto> FullLinkWaitPage(dc_base_full_link_search_dto search_data, ref int total)
{
List<bailun_category_new_dto> categoryModels = null;
if (!string.IsNullOrWhiteSpace(search_data.categoryIds))
{
categoryModels = ApiServices.GetNewClientNodesByIds(search_data.categoryIds.Split(',').Select(s => int.Parse(s)).ToList());
}
return DB.dc_base_full_link_wait_order_dao.FullLinkWaitPage(search_data, categoryModels, ref total);
}
public List<dc_base_trans_temp_schedule_dto> TempTransferList(temp_transfer_order_search_dto search_data,ref int total) public List<dc_base_trans_temp_schedule_dto> TempTransferList(temp_transfer_order_search_dto search_data,ref int total)
{ {
return DB.daily.TempTransferList(search_data, ref total); return DB.daily.TempTransferList(search_data, ref total);
...@@ -704,6 +720,110 @@ namespace AutoTurnOver.Services ...@@ -704,6 +720,110 @@ namespace AutoTurnOver.Services
} }
} }
public string FullLinkWaitExport(dc_base_full_link_search_dto search_data)
{
try
{
export_count++;
var services = new DailyServices();
var fileName = AppContext.BaseDirectory + $@"全链路在途订单-{DateTime.Now.ToString("yyyyMMddHHmmss")}{Guid.NewGuid()}.csv";
int page = 1;
int rows = 50000;
if (export_count == 1)
{
rows = 250000;
}
while (true)
{
int total = 0;
search_data.offset = (page - 1)* rows;
search_data.limit = rows;
var list = services.FullLinkWaitPage(search_data,ref total);
if (list == null || list.Count <= 0) break;
DataTable table = new DataTable();
string[] cols = new string[] { "产品编码", "仓库名称","仓库编码","中文信息","可用库存","过去7天日均","过去14天日均","过去30天日均",
"商品来源", "采购员", "sku状态",
"采购单号","采购数量","采购在途数量","采购下单时间","采购预计到货时间","采购签收时间","采购签收数量","采购入库时间","采购入库数量",
"采购临时单号","采购临时数量","调拨暂存单号","调拨暂存数量","调拨计划单号","调拨计划数量",
"调拨单号", "调拨数量","调拨在途数量", "物流跟踪号", "物流转单号","头程方式","物流渠道","物流渠道编码","物流节点状态","物流节点时间","调拨目标到货","调拨预计到货"
,"实际揽收","实际上网","实际开船","实际上航","实际转运","实际到港","实际清关","实际签收","实际入库"
};
foreach (var item in cols)
{
table.Columns.Add(item);
}
foreach (var itemData in list)
{
DataRow row = table.NewRow();
row["实际入库"] = itemData.lms_put_time == null ? "" : itemData.lms_put_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际签收"] = itemData.lms_sign_time == null ? "" : itemData.lms_sign_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际清关"] = itemData.lms_collect_time == null ? "" : itemData.lms_collect_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际到港"] = itemData.lms_arrival_time == null ? "" : itemData.lms_arrival_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际转运"] = itemData.lms_transport_time == null ? "" : itemData.lms_transport_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际上航"] = itemData.lms_flight_time == null ? "" : itemData.lms_flight_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际开船"] = itemData.lms_sail_time == null ? "" : itemData.lms_sail_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际上网"] = itemData.lms_ascan_time == null ? "" : itemData.lms_ascan_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["实际揽收"] = itemData.lms_collect_time == null ? "" : itemData.lms_collect_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["调拨预计到货"] = itemData.lms_expectarrivaltime == null ? "" : itemData.lms_expectarrivaltime.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["调拨目标到货"] = itemData.transfer_expectarrivaltime == null ? "" : itemData.transfer_expectarrivaltime.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["物流节点时间"] = itemData.lms_node_date == null ? "" : itemData.lms_node_date.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["物流节点状态"] = itemData.lms_node_name;
row["物流渠道编码"] = itemData.transfer_logistics_code;
row["物流渠道"] = itemData.transfer_logistics_name;
row["头程方式"] = itemData.transfer_transporttype;
row["物流转单号"] = itemData.lms_transfer_no;
row["物流跟踪号"] = itemData.lms_trackingno;
row["调拨在途数量"] = itemData.transfer_quantity_not_inbound;
row["调拨数量"] = itemData.transfer_quantity;
row["调拨单号"] = itemData.transfer_no;
row["调拨计划数量"] = itemData.transfer_plan_quantity;
row["调拨计划单号"] = itemData.transfer_plan_no;
row["调拨暂存数量"] = itemData.transfer_temp_schedule_quantity;
row["调拨暂存单号"] = itemData.transfer_temp_schedule_no;
row["采购临时数量"] = itemData.transfer_temp_purchase_quantity;
row["采购临时单号"] = itemData.transfer_temp_purchase_no;
row["采购入库数量"] = itemData.purchase_quantity_inbound;
row["采购入库时间"] = itemData.purchase_put_time == null ? "" : itemData.purchase_put_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["采购签收数量"] = itemData.purchase_quantity_arrival;
row["采购签收时间"] = itemData.purchase_sign_time == null ? "" : itemData.purchase_sign_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["采购预计到货时间"] = itemData.purchase_arrivaldate == null ? "" : itemData.purchase_arrivaldate.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["采购下单时间"] = itemData.purchase_create_time == null ? "" : itemData.purchase_create_time.Value.ToString("yyyy-MM-dd HH:mm:ss");
row["采购在途数量"] = itemData.purchase_quantity_not_inbound;
row["采购数量"] = itemData.purchase_quantity;
row["采购单号"] = itemData.purchase_no;
row["sku状态"] = itemData.forecast_type_str;
row["采购员"] = itemData.buyer_name;
row["商品来源"] = itemData.product_type_desc;
row["过去30天日均"] = itemData.history_thirtyday_sales;
row["过去14天日均"] = itemData.history_fourteenday_sales;
row["过去7天日均"] = itemData.history_sevenday_sales;
row["可用库存"] = itemData.stock;
row["中文信息"] = itemData.product_title;
row["仓库编码"] = itemData.warehouse_code;
row["仓库名称"] = itemData.warehouse_name;
row["产品编码"] = itemData.bailun_sku;
table.Rows.Add(row);
}
CsvFileHelper.SaveCSV(table, fileName, page == 1);
page++;
}
return fileName;
}
catch (Exception)
{
export_count--;
throw;
}
}
public async void GenerateData() public async void GenerateData()
{ {
......
...@@ -68,6 +68,9 @@ namespace AutoTurnOver.Services ...@@ -68,6 +68,9 @@ namespace AutoTurnOver.Services
case "供应链调拨在途": case "供应链调拨在途":
item.result_file_url = await DownloadFullLinkTransfer(item.parameter, item); item.result_file_url = await DownloadFullLinkTransfer(item.parameter, item);
break; break;
case "供应链在途订单":
item.result_file_url = await DownloadFullLinkWait(item.parameter, item);
break;
case "商品销量报表(仓库维度)": case "商品销量报表(仓库维度)":
item.result_file_url = await DownloadReportGoods(item.parameter, item); item.result_file_url = await DownloadReportGoods(item.parameter, item);
break; break;
...@@ -277,6 +280,20 @@ namespace AutoTurnOver.Services ...@@ -277,6 +280,20 @@ namespace AutoTurnOver.Services
return fileData; return fileData;
} }
/// <summary> /// <summary>
/// 下载供应链在途
/// </summary>
public async Task<string> DownloadFullLinkWait(string par_json, dc_task_download download_data)
{
dc_base_full_link_search_dto search_data = par_json.ToObject<dc_base_full_link_search_dto>();
Console.WriteLine("DownloadStock - 开始生成文件");
var memory = new DailyServices().FullLinkWaitExport(search_data);
Console.WriteLine("DownloadStock - 开始生成上传文件");
var fileData = await AutoTurnOver.Utility.QiNiuCloudHelper.UploadSectioningAsync(memory);
Console.WriteLine("DownloadStock - 上传完毕");
return fileData;
}
/// <summary>
/// 下载库存 /// 下载库存
/// </summary> /// </summary>
public async Task<string> DownloadFbaStock(string par_json, dc_task_download download_data) public async Task<string> DownloadFbaStock(string par_json, dc_task_download download_data)
......
...@@ -159,6 +159,41 @@ namespace AutoTurnOver.Controllers ...@@ -159,6 +159,41 @@ namespace AutoTurnOver.Controllers
} }
} }
/// <summary>
/// 供应链调拨在途
/// </summary>
/// <param name="sku"></param>
/// <param name="warehousecode"></param>
/// <param name="offset"></param>
/// <param name="limit"></param>
/// <returns></returns>
[BrowseLog("Bailun_aims", "访问【百伦自动周转系统】->【实时数据】->【全链路在途订单】->【搜索】页面", 0)]
public JsonResult FullLinkWaitPage([FromQuery]dc_base_full_link_search_dto search_data)
{
try
{
var services = new DailyServices();
var total = 0;
var list = services.FullLinkWaitPage(search_data, ref total);
return new JsonResult(new
{
rows = list,
total = total,
});
}
catch (Exception ex)
{
return new JsonResult(new
{
message = ex.Message,
stack_trace = ex.StackTrace
});
}
}
[BrowseLog("Bailun_aims", "访问【百伦自动周转系统】->【暂存调拨单】->【搜索】页面", 0)] [BrowseLog("Bailun_aims", "访问【百伦自动周转系统】->【暂存调拨单】->【搜索】页面", 0)]
public JsonResult TempTransferList([FromQuery]temp_transfer_order_search_dto search_data) public JsonResult TempTransferList([FromQuery]temp_transfer_order_search_dto search_data)
...@@ -265,6 +300,16 @@ namespace AutoTurnOver.Controllers ...@@ -265,6 +300,16 @@ namespace AutoTurnOver.Controllers
return new JsonResult(list == null || list.Count <= 0 ? new order_transfer_full_link_dto() : list[0]); return new JsonResult(list == null || list.Count <= 0 ? new order_transfer_full_link_dto() : list[0]);
} }
public JsonResult FullLinkWaitSumFooter([FromQuery]dc_base_full_link_search_dto search_data)
{
var services = new DailyServices();
var total = 0;
search_data.isSum = true;
var list = services.FullLinkWaitPage(search_data, ref total);
return new JsonResult(list == null || list.Count <= 0 ? new dc_base_full_link_wait_order_dto() : list[0]);
}
/// <summary> /// <summary>
/// 缺货推送记录 /// 缺货推送记录
...@@ -473,6 +518,26 @@ namespace AutoTurnOver.Controllers ...@@ -473,6 +518,26 @@ namespace AutoTurnOver.Controllers
} }
} }
public JsonResult ExportFullLinkWait([FromQuery]dc_base_stock_search_dto search_data)
{
try
{
var user = AutoUtility.GetUser();
search_data.limit = int.MaxValue;
dc_task_download_dao.PushData<dc_base_stock_search_dto>(new dc_task_download
{
parameter = search_data.ToJson(),
task_name = "供应链在途订单"
}, user);
return new JsonResult(new { success = true });
}
catch (Exception ex)
{
return new JsonResult(new { success = false,message = ex.Message });
}
}
public JsonResult ExportFullLinkPurchase([FromQuery]dc_base_stock_search_dto search_data) public JsonResult ExportFullLinkPurchase([FromQuery]dc_base_stock_search_dto search_data)
{ {
try try
......
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