using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
public class AccidentCaseService
{
public static Model.SGGLDB db = Funs.DB;
///
/// 根据主键获取事故伤害及预防
///
///
///
public static Model.EduTrain_AccidentCase GetAccidentCaseById(string accidentCaseId)
{
return Funs.DB.EduTrain_AccidentCase.FirstOrDefault(e => e.AccidentCaseId == accidentCaseId);
}
///
/// 增加事故伤害及预防
///
///
public static void AddAccidentCase(Model.EduTrain_AccidentCase accidentCase)
{
Model.SGGLDB db = Funs.DB;
Model.EduTrain_AccidentCase newAccidentCase = new Model.EduTrain_AccidentCase
{
AccidentCaseId = accidentCase.AccidentCaseId,
AccidentCaseCode = accidentCase.AccidentCaseCode,
AccidentCaseName = accidentCase.AccidentCaseName,
SupAccidentCaseId = accidentCase.SupAccidentCaseId,
IsEndLever = accidentCase.IsEndLever
};
db.EduTrain_AccidentCase.InsertOnSubmit(newAccidentCase);
db.SubmitChanges();
}
///
/// 修改事故伤害及预防
///
///
public static void UpdateAccidentCase(Model.EduTrain_AccidentCase accidentCase)
{
Model.SGGLDB db = Funs.DB;
Model.EduTrain_AccidentCase newAccidentCase = db.EduTrain_AccidentCase.FirstOrDefault(e => e.AccidentCaseId == accidentCase.AccidentCaseId);
if (newAccidentCase != null)
{
newAccidentCase.AccidentCaseCode = accidentCase.AccidentCaseCode;
newAccidentCase.AccidentCaseName = accidentCase.AccidentCaseName;
newAccidentCase.SupAccidentCaseId = accidentCase.SupAccidentCaseId;
newAccidentCase.IsEndLever = accidentCase.IsEndLever;
db.SubmitChanges();
}
}
///
/// 根据主键删除事故伤害及预防
///
///
public static void DeleteAccidentCaseByAccidentCaseId(string accidentCaseId)
{
Model.SGGLDB db = Funs.DB;
Model.EduTrain_AccidentCase accidentCase = db.EduTrain_AccidentCase.FirstOrDefault(e => e.AccidentCaseId == accidentCaseId);
if (accidentCase != null)
{
BLL.AccidentCaseItemService.DeleteAccidentCaseItemsByAccidentCaseId(accidentCase.AccidentCaseId);
db.EduTrain_AccidentCase.DeleteOnSubmit(accidentCase);
db.SubmitChanges();
}
}
///
/// 是否可删除资源节点
///
///
/// true-可以,false-不可以
public static bool IsDeleteAccidentCase(string accidentCaseId)
{
bool isDelete = true;
var accidentCase = BLL.AccidentCaseService.GetAccidentCaseById(accidentCaseId);
if (accidentCase != null)
{
if (accidentCase.IsBuild == true)
{
isDelete = false;
}
if (accidentCase.IsEndLever == true)
{
var detailCout = Funs.DB.EduTrain_AccidentCaseItem.FirstOrDefault(x => x.AccidentCaseId == accidentCaseId);
if (detailCout != null)
{
isDelete = false;
}
}
else
{
var supItemSetCount = BLL.AccidentCaseService.GetAccidentCaseBySupItem(accidentCaseId);
if (supItemSetCount.Count() > 0)
{
isDelete = false;
}
}
}
return isDelete;
}
///
/// 根据上级Id查询所有事故案例
///
/// 上级Id
/// 事故案例的集合
public static List GetAccidentCaseBySupItem(string supItem)
{
return (from x in Funs.DB.EduTrain_AccidentCase
where x.SupAccidentCaseId == supItem
orderby x.AccidentCaseCode
select x).ToList();
}
}
}