using BLL; using BLL.CQMS.Comprehensive; using System; using System.Linq; namespace FineUIPro.Web.CQMS.Comprehensive { public partial class DesignChangeOrderEdit : PageBase { #region 定义变量 /// /// 主键 /// public string DesignChangeOrderId { get { return (string)ViewState["DesignChangeOrderId"]; } set { ViewState["DesignChangeOrderId"] = value; } } #endregion #region 加载页面 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { GetButtonPower(); BLL.CNProfessionalService.InitCNProfessionalDownList(this.drpCNProfessionalId, true); BLL.UnitWorkService.InitUnitWorkDownList(this.drpUnitWorks, this.CurrUser.LoginProjectId, false); BLL.UnitService.GetUnit(this.drpUnitIds, this.CurrUser.LoginProjectId, false); //LoadAuditSelect(); //this.agree.Hidden = true; //this.options.Hidden = true; this.DesignChangeOrderId = Request.Params["DesignChangeOrderId"]; Model.Comprehensive_DesignChangeOrder designChangeOrder = BLL.DesignChangeOrderService.GetDesignChangeOrderById(this.DesignChangeOrderId); if (designChangeOrder != null) { this.DesignChangeOrderId = designChangeOrder.DesignChangeOrderId; this.hdAttachUrl.Text = this.DesignChangeOrderId; if (!string.IsNullOrEmpty(designChangeOrder.CNProfessionalId)) { this.drpCNProfessionalId.SelectedValue = designChangeOrder.CNProfessionalId; } if (!string.IsNullOrEmpty(designChangeOrder.UnitWorkId)) { this.drpUnitWorks.SelectedValueArray = designChangeOrder.UnitWorkId.Split(','); } this.txtChangeOrderCode.Text = designChangeOrder.ChangeOrderCode; this.txtChangeReason.Text = designChangeOrder.ChangeReason; this.txtContents.Text = designChangeOrder.Contents; if (designChangeOrder.IssuedDate != null) { this.txtIssuedDate.Text = string.Format("{0:yyyy-MM-dd}", designChangeOrder.IssuedDate); } if (designChangeOrder.ApprovalDate != null) { this.txtApprovalDate.Text = string.Format("{0:yyyy-MM-dd}", designChangeOrder.ApprovalDate); } if (!string.IsNullOrEmpty(designChangeOrder.UnitId)) { this.drpUnitIds.SelectedValueArray = designChangeOrder.UnitId.Split(','); } if (designChangeOrder.CompleteDate != null) { this.txtCompleteDate.Text = string.Format("{0:yyyy-MM-dd}", designChangeOrder.CompleteDate); } //this.txtImplementationFrontState.Text = designChangeOrder.ImplementationFrontState; this.drpImplementationFrontState.SelectedValue= designChangeOrder.ImplementationFrontState; this.txtRemarkCode.Text = designChangeOrder.RemarkCode.HasValue ? designChangeOrder.RemarkCode.ToString() : ""; //var currApprove = DesignChangeOrderApproveService.GetCurrentApprove(designChangeOrder.DesignChangeOrderId); //if (currApprove != null) //{ // this.drpAudit.SelectedValue = currApprove.ApproveMan; // //重新编制 编制人 可以 显示 提交 保存按钮 // if (currApprove.ApproveType == BLL.Const.Comprehensive_ReCompile && designChangeOrder.CompileMan == CurrUser.UserId) // { // this.btnSubmit.Hidden = false; // this.btnSave.Hidden = false; // }//审核状态 审核人 可以显示 提交 保存按钮 // else if (currApprove.ApproveType == BLL.Const.Comprehensive_Audit && currApprove.ApproveMan == CurrUser.UserId) // { // //审核状态不可编辑 // Readonly(); // this.agree.Hidden = false; // this.options.Hidden = false; // this.btnSubmit.Hidden = false; // this.btnSave.Hidden = false; // } //}//没有当前审核人,已完成状态 或者 待提交状态 //else //{ // if (designChangeOrder.Status == BLL.Const.Comprehensive_Compile && designChangeOrder.CompileMan == CurrUser.UserId) // { // this.btnSubmit.Hidden = false; // this.btnSave.Hidden = false; // } //} } else { this.txtIssuedDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); this.txtApprovalDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); this.txtCompleteDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); this.btnSave.Hidden = false; //this.btnSubmit.Hidden = false; } } } /// /// 禁止编辑 /// public void Readonly() { this.txtApprovalDate.Readonly = true; txtChangeOrderCode.Readonly = true; txtChangeReason.Readonly = true; txtCompleteDate.Readonly = true; txtContents.Readonly = true; // txtImplementationFrontState.Readonly = true; txtIssuedDate.Readonly = true; drpCNProfessionalId.Readonly = true; drpUnitIds.Readonly = true; drpUnitWorks.Readonly = true; //this.drpAudit.Readonly = true; this.txtRemarkCode.Readonly = true; // this.btnAttach.Enabled = false; } /// /// 加载专业工程师 /// //public void LoadAuditSelect() //{ // var db = Funs.DB; // var userList = from x in db.Sys_User // join y in db.Project_ProjectUnit // on x.UnitId equals y.UnitId // join p in db.Project_ProjectUser // on x.UserId equals p.UserId // where y.UnitId == Const.UnitId_CWCEC && p.ProjectId == CurrUser.LoginProjectId && y.ProjectId == CurrUser.LoginProjectId // where p.RoleId.Contains(Const.ZBCNEngineer) // select new { UserId = x.UserId, UserName = x.UserName }; // drpAudit.DataValueField = "UserId"; // drpAudit.DataTextField = "UserName"; // this.drpAudit.DataSource = userList.ToList(); // this.drpAudit.DataBind(); //} #endregion #region 保存 /// /// 保存按钮 /// /// /// protected void btnSave_Click(object sender, EventArgs e) { if (drpCNProfessionalId.SelectedValue == BLL.Const._Null) { Alert.ShowInTop("请选择专业!", MessageBoxIcon.Warning); return; } var q = Funs.DB.Comprehensive_DesignChangeOrder.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.RemarkCode == Funs.GetNewInt(this.txtRemarkCode.Text.Trim()) && (x.DesignChangeOrderId != this.DesignChangeOrderId || (this.DesignChangeOrderId == null && x.DesignChangeOrderId != null))); if (q != null) { Alert.ShowInTop("标志编号已存在!", MessageBoxIcon.Warning); return; } Model.Comprehensive_DesignChangeOrder designChangeOrder = new Model.Comprehensive_DesignChangeOrder(); designChangeOrder.ProjectId = this.CurrUser.LoginProjectId; if (this.drpCNProfessionalId.SelectedValue != BLL.Const._Null) { designChangeOrder.CNProfessionalId = this.drpCNProfessionalId.SelectedValue; } designChangeOrder.ChangeOrderCode = this.txtChangeOrderCode.Text.Trim(); designChangeOrder.ChangeReason = this.txtChangeReason.Text.Trim(); designChangeOrder.Contents = this.txtContents.Text.Trim(); designChangeOrder.IssuedDate = Funs.GetNewDateTime(this.txtIssuedDate.Text); designChangeOrder.ApprovalDate = Funs.GetNewDateTime(this.txtApprovalDate.Text); designChangeOrder.CompleteDate = Funs.GetNewDateTime(this.txtCompleteDate.Text); designChangeOrder.ImplementationFrontState = this.drpImplementationFrontState.SelectedValue; //if (!string.IsNullOrEmpty(this.drpAudit.SelectedValue)) //{ // designChangeOrder.AuditMan = drpAudit.SelectedValue; //} //审核人 string unitWorks = string.Empty; var unitWorksList = this.drpUnitWorks.SelectedValueArray; foreach (var item in unitWorksList) { unitWorks += item + ","; } if (!string.IsNullOrEmpty(unitWorks)) { unitWorks = unitWorks.Substring(0, unitWorks.LastIndexOf(',')); } designChangeOrder.UnitWorkId = unitWorks; string unitIds = string.Empty; var unitLists = this.drpUnitIds.SelectedValueArray; foreach (var item in unitLists) { unitIds += item + ","; } if (!string.IsNullOrEmpty(unitIds)) { unitIds = unitIds.Substring(0, unitIds.LastIndexOf(',')); } designChangeOrder.UnitId = unitIds; designChangeOrder.RemarkCode = Funs.GetNewInt(this.txtRemarkCode.Text.Trim()); if (string.IsNullOrEmpty(this.DesignChangeOrderId)) { if (!string.IsNullOrEmpty(this.hdAttachUrl.Text)) { designChangeOrder.DesignChangeOrderId = this.hdAttachUrl.Text; } else { designChangeOrder.DesignChangeOrderId = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignChangeOrder)); this.hdAttachUrl.Text = designChangeOrder.DesignChangeOrderId; } designChangeOrder.CompileMan = this.CurrUser.UserId; designChangeOrder.CompileDate = DateTime.Now; designChangeOrder.Status = BLL.Const.Comprehensive_Compile; BLL.DesignChangeOrderService.AddDesignChangeOrder(designChangeOrder); } else { designChangeOrder.DesignChangeOrderId = this.DesignChangeOrderId; var model = Funs.DB.Comprehensive_DesignChangeOrder.Where(u => u.DesignChangeOrderId == this.DesignChangeOrderId).FirstOrDefault(); if (model != null) { designChangeOrder.Status = model.Status; } BLL.DesignChangeOrderService.UpdateDesignChangeOrder(designChangeOrder); } ShowNotify("保存成功!", MessageBoxIcon.Success); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } //protected void btnSubmit_Click(object sender, EventArgs e) //{ // if (drpCNProfessionalId.SelectedValue == BLL.Const._Null) // { // Alert.ShowInTop("请选择专业!", MessageBoxIcon.Warning); // return; // } // var q = Funs.DB.Comprehensive_DesignChangeOrder.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.RemarkCode == Funs.GetNewInt(this.txtRemarkCode.Text.Trim()) && (x.DesignChangeOrderId != this.DesignChangeOrderId || (this.DesignChangeOrderId == null && x.DesignChangeOrderId != null))); // if (q != null) // { // Alert.ShowInTop("标志编号已存在!", MessageBoxIcon.Warning); // return; // } // Model.Comprehensive_DesignChangeOrder designChangeOrder = new Model.Comprehensive_DesignChangeOrder(); // designChangeOrder.ProjectId = this.CurrUser.LoginProjectId; // if (this.drpCNProfessionalId.SelectedValue != BLL.Const._Null) // { // designChangeOrder.CNProfessionalId = this.drpCNProfessionalId.SelectedValue; // } // designChangeOrder.ChangeOrderCode = this.txtChangeOrderCode.Text.Trim(); // designChangeOrder.ChangeReason = this.txtChangeReason.Text.Trim(); // designChangeOrder.Contents = this.txtContents.Text.Trim(); // designChangeOrder.IssuedDate = Funs.GetNewDateTime(this.txtIssuedDate.Text); // designChangeOrder.ApprovalDate = Funs.GetNewDateTime(this.txtApprovalDate.Text); // designChangeOrder.CompleteDate = Funs.GetNewDateTime(this.txtCompleteDate.Text); // designChangeOrder.ImplementationFrontState = this.drpImplementationFrontState.SelectedValue; // if (!string.IsNullOrEmpty(this.drpAudit.SelectedValue)) // { // designChangeOrder.AuditMan = drpAudit.SelectedValue; // } //审核人 // string unitWorks = string.Empty; // var unitWorksList = this.drpUnitWorks.SelectedValueArray; // foreach (var item in unitWorksList) // { // unitWorks += item + ","; // } // if (!string.IsNullOrEmpty(unitWorks)) // { // unitWorks = unitWorks.Substring(0, unitWorks.LastIndexOf(',')); // } // designChangeOrder.UnitWorkId = unitWorks; // string unitIds = string.Empty; // var unitLists = this.drpUnitIds.SelectedValueArray; // foreach (var item in unitLists) // { // unitIds += item + ","; // } // if (!string.IsNullOrEmpty(unitIds)) // { // unitIds = unitIds.Substring(0, unitIds.LastIndexOf(',')); // } // designChangeOrder.UnitId = unitIds; // designChangeOrder.RemarkCode = Funs.GetNewInt(this.txtRemarkCode.Text.Trim()); // if (string.IsNullOrEmpty(this.DesignChangeOrderId)) // { // if (!string.IsNullOrEmpty(this.hdAttachUrl.Text)) // { // designChangeOrder.DesignChangeOrderId = this.hdAttachUrl.Text; // } // else // { // designChangeOrder.DesignChangeOrderId = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignChangeOrder)); // this.hdAttachUrl.Text = designChangeOrder.DesignChangeOrderId; // } // designChangeOrder.CompileMan = this.CurrUser.UserId; // designChangeOrder.CompileDate = DateTime.Now; // designChangeOrder.Status = BLL.Const.Comprehensive_Audit; // BLL.DesignChangeOrderService.AddDesignChangeOrder(designChangeOrder); // } // else // { // designChangeOrder.DesignChangeOrderId = this.DesignChangeOrderId; // var oldDesignChangeOrder = Funs.DB.Comprehensive_DesignChangeOrder.Where(u => u.DesignChangeOrderId == this.DesignChangeOrderId).FirstOrDefault(); // if (oldDesignChangeOrder == null) //数据库没有记录 直接点提交 当前状态为 审核状态 // { // designChangeOrder.CompileMan = this.CurrUser.UserId; // designChangeOrder.CompileDate = DateTime.Now; // designChangeOrder.Status = BLL.Const.Comprehensive_Audit; // BLL.DesignChangeOrderService.AddDesignChangeOrder(designChangeOrder); // } // else // { // designChangeOrder.CompileMan = oldDesignChangeOrder.CompileMan; // designChangeOrder.CompileDate = oldDesignChangeOrder.CompileDate; // if (oldDesignChangeOrder.Status == BLL.Const.Comprehensive_Compile)//编制状态提交变审核 // { // designChangeOrder.Status = BLL.Const.Comprehensive_Audit; // } // else if (oldDesignChangeOrder.Status == BLL.Const.Comprehensive_ReCompile)//重新编制状态提交变审核 // { // designChangeOrder.Status = BLL.Const.Comprehensive_Audit; // } // else //审核状态 提交 变 完成 或者 重新编制 // { // if (Convert.ToBoolean(rblIsAgree.SelectedValue)) // { // designChangeOrder.Status = BLL.Const.Comprehensive_Complete; // } // else // { // designChangeOrder.Status = BLL.Const.Comprehensive_ReCompile; // } // } // BLL.DesignChangeOrderService.UpdateDesignChangeOrder(designChangeOrder); // } // } // #region 审核记录 // var currApprove = DesignChangeOrderApproveService.GetCurrentApprove(designChangeOrder.DesignChangeOrderId); // if (currApprove == null) //为获取到为 当前编制状态 直接提交 // { // var approve = new Model.Comprehensive_DesignChangeOrderApprove(); // approve.DesignChangeOrderId = designChangeOrder.DesignChangeOrderId; // approve.ApproveMan = this.CurrUser.UserId; // approve.ApproveType = Const.Comprehensive_Compile; // approve.ApproveDate = DateTime.Now; // DesignChangeOrderApproveService.EditApprove(approve); //新增编制记录 // Model.Comprehensive_DesignChangeOrderApprove newApprove = new Model.Comprehensive_DesignChangeOrderApprove(); // newApprove.DesignChangeOrderId = designChangeOrder.DesignChangeOrderId; // newApprove.ApproveMan = this.drpAudit.SelectedValue; // newApprove.ApproveType = Const.InspectionManagement_Audit; // DesignChangeOrderApproveService.EditApprove(newApprove); //新增专业工程师审核记录 // } // else if (currApprove.ApproveMan == CurrUser.UserId) // { // if (currApprove.ApproveType == BLL.Const.Comprehensive_ReCompile) // { // currApprove.ApproveDate = DateTime.Now; // //currApprove.IsAgree = true; // DesignChangeOrderApproveService.EditApprove(currApprove); //新增专业工程师审核记录 // Model.Comprehensive_DesignChangeOrderApprove newApprove = new Model.Comprehensive_DesignChangeOrderApprove(); // newApprove.DesignChangeOrderId = designChangeOrder.DesignChangeOrderId; // newApprove.ApproveMan = this.drpAudit.SelectedValue; // newApprove.ApproveType = Const.InspectionManagement_Audit; // DesignChangeOrderApproveService.EditApprove(newApprove); //新增专业工程师审核记录 // } // else // { // currApprove.ApproveDate = DateTime.Now; //更新审核时间 // currApprove.IsAgree = Convert.ToBoolean(rblIsAgree.SelectedValue); // currApprove.ApproveIdea = this.txtidea.Text; // DesignChangeOrderApproveService.EditApprove(currApprove); // if (Convert.ToBoolean(rblIsAgree.SelectedValue)) //同意时 审批完成 // { // Model.Comprehensive_DesignChangeOrderApprove reApprove = new Model.Comprehensive_DesignChangeOrderApprove(); // reApprove.DesignChangeOrderId = currApprove.DesignChangeOrderId; // reApprove.ApproveDate = DateTime.Now.AddSeconds(10); // reApprove.ApproveMan = CurrUser.UserId; // reApprove.ApproveType = Const.Comprehensive_Complete; // //reApprove.ApproveIdea = txtidea.Text; // DesignChangeOrderApproveService.EditApprove(reApprove); // } // else // { // Model.Comprehensive_DesignChangeOrderApprove reApprove = new Model.Comprehensive_DesignChangeOrderApprove(); // reApprove.DesignChangeOrderId = currApprove.DesignChangeOrderId; // reApprove.ApproveMan = designChangeOrder.CompileMan; // reApprove.ApproveType = Const.Comprehensive_ReCompile; // DesignChangeOrderApproveService.EditApprove(reApprove); // } // } // } // #endregion // ShowNotify("保存成功!", MessageBoxIcon.Success); // PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); //} #endregion #region 附件上传 /// /// 附件上传 /// /// /// protected void btnAttach_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(this.hdAttachUrl.Text)) //新增记录 { this.hdAttachUrl.Text = SQLHelper.GetNewID(typeof(Model.Comprehensive_DesignChangeOrder)); } //Model.Comprehensive_DesignChangeOrder designChangeOrder = BLL.DesignChangeOrderService.GetDesignChangeOrderById(this.DesignChangeOrderId); //if (designChangeOrder.Status == BLL.Const.Comprehensive_Complete) //{ //PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/CQMS/DesignChangeOrder&menuId={1}", this.hdAttachUrl.Text, BLL.Const.DesignChangeOrderMenuId))); //} //else //{ PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/CQMS/DesignChangeOrder&menuId={1}", this.hdAttachUrl.Text, BLL.Const.DesignChangeOrderMenuId))); //} } #endregion #region 获取按钮权限 /// /// 获取按钮权限 /// /// /// private void GetButtonPower() { if (Request.Params["value"] == BLL.Const._Null) { return; } var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.DesignChangeOrderMenuId); if (buttonList.Count > 0) { if (buttonList.Contains(BLL.Const.BtnSave)) { this.btnSave.Hidden = false; } } } #endregion } }