|
@@ -16,6 +16,7 @@ using Hotline.Share.Dtos.File;
|
|
|
using Hotline.Share.Dtos.Knowledge;
|
|
|
using Hotline.Share.Dtos.Order;
|
|
|
using Hotline.Share.Enums.DataSharing;
|
|
|
+using Hotline.Share.Enums.FlowEngine;
|
|
|
using Hotline.Share.Enums.Order;
|
|
|
using MapsterMapper;
|
|
|
using MediatR;
|
|
@@ -397,7 +398,7 @@ namespace Hotline.DataSharing.Province.Services
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
- /// 政民互动提交公开
|
|
|
+ /// 政民互动提交公开---已在接收大补数据中实现
|
|
|
/// </summary>
|
|
|
/// <param name="dto"></param>
|
|
|
/// <returns></returns>
|
|
@@ -970,51 +971,77 @@ namespace Hotline.DataSharing.Province.Services
|
|
|
/// <param name="dto"></param>
|
|
|
/// <param name="cancellationToken"></param>
|
|
|
/// <returns></returns>
|
|
|
- public async Task PublishOrder(OrderDto dto, CancellationToken cancellationToken)
|
|
|
+ public async Task PublishOrder(PublishPublishOrderDto dto, CancellationToken cancellationToken)
|
|
|
{
|
|
|
- #region 服务工单交办处理结果
|
|
|
- //判断是否是热线中心
|
|
|
- if (!string.IsNullOrEmpty(dto.ActualHandleOrgCode))
|
|
|
+ if (dto.Order.IsProvince && dto.Order.Source == ESource.ProvinceStraight)
|
|
|
{
|
|
|
- if (dto.ActualHandleOrgCode.Substring(0, 3) == "001")
|
|
|
+ #region 服务工单交办处理结果
|
|
|
+ //判断是否是热线中心
|
|
|
+ if (!string.IsNullOrEmpty(dto.Order.ActualHandleOrgCode) && dto.Order.ActualHandleOrgCode.Substring(0, 3) == "001")
|
|
|
+ dto.Order.ActualHandleOrgName = "热线中心";
|
|
|
+
|
|
|
+ var data = _mapper.Map<DsGetCaseResultReceive>(dto.Order);
|
|
|
+ data.ConcactType = "40";
|
|
|
+ data.FinishType = "1";
|
|
|
+ data.HandleTimeLong = dto.Order.AllDuration;
|
|
|
+ switch (dto.Order.RealCommunicationMode)
|
|
|
{
|
|
|
- dto.ActualHandleOrgName = "热线中心";
|
|
|
+ case ERealCommunicationMode.Phone:
|
|
|
+ data.ConcactType = "10";
|
|
|
+ break;
|
|
|
+ case ERealCommunicationMode.Locale:
|
|
|
+ data.ConcactType = "20";
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ data.ConcactType = "40";
|
|
|
+ break;
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- var data = _mapper.Map<DsGetCaseResultReceive>(dto);
|
|
|
- data.ConcactType = "40";
|
|
|
- data.FinishType = "1";
|
|
|
- data.HandleTimeLong = dto.AllDuration;
|
|
|
- data.CliengGuid = Guid.NewGuid().ToString();
|
|
|
- //将上报信息写入本地库
|
|
|
- data.Id = await _getCaseResultReceiveRepository.AddAsync(data, cancellationToken);
|
|
|
-
|
|
|
- //将待推送数据写入待推送表
|
|
|
- DsWaitingPushData pushData = new()
|
|
|
- {
|
|
|
- ServiceInterface = "GetCaseResultReceive",
|
|
|
- Data = System.Text.Json.JsonSerializer.Serialize(data),
|
|
|
- Priority = 0,
|
|
|
- PushUrl = "get_case_result_receive",
|
|
|
- Method = HttpMethods.Post,
|
|
|
- SyncID = data.Id
|
|
|
- };
|
|
|
- await _waitingPushDataRepository.AddAsync(pushData, cancellationToken);
|
|
|
- //处理附件
|
|
|
- await FileData(new List<FileJson>(), data.CaseSerial, data.CliengGuid, dto.AreaCode, cancellationToken);
|
|
|
- #endregion
|
|
|
+ data.CliengGuid = Guid.NewGuid().ToString();
|
|
|
|
|
|
- //这里业务系统处理
|
|
|
- if (dto.SourceChannelCode == "ZGZFW")
|
|
|
- {
|
|
|
+ //中国政府网的数据处理
|
|
|
+ if (dto.Order.SourceChannelCode == "ZGZFW")
|
|
|
+ {
|
|
|
+ data.Notes = "无";
|
|
|
+ data.MsgOpenByArea = dto.ProPublishState == true ? "1" : "0";
|
|
|
+ data.AreaNotPublicReason = dto.NoPubReason;
|
|
|
+ data.FeedBackAnswerContent = dto.ArrangeOpinion;
|
|
|
+ data.FeedBackTel = dto.FeedBackPhone;
|
|
|
+ data.EventType = "";
|
|
|
+ data.Eventname = "";
|
|
|
+ data.ContactFlag = "1";
|
|
|
+ data.AssessFlag = "1";
|
|
|
+ data.AssessOpinion = "1";
|
|
|
+ data.AssessContent = "";
|
|
|
+ }
|
|
|
+
|
|
|
+ //将上报信息写入本地库
|
|
|
+ data.Id = await _getCaseResultReceiveRepository.AddAsync(data, cancellationToken);
|
|
|
|
|
|
+ //将待推送数据写入待推送表
|
|
|
+ DsWaitingPushData pushData = new()
|
|
|
+ {
|
|
|
+ ServiceInterface = "GetCaseResultReceive",
|
|
|
+ Data = System.Text.Json.JsonSerializer.Serialize(data),
|
|
|
+ Priority = 0,
|
|
|
+ PushUrl = "get_case_result_receive",
|
|
|
+ Method = HttpMethods.Post,
|
|
|
+ SyncID = data.Id
|
|
|
+ };
|
|
|
+ await _waitingPushDataRepository.AddAsync(pushData, cancellationToken);
|
|
|
+ //处理附件
|
|
|
+ await FileData(new List<FileJson>(), data.CaseSerial, data.CliengGuid, dto.Order.AreaCode, cancellationToken);
|
|
|
+ #endregion
|
|
|
}
|
|
|
|
|
|
//政民互动提交公开
|
|
|
- if (dto.SourceChannelCode == "ZMHD")
|
|
|
+ if (dto.Order.SourceChannelCode == "ZMHD")
|
|
|
{
|
|
|
+ var data = _mapper.Map<DsZmhdCaseInfoPublic>(dto);
|
|
|
+ //将上报信息写入本地库
|
|
|
+ data.Id = await _zMHDCaseInfoPublicRepository.AddAsync(data);
|
|
|
|
|
|
+ //将待推送数据写入待推送表
|
|
|
+ await InitPushData("ZmhdCaseInfoPublic", System.Text.Json.JsonSerializer.Serialize(data), "zmhd_case_info_public", data.Id, 0, cancellationToken);
|
|
|
}
|
|
|
}
|
|
|
|