using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; namespace BLL { /// /// 设计交底管理 /// public static class DesignDetailsService { public static Model.SGGLDB db = Funs.DB; /// /// 记录数 /// private static int count { get; set; } /// /// 获取分页列表 /// /// /// /// /// /// public static IEnumerable GetListData(string projectId, string cNProfessionalId, int startRowIndex, int maximumRows) { IQueryable q = from x in db.Comprehensive_DesignDetails where x.ProjectId == projectId orderby x.DetailsDate descending select x; if (cNProfessionalId != "0") { q = q.Where(e => e.CNProfessionalId == cNProfessionalId); } count = q.Count(); if (count == 0) { return new object[] { "" }; } return from x in q.Skip(startRowIndex).Take(maximumRows) select new { x.DesignDetailsId, x.ProjectId, ProfessionalName = (from y in db.Base_CNProfessional where y.CNProfessionalId == x.CNProfessionalId select y.ProfessionalName).FirstOrDefault(), x.DesignDetailsCode, x.DetailsMan, x.DetailsDate, UnitWorkName = x.UnitWorkId != null ? BLL.UnitWorkService.GetUnitWorkName(x.UnitWorkId) : null, UnitName = x.UnitName != null ? BLL.UnitService.getUnitNamesUnitIds(x.UnitName) : null, x.AttachUrl }; } public static IEnumerable GetListDataForDataType(string UnitWorkId, string projectId, string cNProfessionalId, int startRowIndex, int maximumRows) { IQueryable q = from x in db.Comprehensive_DesignDetails where x.ProjectId == projectId orderby x.DetailsDate descending select x; if (cNProfessionalId != "0") { q = q.Where(e => e.CNProfessionalId == cNProfessionalId); } if (!string.IsNullOrEmpty(UnitWorkId)) { q = q.Where(e => e.UnitWorkId .Contains(UnitWorkId)); } count = q.Count(); if (count == 0) { return new object[] { "" }; } return from x in q.Skip(startRowIndex).Take(maximumRows) select new { x.DesignDetailsId, x.ProjectId, ProfessionalName = (from y in db.Base_CNProfessional where y.CNProfessionalId == x.CNProfessionalId select y.ProfessionalName).FirstOrDefault(), x.DesignDetailsCode, x.DetailsMan, x.DetailsDate, UnitWorkName = x.UnitWorkId != null ? BLL.UnitWorkService.GetUnitWorkName(x.UnitWorkId) : null, UnitName = x.UnitName != null ? BLL.UnitService.getUnitNamesUnitIds(x.UnitName) : null, x.AttachUrl }; } /// /// 获取分页列表数 /// /// /// /// public static int GetListCount(string projectId, string cNProfessionalId) { return count; } public static int GetListCountForDataType(string UnitWorkId, string projectId, string cNProfessionalId) { return count; } /// /// 根据主键获取设计交底管理 /// /// /// public static Model.Comprehensive_DesignDetails GetDesignDetailsById(string designDetailsId) { return Funs.DB.Comprehensive_DesignDetails.FirstOrDefault(e => e.DesignDetailsId == designDetailsId); } /// /// 添加设计交底管理 /// /// public static void AddDesignDetails(Model.Comprehensive_DesignDetails designDetails) { Model.SGGLDB db = Funs.DB; Model.Comprehensive_DesignDetails newDesignDetails = new Model.Comprehensive_DesignDetails(); newDesignDetails.DesignDetailsId = designDetails.DesignDetailsId; newDesignDetails.ProjectId = designDetails.ProjectId; newDesignDetails.CNProfessionalId = designDetails.CNProfessionalId; newDesignDetails.DesignDetailsCode = designDetails.DesignDetailsCode; newDesignDetails.DetailsMan = designDetails.DetailsMan; newDesignDetails.DetailsDate = designDetails.DetailsDate; newDesignDetails.UnitWorkId = designDetails.UnitWorkId; newDesignDetails.UnitName = designDetails.UnitName; newDesignDetails.AttachUrl = designDetails.AttachUrl; newDesignDetails.CompileMan = designDetails.CompileMan; newDesignDetails.CompileDate = designDetails.CompileDate; newDesignDetails.Status = designDetails.Status; newDesignDetails.AuditMan = designDetails.AuditMan; db.Comprehensive_DesignDetails.InsertOnSubmit(newDesignDetails); db.SubmitChanges(); } /// /// 修改设计交底管理 /// /// public static void UpdateDesignDetails(Model.Comprehensive_DesignDetails designDetails) { Model.SGGLDB db = Funs.DB; Model.Comprehensive_DesignDetails newDesignDetails = db.Comprehensive_DesignDetails.FirstOrDefault(e => e.DesignDetailsId == designDetails.DesignDetailsId); if (newDesignDetails != null) { newDesignDetails.ProjectId = designDetails.ProjectId; newDesignDetails.CNProfessionalId = designDetails.CNProfessionalId; newDesignDetails.DesignDetailsCode = designDetails.DesignDetailsCode; newDesignDetails.DetailsMan = designDetails.DetailsMan; newDesignDetails.DetailsDate = designDetails.DetailsDate; newDesignDetails.UnitWorkId = designDetails.UnitWorkId; newDesignDetails.UnitName = designDetails.UnitName; newDesignDetails.AttachUrl = designDetails.AttachUrl; newDesignDetails.Status = designDetails.Status; newDesignDetails.AuditMan = designDetails.AuditMan; db.SubmitChanges(); } } /// /// 根据主键删除设计交底管理 /// /// public static void DeleteDesignDetails(string designDetailsId) { Model.SGGLDB db = Funs.DB; Model.Comprehensive_DesignDetails designDetails = db.Comprehensive_DesignDetails.FirstOrDefault(e => e.DesignDetailsId == designDetailsId); if (designDetails != null) { if (!string.IsNullOrEmpty(designDetails.AttachUrl)) { BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, designDetails.AttachUrl);//删除附件 } db.Comprehensive_DesignDetails.DeleteOnSubmit(designDetails); db.SubmitChanges(); } } /// /// 根据装置判断是否存在设计交底管理 /// /// 装置Id /// public static bool IsExitDesignDetailsByUnitWorkId(string UnitWorkId) { return (from x in Funs.DB.Comprehensive_DesignDetails where x.UnitWorkId == UnitWorkId select x).Count() > 0; } } }