using System; using System.Collections; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Linq; using System.Data.Linq; using System.Web.Security; using System.Web.UI.WebControls; using Model; using BLL; using System.Collections.Generic; namespace BLL { public class CnProfessionService { /// /// 根据专业Id获取专业信息 /// /// 专业Id /// public static Model.WBS_CnProfession GetCnProfessionByCnProfessionId(string cnProfessionId) { return Funs.DB.WBS_CnProfession.FirstOrDefault(e => e.CnProfessionId == cnProfessionId); } /// /// 根据装置Id和专业编号获取专业Id /// /// 专业Id /// public static List GetCnProfessionIdsByInstallationIdAndOldId(string installationId, string oldId) { List cnProfessionIds = new List(); Model.SGGLDB db = Funs.DB; var ins = db.Project_Installation.FirstOrDefault(x => x.InstallationId == installationId); var childInss = from x in db.Project_Installation where x.SuperInstallationId == installationId select x; if (childInss.Count() == 0) { var cn = db.WBS_CnProfession.FirstOrDefault(x => x.InstallationId == ins.InstallationId && x.OldId.ToString() == oldId); if (cn != null) { cnProfessionIds.Add(cn.CnProfessionId); } } else { var childIns = from x in db.Project_Installation where x.SuperInstallationId == installationId select x; foreach (var childIn in childIns) { cnProfessionIds.AddRange(GetCnProfessionIdsByInstallationIdAndOldId(childIn.InstallationId,oldId)); } } return cnProfessionIds; } /// /// 增加专业 /// /// 专业 public static void AddCnProfession(Model.WBS_CnProfession cnProfession) { Model.SGGLDB db = Funs.DB; Model.WBS_CnProfession newCnP = new Model.WBS_CnProfession(); newCnP.CnProfessionId = SQLHelper.GetNewID(typeof(Model.WBS_CnProfession)); newCnP.CnProfessionName = cnProfession.CnProfessionName; newCnP.CnProfessionCode = cnProfession.CnProfessionCode; newCnP.InstallationId = cnProfession.InstallationId; newCnP.ProjectId = cnProfession.ProjectId; newCnP.StartDate = cnProfession.StartDate; newCnP.EndDate = cnProfession.EndDate; newCnP.Weights = cnProfession.Weights; newCnP.OldId = cnProfession.OldId; newCnP.UnitId = cnProfession.UnitId; db.WBS_CnProfession.InsertOnSubmit(newCnP); db.SubmitChanges(); } /// /// 修改专业 /// /// 专业 public static void UpdateCnProfession(Model.WBS_CnProfession cnProfession) { Model.SGGLDB db = Funs.DB; Model.WBS_CnProfession newCnP = db.WBS_CnProfession.First(e => e.CnProfessionId == cnProfession.CnProfessionId); newCnP.CnProfessionName = cnProfession.CnProfessionName; newCnP.CnProfessionCode = cnProfession.CnProfessionCode; newCnP.StartDate = cnProfession.StartDate; newCnP.EndDate = cnProfession.EndDate; newCnP.Weights = cnProfession.Weights; newCnP.WeightsMoney = cnProfession.WeightsMoney; newCnP.IsWeightsApprove = cnProfession.IsWeightsApprove; newCnP.UnitId = cnProfession.UnitId; newCnP.IsSelected = cnProfession.IsSelected; newCnP.IsApprove = cnProfession.IsApprove; db.SubmitChanges(); } /// /// 根据Id删除专业信息 /// /// public static void DeleteCnProfession(string cnProfessionId) { Model.SGGLDB db = Funs.DB; Model.WBS_CnProfession CnP = db.WBS_CnProfession.First(e => e.CnProfessionId == cnProfessionId); db.WBS_CnProfession.DeleteOnSubmit(CnP); db.SubmitChanges(); } /// /// 获取装置下所有专业 /// /// public static List GetCnProfessionByInstallation(string ins) { var list = (from x in Funs.DB.WBS_CnProfession where x.InstallationId == ins orderby x.CnProfessionId select x).ToList(); return list; } /// /// 获取专业下拉选项 /// /// public static List GetCnProfessionDropDownList() { var list = (from x in Funs.DB.WBS_CnProfessionInit orderby x.CnProfessionId select x).ToList(); return list; } /// /// 获取专业下拉选项(不含总图) /// /// public static List GetCnProfessionDropDownList2() { var list = (from x in Funs.DB.WBS_CnProfessionInit where x.CnProfessionId != 19 orderby x.CnProfessionId select x).ToList(); return list; } } }