using System.Linq;
namespace BLL
{
    /// 
    /// 监理管理文档
    /// 
    public static class FinalFileListService
    {
        /// 
        /// 根据主键获取监理管理文档
        /// 
        /// 
        /// 
        public static Model.FinalFileManage_FinalFileList GetFinalFileListById(string fileId)
        {
            return Funs.DB.FinalFileManage_FinalFileList.FirstOrDefault(e => e.FileId == fileId);
        }
        /// 
        /// 添加监理管理文档
        /// 
        /// 
        public static void AddFinalFileList(Model.FinalFileManage_FinalFileList FinalFileList)
        {
            Model.FinalFileManage_FinalFileList newFinalFileList = new Model.FinalFileManage_FinalFileList
            {
                FileId = FinalFileList.FileId,
                ProjectId = FinalFileList.ProjectId,
                FileCode = FinalFileList.FileCode,
                FileName = FinalFileList.FileName,
                KeyWords = FinalFileList.KeyWords,
                FileContent = FinalFileList.FileContent,
                CompileMan = FinalFileList.CompileMan,
                CompileDate = FinalFileList.CompileDate,
                AttachUrl = FinalFileList.AttachUrl,
                States = FinalFileList.States
            };
            Funs.DB.FinalFileManage_FinalFileList.InsertOnSubmit(newFinalFileList);
            Funs.DB.SubmitChanges();
            ////增加一条编码记录
            BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(BLL.Const.FinalFileListMenuId, FinalFileList.ProjectId, null, FinalFileList.FileId, FinalFileList.CompileDate);
        }
        /// 
        /// 修改监理管理文档
        /// 
        /// 
        public static void UpdateFinalFileList(Model.FinalFileManage_FinalFileList FinalFileList)
        {
            Model.FinalFileManage_FinalFileList newFinalFileList = Funs.DB.FinalFileManage_FinalFileList.FirstOrDefault(e => e.FileId == FinalFileList.FileId);
            if (newFinalFileList != null)
            {
                newFinalFileList.FileCode = FinalFileList.FileCode;
                newFinalFileList.FileName = FinalFileList.FileName;
                newFinalFileList.KeyWords = FinalFileList.KeyWords;
                newFinalFileList.FileContent = FinalFileList.FileContent;
                newFinalFileList.CompileMan = FinalFileList.CompileMan;
                newFinalFileList.CompileDate = FinalFileList.CompileDate;
                newFinalFileList.AttachUrl = FinalFileList.AttachUrl;
                newFinalFileList.States = FinalFileList.States;
                Funs.DB.SubmitChanges();
            }
        }
        /// 
        /// 根据主键删除监理管理文档
        /// 
        /// 
        public static void DeleteFinalFileListById(string FileId)
        {
            Model.FinalFileManage_FinalFileList FinalFileList = Funs.DB.FinalFileManage_FinalFileList.FirstOrDefault(e => e.FileId == FileId);
            if (FinalFileList != null)
            {
                ///删除编码表记录
                BLL.CodeRecordsService.DeleteCodeRecordsByDataId(FinalFileList.FileId);
                ////删除附件表
                BLL.CommonService.DeleteAttachFileById(FinalFileList.FileId);
                ////删除流程表
                BLL.CommonService.DeleteFlowOperateByID(FinalFileList.FileId);
                Funs.DB.FinalFileManage_FinalFileList.DeleteOnSubmit(FinalFileList);
                Funs.DB.SubmitChanges();
            }
        }
    }
}