diff --git a/Waste.Application/ThirdApiInfo/Dtos/ThirdApiInfoDto.cs b/Waste.Application/ThirdApiInfo/Dtos/ThirdApiInfoDto.cs index fb0fc0e..251b898 100644 --- a/Waste.Application/ThirdApiInfo/Dtos/ThirdApiInfoDto.cs +++ b/Waste.Application/ThirdApiInfo/Dtos/ThirdApiInfoDto.cs @@ -87,6 +87,25 @@ namespace Waste.Application.ThirdApiInfo /// public string DeviceId { get; set; } = ""; } + /// + /// 更新上报结果 + /// + public class UpdateStatusDto + { + /// + /// 记录ID + /// + public string ResultId { get; set; } = ""; + + /// + /// 机器码 + /// + public string ECode { get; set; } = ""; + /// + /// 上报状态,1-成功,0-失败 + /// + public int status { get; set; } = 0; + } /// /// 获取设备信息请求数据,并上报数据 diff --git a/Waste.Application/ThirdApiInfo/IOpenService.cs b/Waste.Application/ThirdApiInfo/IOpenService.cs index 78f1f6e..77ef8bd 100644 --- a/Waste.Application/ThirdApiInfo/IOpenService.cs +++ b/Waste.Application/ThirdApiInfo/IOpenService.cs @@ -30,5 +30,12 @@ namespace Waste.Application.ThirdApiInfo /// /// Task RegInfoAsync(string ecode); + + /// + /// 更新上报状态 + /// + /// + /// + Task UpdateStatusAsync(UpdateStatusDto data); } } diff --git a/Waste.Application/ThirdApiInfo/OpenAppService.cs b/Waste.Application/ThirdApiInfo/OpenAppService.cs index 70d5428..796274f 100644 --- a/Waste.Application/ThirdApiInfo/OpenAppService.cs +++ b/Waste.Application/ThirdApiInfo/OpenAppService.cs @@ -66,6 +66,16 @@ namespace Waste.Application.ThirdApiInfo { return await _openService.RegInfoAsync(ecode); } + /// + /// 更新上报状态 + /// + /// + /// + [HttpPost] + public async Task UpdateStatusAsync(UpdateStatusDto data) + { + return await _openService.UpdateStatusAsync(data); + } /// /// BUG上报 diff --git a/Waste.Application/ThirdApiInfo/OpenService.cs b/Waste.Application/ThirdApiInfo/OpenService.cs index 07efb75..56cb900 100644 --- a/Waste.Application/ThirdApiInfo/OpenService.cs +++ b/Waste.Application/ThirdApiInfo/OpenService.cs @@ -31,22 +31,20 @@ namespace Waste.Application.ThirdApiInfo _suZhouService = suZhouService; } /// - /// 获取设备上报相关信息 + /// 更新上报状态 /// /// /// - public async Task GetDevInfoAsync(GetDevInfoRequestDto data) + public async Task UpdateStatusAsync(UpdateStatusDto data) { - //更新上报记录结果 - Guid resultid=Guid.Empty; - if (!string.IsNullOrEmpty(data.ResultId) && Guid.TryParse(data.ResultId,out resultid)) + Guid resultid = Guid.Empty; + if (!string.IsNullOrEmpty(data.ResultId) && Guid.TryParse(data.ResultId, out resultid)) { - int status = data.data.ToInt();//1-成功,0-失败 if (await dbClient.Queryable().AnyAsync(x => x.ResultId == resultid)) { await dbClient.Updateable().SetColumns(x => new W_ResultExt { - Status = status + Status = data.status }).Where(x => x.ResultId == resultid).ExecuteCommandAsync(); } else @@ -54,7 +52,7 @@ namespace Waste.Application.ThirdApiInfo var insertdata = new W_ResultExt { Id = IDGen.NextID(), - Status = status, + Status = data.status, CreateTime = DateTime.Now, ResultId = resultid }; @@ -62,6 +60,60 @@ namespace Waste.Application.ThirdApiInfo } return new ResultInfo(ResultState.SUCCESS, "success"); } + return new ResultInfo(ResultState.SUCCESS, "记录id未找到"); + } + /// + /// 获取设备上报相关信息 + /// + /// + /// + public async Task GetDevInfoAsync(GetDevInfoRequestDto data) + { + //更新上报记录结果 + Guid resultid = Guid.Empty; + if (!string.IsNullOrEmpty(data.ResultId) && Guid.TryParse(data.ResultId, out resultid)) + { + var device = await dbClient.Queryable().FirstAsync(x => x.Ecode == data.ECode); + if (device == null) + { + return new ResultInfo(ResultState.FAIL, "设备未找到"); + } + var devicesecret = await dbClient.Queryable().FirstAsync(x => x.DeviceId == device.Id); + if (devicesecret == null || string.IsNullOrEmpty(devicesecret.Secret) + || string.IsNullOrEmpty(devicesecret.SecretHash) + || string.IsNullOrEmpty(devicesecret.DevId)) + { + return new ResultInfo(ResultState.FAIL, "设备还未获取验证信息"); + } + int timestamp = _suZhouService.GetUTCTimestamp(); + int noncestr = _suZhouService.GetNonce(); + var result = await dbClient.Queryable().FirstAsync(x => x.Id == resultid); + if(result == null) + { + return new ResultInfo(ResultState.SUCCESS, "记录id未找到"); + } + var returndata = new GetDevInfoResponseDto + { + DeviceId = devicesecret.DevId, + noncestr = noncestr, + timestamp = timestamp, + Secret = devicesecret.Secret, + SecretHash = devicesecret.SecretHash, + UserId = UserId, + PostUrl = ApiUrl, + ScanningTime = timestamp, + ResultId = resultid, + trash = result.Registration, + Weight = result.GrossWeight.ToDouble(), + status = 0, + IsSuccessed = true, + type = TrashType(result.WasteType) + }; + string[] paramlist = new string[] { + returndata.Weight.ToString(),returndata.trash,returndata.type.ToString(),returndata.ScanningTime.ToString(),returndata.status.ToString()}; + returndata.sign = _suZhouService.GetUserApiSign(returndata.Secret, paramlist); + return new ResultInfo(ResultState.SUCCESS, "success", returndata); + } else { var device = await dbClient.Queryable().FirstAsync(x => x.Ecode == data.ECode); diff --git a/Waste.Application/Waste.Application.xml b/Waste.Application/Waste.Application.xml index d3f0b56..b45eae5 100644 --- a/Waste.Application/Waste.Application.xml +++ b/Waste.Application/Waste.Application.xml @@ -2057,6 +2057,26 @@ 设备ID + + + 更新上报结果 + + + + + 记录ID + + + + + 机器码 + + + + + 上报状态,1-成功,0-失败 + + 获取设备信息请求数据,并上报数据 @@ -2198,6 +2218,13 @@ + + + 更新上报状态 + + + + 开放数据 @@ -2224,6 +2251,13 @@ + + + 更新上报状态 + + + + BUG上报 @@ -2257,6 +2291,13 @@ 设备对接接口 + + + 更新上报状态 + + + + 获取设备上报相关信息 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 33dc3c3..331573a 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|2021-08-13T07:24:09.4521125Z;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|2021-08-13T11:32:53.6307075Z;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