145 lines
5.6 KiB
C#
145 lines
5.6 KiB
C#
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
|
|
{
|
|
/// <summary>
|
|
/// 根据专业Id获取专业信息
|
|
/// </summary>
|
|
/// <param name="unitProjectId">专业Id</param>
|
|
/// <returns></returns>
|
|
public static Model.WBS_CnProfession GetCnProfessionByCnProfessionId(string cnProfessionId)
|
|
{
|
|
return Funs.DB.WBS_CnProfession.FirstOrDefault(e => e.CnProfessionId == cnProfessionId);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据装置Id和专业编号获取专业Id
|
|
/// </summary>
|
|
/// <param name="unitProjectId">专业Id</param>
|
|
/// <returns></returns>
|
|
public static List<string> GetCnProfessionIdsByInstallationIdAndOldId(string installationId, string oldId)
|
|
{
|
|
List<string> cnProfessionIds = new List<string>();
|
|
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;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 增加专业
|
|
/// </summary>
|
|
/// <param name="user">专业</param>
|
|
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();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 修改专业
|
|
/// </summary>
|
|
/// <param name="user">专业</param>
|
|
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();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据Id删除专业信息
|
|
/// </summary>
|
|
/// <param name="userId"></param>
|
|
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();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取装置下所有专业
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static List<Model.WBS_CnProfession> GetCnProfessionByInstallation(string ins)
|
|
{
|
|
var list = (from x in Funs.DB.WBS_CnProfession where x.InstallationId == ins orderby x.CnProfessionId select x).ToList();
|
|
return list;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取专业下拉选项
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static List<Model.WBS_CnProfessionInit> GetCnProfessionDropDownList()
|
|
{
|
|
var list = (from x in Funs.DB.WBS_CnProfessionInit orderby x.CnProfessionId select x).ToList();
|
|
return list;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取专业下拉选项(不含总图)
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public static List<Model.WBS_CnProfessionInit> GetCnProfessionDropDownList2()
|
|
{
|
|
var list = (from x in Funs.DB.WBS_CnProfessionInit where x.CnProfessionId != 19 orderby x.CnProfessionId select x).ToList();
|
|
return list;
|
|
}
|
|
}
|
|
}
|