using System.Linq;
namespace BLL
{
    /// 
    /// 开车报告 
    /// 
    public static class DriverReportService
    {
        /// 
        /// 根据主键获取开车报告信息
        /// 
        /// 
        /// 
        public static Model.Driver_DriverReport GetDriverReportById(string driverReportId)
        {
            return Funs.DB.Driver_DriverReport.FirstOrDefault(e => e.DriverReportId == driverReportId);
        }
        /// 
        /// 添加开车报告信息
        /// 
        /// 
        public static void AddDriverReport(Model.Driver_DriverReport driverReport)
        {
            Model.Driver_DriverReport newDriverReport = new Model.Driver_DriverReport();
            newDriverReport.DriverReportId = driverReport.DriverReportId;
            newDriverReport.ProjectId = driverReport.ProjectId;
            newDriverReport.DriverReportCode = driverReport.DriverReportCode;
            newDriverReport.UnitWorkId = driverReport.UnitWorkId;
            newDriverReport.DriverReporName = driverReport.DriverReporName;
            newDriverReport.CompilePerson = driverReport.CompilePerson;
            newDriverReport.SubmitDate = driverReport.SubmitDate;
            newDriverReport.ReportType = driverReport.ReportType;
            newDriverReport.Number = driverReport.Number;
            newDriverReport.AttachUrl = driverReport.AttachUrl;
            newDriverReport.Remark = driverReport.Remark;
            Funs.DB.Driver_DriverReport.InsertOnSubmit(newDriverReport);
            Funs.DB.SubmitChanges();
        }
        /// 
        /// 修改开车报告信息
        /// 
        /// 
        public static void UpdateDriverReport(Model.Driver_DriverReport driverReport)
        {
            Model.Driver_DriverReport newDriverReport = Funs.DB.Driver_DriverReport.FirstOrDefault(e => e.DriverReportId == driverReport.DriverReportId);
            if (newDriverReport != null)
            {
                //newDriverReport.ProjectId = driverReport.ProjectId;
                newDriverReport.DriverReportCode = driverReport.DriverReportCode;
                newDriverReport.UnitWorkId = driverReport.UnitWorkId;
                newDriverReport.DriverReporName = driverReport.DriverReporName;
                newDriverReport.CompilePerson = driverReport.CompilePerson;
                newDriverReport.SubmitDate = driverReport.SubmitDate;
                //newDriverReport.ReportType = driverReport.ReportType;
                newDriverReport.Number = driverReport.Number;
                newDriverReport.AttachUrl = driverReport.AttachUrl;
                newDriverReport.Remark = driverReport.Remark;
                Funs.DB.SubmitChanges();
            }
        }
        /// 
        /// 根据主键删除开车报告信息
        /// 
        /// 
        public static void DeleteDriverReport(string driverReportId)
        {
            Model.Driver_DriverReport driverReport = Funs.DB.Driver_DriverReport.FirstOrDefault(e => e.DriverReportId == driverReportId);
            if (driverReport != null)
            {
                if (!string.IsNullOrEmpty(driverReport.AttachUrl))
                {
                    BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, driverReport.AttachUrl);//删除附件
                }
                Funs.DB.Driver_DriverReport.DeleteOnSubmit(driverReport);
                Funs.DB.SubmitChanges();
            }
        }
    }
}