172 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			172 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			C#
		
	
	
	
using System.Linq;
 | 
						|
 | 
						|
namespace BLL
 | 
						|
{
 | 
						|
    public static class SafetyDataItemService
 | 
						|
    {
 | 
						|
        /// <summary>
 | 
						|
        /// 根据主键id获取项目明细
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="appraise"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static Model.SafetyData_SafetyDataItem GetSafetyDataItemByID(string SafetyDataItemId)
 | 
						|
        {
 | 
						|
            return Funs.DB.SafetyData_SafetyDataItem.FirstOrDefault(x => x.SafetyDataItemId == SafetyDataItemId);
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 添加项目文件
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="SafetyDataItem"></param>
 | 
						|
        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);
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 修改项目文件
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="SafetyDataItem"></param>
 | 
						|
        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);
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        /// 根据主键删除信息
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="safetyDataItemId"></param>
 | 
						|
        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 获取企业管理资料最大编号
 | 
						|
        /// <summary>
 | 
						|
        ///  获取企业管理资料最大编号
 | 
						|
        /// </summary>
 | 
						|
        /// <returns></returns>
 | 
						|
        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
 | 
						|
 | 
						|
        /// <summary>
 | 
						|
        ///  单据 更新考核计划 单据提交时间
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="safetyDataItem"></param>
 | 
						|
        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.CommonService.GetIsThisUnit();
 | 
						|
        //    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);
 | 
						|
        //                }
 | 
						|
        //            }
 | 
						|
        //        }
 | 
						|
        //    }
 | 
						|
        //}
 | 
						|
    }
 | 
						|
}
 |