|
@@ -4,6 +4,7 @@ using Hotline.DataSharing.Enterprise;
|
|
using Hotline.DataSharing.Order;
|
|
using Hotline.DataSharing.Order;
|
|
using Hotline.DataSharing.Province.Extend;
|
|
using Hotline.DataSharing.Province.Extend;
|
|
using Hotline.DataSharing.Province.HuiJu.Send;
|
|
using Hotline.DataSharing.Province.HuiJu.Send;
|
|
|
|
+using Hotline.DataSharing.Province.Notifications;
|
|
using Hotline.DataSharing.Province.Other;
|
|
using Hotline.DataSharing.Province.Other;
|
|
using Hotline.DataSharing.Province.XieTong.Knowledge;
|
|
using Hotline.DataSharing.Province.XieTong.Knowledge;
|
|
using Hotline.DataSharing.Province.XieTong.Receive;
|
|
using Hotline.DataSharing.Province.XieTong.Receive;
|
|
@@ -12,11 +13,15 @@ using Hotline.Share.Dtos.DataSharing.Province;
|
|
using Hotline.Share.Dtos.DataSharing.Province.XieTong.Knowledge;
|
|
using Hotline.Share.Dtos.DataSharing.Province.XieTong.Knowledge;
|
|
using Hotline.Share.Dtos.DataSharing.Province.XieTong.Receive;
|
|
using Hotline.Share.Dtos.DataSharing.Province.XieTong.Receive;
|
|
using Hotline.Share.Dtos.DataSharing.Province.XieTong.Send;
|
|
using Hotline.Share.Dtos.DataSharing.Province.XieTong.Send;
|
|
|
|
+using Hotline.Share.Dtos.FlowEngine.Workflow;
|
|
|
|
+using Hotline.Users;
|
|
using MapsterMapper;
|
|
using MapsterMapper;
|
|
using MediatR;
|
|
using MediatR;
|
|
using Newtonsoft.Json;
|
|
using Newtonsoft.Json;
|
|
using Sharing.Province.Dtos.HuiJu.Send;
|
|
using Sharing.Province.Dtos.HuiJu.Send;
|
|
|
|
+using System.Collections.Generic;
|
|
using System.Net;
|
|
using System.Net;
|
|
|
|
+using System.Threading;
|
|
using XF.Domain.Dependency;
|
|
using XF.Domain.Dependency;
|
|
using XF.Domain.Repository;
|
|
using XF.Domain.Repository;
|
|
|
|
|
|
@@ -461,7 +466,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
caseInfo.SyncState = "2";
|
|
caseInfo.SyncState = "2";
|
|
|
|
|
|
- caseInfo.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ caseInfo.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _receiveCaseExtendsRepository.UpdateAsync(caseInfo, cancellationToken);
|
|
await _receiveCaseExtendsRepository.UpdateAsync(caseInfo, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(caseInfo.Id, caseInfo.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(caseInfo.Id, caseInfo.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -538,6 +543,37 @@ namespace Hotline.DataSharing.Province.Services
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /// <summary>
|
|
|
|
+ /// 服务工单交办处理结果
|
|
|
|
+ /// </summary>
|
|
|
|
+ /// <param name="dto"></param>
|
|
|
|
+ /// <param name="cancellationToken"></param>
|
|
|
|
+ /// <returns></returns>
|
|
|
|
+ public async Task GetCaseResultReceivePusher(DsGetCaseResultReceive dto, CancellationToken cancellationToken)
|
|
|
|
+ {
|
|
|
|
+ var pusher = _pusherProvider.CreatePusher(_channelConfigurationManager);
|
|
|
|
+ var dataReceive = _mapper.Map<GetCaseResultReceiveInfo>(dto);
|
|
|
|
+ var request = new GetCaseResultReceiveRequest();
|
|
|
|
+ request.ForeachClass(dataReceive);
|
|
|
|
+ request.SetData(dataReceive);
|
|
|
|
+
|
|
|
|
+ var response = await pusher.PushGetCaseResultReceiveAsync(request, cancellationToken);
|
|
|
|
+
|
|
|
|
+ //如果推送成功修改数据状态
|
|
|
|
+ if (response != null)
|
|
|
|
+ {
|
|
|
|
+ if (response.Code == "1")
|
|
|
|
+ dto.SyncState = "1";
|
|
|
|
+ else
|
|
|
|
+ dto.SyncState = "2";
|
|
|
|
+
|
|
|
|
+ dto.ReturnResult = Newtonsoft.Json.JsonConvert.SerializeObject(response);
|
|
|
|
+ await _getCaseResultReceiveRepository.UpdateAsync(dto, cancellationToken);
|
|
|
|
+ //处理同步记录
|
|
|
|
+ await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
/// <summary>
|
|
/// <summary>
|
|
/// 退回申请请求
|
|
/// 退回申请请求
|
|
/// </summary>
|
|
/// </summary>
|
|
@@ -697,7 +733,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _remindCaseInfoRepository.UpdateAsync(dto, cancellationToken);
|
|
await _remindCaseInfoRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -730,7 +766,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _getKnowledgeInfoSendRepository.UpdateAsync(dto, cancellationToken);
|
|
await _getKnowledgeInfoSendRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -763,7 +799,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _getKnowledgeInfoUpdateRepository.UpdateAsync(dto, cancellationToken);
|
|
await _getKnowledgeInfoUpdateRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -798,7 +834,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _getKnowledgeInfoAbandonRepository.UpdateAsync(dto, cancellationToken);
|
|
await _getKnowledgeInfoAbandonRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -831,7 +867,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _sendRealTimeStatusRepository.UpdateAsync(dto, cancellationToken);
|
|
await _sendRealTimeStatusRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -864,7 +900,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _delayCaseInfoSendRepository.UpdateAsync(dto, cancellationToken);
|
|
await _delayCaseInfoSendRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -897,7 +933,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _zMHDCaseInfoPublicRepository.UpdateAsync(dto, cancellationToken);
|
|
await _zMHDCaseInfoPublicRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -939,7 +975,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _submitCaseTotalRepository.UpdateAsync(dto, cancellationToken);
|
|
await _submitCaseTotalRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
@@ -972,10 +1008,10 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize (response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _supplyCaseInfoSendRepository.UpdateAsync(dto, cancellationToken);
|
|
await _supplyCaseInfoSendRepository.UpdateAsync(dto, cancellationToken);
|
|
//处理同步记录
|
|
//处理同步记录
|
|
- await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize (response), cancellationToken: cancellationToken);
|
|
|
|
|
|
+ await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1005,11 +1041,11 @@ namespace Hotline.DataSharing.Province.Services
|
|
else
|
|
else
|
|
dto.SyncState = "2";
|
|
dto.SyncState = "2";
|
|
|
|
|
|
- dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize (response);
|
|
|
|
|
|
+ dto.ReturnResult = System.Text.Json.JsonSerializer.Serialize(response);
|
|
await _revokeCaseInfoRepository.UpdateAsync(dto, cancellationToken);
|
|
await _revokeCaseInfoRepository.UpdateAsync(dto, cancellationToken);
|
|
|
|
|
|
//处理同步记录
|
|
//处理同步记录
|
|
- await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize (response), cancellationToken: cancellationToken);
|
|
|
|
|
|
+ await UpdateWaitingPushData(dto.Id, dto.SyncState, System.Text.Json.JsonSerializer.Serialize(response), cancellationToken: cancellationToken);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1264,25 +1300,37 @@ namespace Hotline.DataSharing.Province.Services
|
|
//这里处理业务
|
|
//这里处理业务
|
|
if (response.custom.STEP_List != null && response.custom.STEP_List.Count > 0)
|
|
if (response.custom.STEP_List != null && response.custom.STEP_List.Count > 0)
|
|
{
|
|
{
|
|
|
|
+ //查询工单数据
|
|
|
|
+ var dataOrder = await _dataOrderRepository.GetAsync(p => p.ProvinceNo == CaseSerial, cancellationToken);
|
|
|
|
+ //这里调用业务接口,推送办理数据
|
|
|
|
+ List<WorkflowTraceDto> Traces = new List<WorkflowTraceDto>();
|
|
//遍历返回的数据
|
|
//遍历返回的数据
|
|
foreach (var item in response.custom.STEP_List)
|
|
foreach (var item in response.custom.STEP_List)
|
|
{
|
|
{
|
|
//检测当前数据是否存在,如果存在不处理,不存在新增到数据库并推送到业务系统
|
|
//检测当前数据是否存在,如果存在不处理,不存在新增到数据库并推送到业务系统
|
|
- if (!await _getCaseDistrecordSendRepository.AnyAsync(p => p.CaseSerial == response.custom.CASE_SERIAL && p.RowGuid == item.RowGuid))
|
|
|
|
|
|
+ if (!await _getCaseDistrecordSendRepository.AnyAsync(p => p.CaseSerial == response.custom.CASE_SERIAL && p.RowGuid == item.RowGuid, cancellationToken))
|
|
{
|
|
{
|
|
var tempData = _mapper.Map<DsGetCaseDistrecordSend>(item);
|
|
var tempData = _mapper.Map<DsGetCaseDistrecordSend>(item);
|
|
await _getCaseDistrecordSendRepository.AddAsync(tempData);
|
|
await _getCaseDistrecordSendRepository.AddAsync(tempData);
|
|
|
|
|
|
- //这里调用业务接口,推送办理数据
|
|
|
|
-
|
|
|
|
|
|
+ Traces.Add(new()
|
|
|
|
+ {
|
|
|
|
+ HandlerName = item.OperatorName,
|
|
|
|
+ HandlerOrgName = item.OperatorouName,
|
|
|
|
+ HandleTime = item.HandleTime,
|
|
|
|
+ Opinion = item.HandleOpinion
|
|
|
|
+ });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //往业务系统推送数据
|
|
|
|
+ if (dataOrder != null && Traces != null && Traces.Count > 0)
|
|
|
|
+ await _mediator.Send(new AddOrderTracesAsyncNotify { OrderId = dataOrder.OrderId, Traces = Traces }, cancellationToken);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
- /// 将文件流上传到附件服务器 ----还需要拉取文件流
|
|
|
|
|
|
+ /// 将文件流上传到附件服务器
|
|
/// </summary>
|
|
/// </summary>
|
|
/// <param name="dto"></param>
|
|
/// <param name="dto"></param>
|
|
/// <param name="fileName"></param>
|
|
/// <param name="fileName"></param>
|
|
@@ -1332,7 +1380,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
// 上传附件
|
|
// 上传附件
|
|
string strResult = CFormUpload.MultipartFormDataPost(strUrl, null, dicParam, strToken);
|
|
string strResult = CFormUpload.MultipartFormDataPost(strUrl, null, dicParam, strToken);
|
|
|
|
|
|
- return JsonConvert.DeserializeObject<ProvinceResponse>(strResult);
|
|
|
|
|
|
+ return JsonConvert.DeserializeObject<ProvinceResponse>(strResult);
|
|
}
|
|
}
|
|
catch (Exception)
|
|
catch (Exception)
|
|
{
|
|
{
|