Преглед изворни кода

团组操作 新增部门归属
1.sq 和 gyy 等显示 市场部
2.王鸽和主管及张总还有管理员号统一国交部
2-1. 4 管理员 ,21 张海麟

leiy пре 11 месеци
родитељ
комит
85c80aac19

+ 36 - 14
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -339,23 +339,45 @@ namespace OASystem.API.Controllers
                 }
 
                 string sql = string.Format(@"Select Row_Number,Id,SalesQuoteNo,TourCode,TeamTypeId, TeamType,
-					                              TeamLevId,TeamLev,TeamName,ClientName,ClientUnit,
-					                              VisitDate,VisitDays,VisitPNumber,JietuanOperator,IsSure,CreateTime
-					                              From (
-					                              Select row_number() over(order by gdi.CreateTime Desc) as Row_Number,
-					                              gdi.Id,SalesQuoteNo,TourCode,ssd.Id TeamTypeId, ssd.Name TeamType,
-					                              ssd1.Id TeamLevId,ssd1.Name TeamLev,TeamName,ClientName,ClientUnit,
-					                              VisitDate,VisitDays,VisitPNumber,su.CnName JietuanOperator,IsSure,gdi.CreateTime
-					                              From  Grp_DelegationInfo gdi
-					                              Left Join Sys_SetData ssd On gdi.TeamDid = ssd.Id 
-					                              Left 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);
+                                             	TeamLevId,TeamLev,TeamName,ClientName,ClientUnit,
+                                             	VisitDate,VisitDays,VisitPNumber,JietuanOperatorId,
+                                             	JietuanOperator,IsSure,CreateTime
+                                             	From (
+                                             	Select row_number() over(order by gdi.CreateTime Desc) as Row_Number,
+                                             	gdi.Id,SalesQuoteNo,TourCode,ssd.Id TeamTypeId, ssd.Name TeamType,
+                                             	ssd1.Id TeamLevId,ssd1.Name TeamLev,TeamName,ClientName,ClientUnit,
+                                             	VisitDate,VisitDays,VisitPNumber,JietuanOperator JietuanOperatorId,
+                                             	su.CnName JietuanOperator,IsSure,gdi.CreateTime
+                                             	From  Grp_DelegationInfo gdi
+                                             	Left Join Sys_SetData ssd On gdi.TeamDid = ssd.Id 
+                                             	Left 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
 
+                #region 处理所属部门
+                /*
+                 * 1.sq 和 gyy 等显示 市场部
+                 * 2.王鸽和主管及张总还有管理员号统一国交部
+                 * 2-1.  4	管理员 ,21	张海麟
+                 */
+                List<int> userIds = _DelegationList.Select(it => it.JietuanOperatorId).ToList();
+                List<int> userIds1 = new List<int>() { 4, 21 };
+                var UserDepDatas = _sqlSugar.Queryable<Sys_Users>()
+                                            .LeftJoin<Sys_Department>((u, d) => u.DepId == d.Id)
+                                            .Where(u => u.IsDel == 0 && userIds.Contains(u.Id))
+                                            .Select((u, d) => new { UserId = u.Id, DepName = userIds1.Contains(u.Id) ? "国交部" : d.DepName })
+                                            .ToList();
+
+                foreach (var item in _DelegationList)
+                {
+                    item.Department = UserDepDatas.Find(it => item.JietuanOperatorId == it.UserId)?.DepName ?? "Unknown";
+                }
+                #endregion
+
                 var _view = new
                 {
                     PageFuncAuth = pageFunAuthView,
@@ -3371,7 +3393,7 @@ namespace OASystem.API.Controllers
                     string fileName = "邀请函" + DateTime.Now.ToString("yyyy-MM-dd") + ".docx";
                     string filePath = fileDir + $@"商邀相关文件/{fileName}";
                     doc.Save(filePath);
-                    string Url = AppSettingsHelper.Get("WordBaseUrl") + "Office/GrpFile/商邀相关文件" + fileName;
+                    string Url = AppSettingsHelper.Get("WordBaseUrl") + "Office/GrpFile/商邀相关文件/" + fileName;
                     return Ok(JsonView(true, "操作成功!", Url));
 
                 }

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

@@ -384,11 +384,21 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         public string? SalesQuoteNo { get; set; }
 
+        /// <summary>
+        /// 客户所属部门
+        /// </summary>
+        public string Department { get; set; }
+
         /// <summary>
         /// 团号
         /// </summary>
         public string? TourCode { get; set; }
 
+        /// <summary>
+        /// 接团操作人Id
+        /// </summary>
+        public int JietuanOperatorId { get; set; }
+
         /// <summary>
         /// 接团操作人
         /// </summary>