From bb46e7c37ddbdf44e4a7b729b608b39a3561f1e4 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周二, 20 5月 2025 11:46:40 +0800 Subject: [PATCH] 高级查询过滤优化了,不再用这种方式了 --- PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanController.cs | 92 +++++++++++++++++++++++++++++++++------------- 1 files changed, 66 insertions(+), 26 deletions(-) diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanController.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanController.cs index bc77738..ade69da 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanController.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems/Controller/WorkPlanController.cs @@ -3,7 +3,6 @@ using CMS.Framework.AspNetCore.Users; using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; using CMS.Plugin.PipeLineLems.Application.Contracts.Services; -using CmsQueryExtensions.Entitys; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; @@ -11,6 +10,9 @@ 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 { @@ -41,7 +43,7 @@ /// <summary> /// 鑾峰彇浣滀笟璁″垝琛� /// </summary> - /// <param name="id">鏍囪瘑绗�.</param> + /// <param name="id">涓婚敭ID</param> /// <returns></returns> [HttpGet] [Route("{id}")] @@ -53,7 +55,7 @@ /// <summary> /// 鍒嗛〉鑾峰彇浣滀笟璁″垝琛ㄧ殑鍒楄〃. /// </summary> - /// <param name="input">杈撳叆.</param> + /// <param name="input">鏌ヨ鍙傛暟</param> /// <returns></returns> [HttpGet] [Route("Page")] @@ -63,73 +65,114 @@ } /// <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}")] @@ -151,14 +194,6 @@ await file.CopyToAsync(stream); stream.Seek(0L, SeekOrigin.Begin); - var userAccount = _currentUser.UserAccount; - var userId = _currentUser.UserId; - MyCurrentUser myCurrentUser = new MyCurrentUser() - { - UserAccount = _currentUser.UserAccount, - UserId = _currentUser.UserId - }; - var sheetNames = stream.GetSheetNames(); var workPlanRows = sheetNames.Contains("閰嶇疆") ? MiniExcel.Query<WorkPlansImportModel.WorkPlanImportModel>(stream, sheetName: "閰嶇疆").ToList() : new(); @@ -167,10 +202,15 @@ throw new UserFriendlyException("璇锋鏌ュ鍏ョ殑琛ㄦ牸"); } + MyCurrentUser myCurrentUser = new MyCurrentUser() + { + UserAccount = _currentUser.UserAccount, + UserId = _currentUser.UserId + }; await _workPlanAppService.ImportAsync(new WorkPlansImportModel { WorkPlans = workPlanRows, - }, userId, userAccount); + }, myCurrentUser); return Ok(); } -- Gitblit v1.9.3