jeremy 8 months ago
parent
commit
9d0091eced

+ 2 - 2
src/VitalMixtureService/Factury/JingQiApiHelper.cs

@@ -25,8 +25,8 @@ namespace VitalService.Factury
 
         public JingQiApiHelper(string serverUrl, double seconds = 30) : base(seconds)
         {
-            _serverUrl = serverUrl;
-            Logger.WriteLineInfo($"VitalMixtureService JingQiApiHelper init, serverUrl:{serverUrl}, seconds:{seconds}");
+            _serverUrl = serverUrl?.Trim('/') ?? string.Empty;
+            Logger.WriteLineInfo($"VitalMixtureService JingQiApiHelper init, serverUrl:{_serverUrl}, seconds:{seconds}");
         }
 
         /// <summary>

+ 114 - 0
src/VitalMixtureService/FrontService/Service/FacturyPostHistoryService.cs

@@ -0,0 +1,114 @@
+using WingServerCommon.Service;
+using WingInterfaceLibrary.Interface.VitalInterface;
+using WingInterfaceLibrary.Request.Vital;
+using WingInterfaceLibrary.Request.DBVitalRequest;
+using WingInterfaceLibrary.DTO.Vital;
+using WingInterfaceLibrary.Request;
+
+namespace VitalService.Service
+{
+    /// <summary>
+    /// 第三方厂商推送数据服务
+    /// </summary>
+    public partial class VitalService : JsonRpcService, IVitalFacturyPostHistoryService
+    {
+        /// <summary>
+        /// 创建数据
+        /// </summary>
+        /// <param name="request">创建请求</param>
+        /// <returns></returns>
+        public async Task<string> CreateFacturyPostHistoryAsync(CreateFacturyPostHistoryRequest request)
+        {
+            return await _vitalFacturyPostHistoryDBService.CreateFacturyPostHistoryDBAsync(new CreateFacturyPostHistoryDBRequest
+            {
+                FacturyUniqueCode = request.FacturyUniqueCode,
+                ApiType = request.ApiType,
+                FacturyUrl = request.FacturyUrl,
+                IDCardNo = request.IDCardNo,
+                PatientName = request.PatientName,
+                Status = request.Status,
+                PostTime = request.PostTime,
+                Headers = request.Headers,
+                Content = request.Content,
+                Result = request.Result,
+            });
+        }
+
+        /// <summary>
+        /// 根据编码获取第三方厂商推送记录
+        /// </summary>
+        /// <param name="request">数据编码</param>
+        /// <returns></returns>
+        public async Task<FacturyPostHistoryDTO> GetFacturyPostHistoryAsync(GetFacturyPostHistoryRequest request)
+        {
+            var dbRequest = new GetFacturyPostHistoryDBRequest
+            {
+                Code = request.Code,
+            };
+            return await _vitalFacturyPostHistoryDBService.GetFacturyPostHistoryDBAsync(dbRequest);
+        }
+
+        /// <summary>
+        /// 分页获取厂商推送记录
+        /// </summary>
+        /// <param name="request">分页请求</param>
+        /// <returns></returns>
+        public async Task<PageCollection<FacturyPostHistoryDTO>> GetFacturyPostHistoryByPageAsync(GetFacturyPostHistoryByPageRequest request)
+        {
+            var dbRequest = new GetFacturyPostHistoryByPageDBRequest
+            {
+                PageIndex = request.PageIndex,
+                PageSize = request.PageSize,
+                Keyword = request.Keyword,
+                StartTime = request.StartTime,
+                EndTime = request.EndTime,
+            };
+            return await _vitalFacturyPostHistoryDBService.GetFacturyPostHistoryByPageDBAsync(dbRequest);
+        }
+
+        /// <summary>
+        /// 删除厂商推送记录
+        /// </summary>
+        /// <param name="request">数据编码</param>
+        /// <returns></returns>
+        public async Task<bool> RemoveFacturyPostHistoryAsync(RemoveFacturyPostHistoryRequest request)
+        {
+            var dbRequest = new RemoveFacturyPostHistoryDBRequest
+            {
+                Code = request.Code,
+            };
+            return await _vitalFacturyPostHistoryDBService.RemoveFacturyPostHistoryDBAsync(dbRequest);
+        }
+
+        /// <summary>
+        /// 重发厂商推送记录
+        /// </summary>
+        /// <param name="request">数据编码</param>
+        /// <returns></returns>
+        public async Task<bool> ResendFacturyPostHistoryAsync(ResendFacturyPostHistoryRequest request)
+        {
+            var history = await _vitalFacturyPostHistoryDBService.GetFacturyPostHistoryDBAsync(new GetFacturyPostHistoryDBRequest
+            {
+                Code = request.Code,
+            });
+            if (history != null)
+            {
+                await _vitalFacturyPostHistoryDBService.CreateFacturyPostHistoryDBAsync(new CreateFacturyPostHistoryDBRequest
+                {
+                    FacturyUniqueCode = history.FacturyUniqueCode,
+                    ApiType = history.ApiType,
+                    FacturyUrl = history.FacturyUrl,
+                    IDCardNo = history.IDCardNo,
+                    PatientName = history.PatientName,
+                    Status = 1,
+                    // PostTime = request.PostTime,
+                    Headers = history.Headers,
+                    Content = history.Content,
+                    Result = history.Result,
+                });
+                return true;
+            }
+            return false;
+        }
+    }
+}