using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
///
/// 项目HSE数据汇总
///
public static class HSEDataCollectService
{
///
/// 根据主键获取项目HSE数据汇总
///
///
///
public static Model.DigData_HSEDataCollect GetHSEDataCollectById(string HSEDataCollectId)
{
return Funs.DB.DigData_HSEDataCollect.FirstOrDefault(e => e.HSEDataCollectId == HSEDataCollectId);
}
///
/// 根据年度获取项目HSE数据汇总
///
///
///
public static Model.DigData_HSEDataCollect GetHSEDataCollectByYear(int Year)
{
return Funs.DB.DigData_HSEDataCollect.FirstOrDefault(e => e.Year == Year);
}
#region 创建项目HSE数据汇总
///
/// 创建项目HSE数据汇总
///
///
///
public static string CreateHSEDataCollectByYear(int year)
{
Model.CNPCDB db = Funs.DB;
string returnHSEDataCollectId = SQLHelper.GetNewID();
Model.DigData_HSEDataCollect newHSEDataCollect = new Model.DigData_HSEDataCollect
{
HSEDataCollectId = returnHSEDataCollectId,
Year = year,
};
db.DigData_HSEDataCollect.InsertOnSubmit(newHSEDataCollect);
db.SubmitChanges();
////新增明细
var getSysConst = ConstValue.drpConstItemList(ConstValue.Group_HSEData);
foreach (var item in getSysConst)
{
Model.DigData_HSEDataCollectItem newItem = new Model.DigData_HSEDataCollectItem()
{
HSEDataCollectItemId = SQLHelper.GetNewID(),
HSEDataCollectId = returnHSEDataCollectId,
Year = year,
SortIndex = item.SortIndex,
HSEContent = item.ConstText,
MeasureUnit = item.Remark,
};
db.DigData_HSEDataCollectItem.InsertOnSubmit(newItem);
db.SubmitChanges();
}
////新增月报提交情况
var getProject = from x in Funs.DB.Base_Project
where x.ProjectState == Const.ProjectState_1 || x.ProjectState == null
select x;
foreach (var item in getProject)
{
Model.DigData_HSEDataCollectSubmission newSubmission = new Model.DigData_HSEDataCollectSubmission()
{
HSEDataCollectSubmissionId = SQLHelper.GetNewID(),
HSEDataCollectId = returnHSEDataCollectId,
Year = year,
ProjectId = item.ProjectId,
};
db.DigData_HSEDataCollectSubmission.InsertOnSubmit(newSubmission);
db.SubmitChanges();
}
return returnHSEDataCollectId;
}
#endregion
///
/// 根据项目信息
///
public static void ProjectHSEDataCollectSubmission(Model.Base_Project project)
{
Model.CNPCDB db = Funs.DB;
if (project.ProjectState == Const.ProjectState_3)
{
#region 项目关闭
DateTime nowD = DateTime.Now.AddMonths(1);
var getSubmission = Funs.DB.DigData_HSEDataCollectSubmission.FirstOrDefault(x => x.ProjectId == project.ProjectId && x.Year == nowD.Year);
if (getSubmission != null)
{
if (nowD.Month == 1)
{
getSubmission.Month1 = "已关闭";
}
else if (nowD.Month == 2)
{
getSubmission.Month2 = "已关闭";
}
else if (nowD.Month == 3)
{
getSubmission.Month3 = "已关闭";
}
else if (nowD.Month == 4)
{
getSubmission.Month4 = "已关闭";
}
else if (nowD.Month == 5)
{
getSubmission.Month5 = "已关闭";
}
else if (nowD.Month == 6)
{
getSubmission.Month6 = "已关闭";
}
else if (nowD.Month == 7)
{
getSubmission.Month7 = "已关闭";
}
else if (nowD.Month == 8)
{
getSubmission.Month8 = "已关闭";
}
else if (nowD.Month == 9)
{
getSubmission.Month9 = "已关闭";
}
else if (nowD.Month == 10)
{
getSubmission.Month10 = "已关闭";
}
else if (nowD.Month == 11)
{
getSubmission.Month11 = "已关闭";
}
else if (nowD.Month == 12)
{
getSubmission.Month12 = "已关闭";
}
Funs.DB.SubmitChanges();
}
#endregion
}
else
{
#region 项目新增
DateTime nowD = DateTime.Now;
string getHSEDataCollectId = string.Empty;
var getHSEDataCollect = GetHSEDataCollectByYear(nowD.Year);
if (getHSEDataCollect != null)
{
getHSEDataCollectId = getHSEDataCollect.HSEDataCollectId;
}
else
{
getHSEDataCollectId = CreateHSEDataCollectByYear(nowD.Year);
}
var getSubmission = Funs.DB.DigData_HSEDataCollectSubmission.FirstOrDefault(x => x.HSEDataCollectId == getHSEDataCollectId && x.ProjectId == project.ProjectId);
if (getSubmission == null)
{
Model.DigData_HSEDataCollectSubmission newSubmission = new Model.DigData_HSEDataCollectSubmission()
{
HSEDataCollectSubmissionId = SQLHelper.GetNewID(),
HSEDataCollectId = getHSEDataCollectId,
Year = nowD.Year,
ProjectId = project.ProjectId,
};
db.DigData_HSEDataCollectSubmission.InsertOnSubmit(newSubmission);
db.SubmitChanges();
}
#endregion
}
}
}
}