Commit b3f34e4f by 泽锋 李

库容欧洲共享

parent c538cbe7
......@@ -143,7 +143,9 @@ left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code where
/// <summary>
/// 新增日志
/// </summary>
public static void AddLog(dc_base_storage_capacity_log data)
/// <param name="data"></param>
/// <param name="is_share">是否需要处理共享仓</param>
public static void AddLog(dc_base_storage_capacity_log data,int is_share = 0)
{
if (string.IsNullOrWhiteSpace(data.create_user))
{
......@@ -172,6 +174,7 @@ left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code where
{
bailun_sku_warehouse_code = data.bailun_sku_warehouse_code,
warehouse_code = data.warehouse_code,
account = data.account,
create_user = data.create_user,
create_date = DateTime.Now,
stock = 0,
......@@ -204,19 +207,51 @@ left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code where
mainData.version++;
data.create_date = DateTime.Now;
conn.Insert(data);
var line_count = conn.Execute(" update dc_base_storage_capacity set stock=@stock,version=@version,update_date=now() where bailun_sku_warehouse_code=@bailun_sku_warehouse_code and version=@old_version ", new
int line_count = conn.Execute(" update dc_base_storage_capacity set stock=@stock,version=@version,update_date=now() where bailun_sku_warehouse_code=@bailun_sku_warehouse_code and version=@old_version ", new
{
stock = mainData.stock,
version = mainData.version,
bailun_sku_warehouse_code = mainData.bailun_sku_warehouse_code,
old_version = old_version
});
if (line_count <= 0)
{
AddLog(data);
}
if (is_share == 1)
{
// 如果是欧洲站点则同步更新欧洲其他仓库的库容
var sites = new List<string> { "英国", "西班牙", "意大利", "德国", "法国" };
var base_ware = conn.QueryFirstOrDefault<string>(" select area_name from dc_base_warehouse where warehouse_code=@warehouse_code ", new
{
warehouse_code = data.warehouse_code
});
//欧洲站点才需要处理
if (sites.Contains(base_ware))
{
//查询除自己以外的其他欧洲站点
var warehouse_codes = conn.Query<string>(@" select t1.warehouse_code from dc_base_storage_capacity as t1
left join dc_base_warehouse as t2 on t1.warehouse_code = t2.warehouse_code
where t2.area_name in @sites and t1.warehouse_code !=@warehouse_code ", new
{
sites = sites,
warehouse_code = data.warehouse_code
}).ToList();
if (warehouse_codes != null && warehouse_codes.Count >= 1)
{
foreach (var item in warehouse_codes)
{
var otherData = data.ToJson().ToObj<dc_base_storage_capacity_log>();
otherData.warehouse_code = item;
AddLog(otherData, 1);
}
}
}
}
t.Commit();
}
......
......@@ -11,6 +11,11 @@ namespace AutoTurnOver.Models
{
public int id { get; set; }
public string warehouse_code { get; set; }
/// <summary>
/// 账号
/// </summary>
public string account { get; set; }
public DateTime create_date { get; set; }
public decimal stock { get; set; }
public string create_user { get; set; }
......@@ -65,6 +70,7 @@ namespace AutoTurnOver.Models
{
public int id { get; set; }
public string warehouse_code { get; set; }
public string account { get; set; }
public DateTime create_date { get; set; }
/// <summary>
......
......@@ -57,6 +57,7 @@ namespace AutoTurnOver.Services
try
{
var warehouse_code = row["仓库编码"].ToString();
var account = row["账号"].ToString();
var stock_str = row["库容"].ToString();
if (string.IsNullOrWhiteSpace(warehouse_code)) throw new Exception("warehouse_code必填");
......@@ -74,6 +75,7 @@ namespace AutoTurnOver.Services
{
create_user = user.UserName,
warehouse_code = warehouse_code,
account = account,
order_no = "",
quantity = stock,
type = (int)dc_base_storage_capacity_log_enum.导入
......
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