attach
This commit is contained in:
parent
d5e4a6ef8c
commit
66a85a221a
@ -20,6 +20,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
{
|
{
|
||||||
var r = !forUpsert
|
var r = !forUpsert
|
||||||
? await Context.SearchAsync<TrackDetailsIndex>(s => s
|
? await Context.SearchAsync<TrackDetailsIndex>(s => s
|
||||||
|
.Index(GlobalConst.TrackDetailsIndex)
|
||||||
.Source()
|
.Source()
|
||||||
.Size(SafelyLimit)
|
.Size(SafelyLimit)
|
||||||
.Query(q => q
|
.Query(q => q
|
||||||
@ -32,6 +33,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
: await Context.SearchAsync<TrackDetailsIndex>(s => s
|
: await Context.SearchAsync<TrackDetailsIndex>(s => s
|
||||||
|
.Index(GlobalConst.TrackDetailsIndex)
|
||||||
.Source(s2 => s2.Includes(fd => fd
|
.Source(s2 => s2.Includes(fd => fd
|
||||||
.Field(f => f.IndexName)
|
.Field(f => f.IndexName)
|
||||||
.Field(f => f.OrderId)
|
.Field(f => f.OrderId)
|
||||||
@ -63,6 +65,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
var excludeTrackCodes = trackCodes.ToList();
|
var excludeTrackCodes = trackCodes.ToList();
|
||||||
excludeTrackCodes.Add(GlobalConst.EmptyString);
|
excludeTrackCodes.Add(GlobalConst.EmptyString);
|
||||||
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
||||||
|
.Index(GlobalConst.TrackDetailsIndex)
|
||||||
.Source(s => s.Includes(fd => fd
|
.Source(s => s.Includes(fd => fd
|
||||||
.Field(f => f.TrackEnContent)
|
.Field(f => f.TrackEnContent)
|
||||||
.Field(f => f.TrackContent)
|
.Field(f => f.TrackContent)
|
||||||
@ -113,6 +116,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
public async Task<bool> AnyAsync(int orderId, string originTrackDataHash)
|
public async Task<bool> AnyAsync(int orderId, string originTrackDataHash)
|
||||||
{
|
{
|
||||||
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
||||||
|
.Index(GlobalConst.TrackDetailsIndex)
|
||||||
.Source(s => s.Includes(fd => fd.Field(f => f.TrackCode)))
|
.Source(s => s.Includes(fd => fd.Field(f => f.TrackCode)))
|
||||||
.Query(q =>
|
.Query(q =>
|
||||||
q.Term(f => f.OrderId, orderId)
|
q.Term(f => f.OrderId, orderId)
|
||||||
@ -182,6 +186,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
if (orderNos.Count < 1) return new List<TrackDetailsIndex>();
|
if (orderNos.Count < 1) return new List<TrackDetailsIndex>();
|
||||||
|
|
||||||
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
||||||
|
.Index(GlobalConst.TrackDetailsIndex)
|
||||||
.Source(s => s.Includes(fd => fd
|
.Source(s => s.Includes(fd => fd
|
||||||
.Field(f => f.OrderNo)
|
.Field(f => f.OrderNo)
|
||||||
.Field(f => f.TrackStatus)
|
.Field(f => f.TrackStatus)
|
||||||
@ -225,6 +230,7 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
public async Task<List<TrackDetailsIndex>> GetListAsync(int orderId)
|
public async Task<List<TrackDetailsIndex>> GetListAsync(int orderId)
|
||||||
{
|
{
|
||||||
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
var r = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
||||||
|
.Index(GlobalConst.TrackDetailsIndex)
|
||||||
.Query(q =>
|
.Query(q =>
|
||||||
q.Term(t => t.OrderId, orderId)
|
q.Term(t => t.OrderId, orderId)
|
||||||
)
|
)
|
||||||
@ -241,27 +247,41 @@ public class TrackDetailsEsRepository : ElasticSearchContextAbstract<TrackDetail
|
|||||||
|
|
||||||
public async Task DeleteTrackAsync(int[] orderIds, List<string> trackCodes)
|
public async Task DeleteTrackAsync(int[] orderIds, List<string> trackCodes)
|
||||||
{
|
{
|
||||||
var search = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
var deleteResponse = await Context.DeleteByQueryAsync<TrackDetailsIndex>(d => d
|
||||||
.Source(s => s.Includes(fd => fd.Field(f => f.IndexName)))
|
.Index($"{GlobalConst.TrackDetailsIndex}-*") // 使用通配符匹配所有相关索引
|
||||||
.Size(SafelyLimit)
|
|
||||||
.Query(q =>
|
.Query(q =>
|
||||||
q.Terms(t => t.Field(f => f.OrderId).Terms(orderIds))
|
q.Terms(t => t.Field(f => f.OrderId).Terms(orderIds))
|
||||||
&& q.Terms(t => t.Field(f => f.TrackCode.Suffix("keyword")).Terms(trackCodes))
|
&& q.Terms(t => t.Field(f => f.TrackCode.Suffix("keyword")).Terms(trackCodes))
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (!search.IsValid)
|
if (!deleteResponse.IsValid)
|
||||||
{
|
{
|
||||||
throw new InvalidOperationException(
|
throw new InvalidOperationException(
|
||||||
$"轨迹查询失败,orderIds:[{orderIds.JoinAsString(", ")}],trackCodes:[{trackCodes.JoinAsString(", ")}],原因:{search.DebugInformation}。");
|
$"删除轨迹失败,orderIds:[{string.Join(", ", orderIds)}],trackCodes:[{string.Join(", ", trackCodes)}],原因:{deleteResponse.DebugInformation}。");
|
||||||
}
|
}
|
||||||
|
|
||||||
var tracks = search.ToIdList();
|
// var search = await Context.SearchAsync<TrackDetailsIndex>(x => x
|
||||||
|
// .Source(s => s.Includes(fd => fd.Field(f => f.IndexName)))
|
||||||
foreach (var track in tracks)
|
// .Size(SafelyLimit)
|
||||||
{
|
// .Query(q =>
|
||||||
await DeleteTrackByIdAsync(track.Id, track.IndexName);
|
// q.Terms(t => t.Field(f => f.OrderId).Terms(orderIds))
|
||||||
}
|
// && q.Terms(t => t.Field(f => f.TrackCode.Suffix("keyword")).Terms(trackCodes))
|
||||||
|
// )
|
||||||
|
// );
|
||||||
|
//
|
||||||
|
// if (!search.IsValid)
|
||||||
|
// {
|
||||||
|
// throw new InvalidOperationException(
|
||||||
|
// $"轨迹查询失败,orderIds:[{orderIds.JoinAsString(", ")}],trackCodes:[{trackCodes.JoinAsString(", ")}],原因:{search.DebugInformation}。");
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// var tracks = search.ToIdList();
|
||||||
|
//
|
||||||
|
// foreach (var track in tracks)
|
||||||
|
// {
|
||||||
|
// await DeleteTrackByIdAsync(track.Id, track.IndexName);
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task DeleteTrackByIdAsync(string id, string indexName)
|
public async Task DeleteTrackByIdAsync(string id, string indexName)
|
||||||
|
|||||||
@ -48,14 +48,15 @@ public class WarningRecordEsRepository : ElasticSearchContextAbstract<WarningRec
|
|||||||
{
|
{
|
||||||
foreach (var rule in rules)
|
foreach (var rule in rules)
|
||||||
{
|
{
|
||||||
var r = await Context.UpdateByQueryAsync<WarningRecordIndex>(u =>
|
var r = await Context.UpdateByQueryAsync<WarningRecordIndex>(u => u
|
||||||
u.Query(q =>
|
.Index($"{GlobalConst.TrackWarningRecordIndex}-*")
|
||||||
q.Term(f => f.RuleId, rule.ruleId)
|
.Query(q =>
|
||||||
&& q.Term(f => f.OrderId, rule.orderId)
|
q.Term(f => f.RuleId, rule.ruleId)
|
||||||
)
|
&& q.Term(f => f.OrderId, rule.orderId)
|
||||||
.Script(s => s.Source("ctx._source.warningStatus = params.warningStatus")
|
)
|
||||||
.Params(p => p.Add("warningStatus", WarningStatus.Processed))
|
.Script(s => s.Source("ctx._source.warningStatus = params.warningStatus")
|
||||||
)
|
.Params(p => p.Add("warningStatus", WarningStatus.Processed))
|
||||||
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (!r.IsValid)
|
if (!r.IsValid)
|
||||||
@ -94,6 +95,7 @@ public class WarningRecordEsRepository : ElasticSearchContextAbstract<WarningRec
|
|||||||
: null);
|
: null);
|
||||||
|
|
||||||
var data = await Context.SearchAsync<WarningRecordIndex>(x => x
|
var data = await Context.SearchAsync<WarningRecordIndex>(x => x
|
||||||
|
.Index(GlobalConst.TrackWarningRecordIndex)
|
||||||
.Source()
|
.Source()
|
||||||
.Sort(s => s.Field(f => f.CreateTime, SortOrder.Descending))
|
.Sort(s => s.Field(f => f.CreateTime, SortOrder.Descending))
|
||||||
.From((input.PageIndex - 1) * input.PageSize)
|
.From((input.PageIndex - 1) * input.PageSize)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user