151 lines
6.8 KiB
C#
151 lines
6.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace BLL
|
|
{
|
|
/// <summary>
|
|
/// 开工前检查
|
|
/// </summary>
|
|
public static class Check_CheckWorkService
|
|
{
|
|
/// <summary>
|
|
/// 根据开工前检查ID获取开工前检查信息
|
|
/// </summary>
|
|
/// <param name="CheckWorkName"></param>
|
|
/// <returns></returns>
|
|
public static Model.Check_CheckWork GetCheckWorkByCheckWorkId(string checkWorkId)
|
|
{
|
|
return Funs.DB.Check_CheckWork.FirstOrDefault(e => e.CheckWorkId == checkWorkId);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据时间段获取开工前检查信息集合
|
|
/// </summary>
|
|
/// <param name="startTime"></param>
|
|
/// <param name="endTime"></param>
|
|
/// <param name="projectId"></param>
|
|
/// <returns></returns>
|
|
public static int GetCountByCheckTime(DateTime startTime, DateTime endTime, string projectId)
|
|
{
|
|
return (from x in Funs.DB.Check_CheckWork where x.CheckTime >= startTime && x.CheckTime < endTime && x.ProjectId == projectId && x.States == BLL.Const.State_2 select x).Count();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据时间段获取已完成的开工前检查整改数量
|
|
/// </summary>
|
|
/// <param name="startTime">开始时间</param>
|
|
/// <param name="endTime">结束时间</param>
|
|
/// <param name="projectId">项目号</param>
|
|
/// <returns>已完成的开工前检查整改数量</returns>
|
|
public static int GetIsOKViolationCountByCheckTime(DateTime startTime, DateTime endTime, string projectId)
|
|
{
|
|
return (from x in Funs.DB.Check_CheckWork
|
|
join y in Funs.DB.Check_CheckWorkDetail on x.CheckWorkId equals y.CheckWorkId
|
|
where x.CheckTime >= startTime && x.CheckTime <= endTime && x.ProjectId == projectId
|
|
select y).Count();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加安全开工前检查
|
|
/// </summary>
|
|
/// <param name="checkWork"></param>
|
|
public static void AddCheckWork(Model.Check_CheckWork checkWork)
|
|
{
|
|
Model.Check_CheckWork newCheckWork = new Model.Check_CheckWork
|
|
{
|
|
CheckWorkId = checkWork.CheckWorkId,
|
|
CheckWorkCode = checkWork.CheckWorkCode,
|
|
ProjectId = checkWork.ProjectId,
|
|
Area = checkWork.Area,
|
|
CheckTime = checkWork.CheckTime,
|
|
ThisUnitId = checkWork.ThisUnitId,
|
|
MainUnitPerson = checkWork.MainUnitPerson,
|
|
SubUnits = checkWork.SubUnits,
|
|
SubUnitPerson = checkWork.SubUnitPerson,
|
|
PartInPersonNames = checkWork.PartInPersonNames,
|
|
MainUnitDeputy = checkWork.MainUnitDeputy,
|
|
SubUnitDeputy = checkWork.SubUnitDeputy,
|
|
MainUnitDeputyDate = checkWork.MainUnitDeputyDate,
|
|
SubUnitDeputyDate = checkWork.SubUnitDeputyDate,
|
|
AttachUrl = checkWork.AttachUrl,
|
|
IsCompleted = checkWork.IsCompleted,
|
|
States = checkWork.States,
|
|
CompileMan = checkWork.CompileMan,
|
|
IsAgree = checkWork.IsAgree
|
|
};
|
|
Funs.DB.Check_CheckWork.InsertOnSubmit(newCheckWork);
|
|
Funs.DB.SubmitChanges();
|
|
////增加一条编码记录
|
|
BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(BLL.Const.ProjectCheckWorkMenuId, checkWork.ProjectId, null, checkWork.CheckWorkId, checkWork.CheckTime);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 修改安全开工前检查
|
|
/// </summary>
|
|
/// <param name="checkWork"></param>
|
|
public static void UpdateCheckWork(Model.Check_CheckWork checkWork)
|
|
{
|
|
Model.Check_CheckWork newCheckWork = Funs.DB.Check_CheckWork.FirstOrDefault(e => e.CheckWorkId == checkWork.CheckWorkId);
|
|
if (newCheckWork != null)
|
|
{
|
|
newCheckWork.Area = checkWork.Area;
|
|
newCheckWork.CheckTime = checkWork.CheckTime;
|
|
newCheckWork.ThisUnitId = checkWork.ThisUnitId;
|
|
newCheckWork.MainUnitPerson = checkWork.MainUnitPerson;
|
|
newCheckWork.SubUnits = checkWork.SubUnits;
|
|
newCheckWork.SubUnitPerson = checkWork.SubUnitPerson;
|
|
newCheckWork.PartInPersonNames = checkWork.PartInPersonNames;
|
|
newCheckWork.MainUnitDeputy = checkWork.MainUnitDeputy;
|
|
newCheckWork.SubUnitDeputy = checkWork.SubUnitDeputy;
|
|
newCheckWork.MainUnitDeputyDate = checkWork.MainUnitDeputyDate;
|
|
newCheckWork.SubUnitDeputyDate = checkWork.SubUnitDeputyDate;
|
|
newCheckWork.AttachUrl = checkWork.AttachUrl;
|
|
newCheckWork.IsCompleted = checkWork.IsCompleted;
|
|
newCheckWork.States = checkWork.States;
|
|
newCheckWork.IsAgree = checkWork.IsAgree;
|
|
Funs.DB.SubmitChanges();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据开工前检查ID删除对应开工前检查记录信息
|
|
/// </summary>
|
|
/// <param name="superviseCheckReportId"></param>
|
|
public static void DeleteCheckWork(string checkWorkId)
|
|
{
|
|
var q = (from x in Funs.DB.Check_CheckWork where x.CheckWorkId == checkWorkId select x).FirstOrDefault();
|
|
if (q != null)
|
|
{
|
|
///删除编码表记录
|
|
BLL.CodeRecordsService.DeleteCodeRecordsByDataId(q.CheckWorkId);
|
|
////删除附件表
|
|
BLL.CommonService.DeleteAttachFileById(q.CheckWorkId);
|
|
///删除工程师日志收集记录
|
|
if (!string.IsNullOrEmpty(q.MainUnitPerson))
|
|
{
|
|
List<string> mainUnitPersonIds = Funs.GetStrListByStr(q.MainUnitPerson, ',');
|
|
foreach (var item in mainUnitPersonIds)
|
|
{
|
|
BLL.HSSELogService.CollectHSSELog(q.ProjectId, item, q.CheckTime, "21", "开工前HSE检查", Const.BtnDelete, 1);
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(q.SubUnitPerson))
|
|
{
|
|
List<string> subUnitPersonIds = Funs.GetStrListByStr(q.SubUnitPerson, ',');
|
|
foreach (var item in subUnitPersonIds)
|
|
{
|
|
BLL.HSSELogService.CollectHSSELog(q.ProjectId, item, q.CheckTime, "21", "开工前HSE检查", Const.BtnDelete, 1);
|
|
}
|
|
}
|
|
////删除审核流程表
|
|
BLL.CommonService.DeleteFlowOperateByID(q.CheckWorkId);
|
|
Funs.DB.Check_CheckWork.DeleteOnSubmit(q);
|
|
Funs.DB.SubmitChanges();
|
|
}
|
|
}
|
|
}
|
|
}
|