CNCEC_SUBQHSE_WUHUAN/SGGL/BLL/CQMS/WBS/DivisionProjectService.cs

194 lines
7.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.Web.UI.WebControls;
namespace BLL
{
public class DivisionProjectService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 记录数
/// </summary>
public static int count
{
get;
set;
}
/// <summary>
/// 定义变量
/// </summary>
private static IQueryable<Model.WBS_DivisionProject> qq = from x in db.WBS_DivisionProject orderby x.SortIndex select x;
/// <summary>
/// 获取项目列表
/// </summary>
/// <param name="searchItem"></param>
/// <param name="searchValue"></param>
/// <param name="startRowIndex"></param>
/// <param name="maximumRows"></param>
/// <returns></returns>
public static IEnumerable getListData(int startRowIndex, int maximumRows)
{
IQueryable<Model.WBS_DivisionProject> q = qq;
count = q.Count();
if (count == 0)
{
return new object[] { "" };
}
return from x in q.Skip(startRowIndex).Take(maximumRows)
select new
{
x.DivisionProjectId,
x.DivisionCode,
};
}
/// <summary>
/// 获取列表数
/// </summary>
/// <param name="searchItem"></param>
/// <param name="searchValue"></param>
/// <returns></returns>
public static int getListCount()
{
return count;
}
/// <summary>
/// 添加分部/子分部
/// </summary>
/// <param name="Installation"></param>
public static void AddDivisionProject(Model.WBS_DivisionProject divisionProject)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject();
newDivisionProject.DivisionProjectId = divisionProject.DivisionProjectId;
newDivisionProject.ProjectId = divisionProject.ProjectId;
newDivisionProject.DivisionCode = divisionProject.DivisionCode;
newDivisionProject.DivisionName = divisionProject.DivisionName;
newDivisionProject.SortIndex = divisionProject.SortIndex;
newDivisionProject.SuperDivisionId = divisionProject.SuperDivisionId;
newDivisionProject.CNProfessionalId = divisionProject.CNProfessionalId;
newDivisionProject.UnitWorkId = divisionProject.UnitWorkId;
newDivisionProject.OldDivisionId = divisionProject.OldDivisionId;
newDivisionProject.SubItemType = divisionProject.SubItemType;
db.WBS_DivisionProject.InsertOnSubmit(newDivisionProject);
db.SubmitChanges();
}
/// <summary>
/// 修改分部/子分部
/// </summary>
/// <param name="divisionProject"></param>
public static void UpdateDivisionProject(Model.WBS_DivisionProject divisionProject)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_DivisionProject newDivisionProject = db.WBS_DivisionProject.First(e => e.DivisionProjectId == divisionProject.DivisionProjectId);
newDivisionProject.DivisionCode = divisionProject.DivisionCode;
newDivisionProject.DivisionName = divisionProject.DivisionName;
newDivisionProject.SortIndex = divisionProject.SortIndex;
newDivisionProject.SuperDivisionId = divisionProject.SuperDivisionId;
newDivisionProject.CNProfessionalId = divisionProject.CNProfessionalId;
newDivisionProject.IsSelected = divisionProject.IsSelected;
newDivisionProject.SubItemType = divisionProject.SubItemType;
db.SubmitChanges();
}
/// <summary>
/// 删除一个分部/子分部信息
/// </summary>
/// <param name="divisionCode"></param>
public static void DeleteDivisionProject(string divisionProjectId)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_DivisionProject divisionProject = db.WBS_DivisionProject.First(e => e.DivisionProjectId == divisionProjectId);
db.WBS_DivisionProject.DeleteOnSubmit(divisionProject);
db.SubmitChanges();
}
/// <summary>
/// 删除一个装置下的分部/子分部信息
/// </summary>
/// <param name="divisionCode"></param>
public static void DeleteDivisionProjectByUnitWorkId(string unitWorkId)
{
Model.SGGLDB db = Funs.DB;
var q = from x in db.WBS_DivisionProject where x.UnitWorkId == unitWorkId select x;
if (q.Count() > 0)
{
db.WBS_DivisionProject.DeleteAllOnSubmit(q);
db.SubmitChanges();
}
}
/// <summary>
/// 获取施工分部/子分部项
/// </summary>
/// <returns></returns>
public static ListItem[] GetDivisionNameList()
{
var q = (from x in Funs.DB.WBS_DivisionProject orderby x.SortIndex select x).ToList();
ListItem[] list = new ListItem[q.Count()];
for (int i = 0; i < q.Count(); i++)
{
list[i] = new ListItem(q[i].DivisionName ?? "", q[i].DivisionProjectId.ToString());
}
return list;
}
/// <summary>
/// 根据主键返回一个分部/子分部信息
/// </summary>
/// <param name="cnProfessionalCode">分部/子分部编号</param>
/// <returns></returns>
public static Model.WBS_DivisionProject GetDivisionProjectById(string divisionProjectId)
{
return Funs.DB.WBS_DivisionProject.FirstOrDefault(x => x.DivisionProjectId == divisionProjectId);
}
/// <summary>
/// 判断分部/子分部编号是否存在
/// </summary>
/// <param name="divisionCode"></param>
/// <returns></returns>
public static bool IsExistDivisionCode(string divisionCode, string divisionProjectId)
{
Model.WBS_DivisionProject m = Funs.DB.WBS_DivisionProject.FirstOrDefault(e => e.DivisionCode == divisionCode && e.DivisionProjectId != divisionProjectId);
if (m != null)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 判断分部/子分部名称是否存在
/// </summary>
/// <param name="professionalName"></param>
/// <returns></returns>
public static bool IsExistProfessionalName(string divisionName, string divisionProjectId)
{
Model.WBS_DivisionProject m = Funs.DB.WBS_DivisionProject.FirstOrDefault(e => e.DivisionName == divisionName && e.DivisionProjectId != divisionProjectId);
if (m != null)
{
return true;
}
else
{
return false;
}
}
}
}