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.CNPCDB 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.CNPCDB 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.CNPCDB 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.CNPCDB 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.CNPCDB 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;
 | 
						|
            }
 | 
						|
        }
 | 
						|
    }
 | 
						|
}
 |