using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace BLL
{
    /// 
    /// 压力管道管理
    /// 
    public static class PressurePipeService
    {
        public static Model.SGGLDB db = Funs.DB;
        /// 
        /// 记录数
        /// 
        private static int count
        {
            get;
            set;
        }
        /// 
        /// 获取分页列表
        /// 
        /// 
        /// 
        /// 
        /// 
        /// 
        /// 
        /// 
        /// 
        public static IEnumerable GetListData(string projectId, string unitId, int startRowIndex, int maximumRows)
        {
            IQueryable q = from x in db.Comprehensive_PressurePipe
                                                             where x.Projctid == projectId
                                                             select x;
            if (unitId != "0" && !string.IsNullOrEmpty(unitId))
            {
                q = q.Where(e => e.UnitId == unitId);
            }
            count = q.Count();
            if (count == 0)
            {
                return new object[] { };
            }
            return from x in q.Skip(startRowIndex).Take(maximumRows)
                   select new
                   {
                       x.PressurePipeId,
                       x.Projctid,
                       x.UnitId,
                       x.EstimateNumber,
                       x.ActualNumber,
                       x.PackageNumber,
                       x.CompletePackageNumber,
                       x.PressurePipeNumber,
                       x.IssuedReportNumber,
                   };
        }
        /// 
        /// 
        /// 
        public static int GetListCount(string projectId, string unitId)
        {
            return count;
        }
        /// 
        /// 根据主键获取压力管道管理
        /// 
        /// 
        /// 
        public static Model.Comprehensive_PressurePipe GetPressurePipeById(string PressurePipeId)
        {
            return Funs.DB.Comprehensive_PressurePipe.FirstOrDefault(e => e.PressurePipeId == PressurePipeId);
        }
        /// 
        /// 添加压力管道管理
        /// 
        /// 
        public static void AddPressurePipe(Model.Comprehensive_PressurePipe PressurePipe)
        {
            Model.SGGLDB db = Funs.DB;
            Model.Comprehensive_PressurePipe newPressurePipe = new Model.Comprehensive_PressurePipe();
            newPressurePipe.PressurePipeId = PressurePipe.PressurePipeId;
            newPressurePipe.Projctid = PressurePipe.Projctid;
            newPressurePipe.UnitId = PressurePipe.UnitId;
            newPressurePipe.EstimateNumber = PressurePipe.EstimateNumber;
            newPressurePipe.ActualNumber = PressurePipe.ActualNumber;
            newPressurePipe.PackageNumber = PressurePipe.PackageNumber;
            newPressurePipe.CompletePackageNumber = PressurePipe.CompletePackageNumber;
            newPressurePipe.PressurePipeNumber = PressurePipe.PressurePipeNumber;
            newPressurePipe.IssuedReportNumber = PressurePipe.IssuedReportNumber;
            newPressurePipe.CompileMan = PressurePipe.CompileMan;
            db.Comprehensive_PressurePipe.InsertOnSubmit(newPressurePipe);
            db.SubmitChanges();
        }
        /// 
        /// 修改压力管道管理
        /// 
        /// 
        public static void UpdatePressurePipe(Model.Comprehensive_PressurePipe PressurePipe)
        {
            Model.SGGLDB db = Funs.DB;
            Model.Comprehensive_PressurePipe newPressurePipe = db.Comprehensive_PressurePipe.FirstOrDefault(e => e.PressurePipeId == PressurePipe.PressurePipeId);
            if (newPressurePipe != null)
            {
                newPressurePipe.Projctid = PressurePipe.Projctid;
                newPressurePipe.UnitId = PressurePipe.UnitId;
                newPressurePipe.EstimateNumber = PressurePipe.EstimateNumber;
                newPressurePipe.ActualNumber = PressurePipe.ActualNumber;
                newPressurePipe.PackageNumber = PressurePipe.PackageNumber;
                newPressurePipe.CompletePackageNumber = PressurePipe.CompletePackageNumber;
                newPressurePipe.PressurePipeNumber = PressurePipe.PressurePipeNumber;
                newPressurePipe.IssuedReportNumber = PressurePipe.IssuedReportNumber;
                db.SubmitChanges();
            }
        }
        /// 
        /// 根据主键删除压力管道管理
        /// 
        /// 
        public static void DeletePressurePipe(string specialPressurePipeId)
        {
            Model.SGGLDB db = Funs.DB;
            Model.Comprehensive_PressurePipe PressurePipe = db.Comprehensive_PressurePipe.FirstOrDefault(e => e.PressurePipeId == specialPressurePipeId);
            if (PressurePipe != null)
            {
                db.Comprehensive_PressurePipe.DeleteOnSubmit(PressurePipe);
                db.SubmitChanges();
            }
        }
    }
}