Commit feed9691 by Neo Turing

优化去重

parent 6ef8f855
......@@ -157,7 +157,14 @@ namespace Kivii.Third.Bestseller.Entities
if (third.IsUploaded) return true;
var thirdDetails = conn.Select<ThirdReportOrderDetail>(o => o.ThirdOrderKvid == third.Kvid);
if (thirdDetails.IsNullOrEmpty()) return false;
var reports = conn.SelectByIds<Report>(thirdDetails.ConvertAll(o => o.ReportKvid));
var thirdDetailDis = new List<ThirdReportOrderDetail>();
foreach (var item in thirdDetails)
{
if (!thirdDetailDis.Exists(o => o.ReportKvid == item.ReportKvid)) thirdDetailDis.Add(item);
continue;
}
if (thirdDetailDis.IsNullOrEmpty()) return false;
var reports = conn.SelectByIds<Report>(thirdDetailDis.ConvertAll(o => o.ReportKvid));
if (reports.IsNullOrEmpty()) return false;
if (reports.Exists(o => o.Status <= (int)ReportStatusType.ReportIssue)) return false;
//if (reports.Exists(o => o.Status != (int)ReportStatusType.ReportCollected)) return false;
......@@ -174,7 +181,7 @@ namespace Kivii.Third.Bestseller.Entities
//针对多个报告存在不合格的项目 则回传订单整体判定为不合格
var infoJudement = true;
foreach (var thirdDetail in thirdDetails)
foreach (var thirdDetail in thirdDetailDis)
{
if (thirdDetail.ReportKvid == Guid.Empty) continue;
var report = reports.FirstOrDefault(o => o.Kvid == thirdDetail.ReportKvid);
......
......@@ -298,6 +298,7 @@ namespace Kivii.Third.Bestseller.Extensions
thirds = conn.Select<ThirdReportOrder>(o => /*o.IsAccepted == false &*/ o.IsOffseted == false & o.IsUploaded == false & o.ThirdType == typeof(BestsellerOrder).FullName);
}
if (thirds.IsNullOrEmpty()) return;
var allThirdDetails = conn.Select<ThirdReportOrderDetail>(o => Sql.In(o.ThirdOrderKvid, thirds.ConvertAll(p => p.Kvid)));
var queryReports = conn.From<Report>();
queryReports.Where(o => Sql.In(o.BizId, thirds.ConvertAll(p => p.SerialNumber)) & o.Status >= (int)ReportStatusType.ReportIssue).OrderBy(o => o.ReportId);
var allReports = conn.Select(queryReports);
......@@ -316,6 +317,19 @@ namespace Kivii.Third.Bestseller.Extensions
// conn.UpdateOnly(third);
// continue;
//}
if (!allThirdDetails.IsNullOrEmpty())
{
var thirdDetails = allThirdDetails.Where(o => o.ThirdOrderKvid == third.Kvid).ToList();
if (!thirdDetails.IsNullOrEmpty())
{
foreach (var node in thirdDetails)
{
node.Status = -1;
node.AddOnlyProperties(o => o.Status);
conn.UpdateOnly(node);
}
}
}
third.ReportIds = string.Empty;
var reportIds = new List<string>();
foreach (var report in reports)
......
......@@ -33,5 +33,5 @@ using System.Runtime.InteropServices;
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("5.4.2025.4030")]
[assembly: AssemblyFileVersion("5.4.2025.4030")]
[assembly: AssemblyVersion("5.4.2025.4080")]
[assembly: AssemblyFileVersion("5.4.2025.4080")]
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