using CsharpHttpHelper; using DeviceRepair.DataAccess; using DeviceRepair.Models; using DeviceRepair.Models.Preserve; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; namespace DeviceRepairAndOptimization.Biz { public class FormManager { private static FormManager manager; public static FormManager Instance { get { if (manager == null) manager = new FormManager(); return manager; } } /// /// 点检表数据新增 /// /// /// public APIResponseData InsertSingle(MaintenanceFormVersionInfo Item) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.FormInsertSingle}", Method = "Post", ContentType = "application/json; charset=utf-8", Postdata = JsonConvert.SerializeObject(Item) }); break; default: apiResponseData = FormAccess.Instance.InsertSingle(Item, GlobalInfo.OperationInfo); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 判断点检表数据是否存在 /// /// /// public APIResponseData DataIsExists(MaintenanceFormVersionInfo Item) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.FormDataIsExists}", Method = "Post", ContentType = "application/json; charset=utf-8", Postdata = JsonConvert.SerializeObject(Item) }); break; default: apiResponseData = FormAccess.Instance.DataIsExists(Item); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 文件上传 /// /// /// public async Task UploadFile(string filePath) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { string FileExtension = Path.GetExtension(filePath); string newName = $"{Guid.NewGuid()}{FileExtension}"; switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": using (var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read)) apiResponseData = await ApiHelper.Instance.UploadFileAsync(ServiceRouteConstValue.UploadForm, fileStream, newName); break; default: break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取单条数据 /// /// /// public APIResponseData GetSingle(int PrimaryKey) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "未能获取到数据!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.GetFormGetSingle}?pk={PrimaryKey}", Method = "Get", ContentType = "application/json; charset=utf-8",//返回类型 可选项有默认值 }); break; default: apiResponseData = FormAccess.Instance.GetSingle(PrimaryKey); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 根据关键字筛选点检表 /// /// /// public APIResponseData GetQuery(string filterValue) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "未能获取到数据!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.FormDataQuery}?FilterString={filterValue}", Method = "Get", ContentType = "application/json; charset=utf-8",//返回类型 可选项有默认值 }); break; default: apiResponseData = FormAccess.Instance.GetQuery(filterValue); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 修改点检表备注信息 /// /// /// public APIResponseData ChangeRemark(MaintenanceFormVersionInfo Item) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.FormRemarkChange}", Method = "Post", ContentType = "application/json; charset=utf-8", Postdata = JsonConvert.SerializeObject(Item) }); break; default: apiResponseData = FormAccess.Instance.ChangeRemark(Item, GlobalInfo.OperationInfo); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 单行数据翻转当前状态(启用/禁用) /// /// /// /// public APIResponseData ChangeStauts(int PrimaryKey) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.FormDataStatusChange}?pk={PrimaryKey}", Method = "Post", ContentType = "application/json; charset=utf-8",//返回类型 可选项有默认值 }); break; default: apiResponseData = FormAccess.Instance.ChangeStauts(PrimaryKey, GlobalInfo.OperationInfo); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取设备信息树形结构 -- 按名称分类 /// /// public APIResponseData GetDeviceInformationTreeView() { APIResponseData apiResponseData = new APIResponseData { Code = -1 }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = ServiceRouteConstValue.GetDeviceInformationTreeView, Method = "Get", ContentType = "application/json; charset=utf-8", }); break; case "sql": apiResponseData = FormAccess.Instance.GetDeviceInformationTreeView(); break; default: break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 分配点检表到指定设备 /// /// /// public APIResponseData AssigningFormToDevices(List lst) { APIResponseData apiResponseData = new APIResponseData { Code = -1 }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = ServiceRouteConstValue.AssigningFormToDevices, Method = "Post", ContentType = "application/json;charset=utf-8", Postdata = JsonConvert.SerializeObject(lst) }); break; default: apiResponseData = FormAccess.Instance.AssigningFormToDevices(lst, GlobalInfo.OperationInfo); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } #region AM /// /// 获取AM的点检表列表 /// /// /// public APIResponseData GetQuery(MaintenanceFormFilter filter) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "未能获取到数据!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.GetAmFormList}", Method = "Post", ContentType = "application/json; charset=utf-8", Postdata = JsonConvert.SerializeObject(filter) }); break; default: apiResponseData = FormAccess.Instance.GetQuery(filter); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } public APIResponseData DataStatusChange(MaintenanceFormFilter filter) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "连接服务器出错!" }; try { switch (DeviceRepair.Utils.Config.Configurations.Properties.ConnType?.ToLower()) { case "api": apiResponseData = ApiHelper.Instance.SendMessage(new HttpItem { URL = $"{ServiceRouteConstValue.Form_StatusChange}", Method = "Post", ContentType = "application/json; charset=utf-8", Postdata = JsonConvert.SerializeObject(filter) }); break; default: apiResponseData = FormAccess.Instance.StatusChange(filter); break; } } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } #endregion } }