From 3af1b42a5c35d087956f6e8ea95a2e137d019e56 Mon Sep 17 00:00:00 2001 From: Hinse <756681202@qq.com> Date: Tue, 12 Jul 2022 17:53:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=86=E5=8F=B2=E8=AE=B0=E5=BD=95=E7=AC=AC?= =?UTF-8?q?=E4=B8=89=E6=96=B9=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Waste.Application/Mapper.cs | 7 + .../ResultInfos/Dtos/ResultDto.cs | 182 +++++++++++++++++- .../ResultInfos/IResultService.cs | 12 +- .../ResultInfos/ResultAppService.cs | 13 ++ .../ResultInfos/ResultService.cs | 57 ++++++ .../ThirdApiInfo/OpenAppService.cs | 8 +- Waste.Application/Waste.Application.xml | 103 +++++++++- Waste.Web.Entry/Pages/Result/Index.cshtml | 14 ++ .../waste.ybhdmob.com.pubxml.user | 2 +- 9 files changed, 390 insertions(+), 8 deletions(-) diff --git a/Waste.Application/Mapper.cs b/Waste.Application/Mapper.cs index 1e84ee1..9052783 100644 --- a/Waste.Application/Mapper.cs +++ b/Waste.Application/Mapper.cs @@ -23,6 +23,13 @@ namespace Waste.Application config.ForType() .Map(dest => dest.Time, src => src.Time.GetTimeStamp()) ; + config.ForType() + .Map(dest => dest.Time, src => src.Time.GetTimeStamp()) + ; + config.ForType() + .Map(dest => dest.Time, src => src.CreateTime.GetTimeStamp()) + .Map(dest => dest.Weight, src => src.GrossWeight.ToDecimal()) + ; } } } \ No newline at end of file diff --git a/Waste.Application/ResultInfos/Dtos/ResultDto.cs b/Waste.Application/ResultInfos/Dtos/ResultDto.cs index d219dec..00a9cfc 100644 --- a/Waste.Application/ResultInfos/Dtos/ResultDto.cs +++ b/Waste.Application/ResultInfos/Dtos/ResultDto.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -7,33 +8,146 @@ using Waste.Domain; namespace Waste.Application { + /// + /// 投放记录列表 + /// + public class ResultListByEquS2CDto + { + /// + /// 垃圾类别 + /// + public string WasteType { get; set; } + + /// + /// 物品小类别 + /// + public string WasteSType { get; set; } = ""; + + /// + /// 重量,单位KG + /// + public string Weight { get; set; } + + /// + /// 垃圾桶编号 + /// + public string TrashCode { get; set; } + + /// + /// 上报时间 + /// + public long Time { get; set; } + } + + /// + /// 投放记录列表 + /// + public class ResultListByEquS2SDto : ResultListByEquS2CDto + { + /// + /// 上报时间 + /// + public DateTime CreateTime { get; set; } + + /// + /// 测量记录ID + /// + public Guid Id { get; set; } + + /// + /// 毛重 + /// + public decimal GrossWeight { get; set; } + } + + /// + /// 查询投放记录 + /// + public class ResultListByEquC2SDto : IValidatableObject + { + /// + /// 当前页 + /// + public int offset { get; set; } = 1; + + /// + /// 每页显示的数量 + /// + public int limit { get; set; } = 10; + + /// + /// 开始时间 + /// + public DateTime? StartTime { get; set; } + + /// + /// 结束时间 + /// + public DateTime? EndTime { get; set; } + + /// + /// 设备ID + /// + public Guid DeviceId { get; set; } + + public IEnumerable Validate(ValidationContext validationContext) + { + if (DeviceId == Guid.Empty) + { + yield return new ValidationResult("设备ID不可为空", new[] { nameof(DeviceId) }); + } + if (limit > 100) + { + yield return new ValidationResult("一次最多100条记录", new[] { nameof(limit) }); + } + if (offset <= 0) + { + yield return new ValidationResult("页码需从1开始", new[] { nameof(offset) }); + } + if (StartTime.HasValue && StartTime.Value.Date > DateTime.Now.Date) + { + yield return new ValidationResult("开始时间不可超过当天", new[] { nameof(StartTime) }); + } + if (EndTime.HasValue && EndTime.Value.Date > DateTime.Now.Date) + { + yield return new ValidationResult("结束时间不可超过当天", new[] { nameof(StartTime) }); + } + } + } + public class ResultList : W_Result { /// /// 商户名称 /// public string BusinessName { get; set; } + /// /// 设备名称 /// public string DeviceName { get; set; } + /// /// 设备地址 /// public string DeviceAddress { get; set; } + /// /// 设备出厂序列号 /// public string DeviceFacEcode { get; set; } + /// /// 设备编号 /// public string DeviceEcode { get; set; } + /// /// 上报是否成功,1-成功,0-失败 /// public int PostStatus { get; set; } } + /// /// 上传的数据包体 /// @@ -43,70 +157,87 @@ namespace Waste.Application /// 固定头 /// public string Key { get; set; } = ""; + /// /// 数据体长度 /// public int Len { get; set; } = 0; + /// /// IMEI /// public string IMEI { get; set; } = ""; + /// /// ICCID /// public string ICCID { get; set; } = ""; + /// /// IMSI /// public string IMSI { get; set; } = ""; + /// /// 信号强度 /// public string GSLQ { get; set; } = ""; + /// /// 时间 /// public string Time { get; set; } + /// /// 经度 /// public string Longitude { get; set; } = ""; + /// /// 纬度 /// public string Latitude { get; set; } = ""; + /// /// 设备地区 /// public string City { get; set; } = ""; + /// /// 设备详细地点 /// public string Area { get; set; } = ""; + /// /// 垃圾类别 /// public string WasteType { get; set; } = ""; + /// /// 重量,KG /// public string Weight { get; set; } = "0"; + /// /// 内容 /// public string Body { get; set; } = ""; + /// /// 字符串结果 /// public string Str { get; set; } = ""; + /// /// 是否是否通过校检,true-是,false-否 /// public bool IsChecked { get; set; } = true; + /// /// 是否为心跳包数据 /// public bool IsHeart { get; set; } = false; + /// /// 是否为有效测量 /// @@ -122,24 +253,29 @@ namespace Waste.Application /// 垃圾类别小类 /// public string WasteSType { get; set; } = ""; + /// /// 消息ID /// public string UUID { get; set; } = ""; + /// /// 上报时间 /// public string UploadTime { get; set; } = ""; + /// /// 价格 /// public string Price { get; set; } = ""; + /// /// 金额 /// public string Amount { get; set; } = ""; + /// - /// 操作员 + /// 操作员 /// public string OpUser { get; set; } = ""; } @@ -147,76 +283,93 @@ namespace Waste.Application /// /// A8协议模块上传的数据包体 /// - public class A8MyPackage:A8Package + public class A8MyPackage : A8Package { /// /// 固定头 /// public string Key { get; set; } = ""; + /// /// 数据体长度 /// public int Len { get; set; } = 0; + /// /// IMEI /// public string IMEI { get; set; } = ""; + /// /// ICCID /// public string ICCID { get; set; } = ""; + /// /// IMSI /// public string IMSI { get; set; } = ""; + /// /// 信号强度 /// public string GSLQ { get; set; } = ""; + /// /// 时间 /// public string Time { get; set; } + /// /// 经度 /// public string Longitude { get; set; } = ""; + /// /// 纬度 /// public string Latitude { get; set; } = ""; + /// /// 桶大小 /// public string size { get; set; } = ""; + /// /// 垃圾桶编号 /// public string trashcode { get; set; } = ""; + /// /// 垃圾类别 /// public string WasteType { get; set; } = ""; + /// /// 重量,KG /// public string Weight { get; set; } = "0"; + /// /// 内容 /// public string Body { get; set; } = ""; + /// /// 字符串结果 /// public string Str { get; set; } = ""; + /// /// 是否是否通过校检,true-是,false-否 /// public bool IsChecked { get; set; } = true; + /// /// 是否为心跳包数据 /// public bool IsHeart { get; set; } = false; + /// /// 是否为有效测量 /// @@ -232,75 +385,93 @@ namespace Waste.Application /// 固定头 /// public string Key { get; set; } = ""; + /// /// 数据体长度 /// public int Len { get; set; } = 0; + /// /// IMEI /// public string IMEI { get; set; } = ""; + /// /// ICCID /// public string ICCID { get; set; } = ""; + /// /// IMSI /// public string IMSI { get; set; } = ""; + /// /// 信号强度 /// public string GSLQ { get; set; } = ""; + /// /// 时间 /// public string Time { get; set; } + /// /// 经度 /// public string Longitude { get; set; } = ""; + /// /// 纬度 /// public string Latitude { get; set; } = ""; + /// /// 桶大小 /// public string size { get; set; } = ""; + /// /// 垃圾桶编号 /// public string trashcode { get; set; } = ""; + /// /// 垃圾类别 /// public string WasteType { get; set; } = ""; + /// /// 重量,KG /// public string Weight { get; set; } = "0"; + /// /// 内容 /// public string Body { get; set; } = ""; + /// /// 字符串结果 /// public string Str { get; set; } = ""; + /// /// 是否是否通过校检,true-是,false-否 /// public bool IsChecked { get; set; } = true; + /// /// 是否为心跳包数据 /// public bool IsHeart { get; set; } = false; + /// /// 是否为有效测量 /// public bool IsWeight { get; set; } = false; } + /// /// wifi模块上传的数据包体 /// @@ -310,25 +481,30 @@ namespace Waste.Application /// 设备机器码 /// public string sn { get; set; } + /// /// 桶大小 /// public string size { get; set; } = ""; + /// /// 垃圾桶编号 /// public string trashcode { get; set; } = ""; + /// /// 垃圾类别 /// public string WasteType { get; set; } = ""; + /// /// 重量,KG /// public string Weight { get; set; } = "0"; + /// /// 是否为心跳包 /// public bool IsHeart { get; set; } = false; } -} +} \ No newline at end of file diff --git a/Waste.Application/ResultInfos/IResultService.cs b/Waste.Application/ResultInfos/IResultService.cs index d27fd52..30220d7 100644 --- a/Waste.Application/ResultInfos/IResultService.cs +++ b/Waste.Application/ResultInfos/IResultService.cs @@ -18,12 +18,14 @@ namespace Waste.Application /// /// Task> GetListAsync(QueryParams param); + /// /// 添加记录 /// /// /// Task InsertResultAsync(MyPackage myPackage); + /// /// 新的4G模块测量结果增加 /// @@ -37,11 +39,19 @@ namespace Waste.Application /// /// Task InsertResultByA84GAsync(A8MyPackage myPackage); + /// /// wifi模块测量结果增加 /// /// /// Task InsertResultByWifiAsync(WifiPackage data); + + /// + /// 查询历史投放记录 + /// + /// + /// + Task> GetListByEquAsync(ResultListByEquC2SDto input); } -} +} \ No newline at end of file diff --git a/Waste.Application/ResultInfos/ResultAppService.cs b/Waste.Application/ResultInfos/ResultAppService.cs index 7fd3407..8621d27 100644 --- a/Waste.Application/ResultInfos/ResultAppService.cs +++ b/Waste.Application/ResultInfos/ResultAppService.cs @@ -48,5 +48,18 @@ namespace Waste.Application.ResultInfos { await _resultService.InsertResultByWifiAsync(data); } + + /// + /// 查询历史投放记录 + /// + /// + /// + [HttpPost] + [Route("api/open/getresultlist")] + [ApiDescriptionSettings("DevApi")] + public async Task> GetListByEquAsync(ResultListByEquC2SDto input) + { + return await _resultService.GetListByEquAsync(input); + } } } \ No newline at end of file diff --git a/Waste.Application/ResultInfos/ResultService.cs b/Waste.Application/ResultInfos/ResultService.cs index 319d2c5..db97437 100644 --- a/Waste.Application/ResultInfos/ResultService.cs +++ b/Waste.Application/ResultInfos/ResultService.cs @@ -10,6 +10,7 @@ using SqlSugar; using System; using System.Collections.Generic; using System.Linq; +using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; using Waste.Application.SubscribeInfo; @@ -60,6 +61,18 @@ namespace Waste.Application { temquery = temquery.Where(t => SqlFunc.Subqueryable().Where(e => e.Name.Contains(val) && t.DeviceId == e.Id).Any()); } + else if (x.Name.Equals("poststatus", StringComparison.OrdinalIgnoreCase)) + { + var status = val.ToInt(); + if (status >= 0) + { + temquery = temquery.Where(t => SqlFunc.Subqueryable().Where(e => e.Status == status && t.Id == e.ResultId).Any()); + } + else + { + temquery = temquery.Where(t => SqlFunc.Subqueryable().Where(e => t.Id == e.ResultId).NotAny()); + } + } else { conModels.Add(new ConditionalModel() @@ -146,6 +159,50 @@ namespace Waste.Application }; } + /// + /// 查询历史投放记录 + /// + /// + /// + public async Task> GetListByEquAsync(ResultListByEquC2SDto input) + { + RefAsync totalnum = 0; + Expression> exp = Expressionable.Create().AndIF(input.StartTime.HasValue, x => x.CreateTime >= input.StartTime).AndIF(input.EndTime.HasValue, x => x.CreateTime <= input.EndTime).And(x => x.DeviceId == input.DeviceId).ToExpression(); + var query = await dbClient.Queryable() + .Where(exp) + .OrderBy(x => x.CreateTime, OrderByType.Desc) + .Select(x => new ResultListByEquS2SDto + { + CreateTime = x.CreateTime, + Id = x.Id, + TrashCode = x.Registration, + WasteType = x.WasteType, + GrossWeight = x.GrossWeight + }) + .Mapper((it, cache) => + { + var allext = cache.Get(list => + { + var ids = list.Select(x => x.Id).ToList(); + return dbClient.Queryable().Where(e => ids.Contains(e.ResultId)).ToList(); + }); + var ext = allext.FirstOrDefault(x => x.ResultId == it.Id); + if (ext != null) + { + it.WasteSType = ext.WasteSType; + } + }) + .ToPageListAsync(input.offset, input.limit, totalnum); + var list = query.Adapt>(); + return new PageParms + { + page = input.offset, + Items = list, + totalnum = totalnum, + limit = input.limit + }; + } + /// /// wifi模块测量结果增加 /// diff --git a/Waste.Application/ThirdApiInfo/OpenAppService.cs b/Waste.Application/ThirdApiInfo/OpenAppService.cs index 09264ea..37a3553 100644 --- a/Waste.Application/ThirdApiInfo/OpenAppService.cs +++ b/Waste.Application/ThirdApiInfo/OpenAppService.cs @@ -27,12 +27,14 @@ namespace Waste.Application.ThirdApiInfo private static IWebHostEnvironment _hostingEnvironment; private readonly IHttpContextAccessor _httpContextAccessor; private static readonly FormOptions _defaultFormOptions = new FormOptions(); + public OpenAppService(IOpenService openService, IWebHostEnvironment webHostEnvironment, IHttpContextAccessor httpContextAccessor) { _openService = openService; _hostingEnvironment = webHostEnvironment; _httpContextAccessor = httpContextAccessor; } + /// /// 获取设备上报相关信息 /// @@ -54,6 +56,7 @@ namespace Waste.Application.ThirdApiInfo { return await _openService.PostHeartAsync(data); } + /// /// 获取设备注册信息,第一次开机使用 /// @@ -65,6 +68,7 @@ namespace Waste.Application.ThirdApiInfo { return await _openService.RegInfoAsync(ecode); } + /// /// 更新上报状态 /// @@ -110,7 +114,6 @@ namespace Waste.Application.ThirdApiInfo { if (!MultipartRequestHelper.HasFileContentDisposition(contentDisposition)) { - } else { @@ -207,6 +210,7 @@ namespace Waste.Application.ThirdApiInfo } }; } + /// /// 正式升级 /// @@ -308,4 +312,4 @@ namespace Waste.Application.ThirdApiInfo return await _openService.WifiPostAsync(data); } } -} +} \ No newline at end of file diff --git a/Waste.Application/Waste.Application.xml b/Waste.Application/Waste.Application.xml index 80f757d..e224e98 100644 --- a/Waste.Application/Waste.Application.xml +++ b/Waste.Application/Waste.Application.xml @@ -1594,6 +1594,86 @@ + + + 投放记录列表 + + + + + 垃圾类别 + + + + + 物品小类别 + + + + + 重量,单位KG + + + + + 垃圾桶编号 + + + + + 上报时间 + + + + + 投放记录列表 + + + + + 上报时间 + + + + + 测量记录ID + + + + + 毛重 + + + + + 查询投放记录 + + + + + 当前页 + + + + + 每页显示的数量 + + + + + 开始时间 + + + + + 结束时间 + + + + + 设备ID + + 商户名称 @@ -1751,7 +1831,7 @@ - 操作员 + 操作员 @@ -2019,6 +2099,13 @@ + + + 查询历史投放记录 + + + + 投放记录 @@ -2045,6 +2132,13 @@ + + + 查询历史投放记录 + + + + 投放记录管理 @@ -2057,6 +2151,13 @@ + + + 查询历史投放记录 + + + + wifi模块测量结果增加 diff --git a/Waste.Web.Entry/Pages/Result/Index.cshtml b/Waste.Web.Entry/Pages/Result/Index.cshtml index 322cbed..701dd74 100644 --- a/Waste.Web.Entry/Pages/Result/Index.cshtml +++ b/Waste.Web.Entry/Pages/Result/Index.cshtml @@ -21,6 +21,16 @@ +
+
+ +
+
@@ -138,6 +148,10 @@ "Name": 'Name', "Type": QueryCond.Like, "Value": $("#Name").val() + },{ + "Name": 'poststatus', + "Type": QueryCond.Equal, + "Value": $("#poststatus").val() }]; var starttime = $("#time").val(); if (starttime != "") { diff --git a/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user b/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user index 569e7f9..b421454 100644 --- a/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user +++ b/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user @@ -5,6 +5,6 @@ https://go.microsoft.com/fwlink/?LinkID=208121. <_PublishTargetUrl>D:\webpublish\waste.ybhdmob.com - True|2022-07-07T07:15:35.7942932Z;True|2022-07-07T14:38:14.6580938+08:00;True|2022-07-07T14:32:33.3480279+08:00;True|2022-07-06T08:59:01.5108509+08:00;True|2022-06-21T14:41:45.3390865+08:00;False|2022-06-21T14:31:42.6318272+08:00;True|2022-06-21T14:07:42.4016410+08:00;True|2022-06-20T15:37:14.0002383+08:00;True|2022-06-20T08:32:15.3735483+08:00;True|2022-06-18T10:39:25.0997617+08:00;True|2022-06-15T11:23:32.6444305+08:00;True|2022-06-07T10:26:48.8057155+08:00;True|2022-05-19T14:38:58.4564787+08:00;True|2022-05-19T10:00:43.2712891+08:00;True|2022-05-17T18:00:53.2618269+08:00;True|2022-05-17T17:55:33.2053115+08:00;True|2022-05-17T17:38:48.8279756+08:00;True|2022-05-16T16:44:49.1758100+08:00;True|2022-03-30T10:54:32.5565057+08:00;True|2022-03-30T10:53:48.9972377+08:00;True|2022-03-30T10:50:31.5745775+08:00;True|2022-03-30T10:47:50.1605527+08:00;True|2022-03-30T10:15:59.9812921+08:00;True|2022-03-29T09:29:45.1039655+08:00;True|2022-03-29T09:21:47.0149226+08:00;True|2022-03-28T10:33:44.7419612+08:00;True|2022-03-28T10:22:40.9448563+08:00;True|2022-03-28T10:19:15.1438519+08:00;True|2022-01-20T10:39:53.2000547+08:00;True|2021-11-23T17:45:59.0399234+08:00;True|2021-11-23T14:52:52.6108389+08:00;True|2021-11-23T13:47:55.8909321+08:00;True|2021-11-23T13:46:38.7796888+08:00;True|2021-11-23T13:42:14.9551976+08:00;True|2021-11-23T13:40:54.9093258+08:00;True|2021-11-23T13:31:49.0003794+08:00;True|2021-11-23T13:29:43.7414639+08:00;True|2021-10-12T15:18:06.6012215+08:00;True|2021-10-12T15:11:17.7752651+08:00;True|2021-10-12T14:54:39.0578509+08:00;True|2021-10-12T11:25:18.7098128+08:00;True|2021-09-18T15:34:20.7386778+08:00;True|2021-09-15T11:09:28.0068993+08:00;True|2021-09-07T12:19:33.4635211+08:00;True|2021-09-07T11:36:13.4563799+08:00;True|2021-09-03T15:41:46.2819586+08:00;True|2021-08-31T17:16:16.0336390+08:00;True|2021-08-31T16:05:30.7224440+08:00;True|2021-08-23T09:44:46.2114418+08:00;True|2021-08-19T20:32:56.2854974+08:00;True|2021-08-18T14:01:33.0411246+08:00;True|2021-08-17T10:05:15.4299188+08:00;True|2021-08-13T19:32:53.6307075+08:00;True|2021-08-13T19:29:50.5876782+08:00;True|2021-08-13T19:14:14.2545106+08:00;True|2021-08-13T15:24:09.4521125+08:00;True|2021-08-13T14:59:40.4579407+08:00;True|2021-08-13T10:02:29.7650246+08:00;True|2021-08-13T09:45:10.6245894+08:00;True|2021-08-12T20:11:21.5851106+08:00;True|2021-08-12T20:00:42.4820498+08:00;True|2021-08-12T18:44:08.3079650+08:00;True|2021-08-12T18:35:47.4730766+08:00;True|2021-08-12T18:32:10.9361388+08:00;True|2021-08-12T18:30:21.4006961+08:00;True|2021-08-12T18:13:00.9624470+08:00;True|2021-08-12T18:10:12.3459311+08:00;True|2021-08-12T18:09:18.8656414+08:00;True|2021-08-12T17:35:24.7213607+08:00;True|2021-08-11T07:54:57.1322848+08:00;True|2021-08-10T10:16:40.7495389+08:00;True|2021-08-03T11:16:02.7897282+08:00;True|2021-08-02T16:39:27.2332369+08:00;True|2021-08-02T15:07:40.7995318+08:00;True|2021-08-02T14:32:29.6885424+08:00;True|2021-08-02T14:31:18.6578543+08:00;True|2021-08-02T14:27:57.1301002+08:00;True|2021-08-02T10:55:40.3542370+08:00;True|2021-08-02T09:44:28.0994056+08:00;True|2021-08-01T13:49:38.4071985+08:00;True|2021-08-01T13:36:45.5372120+08:00;True|2021-08-01T11:00:19.6165520+08:00;True|2021-08-01T10:38:51.4029710+08:00;True|2021-07-31T20:27:53.6583811+08:00;True|2021-07-31T18:35:23.4214441+08:00;True|2021-07-31T17:34:14.0712243+08:00;True|2021-07-31T14:50:43.2065556+08:00;True|2021-07-30T17:59:30.2223340+08:00;True|2021-07-30T17:57:35.9412910+08:00;True|2021-07-30T17:07:58.3305971+08:00;True|2021-07-30T17:04:10.9244859+08:00;True|2021-07-30T17:02:12.1943634+08:00;True|2021-07-30T16:16:22.2838331+08:00;True|2021-07-30T15:05:26.5664155+08:00;True|2021-07-30T14:57:59.1966108+08:00;True|2021-07-30T14:54:25.8172908+08:00;True|2021-07-30T14:52:20.9209995+08:00;True|2021-07-30T14:35:29.5239463+08:00;True|2021-07-30T09:32:38.2676032+08:00;True|2021-07-30T09:14:42.6170851+08:00;True|2021-07-29T19:06:09.1449349+08:00;True|2021-06-11T08:16:29.9542894+08:00;True|2021-06-04T14:46:02.2707457+08:00;True|2021-06-02T15:08:52.8245632+08:00;True|2021-06-02T15:05:50.3614099+08:00;True|2021-06-02T14:59:32.3690948+08:00;True|2021-06-02T14:10:25.1182836+08:00;True|2021-06-02T14:09:54.9215833+08:00;True|2021-06-01T10:41:54.9488501+08:00;True|2021-06-01T10:38:56.0283198+08:00;True|2021-05-28T13:59:02.2308877+08:00;True|2021-05-28T11:56:26.6796406+08:00;True|2021-05-28T11:28:00.4087907+08:00;True|2021-05-27T16:18:09.5993838+08:00;True|2021-05-27T16:07:31.3484951+08:00;True|2021-05-27T11:30:37.9119310+08:00;True|2021-05-27T11:28:35.5374674+08:00;True|2021-05-27T08:00:09.1625592+08:00;True|2021-05-26T20:42:17.0852150+08:00;True|2021-05-26T20:36:49.7527415+08:00;True|2021-05-25T17:57:31.8791293+08:00;True|2021-05-25T13:49:29.6488978+08:00;True|2021-05-25T13:48:24.6686105+08:00;True|2021-05-25T13:25:41.2512493+08:00;True|2021-05-24T17:55:33.3800078+08:00;True|2021-05-20T14:35:30.6957985+08:00;True|2021-05-20T13:17:22.6192995+08:00;True|2021-05-20T10:51:38.1268169+08:00;True|2021-05-19T19:50:03.7000224+08:00;True|2021-05-19T19:44:27.2518811+08:00;True|2021-05-19T19:43:26.5916681+08:00;True|2021-05-19T19:36:29.3197365+08:00;True|2021-05-19T19:30:00.3802430+08:00;True|2021-05-19T17:55:23.7939835+08:00;True|2021-05-19T11:05:17.9043392+08:00;True|2021-05-19T10:19:38.4839988+08:00;True|2021-05-19T10:17:19.7430612+08:00;True|2021-05-19T10:13:23.0031721+08:00;True|2021-05-19T10:06:03.9881599+08:00;True|2021-05-18T14:39:03.8876574+08:00;True|2021-05-18T14:23:46.9818836+08:00;True|2021-05-18T14:19:56.2382079+08:00;True|2021-05-18T11:29:53.5497590+08:00;True|2021-05-18T11:16:18.0123853+08:00;True|2021-05-17T18:59:52.4159105+08:00;True|2021-05-17T18:53:37.9438984+08:00;True|2021-05-17T18:48:14.9625161+08:00;True|2021-05-17T17:46:03.7723404+08:00;True|2021-05-17T17:14:20.2312990+08:00;True|2021-05-17T16:44:34.5837616+08:00;True|2021-05-17T16:25:20.1087804+08:00;True|2021-05-17T11:35:27.9388562+08:00; + True|2022-07-12T09:26:37.8289741Z;True|2022-07-07T15:15:35.7942932+08:00;True|2022-07-07T14:38:14.6580938+08:00;True|2022-07-07T14:32:33.3480279+08:00;True|2022-07-06T08:59:01.5108509+08:00;True|2022-06-21T14:41:45.3390865+08:00;False|2022-06-21T14:31:42.6318272+08:00;True|2022-06-21T14:07:42.4016410+08:00;True|2022-06-20T15:37:14.0002383+08:00;True|2022-06-20T08:32:15.3735483+08:00;True|2022-06-18T10:39:25.0997617+08:00;True|2022-06-15T11:23:32.6444305+08:00;True|2022-06-07T10:26:48.8057155+08:00;True|2022-05-19T14:38:58.4564787+08:00;True|2022-05-19T10:00:43.2712891+08:00;True|2022-05-17T18:00:53.2618269+08:00;True|2022-05-17T17:55:33.2053115+08:00;True|2022-05-17T17:38:48.8279756+08:00;True|2022-05-16T16:44:49.1758100+08:00;True|2022-03-30T10:54:32.5565057+08:00;True|2022-03-30T10:53:48.9972377+08:00;True|2022-03-30T10:50:31.5745775+08:00;True|2022-03-30T10:47:50.1605527+08:00;True|2022-03-30T10:15:59.9812921+08:00;True|2022-03-29T09:29:45.1039655+08:00;True|2022-03-29T09:21:47.0149226+08:00;True|2022-03-28T10:33:44.7419612+08:00;True|2022-03-28T10:22:40.9448563+08:00;True|2022-03-28T10:19:15.1438519+08:00;True|2022-01-20T10:39:53.2000547+08:00;True|2021-11-23T17:45:59.0399234+08:00;True|2021-11-23T14:52:52.6108389+08:00;True|2021-11-23T13:47:55.8909321+08:00;True|2021-11-23T13:46:38.7796888+08:00;True|2021-11-23T13:42:14.9551976+08:00;True|2021-11-23T13:40:54.9093258+08:00;True|2021-11-23T13:31:49.0003794+08:00;True|2021-11-23T13:29:43.7414639+08:00;True|2021-10-12T15:18:06.6012215+08:00;True|2021-10-12T15:11:17.7752651+08:00;True|2021-10-12T14:54:39.0578509+08:00;True|2021-10-12T11:25:18.7098128+08:00;True|2021-09-18T15:34:20.7386778+08:00;True|2021-09-15T11:09:28.0068993+08:00;True|2021-09-07T12:19:33.4635211+08:00;True|2021-09-07T11:36:13.4563799+08:00;True|2021-09-03T15:41:46.2819586+08:00;True|2021-08-31T17:16:16.0336390+08:00;True|2021-08-31T16:05:30.7224440+08:00;True|2021-08-23T09:44:46.2114418+08:00;True|2021-08-19T20:32:56.2854974+08:00;True|2021-08-18T14:01:33.0411246+08:00;True|2021-08-17T10:05:15.4299188+08:00;True|2021-08-13T19:32:53.6307075+08:00;True|2021-08-13T19:29:50.5876782+08:00;True|2021-08-13T19:14:14.2545106+08:00;True|2021-08-13T15:24:09.4521125+08:00;True|2021-08-13T14:59:40.4579407+08:00;True|2021-08-13T10:02:29.7650246+08:00;True|2021-08-13T09:45:10.6245894+08:00;True|2021-08-12T20:11:21.5851106+08:00;True|2021-08-12T20:00:42.4820498+08:00;True|2021-08-12T18:44:08.3079650+08:00;True|2021-08-12T18:35:47.4730766+08:00;True|2021-08-12T18:32:10.9361388+08:00;True|2021-08-12T18:30:21.4006961+08:00;True|2021-08-12T18:13:00.9624470+08:00;True|2021-08-12T18:10:12.3459311+08:00;True|2021-08-12T18:09:18.8656414+08:00;True|2021-08-12T17:35:24.7213607+08:00;True|2021-08-11T07:54:57.1322848+08:00;True|2021-08-10T10:16:40.7495389+08:00;True|2021-08-03T11:16:02.7897282+08:00;True|2021-08-02T16:39:27.2332369+08:00;True|2021-08-02T15:07:40.7995318+08:00;True|2021-08-02T14:32:29.6885424+08:00;True|2021-08-02T14:31:18.6578543+08:00;True|2021-08-02T14:27:57.1301002+08:00;True|2021-08-02T10:55:40.3542370+08:00;True|2021-08-02T09:44:28.0994056+08:00;True|2021-08-01T13:49:38.4071985+08:00;True|2021-08-01T13:36:45.5372120+08:00;True|2021-08-01T11:00:19.6165520+08:00;True|2021-08-01T10:38:51.4029710+08:00;True|2021-07-31T20:27:53.6583811+08:00;True|2021-07-31T18:35:23.4214441+08:00;True|2021-07-31T17:34:14.0712243+08:00;True|2021-07-31T14:50:43.2065556+08:00;True|2021-07-30T17:59:30.2223340+08:00;True|2021-07-30T17:57:35.9412910+08:00;True|2021-07-30T17:07:58.3305971+08:00;True|2021-07-30T17:04:10.9244859+08:00;True|2021-07-30T17:02:12.1943634+08:00;True|2021-07-30T16:16:22.2838331+08:00;True|2021-07-30T15:05:26.5664155+08:00;True|2021-07-30T14:57:59.1966108+08:00;True|2021-07-30T14:54:25.8172908+08:00;True|2021-07-30T14:52:20.9209995+08:00;True|2021-07-30T14:35:29.5239463+08:00;True|2021-07-30T09:32:38.2676032+08:00;True|2021-07-30T09:14:42.6170851+08:00;True|2021-07-29T19:06:09.1449349+08:00;True|2021-06-11T08:16:29.9542894+08:00;True|2021-06-04T14:46:02.2707457+08:00;True|2021-06-02T15:08:52.8245632+08:00;True|2021-06-02T15:05:50.3614099+08:00;True|2021-06-02T14:59:32.3690948+08:00;True|2021-06-02T14:10:25.1182836+08:00;True|2021-06-02T14:09:54.9215833+08:00;True|2021-06-01T10:41:54.9488501+08:00;True|2021-06-01T10:38:56.0283198+08:00;True|2021-05-28T13:59:02.2308877+08:00;True|2021-05-28T11:56:26.6796406+08:00;True|2021-05-28T11:28:00.4087907+08:00;True|2021-05-27T16:18:09.5993838+08:00;True|2021-05-27T16:07:31.3484951+08:00;True|2021-05-27T11:30:37.9119310+08:00;True|2021-05-27T11:28:35.5374674+08:00;True|2021-05-27T08:00:09.1625592+08:00;True|2021-05-26T20:42:17.0852150+08:00;True|2021-05-26T20:36:49.7527415+08:00;True|2021-05-25T17:57:31.8791293+08:00;True|2021-05-25T13:49:29.6488978+08:00;True|2021-05-25T13:48:24.6686105+08:00;True|2021-05-25T13:25:41.2512493+08:00;True|2021-05-24T17:55:33.3800078+08:00;True|2021-05-20T14:35:30.6957985+08:00;True|2021-05-20T13:17:22.6192995+08:00;True|2021-05-20T10:51:38.1268169+08:00;True|2021-05-19T19:50:03.7000224+08:00;True|2021-05-19T19:44:27.2518811+08:00;True|2021-05-19T19:43:26.5916681+08:00;True|2021-05-19T19:36:29.3197365+08:00;True|2021-05-19T19:30:00.3802430+08:00;True|2021-05-19T17:55:23.7939835+08:00;True|2021-05-19T11:05:17.9043392+08:00;True|2021-05-19T10:19:38.4839988+08:00;True|2021-05-19T10:17:19.7430612+08:00;True|2021-05-19T10:13:23.0031721+08:00;True|2021-05-19T10:06:03.9881599+08:00;True|2021-05-18T14:39:03.8876574+08:00;True|2021-05-18T14:23:46.9818836+08:00;True|2021-05-18T14:19:56.2382079+08:00;True|2021-05-18T11:29:53.5497590+08:00;True|2021-05-18T11:16:18.0123853+08:00;True|2021-05-17T18:59:52.4159105+08:00;True|2021-05-17T18:53:37.9438984+08:00;True|2021-05-17T18:48:14.9625161+08:00;True|2021-05-17T17:46:03.7723404+08:00;True|2021-05-17T17:14:20.2312990+08:00;True|2021-05-17T16:44:34.5837616+08:00;True|2021-05-17T16:25:20.1087804+08:00;True|2021-05-17T11:35:27.9388562+08:00; \ No newline at end of file