using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using Ropin.Inspection.Api.Common; using Ropin.Inspection.Api.Controllers; using Ropin.Inspection.Model; using Ropin.Inspection.Service; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace Ropin.Inspection.Api { /// /// 设备模板 /// public class TdevDeviceTemplateController : BaseController { public ILogger _logger { get; } private readonly ITdevDeviceTemplateService _TdevDeviceTemplateService; /// /// 构造函数 /// /// /// public TdevDeviceTemplateController(ITdevDeviceTemplateService TdevDeviceTemplateService, ILogger logger) { _TdevDeviceTemplateService = TdevDeviceTemplateService; _logger = logger; } /// /// 通过id获取设备模板信息 /// /// /// [HttpGet("GetDeviceTemplateAsync/{id}")] public async Task GetDeviceTemplateAsync(string id) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { var content = await _TdevDeviceTemplateService.GetConditionAsync(new TdevDeviceTemplateSearchModel { C_ID = id }); return new ApiResult(content.FirstOrDefault()); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 通过id获取设备模板二维码地址信息 /// /// /// [HttpGet("GetDevTemplateQRCodeAsync/{id}")] public async Task GetDevTemplateQRCodeAsync(string id) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { var content = await _TdevDeviceTemplateService.GetDevTemplateQRCodeAsync(id); return new ApiResult(content); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 获取所有设备模板 /// /// [HttpGet("GetDeviceTemplatesAsync")] public async Task GetDeviceTemplatesAsync() { try { var contentList = await _TdevDeviceTemplateService.GetAllAsync(); return new ApiResult>(contentList); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 通过设备模板名称条件查询 /// /// /// [HttpPost("GetDeviceTemplatesByAsync")] public async Task GetDeviceTemplatesByAsync(TdevDeviceTemplateSearchModel searchModel) { if (searchModel == null) { return new ApiResult(ReturnCode.ArgsError); } searchModel.IsPagination = false; try { var contentList = await _TdevDeviceTemplateService.GetConditionAsync(searchModel); return new ApiResult>(new PagesModel(contentList, searchModel)); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 创建设备模板 /// /// /// [HttpPost("CreateDeviceTemplateAsync")] public async Task CreateDeviceTemplateAsync(TdevDeviceTemplateViewModel content) { if (content == null) { return new ApiResult(ReturnCode.ArgsError); } try { await _TdevDeviceTemplateService.CreateOneAsync(content); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 删除设备模板 /// /// /// [HttpDelete("DeleteDeviceTemplateAsync/{id}")] public async Task DeleteDeviceTemplateAsync(string id) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { await _TdevDeviceTemplateService.DeleteAsync(id); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 更新设备模板 /// /// /// /// [HttpPut("UpdateDeviceTemplateAsync/{id}")] public async Task UpdateDeviceTemplateAsync(string id, TdevDeviceTemplateUpdateModel updateModel) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { await _TdevDeviceTemplateService.UpdateAsync(id, updateModel); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 获取设备模板树 /// /// [HttpGet("GetDeviceTemplateTreeAsync")] public async Task GetDeviceTemplateTreeAsync() { try { var contentList = await _TdevDeviceTemplateService.GetDeviceTemplateTreeAsync(); return new ApiResult>(contentList); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } } }