using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
    /// 
    /// 季度工程项目质量信息表
    /// 
    public static class QuarterlyProjectQualityService
    {
        /// 
        /// 根据主键获取季度工程项目质量信息表
        /// 
        /// 
        /// 
        public static Model.Information_QuarterlyProjectQuality GetQuarterlyProjectQualityById(string quarterlyProjectQualityId)
        {
            return Funs.DB.Information_QuarterlyProjectQuality.FirstOrDefault(e => e.QuarterlyProjectQualityId == quarterlyProjectQualityId);
        }
        /// 
        /// 季度工程项目质量信息表
        /// 
        /// 单位Id
        /// 年度
        /// 季度
        /// 季度工程项目质量信息表
        public static Model.Information_QuarterlyProjectQuality GetQuarterlyProjectQualityByUnitIdAndYearAndQuarter(string unitId, int year,int quarter)
        {
            return Funs.DB.Information_QuarterlyProjectQuality.FirstOrDefault(e => e.UnitId == unitId && e.Year == year && e.Quarter == quarter);
        }
        /// 
        /// 添加季度工程项目质量信息表
        /// 
        /// 
        public static void AddQuarterlyProjectQuality(Model.Information_QuarterlyProjectQuality quarterlyProjectQuality)
        {
            Model.Information_QuarterlyProjectQuality newQuarterlyProjectQuality = new Model.Information_QuarterlyProjectQuality
            {
                QuarterlyProjectQualityId = quarterlyProjectQuality.QuarterlyProjectQualityId,
                UnitId = quarterlyProjectQuality.UnitId,
                Year = quarterlyProjectQuality.Year,
                Quarter = quarterlyProjectQuality.Quarter,
                QualityManagePersonNum = quarterlyProjectQuality.QualityManagePersonNum,
                AdvancedTitlePersonNum = quarterlyProjectQuality.AdvancedTitlePersonNum,
                IntermediateTitlePersonNum = quarterlyProjectQuality.IntermediateTitlePersonNum,
                BeImplementedProjectNum = quarterlyProjectQuality.BeImplementedProjectNum,
                StartImplementedProjectNum = quarterlyProjectQuality.StartImplementedProjectNum,
                AccumulativeStartImplemented = quarterlyProjectQuality.AccumulativeStartImplemented,
                CompleteProjectNum = quarterlyProjectQuality.CompleteProjectNum,
                YearCompleteProjectNum = quarterlyProjectQuality.YearCompleteProjectNum,
                QuarterTotal = quarterlyProjectQuality.QuarterTotal,
                QuarterFirstPassNum = quarterlyProjectQuality.QuarterFirstPassNum,
                QuarterFirstPassRate = quarterlyProjectQuality.QuarterFirstPassRate,
                YearTotal = quarterlyProjectQuality.YearTotal,
                YearFirstPassNum = quarterlyProjectQuality.YearFirstPassNum,
                YearFirstPassRate = quarterlyProjectQuality.YearFirstPassRate,
                QuaterCheckSuperviseNum = quarterlyProjectQuality.QuaterCheckSuperviseNum,
                QuaterCorrectiveNoticeNum = quarterlyProjectQuality.QuaterCorrectiveNoticeNum,
                QuaterQualityProblemNum = quarterlyProjectQuality.QuaterQualityProblemNum,
                QuaterClosedQualityProblemNum = quarterlyProjectQuality.QuaterClosedQualityProblemNum,
                YearCheckSuperviseNum = quarterlyProjectQuality.YearCheckSuperviseNum,
                YearCorrectiveNoticeNum = quarterlyProjectQuality.YearCorrectiveNoticeNum,
                YearQualityProblemNum = quarterlyProjectQuality.YearQualityProblemNum,
                YearClosedQualityProblemNum = quarterlyProjectQuality.YearClosedQualityProblemNum,
                QuaterQualityAccidentNum = quarterlyProjectQuality.QuaterQualityAccidentNum,
                QuaterDirectEconomicLoss = quarterlyProjectQuality.QuaterDirectEconomicLoss,
                YearQualityAccidentNum = quarterlyProjectQuality.YearQualityAccidentNum,
                YearDirectEconomicLoss = quarterlyProjectQuality.YearDirectEconomicLoss,
                ResponsiblePerson = quarterlyProjectQuality.ResponsiblePerson,
                CompileMan = quarterlyProjectQuality.CompileMan,
                CompileDate = quarterlyProjectQuality.CompileDate,
                Tel = quarterlyProjectQuality.Tel,
                UpState = quarterlyProjectQuality.UpState
            };
            Funs.DB.Information_QuarterlyProjectQuality.InsertOnSubmit(newQuarterlyProjectQuality);
            Funs.DB.SubmitChanges();
        }
        /// 
        /// 修改季度工程项目质量信息表
        /// 
        /// 
        public static void UpdateQuarterlyProjectQuality(Model.Information_QuarterlyProjectQuality quarterlyProjectQuality)
        {
            Model.Information_QuarterlyProjectQuality newQuarterlyProjectQuality = Funs.DB.Information_QuarterlyProjectQuality.FirstOrDefault(e => e.QuarterlyProjectQualityId == quarterlyProjectQuality.QuarterlyProjectQualityId);
            if (newQuarterlyProjectQuality != null)
            {
                newQuarterlyProjectQuality.UnitId = quarterlyProjectQuality.UnitId;
                newQuarterlyProjectQuality.Year = quarterlyProjectQuality.Year;
                newQuarterlyProjectQuality.Quarter = quarterlyProjectQuality.Quarter;
                newQuarterlyProjectQuality.QualityManagePersonNum = quarterlyProjectQuality.QualityManagePersonNum;
                newQuarterlyProjectQuality.AdvancedTitlePersonNum = quarterlyProjectQuality.AdvancedTitlePersonNum;
                newQuarterlyProjectQuality.IntermediateTitlePersonNum = quarterlyProjectQuality.IntermediateTitlePersonNum;
                newQuarterlyProjectQuality.BeImplementedProjectNum = quarterlyProjectQuality.BeImplementedProjectNum;
                newQuarterlyProjectQuality.StartImplementedProjectNum = quarterlyProjectQuality.StartImplementedProjectNum;
                newQuarterlyProjectQuality.AccumulativeStartImplemented = quarterlyProjectQuality.AccumulativeStartImplemented;
                newQuarterlyProjectQuality.CompleteProjectNum = quarterlyProjectQuality.CompleteProjectNum;
                newQuarterlyProjectQuality.YearCompleteProjectNum = quarterlyProjectQuality.YearCompleteProjectNum;
                newQuarterlyProjectQuality.QuarterTotal = quarterlyProjectQuality.QuarterTotal;
                newQuarterlyProjectQuality.QuarterFirstPassNum = quarterlyProjectQuality.QuarterFirstPassNum;
                newQuarterlyProjectQuality.QuarterFirstPassRate = quarterlyProjectQuality.QuarterFirstPassRate;
                newQuarterlyProjectQuality.YearTotal = quarterlyProjectQuality.YearTotal;
                newQuarterlyProjectQuality.YearFirstPassNum = quarterlyProjectQuality.YearFirstPassNum;
                newQuarterlyProjectQuality.YearFirstPassRate = quarterlyProjectQuality.YearFirstPassRate;
                newQuarterlyProjectQuality.QuaterCheckSuperviseNum = quarterlyProjectQuality.QuaterCheckSuperviseNum;
                newQuarterlyProjectQuality.QuaterCorrectiveNoticeNum = quarterlyProjectQuality.QuaterCorrectiveNoticeNum;
                newQuarterlyProjectQuality.QuaterQualityProblemNum = quarterlyProjectQuality.QuaterQualityProblemNum;
                newQuarterlyProjectQuality.QuaterClosedQualityProblemNum = quarterlyProjectQuality.QuaterClosedQualityProblemNum;
                newQuarterlyProjectQuality.YearCheckSuperviseNum = quarterlyProjectQuality.YearCheckSuperviseNum;
                newQuarterlyProjectQuality.YearCorrectiveNoticeNum = quarterlyProjectQuality.YearCorrectiveNoticeNum;
                newQuarterlyProjectQuality.YearQualityProblemNum = quarterlyProjectQuality.YearQualityProblemNum;
                newQuarterlyProjectQuality.YearClosedQualityProblemNum = quarterlyProjectQuality.YearClosedQualityProblemNum;
                newQuarterlyProjectQuality.QuaterQualityAccidentNum = quarterlyProjectQuality.QuaterQualityAccidentNum;
                newQuarterlyProjectQuality.QuaterDirectEconomicLoss = quarterlyProjectQuality.QuaterDirectEconomicLoss;
                newQuarterlyProjectQuality.YearQualityAccidentNum = quarterlyProjectQuality.YearQualityAccidentNum;
                newQuarterlyProjectQuality.YearDirectEconomicLoss = quarterlyProjectQuality.YearDirectEconomicLoss;
                newQuarterlyProjectQuality.ResponsiblePerson = quarterlyProjectQuality.ResponsiblePerson;
                newQuarterlyProjectQuality.CompileMan = quarterlyProjectQuality.CompileMan;
                newQuarterlyProjectQuality.CompileDate = quarterlyProjectQuality.CompileDate;
                newQuarterlyProjectQuality.Tel = quarterlyProjectQuality.Tel;
                newQuarterlyProjectQuality.UpState = quarterlyProjectQuality.UpState;
                Funs.DB.SubmitChanges();
            }
        }
        /// 
        /// 根据主键删除季度工程项目质量信息表
        /// 
        /// 
        public static void DeleteQuarterlyProjectQualityById(string quarterlyProjectQualityId)
        {
            Model.Information_QuarterlyProjectQuality quarterlyProjectQuality = Funs.DB.Information_QuarterlyProjectQuality.FirstOrDefault(e => e.QuarterlyProjectQualityId == quarterlyProjectQualityId);
            if (quarterlyProjectQuality != null)
            {
                Funs.DB.Information_QuarterlyProjectQuality.DeleteOnSubmit(quarterlyProjectQuality);
                Funs.DB.SubmitChanges();
            }
        }
    }
}