李昊 пре 4 година
родитељ
комит
4eefad472e

+ 23 - 3
gx_api/GxPress/Service/GxPress.Service.Implement/Middle/MiddleService.cs

@@ -523,7 +523,15 @@ namespace GxPress.Service.Implement.Middle
         /// <returns></returns>
         public async Task<bool> RecoverAllAsync(int folderType, int userId)
         {
-            return await _middleRepository.UpdateAsync(Q.Set(nameof(Entity.Middle.Middle.IsDelete), false).Where(nameof(Entity.Middle.Middle.FolderType), folderType).Where(nameof(Entity.Middle.Middle.UserId), userId));
+            var typeValues = new List<int>(){
+                AllTypeConst.Notice.GetHashCode(),
+                AllTypeConst.Missive.GetHashCode(),
+                AllTypeConst.Flow.GetHashCode(),
+                AllTypeConst.MyChecked.GetHashCode(),
+                AllTypeConst.MySubmitted.GetHashCode(),
+                AllTypeConst.MyCc.GetHashCode()
+            };
+            return await _middleRepository.UpdateAsync(Q.Set(nameof(Entity.Middle.Middle.IsDelete), false).WhereIn(nameof(Entity.Middle.Middle.FolderType), typeValues).Where(nameof(Entity.Middle.Middle.UserId), userId));
 
         }
         /// <summary>
@@ -841,7 +849,7 @@ namespace GxPress.Service.Implement.Middle
             var connection = database.GetConnection();
             var middles = await connection.QueryAsync<Entity.Middle.Middle>(sql);
             List<MiddleSearchFolderResult> result = new List<MiddleSearchFolderResult>();
-            if (request.TypeId == AllTypeConst.TopicNote.GetHashCode() && request.ParentId == 0&&string.IsNullOrWhiteSpace(request.KeyWord))
+            if (request.TypeId == AllTypeConst.TopicNote.GetHashCode() && request.ParentId == 0 && string.IsNullOrWhiteSpace(request.KeyWord))
             {
                 result.Add(new MiddleSearchFolderResult
                 {
@@ -1005,7 +1013,19 @@ namespace GxPress.Service.Implement.Middle
         /// <returns></returns>
         public async Task<bool> DeleteAllAsync(int folderType, int userId)
         {
-            return await _middleRepository.DeleteAsync(Q.Where(nameof(Entity.Middle.Middle.FolderType), folderType).Where(nameof(Entity.Middle.Middle.UserId), userId).Where(nameof(Entity.Middle.Middle.IsDelete), true));
+            var typeValues = new List<int>(){
+                AllTypeConst.Notice.GetHashCode(),
+                AllTypeConst.Missive.GetHashCode(),
+                AllTypeConst.Flow.GetHashCode(),
+                AllTypeConst.MyChecked.GetHashCode(),
+                AllTypeConst.MySubmitted.GetHashCode(),
+                AllTypeConst.MyCc.GetHashCode()
+            };
+            var query = Q.NewQuery();
+            query.Where(nameof(Entity.Middle.Middle.FolderType), typeValues);
+            query.Where(nameof(Entity.Middle.Middle.UserId), userId);
+            query.Where(nameof(Entity.Middle.Middle.IsDelete), true);
+            return await _middleRepository.DeleteAsync(query);
         }
     }
 }