Commit 2bb3eba8 by guanzhenshan

完善同步半成品库存流水服务

parent 9273ef81
......@@ -34,9 +34,9 @@ namespace Bailun.DC.SyncSemiStock.Models
public string type_name { get; set; }
public int product_category_id { get; set; }
public int? product_category_id { get; set; } = 0;
public string product_category_id_name { get; set; }
public string product_category_id_name { get; set; } = "";
public string sku { get; set; }
......@@ -56,7 +56,7 @@ namespace Bailun.DC.SyncSemiStock.Models
public DateTime create_time { get; set; }
public decimal redundancy_stock { get; set; }
public decimal? redundancy_stock { get; set; } = 0;
public int warehouse_type { get; set; }
......
......@@ -17,7 +17,11 @@ namespace Bailun.DC.SyncSemiStock
//await builder.RunConsoleAsync();
new Services().SyncSupplierPrice();
//new Services().SyncSupplierPrice();
new Services().SyncStockLog();
}
......
......@@ -259,7 +259,7 @@ namespace Bailun.DC.SyncSemiStock
public void SyncStockLog()
{
var start = DateTime.Parse("2017-01-01");
var start = DateTime.Parse("2018-07-27");
var end = start.AddDays(1);
var url = "http://mjzz.bailuntec.com/api/StockLog?";
......@@ -284,7 +284,7 @@ namespace Bailun.DC.SyncSemiStock
var result = Common.HttpHelper.NetHelper.Request(url + $"btime={start.ToString("yyyy-MM-dd")}&etime={end.ToString("yyyy-MM-dd")}&page=1&rows=100");
var page = 1;
var pagesize = 100;
//var pagesize = 100;
var totalpage = 0;
if (!string.IsNullOrEmpty(result))
......@@ -293,9 +293,10 @@ namespace Bailun.DC.SyncSemiStock
if (json.success)
{
Console.WriteLine(url + $"btime={start.ToString("yyyy-MM-dd")}&etime={end.ToString("yyyy-MM-dd")}" + "::获取数据成功!" + DateTime.Now);
Console.WriteLine(url + $"btime={start.ToString("yyyy-MM-dd")}&etime={end.ToString("yyyy-MM-dd")}" + "::page1::获取数据成功!" + DateTime.Now);
//保存第一页数据
SaveStockLog(json.data.Items);
page = json.data.CurrentPage;
......@@ -309,11 +310,10 @@ namespace Bailun.DC.SyncSemiStock
json = Newtonsoft.Json.JsonConvert.DeserializeObject<response_StockLog>(result);
if (json.success)
{
Console.WriteLine(url + $"btime={start.ToString("yyyy-MM-dd")}&etime={end.ToString("yyyy-MM-dd")}" + "::获取数据成功!" + DateTime.Now);
Console.WriteLine(url + $"btime={start.ToString("yyyy-MM-dd")}&etime={end.ToString("yyyy-MM-dd")}" + "::page"+page+"::获取数据成功!" + DateTime.Now);
//保存数据
SaveStockLog(json.data.Items);
page = json.data.CurrentPage;
totalpage = json.data.TotalPages;
......@@ -329,5 +329,61 @@ namespace Bailun.DC.SyncSemiStock
}
}
private void SaveStockLog(List<response_StockLog_Data_Items> list)
{
try
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
foreach (var item in list)
{
var obj = cn.QueryFirstOrDefault<DC.Models.dc_semi_stock_log_new>("select * from dc_semi_stock_log_new where log_id=" + item.log_id);
if (obj == null)
{
var m = new DC.Models.dc_semi_stock_log_new
{
log_id = item.log_id,
log_quantity = item.log_quantity,
log_type = item.log_type,
log_type_id = item.log_type_id,
sku_code = item.sku,
sku_name = item.sku_name,
final_stock = item.final_stock,
create_time = item.create_time,
product_category_id = item.product_category_id ?? 0,
product_category_name = item.product_category_id_name ?? "",
redundancy_stock = item.redundancy_stock,
type_id = item.type_id,
type_name = item.type_name,
update_time = DateTime.Now,
warehouse_id = item.warehouse_id,
warehouse_name = item.warehouse_name,
warehouse_type = item.warehouse_type,
};
cn.Insert(m);
}
}
}
}
catch (Exception ex)
{
Console.WriteLine("保存StockLog出现异常,1分钟后重试。");
System.Threading.Thread.Sleep(60 * 1000);
SaveStockLog(list);
}
}
}
}
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