215 lines
		
	
	
		
			9.2 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			215 lines
		
	
	
		
			9.2 KiB
		
	
	
	
		
			C#
		
	
	
	
| using FineUIPro;
 | |
| using System;
 | |
| using System.Collections;
 | |
| using System.Collections.Generic;
 | |
| using System.Linq;
 | |
| using System.Web.UI.WebControls;
 | |
| 
 | |
| namespace BLL
 | |
| {
 | |
|     /// <summary>
 | |
|     /// 领导带班检查
 | |
|     /// </summary>
 | |
|     public static class Check_ProjectLeaderCheckService
 | |
|     {
 | |
|         public static Model.SGGLDB db = Funs.DB;
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据主键获取领导带班检查
 | |
|         /// </summary>
 | |
|         /// <param name="ProjectLeaderCheckId"></param>
 | |
|         /// <returns></returns>
 | |
|         public static Model.Check_ProjectLeaderCheck GetProjectLeaderCheckById(string ProjectLeaderCheckId)
 | |
|         {
 | |
|             return Funs.DB.Check_ProjectLeaderCheck.FirstOrDefault(e => e.ProjectLeaderCheckId == ProjectLeaderCheckId);
 | |
|         }
 | |
| 
 | |
|         #region 公司两级领导带班检查列表
 | |
|         /// <summary>
 | |
|         /// 记录数
 | |
|         /// </summary>
 | |
|         public static int count
 | |
|         {
 | |
|             get;
 | |
|             set;
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 定义变量
 | |
|         /// </summary>
 | |
|         private static IQueryable<Model.Check_ProjectLeaderCheck> getDataLists = from x in db.Check_ProjectLeaderCheck
 | |
|                                                                                  select x;
 | |
| 
 | |
|         /// <summary>
 | |
|         ///  数据列表
 | |
|         /// </summary>
 | |
|         /// <param name="unitId"></param>
 | |
|         /// <param name="Grid1"></param>
 | |
|         /// <returns></returns>
 | |
|         public static IEnumerable getListData(string projectId, string startTime, string endTime, Grid Grid1)
 | |
|         {
 | |
|             IQueryable<Model.Check_ProjectLeaderCheck> getDataList = getDataLists;
 | |
|             if (!string.IsNullOrEmpty(projectId))
 | |
|             {
 | |
|                 getDataList = getDataList.Where(x => x.ProjectId == projectId);
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(startTime))
 | |
|             {
 | |
|                 DateTime? startTimeD = Funs.GetNewDateTime(startTime);
 | |
|                 if (startTimeD.HasValue)
 | |
|                 {
 | |
|                     getDataList = getDataList.Where(x => x.CheckDate >= startTimeD);
 | |
|                 }
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(endTime))
 | |
|             {
 | |
|                 DateTime? endTimeD = Funs.GetNewDateTime(endTime);
 | |
|                 if (endTimeD.HasValue)
 | |
|                 {
 | |
|                     getDataList = getDataList.Where(x => x.CheckDate <= endTimeD);
 | |
|                 }
 | |
|             }
 | |
|             count = getDataList.Count();
 | |
|             if (count == 0)
 | |
|             {
 | |
|                 return null;
 | |
|             }
 | |
|             getDataList = SortConditionHelper.SortingAndPaging(getDataList, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
 | |
|             return from x in getDataList
 | |
|                    join y in db.Base_Project on x.ProjectId equals y.ProjectId               
 | |
|                    into ps                  
 | |
|                    from y in ps.DefaultIfEmpty()
 | |
|                    select new
 | |
|                    {
 | |
|                        x.ProjectLeaderCheckId,
 | |
|                        x.ProjectId,
 | |
|                        db.Base_Project.First(u => u.ProjectId == x.ProjectId).ProjectName,
 | |
|                        x.CheckCode,
 | |
|                        x.UnitIds,
 | |
|                        x.LeaderIds,
 | |
|                        x.LeaderNames,
 | |
|                        x.QuestionDef,
 | |
|                        x.CheckDate,
 | |
|                        x.IsHoldMeet,
 | |
|                        IsHoldMeetName = x.IsHoldMeet == true ? "是" : "否",
 | |
|                        x.Requirement,
 | |
|                    };
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据日期获取领导带班检查集合
 | |
|         /// </summary>
 | |
|         /// <param name="startTime">开始时间</param>
 | |
|         /// <param name="endTime">结束时间</param>
 | |
|         /// <param name="projectId">项目号</param>
 | |
|         /// <returns>领导带班检查集合</returns>
 | |
|         public static List<Model.Check_ProjectLeaderCheck> GetProjectLeaderCheckListsByDate(DateTime startTime, DateTime endTime, string projectId)
 | |
|         {
 | |
|             return (from x in Funs.DB.Check_ProjectLeaderCheck where x.CheckDate >= startTime && x.CheckDate <= endTime && x.ProjectId == projectId orderby x.CheckDate select x).ToList();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据时间段获取HSE领导带班检查集合
 | |
|         /// </summary>
 | |
|         /// <param name="startTime">开始时间</param>
 | |
|         /// <param name="endTime">结束时间</param>
 | |
|         /// <param name="projectId">项目Id</param>
 | |
|         /// <returns>时间段内的HSE领导带班检查集合</returns>
 | |
|         public static int GetCountByDate(DateTime startTime, DateTime endTime, string projectId)
 | |
|         {
 | |
|             return (from x in Funs.DB.Check_ProjectLeaderCheck where x.CheckDate >= startTime && x.CheckDate <= endTime && x.ProjectId == projectId select x).Count();
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 添加领导带班检查
 | |
|         /// </summary>
 | |
|         /// <param name="ProjectLeaderCheck"></param>
 | |
|         public static void AddProjectLeaderCheck(Model.Check_ProjectLeaderCheck ProjectLeaderCheck)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.Check_ProjectLeaderCheck newProjectLeaderCheck = new Model.Check_ProjectLeaderCheck
 | |
|             {
 | |
|                 ProjectLeaderCheckId = ProjectLeaderCheck.ProjectLeaderCheckId,
 | |
|                 ProjectId = ProjectLeaderCheck.ProjectId,
 | |
|                 UnitIds = ProjectLeaderCheck.UnitIds,
 | |
|                 CheckCode = ProjectLeaderCheck.CheckCode,
 | |
|                 LeaderIds = ProjectLeaderCheck.LeaderIds,
 | |
|                 CheckDate = ProjectLeaderCheck.CheckDate,
 | |
|                 QuestionDef = ProjectLeaderCheck.QuestionDef,
 | |
|                 IsHoldMeet = ProjectLeaderCheck.IsHoldMeet,
 | |
|                 Requirement = ProjectLeaderCheck.Requirement,
 | |
|                 LeaderNames = ProjectLeaderCheck.LeaderNames,
 | |
|                 CompileMan = ProjectLeaderCheck.CompileMan,
 | |
|                 CompileDate = ProjectLeaderCheck.CompileDate,
 | |
|             };
 | |
|             db.Check_ProjectLeaderCheck.InsertOnSubmit(newProjectLeaderCheck);
 | |
|             db.SubmitChanges();
 | |
|             CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(Const.ProjectLeaderCheckMenuId, ProjectLeaderCheck.ProjectId, null, ProjectLeaderCheck.ProjectLeaderCheckId, ProjectLeaderCheck.CheckDate);
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 修改领导带班检查
 | |
|         /// </summary>
 | |
|         /// <param name="ProjectLeaderCheck"></param>
 | |
|         public static void UpdateProjectLeaderCheck(Model.Check_ProjectLeaderCheck ProjectLeaderCheck)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.Check_ProjectLeaderCheck newProjectLeaderCheck = db.Check_ProjectLeaderCheck.FirstOrDefault(e => e.ProjectLeaderCheckId == ProjectLeaderCheck.ProjectLeaderCheckId);
 | |
|             if (newProjectLeaderCheck != null)
 | |
|             {
 | |
|                 newProjectLeaderCheck.UnitIds = ProjectLeaderCheck.UnitIds;
 | |
|                 newProjectLeaderCheck.CheckCode = ProjectLeaderCheck.CheckCode;
 | |
|                 newProjectLeaderCheck.LeaderIds = ProjectLeaderCheck.LeaderIds;
 | |
|                 newProjectLeaderCheck.CheckDate = ProjectLeaderCheck.CheckDate;
 | |
|                 newProjectLeaderCheck.QuestionDef = ProjectLeaderCheck.QuestionDef;
 | |
|                 newProjectLeaderCheck.IsHoldMeet = ProjectLeaderCheck.IsHoldMeet;
 | |
|                 newProjectLeaderCheck.Requirement = ProjectLeaderCheck.Requirement;
 | |
|                 newProjectLeaderCheck.LeaderNames = ProjectLeaderCheck.LeaderNames;
 | |
|                 newProjectLeaderCheck.CompileMan = ProjectLeaderCheck.CompileMan;
 | |
|                 newProjectLeaderCheck.CompileDate = ProjectLeaderCheck.CompileDate;
 | |
|                 db.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 根据主键删除领导带班检查
 | |
|         /// </summary>
 | |
|         /// <param name="ProjectLeaderCheckId"></param>
 | |
|         public static void DeleteProjectLeaderCheckById(string ProjectLeaderCheckId)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.Check_ProjectLeaderCheck ProjectLeaderCheck = db.Check_ProjectLeaderCheck.FirstOrDefault(e => e.ProjectLeaderCheckId == ProjectLeaderCheckId);
 | |
|             if (ProjectLeaderCheck != null)
 | |
|             {
 | |
|                 CodeRecordsService.DeleteCodeRecordsByDataId(ProjectLeaderCheckId);
 | |
|                 ////删除附件表
 | |
|                 BLL.CommonService.DeleteAttachFileById(ProjectLeaderCheckId);
 | |
|                 db.Check_ProjectLeaderCheck.DeleteOnSubmit(ProjectLeaderCheck);
 | |
|                 db.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         public static string getLeaderName(object ProjectLeaderCheckId)
 | |
|         {
 | |
|             string name = string.Empty;
 | |
|             if (ProjectLeaderCheckId != null)
 | |
|             {
 | |
|                 var getData = Check_ProjectLeaderCheckService.GetProjectLeaderCheckById(ProjectLeaderCheckId.ToString());
 | |
|                 if (getData != null)
 | |
|                 {
 | |
|                     if (!string.IsNullOrEmpty(getData.LeaderIds))
 | |
|                     {
 | |
|                         name = UserService.getUserNamesUserIds(getData.LeaderIds);
 | |
|                     }
 | |
|                     if (!string.IsNullOrEmpty(getData.LeaderNames))
 | |
|                     {
 | |
|                         name += "," + getData.LeaderNames;
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|             return name;
 | |
|         }
 | |
|     }
 | |
| }
 |