using ivf_tl_Entity.Entity; using ivf_tl_Entity.Entity.balance; using ivf_tl_Entity.Entity.Mark; using ivf_tl_Entity.Entity.Result; using ivf_tl_Entity.Enums; using ivf_tl_Entity.Response; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; using System.Security.Policy; using System.Text; using System.Threading.Tasks; namespace ivf_tl_Service.HttpProvider { public class DishProvider { LogService LogService { get; set; } HttpServiceCall httpServiceCall1 { get; set; } public DishProvider(HttpServiceCall _httpServiceCall, LogService _logService) { httpServiceCall1 = _httpServiceCall; LogService = _logService; } private void ExLog(Exception ex, string name) { LogService.ExceptionLog(ex, $"DishProvider.{name}", LogEnum.RunException); } private void ErrorLog(string message, LogEnum logType) { LogService.TLLog($"DishProvider.{message}", logType); } /// /// 设备管理 - 设备列表 /// /// public List GetTlInfoList() { string funcName = "GetTlInfoList"; string resultString = string.Empty; try { string url = "/api/businessManage/pc/embryoCultureRecord/getTlInfoList"; resultString = httpServiceCall1.callWebService(url); if (string.IsNullOrEmpty(resultString)) return new List(); var result = JsonConvert.DeserializeObject>>(resultString); if (!result.success) { ErrorLog($"{funcName}接口返回失败 {resultString}", LogEnum.RunError); return new List(); } if (result.data != null) return result.data; ErrorLog($"{funcName}接口返回成功但是无数据 {resultString}", LogEnum.RunError); return new List(); } catch (Exception ex) { ExLog(ex, $"{funcName}:[resultString:{resultString}]"); return new List(); } } /// /// 患者培养接口 开始培养-添加患者信息 /// /// /// public string StartDish(Dish dish) { string name = "StartDish"; try { string url = "/api/businessManage/pc/embryoCultureRecord/addCultureRecord"; string body = JsonConvert.SerializeObject(dish); string json = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(json)) return "服务器返回空"; var result = JsonConvert.DeserializeObject(json); if (!result.success) { ErrorLog($"{name}服务器返回失败 {json}", LogEnum.RunError); return result.message; } return null; } catch (Exception ex) { ExLog(ex, name); return ex.Message; } } /// /// 患者培养接口 编辑患者信息 /// /// /// public string UpDataDish(string body) { string name = "UpDataDish"; try { string url = "/api/businessManage/pc/embryoCultureRecord/updateCultureRecord"; string json = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(json)) return "服务器返回空"; var result = JsonConvert.DeserializeObject(json); if (!result.success) { ErrorLog($"{name}服务器返回失败 {json}", LogEnum.RunError); return result.message; } return null; } catch (Exception ex) { ExLog(ex, name); return ex.Message; } } /// /// 舱室平衡接口 舱室列表-开始平衡 /// /// /// public string StartBalance(string tlSn, int houseSn) { string name = "StartBalance"; try { string url = "/api/businessManage/pc/balance/startBalance"; string body = JsonConvert.SerializeObject(new { tlSn = tlSn, houseSn = houseSn }); string json = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(json)) return "服务器返回空"; var result = JsonConvert.DeserializeObject(json); if (!result.success) { ErrorLog($"{name}服务器返回失败 {json}", LogEnum.RunError); return result.message; } return null; } catch (Exception ex) { ExLog(ex, name); return ex.Message; } } /// /// 舱室平衡接口 舱室列表-结束平衡 /// /// /// public string StopBalance(long id) { string name = "StopBalance"; try { string url = "/api/businessManage/pc/balance/stopBalance"; string body = JsonConvert.SerializeObject(new { id = id }); string json = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(json)) return "服务器返回空"; var result = JsonConvert.DeserializeObject(json); if (!result.success) { ErrorLog($"{name}服务器返回失败 {json}", LogEnum.RunError); return result.message; } return null; } catch (Exception ex) { ExLog(ex, name); return ex.Message; } } public List GetNewPicApi(string tlsn, int housesn, List wellList) { string name = "GetNewPicApi"; try { string url = "/api/businessManage/pc/resource/getEmbryosLastPictures"; string body = JsonConvert.SerializeObject(new { tlSn = tlsn, houseSn = housesn, embryoIds = wellList, }); string json = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(json)) return new List(); var result = JsonConvert.DeserializeObject>>(json); if (!result.success) { ErrorLog($"{name}服务器返回失败 {json}", LogEnum.RunError); return new List(); } if (result.data != null && result.data.Any()) return result.data; ErrorLog($"{name}接口返回成功但是无数据 {json}", LogEnum.RunError); return new List(); } catch (Exception ex) { ExLog(ex, name); return new List(); } } /// /// 患者培养接口 培养记录 - 分页查询 /// /// public DishRecordResult SearchDishRecordApi(SearchDishRecordResponse searchDishRecord) { string funcName = "SearchDishRecordApi"; try { string url = "/api/businessManage/pc/embryoCultureRecord/getEmbryoCultureRecord"; string body = JsonConvert.SerializeObject(searchDishRecord, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); string resultString = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(resultString)) return new DishRecordResult() { IsSuccess = false }; var rs = JsonConvert.DeserializeObject>(resultString); if (!rs.success) { ErrorLog($"{funcName}接口返回失败 {resultString}", LogEnum.RunError); return new DishRecordResult() { IsSuccess = false }; } if (rs.data != null) return rs.data; ErrorLog($"{funcName}接口返回成功但是无数据 {resultString}", LogEnum.RunError); return new DishRecordResult(); } catch (Exception ex) { ExLog(ex, funcName); return new DishRecordResult() { IsSuccess = false }; } } /// /// 患者培养接口 培养记录 - 查询数量 /// /// public AlarmHistoryNumResult SearchDishRecordNumApi(SearchDishRecordResponse searchDishRecord) { string funcName = "SearchDishRecordNumApi"; try { string url = "/api/businessManage/pc/embryoCultureRecord/getEmbryoCultureRecordNum"; string body = JsonConvert.SerializeObject(searchDishRecord, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); string resultString = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(resultString)) return new AlarmHistoryNumResult(); var rs = JsonConvert.DeserializeObject>(resultString); if (!rs.success) { ErrorLog($"{funcName}接口返回失败 {resultString}", LogEnum.RunError); return new AlarmHistoryNumResult(); } if (rs.data != null) return rs.data; ErrorLog($"{funcName}接口返回成功但是无数据 {resultString}", LogEnum.RunError); return new AlarmHistoryNumResult(); } catch (Exception ex) { ExLog(ex, funcName); return new AlarmHistoryNumResult(); } } /// /// 患者培养接口 患者管理 - 详情 /// /// public Dish GetDishByIdApi(long id) { string funcName = "GetDishByIdApi"; try { string url = "/api/businessManage/pc/embryoCultureRecord/getCultureRecordById"; Dictionary body = new Dictionary { { "id", id.ToString() } }; string resultString = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(resultString)) return new Dish(); var rs = JsonConvert.DeserializeObject>(resultString); if (!rs.success) { ErrorLog($"{funcName}接口返回失败 {resultString}", LogEnum.RunError); return new Dish(); } if (rs.data != null) return rs.data; ErrorLog($"{funcName}接口返回成功但是无数据 {resultString}", LogEnum.RunError); return new Dish(); } catch (Exception ex) { ExLog(ex, funcName); return new Dish(); } } public string DeleteDishRecordApi(long id) { string name = "DeleteDishRecordApi"; try { string url = "/api/businessManage/pc/embryoCultureRecord/deleteEmbryoCultureRecord"; Dictionary body = new Dictionary() { { "id", id.ToString() } }; string json = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(json)) return "服务器返回空"; var result = JsonConvert.DeserializeObject(json); if (!result.success) { ErrorLog($"{name}服务器返回失败 {json}", LogEnum.RunError); return result.message; } return null; } catch (Exception ex) { ExLog(ex, name); return ex.Message; } } public byte[] GetImageByte(string imageUrl) { string funcName = "GetImageByte"; try { return httpServiceCall1.GetImageByteApi(imageUrl); } catch (Exception ex) { ExLog(ex, funcName); return null; } } public ReportMarkData GetCultureRecordDetailByIdApi(long id) { string funcName = "GetCultureRecordDetailByIdApi"; try { string url = "/api/businessManage/pc/embryoCultureRecord/getCultureRecordDetailById"; Dictionary body = new Dictionary(); body.Add("id", id.ToString()); string resultString = httpServiceCall1.callWebService(url, body); if (string.IsNullOrEmpty(resultString)) return null; ResultEntity rs = JsonConvert.DeserializeObject>(resultString); if (!rs.success) { ErrorLog($"{funcName}接口返回失败 {resultString}", LogEnum.RunError); return null; } if (rs.data != null) return rs.data; ErrorLog($"{funcName}接口返回成功但是无数据 {resultString}", LogEnum.RunError); return null; } catch (Exception ex) { ExLog(ex, funcName); return null; } } } }