Browse Source

费用审核
增加页面功能权限 查询

leiy 1 year ago
parent
commit
c5de051489

+ 22 - 2
OASystem/OASystem.Api/Controllers/BusinessController.cs

@@ -78,6 +78,28 @@ namespace OASystem.API.Controllers
             return Ok(JsonView(groupData.Data, groupData.Data.Count));
             return Ok(JsonView(groupData.Data, groupData.Data.Count));
         }
         }
 
 
+        /// <summary>
+        /// 获取团组指向分类
+        /// </summary>
+        /// <param name="_dto">参数Json字符串</param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostGroupDirectionalClassificationInit()
+        {
+            Result result = new Result();
+            result = await _setDataRep.GetSetDataBySTId(_setDataRep, 16); //团组指向分类
+            if (result.Code != 0)
+            {
+                return Ok(JsonView(false, "获取失败!"));
+            }
+
+            List<SetDataInfoView> _view = JsonConvert.DeserializeObject<List<SetDataInfoView>>(JsonConvert.SerializeObject(result.Data));
+            _view.Insert(0, new SetDataInfoView { Id = -1, Name = "所有模块" });
+
+            return Ok(JsonView(_view));
+        }
+
         #endregion
         #endregion
 
 
         #region 币种 List
         #region 币种 List
@@ -108,7 +130,6 @@ namespace OASystem.API.Controllers
             }
             }
         }
         }
 
 
-
         /// <summary>
         /// <summary>
         /// 团组汇率 币种 Item (来源:团组汇率)
         /// 团组汇率 币种 Item (来源:团组汇率)
         /// 根据 团组Id And 业务类型(CTable)Id
         /// 根据 团组Id And 业务类型(CTable)Id
@@ -345,7 +366,6 @@ namespace OASystem.API.Controllers
         }
         }
         #endregion
         #endregion
 
 
-
         #region 会务物料单
         #region 会务物料单
 
 
         /// <summary>
         /// <summary>

+ 116 - 11
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -65,6 +65,8 @@ namespace OASystem.API.Controllers
         private readonly CostTypeHotelNumberRepository _CostTypeHotelNumberRepository;
         private readonly CostTypeHotelNumberRepository _CostTypeHotelNumberRepository;
         private readonly GroupCostParameterRepository _GroupCostParameterRepository;
         private readonly GroupCostParameterRepository _GroupCostParameterRepository;
         #endregion
         #endregion
+
+        private readonly SetDataRepository _setDataRep;
         private string url;
         private string url;
         private string path;
         private string path;
 
 
@@ -73,8 +75,9 @@ namespace OASystem.API.Controllers
         public GroupsController(IMapper mapper, SqlSugarClient sqlSugar, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository,
         public GroupsController(IMapper mapper, SqlSugarClient sqlSugar, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository,
             TaskAssignmentRepository taskAssignmentRep, AirTicketResRepository airTicketResRep, DecreasePaymentsRepository decreasePaymentsRep,
             TaskAssignmentRepository taskAssignmentRep, AirTicketResRepository airTicketResRep, DecreasePaymentsRepository decreasePaymentsRep,
             InvitationOfficialActivitiesRepository InvitationOfficialActivitiesRep, DelegationEnDataRepository delegationEnDataRep, EnterExitCostRepository enterExitCostRep
             InvitationOfficialActivitiesRepository InvitationOfficialActivitiesRep, DelegationEnDataRepository delegationEnDataRep, EnterExitCostRepository enterExitCostRep
-            , DelegationVisaRepository delegationVisaRep, MessageRepository message, VisaPriceRepository visaPriceRep, CarTouristGuideGroundRepository carTouristGuideGroundRep, CheckBoxsRepository checkBoxs, GroupCostRepository GroupCostRepository, CostTypeHotelNumberRepository CostTypeHotelNumberRepository,
-            GroupCostParameterRepository GroupCostParameterRepository, HotelPriceRepository hotelPriceRep, CustomersRepository customersRep)
+            , DelegationVisaRepository delegationVisaRep, MessageRepository message, VisaPriceRepository visaPriceRep, CarTouristGuideGroundRepository carTouristGuideGroundRep,
+            CheckBoxsRepository checkBoxs, GroupCostRepository GroupCostRepository, CostTypeHotelNumberRepository CostTypeHotelNumberRepository,
+            GroupCostParameterRepository GroupCostParameterRepository, HotelPriceRepository hotelPriceRep, CustomersRepository customersRep, SetDataRepository setDataRep)
         {
         {
             _mapper = mapper;
             _mapper = mapper;
             _grpScheduleRep = grpScheduleRep;
             _grpScheduleRep = grpScheduleRep;
@@ -101,10 +104,10 @@ namespace OASystem.API.Controllers
             _CostTypeHotelNumberRepository = CostTypeHotelNumberRepository;
             _CostTypeHotelNumberRepository = CostTypeHotelNumberRepository;
             _GroupCostParameterRepository = GroupCostParameterRepository;
             _GroupCostParameterRepository = GroupCostParameterRepository;
             _hotelPriceRep = hotelPriceRep;
             _hotelPriceRep = hotelPriceRep;
-            _customersRep=customersRep;
+            _customersRep = customersRep;
+            _setDataRep = setDataRep;
         }
         }
 
 
-
         #region 流程管控
         #region 流程管控
 
 
         /// <summary>
         /// <summary>
@@ -265,7 +268,18 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> PostGroupPageList(GroupPageListDto dto)
         public async Task<IActionResult> PostGroupPageList(GroupPageListDto dto)
         {
         {
-            if (dto == null) return Ok(JsonView(false, "请输入搜索搜索条件!"));
+            #region  参数验证
+            if (dto.UserId < 1) return Ok(JsonView(false, "员工Id为空"));
+            if (dto.PageId < 1) return Ok(JsonView(false, "页面Id为空"));
+
+            PageFunAuthViewBase pageFunAuthView = new PageFunAuthViewBase();
+            #region 页面操作权限验证
+            pageFunAuthView = await GeneralMethod.PostUserPageFuncDatas(dto.UserId, dto.PageId);
+
+            if (pageFunAuthView.CheckAuth == 0) return Ok(JsonView(false, "您没有查看权限"));
+            #endregion
+
+            #endregion
 
 
             if (dto.PortType == 1 || dto.PortType == 2) // web/Android
             if (dto.PortType == 1 || dto.PortType == 2) // web/Android
             {
             {
@@ -286,7 +300,7 @@ namespace OASystem.API.Controllers
                        tj, tj, tj, tj, tj);
                        tj, tj, tj, tj, tj);
                 }
                 }
 
 
-                string sql = string.Format(@"Select Row_Number,SalesQuoteNo,TourCode,TeamTypeId, TeamType,
+                string sql = string.Format(@"Select Row_Number,Id,SalesQuoteNo,TourCode,TeamTypeId, TeamType,
 					                              TeamLevId,TeamLev,TeamName,ClientName,ClientUnit,
 					                              TeamLevId,TeamLev,TeamName,ClientName,ClientUnit,
 					                              VisitDate,VisitDays,VisitPNumber,JietuanOperator,IsSure,CreateTime
 					                              VisitDate,VisitDays,VisitPNumber,JietuanOperator,IsSure,CreateTime
 					                              From (
 					                              From (
@@ -304,7 +318,13 @@ namespace OASystem.API.Controllers
                 RefAsync<int> total = 0;//REF和OUT不支持异步,想要真的异步这是最优解
                 RefAsync<int> total = 0;//REF和OUT不支持异步,想要真的异步这是最优解
                 var _DelegationList = await _sqlSugar.SqlQueryable<DelegationListView>(sql).ToPageListAsync(dto.PageIndex, dto.PageSize, total);//ToPageAsync
                 var _DelegationList = await _sqlSugar.SqlQueryable<DelegationListView>(sql).ToPageListAsync(dto.PageIndex, dto.PageSize, total);//ToPageAsync
 
 
-                return Ok(JsonView(true, "查询成功!", _DelegationList, total));
+                var _view = new
+                {
+                    PageFuncAuth = pageFunAuthView,
+                    Data = _DelegationList
+                };
+                return Ok(JsonView(true, "查询成功!", _view, total));
+
 
 
             }
             }
             else
             else
@@ -810,6 +830,79 @@ namespace OASystem.API.Controllers
 
 
         #region 团组费用审核
         #region 团组费用审核
 
 
+        /// <summary>
+        ///  费用审核
+        ///  团组列表 Page
+        /// </summary>
+        /// <param name="_dto">团组列表请求dto</param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostExpenseAuditGroupPageItems(ExpenseAuditGroupPageItemsDto _dto)
+        {
+            #region  参数验证
+            if (_dto.UserId < 1) return Ok(JsonView(false, "员工Id为空"));
+            if (_dto.PageId < 1) return Ok(JsonView(false, "页面Id为空"));
+
+            PageFunAuthViewBase pageFunAuthView = new PageFunAuthViewBase();
+            #region 页面操作权限验证
+            pageFunAuthView = await GeneralMethod.PostUserPageFuncDatas(_dto.UserId, _dto.PageId);
+
+            if (pageFunAuthView.CheckAuth == 0) return Ok(JsonView(false, "您没有查看权限"));
+            #endregion
+
+            #endregion
+            if (_dto.PortType == 1 || _dto.PortType == 2 || _dto.PortType == 2) // web/Android/IOS
+            {
+                string sqlWhere = string.Empty;
+                if (_dto.IsSure == 0) //未完成
+                {
+                    sqlWhere += string.Format(@" And IsSure = 0");
+                }
+                else if (_dto.IsSure == 1) //已完成
+                {
+                    sqlWhere += string.Format(@" And IsSure = 1");
+                }
+
+                if (!string.IsNullOrEmpty(_dto.SearchCriteria))
+                {
+                    string tj = _dto.SearchCriteria;
+                    sqlWhere += string.Format(@"And (ssd.Name Like '%{0}%' Or TeamName Like '%{1}%' Or ClientName Like '%{2}%' Or  ClientName Like '%{3}%' Or su.CnName  Like '%{4}%')",
+                       tj, tj, tj, tj, tj);
+                }
+
+                string sql = string.Format(@"Select Row_Number,Id,SalesQuoteNo,TourCode,TeamTypeId, TeamType,
+					                       TeamName,ClientName,ClientUnit, TeamLevId,TeamLev,VisitDate,
+										   VisitDays,VisitPNumber,JietuanOperator,IsSure,CreateTime
+					                From (
+					                    Select row_number() over(order by gdi.VisitDate Desc) as Row_Number,
+					                    gdi.Id,SalesQuoteNo,TourCode,ssd1.Id TeamLevId,ssd1.Name TeamLev,TeamName,
+										ClientName,ClientUnit,ssd.Id TeamTypeId, ssd.Name TeamType,VisitDate,
+										VisitDays,VisitPNumber,su.CnName JietuanOperator,IsSure,gdi.CreateTime
+					                    From  Grp_DelegationInfo gdi
+					                    Inner Join Sys_SetData ssd On gdi.TeamDid = ssd.Id 
+					                    Inner Join Sys_SetData ssd1 On gdi.TeamLevSId = ssd1.Id
+					                    Left Join Sys_Users su On gdi.JietuanOperator = su.Id
+					                    Where gdi.IsDel = 0 {0}
+				                    ) temp  ", sqlWhere);
+
+                RefAsync<int> total = 0;//REF和OUT不支持异步,想要真的异步这是最优解
+                var _DelegationList = await _sqlSugar.SqlQueryable<DelegationListView>(sql).ToPageListAsync(_dto.PageIndex, _dto.PageSize, total);//ToPageAsync
+
+                var _view = new
+                {
+                    PageFuncAuth = pageFunAuthView,
+                    Data = _DelegationList
+                };
+                return Ok(JsonView(true, "查询成功!", _view, total));
+
+            }
+            else
+            {
+                return Ok(JsonView(false, "查询失败"));
+            }
+        }
+
         /// <summary>
         /// <summary>
         /// 获取团组费用审核
         /// 获取团组费用审核
         /// </summary>
         /// </summary>
@@ -819,10 +912,21 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> PostSearchGrpCreditCardPayment(Search_GrpCreditCardPaymentDto _dto)
         public async Task<IActionResult> PostSearchGrpCreditCardPayment(Search_GrpCreditCardPaymentDto _dto)
         {
         {
-            if (_dto.DiId < 1)
-            {
-                return Ok(JsonView(false, "团组Id为空"));
-            }
+            #region  参数验证
+            if (_dto.UserId < 1) return Ok(JsonView(false, "员工Id为空"));
+            if (_dto.PageId < 1) return Ok(JsonView(false, "页面Id为空"));
+            if (_dto.DiId < 1) return Ok(JsonView(false, "团组Id为空"));
+
+            PageFunAuthViewBase pageFunAuthView = new PageFunAuthViewBase();
+            #region 页面操作权限验证
+            pageFunAuthView = await GeneralMethod.PostUserPageFuncDatas(_dto.UserId,_dto.PageId);
+
+            if (pageFunAuthView.CheckAuth == 0) return Ok(JsonView(false, "您没有查看权限"));
+            #endregion
+
+
+            #endregion
+
             Grp_CreditCardPaymentView _view = new Grp_CreditCardPaymentView();
             Grp_CreditCardPaymentView _view = new Grp_CreditCardPaymentView();
 
 
             #region 团组基本信息
             #region 团组基本信息
@@ -1036,6 +1140,7 @@ namespace OASystem.API.Controllers
             }
             }
 
 
             #endregion
             #endregion
+
             _view.DetailList = new List<Grp_CreditCardPaymentDetailView>(detailList);
             _view.DetailList = new List<Grp_CreditCardPaymentDetailView>(detailList);
             _view.TotalStr1 = string.Format(@"应付款总金额:{0}CNY&nbsp;|&nbsp;{1}USD&nbsp;|&nbsp;{2}EUR", CNY, USD, EUR);
             _view.TotalStr1 = string.Format(@"应付款总金额:{0}CNY&nbsp;|&nbsp;{1}USD&nbsp;|&nbsp;{2}EUR", CNY, USD, EUR);
             _view.TotalStr2 = string.Format(@"此次付款总金额:{0}CNY&nbsp;|&nbsp;{1}USD&nbsp;|&nbsp;{2}EUR", PayCNY, PayUSD, PayEUR);
             _view.TotalStr2 = string.Format(@"此次付款总金额:{0}CNY&nbsp;|&nbsp;{1}USD&nbsp;|&nbsp;{2}EUR", PayCNY, PayUSD, PayEUR);

+ 0 - 3
OASystem/OASystem.Api/OAMethodLib/GeneralMethod.cs

@@ -11,9 +11,6 @@ namespace OASystem.API.OAMethodLib
     public static class GeneralMethod
     public static class GeneralMethod
     {
     {
 
 
-       
-
-
         #region 消息
         #region 消息
 
 
 
 

+ 4 - 1
OASystem/OASystem.Domain/Dtos/Groups/GroupListDto.cs

@@ -18,8 +18,11 @@ namespace OASystem.Domain.Dtos.Groups
     /// <summary>
     /// <summary>
     /// 获取团组列表 Page 请求实体类
     /// 获取团组列表 Page 请求实体类
     /// </summary>
     /// </summary>
-    public class GroupPageListDto : DtoBase
+    public class GroupPageListDto : UserPageFuncDtoBase
     {
     {
+        public int PageIndex { get; set; } = 1;
+        public int PageSize { get; set; } = 10;
+
         /// <summary>
         /// <summary>
         /// 是否操作完成 
         /// 是否操作完成 
         /// -1 全部 0否 1是
         /// -1 全部 0否 1是

+ 24 - 1
OASystem/OASystem.Domain/Dtos/Groups/GrpCreditCardPaymentDto.cs

@@ -6,7 +6,30 @@ using System.Threading.Tasks;
 
 
 namespace OASystem.Domain.Dtos.Groups
 namespace OASystem.Domain.Dtos.Groups
 {
 {
-    public class Search_GrpCreditCardPaymentDto
+    /// <summary>
+    /// 费用审核 团组Item
+    /// </summary>
+    public class ExpenseAuditGroupPageItemsDto: UserPageFuncDtoBase
+    {
+        public int PageIndex { get; set; }
+
+        public int PageSize { get; set; }
+
+        /// <summary>
+        /// 是否操作完成 
+        /// -1 全部 0 否 1 是
+        /// </summary>
+        public int IsSure { get; set; }
+
+        /// <summary>
+        /// 搜索条件
+        /// 团组类型/团队名称/客户名称/客户单位/接团操作人
+        /// </summary>
+        public string? SearchCriteria { get; set; }
+    }
+
+
+    public class Search_GrpCreditCardPaymentDto:UserPageFuncDtoBase
     {
     {
         /// <summary>
         /// <summary>
         /// 团组Id
         /// 团组Id

+ 10 - 10
OASystem/OASystem.Domain/ViewModels/Groups/DelegationInfoView.cs

@@ -284,16 +284,6 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         /// </summary>
         public string? TeamLev { get; set; }
         public string? TeamLev { get; set; }
 
 
-        /// <summary>
-        /// 团组类型Id
-        /// </summary>
-        public int TeamTypeId { get; set; }
-
-        /// <summary>
-        /// 团组类型
-        /// </summary>
-        public string? TeamType { get; set; }
-
         /// <summary>
         /// <summary>
         /// 团组名称
         /// 团组名称
         /// </summary>
         /// </summary>
@@ -309,6 +299,16 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         /// </summary>
         public string? ClientUnit { get; set; }
         public string? ClientUnit { get; set; }
 
 
+        /// <summary>
+        /// 团组类型Id
+        /// </summary>
+        public int TeamTypeId { get; set; }
+
+        /// <summary>
+        /// 团组类型
+        /// </summary>
+        public string? TeamType { get; set; }
+
         /// <summary>
         /// <summary>
         /// 出团日期
         /// 出团日期
         /// </summary>
         /// </summary>

+ 7 - 7
OASystem/OASystem.Domain/ViewModels/ViewBase.cs

@@ -52,43 +52,43 @@
     {
     {
         /// <summary>
         /// <summary>
         /// 查看权限
         /// 查看权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int CheckAuth { get; set; } = 0;
         public int CheckAuth { get; set; } = 0;
 
 
         /// <summary>
         /// <summary>
         /// 删除权限
         /// 删除权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int DeleteAuth { get; set; } = 0;
         public int DeleteAuth { get; set; } = 0;
 
 
         /// <summary>
         /// <summary>
         /// 编辑权限
         /// 编辑权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int EditAuth { get; set; } = 0;
         public int EditAuth { get; set; } = 0;
 
 
         /// <summary>
         /// <summary>
         /// 文件下载权限
         /// 文件下载权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int FilesDownloadAuth { get; set; } = 0;
         public int FilesDownloadAuth { get; set; } = 0;
 
 
         /// <summary>
         /// <summary>
         /// 文件上传权限
         /// 文件上传权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int FilesUploadAuth { get; set; } = 0;
         public int FilesUploadAuth { get; set; } = 0;
 
 
         /// <summary>
         /// <summary>
         /// 添加权限
         /// 添加权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int AddAuth { get; set; } = 0;
         public int AddAuth { get; set; } = 0;
 
 
         /// <summary>
         /// <summary>
         /// 审核权限
         /// 审核权限
-        /// 0 不可操作 1 可操作
+        /// 0 否 1 是
         /// </summary>
         /// </summary>
         public int AuditAuth { get; set; } = 0;
         public int AuditAuth { get; set; } = 0;