194 lines
7.1 KiB
C#
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;
|
|
}
|
|
}
|
|
}
|
|
}
|