/// <summary>
        /// 保存RectifyNotices
        /// </summary>
        /// <param name="userInfo"></param>
        /// <returns></returns>
        public static void SaveRectifyNotices(Model.RectifyNoticesItem rectifyNotices)
        {
            using (Model.SUBHSSEDB db = new Model.SUBHSSEDB(Funs.ConnString))
            {
                bool insertRectifyNoticesItemItem            = false;
                Model.Check_RectifyNotices newRectifyNotices = new Model.Check_RectifyNotices
                {
                    RectifyNoticesId   = rectifyNotices.RectifyNoticesId,
                    ProjectId          = rectifyNotices.ProjectId,
                    RectifyNoticesCode = rectifyNotices.RectifyNoticesCode,
                    UnitId             = rectifyNotices.UnitId,
                    CheckManNames      = rectifyNotices.CheckManNames,
                    CheckManIds        = rectifyNotices.CheckManIds,
                    CheckedDate        = Funs.GetNewDateTime(rectifyNotices.CheckedDate),
                    HiddenHazardType   = rectifyNotices.HiddenHazardType,
                    States             = rectifyNotices.States,
                };
                if (!string.IsNullOrEmpty(rectifyNotices.WorkAreaId))
                {
                    newRectifyNotices.WorkAreaId = rectifyNotices.WorkAreaId;
                }
                if (!string.IsNullOrEmpty(rectifyNotices.CompleteManId))
                {
                    newRectifyNotices.CompleteManId = rectifyNotices.CompleteManId;
                }
                if (newRectifyNotices.States == Const.State_1)
                {
                    newRectifyNotices.SignPerson = rectifyNotices.SignPersonId;
                }
                //// 新增整改单
                var isUpdate = db.Check_RectifyNotices.FirstOrDefault(x => x.RectifyNoticesId == newRectifyNotices.RectifyNoticesId);
                if (isUpdate == null)
                {
                    newRectifyNotices.RectifyNoticesId   = SQLHelper.GetNewID();
                    newRectifyNotices.Isprint            = "0";
                    newRectifyNotices.Isprintf           = "0";
                    newRectifyNotices.RectifyNoticesCode = CodeRecordsService.ReturnCodeByMenuIdProjectId(Const.ProjectRectifyNoticesMenuId, newRectifyNotices.ProjectId, newRectifyNotices.UnitId);
                    db.Check_RectifyNotices.InsertOnSubmit(newRectifyNotices);
                    db.SubmitChanges();
                    CodeRecordsService.InsertCodeRecordsByMenuIdProjectIdUnitId(Const.ProjectRectifyNoticesMenuId, newRectifyNotices.ProjectId, newRectifyNotices.UnitId, newRectifyNotices.RectifyNoticesId, newRectifyNotices.CheckedDate);
                    //// 整改单附件
                    if (!string.IsNullOrEmpty(rectifyNotices.BeAttachUrl))
                    {
                        APIUpLoadFileService.SaveAttachUrl(Const.ProjectRectifyNoticesMenuId, newRectifyNotices.RectifyNoticesId + "#0", rectifyNotices.BeAttachUrl, "0");
                    }
                    //// 反馈单附件
                    if (!string.IsNullOrEmpty(rectifyNotices.AfAttachUrl))
                    {
                        APIUpLoadFileService.SaveAttachUrl(Const.ProjectRectifyNoticesMenuId, newRectifyNotices.RectifyNoticesId + "#1", rectifyNotices.AfAttachUrl, "0");
                    }
                    //// 整个单据附件
                    if (!string.IsNullOrEmpty(rectifyNotices.AttachUrl))
                    {
                        APIUpLoadFileService.SaveAttachUrl(Const.ProjectRectifyNoticesMenuId, newRectifyNotices.RectifyNoticesId, rectifyNotices.AttachUrl, "0");
                    }
                    insertRectifyNoticesItemItem = true;

                    //// 回写巡检记录表
                    if (!string.IsNullOrEmpty(rectifyNotices.HazardRegisterId))
                    {
                        List <string> listIds = Funs.GetStrListByStr(rectifyNotices.HazardRegisterId, ',');
                        foreach (var item in listIds)
                        {
                            var getHazardRegister = db.HSSE_Hazard_HazardRegister.FirstOrDefault(x => x.HazardRegisterId == item);
                            if (getHazardRegister != null)
                            {
                                getHazardRegister.States      = "3";
                                getHazardRegister.HandleIdea += "已升级为隐患整改单:" + newRectifyNotices.RectifyNoticesCode;
                                getHazardRegister.ResultId    = newRectifyNotices.RectifyNoticesId;
                                getHazardRegister.ResultType  = "1";
                                db.SubmitChanges();
                            }
                        }
                    }
                    //// 回写专项检查明细表
                    if (!string.IsNullOrEmpty(rectifyNotices.CheckSpecialDetailId))
                    {
                        List <string> listIds = Funs.GetStrListByStr(rectifyNotices.CheckSpecialDetailId, ',');
                        foreach (var item in listIds)
                        {
                            var getCheckSpecialDetail = db.Check_CheckSpecialDetail.FirstOrDefault(x => x.CheckSpecialDetailId == item);
                            if (getCheckSpecialDetail != null)
                            {
                                getCheckSpecialDetail.DataType = "1";
                                getCheckSpecialDetail.DataId   = newRectifyNotices.RectifyNoticesId;
                                db.SubmitChanges();
                            }
                        }
                    }
                }
                else
                {
                    newRectifyNotices.RectifyNoticesId = isUpdate.RectifyNoticesId;
                    isUpdate.States = rectifyNotices.States;
                    if (newRectifyNotices.States == "0" || newRectifyNotices.States == "1")  ////编制人 修改或提交
                    {
                        isUpdate.UnitId           = rectifyNotices.UnitId;
                        isUpdate.WorkAreaId       = rectifyNotices.WorkAreaId;
                        isUpdate.CheckManNames    = rectifyNotices.CheckManNames;
                        isUpdate.CheckManIds      = rectifyNotices.CheckManIds;
                        isUpdate.CheckedDate      = Funs.GetNewDateTime(rectifyNotices.CheckedDate);
                        isUpdate.HiddenHazardType = rectifyNotices.HiddenHazardType;
                        if (newRectifyNotices.States == "1" && !string.IsNullOrEmpty(rectifyNotices.SignPersonId))
                        {
                            isUpdate.SignPerson = rectifyNotices.SignPersonId;
                        }
                        else
                        {
                            newRectifyNotices.States = isUpdate.States = "0";
                        }
                        db.SubmitChanges();
                        //// 删除明细表
                        var deleteItem = from x in db.Check_RectifyNoticesItem where x.RectifyNoticesId == isUpdate.RectifyNoticesId select x;
                        if (deleteItem.Count() > 0)
                        {
                            foreach (var cdeleteItem in deleteItem)
                            {
                                CommonService.DeleteAttachFileById(cdeleteItem.RectifyNoticesItemId);
                            }
                            db.Check_RectifyNoticesItem.DeleteAllOnSubmit(deleteItem);
                        }

                        insertRectifyNoticesItemItem = true;
                    }
                    else if (newRectifyNotices.States == "2") ////总包单位项目安全经理 审核
                    {
                        /// 不同意 打回 同意抄送专业工程师、施工经理、项目经理 并下发分包接收人(也就是施工单位项目安全经理)
                        if (rectifyNotices.IsAgree == false)
                        {
                            newRectifyNotices.States = isUpdate.States = "0";
                        }
                        else
                        {
                            if (!string.IsNullOrEmpty(rectifyNotices.ProfessionalEngineerId))
                            {
                                isUpdate.ProfessionalEngineerId = rectifyNotices.ProfessionalEngineerId;
                            }
                            if (!string.IsNullOrEmpty(rectifyNotices.ConstructionManagerId))
                            {
                                isUpdate.ConstructionManagerId = rectifyNotices.ConstructionManagerId;
                            }
                            if (!string.IsNullOrEmpty(rectifyNotices.ProjectManagerId))
                            {
                                isUpdate.ProjectManagerId = rectifyNotices.ProjectManagerId;
                            }
                            if (!string.IsNullOrEmpty(rectifyNotices.DutyPersonId))
                            {
                                isUpdate.DutyPersonId = rectifyNotices.DutyPersonId;
                                isUpdate.SignDate     = DateTime.Now;
                            }
                            else
                            {
                                newRectifyNotices.States = isUpdate.States = "1";
                            }
                        }
                        db.SubmitChanges();
                    }
                    else if (newRectifyNotices.States == "3") /// 施工单位项目安全经理 整改 提交施工单位项目负责人
                    {
                        //// 整改明细反馈
                        if (rectifyNotices.RectifyNoticesItemItem != null && rectifyNotices.RectifyNoticesItemItem.Count() > 0)
                        {
                            foreach (var rItem in rectifyNotices.RectifyNoticesItemItem)
                            {
                                var getUpdateItem = db.Check_RectifyNoticesItem.FirstOrDefault(x => x.RectifyNoticesItemId == rItem.RectifyNoticesItemId);
                                if (getUpdateItem != null)
                                {
                                    getUpdateItem.RectifyResults = rItem.RectifyResults;
                                    if (getUpdateItem.IsRectify != true)
                                    {
                                        getUpdateItem.IsRectify = null;
                                    }
                                    db.SubmitChanges();
                                }
                                if (!string.IsNullOrEmpty(rItem.PhotoAfterUrl))
                                {
                                    APIUpLoadFileService.SaveAttachUrl(Const.ProjectRectifyNoticesMenuId, rItem.RectifyNoticesItemId + "#2", rItem.PhotoAfterUrl, "0");
                                }
                            }
                        }

                        if (!string.IsNullOrEmpty(rectifyNotices.UnitHeadManId))
                        {
                            isUpdate.UnitHeadManId = rectifyNotices.UnitHeadManId;
                            isUpdate.CompleteDate  = DateTime.Now;
                        }
                        else
                        {
                            newRectifyNotices.States = isUpdate.States = "2";
                        }
                        db.SubmitChanges();
                    }
                    else if (newRectifyNotices.States == "4")
                    { /// 施工单位项目负责人不同意 打回施工单位项目安全经理,同意提交安全经理/安全工程师复查
                        if (rectifyNotices.IsAgree == false)
                        {
                            newRectifyNotices.States = isUpdate.States = "2";
                            isUpdate.CompleteDate    = null;
                        }
                        else
                        {
                            if (!string.IsNullOrEmpty(rectifyNotices.CheckPersonId))
                            {
                                isUpdate.UnitHeadManDate = DateTime.Now;
                                isUpdate.CheckPerson     = rectifyNotices.CheckPersonId;
                            }
                            else
                            {
                                newRectifyNotices.States = isUpdate.States = "3";
                            }
                        }
                        db.SubmitChanges();
                    }
                    else if (newRectifyNotices.States == "5")
                    {
                        //// 整改明细反馈 复查 是否合格
                        if (rectifyNotices.RectifyNoticesItemItem != null && rectifyNotices.RectifyNoticesItemItem.Count() > 0)
                        {
                            foreach (var rItem in rectifyNotices.RectifyNoticesItemItem)
                            {
                                var getUpdateItem = db.Check_RectifyNoticesItem.FirstOrDefault(x => x.RectifyNoticesItemId == rItem.RectifyNoticesItemId);
                                if (getUpdateItem != null)
                                {
                                    getUpdateItem.IsRectify = rItem.IsRectify;
                                    db.SubmitChanges();
                                    //// 存在不合格  意见自动不同意
                                    if (!getUpdateItem.IsRectify.HasValue || getUpdateItem.IsRectify == false)
                                    {
                                        rectifyNotices.IsAgree = false;
                                    }
                                }
                            }
                        }

                        ////安全经理/安全工程师 同意关闭,不同意打回施工单位项目安全经理
                        isUpdate.ReCheckOpinion = rectifyNotices.ReCheckOpinion;
                        if (rectifyNotices.IsAgree == false)
                        {
                            newRectifyNotices.States           = isUpdate.States = "2";
                            isUpdate.UnitHeadManDate           = null;
                            isUpdate.CompleteDate              = null;
                            isUpdate.ProfessionalEngineerTime2 = null;
                            isUpdate.ConstructionManagerTime2  = null;
                            isUpdate.ProjectManagerTime2       = null;
                        }
                        else
                        {
                            isUpdate.ReCheckDate = DateTime.Now;
                            //// 回写专项检查明细表
                            var getcheck = from x in db.Check_CheckSpecialDetail where x.DataId == isUpdate.RectifyNoticesId select x;
                            if (getcheck.Count() > 0)
                            {
                                foreach (var item in getcheck)
                                {
                                    item.CompleteStatus = true;
                                    item.CompletedDate  = DateTime.Now;
                                    db.SubmitChanges();
                                }
                            }
                        }
                        db.SubmitChanges();
                    }
                }
                if (insertRectifyNoticesItemItem)
                {
                    //// 新增明细
                    if (rectifyNotices.RectifyNoticesItemItem != null && rectifyNotices.RectifyNoticesItemItem.Count() > 0)
                    {
                        foreach (var rItem in rectifyNotices.RectifyNoticesItemItem)
                        {
                            Model.Check_RectifyNoticesItem newItem = new Model.Check_RectifyNoticesItem
                            {
                                RectifyNoticesItemId = SQLHelper.GetNewID(),
                                RectifyNoticesId     = newRectifyNotices.RectifyNoticesId,
                                WrongContent         = rItem.WrongContent,
                                Requirement          = rItem.Requirement,
                                LimitTime            = Funs.GetNewDateTime(rItem.LimitTime),
                                RectifyResults       = null,
                                IsRectify            = null,
                            };
                            db.Check_RectifyNoticesItem.InsertOnSubmit(newItem);
                            db.SubmitChanges();

                            if (!string.IsNullOrEmpty(rItem.PhotoBeforeUrl))
                            {
                                APIUpLoadFileService.SaveAttachUrl(Const.ProjectRectifyNoticesMenuId, newItem.RectifyNoticesItemId + "#1", rItem.PhotoBeforeUrl, "0");
                            }
                        }
                    }
                }
                //// 增加审核记录
                if (rectifyNotices.RectifyNoticesFlowOperateItem != null && rectifyNotices.RectifyNoticesFlowOperateItem.Count() > 0)
                {
                    var getOperate = rectifyNotices.RectifyNoticesFlowOperateItem.FirstOrDefault();
                    if (getOperate != null && !string.IsNullOrEmpty(getOperate.OperateManId))
                    {
                        Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                        {
                            FlowOperateId    = SQLHelper.GetNewID(),
                            RectifyNoticesId = newRectifyNotices.RectifyNoticesId,
                            OperateName      = getOperate.OperateName,
                            OperateManId     = getOperate.OperateManId,
                            OperateTime      = DateTime.Now,
                            IsAgree          = getOperate.IsAgree,
                            Opinion          = getOperate.Opinion,
                        };
                        db.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                        db.SubmitChanges();
                    }
                }

                if (newRectifyNotices.States == Const.State_1)
                {
                    APICommonService.SendSubscribeMessage(newRectifyNotices.SignPerson, "隐患整改单" + newRectifyNotices.RectifyNoticesCode + "待您签发", rectifyNotices.CheckManNames, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
                }
                else if (newRectifyNotices.States == Const.State_2)
                {
                    APICommonService.SendSubscribeMessage(newRectifyNotices.DutyPersonId, "隐患整改单" + newRectifyNotices.RectifyNoticesCode + "待您整改", rectifyNotices.SignPersonName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
                }
                else if (newRectifyNotices.States == Const.State_3)
                {
                    APICommonService.SendSubscribeMessage(newRectifyNotices.UnitHeadManId, "隐患整改单" + newRectifyNotices.RectifyNoticesCode + "待您审核", rectifyNotices.DutyPersonName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
                }
                else if (newRectifyNotices.States == Const.State_4)
                {
                    APICommonService.SendSubscribeMessage(newRectifyNotices.CheckPerson, "隐患整改单" + newRectifyNotices.RectifyNoticesCode + "待您复查", rectifyNotices.UnitHeadManName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// 保存方法
        /// </summary>
        /// <param name="saveType"></param>
        private void SavePauseNotice(string saveType)
        {
            Model.Check_RectifyNotices Notices = new Model.Check_RectifyNotices();
            Notices.RectifyNoticesCode = this.txtRectifyNoticesCode.Text.Trim();
            Notices.ProjectId          = this.CurrUser.LoginProjectId;
            if (this.drpUnitId.SelectedValue != BLL.Const._Null)
            {
                Notices.UnitId = this.drpUnitId.SelectedValue;
            }
            if (this.drpWorkAreaId.SelectedValue != BLL.Const._Null)
            {
                Notices.WorkAreaId = this.drpWorkAreaId.SelectedValue;
            }
            if (this.drpCheckPerson.SelectedValue != BLL.Const._Null)
            {
                string str      = GetStringByArray(this.drpCheckPerson.SelectedValueArray);
                string UserName = string.Empty;
                if (!string.IsNullOrEmpty(str))
                {
                    string[] seeUsers = str.Split(',');
                    foreach (var seeUser in seeUsers)
                    {
                        if (!string.IsNullOrEmpty(seeUser))
                        {
                            UserName += BLL.UserService.getUserNamesUserIds(seeUser) + ",";
                        }
                    }
                    if (!string.IsNullOrEmpty(UserName))
                    {
                        UserName = UserName.Substring(0, UserName.LastIndexOf(","));
                    }
                }
                Notices.CheckManNames = UserName;
                Notices.CheckManIds   = str;
            }
            if (this.drpSignPerson.SelectedValue != BLL.Const._Null)
            {
                Notices.SignPerson = this.drpSignPerson.SelectedValue;
            }
            if (!string.IsNullOrEmpty(this.txtCompleteDate.Text.Trim()))
            {
                Notices.CheckedDate = Convert.ToDateTime(this.txtCompleteDate.Text.Trim());
            }
            if (this.drpHiddenHazardType.SelectedValue != BLL.Const._Null)
            {
                Notices.HiddenHazardType = this.drpHiddenHazardType.SelectedValue;
            }
            if (saveType == "submit")
            {
                Notices.States = Convert.ToInt32(Convert.ToInt32(State) + 1).ToString();
            }
            else
            {
                var isUpdate = Funs.DB.Check_RectifyNotices.FirstOrDefault(x => x.RectifyNoticesId == RectifyNoticesId);
                if (isUpdate != null)
                {
                    if (string.IsNullOrEmpty(Notices.States))
                    {
                        Notices.States = State;
                    }
                    else
                    {
                        Notices.States = isUpdate.States;
                    }
                }
                else
                {
                    Notices.States = State;
                }
            }
            if (!string.IsNullOrEmpty(RectifyNoticesId))
            {
                Model.Check_RectifyNotices isUpdate = RectifyNoticesService.GetRectifyNoticesById(RectifyNoticesId);
                if (Notices.States == "0" || Notices.States == "1")  ////编制人 修改或提交
                {
                    isUpdate.UnitId           = this.drpUnitId.SelectedValue;
                    isUpdate.WorkAreaId       = this.drpWorkAreaId.SelectedValue;
                    isUpdate.CheckManNames    = BLL.UserService.GetUserNameByUserId(this.CurrUser.UserId);
                    isUpdate.CheckManIds      = this.CurrUser.UserId;
                    isUpdate.CheckedDate      = Funs.GetNewDateTime(this.txtCompleteDate.Text.Trim());
                    isUpdate.HiddenHazardType = this.drpHiddenHazardType.SelectedValue;
                    if (Notices.States == "1" && !string.IsNullOrEmpty(Notices.SignPerson))
                    {
                        isUpdate.SignPerson = Notices.SignPerson;
                        isUpdate.States     = "1";
                    }
                    BLL.Funs.DB.SubmitChanges();
                    Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                    {
                        FlowOperateId    = SQLHelper.GetNewID(typeof(Model.Check_RectifyNoticesFlowOperate)),
                        RectifyNoticesId = isUpdate.RectifyNoticesId,
                        OperateName      = "检查人员下发整改单",
                        OperateManId     = CurrUser.UserId,
                        OperateTime      = DateTime.Now,
                    };
                    BLL.Funs.DB.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                    BLL.Funs.DB.SubmitChanges();
                }
                else if (Notices.States == "2") ////总包单位项目安全经理 审核
                {
                    /// 不同意 打回 同意抄送专业工程师、施工经理、项目经理 并下发分包接收人(也就是施工单位项目安全经理)
                    if (this.rdbIsAgree.SelectedValue.Equals("false"))
                    {
                        Notices.States = isUpdate.States = "0";
                    }
                    else
                    {
                        if (this.drpProfessionalEngineer.SelectedValue != BLL.Const._Null)
                        {
                            isUpdate.ProfessionalEngineerId = this.drpProfessionalEngineer.SelectedValue;
                        }
                        if (this.drpConstructionManager.SelectedValue != BLL.Const._Null)
                        {
                            isUpdate.ConstructionManagerId = this.drpConstructionManager.SelectedValue;
                        }
                        if (this.drpProjectManager.SelectedValue != BLL.Const._Null)
                        {
                            isUpdate.ProjectManagerId = this.drpProjectManager.SelectedValue;
                        }
                        if (this.drpDutyPerson.SelectedValue != BLL.Const._Null)
                        {
                            isUpdate.DutyPersonId   = this.drpDutyPerson.SelectedValue;
                            isUpdate.DutyPerson     = this.drpDutyPerson.SelectedValue;
                            isUpdate.SignDate       = DateTime.Now;
                            isUpdate.DutyPersonTime = DateTime.Now;
                        }
                        Notices.States = isUpdate.States = "2";
                        BLL.Funs.DB.SubmitChanges();
                    }
                    Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                    {
                        FlowOperateId    = SQLHelper.GetNewID(typeof(Model.Check_RectifyNoticesFlowOperate)),
                        RectifyNoticesId = isUpdate.RectifyNoticesId,
                        OperateName      = "总包单位项目安全经理签发",
                        OperateManId     = CurrUser.UserId,
                        Opinion          = reason.Text,
                        IsAgree          = Convert.ToBoolean(this.rdbIsAgree.SelectedValue),
                        OperateTime      = DateTime.Now,
                    };
                    BLL.Funs.DB.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                    BLL.Funs.DB.SubmitChanges();
                }
                else if (Notices.States == "3") /// 施工单位项目安全经理 整改 提交施工单位项目负责人
                {
                    //// 整改明细反馈
                    var getViewList = this.CollectGridInfo();
                    if (getViewList != null && getViewList.Count() > 0)
                    {
                        foreach (var rItem in getViewList)
                        {
                            var getUpdateItem = Funs.DB.Check_RectifyNoticesItem.FirstOrDefault(x => x.RectifyNoticesItemId == rItem.RectifyNoticesItemId);
                            if (getUpdateItem != null)
                            {
                                getUpdateItem.RectifyResults = rItem.RectifyResults;
                                //if (getUpdateItem.IsRectify != true)
                                //{
                                //    getUpdateItem.IsRectify = null;
                                //}
                                Funs.DB.SubmitChanges();
                            }
                        }
                    }

                    if (this.drpUnitHeadManId.SelectedValue != BLL.Const._Null)
                    {
                        isUpdate.UnitHeadManId = this.drpUnitHeadManId.SelectedValue;
                        isUpdate.CompleteDate  = DateTime.Now;
                        Notices.States         = isUpdate.States = "3";
                    }
                    Funs.DB.SubmitChanges();
                    Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                    {
                        FlowOperateId    = SQLHelper.GetNewID(typeof(Model.Check_RectifyNoticesFlowOperate)),
                        RectifyNoticesId = isUpdate.RectifyNoticesId,
                        OperateName      = "责任人整改",
                        OperateManId     = CurrUser.UserId,
                        OperateTime      = DateTime.Now,
                    };
                    BLL.Funs.DB.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                    BLL.Funs.DB.SubmitChanges();
                }
                else if (Notices.States == "4")
                { /// 施工单位项目负责人不同意 打回施工单位项目安全经理,同意提交安全经理/安全工程师复查
                    if (this.rdbUnitHeadManAgree.SelectedValue.Equals("false"))
                    {
                        Notices.States        = isUpdate.States = "2";
                        isUpdate.CompleteDate = null;
                    }
                    else
                    {
                        if (drpSignPerson1.SelectedValue != BLL.Const._Null)
                        {
                            isUpdate.UnitHeadManDate = DateTime.Now;
                            isUpdate.CheckPerson     = drpSignPerson1.SelectedValue;
                            Notices.States           = isUpdate.States = "4";
                        }
                        Funs.DB.SubmitChanges();
                    }
                    Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                    {
                        FlowOperateId    = SQLHelper.GetNewID(typeof(Model.Check_RectifyNoticesFlowOperate)),
                        RectifyNoticesId = isUpdate.RectifyNoticesId,
                        OperateName      = "施工单位项目负责人审核",
                        OperateManId     = CurrUser.UserId,
                        Opinion          = this.reason1.Text,
                        IsAgree          = Convert.ToBoolean(this.rdbUnitHeadManAgree.SelectedValue),
                        OperateTime      = DateTime.Now,
                    };
                    BLL.Funs.DB.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                    BLL.Funs.DB.SubmitChanges();
                }
                else if (Notices.States == "5")
                {  ////安全经理/安全工程师 同意关闭,不同意打回施工单位项目安全经理
                    isUpdate.ReCheckOpinion = drpReCheckOpinion.SelectedValue;
                    if (this.drpReCheckOpinion.SelectedValue.Equals("false"))
                    {
                        Notices.States                     = isUpdate.States = "2";
                        isUpdate.UnitHeadManDate           = null;
                        isUpdate.CompleteDate              = null;
                        isUpdate.ProfessionalEngineerTime2 = null;
                        isUpdate.ConstructionManagerTime2  = null;
                        isUpdate.ProjectManagerTime2       = null;
                    }
                    else
                    {
                        isUpdate.ReCheckDate = DateTime.Now;
                        Notices.States       = isUpdate.States = "5";
                    }
                    Funs.DB.SubmitChanges();
                    //// 整改明细反馈
                    var getViewList = this.CollectGridInfo();
                    if (getViewList != null && getViewList.Count() > 0)
                    {
                        foreach (var rItem in getViewList)
                        {
                            var getUpdateItem = Funs.DB.Check_RectifyNoticesItem.FirstOrDefault(x => x.RectifyNoticesItemId == rItem.RectifyNoticesItemId);
                            if (getUpdateItem != null)
                            {
                                if (this.drpReCheckOpinion.SelectedValue.Equals("false"))
                                {
                                    getUpdateItem.IsRectify = false;
                                }
                                else
                                {
                                    getUpdateItem.IsRectify = true;
                                }

                                Funs.DB.SubmitChanges();
                            }
                        }
                    }
                    bool flag = false;
                    if (this.drpReCheckOpinion.SelectedValue == "整改通过")
                    {
                        flag = true;
                    }
                    Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                    {
                        FlowOperateId    = SQLHelper.GetNewID(typeof(Model.Check_RectifyNoticesFlowOperate)),
                        RectifyNoticesId = isUpdate.RectifyNoticesId,
                        OperateName      = "总包单位安全经理/安全工程师复查",
                        OperateManId     = CurrUser.UserId,
                        Opinion          = this.drpReCheckOpinion.SelectedValue,
                        IsAgree          = flag,
                        OperateTime      = DateTime.Now,
                    };
                    BLL.Funs.DB.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                    BLL.Funs.DB.SubmitChanges();
                }
            }
            else
            {
                if (!string.IsNullOrEmpty(this.hdRectifyNoticesId.Text))
                {
                    Notices.RectifyNoticesId = this.hdRectifyNoticesId.Text;
                }
                else
                {
                    Notices.RectifyNoticesId = SQLHelper.GetNewID(typeof(Model.Check_RectifyNotices));
                }
                Notices.CompleteManId = this.CurrUser.UserId;
                Notices.CompleteDate  = DateTime.Now;
                Notices.Isprint       = "0";
                Notices.Isprintf      = "0";
                Notices.SignPerson    = this.drpSignPerson.SelectedValue;
                RectifyNoticesService.AddRectifyNotices(Notices);
                RectifyNoticesId = Notices.RectifyNoticesId;
                Model.Check_RectifyNotices Notices1 = RectifyNoticesService.GetRectifyNoticesById(RectifyNoticesId);

                Model.Check_RectifyNoticesFlowOperate newOItem = new Model.Check_RectifyNoticesFlowOperate
                {
                    FlowOperateId    = SQLHelper.GetNewID(typeof(Model.Check_RectifyNoticesFlowOperate)),
                    RectifyNoticesId = Notices1.RectifyNoticesId,
                    OperateName      = "检查人员下发整改单",
                    OperateManId     = this.CurrUser.UserId,
                    OperateTime      = DateTime.Now,
                };
                BLL.Funs.DB.Check_RectifyNoticesFlowOperate.InsertOnSubmit(newOItem);
                BLL.Funs.DB.SubmitChanges();

                var getViewList           = this.CollectGridInfo();
                var getRectifyNoticesItem = from x in getViewList
                                            select new Model.Check_RectifyNoticesItem
                {
                    RectifyNoticesItemId = x.RectifyNoticesItemId,
                    RectifyNoticesId     = Notices1.RectifyNoticesId,
                    WrongContent         = x.WrongContent,
                    Requirement          = x.Requirement,
                    LimitTime            = x.LimitTime,
                };
                if (getRectifyNoticesItem.Count() > 0)
                {
                    Funs.DB.Check_RectifyNoticesItem.InsertAllOnSubmit(getRectifyNoticesItem);
                    Funs.DB.SubmitChanges();
                }
            }

            ShowNotify("提交成功!", MessageBoxIcon.Success);
            PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
        }