using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using Ropin.Inspection.Api.Common; 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.Controllers { public class TprdProdSKUController : BaseController { public ILogger _logger { get; } private readonly ITprdProdSKUService _TprdProdSKUService; /// /// 构造函数 /// /// /// public TprdProdSKUController(ITprdProdSKUService TprdProdSKUService, ILogger logger) { _TprdProdSKUService = TprdProdSKUService; _logger = logger; } /// /// 通过ID获取器具SKU信息 /// /// /// [HttpGet("GetProdSKUAsync/{id}")] public async Task GetProdSKUAsync(string id) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { var content = await _TprdProdSKUService.GetByIdAsync(id); return new ApiResult(content); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 获取所有器具SKU /// /// [HttpGet("GetProdSKUsAsync")] public async Task GetProdSKUsAsync() { try { var contentList = await _TprdProdSKUService.GetAllAsync(); return new ApiResult>(contentList); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 通过器具SKU名称条件查询 /// /// /// [HttpPost("GetProdSKUsByAsync")] public async Task GetProdSKUsByAsync(TprdProdSKUSearchModel searchModel) { if (searchModel == null) { return new ApiResult(ReturnCode.ArgsError); } searchModel.IsPagination = false; try { var contentList = await _TprdProdSKUService.GetConditionAsync(searchModel); return new ApiResult>(contentList); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 创建器具SKU /// /// /// [HttpPost("CreateProdSKUAsync")] public async Task CreateProdSKUAsync(TprdProdSKUViewModel content) { if (content == null) { return new ApiResult(ReturnCode.ArgsError); } try { await _TprdProdSKUService.CreateOneAsync(content); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 删除器具SKU /// /// /// [HttpDelete("DeleteProdSKUAsync/{id}")] public async Task DeleteProdSKUAsync(string id) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { await _TprdProdSKUService.DeleteAsync(id); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 更新器具SKU /// /// /// /// [HttpPut("UpdateProdSKUAsync/{id}")] public async Task UpdateProdSKUAsync(string id, TprdProdSKUUpdateModel updateModel) { if (string.IsNullOrEmpty(id)) { return new ApiResult(ReturnCode.GeneralError); } try { await _TprdProdSKUService.UpdateAsync(id, updateModel); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } } }