Переглянути джерело

Merge branch 'develop' of http://132.232.92.186:3000/XinXiBu/OA2023 into develop

Lyyyi 1 день тому
батько
коміт
a2c3d882da

+ 5 - 2
OASystem/OASystem.Api/Controllers/FinancialController.cs

@@ -5847,7 +5847,10 @@ Group by PriceType ", dto.diId);
                         }
 
                         //0带公务 1不带公务 2纯公务
-                        if (item.Type == 0)
+                        //1082    带公务
+                        //1083    不带公务
+                        //1084    纯公务
+                        if (item.Type == 0 || item.Type == 1082)
                         {
                             if (!existsCountry.Contains(item.Country))
                             {
@@ -5864,7 +5867,7 @@ Group by PriceType ", dto.diId);
                             }
 
                         }
-                        else if(item.Type == 2)
+                        else if(item.Type == 2 || item.Type == 1084)
                         {
                             if (item.IsPay == 1) //付费公务
                             {

+ 77 - 22
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -2112,7 +2112,7 @@ FROM
             catch (Exception)
             { }
 
-            var guojiaoDownFile = new List<int>() { 330 };
+            var guojiaoDownFile = new List<int>() { 330,383};
             var shichangDownFile = new List<int>() { 95 };
             if (allDownFile.Contains(dto.UserId))
             {
@@ -26392,8 +26392,9 @@ ORDER BY
                 GM = new List<int>() { 21 };
             }
 
+            var isReview = Dto.UserId == 21;
             var isGM = GM.Contains(Dto.UserId);
-            var ConferenceAffairsCost = _sqlSugar.Queryable<ConferenceAffairsCost>()
+            var ConferenceAffairsCost = _sqlSugar.Queryable<Grp_ConferenceAffairsCost>()
                                                  .Where(x => x.IsDel == 0)
                                                  .Select<ConferenceAffairsCostView>()
                                                  .First(x=> x.Diid == di.Id);
@@ -26402,12 +26403,16 @@ ORDER BY
             {
                 ConferenceAffairsCost = new ConferenceAffairsCostView();
                 ConferenceAffairsCost.Diid = di.Id;
-                ConferenceAffairsCost.PermissionControl = string.Empty;
             }
 
             #region 权限校验
-            var PermissionControl = "," + ConferenceAffairsCost.PermissionControl + ",";
-            if (!PermissionControl.Contains(","+ Dto.UserId+",") && !isGM)
+            var ids = _sqlSugar.Queryable<Grp_ConferenceAffairsCostControl>()
+                .Where(x => x.Diid == di.Id && x.IsDel == 0)
+                .Select(x=> x.UserId)
+                .Distinct()
+                .ToList();
+
+            if (!ids.Contains(Dto.UserId) && !isGM )
             {
                 return Ok(JsonView(201, "暂无权限!", new
                 {
@@ -26416,12 +26421,15 @@ ORDER BY
                     currenyList,
                     isGM,
                     userList,
-                    units
+                    units,
+                    isReview,
+                    operatorUser = ids,
+                    di
                 }));
             }
             #endregion
 
-            var ConferenceAffairsCostChi = _sqlSugar.Queryable<ConferenceAffairsCostChild>()
+            var ConferenceAffairsCostChi = _sqlSugar.Queryable<Grp_ConferenceAffairsCostChild>()
                 .Where(x => x.IsDel == 0 && x.Diid == di.Id)
                 .Select<ConferenceAffairsCostChildView>()
                 .OrderBy(x=>x.Index)
@@ -26436,7 +26444,10 @@ ORDER BY
                 currenyList,
                 isGM,
                 userList,
-                units
+                units,
+                isReview,
+                operatorUser = ids,
+                di
             };
 
             return Ok(JsonView(true, "SUCCESS", backData));
@@ -26450,15 +26461,15 @@ ORDER BY
         public async Task<IActionResult> ConferenceAffairsSave(ConferenceAffairsSaveDto Dto)
         {
             _sqlSugar.BeginTran();
-            var data = _mapper.Map<ConferenceAffairsCost>(Dto.ConferenceAffairsCost);
+            var data = _mapper.Map<Grp_ConferenceAffairsCost>(Dto.ConferenceAffairsCost);
 
             try
             {
                 if (data.Id == 0)
                 {
-                    _sqlSugar.Updateable<ConferenceAffairsCost>()
+                    _sqlSugar.Updateable<Grp_ConferenceAffairsCost>()
                         .Where(x => x.Diid == Dto.GroupId)
-                        .SetColumns(x => new ConferenceAffairsCost
+                        .SetColumns(x => new Grp_ConferenceAffairsCost
                         {
                             DeleteTime = DateTime.Now.ToString("yyyy-MM-dd"),
                             DeleteUserId = Dto.UserId
@@ -26468,12 +26479,12 @@ ORDER BY
                     data.Diid = Dto.GroupId;
                     data.CreateTime = DateTime.Now;
                     data.CreateUserId = Dto.UserId;
-                    data.Id =  _sqlSugar.Insertable<ConferenceAffairsCost>(data)
+                    data.Id =  _sqlSugar.Insertable<Grp_ConferenceAffairsCost>(data)
                                         .ExecuteReturnIdentity();
                 }
                 else
                 {
-                    _sqlSugar.Updateable<ConferenceAffairsCost>(data)
+                    _sqlSugar.Updateable<Grp_ConferenceAffairsCost>(data)
                         .IgnoreColumns(ignoreAllNullColumns: true)
                         .ExecuteCommand();
                 }
@@ -26481,13 +26492,13 @@ ORDER BY
 
                 if (Dto.ConferenceAffairsCostChild.Any())
                 {
-                    var datas = _mapper.Map<List<ConferenceAffairsCostChild>>(Dto.ConferenceAffairsCostChild);
+                    var datas = _mapper.Map<List<Grp_ConferenceAffairsCostChild>>(Dto.ConferenceAffairsCostChild);
                     var insertArr = datas.Where(x => x.Id == 0).ToList();
                     var updateArr = datas.Where(x => x.Id != 0).ToList();
                     insertArr.ForEach(x => { x.Diid = Dto.GroupId; x.ConferenceAffairsCostId = data.Id; });
 
-                    var inrsetCount = insertArr.Any() ? _sqlSugar.Insertable<ConferenceAffairsCostChild>(insertArr).ExecuteCommand() : 0;
-                    var updateCount = updateArr.Any() ? _sqlSugar.Updateable<ConferenceAffairsCostChild>(updateArr)
+                    var inrsetCount = insertArr.Any() ? _sqlSugar.Insertable<Grp_ConferenceAffairsCostChild>(insertArr).ExecuteCommand() : 0;
+                    var updateCount = updateArr.Any() ? _sqlSugar.Updateable<Grp_ConferenceAffairsCostChild>(updateArr)
                         .IgnoreColumns(ignoreAllNullColumns: true)
                         .ExecuteCommand() : 0;
                 }
@@ -26510,9 +26521,9 @@ ORDER BY
 
             if (Dto.ConferenceAffairsCostChildids.Any())
             {
-                count = _sqlSugar.Updateable<ConferenceAffairsCostChild>().
+                count = _sqlSugar.Updateable<Grp_ConferenceAffairsCostChild>().
                     Where(x => Dto.ConferenceAffairsCostChildids.Contains(x.Id)).
-                    SetColumns(x => new ConferenceAffairsCostChild
+                    SetColumns(x => new Grp_ConferenceAffairsCostChild
                     {
                         ReviewStatus = Dto.ReviewStatus
                     }).
@@ -26531,9 +26542,9 @@ ORDER BY
             _sqlSugar.BeginTran();
             try
             {
-                var delCount = _sqlSugar.Updateable<ConferenceAffairsCost>()
+                var delCount = _sqlSugar.Updateable<Grp_ConferenceAffairsCost>()
                     .Where(x => x.Diid == Dto.GroupId)
-                    .SetColumns(x => new ConferenceAffairsCost
+                    .SetColumns(x => new Grp_ConferenceAffairsCost
                     {
                         IsDel = 1,
                         DeleteTime = DateTime.Now.ToString("yyyy-MM-dd"),
@@ -26543,15 +26554,25 @@ ORDER BY
 
                 if (delCount > 0)
                 {
-                    _sqlSugar.Updateable<ConferenceAffairsCostChild>()
+                    _sqlSugar.Updateable<Grp_ConferenceAffairsCostChild>()
                         .Where(x => x.Diid == Dto.GroupId)
-                        .SetColumns(x => new ConferenceAffairsCostChild
+                        .SetColumns(x => new Grp_ConferenceAffairsCostChild
                         {
                             IsDel = 1,
                             DeleteTime = DateTime.Now.ToString("yyyy-MM-dd"),
                             DeleteUserId = Dto.UserId
                         })
                         .ExecuteCommand();
+
+                    _sqlSugar.Updateable<Grp_ConferenceAffairsCostControl>()
+                       .Where(x => x.Diid == Dto.GroupId && x.IsDel == 0)
+                       .SetColumns(x => new Grp_ConferenceAffairsCostControl
+                       {
+                           IsDel = 1,
+                           DeleteTime = DateTime.Now.ToString("yyyy-MM-dd"),
+                           DeleteUserId = Dto.UserId
+                       })
+                       .ExecuteCommand();
                 }
                 _sqlSugar.CommitTran();
             }
@@ -26563,6 +26584,40 @@ ORDER BY
             return Ok(JsonView(true, "操作成功!"));
         }
 
+
+        [HttpPost]
+        public async Task<IActionResult> PermissionSetting(PermissionSettingDto Dto)
+        {
+            _sqlSugar.BeginTran();
+            var count = 0;
+            try
+            {
+                _sqlSugar.Updateable<Grp_ConferenceAffairsCostControl>()
+                .Where(x => x.Diid == Dto.GroupId && x.IsDel == 0)
+                .SetColumns(x => new Grp_ConferenceAffairsCostControl
+                {
+                    IsDel = 1,
+                    DeleteTime = DateTime.Now.ToString("yyyy-MM-dd"),
+                    DeleteUserId = Dto.CreateUserId
+                })
+                .ExecuteCommand();
+                count = _sqlSugar.Insertable<Grp_ConferenceAffairsCostControl>(Dto.UserIds.Select(x => new Grp_ConferenceAffairsCostControl
+                {
+                    CreateTime = DateTime.Now,
+                    CreateUserId = Dto.CreateUserId,
+                    UserId = x,
+                    Diid = Dto.GroupId,
+                }).ToList()).ExecuteCommand();
+                _sqlSugar.CommitTran();
+            }
+            catch (Exception ex)
+            {
+                _sqlSugar.RollbackTran();
+                return Ok(JsonView(false, "操作失败!" + ex.Message));
+            }
+
+            return Ok(JsonView(true, "操作成功!", count));
+        }
         #endregion
 
         /// <summary>

+ 2 - 2
OASystem/OASystem.Domain/AutoMappers/_baseMappingProfile.cs

@@ -399,8 +399,8 @@ namespace OASystem.Domain.AutoMappers
             #endregion
 
             #region 会务成本
-            CreateMap<ConferenceAffairsCostView, ConferenceAffairsCost>();
-            CreateMap<ConferenceAffairsCostChildView, ConferenceAffairsCostChild>();
+            CreateMap<ConferenceAffairsCostView, Grp_ConferenceAffairsCost>();
+            CreateMap<ConferenceAffairsCostChildView, Grp_ConferenceAffairsCostChild>();
             #endregion
         }
     }

+ 16 - 0
OASystem/OASystem.Domain/Dtos/Groups/ConferenceAffairsInIt.cs

@@ -49,4 +49,20 @@ namespace OASystem.Domain.Dtos.Groups
         public int UserId { get; set; }
         public int GroupId { get; set; }
     }
+
+    public class PermissionSettingDto
+    {
+        /// <summary>
+        /// 设置的用户id
+        /// </summary>
+        public List<int> UserIds { get; set; }
+        /// <summary>
+        /// 团组id
+        /// </summary>
+        public int GroupId { get; set; }
+        /// <summary>
+        /// 创建人id
+        /// </summary>
+        public int CreateUserId { get; set; }
+    }
 }

+ 22 - 3
OASystem/OASystem.Domain/Entities/Groups/ConferenceAffairsCost.cs

@@ -9,7 +9,7 @@ namespace OASystem.Domain.Entities.Groups
     /// <summary>
     /// 会务活动主表
     /// </summary>
-    public class ConferenceAffairsCost:Entities.EntityBase
+    public class Grp_ConferenceAffairsCost : Entities.EntityBase
     {
         /// <summary>
         /// 城市
@@ -19,7 +19,7 @@ namespace OASystem.Domain.Entities.Groups
         /// <summary>
         /// 权限控制
         /// </summary>
-        public string PermissionControl { get; set; }
+        //public string PermissionControl { get; set; }
 
         /// <summary>
         /// 团组Id
@@ -61,7 +61,7 @@ namespace OASystem.Domain.Entities.Groups
     /// <summary>
     /// 会务活动子表
     /// </summary>
-    public class ConferenceAffairsCostChild : Entities.EntityBase
+    public class Grp_ConferenceAffairsCostChild : Entities.EntityBase
     {
         /// <summary>
         /// 是否选中
@@ -146,4 +146,23 @@ namespace OASystem.Domain.Entities.Groups
         public int ConferenceAffairsCostId { get; set; }
     }
 
+
+    /// <summary>
+    /// 会务活动权限控制
+    /// </summary>
+
+    public class Grp_ConferenceAffairsCostControl : Entities.EntityBase
+    {
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        public int Diid { get; set; }
+
+        /// <summary>
+        /// 用户Id
+        /// </summary>
+        public int UserId { get; set; }
+    }
+
+
 }

+ 1 - 1
OASystem/OASystem.Domain/ViewModels/Groups/ConferenceAffairsCostView.cs

@@ -16,7 +16,7 @@ namespace OASystem.Domain.ViewModels.Groups
         /// <summary>
         /// 权限控制
         /// </summary>
-        public string PermissionControl { get; set; }
+        //public string PermissionControl { get; set; }
 
         /// <summary>
         /// 团组Id