Commit 1d479b70 by guanzhenshan

解决没有删除历史供应商往来数据的问题

parent 282c36e4
......@@ -32,7 +32,8 @@ namespace Bailun.DC.DailyLogisticSupplierTransaction
Console.WriteLine("开始启动 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
var day = DateTime.Parse(now.ToShortDateString());
Init(day);
//Init(day);
_service.LogisticsSupplierTransaction(day);
Console.WriteLine("任务运行完成 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
}
......@@ -42,7 +43,8 @@ namespace Bailun.DC.DailyLogisticSupplierTransaction
while (day.AddDays(1) < DateTime.Now)
{
Console.WriteLine(day);
Init(day);
//Init(day);
_service.LogisticsSupplierTransaction(day);
Console.WriteLine("重跑 " + day.ToString("yyyy-MM-dd HH:mm:ss") + " 完成");
day = day.AddDays(1);
}
......@@ -349,10 +351,10 @@ namespace Bailun.DC.DailyLogisticSupplierTransaction
//删除数据
foreach(var item in listDelete)
{
var objList = list.Where(a => a.suppliername == item.suppliername);
foreach(var o in objList)
var objList = list.Where(a => a.suppliername == item.suppliername).ToList();
for (var i = 0; i < objList.Count; i++)
{
list.Remove(o);
list.Remove(objList[i]);
}
}
......@@ -364,6 +366,8 @@ namespace Bailun.DC.DailyLogisticSupplierTransaction
cn.Open();
}
foreach (var item in list)
{
......
......@@ -441,7 +441,7 @@ namespace Bailun.DC.Services
cn.Open();
}
//发生额
var sql = $"select t1.company_name,sum(t1.amount_rmb) as merchant_shipment_cost_cny from dc_base_logistics t1 where ((t1.reconciliation_type='跟踪号对账' and t1.diff_state_type!=0) or (t1.reconciliation_type='单独费用')) and t1.merchant_reconciliation_time>='{day.ToString("yyyy-MM-dd")}' and t1.merchant_reconciliation_time<'{day.AddDays(1).ToString("yyyy-MM-dd")}' and t1.company_name!='广州嘉和货运代理有限公司' group by t1.company_name";
listHappen = cn.Query<Models.dc_base_logistics>(sql).AsList();
......@@ -538,9 +538,14 @@ namespace Bailun.DC.Services
var listMerge = listSupplierConfig.Where(a => a.type == 1).ToList().GroupBy(a => a.parentsuppliername); //需合并的
var listDelete = listSupplierConfig.Where(a => a.type == 2).ToList(); //需删除的
//需清理的供应商列表
var tempSuppliers = new List<string>();
//合并处理数据
foreach (var item in listMerge)
{
tempSuppliers.AddRange(item.Select(a => a.suppliername));
var listObj = list.Where(a => a.suppliername == item.Key || item.Select(b => b.suppliername).Contains(a.suppliername)).ToList();
if (listObj.Count > 0)
{
......@@ -576,6 +581,7 @@ namespace Bailun.DC.Services
//删除数据
foreach (var item in listDelete)
{
tempSuppliers.Add(item.suppliername);
var objList = list.Where(a => a.suppliername == item.suppliername).ToList();
if(objList.Count>0)
{
......@@ -595,6 +601,13 @@ namespace Bailun.DC.Services
cn.Open();
}
//删除之前已经生成并且不需要显示的数据
cn.Execute($"delete from dc_daily_logistics_supplier_transaction where day='{list.FirstOrDefault().day.ToString("yyyy-MM-dd")}' and suppliername in ('{string.Join("','", tempSuppliers)}')");
foreach (var item in 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