535 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			535 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			C#
		
	
	
	
using System.Collections.Generic;
 | 
						|
using System.Linq;
 | 
						|
 | 
						|
namespace BLL
 | 
						|
{
 | 
						|
    /// <summary>
 | 
						|
    /// 专项检查
 | 
						|
    /// </summary>
 | 
						|
    public static class APICheckSpecialService
 | 
						|
    {
 | 
						|
        #region  获取专项检查详细
 | 
						|
        /// <summary>
 | 
						|
        ///  获取专项检查详细
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="CheckSpecialId"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static Model.CheckSpecialItem getCheckSpecialById(string CheckSpecialId,string state="0")
 | 
						|
        {
 | 
						|
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | 
						|
            {
 | 
						|
                if (state == "0")
 | 
						|
                {
 | 
						|
                    //状态是0的时候查看所有
 | 
						|
                    var getInfo = from x in db.Check_CheckSpecial
 | 
						|
                                  where x.CheckSpecialId == CheckSpecialId
 | 
						|
                                  select new Model.CheckSpecialItem
 | 
						|
                                  {
 | 
						|
                                      CheckSpecialId = x.CheckSpecialId,
 | 
						|
                                      ProjectId = x.ProjectId,
 | 
						|
                                      CheckSpecialCode = x.CheckSpecialCode,
 | 
						|
                                      CheckTypeName = (x.CheckType == "1" ? "联合" : "专项"),
 | 
						|
                                      CheckType = x.CheckType,
 | 
						|
                                      CheckItemSetId = x.CheckItemSetId,
 | 
						|
                                      CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItemSetId).CheckItemName,
 | 
						|
                                      CheckPersonId = x.CheckPerson,
 | 
						|
                                      CheckPersonName = db.Sys_User.First(u => u.UserId == x.CheckPerson).UserName,
 | 
						|
                                      CheckTime = string.Format("{0:yyyy-MM-dd}", x.CheckTime),
 | 
						|
                                      DaySummary = x.DaySummary,
 | 
						|
                                      PartInUnitIds = x.PartInUnits,
 | 
						|
                                      PartInUnitNames = UnitService.getUnitNamesUnitIds(x.PartInUnits),
 | 
						|
                                      PartInPersonIds = x.PartInPersonIds,
 | 
						|
                                      PartInPersonNames = UserService.getUserNamesUserIds(x.PartInPersonIds),
 | 
						|
                                      PartInPersonNames2 = x.PartInPersonNames,
 | 
						|
                                      CompileManId = x.CompileMan,
 | 
						|
                                      CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
 | 
						|
                                      States = x.States,
 | 
						|
                                      AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
 | 
						|
                                      CheckSpecialDetailItems = getCheckSpecialDetailList(x.CheckSpecialId,"0"),
 | 
						|
 | 
						|
                                      ResponsibleUnit = x.ResponsibleUnit,
 | 
						|
                                      ResponsibleUnitName = UnitService.GetUnitNameByUnitId(x.ResponsibleUnit),
 | 
						|
                                      WorkAreaId = x.WorkAreaId,
 | 
						|
                                      WorkAreaName = UnitWorkService.GetUnitWorkName(x.WorkAreaId),
 | 
						|
                                      QuestionType = x.QuestionType,
 | 
						|
                                      QuestionTypeName = UnitService.GetQuestionTypeId(x.QuestionType),
 | 
						|
 | 
						|
                                      ResponsibleMan = x.ResponsibleMan,
 | 
						|
                                      ReceiveMan = x.ReceiveMan,
 | 
						|
                                      ReceiveManName = UserService.getUserNamesUserIds(x.ReceiveMan),
 | 
						|
                                      AttachUrl2= APIUpLoadFileService.getFileUrl(x.CheckSpecialId+"zgh", null),
 | 
						|
 | 
						|
                                  };
 | 
						|
                    return getInfo.FirstOrDefault();
 | 
						|
                }
 | 
						|
                else {
 | 
						|
                    //状态是1的时候查看不合格的子项
 | 
						|
                    var getInfo = from x in db.Check_CheckSpecial
 | 
						|
                                  where x.CheckSpecialId == CheckSpecialId
 | 
						|
                                  select new Model.CheckSpecialItem
 | 
						|
                                  {
 | 
						|
                                      CheckSpecialId = x.CheckSpecialId,
 | 
						|
                                      ProjectId = x.ProjectId,
 | 
						|
                                      CheckSpecialCode = x.CheckSpecialCode,
 | 
						|
                                      CheckTypeName = (x.CheckType == "1" ? "联合" : "专项"),
 | 
						|
                                      CheckType = x.CheckType,
 | 
						|
                                      CheckItemSetId = x.CheckItemSetId,
 | 
						|
                                      CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItemSetId).CheckItemName,
 | 
						|
                                      CheckPersonId = x.CheckPerson,
 | 
						|
                                      CheckPersonName = db.Sys_User.First(u => u.UserId == x.CheckPerson).UserName,
 | 
						|
                                      CheckTime = string.Format("{0:yyyy-MM-dd}", x.CheckTime),
 | 
						|
                                      DaySummary = x.DaySummary,
 | 
						|
                                      PartInUnitIds = x.PartInUnits,
 | 
						|
                                      PartInUnitNames = UnitService.getUnitNamesUnitIds(x.PartInUnits),
 | 
						|
                                      PartInPersonIds = x.PartInPersonIds,
 | 
						|
                                      PartInPersonNames = UserService.getUserNamesUserIds(x.PartInPersonIds),
 | 
						|
                                      PartInPersonNames2 = x.PartInPersonNames,
 | 
						|
                                      CompileManId = x.CompileMan,
 | 
						|
                                      CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
 | 
						|
                                      States = x.States,
 | 
						|
                                      AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
 | 
						|
                                      CheckSpecialDetailItems = getCheckSpecialDetailList(x.CheckSpecialId,"1"),
 | 
						|
 | 
						|
                                      ResponsibleUnit = x.ResponsibleUnit,
 | 
						|
                                      ResponsibleUnitName = UnitService.GetUnitNameByUnitId(x.ResponsibleUnit),
 | 
						|
                                      WorkAreaId = x.WorkAreaId,
 | 
						|
                                      WorkAreaName = UnitWorkService.GetUnitWorkName(x.WorkAreaId),
 | 
						|
                                      QuestionType = x.QuestionType,
 | 
						|
                                      QuestionTypeName = UnitService.GetQuestionTypeId(x.QuestionType),
 | 
						|
 | 
						|
                                      ResponsibleMan = x.ResponsibleMan,
 | 
						|
                                      ReceiveMan = x.ReceiveMan,
 | 
						|
                                      ReceiveManName = UserService.getUserNamesUserIds(x.ReceiveMan),
 | 
						|
                                      AttachUrl2 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId + "zgh", null),
 | 
						|
                                  };
 | 
						|
                    return getInfo.FirstOrDefault();
 | 
						|
                }
 | 
						|
                
 | 
						|
            }
 | 
						|
        }
 | 
						|
        #endregion        
 | 
						|
 | 
						|
        #region 获取专项检查列表信息
 | 
						|
        /// <summary>
 | 
						|
        /// 获取专项检查列表信息
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="projectId"></param>
 | 
						|
        /// <param name="states"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static List<Model.CheckSpecialItem> getCheckSpecialList(string projectId,  string states,string userid)
 | 
						|
        {
 | 
						|
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | 
						|
            {
 | 
						|
                var getCheckSpecial = from x in db.Check_CheckSpecial
 | 
						|
                                      where x.ProjectId == projectId &&  x.States ==states
 | 
						|
                                      //当前保存人、审核人、确认人能看到
 | 
						|
                                      &&(x.CompileMan==userid || x.ResponsibleMan==userid || userid.Split(',').Contains(x.ReceiveMan))
 | 
						|
                                      orderby x.CheckSpecialCode descending
 | 
						|
                                      select new Model.CheckSpecialItem
 | 
						|
                                      {
 | 
						|
                                          CheckSpecialId = x.CheckSpecialId,
 | 
						|
                                          ProjectId = x.ProjectId,
 | 
						|
                                          CheckSpecialCode = db.Sys_CodeRecords.First(y => y.DataId == x.CheckSpecialId).Code ?? x.CheckSpecialCode,
 | 
						|
                                          CheckTypeName = (x.CheckType == "1" ? "联合" : "专项"),
 | 
						|
                                          CheckType = x.CheckType,
 | 
						|
                                          CheckItemSetId = x.CheckItemSetId,
 | 
						|
                                          CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItemSetId).CheckItemName,
 | 
						|
                                          CheckPersonId = x.CheckPerson,
 | 
						|
                                          CheckPersonName = db.Sys_User.First(u => u.UserId == x.CheckPerson).UserName,
 | 
						|
                                          CheckTime = string.Format("{0:yyyy-MM-dd}", x.CheckTime),
 | 
						|
                                          DaySummary = x.DaySummary,
 | 
						|
                                          PartInUnitIds = x.PartInUnits,
 | 
						|
                                          PartInUnitNames = UnitService.getUnitNamesUnitIds(x.PartInUnits),
 | 
						|
                                          PartInPersonIds = x.PartInPersonIds,
 | 
						|
                                          PartInPersonNames = UserService.getUserNamesUserIds(x.PartInPersonIds),
 | 
						|
                                          PartInPersonNames2 = x.PartInPersonNames,
 | 
						|
                                          CompileManId = x.CompileMan,
 | 
						|
                                          CompileManName = db.Sys_User.First(u => u.UserId == x.CompileMan).UserName,
 | 
						|
                                          States = x.States,
 | 
						|
                                          AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialId, null),
 | 
						|
                                          ReceiveMan=x.ReceiveMan,
 | 
						|
                                          ReceiveManName= UserService.getUserNamesUserIds(x.ReceiveMan)
 | 
						|
                                      };
 | 
						|
                return getCheckSpecial.ToList();
 | 
						|
            }
 | 
						|
        }       
 | 
						|
        #endregion        
 | 
						|
 | 
						|
        #region 保存Check_CheckSpecial
 | 
						|
        /// <summary>
 | 
						|
        /// 保存Check_CheckSpecial
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="newItem">处罚通知单</param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static string SaveCheckSpecial(Model.CheckSpecialItem newItem)
 | 
						|
        {
 | 
						|
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | 
						|
            {
 | 
						|
                string message = string.Empty;
 | 
						|
                Model.Check_CheckSpecial newCheckSpecial = new Model.Check_CheckSpecial
 | 
						|
                {
 | 
						|
                    CheckSpecialId = newItem.CheckSpecialId,
 | 
						|
                    CheckSpecialCode = newItem.CheckSpecialCode,
 | 
						|
                    CheckItemSetId=newItem.CheckItemSetId,
 | 
						|
                    CheckType = newItem.CheckType,
 | 
						|
                    ProjectId = newItem.ProjectId,
 | 
						|
                    CheckPerson = newItem.CheckPersonId,
 | 
						|
                    CheckTime = Funs.GetNewDateTime(newItem.CheckTime),
 | 
						|
                    DaySummary = System.Web.HttpUtility.HtmlEncode(newItem.DaySummary),
 | 
						|
                    PartInUnits = newItem.PartInUnitIds,
 | 
						|
                    PartInPersonIds = newItem.PartInPersonIds,
 | 
						|
                    PartInPersons = UserService.getUserNamesUserIds(newItem.PartInPersonIds),
 | 
						|
                    PartInPersonNames = newItem.PartInPersonNames2,
 | 
						|
                    CompileMan = newItem.CompileManId,
 | 
						|
                    States = newItem.States,
 | 
						|
 | 
						|
                    ResponsibleUnit=newItem.ResponsibleUnit,
 | 
						|
                    WorkAreaId=newItem.WorkAreaId,
 | 
						|
                    QuestionType=newItem.QuestionType,
 | 
						|
                    //审核人
 | 
						|
                    ResponsibleMan=newItem.ResponsibleMan,
 | 
						|
                    ReceiveMan=newItem.ReceiveMan
 | 
						|
                };
 | 
						|
                //if (newItem.States != Const.State_1)
 | 
						|
                //{
 | 
						|
                //    newCheckSpecial.States = Const.State_0;
 | 
						|
                //}
 | 
						|
 | 
						|
                //if (newItem.CheckSpecialDetailItems == null || newItem.CheckSpecialDetailItems.Count() == 0)
 | 
						|
                //{
 | 
						|
                //    if (newItem.States == Const.State_1)
 | 
						|
                //    {
 | 
						|
                //        newCheckSpecial.States = Const.State_2;
 | 
						|
                //    }
 | 
						|
                //}
 | 
						|
 | 
						|
                //如果审核状态不为空
 | 
						|
                if (!string.IsNullOrEmpty(newItem.AuditState))
 | 
						|
                {
 | 
						|
                    //不同意的话
 | 
						|
                    if (newItem.AuditState=="0")
 | 
						|
                    {
 | 
						|
                        newCheckSpecial.States = "0";
 | 
						|
                    }
 | 
						|
                    else if (newItem.AuditState=="1")
 | 
						|
                    {
 | 
						|
                        newCheckSpecial.States = "2";
 | 
						|
                    }
 | 
						|
                }
 | 
						|
 | 
						|
                var updateCheckSpecial = db.Check_CheckSpecial.FirstOrDefault(x => x.CheckSpecialId == newItem.CheckSpecialId);
 | 
						|
                if (updateCheckSpecial == null)
 | 
						|
                {
 | 
						|
                    newCheckSpecial.CheckSpecialId = SQLHelper.GetNewID();                    
 | 
						|
                    newCheckSpecial.CheckSpecialCode = CodeRecordsService.ReturnCodeByMenuIdProjectId(Const.ProjectCheckSpecialMenuId, newCheckSpecial.ProjectId, string.Empty);
 | 
						|
                    db.Check_CheckSpecial.InsertOnSubmit(newCheckSpecial);
 | 
						|
                    db.SubmitChanges();
 | 
						|
                    ////增加一条编码记录
 | 
						|
                    BLL.CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(BLL.Const.ProjectCheckSpecialMenuId, newCheckSpecial.ProjectId, null, newCheckSpecial.CheckSpecialId, newCheckSpecial.CheckTime);
 | 
						|
                }
 | 
						|
                else
 | 
						|
                {
 | 
						|
                    Check_CheckSpecialService.UpdateCheckSpecial(newCheckSpecial);
 | 
						|
                    //// 删除专项检查明细项
 | 
						|
                    Check_CheckSpecialDetailService.DeleteCheckSpecialDetails(newCheckSpecial.CheckSpecialId);
 | 
						|
                }               
 | 
						|
                ////保存附件(提交前附件)
 | 
						|
                if (!string.IsNullOrEmpty(newItem.AttachUrl1))
 | 
						|
                {
 | 
						|
                    UploadFileService.SaveAttachUrl(UploadFileService.GetSourceByAttachUrl(newItem.AttachUrl1, 10, null), newItem.AttachUrl1, Const.ProjectCheckSpecialMenuId, newCheckSpecial.CheckSpecialId);
 | 
						|
                }
 | 
						|
                else
 | 
						|
                {
 | 
						|
                    CommonService.DeleteAttachFileById(Const.ProjectCheckSpecialMenuId, newCheckSpecial.CheckSpecialId);
 | 
						|
                }
 | 
						|
 | 
						|
                ////保存附件(整改后附件)
 | 
						|
                if (!string.IsNullOrEmpty(newItem.AttachUrl2))
 | 
						|
                {
 | 
						|
                    UploadFileService.SaveAttachUrl(UploadFileService.GetSourceByAttachUrl(newItem.AttachUrl2, 10, null), newItem.AttachUrl2, Const.ProjectCheckSpecialMenuId, newCheckSpecial.CheckSpecialId+"zgh");
 | 
						|
                }
 | 
						|
                else
 | 
						|
                {
 | 
						|
                    CommonService.DeleteAttachFileById(Const.ProjectCheckSpecialMenuId, newCheckSpecial.CheckSpecialId + "zgh");
 | 
						|
                }
 | 
						|
 | 
						|
                ///// 新增检查项
 | 
						|
                if (newItem.CheckSpecialDetailItems != null && newItem.CheckSpecialDetailItems.Count() > 0)
 | 
						|
                {                      
 | 
						|
                    foreach (var item in newItem.CheckSpecialDetailItems)
 | 
						|
                    {
 | 
						|
                        item.CheckSpecialId = newCheckSpecial.CheckSpecialId;
 | 
						|
                        SaveCheckSpecialDetail(item);                      
 | 
						|
                    }
 | 
						|
                    //// 单据完成后 系统自动按照单位 整改要求生成隐患整改单
 | 
						|
                    ///五环不需要
 | 
						|
                    //if (newItem.States == Const.State_1)
 | 
						|
                    //{
 | 
						|
                    //    var getC = newItem.CheckSpecialDetailItems.FirstOrDefault(x => x.CompleteStatus == false);
 | 
						|
                    //    if (getC == null)
 | 
						|
                    //    {
 | 
						|
                    //        newCheckSpecial.States = Const.State_2;
 | 
						|
                    //        Check_CheckSpecialService.UpdateCheckSpecial(newCheckSpecial);
 | 
						|
                    //    }
 | 
						|
                    //    else
 | 
						|
                    //    {
 | 
						|
                    //        var getNA = newItem.CheckSpecialDetailItems.FirstOrDefault(x => x.CompleteStatus == false && (x.HandleStep== null || x.HandleStep==""));
 | 
						|
                    //        if (getNA == null)
 | 
						|
                    //        {
 | 
						|
                    //            var detailLists = db.Check_CheckSpecialDetail.Where(x => x.CheckSpecialId == newCheckSpecial.CheckSpecialId && x.CompleteStatus == false);
 | 
						|
                    //            if (detailLists.Count() > 0)
 | 
						|
                    //            {
 | 
						|
                    //                message = Check_CheckSpecialService.IssueRectification(detailLists.ToList(), newCheckSpecial);
 | 
						|
                    //            }
 | 
						|
                    //        }
 | 
						|
                    //        else
 | 
						|
                    //        {
 | 
						|
                    //            message += "存在待整改,没有处理措施的记录!";
 | 
						|
                    //        }
 | 
						|
                    //    }
 | 
						|
                    //}
 | 
						|
                }
 | 
						|
                return message;
 | 
						|
            }
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region  获取专项检查明细项列表
 | 
						|
        /// <summary>
 | 
						|
        ///  获取专项检查明细项
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="checkSpecialId"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static List<Model.CheckSpecialDetailItem> getCheckSpecialDetailList(string checkSpecialId,string CompleteStatus="0")
 | 
						|
        {
 | 
						|
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | 
						|
            {
 | 
						|
                if (CompleteStatus == "0")
 | 
						|
                {
 | 
						|
                    var getInfo = from x in db.Check_CheckSpecialDetail
 | 
						|
                                  where x.CheckSpecialId == checkSpecialId
 | 
						|
                                  orderby x.SortIndex
 | 
						|
                                  select new Model.CheckSpecialDetailItem
 | 
						|
                                  {
 | 
						|
                                      CheckSpecialDetailId = x.CheckSpecialDetailId,
 | 
						|
                                      CheckSpecialId = x.CheckSpecialId,
 | 
						|
                                      CheckItemSetId = x.CheckItem,
 | 
						|
                                      CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItem).CheckItemName,
 | 
						|
                                      CheckContent = x.CheckContent,
 | 
						|
                                      SortIndex = x.SortIndex,
 | 
						|
                                      Unqualified = x.Unqualified,
 | 
						|
                                      Suggestions = x.Suggestions,
 | 
						|
                                      WorkArea = db.WBS_UnitWork.First(y => y.UnitWorkId == x.CheckArea).UnitWorkName,
 | 
						|
                                      WorkAreaId = x.CheckArea,
 | 
						|
                                      UnitId = x.UnitId,
 | 
						|
                                      UnitName = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
 | 
						|
                                      HandleStep = x.HandleStep,
 | 
						|
                                      HandleStepName = getNames(x.HandleStep),
 | 
						|
                                      HiddenHazardType = x.HiddenHazardType,
 | 
						|
                                      HiddenHazardTypeName = x.HiddenHazardType == "3" ? "重大" : (x.HiddenHazardType == "2" ? "较大" : "一般"),
 | 
						|
                                      LimitedDate = string.Format("{0:yyyy-MM-dd}", x.LimitedDate),
 | 
						|
                                      CompleteStatus = x.CompleteStatus,
 | 
						|
                                      CompleteStatusName = x.CompleteStatus == true ? "已整改" : "待整改",
 | 
						|
                                      CompletedDate = string.Format("{0:yyyy-MM-dd}", x.CompletedDate),
 | 
						|
                                      AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialDetailId, null),
 | 
						|
 | 
						|
                                      CheckItemDetailSetId = x.CheckItemSetId,
 | 
						|
                                      CheckItemDetailContent = x.CheckItemSetContent,
 | 
						|
                                      Rectification_Date = string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
 | 
						|
                                      CheckOpinions = x.CheckOpinions,
 | 
						|
                                  };
 | 
						|
                    return getInfo.ToList();
 | 
						|
                }
 | 
						|
                else {
 | 
						|
                    //查询不合格子项
 | 
						|
                    var getInfo = from x in db.Check_CheckSpecialDetail
 | 
						|
                                  where x.CheckSpecialId == checkSpecialId && x.CompleteStatus==false
 | 
						|
                                  orderby x.SortIndex
 | 
						|
                                  select new Model.CheckSpecialDetailItem
 | 
						|
                                  {
 | 
						|
                                      CheckSpecialDetailId = x.CheckSpecialDetailId,
 | 
						|
                                      CheckSpecialId = x.CheckSpecialId,
 | 
						|
                                      CheckItemSetId = x.CheckItem,
 | 
						|
                                      CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItem).CheckItemName,
 | 
						|
                                      CheckContent = x.CheckContent,
 | 
						|
                                      SortIndex = x.SortIndex,
 | 
						|
                                      Unqualified = x.Unqualified,
 | 
						|
                                      Suggestions = x.Suggestions,
 | 
						|
                                      WorkArea = db.WBS_UnitWork.First(y => y.UnitWorkId == x.CheckArea).UnitWorkName,
 | 
						|
                                      WorkAreaId = x.CheckArea,
 | 
						|
                                      UnitId = x.UnitId,
 | 
						|
                                      UnitName = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
 | 
						|
                                      HandleStep = x.HandleStep,
 | 
						|
                                      HandleStepName = getNames(x.HandleStep),
 | 
						|
                                      HiddenHazardType = x.HiddenHazardType,
 | 
						|
                                      HiddenHazardTypeName = x.HiddenHazardType == "3" ? "重大" : (x.HiddenHazardType == "2" ? "较大" : "一般"),
 | 
						|
                                      LimitedDate = string.Format("{0:yyyy-MM-dd}", x.LimitedDate),
 | 
						|
                                      CompleteStatus = x.CompleteStatus,
 | 
						|
                                      CompleteStatusName = x.CompleteStatus == true ? "已整改" : "待整改",
 | 
						|
                                      CompletedDate = string.Format("{0:yyyy-MM-dd}", x.CompletedDate),
 | 
						|
                                      AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialDetailId, null),
 | 
						|
 | 
						|
                                      CheckItemDetailSetId = x.CheckItemSetId,
 | 
						|
                                      CheckItemDetailContent = x.CheckItemSetContent,
 | 
						|
                                      Rectification_Date = string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
 | 
						|
                                      CheckOpinions = x.CheckOpinions,
 | 
						|
                                  };
 | 
						|
                    return getInfo.ToList();
 | 
						|
                }
 | 
						|
                
 | 
						|
            }
 | 
						|
        }
 | 
						|
        /// <summary>
 | 
						|
        /// 
 | 
						|
        /// </summary>
 | 
						|
        /// <returns></returns>
 | 
						|
        private static string getNames(string constValue)
 | 
						|
        {
 | 
						|
            return ConstValue.getConstTextsConstValues(constValue, ConstValue.Group_HandleStep);
 | 
						|
        }
 | 
						|
        #endregion      
 | 
						|
 | 
						|
        #region  获取专项检查明细项详细
 | 
						|
        /// <summary>
 | 
						|
        ///  获取专项检查明细项详细
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="checkSpecialDetailId"></param>
 | 
						|
        /// <returns></returns>
 | 
						|
        public static Model.CheckSpecialDetailItem getCheckSpecialDetailById(string checkSpecialDetailId)
 | 
						|
        {
 | 
						|
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | 
						|
            {
 | 
						|
                var getInfo = from x in db.Check_CheckSpecialDetail
 | 
						|
                              where x.CheckSpecialDetailId == checkSpecialDetailId
 | 
						|
                              orderby x.SortIndex
 | 
						|
                              select new Model.CheckSpecialDetailItem
 | 
						|
                              {
 | 
						|
                                  CheckSpecialDetailId = x.CheckSpecialDetailId,
 | 
						|
                                  CheckSpecialId = x.CheckSpecialId,
 | 
						|
                                  CheckItemSetId = x.CheckItem,
 | 
						|
                                  CheckItemSetName = db.Technique_CheckItemSet.First(y => y.CheckItemSetId == x.CheckItem).CheckItemName,
 | 
						|
                                  CheckContent = x.CheckContent,
 | 
						|
                                  Unqualified = x.Unqualified,
 | 
						|
                                  Suggestions = x.Suggestions,
 | 
						|
                                  WorkArea = db.WBS_UnitWork.First(y => y.UnitWorkId == x.CheckArea).UnitWorkName,
 | 
						|
                                  WorkAreaId = x.CheckArea,
 | 
						|
                                  UnitId = x.UnitId,
 | 
						|
                                  UnitName = db.Base_Unit.First(y => y.UnitId == x.UnitId).UnitName,
 | 
						|
                                  HandleStep = x.HandleStep,
 | 
						|
                                  HandleStepName = getNames(x.HandleStep),
 | 
						|
                                  HiddenHazardType = x.HiddenHazardType,
 | 
						|
                                  HiddenHazardTypeName = x.HiddenHazardType == "3" ? "重大" : (x.HiddenHazardType == "2" ? "较大" : "一般"),
 | 
						|
                                  LimitedDate = string.Format("{0:yyyy-MM-dd}", x.LimitedDate),
 | 
						|
                                  CompleteStatus = x.CompleteStatus,
 | 
						|
                                  CompleteStatusName = x.CompleteStatus == true ? "已整改" : "待整改",
 | 
						|
                                  AttachUrl1 = APIUpLoadFileService.getFileUrl(x.CheckSpecialDetailId, null),
 | 
						|
 | 
						|
                                  CheckItemDetailSetId=x.CheckItemSetId,
 | 
						|
                                  CheckItemDetailContent=x.CheckItemSetContent,
 | 
						|
                                  Rectification_Date= string.Format("{0:yyyy-MM-dd}", x.Rectification_Date),
 | 
						|
                                  CheckOpinions=x.CheckOpinions
 | 
						|
                              };
 | 
						|
                return getInfo.First();
 | 
						|
            }
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 保存专项检查明细项
 | 
						|
        /// <summary>
 | 
						|
        ///  保存专项检查明细项
 | 
						|
        /// </summary>
 | 
						|
        /// <param name="newDetail"></param>
 | 
						|
        public static void SaveCheckSpecialDetail(Model.CheckSpecialDetailItem newDetail)
 | 
						|
        {
 | 
						|
            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | 
						|
            {
 | 
						|
                if (!string.IsNullOrEmpty(newDetail.CheckSpecialId))
 | 
						|
                {
 | 
						|
                    Model.Check_CheckSpecialDetail newCheckSpecialDetail = new Model.Check_CheckSpecialDetail
 | 
						|
                    {
 | 
						|
                        CheckSpecialId = newDetail.CheckSpecialId,
 | 
						|
                        SortIndex = newDetail.SortIndex,
 | 
						|
                        CheckItemType = newDetail.CheckItemSetName,
 | 
						|
                        Unqualified = newDetail.Unqualified,
 | 
						|
                        UnitId = newDetail.UnitId,
 | 
						|
                        HandleStep = newDetail.HandleStep,
 | 
						|
                        HiddenHazardType = newDetail.HiddenHazardType,
 | 
						|
                        CompleteStatus = newDetail.CompleteStatus,
 | 
						|
                        RectifyNoticeId = newDetail.RectifyNoticeId,
 | 
						|
                        LimitedDate = Funs.GetNewDateTime(newDetail.LimitedDate),
 | 
						|
                        CompletedDate = Funs.GetNewDateTime(newDetail.CompletedDate),
 | 
						|
                        Suggestions = newDetail.Suggestions,
 | 
						|
                        WorkArea = newDetail.WorkArea,
 | 
						|
                        CheckArea = newDetail.WorkAreaId,
 | 
						|
                        CheckContent = newDetail.CheckContent,
 | 
						|
 | 
						|
                        //整改日期、检查内容、检查内容id、处理意见
 | 
						|
                        CheckItemSetId= newDetail.CheckItemDetailSetId,
 | 
						|
                        CheckItemSetContent= newDetail.CheckItemDetailContent,
 | 
						|
                        Rectification_Date = Funs.GetNewDateTime(newDetail.Rectification_Date),
 | 
						|
                        CheckOpinions=newDetail.CheckOpinions,
 | 
						|
                    };
 | 
						|
                    if (newCheckSpecialDetail.CompleteStatus == false && newCheckSpecialDetail.HandleStep.Contains("1") && string.IsNullOrEmpty(newCheckSpecialDetail.HiddenHazardType))
 | 
						|
                    {
 | 
						|
                        newCheckSpecialDetail.HiddenHazardType = "1";
 | 
						|
                    }
 | 
						|
                    var getUnit = UnitService.GetUnitByUnitId(newDetail.UnitId);
 | 
						|
                    if (getUnit != null)
 | 
						|
                    {
 | 
						|
                        newCheckSpecialDetail.UnitId = newDetail.UnitId;
 | 
						|
                    }
 | 
						|
                    var getCheckItem = db.Technique_CheckItemSet.FirstOrDefault(x => x.CheckItemSetId == newDetail.CheckItemSetId);
 | 
						|
                    if (getCheckItem != null)
 | 
						|
                    {
 | 
						|
                        newCheckSpecialDetail.CheckItem = newDetail.CheckItemSetId;
 | 
						|
                    }
 | 
						|
 | 
						|
                    var updateDetail = db.Check_CheckSpecialDetail.FirstOrDefault(x => x.CheckSpecialDetailId == newDetail.CheckSpecialDetailId);
 | 
						|
                    if (updateDetail == null)
 | 
						|
                    {
 | 
						|
                        newCheckSpecialDetail.CheckSpecialDetailId = SQLHelper.GetNewID();
 | 
						|
                        db.Check_CheckSpecialDetail.InsertOnSubmit(newCheckSpecialDetail);
 | 
						|
                        db.SubmitChanges();
 | 
						|
                    }
 | 
						|
                    else
 | 
						|
                    {
 | 
						|
                        newCheckSpecialDetail.CheckSpecialDetailId = updateDetail.CheckSpecialDetailId;
 | 
						|
                        updateDetail.CheckItem = newCheckSpecialDetail.CheckItem;
 | 
						|
                        updateDetail.CheckItemType = newCheckSpecialDetail.CheckItemType;
 | 
						|
                        updateDetail.SortIndex = newCheckSpecialDetail.SortIndex;
 | 
						|
                        updateDetail.Unqualified = newCheckSpecialDetail.Unqualified;
 | 
						|
                        updateDetail.UnitId = newCheckSpecialDetail.UnitId;
 | 
						|
                        updateDetail.HandleStep = newCheckSpecialDetail.HandleStep;
 | 
						|
                        updateDetail.HiddenHazardType = newCheckSpecialDetail.HiddenHazardType;
 | 
						|
                        updateDetail.CompleteStatus = newCheckSpecialDetail.CompleteStatus;
 | 
						|
                        updateDetail.RectifyNoticeId = newCheckSpecialDetail.RectifyNoticeId;
 | 
						|
                        updateDetail.LimitedDate = newCheckSpecialDetail.LimitedDate;
 | 
						|
                        updateDetail.CompletedDate = newCheckSpecialDetail.CompletedDate;
 | 
						|
                        updateDetail.Suggestions = newCheckSpecialDetail.Suggestions;
 | 
						|
                        updateDetail.WorkArea = newCheckSpecialDetail.WorkArea;    
 | 
						|
                        updateDetail.CheckArea = newCheckSpecialDetail.CheckArea;
 | 
						|
                        updateDetail.CheckContent = newCheckSpecialDetail.CheckContent;
 | 
						|
 | 
						|
                        //整改日期、检查内容、检查内容id、处理意见
 | 
						|
                        updateDetail.CheckItemSetId = newDetail.CheckItemDetailSetId;
 | 
						|
                        updateDetail.CheckItemSetContent = newDetail.CheckItemDetailContent;
 | 
						|
                        updateDetail.Rectification_Date = Funs.GetNewDateTime(newDetail.Rectification_Date);
 | 
						|
                        updateDetail.CheckOpinions = newDetail.CheckOpinions;
 | 
						|
                        db.SubmitChanges();
 | 
						|
                    }
 | 
						|
                    ////保存附件
 | 
						|
                    if (!string.IsNullOrEmpty(newDetail.AttachUrl1))
 | 
						|
                    {
 | 
						|
                        UploadFileService.SaveAttachUrl(UploadFileService.GetSourceByAttachUrl(newDetail.AttachUrl1, 10, null), newDetail.AttachUrl1, Const.ProjectCheckSpecialMenuId, newCheckSpecialDetail.CheckSpecialDetailId);
 | 
						|
                    }
 | 
						|
                    else
 | 
						|
                    {
 | 
						|
                        CommonService.DeleteAttachFileById(Const.ProjectCheckSpecialMenuId, newCheckSpecialDetail.CheckSpecialDetailId);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
        #endregion        
 | 
						|
    }
 | 
						|
}
 |