using System.Linq; namespace BLL { public static class SafetyDataItemService { /// /// 根据主键id获取项目明细 /// /// /// public static Model.SafetyData_SafetyDataItem GetSafetyDataItemByID(string SafetyDataItemId) { return Funs.DB.SafetyData_SafetyDataItem.FirstOrDefault(x => x.SafetyDataItemId == SafetyDataItemId); } /// /// 添加项目文件 /// /// public static void AddSafetyDataItem(Model.SafetyData_SafetyDataItem SafetyDataItem) { Model.SafetyData_SafetyDataItem newSafetyDataItem = new Model.SafetyData_SafetyDataItem { SafetyDataItemId = SafetyDataItem.SafetyDataItemId, SafetyDataId = SafetyDataItem.SafetyDataId, ProjectId = SafetyDataItem.ProjectId, Code = SafetyDataItem.Code, SortIndex = SafetyDataItem.SortIndex, Title = SafetyDataItem.Title, FileContent = SafetyDataItem.FileContent, CompileMan = SafetyDataItem.CompileMan, CompileDate = SafetyDataItem.CompileDate, SubmitDate = SafetyDataItem.SubmitDate, Remark = SafetyDataItem.Remark, AttachUrl = SafetyDataItem.AttachUrl, IsMenu = SafetyDataItem.IsMenu, Url = SafetyDataItem.Url }; Funs.DB.SafetyData_SafetyDataItem.InsertOnSubmit(newSafetyDataItem); Funs.DB.SubmitChanges(); /// 更新考核计划 单据提交时间 AddSafetyDataItemSubmit(newSafetyDataItem); } /// /// 修改项目文件 /// /// public static void UpdateSafetyDataItem(Model.SafetyData_SafetyDataItem SafetyDataItem) { Model.SafetyData_SafetyDataItem newSafetyDataItem = Funs.DB.SafetyData_SafetyDataItem.FirstOrDefault(e => e.SafetyDataItemId == SafetyDataItem.SafetyDataItemId); if (newSafetyDataItem != null) { newSafetyDataItem.Code = SafetyDataItem.Code; newSafetyDataItem.SortIndex = SafetyDataItem.SortIndex; newSafetyDataItem.Title = SafetyDataItem.Title; newSafetyDataItem.FileContent = SafetyDataItem.FileContent; newSafetyDataItem.CompileMan = SafetyDataItem.CompileMan; newSafetyDataItem.CompileDate = SafetyDataItem.CompileDate; newSafetyDataItem.Remark = SafetyDataItem.Remark; newSafetyDataItem.AttachUrl = SafetyDataItem.AttachUrl; Funs.DB.SubmitChanges(); /// 更新考核计划 单据提交时间 AddSafetyDataItemSubmit(newSafetyDataItem); } } /// /// 根据主键删除信息 /// /// public static void DeleteSafetyDataItemByID(string safetyDataItemId) { Model.SafetyData_SafetyDataItem SafetyDataItem = Funs.DB.SafetyData_SafetyDataItem.FirstOrDefault(e => e.SafetyDataItemId == safetyDataItemId); if (SafetyDataItem != null) { ////删除附件表 BLL.CommonService.DeleteAttachFileById(SafetyDataItem.SafetyDataItemId); Funs.DB.SafetyData_SafetyDataItem.DeleteOnSubmit(SafetyDataItem); Funs.DB.SubmitChanges(); } } #region 获取企业管理资料最大编号 /// /// 获取企业管理资料最大编号 /// /// public static string GetNewSafetyDataItemCode(string projectId, string safetyDataId) { string code = string.Empty; ////获取编码记录表最大排列序号 int maxNewSortIndex = 0; var maxSortIndex = Funs.DB.SafetyData_SafetyDataItem.Where(x => x.ProjectId == projectId && x.SafetyDataId == safetyDataId).Select(x => x.SortIndex).Max(); if (maxSortIndex.HasValue) { maxNewSortIndex = maxSortIndex.Value; } maxNewSortIndex = maxNewSortIndex + 1; int digit = 3; var safeData = BLL.SafetyDataService.GetSafetyDataBySafetyDataId(safetyDataId); if (safeData != null && safeData.Digit.HasValue) { digit = safeData.Digit.Value; } code = (maxNewSortIndex.ToString().PadLeft(digit, '0')); ///字符自动补零 return code; } #endregion /// /// 单据 更新考核计划 单据提交时间 /// /// public static void AddSafetyDataItemSubmit(Model.SafetyData_SafetyDataItem safetyDataItem) { var safetyDataPlan = from x in Funs.DB.SafetyData_SafetyDataPlan where x.ProjectId == safetyDataItem.ProjectId && x.SafetyDataId == safetyDataItem.SafetyDataId && safetyDataItem.CompileDate >= x.RealStartDate && safetyDataItem.CompileDate <= x.RealEndDate && !x.SubmitDate.HasValue select x; if (safetyDataPlan.Count() > 0) { foreach (var item in safetyDataPlan) { item.SubmitDate = safetyDataItem.SubmitDate; if (item.SubmitDate <= item.CheckDate) ///准时提交 { item.RealScore = item.ShouldScore; } else ///超期提交 { item.RealScore = 0; } BLL.SafetyDataPlanService.UpdateSafetyDataPlan(item); } } } //public static void GollSafetyData(string projectId) //{ // var thisUnit = BLL.Const.UnitId_CWCEC; // if (CommonService.GetIsThisUnit(Const.UnitId_ECEC)) // { // ////判断单据是否 加入到企业管理资料 // string menuId = BLL.Const.ProjectCheckDayMenuId; // var safeData = Funs.DB.SafetyData_SafetyData.FirstOrDefault(x => x.MenuId == menuId); // if (safeData != null) // { // ///收集手机端考核项资料 // var registrations = from x in Funs.DB.Inspection_Registration // where x.ProjectId == projectId // select x; // foreach (var item in registrations) // { // var safetyDataItem = BLL.SafetyDataItemService.GetSafetyDataItemByID(item.RegistrationId); ///明细是否存在 // if (safetyDataItem == null) // { // BLL.SafetyDataService.AddSafetyData(menuId, item.RegistrationId, item.ProblemDescription, "../Check/RegistrationView.aspx?RegistrationId={0}", projectId); // } // } // } // } //} } }