李昊 4 years ago
parent
commit
c06cdf37a3

+ 5 - 5
GxPress/Api/GxPress.Api/AppControllers/AppFlowController.cs

@@ -97,14 +97,14 @@ namespace GxPress.Api.AppControllers
         /// <summary>
         /// 获取详情
         /// </summary>
-        /// <param name="todoId"></param>
+        /// <param name="flowId"></param>
         /// <returns></returns>
-        [HttpGet("{todoId}")]
+        [HttpGet("{flowId}")]
         [AllowAnonymous]
-        public async Task<FlowResult> Get(int todoId)
+        public async Task<FlowResult> Get(int flowId)
         {
-            await _flowTodoRepository.UpdateCCIsDoneAsync(_loginContext.AccountId, todoId);
-            return await _flowService.GetFlowResult(todoId, _loginContext.AccountId);
+            await _flowTodoRepository.UpdateCCIsDoneAsync(_loginContext.AccountId, flowId);
+            return await _flowService.GetFlowResult(flowId, _loginContext.AccountId);
         }
         /// <summary>
         /// 获取详情 web专属

+ 1 - 10
GxPress/Repository/GxPress.Repository.Implement/WorkFlow/FlowTodoRepository.cs

@@ -897,17 +897,8 @@ namespace GxPress.Repository.Implement.WorkFlow
             var result = await connection.ExecuteAsync(sql);
             return result > 0;
         }
-        public async Task UpdateCCIsDoneAsync(int userId, int todoId)
+        public async Task UpdateCCIsDoneAsync(int userId, int flowId)
         {
-            var flowId = 0;
-            var query = Q.NewQuery();
-            query.Where(nameof(Entity.WorkFlow.FlowTodo.Id), todoId);
-            query.Where(nameof(Entity.WorkFlow.FlowTodo.UserId), userId);
-            var flowTodo = await _repository.GetAsync(query);
-            if (flowTodo == null)
-                flowId = todoId;
-            else
-                flowId = flowTodo.FlowId;
             await UpdateReadAsync(userId, flowId);
             await UpdateFlowReadAsync(userId, flowId);
         }

+ 6 - 17
GxPress/Service/GxPress.Service.Implement/Flow/FlowService.Get.cs

@@ -77,25 +77,14 @@ namespace GxPress.Service.Implement
             return (GetFlowName(user, process), new List<string>());
         }
 
-        public async Task<FlowResult> GetFlowResult(int todoId, int userId = 0)
+        public async Task<FlowResult> GetFlowResult(int flowId, int userId = 0)
         {
-            var flowId = 0;
-            var query = Q.NewQuery();
-            query.Where(nameof(Entity.WorkFlow.FlowTodo.Id), todoId);
-            //query.Where(nameof(Entity.WorkFlow.FlowTodo.UserId), userId);
-            var flowTodeDto = await _flowTodoRepository.GetAsync(query);
             var flowToDos = new List<Entity.WorkFlow.FlowTodo>();
-            if (flowTodeDto != null)
-            {
-                flowId = flowTodeDto.FlowId;
-                query = Q.NewQuery();
-                query.Where(nameof(Entity.WorkFlow.FlowTodo.FlowId), flowId);
-                query.Where(nameof(Entity.WorkFlow.FlowTodo.IsOperate), true);
-                flowToDos.AddRange(await _flowTodoRepository.GetAllAsync(query));
-                flowTodeDto = flowToDos.FirstOrDefault(n => n.UserId == userId);
-            }
-            else
-                flowId = todoId;
+            var query = Q.NewQuery();
+            query.Where(nameof(Entity.WorkFlow.FlowTodo.FlowId), flowId);
+            query.Where(nameof(Entity.WorkFlow.FlowTodo.IsOperate), true);
+            flowToDos.AddRange(await _flowTodoRepository.GetAllAsync(query));
+            var flowTodeDto = flowToDos.FirstOrDefault(n => n.UserId == userId);
             var flowDto = await GetAsync(flowId);
             var user = await _userRepository.GetAsync(flowDto.UserId);
             var avatarUrl = await _userRepository.GetAvatarUrlAsync(flowDto.UserId);

+ 1 - 1
GxPress/Service/GxPress.Service.Implement/Flow/FlowService.List.cs

@@ -164,7 +164,7 @@ namespace GxPress.Service.Implement
             var tode = await _flowTodoRepository.GetAsync(todoId);
             var result = new FlowListResult
             {
-                Id = todoId,
+                Id = tode.FlowId,
                 TodoId = todoId,
                 ProcessId = flow.ProcessId,
                 UserId = flow.UserId,