using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using IRaCIS.Application.Interfaces; using IRaCIS.Application.Contracts; using IRaCIS.Core.Application.Filter; using IRaCIS.Core.Infrastructure.Extention; using Microsoft.AspNetCore.Authorization; using System.Threading.Tasks; using IRaCIS.Application.Services; using IRaCIS.Core.Application.Service.Inspection.DTO; using IRaCIS.Core.Infra.EFCore; using IRaCIS.Core.Domain.Models; using IRaCIS.Core.Application.Auth; using Microsoft.Extensions.Localization; namespace IRaCIS.Core.API.Controllers.Special { //谨慎修改 涉及到财务模块 [ApiController, Authorize, ApiExplorerSettings(GroupName = "Financial")] public class FinancialChangeController : ControllerBase { private readonly ITrialService _trialService; private IStringLocalizer _localizer { get; set; } public FinancialChangeController(ITrialService trialService, IStringLocalizer localizer ) { _localizer = localizer; _trialService = trialService; } //[TrialAudit(AuditType.TrialAudit, AuditOptType.AddOrUpdateTrial)] /// 添加实验项目-返回新增Id[AUTH] /// 新记录Id [HttpPost, Route("Inspection/trial/addOrUpdateTrial")] [UnitOfWork] public async Task AddOrUpdateTrialInspection(DataInspectionDto opt) { var fun =await AddOrUpdateTrial(opt.Data); return fun; } /// 添加实验项目-返回新增Id[AUTH] /// /// 新记录Id [HttpPost, Route("trial/addOrUpdateTrial")] //[Authorize(Policy = IRaCISPolicy.PM_APM)] [TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AddOrUpdateTrial", "BeforeOngoingCantOpt", "AfterStopCannNotOpt" })] public async Task> AddOrUpdateTrial(TrialCommand param) { var userId = Guid.Parse(User.FindFirst("id").Value); var result = await _trialService.AddOrUpdateTrial(param); return result; } } }