using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging; using Ropin.Inspection.Api.Common; using Ropin.Inspection.Model; using Ropin.Inspection.Model.SearchModel; using Ropin.Inspection.Model.ViewModel; using Ropin.Inspection.Service.Interface; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace Ropin.Inspection.Api.Controllers { public class TsecRecordItemController : BaseController { public ILogger _logger { get; } private readonly ITsecRecordItemService _tsecRecordItemService; /// /// /// /// /// public TsecRecordItemController(ITsecRecordItemService tsecRecordItemService, ILogger logger) { _tsecRecordItemService = tsecRecordItemService; _logger = logger; } /// /// 新建安检详细记录 /// /// /// [Route("CreateSecurityRecordItemAsync")] [HttpPost] public async Task CreateSecurityRecordItemAsync([FromBody] TsecRecordItemCreateViewModel item) { if (item == null) { return new ApiResult(ReturnCode.ArgsError); } try { await _tsecRecordItemService.CreateSecurityRecordItemAsync(item); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } return new ApiResult(ReturnCode.Success); } /// /// 新建多条安检详细记录 /// /// /// [Route("CreateSecurityRecordItemsAsync")] [HttpPost] public async Task CreateSecurityRecordItemsAsync(IEnumerable items) { if (items == null) { return new ApiResult(ReturnCode.ArgsError); } try { await _tsecRecordItemService.CreateSecurityRecordItemsAsync(items); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message + ex.InnerException); } return new ApiResult(ReturnCode.Success); } /// /// 通过巡检详细Id取案件记录 /// /// /// [HttpGet("GetSecurityRecordItemByIdAsync/{recordId}")] public async Task GetSecurityRecordItemByIdAsync(Guid recordId) { try { IEnumerable recordItem = await _tsecRecordItemService.GetSecurityRecordItemByIdAsync(recordId); return new ApiResult>(recordItem); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } /// /// 获取安检详细记录 /// /// /// [HttpPost("GetSecurityRecordItemsAsync")] public async Task GetSecurityRecordItemsAsync(TsecRecordItemsSearchModel searchModel) { if (searchModel == null || string.IsNullOrEmpty(searchModel.C_StoreCode)) { return new ApiResult(ReturnCode.ArgsError); } try { IEnumerable recordItems = await _tsecRecordItemService.GetSecurityRecordItemsAsync(searchModel); return new ApiResult>(new PagesModel(recordItems?.ToList(), searchModel)); } catch (Exception ex) { return new ApiResult(ReturnCode.GeneralError, ex.Message); } } } }