using log4net;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
using Ropin.Inspection.Api.Common;
using Ropin.Inspection.Api.Controllers.DEV;
using Ropin.Inspection.Model.ViewModel.DEV;
using Ropin.Inspection.Model;
using Ropin.Inspection.Service.DEV.Interface;
using Ropin.Inspection.Service.LGS.Interface;
using System.Threading.Tasks;
using System;
using Ropin.Inspection.Model.ViewModel.LGS;
using Ropin.Inspection.Model.SearchModel.LGS;
namespace Ropin.Inspection.Api.Controllers.LGS
{
public class LargeScreenTemplateController : BaseController
{
private readonly ILgsLargeScreenTemplateService _repository;
private static readonly ILog log = LogManager.GetLogger(typeof(LargeScreenTemplateController));
///
/// 构造函数
///
///
public LargeScreenTemplateController(ILgsLargeScreenTemplateService repository)
{
_repository = repository;
}
///
/// 创建大屏模板
///
///
///
[HttpPost("CreateLargeScreenTemplateAsync")]
public async Task CreateLargeScreenTemplateAsync(LGS_LargeScreenTemplateViewModel content)
{
if (content == null)
{
return new ApiResult(ReturnCode.ArgsError);
}
try
{
await _repository.CreateOneAsync(content);
}
catch (Exception ex)
{
return new ApiResult(ReturnCode.GeneralError, ex.Message);
}
return new ApiResult(ReturnCode.Success);
}
///
/// 删除大屏模板
///
///
///
[HttpDelete("DeleteLargeScreenTemplateAsync/{id}")]
public async Task DeleteLargeScreenTemplateAsync(string id)
{
if (string.IsNullOrEmpty(id))
{
return new ApiResult(ReturnCode.GeneralError);
}
try
{
await _repository.DeleteAsync(id);
}
catch (Exception ex)
{
return new ApiResult(ReturnCode.GeneralError, ex.Message);
}
return new ApiResult(ReturnCode.Success);
}
///
/// 更新大屏模板
///
///
///
///
[HttpPut("UpdateLargeScreenTemplateAsync/{id}")]
[AllowAnonymous]
public async Task UpdateLargeScreenTemplateAsync(string id, LGS_LargeScreenTemplateViewModel updateModel)
{
if (string.IsNullOrEmpty(id))
{
return new ApiResult(ReturnCode.GeneralError);
}
try
{
await _repository.UpdateAsync(updateModel,id);
}
catch (Exception ex)
{
return new ApiResult(ReturnCode.GeneralError, ex.Message);
}
return new ApiResult(ReturnCode.Success);
}
///
/// 获取大屏模板列表
///
///
[HttpPost("GetLargeScreenTemplateAsync")]
[AllowAnonymous]
public async Task GetLargeScreenTemplateAsync(LargeScreenTemplateSearch searchModel)
{
if (searchModel == null)
{
return new ApiResult(ReturnCode.ArgsError);
}
try
{
var contentList = await _repository.GetConditionAsync(searchModel);
return new ApiResult>(new PagesModel(contentList, searchModel));
}
catch (Exception ex)
{
return new ApiResult(ReturnCode.GeneralError, ex.Message);
}
}
///
/// 通过id获取大屏模板详情
///
///
[HttpGet("GetLargeScreenTemplateByIDAsync")]
[AllowAnonymous]
public async Task GetLargeScreenTemplateByIDAsync(string Id)
{
if (string.IsNullOrEmpty(Id))
{
return new ApiResult(ReturnCode.ArgsError);
}
try
{
LGS_LargeScreenTemplateViewModel data = await _repository.GetByIdAsync(Id);
return new ApiResult(data);
}
catch (Exception ex)
{
return new ApiResult(ReturnCode.GeneralError, ex.Message);
}
}
}
}