using DeviceRepair.Api.Common; using DeviceRepair.Api.CustomAttribute; using DeviceRepair.DataAccess; using DeviceRepair.Models; using System; using System.Collections.Generic; using System.Threading.Tasks; using System.Web.Http; namespace DeviceRepair.Api.Controllers { [RoutePrefix("Api/Plan")] public class PlanController : CFController { /// /// 保养计划批量新增数据 /// /// /// [HttpPost] [Route("InsertDatas")] [HttpAuthorize] public APIResponseData InsertDatas(List lst) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "操作失败!" }; try { GetParams(); if (lst == null || lst.Count == 0) throw new Exception("插入的数据集合,不能为空!"); return PlanAccess.Instance.InsertDatas(lst, OperationInfo); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return apiResponseData; } /// /// 获取当月保养计划弹出窗口数据 /// /// [HttpGet] [Route("GetPlanItems")] [HttpAuthorize] public APIResponseData GetPlanItems() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = PlanAccess.Instance.GetCurrentMonthPlanTips(); return apiResponseData; } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取当前年月的待保修项数量 /// /// [HttpGet] [HttpAuthorize] [Route("GetCurrentMonthPlanTipsCountAsync")] public APIResponseData GetCurrentMonthPlanTipsCountAsync() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = PlanAccess.Instance.GetCurrentMonthPlanTipsCountAsync(); return apiResponseData; } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取当前年月的待保修项数量 /// /// [HttpAuthorize, HttpGet, Route("SchedulerPlanTips")] public IHttpActionResult GetSchedulerPlanTips() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "接口调用失败!" }; try { apiResponseData = SchedulerAccess.Instance.GetSchedulerPlanTips(); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return Ok(apiResponseData); } [HttpGet] [HttpAuthorize] [Route("GetCurrentYearPlanSchedule")] public APIResponseData GetCurrentYearPlanSchedule() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "数据查询失败!" }; try { apiResponseData = PlanAccess.Instance.GetCurrentYearPlanSchedule(); return apiResponseData; } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 根据设备主键ID取指定年份计划数据 /// /// /// /// [HttpGet] [HttpAuthorize] [Route("GetPlanByEquipmentPkAndYear")] public APIResponseData GetDataByEquipmentAutoIdOnYear(int Year, int EquipmentAutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { return PlanAccess.Instance.GetDataByEquipmentAutoIdOnYear(Year, EquipmentAutoID); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取全部计划信息 /// /// [HttpGet] [HttpAuthorize] [Route("GetAllPlans")] public APIResponseData GetAllPlans() { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { return PlanAccess.Instance.GetAllPlans(); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 获取单条计划数据 /// /// /// [HttpGet,HttpAuthorize,Route("GetSinge")] public APIResponseData GetSinge(int AutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { return PlanAccess.Instance.GetSinge(AutoID); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message; } return apiResponseData; } /// /// 导出EXCEL的数据 /// /// [HttpGet] [HttpAuthorize] [Route("ExportXlsxDatas")] public APIResponseData ExportXlsxDatas(int Year, string RootName) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = "未能获取到数据" }; try { RootName = RootName ?? "KH"; return PlanAccess.Instance.ExportXlsxDatas(Year, RootName); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return apiResponseData; } /// /// 删除计划 /// /// /// /// [HttpPost] [HttpAuthorize] [Route("DeleteByYearAndEquipmentPk")] public APIResponseData DeleteByYearAndEquipmentPk(int Year, int EquipmentAutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"操作失败!" }; try { return PlanAccess.Instance.DeleteByYearAndEquipmentPk(Year, EquipmentAutoID); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return apiResponseData; } /// /// 获取当前计划是否存的保养记录 /// /// /// /// [HttpGet] [HttpAuthorize] [Route("GetPlanRecordProgress")] public APIResponseData GetPlanRecordProgress(int EquipmentAutoID, int Year) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { return PlanAccess.Instance.GetPlanRecordProgress(EquipmentAutoID, Year); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return apiResponseData; } /// /// 获取设备在年度的全部保养信息 /// /// /// /// [HttpGet] [HttpAuthorize] [Route("GetDeviceInformationPlans")] public APIResponseData GetDeviceInformationPlans(int EquipmentAutoID, int Year) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { return PlanAccess.Instance.GetDeviceInformationPlans(EquipmentAutoID, Year); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return apiResponseData; } /// /// 获取AM的计划列表 /// /// [HttpGet, HttpAuthorize, Route("GetAMPlans")] public IHttpActionResult GetAMPlans(string q, int Year = 0, string RootName = "OEM") { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { apiResponseData = PlanAccess.Instance.GetAMPlans(q, Year, RootName); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return Ok(apiResponseData); } /// /// 获取每日保养的计划完成情况 /// /// /// [HttpGet, HttpAuthorize, Route("GetDailyPlanCompleteStatus")] public IHttpActionResult GetDailyPlanCompleteStatus(int PlanAutoID) { APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" }; try { apiResponseData = PlanAccess.Instance.GetDailyPlanCompleteStatus(PlanAutoID); } catch (Exception ex) { apiResponseData.Code = -1; apiResponseData.Message = ex.Message.ToString(); } return Ok(apiResponseData); } } }