| | |
| | | using Ao.Lang; |
| | | using AutoMapper.Internal.Mappers; |
| | | using CMS.Extensions.Abp.AspNetCore.Mvc.Filters; |
| | | using CMS.Framework.AspNetCore.Users; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Services; |
| | | using CMS.Plugin.PipeLineLems.Application.Implements; |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkPlan; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | |
| | | using System.Reflection; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Application.Dtos; |
| | | using CmsQueryExtensions.Entitys; |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkPlan; |
| | | using System.Linq.Expressions; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Controller |
| | | { |
| | |
| | | public class WorkPlanController : ControllerBase |
| | | { |
| | | private readonly IWorkPlanAppService _workPlanAppService; |
| | | |
| | | |
| | | /// <summary> |
| | | /// 获取生产计划. |
| | | /// </summary> |
| | | /// <param name="input">标识符.</param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Route("GetWorkPlanByAps")] |
| | | public virtual async Task<MesOrderResponse> CreateWorkPlanByApsAsync([FromBody] List<WorkPlanInput> input) |
| | | { |
| | | return await _workPlanAppService.CreatebyApsAsync(input); |
| | | } |
| | | private readonly ICurrentUser _currentUser; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WorkPlanController"/> class. |
| | | /// </summary> |
| | | /// <param name="workPlanAppService">The workPlan application service.</param> |
| | | public WorkPlanController(IWorkPlanAppService workPlanAppService) |
| | | public WorkPlanController(IWorkPlanAppService workPlanAppService, ICurrentUser currentUser) |
| | | { |
| | | _workPlanAppService = workPlanAppService; |
| | | _currentUser = currentUser; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取作业计划表 |
| | | /// </summary> |
| | | /// <param name="id">标识符.</param> |
| | | /// <param name="id">主键ID</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("{id}")] |
| | |
| | | /// <summary> |
| | | /// 分页获取作业计划表的列表. |
| | | /// </summary> |
| | | /// <param name="input">输入.</param> |
| | | /// <param name="input">查询参数</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("Page")] |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 根据条件获取作业计划表列表 |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Route("FindListByFilter")] |
| | | public virtual async Task<List<WorkPlanDto>> FindListByFilterAsync([FromBody]GetWorkPlanInput input) |
| | | { |
| | | return await _workPlanAppService.FindListByFilterAsync(input); |
| | | } |
| | | /// <summary> |
| | | /// 根据条件获取单个作业计划表 |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Route("FindSingleByFilter")] |
| | | public virtual async Task<WorkPlanDto> FindSingleByFilterAsync([FromBody] GetWorkPlanInput input) |
| | | { |
| | | |
| | | return await _workPlanAppService.FindSingleByFilterAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 创建作业计划表 |
| | | /// </summary> |
| | | /// <param name="input">输入.</param> |
| | | /// <param name="input">创建参数</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [Authorize] |
| | | [HttpPost] |
| | | public virtual Task<WorkPlanDto> CreateAsync(WorkPlanCreateDto input) |
| | | { |
| | | input.CreatorName = _currentUser.UserAccount;//创建人 |
| | | return _workPlanAppService.CreateAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 更新作业计划表 |
| | | /// </summary> |
| | | /// <param name="id">标识符.</param> |
| | | /// <param name="input">输入.</param> |
| | | /// <param name="id">主键ID</param> |
| | | /// <param name="input">更新参数</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [Authorize] |
| | | [HttpPut] |
| | | [Route("{id}")] |
| | | public virtual Task<WorkPlanDto> UpdateAsync(Guid id, WorkPlanUpdateDto input) |
| | | { |
| | | input.LastModifierName = _currentUser.UserAccount;//修改人 |
| | | return _workPlanAppService.UpdateAsync(id, input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 克隆作业计划表 |
| | | /// </summary> |
| | | /// <param name="ids">Id集合.</param> |
| | | /// <param name="ids">Id集合</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [Authorize] |
| | | [HttpPost] |
| | | [Route("Clone")] |
| | | public virtual Task<List<WorkPlanDto>> CloneAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | return _workPlanAppService.CloneAsync(ids); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 删除作业计划表 |
| | | /// </summary> |
| | | /// <param name="id">标识符.</param> |
| | | /// <param name="id">主键ID</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [Authorize] |
| | | [HttpDelete] |
| | | [Route("{id}")] |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | return _workPlanAppService.DeleteAsync(id); |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | return _workPlanAppService.DeleteAsync(id);//逻辑删除 |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 批量删除作业计划表 |
| | | /// </summary> |
| | | /// <param name="ids">The ids.</param> |
| | | /// <param name="ids">主键ID集合</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [Authorize] |
| | | [HttpDelete] |
| | | public virtual Task DeleteAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | return _workPlanAppService.DeleteManyAsync(ids); |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | return _workPlanAppService.DeleteManyAsync(ids);//逻辑删除 |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 调整排序作业计划表 |
| | | /// </summary> |
| | | /// <param name="id">标识符.</param> |
| | | /// <param name="id">主键ID</param> |
| | | /// <returns></returns> |
| | | [HttpPut] |
| | | [Route("{id}/AdjustSort/{sort}")] |
| | |
| | | throw new UserFriendlyException("请检查导入的表格"); |
| | | } |
| | | |
| | | |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | await _workPlanAppService.ImportAsync(new WorkPlansImportModel |
| | | { |
| | | WorkPlans = workPlanRows, |
| | | }); |
| | | }, myCurrentUser); |
| | | |
| | | return Ok(); |
| | | } |