Commit 1fd155f9 by lizefeng

新增回货速改推送

parent 68c242a3
......@@ -472,7 +472,10 @@ and not exists ( select * from dc_auto_shortage_push where dc_auto_shortage_push
string no_library_sql = @"select t1.bailun_sku,
t1.warehouse_code,
now() as 'push_date',
2 as 'type' from dc_base_stock as t1 where t1.usable_stock<=0 and t1.bailun_sku!=''
2 as 'type' from dc_base_stock as t1
left join dc_mid_transit as t2 on t1.warehouse_code =t2.warehouse_code and t1.bailun_sku =t2.bailun_sku
where t1.usable_stock<=0 and t1.bailun_sku!=''
and t2.quantity_purchase<=0 and t2.quantity_transfer<=0
and not exists ( select * from dc_auto_shortage_push where dc_auto_shortage_push.warehouse_code = t1.warehouse_code and dc_auto_shortage_push.bailun_sku = t1.bailun_sku )";
shortage_list.AddRange(conn.Query<dc_auto_shortage_push>(no_library_sql,commandTimeout: 0));
......@@ -489,6 +492,8 @@ and not exists ( select * from dc_auto_shortage_push where dc_auto_shortage_push
}
}
/// <summary>
/// 回货速改
/// </summary>
......@@ -510,7 +515,7 @@ and not exists ( select * from dc_auto_shortage_push where dc_auto_shortage_push
string countSql = "";
countSql = @"
select count(1)
from dc_outofstock_history as t1
from dc_auto_shortage_push as t1
left join dc_mid_transit as t3 on t1.bailun_sku = t3.bailun_sku and t1.warehouse_code = t3.warehouse_code
left join dc_base_warehouse as t_db on t1.warehouse_code = t_db.warehouse_code
left join china_warehouse_stock as t4 on t1.bailun_sku = t4.bailun_sku and t_db.hq_type='国内仓'
......@@ -534,7 +539,7 @@ end
t2.buyer_name,
t8.bailun_require_logistics as 'ebay_bailun_require_logistics',
t8.logistics_method_name as 'ebay_logistics_method_name'
from dc_outofstock_history as t1
from dc_auto_shortage_push as t1
left join dc_base_sku as t2 on t1.bailun_sku = t2.bailun_sku
left join dc_mid_transit as t3 on t1.bailun_sku = t3.bailun_sku and t1.warehouse_code = t3.warehouse_code
left join dc_base_warehouse as t_db on t1.warehouse_code = t_db.warehouse_code
......@@ -647,6 +652,51 @@ end
}
/// <summary>
/// 回货速改推送
/// </summary>
public static List<dc_return_goods_push> ReturnGoodsPush()
{
var conn = _connection;
var shortage_list = new List<dc_return_goods_push>();
// 回货速改推送
string sql = @"select
t1.bailun_sku,
t1.warehouse_code,
now() as 'push_time'
from dc_auto_shortage_push as t1
left join dc_base_sku as t2 on t1.bailun_sku = t2.bailun_sku
left join dc_mid_transit as t3 on t1.bailun_sku = t3.bailun_sku and t1.warehouse_code = t3.warehouse_code
left join dc_base_warehouse as t_db on t1.warehouse_code = t_db.warehouse_code
left join china_warehouse_stock as t4 on t1.bailun_sku = t4.bailun_sku and t_db.hq_type='国内仓'
left join china_warehouse_unshipped as t5 on t1.bailun_sku = t5.bailun_sku and t_db.hq_type='国内仓'
left join dc_base_stock as t_stock on t1.bailun_sku = t_stock.bailun_sku and t1.warehouse_code = t_stock.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
where 1=1
and (case
when t_db.hq_type = '国内仓' and(ifnull(t4.sum_usable_stock, 0) - ifnull(t5.sum_unshipped_quantity, 0) > 0) then 1
when(t3.quantity_out_stock is null or t3.quantity_out_stock <= 0) and ifnull(t_stock.usable_stock,0)> ifnull(t3.quantity_unshipped, 0) then 1
else 0
end
) = 1";
shortage_list.AddRange(conn.Query<dc_return_goods_push>(sql, commandTimeout: 0));
return shortage_list;
}
/// <summary>
/// 回货速改推送记录写入
/// </summary>
/// <param name="datas"></param>
public static void AddReturnGoodsPush(IEnumerable<dc_return_goods_push> datas)
{
var conn = _connection;
foreach (var item in datas)
{
conn.Insert(item);
}
}
/// <summary>
/// 标记回货
/// </summary>
public static int MarkReturnSpeedChange(return_speed_change_search_dto m)
......
using System;
using System.Collections.Generic;
using System.Text;
namespace AutoTurnOver.Models
{
public class dc_return_goods_push
{
public int id { get; set; }
public string bailun_sku { get; set; }
public string warehouse_code { get; set; }
public DateTime push_time { get; set; }
}
}
......@@ -415,5 +415,51 @@ namespace AutoTurnOver.Services
return result;
}
/// <summary>
/// 回货速改推送 (分页推送)
/// </summary>
public static List<ShortagePush_Item_RequestDto> ReturnGoodsPush(List<dc_return_goods_push> datas)
{
var err_datas = new List<ShortagePush_Item_RequestDto>();
if (datas.Count <= 0) return new List<ShortagePush_Item_RequestDto>();
int page = 1;
int rows = 1000;
int totalPage = (int)Math.Ceiling(datas.Count * 1.0 / rows);
while (page <= totalPage)
{
var result = ReturnGoodsPushApi(new ShortagePush_RequestDto
{
amisSkuInfos = datas.Skip((page - 1) * rows).Take(rows).Select(s => new ShortagePush_Item_RequestDto
{
sku = s.bailun_sku,
warehouseCode = s.warehouse_code
}).ToList()
});
if (!result.isSucceeded && result.objData.Count >= 1)
{
err_datas.AddRange(result.objData);
}
page++;
}
return err_datas;
}
/// <summary>
/// 回货速改推送
/// </summary>
private static ShortagePush_ResponseDto ReturnGoodsPushApi(ShortagePush_RequestDto data)
{
string url = ConfigHelper.GetValue("PPS_Return_GoodsPush");
string resultStr = HttpHelper.Request(url, RequestType.POST, data.ToJson(), timeout: 1000 * 60 * 60 * 24, entype: "application/json");
var result = resultStr.ToObj<ShortagePush_ResponseDto>();
if (result == null)
{
throw new Exception("刊登系统异常: 推送失败");
}
return result;
}
}
}
......@@ -453,5 +453,16 @@ namespace AutoTurnOver.Services
// 记录推送状态
report.AddShortagePush(datas.Where(s=> !err_datas.Any(e=>e.warehouseCode==s.warehouse_code && s.bailun_sku==e.sku )));
}
public void ReturnGoodsPush()
{
var datas = report.ReturnGoodsPush();
var err_datas = ApiServices.ReturnGoodsPush(datas);
// 记录推送状态
report.AddReturnGoodsPush(datas.Where(s => !err_datas.Any(e => e.warehouseCode == s.warehouse_code && s.bailun_sku == e.sku)));
}
}
}
......@@ -3,6 +3,7 @@
"Default": "server=gz-cdb-kp7s5i79.sql.tencentcdb.com;port=61691;database=bailun_datacenter;uid=root;password=#7kfnymAM$Y9-Ntf;"
},
"Pams_GetAccountToken": "http://pams.bailuntec.com/Api/GetAccountToken",
"PPS_Return_GoodsPush": "",
"redis": {
"HostName": "127.0.0.1",
"Port": "6379",
......
......@@ -9,5 +9,6 @@
"Password": "",
"Defaultdatabase": "0"
},
"PPS_ShortagePush": "http://bltpro.bailuntec.com/api/EbayTask/PushSkuEditQtyTask"
"PPS_ShortagePush": "http://bltpro.bailuntec.com/api/EbayTask/PushSkuEditQtyTask",
"PPS_Return_GoodsPush": ""
}
......@@ -2,5 +2,6 @@
"ConnectionStrings": {
"Default": "server=10.0.8.15;port=3306;database=bailun_datacenter;uid=root;password=#7kfnymAM$Y9-Ntf;"
},
"PPS_ShortagePush": "http://10.0.6.8:8002/api/EbayTask/PushSkuEditQtyTask"
"PPS_ShortagePush": "http://10.0.6.8:8002/api/EbayTask/PushSkuEditQtyTask",
"PPS_Return_GoodsPush": ""
}
\ No newline at end of file
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