using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
    /// 
    /// 实业安全简报
    /// 
   public static class SafetyBriefingService
    {
        /// 
        /// 根据主键获取实业安全简报
        /// 
        /// 
        /// 
        public static Model.Information_SafetyBriefing GetSafetyBriefingById(string safetyBriefingId)
        {
            return Funs.DB.Information_SafetyBriefing.FirstOrDefault(e => e.SafetyBriefingId == safetyBriefingId);
        }
        /// 
        /// 实业安全简报
        /// 
        /// 单位Id
        /// 年度
        /// 月份
        /// 实业安全简报
        public static Model.Information_SafetyBriefing GetSafetyBriefingByUnitIdAndYearAndMonth(string unitId, int year,int month)
        {
            return Funs.DB.Information_SafetyBriefing.FirstOrDefault(e => e.UnitId == unitId && e.YearId == year && e.Month == month);
        }
        /// 
        /// 添加实业安全简报
        /// 
        /// 
        public static void AddSafetyBriefing(Model.Information_SafetyBriefing safetyBriefing)
        {
            Model.Information_SafetyBriefing newSafetyBriefing = new Model.Information_SafetyBriefing
            {
                SafetyBriefingId = safetyBriefing.SafetyBriefingId,
                UnitId = safetyBriefing.UnitId,
                YearId = safetyBriefing.YearId,
                Month = safetyBriefing.Month,
                CompileMan = safetyBriefing.CompileMan,
                CompileDate = safetyBriefing.CompileDate,
                Auditor = safetyBriefing.Auditor,
                Approver = safetyBriefing.Approver,
                MainWork=safetyBriefing.MainWork,
                HazardRecording=safetyBriefing.HazardRecording,
                SafetyAccident=safetyBriefing.SafetyAccident,
                EPAccident=safetyBriefing.EPAccident,
                OHAccident=safetyBriefing.OHAccident,
                WorkPermitNum=safetyBriefing.WorkPermitNum,
                HiddenDangerDetection=safetyBriefing.HiddenDangerDetection,
                RectificationSituation=safetyBriefing.RectificationSituation,
                CheckProblemsRectification=safetyBriefing.CheckProblemsRectification,
                PendingProject=safetyBriefing.PendingProject,
                ContractorManagement=safetyBriefing.ContractorManagement,
                EnvironmentalEmissions=safetyBriefing.EnvironmentalEmissions,
                NextMonthWorkPlan=safetyBriefing.NextMonthWorkPlan,
                UpState = safetyBriefing.UpState
            };
            Funs.DB.Information_SafetyBriefing.InsertOnSubmit(newSafetyBriefing);
            Funs.DB.SubmitChanges();
        }
        /// 
        /// 修改实业安全简报
        /// 
        /// 
        public static void UpdateSafetyBriefing(Model.Information_SafetyBriefing safetyBriefing)
        {
            Model.Information_SafetyBriefing newSafetyBriefing = Funs.DB.Information_SafetyBriefing.FirstOrDefault(e => e.SafetyBriefingId == safetyBriefing.SafetyBriefingId);
            if (newSafetyBriefing != null)
            {
                newSafetyBriefing.UnitId = safetyBriefing.UnitId;
                newSafetyBriefing.YearId = safetyBriefing.YearId;
                newSafetyBriefing.Month = safetyBriefing.Month;
                newSafetyBriefing.CompileMan = safetyBriefing.CompileMan;
                newSafetyBriefing.CompileDate = safetyBriefing.CompileDate;
                newSafetyBriefing.Auditor = safetyBriefing.Auditor;
                newSafetyBriefing.Approver = safetyBriefing.Approver;
                newSafetyBriefing.MainWork = safetyBriefing.MainWork;
                newSafetyBriefing.HazardRecording = safetyBriefing.HazardRecording;
                newSafetyBriefing.SafetyAccident = safetyBriefing.SafetyAccident;
                newSafetyBriefing.EPAccident = safetyBriefing.EPAccident;
                newSafetyBriefing.OHAccident = safetyBriefing.OHAccident;
                newSafetyBriefing.WorkPermitNum = safetyBriefing.WorkPermitNum;
                newSafetyBriefing.HiddenDangerDetection = safetyBriefing.HiddenDangerDetection;
                newSafetyBriefing.RectificationSituation = safetyBriefing.RectificationSituation;
                newSafetyBriefing.CheckProblemsRectification = safetyBriefing.CheckProblemsRectification;
                newSafetyBriefing.PendingProject = safetyBriefing.PendingProject;
                newSafetyBriefing.ContractorManagement = safetyBriefing.ContractorManagement;
                newSafetyBriefing.EnvironmentalEmissions = safetyBriefing.EnvironmentalEmissions;
                newSafetyBriefing.NextMonthWorkPlan = safetyBriefing.NextMonthWorkPlan;
                newSafetyBriefing.UpState = safetyBriefing.UpState;
                Funs.DB.SubmitChanges();
            }
        }
        /// 
        /// 根据主键删除实业安全简报
        /// 
        /// 
        public static void DeleteSafetyBriefingById(string safetyBriefingId)
        {
            Model.Information_SafetyBriefing safetyBriefing = Funs.DB.Information_SafetyBriefing.FirstOrDefault(e => e.SafetyBriefingId == safetyBriefingId);
            if (safetyBriefing != null)
            {
                Funs.DB.Information_SafetyBriefing.DeleteOnSubmit(safetyBriefing);
                Funs.DB.SubmitChanges();
            }
        }
    }
}