| 
									
										
										
										
											2025-02-12 09:27:47 +08:00
										 |  |  |  | using System; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  |  | using System.Linq; | 
					
						
							|  |  |  |  | using System.Text; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace BLL | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     /// <summary> | 
					
						
							|  |  |  |  |     /// 班组 | 
					
						
							|  |  |  |  |     /// </summary> | 
					
						
							|  |  |  |  |     public static class TeamGroupService | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         public static Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据主键获取班组信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="teamGroupId"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static Model.ProjectData_TeamGroup GetTeamGroupById(string teamGroupId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return Funs.DB.ProjectData_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroupId); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public static Model.ProjectData_TeamGroup getTeamGroupByTeamGroupName(string projectId, string unitId, string name) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return Funs.DB.ProjectData_TeamGroup.FirstOrDefault(x => x.ProjectId == projectId && x.UnitId == unitId && x.TeamGroupName == name); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 添加班组信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="teamGroup"></param> | 
					
						
							|  |  |  |  |         public static void AddTeamGroup(Model.ProjectData_TeamGroup teamGroup) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.ProjectData_TeamGroup newTeamGroup = new Model.ProjectData_TeamGroup | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 TeamGroupId = teamGroup.TeamGroupId, | 
					
						
							|  |  |  |  |                 ProjectId = teamGroup.ProjectId, | 
					
						
							|  |  |  |  |                 UnitId = teamGroup.UnitId, | 
					
						
							|  |  |  |  |                 TeamGroupCode = teamGroup.TeamGroupCode, | 
					
						
							|  |  |  |  |                 TeamGroupName = teamGroup.TeamGroupName, | 
					
						
							|  |  |  |  |                 Remark = teamGroup.Remark, | 
					
						
							|  |  |  |  |                 TeamTypeId = teamGroup.TeamTypeId, | 
					
						
							|  |  |  |  |                 ThirdTeamCode = teamGroup.ThirdTeamCode, | 
					
						
							|  |  |  |  |                 EntryTime = teamGroup.EntryTime, | 
					
						
							|  |  |  |  |                 ExitTime = teamGroup.ExitTime, | 
					
						
							|  |  |  |  |                 GroupLeaderId = teamGroup.GroupLeaderId, | 
					
						
							|  |  |  |  |                 RealNamePushTime= null, | 
					
						
							|  |  |  |  |             }; | 
					
						
							|  |  |  |  |             db.ProjectData_TeamGroup.InsertOnSubmit(newTeamGroup); | 
					
						
							|  |  |  |  |             db.SubmitChanges(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 修改班组信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="teamGroup"></param> | 
					
						
							|  |  |  |  |         public static void UpdateTeamGroup(Model.ProjectData_TeamGroup teamGroup) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             Model.ProjectData_TeamGroup newTeamGroup = db.ProjectData_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroup.TeamGroupId); | 
					
						
							|  |  |  |  |             if (newTeamGroup != null) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 newTeamGroup.ProjectId = teamGroup.ProjectId; | 
					
						
							|  |  |  |  |                 newTeamGroup.UnitId = teamGroup.UnitId; | 
					
						
							|  |  |  |  |                 newTeamGroup.TeamGroupCode = teamGroup.TeamGroupCode; | 
					
						
							|  |  |  |  |                 newTeamGroup.TeamGroupName = teamGroup.TeamGroupName; | 
					
						
							|  |  |  |  |                 newTeamGroup.GroupLeaderId = teamGroup.GroupLeaderId; | 
					
						
							|  |  |  |  |                 newTeamGroup.TeamTypeId = teamGroup.TeamTypeId; | 
					
						
							|  |  |  |  |                 newTeamGroup.ThirdTeamCode = teamGroup.ThirdTeamCode; | 
					
						
							|  |  |  |  |                 newTeamGroup.EntryTime = teamGroup.EntryTime; | 
					
						
							|  |  |  |  |                 newTeamGroup.ExitTime = teamGroup.ExitTime; | 
					
						
							|  |  |  |  |                 newTeamGroup.Remark = teamGroup.Remark; | 
					
						
							|  |  |  |  |                 newTeamGroup.RealNamePushTime = null; | 
					
						
							|  |  |  |  |                 db.SubmitChanges(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据主键删除班组信息 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="teamGroupId"></param> | 
					
						
							|  |  |  |  |         public static void DeleteTeamGroupById(string teamGroupId) | 
					
						
							|  |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2025-09-03 16:40:38 +08:00
										 |  |  |  |             try | 
					
						
							| 
									
										
										
										
											2025-02-12 09:27:47 +08:00
										 |  |  |  |             { | 
					
						
							| 
									
										
										
										
											2025-09-03 16:40:38 +08:00
										 |  |  |  |                 using (var db = new Model.SGGLDB(Funs.ConnString)) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     Model.ProjectData_TeamGroup teamGroup = db.ProjectData_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroupId); | 
					
						
							|  |  |  |  |                     if (teamGroup != null) | 
					
						
							|  |  |  |  |                     { | 
					
						
							|  |  |  |  |                         db.ProjectData_TeamGroup.DeleteOnSubmit(teamGroup); | 
					
						
							|  |  |  |  |                         db.SubmitChanges(); | 
					
						
							|  |  |  |  |                     } | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |             }catch(System.Exception ex) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-12 09:27:47 +08:00
										 |  |  |  |             } | 
					
						
							| 
									
										
										
										
											2025-09-03 16:40:38 +08:00
										 |  |  |  |                 | 
					
						
							|  |  |  |  |             | 
					
						
							| 
									
										
										
										
											2025-02-12 09:27:47 +08:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取班组人数 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="teamGroupId"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static int getTeamGroupPersonNum(string teamGroupId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Model.SGGLDB db = Funs.DB; | 
					
						
							|  |  |  |  |             return (from x in Funs.DB.SitePerson_Person | 
					
						
							|  |  |  |  |                     where x.TeamGroupId == teamGroupId && x.IsUsed == true && (!x.OutTime.HasValue || x.OutTime > DateTime.Now) | 
					
						
							|  |  |  |  |                     select x).Count(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据项目Id获取班组下拉选择项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="projectId"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static List<Model.ProjectData_TeamGroup> GetTeamGroupList(string projectId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return (from x in Funs.DB.ProjectData_TeamGroup where x.ProjectId == projectId orderby x.TeamGroupCode select x).ToList(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据项目ID、单位ID获取班组下拉选择项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="p"></param> | 
					
						
							|  |  |  |  |         /// <param name="p_2"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static object GetTeamGroupListByUnitId(string projectId, string unitId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return (from x in Funs.DB.ProjectData_TeamGroup | 
					
						
							|  |  |  |  |                     where x.ProjectId == projectId && x.UnitId == unitId | 
					
						
							|  |  |  |  |                     orderby x.TeamGroupCode select x).ToList(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-05 16:48:17 +08:00
										 |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 根据项目ID获取班组下拉选择项 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="p"></param> | 
					
						
							|  |  |  |  |         /// <param name="p_2"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static object GetTeamGroupListByProjectId(string projectId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return (from x in Funs.DB.ProjectData_TeamGroup | 
					
						
							|  |  |  |  |                     where x.ProjectId == projectId | 
					
						
							|  |  |  |  |                     orderby x.TeamGroupCode | 
					
						
							|  |  |  |  |                     select x).ToList(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-12 09:27:47 +08:00
										 |  |  |  |         #region 表下拉框 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         ///  表下拉框 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="dropName">下拉框名字</param> | 
					
						
							|  |  |  |  |         /// <param name="isShowPlease">是否显示请选择</param> | 
					
						
							|  |  |  |  |         public static void InitTeamGroupProjectUnitDropDownList(FineUIPro.DropDownList dropName, string projectId, string unitId, bool isShowPlease) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             dropName.DataValueField = "TeamGroupId"; | 
					
						
							|  |  |  |  |             dropName.DataTextField = "TeamGroupName"; | 
					
						
							|  |  |  |  |             dropName.DataSource = GetTeamGroupListByUnitId(projectId, unitId); | 
					
						
							|  |  |  |  |             dropName.DataBind(); | 
					
						
							|  |  |  |  |             if (isShowPlease) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Funs.FineUIPleaseSelect(dropName); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         #endregion | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-05 16:48:17 +08:00
										 |  |  |  |         #region 表下拉框 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         ///  表下拉框 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="dropName">下拉框名字</param> | 
					
						
							|  |  |  |  |         /// <param name="isShowPlease">是否显示请选择</param> | 
					
						
							|  |  |  |  |         public static void InitTeamGroupProjectDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             dropName.DataValueField = "TeamGroupId"; | 
					
						
							|  |  |  |  |             dropName.DataTextField = "TeamGroupName"; | 
					
						
							|  |  |  |  |             dropName.DataSource = GetTeamGroupListByProjectId(projectId); | 
					
						
							|  |  |  |  |             dropName.DataBind(); | 
					
						
							|  |  |  |  |             if (isShowPlease) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Funs.FineUIPleaseSelect(dropName); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         #endregion | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-02-12 09:27:47 +08:00
										 |  |  |  |         #region 表下拉框 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         ///  表下拉框 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="dropName">下拉框名字</param> | 
					
						
							|  |  |  |  |         /// <param name="isShowPlease">是否显示请选择</param> | 
					
						
							|  |  |  |  |         public static void InitTeamGroupProjectUnitsDropDownList(FineUIPro.DropDownList dropName, string projectId, string unitId, bool isShowPlease) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             List<string> units = Funs.GetStrListByStr(unitId, ','); | 
					
						
							|  |  |  |  |             dropName.DataValueField = "TeamGroupId"; | 
					
						
							|  |  |  |  |             dropName.DataTextField = "TeamGroupName"; | 
					
						
							|  |  |  |  |             if (units.Count() > 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 dropName.DataSource = (from x in Funs.DB.ProjectData_TeamGroup | 
					
						
							|  |  |  |  |                                        where x.ProjectId == projectId && units.Contains(x.UnitId) | 
					
						
							|  |  |  |  |                                        orderby x.TeamGroupCode | 
					
						
							|  |  |  |  |                                        select x).ToList(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 dropName.DataSource = null; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             dropName.DataBind(); | 
					
						
							|  |  |  |  |             if (isShowPlease) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 Funs.FineUIPleaseSelect(dropName); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         #endregion | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 获取班组名称 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <param name="UnitId"></param> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public static string GetTeamGroupNameByTeamGroupId(string TeamGroupId) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             string name = string.Empty; | 
					
						
							|  |  |  |  |             var TeamGroup = Funs.DB.ProjectData_TeamGroup.FirstOrDefault(x => x.TeamGroupId == TeamGroupId); | 
					
						
							|  |  |  |  |             if (TeamGroup != null) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 name = TeamGroup.TeamGroupName; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return name; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } |