Browse Source

出入境费用明细 正式版、草稿 新增查看设置权限Users

LEIYI 1 month ago
parent
commit
8c4ec9e224

+ 65 - 5
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -9526,15 +9526,25 @@ WHERE
             (bool isView, string msg) = await _enterExitCostRep.MobilePermissionsValidationAsync(dto.DiId, dto.CurrUserId);
             if (!isView) return Ok(JsonView(false, msg));
 
-            var userIds = Array.Empty<int>();
-
-            userIds = await _sqlSugar
+            var userIds = await _sqlSugar
                 .Queryable<Grp_EnterExitCostPermission>()
                 .Where(x => x.IsDel == 0 && x.GroupId == dto.DiId)
                 .Select(x => x.UserId)
                 .ToArrayAsync();
 
-            return Ok(userIds);
+            var perUsers = await _enterExitCostRep.PermissionViewUsersAsync();
+
+            var perUsersView = new List<dynamic>();
+
+            foreach (var item in perUsers)
+            {
+                bool isView1 = false;
+
+                if (userIds.Any(x => x == item.Id)) isView1 = true;
+                perUsersView.Add(new { Id = item.Id, Name = item.Name, IsView = isView1 });
+            }
+
+            return Ok(JsonView(perUsersView));
         }
 
         /// <summary>
@@ -10624,12 +10634,12 @@ WHERE
                 .Where(x => x.IsDel == 0 && !string.IsNullOrEmpty(x.TeamName))
                 .WhereIF(!string.IsNullOrEmpty(dto.GroupName) && diId > 0, x => x.Id == diId)
                 .WhereIF(!string.IsNullOrEmpty(dto.GroupName) && !status, x => x.TeamName.Contains(dto.GroupName))
+                .OrderByDescending(x => x.VisitStartDate)
                 .Select(x => new
                 {
                     Id = x.Id,
                     GroupName = x.TeamName
                 })
-                .OrderByDescending(x => x.Id)
                 .ToPageListAsync(dto.PageIndex, dto.PageSize, total);
 
             return Ok(JsonView(true, "查询成功!", data, total));
@@ -11150,6 +11160,56 @@ WHERE
             return parentId;
         }
 
+        /// <summary>
+        /// 团组模块 - 出入境费用-草稿-移动端 - 查看权限用户
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> EnterExitCostDraftMobileViewPermissionUsers(EnterExitCostDraftMobileViewPermissionUsersDto dto)
+        {
+            if (dto.DraftId < 1) return Ok(JsonView(false, MsgTips.Id));
+            if (dto.CurrUserId < 1) return Ok(JsonView(false, MsgTips.UserId));
+
+            //验证查看权限
+            (bool isView, bool isSet) = await _enterExitCostDraftRep.PermissionValidationAsync(dto.DraftId, dto.CurrUserId);
+            if (!isView) return Ok(JsonView(false, _viewPermStr));
+
+            var userIds = await _sqlSugar
+                .Queryable<Grp_EnterExitCostDraftPermission>()
+                .Where(x => x.IsDel == 0 && x.DraftId == dto.DraftId)
+                .Select(x => x.UserId)
+                .ToArrayAsync();
+
+            var perUsers = await _enterExitCostDraftRep.PermissionViewUsersAsync();
+
+            var perUsersView = new List<dynamic>();
+
+            var feeBasePerm = AppSettingsHelper.Get<FeeBasePermView>("FeeBasePerm");
+            var viewPermissionData = new List<PermissionViewUserview>();
+            if (feeBasePerm.Any())
+            {
+                foreach (var item in feeBasePerm)
+                {
+                    if (item.Users.Any())
+                    {
+                        viewPermissionData.AddRange(item.Users);
+                    }
+                }
+
+            }
+
+            foreach (var item in perUsers)
+            {
+                bool isView1 = false;
+                if (userIds.Any(x => x == item.Id)) isView1 = true;
+                else if (viewPermissionData.Any(x => x.Id ==dto.CurrUserId) && item.Id == dto.CurrUserId) isView1 = true;
+                perUsersView.Add(new { Id = item.Id, Name = item.Name, IsView = isView1 });
+            }
+
+            return Ok(JsonView(perUsersView));
+        }
+
         /// <summary>
         /// 团组模块 - 出入境费用-草稿-移动端 - 设置view权限
         /// </summary>

+ 5 - 0
OASystem/OASystem.Domain/Dtos/Groups/EnterExitCostDto.cs

@@ -888,6 +888,11 @@ namespace OASystem.Domain.Dtos.Groups
 
     }
 
+    public class EnterExitCostDraftMobileViewPermissionUsersDto : PostEnterExitCostDraftMobileUpdateDtoBase
+    { 
+    
+    }
+
     public class EnterExitCostDraftMobileSetViewPermissiionDto
     {
         public int DraftId { get; set; }

+ 0 - 4
OASystem/OASystem.Domain/ViewModels/Groups/EnterExitCostDraftView.cs

@@ -12,10 +12,6 @@ namespace OASystem.Domain.ViewModels.Groups
     public class EnterExitCostDraftView:Grp_EnterExitCostDraft
     {
     }
-
-    
-
-
     public class PermissionViewUserview
     {
         public int Id { get; set; }