219 lines
9.5 KiB
C#
219 lines
9.5 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,
|
|
ResponsibleMan = ProjectLeaderCheck.ResponsibleMan,
|
|
CompanyTrainingItemId = ProjectLeaderCheck.CompanyTrainingItemId,
|
|
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.ResponsibleMan = ProjectLeaderCheck.ResponsibleMan;
|
|
newProjectLeaderCheck.CompanyTrainingItemId = ProjectLeaderCheck.CompanyTrainingItemId;
|
|
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;
|
|
}
|
|
}
|
|
}
|