Commit 40e294fa by 泽锋 李

fix

parent 3e69056f
...@@ -732,5 +732,20 @@ namespace AutoTurnOver.DB ...@@ -732,5 +732,20 @@ namespace AutoTurnOver.DB
throw new Exception("lms系统接口异常: " + ex.StackTrace); throw new Exception("lms系统接口异常: " + ex.StackTrace);
} }
} }
/// <summary>
/// 抓取百伦的调拨日志数据
/// </summary>
/// <returns></returns>
public static List<api_order_transfer_status_log_dto.data_dto> GetOrderBailunTransferLog(DateTime btime, int type = 5)
{
var url = ConfigHelper.GetValue("Order:Bailun_TransferLog");
var response_json = HttpHelper.Request(url, RequestType.POST, new
{
CreationTime = btime,
State = type
}.ToJson(), "application/json", timeout: 1000 * 60 * 60 * 24);
return response_json.ToObj<api_order_transfer_status_log_dto>().data;
}
} }
} }
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
using AutoTurnOver.Models; using AutoTurnOver.Models;
using AutoTurnOver.Models.ApiDto; using AutoTurnOver.Models.ApiDto;
using AutoTurnOver.Models.Base; using AutoTurnOver.Models.Base;
using AutoTurnOver.Utility;
using Dapper; using Dapper;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
......
using System; using AutoTurnOver.Models;
using AutoTurnOver.Utility;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
...@@ -7,7 +9,133 @@ namespace AutoTurnOver.DB ...@@ -7,7 +9,133 @@ namespace AutoTurnOver.DB
/// <summary> /// <summary>
/// 在库货运费单价 /// 在库货运费单价
/// </summary> /// </summary>
public class dc_base_transfer_freight_dao public class dc_base_transfer_freight_dao : connectionHelper
{ {
/// <summary>
/// 同步百伦调拨操作日志
/// </summary>
/// <param name="type">1 = 打包 2 = 交运 3 =确认交运 </param>
public static void SynchroOrderBailunTransferLog(int type)
{
var task_name = $"SynchroOrderBailunTransferLog_{type}_v1";
var conn = _connection;
// 查询最后一次成功抓取的记录
var last_task_synchro_log = conn.QuerySingleOrDefault<task_synchro_log>(" select * from task_synchro_log where task_name=@task_name and status=1 order by end_time desc limit 1 ", new { task_name = task_name });
var new_task_synchro_log = new task_synchro_log
{
create_date = DateTime.Now,
end_time = DateTime.Now,
status = 0,
task_name = task_name
};
if (last_task_synchro_log != null)
{
new_task_synchro_log.start_time = last_task_synchro_log.end_time.AddMinutes(-1);
}
else
{
new_task_synchro_log.start_time = DateTime.Now;
}
new_task_synchro_log.id = conn.Insert(new_task_synchro_log) ?? 0;
int count = 0;
var thisTime = new_task_synchro_log.start_time;
var endTime = new_task_synchro_log.end_time;
while (thisTime.ToDayHome() < endTime.ToDayEnd())
{
var datas = ApiUtility.GetOrderBailunTransferLog(thisTime, type);
foreach (var orderItem in datas)
{
try
{
var oms_order_data = new order_transfer_status_log
{
action = orderItem.state,
bailun_sku = orderItem.sku,
warehouse_code = orderItem.targetWareCode,
data_id = orderItem.id,
date = orderItem.creationTime,
is_delete = orderItem.isDeleted ? 1 : 0,
gmt_create_date = DateTime.Now,
gmt_update_date = DateTime.Now,
system_order_no = orderItem.orderCode,
update_date = orderItem.lastModificationTime,
count = orderItem.count
};
count++;
var oldData = conn.QuerySingleOrDefault<order_transfer_status_log>(" select * from order_transfer_status_log where data_id=@data_id ", new
{
data_id = oms_order_data.data_id
});
if (oldData != null)
{
oms_order_data.id = oldData.id;
oms_order_data.gmt_create_date = oldData.gmt_create_date;
conn.Update(oms_order_data);
}
else
{
conn.Insert(oms_order_data);
}
if (oms_order_data.action == (int)order_transfer_status_log_action_enum.入库)
{
//
Calculation(oms_order_data);
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
Console.WriteLine(ex.StackTrace);
}
}
thisTime = thisTime.AddDays(1);
}
new_task_synchro_log.count = count;
new_task_synchro_log.status = 1;
conn.Update(new_task_synchro_log);
}
/// <summary>
/// 计算加权平均运费
/// </summary>
/// <param name="log_data"></param>
public static void Calculation(order_transfer_status_log log_data)
{
dc_base_transfer_freight_log data_log = new dc_base_transfer_freight_log
{
action_date = log_data.gmt_create_date,
action_log_id = log_data.data_id.ToString(),
bailun_sku = log_data.bailun_sku,
current_count = log_data.count,
order_no = log_data.system_order_no,
update_time = DateTime.Now,
warehouse_code = log_data.warehouse_code
};
// 查询该流水是否已经计算过
var oldId = _connection.QuerySingleOrDefault<int>(" select id from dc_base_transfer_freight_log where action_log_id=@action_log_id limit 1 ",new { action_log_id= data_log.action_log_id });
if (oldId > 0)
{
return;
}
// 查询当前库存总值
var last_data = _connection.QuerySingleOrDefault<int>(" select id from dc_base_transfer_freight_log where bailun_sku=@bailun_sku and warehouse_code=@warehouse_code order by action_date desc limit 1 ", new {
bailun_sku = data_log.bailun_sku,
warehouse_code = data_log.warehouse_code
});
}
} }
} }
using System;
using System.Collections.Generic;
using System.Text;
namespace AutoTurnOver.Models.ApiDto
{
public class api_order_transfer_status_log_dto
{
public bool isSuccess { get; set; }
public string message { get; set; }
public List<data_dto> data { get; set; }
public class data_dto
{
public int id { get; set; }
/// <summary>
/// 操作
/// </summary>
public int state { get; set; }
/// <summary>
/// 时间
/// </summary>
public DateTime creationTime { get; set; }
public DateTime lastModificationTime { get; set; }
public int count { get; set; }
/// <summary>
/// 系统更新时间
/// </summary>
public string orderCode { get; set; }
/// <summary>
/// sku
/// </summary>
public string sku { get; set; }
public string targetWareCode { get; set; }
/// <summary>
/// 是否删除
/// </summary>
public bool isDeleted { get; set; }
}
}
}
...@@ -65,7 +65,7 @@ namespace AutoTurnOver.Models ...@@ -65,7 +65,7 @@ namespace AutoTurnOver.Models
/// <summary> /// <summary>
/// 本次入库的调拨单号 /// 本次入库的调拨单号
/// </summary> /// </summary>
public decimal order_no { get; set; } public string order_no { get; set; }
/// <summary> /// <summary>
/// 订单总运费 /// 订单总运费
...@@ -81,5 +81,10 @@ namespace AutoTurnOver.Models ...@@ -81,5 +81,10 @@ namespace AutoTurnOver.Models
/// 操作时间 /// 操作时间
/// </summary> /// </summary>
public DateTime action_date { get; set; } public DateTime action_date { get; set; }
/// <summary>
/// 操作流水的唯一标识
/// </summary>
public string action_log_id { get; set; }
} }
} }
using System;
using System.Collections.Generic;
using System.Text;
namespace AutoTurnOver.Models
{
/// <summary>
/// 调拨单操作流水
/// </summary>
public class order_transfer_status_log
{
public int id { get; set; }
/// <summary>
/// 操作
/// </summary>
public int action { get; set; }
/// <summary>
/// 调拨系统的数据id
/// </summary>
public long data_id { get; set; }
/// <summary>
/// 操作时间
/// </summary>
public DateTime date { get; set; }
/// <summary>
/// 更新时间
/// </summary>
public DateTime update_date { get; set; }
/// <summary>
/// 系统单号
/// </summary>
public string system_order_no { get; set; }
/// <summary>
/// sku
/// </summary>
public string bailun_sku { get; set; }
public string warehouse_code { get; set; }
/// <summary>
/// 是否删除
/// </summary>
public int is_delete { get; set; }
public DateTime gmt_create_date { get; set; }
public DateTime gmt_update_date { get; set; }
public int count { get; set; }
}
public enum order_transfer_status_log_action_enum
{
创建 = 0,
打包 = 1,
交运 = 2,
确认 = 3,
在途 = 4,
入库 = 5
}
}
...@@ -31,7 +31,7 @@ namespace AutoTurnOver.Purchase.AverageTarget ...@@ -31,7 +31,7 @@ namespace AutoTurnOver.Purchase.AverageTarget
//PurchaseAverageTargetServices.CalculationTransfer(); //PurchaseAverageTargetServices.CalculationTransfer();
//report.ResetTransExpectArrivaltime(); //report.ResetTransExpectArrivaltime();
//dc_auto_return_goods_config_dao.NewCalculation(); //dc_auto_return_goods_config_dao.NewCalculation();
//PurchaseAverageTargetServices.Calculation("943049004", days: 360); //PurchaseAverageTargetServices.Calculation("368720104", days: 360);
//PurchaseAverageTargetServices.CalculationTransfer("LM-EO-007", 360); //PurchaseAverageTargetServices.CalculationTransfer("LM-EO-007", 360);
//PurchaseAverageTargetServices.CalculationTransfer(days: (360 * 3),has_transfer:true); //PurchaseAverageTargetServices.CalculationTransfer(days: (360 * 3),has_transfer:true);
} }
......
...@@ -15,5 +15,8 @@ ...@@ -15,5 +15,8 @@
"BrowseLogSetting": { "BrowseLogSetting": {
"Url": "http://saas.admin.bailuntec.com/Api/Ssoadmin/operationloginfo/addoperationloginfo", "Url": "http://saas.admin.bailuntec.com/Api/Ssoadmin/operationloginfo/addoperationloginfo",
"CanLog": "yes" "CanLog": "yes"
},
"Order": {
"Bailun_TransferLog": "http://api.wms.bailuntec.com/api/services/app/AllotOrderService/SearchOrderSkuRecord"
} }
} }
...@@ -15,5 +15,8 @@ ...@@ -15,5 +15,8 @@
"BrowseLogSetting": { "BrowseLogSetting": {
"Url": "http://saas.admin.bailuntec.com/Api/Ssoadmin/operationloginfo/addoperationloginfo", "Url": "http://saas.admin.bailuntec.com/Api/Ssoadmin/operationloginfo/addoperationloginfo",
"CanLog": "yes" "CanLog": "yes"
},
"Order": {
"Bailun_TransferLog": "http://api.wms.bailuntec.com/api/services/app/AllotOrderService/SearchOrderSkuRecord"
} }
} }
...@@ -15,5 +15,8 @@ ...@@ -15,5 +15,8 @@
"BrowseLogSetting": { "BrowseLogSetting": {
"Url": "http://saas.admin.bailuntec.com/Api/Ssoadmin/operationloginfo/addoperationloginfo", "Url": "http://saas.admin.bailuntec.com/Api/Ssoadmin/operationloginfo/addoperationloginfo",
"CanLog": "yes" "CanLog": "yes"
},
"Order": {
"Bailun_TransferLog": "http://api.wms.bailuntec.com/api/services/app/AllotOrderService/SearchOrderSkuRecord"
} }
} }
\ No newline at end of file
...@@ -41,7 +41,7 @@ namespace AutoTurnOver.Services ...@@ -41,7 +41,7 @@ namespace AutoTurnOver.Services
var chageSkuList = AveragePurchase.GetTransferChangeSku(days, bailun_sku); var chageSkuList = AveragePurchase.GetTransferChangeSku(days, bailun_sku);
foreach (var skuItem in chageSkuList) foreach (var skuItem in chageSkuList)
{ {
if(skuItem.bailun_sku== "950282301" && skuItem.warehouse_code== "MMDUSFBA") if( skuItem.warehouse_code== "GB4PXBL")
{ {
} }
...@@ -216,16 +216,7 @@ where t1.bailun_sku=@bailun_sku and t1.warehouse_code=@warehouse_code and t1.isp ...@@ -216,16 +216,7 @@ where t1.bailun_sku=@bailun_sku and t1.warehouse_code=@warehouse_code and t1.isp
//写入数据库 //写入数据库
AveragePurchase.Save(data, conn); AveragePurchase.Save(data, conn);
conn.Insert(new dc_base_queue
{
submit_date = DateTime.Now,
error_message = "",
consume_date = null,
error_stack_trace = "",
message = new { bailun_sku = data.bailun_sku, warehouse_code = data.warehouse_code }.ToJson(),
type = "刷新周转表",
remarks = "重算采购平均交期"
});
task_log.Count++; task_log.Count++;
} }
...@@ -246,6 +237,16 @@ where t1.bailun_sku=@bailun_sku and t1.warehouse_code=@warehouse_code and t1.isp ...@@ -246,6 +237,16 @@ where t1.bailun_sku=@bailun_sku and t1.warehouse_code=@warehouse_code and t1.isp
AveragePurchase.Save(data, conn); AveragePurchase.Save(data, conn);
} }
conn.Insert(new dc_base_queue
{
submit_date = DateTime.Now,
error_message = "",
consume_date = null,
error_stack_trace = "",
message = new { bailun_sku = data.bailun_sku, warehouse_code = data.warehouse_code }.ToJson(),
type = "刷新周转表",
remarks = "重算采购平均交期"
});
} }
task_log.CompleteTime = DateTime.Now; task_log.CompleteTime = DateTime.Now;
......
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