using BLL; using Newtonsoft.Json.Linq; using System; using System.Data; using System.Data.SqlClient; using System.Collections.Generic; using System.Linq; using System.Web.UI.WebControls; using AspNet = System.Web.UI.WebControls; namespace FineUIPro.Web.CQMS.Plan { public partial class MainPlanEdit : PageBase { /// /// 主键 /// public string MainPlanId { get { return (string)ViewState["MainPlanId"]; } set { ViewState["MainPlanId"] = value; } } /// /// 办理类型 /// public string State { get { return (string)ViewState["State"]; } set { ViewState["State"] = value; } } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { MainPlanId = Request.Params["MainPlanId"]; this.drpHandleType.DataTextField = "Text"; this.drpHandleType.DataValueField = "Value"; this.HideOptions.Hidden = true; this.rblIsAgree.Hidden = true; this.drpPerson.DataTextField = "PersonName"; this.drpPerson.DataValueField = "PersonId"; this.drpPerson.DataSource = (from x in Funs.DB.Person_Persons where x.UnitId == Const.UnitId_SEDIN && x.DepartId == Const.Depart_constructionId && x.IsOffice == true select x).ToList(); this.drpPerson.DataBind(); Funs.FineUIPleaseSelect(this.drpPerson); if (!string.IsNullOrEmpty(MainPlanId)) { Model.Plan_MainPlan MainPlan = BLL.CQMS_MainPlanService.GetMainPlanByMainPlanId(MainPlanId); hdId.Text = this.MainPlanId; txtPlanCode.Text = MainPlan.PlanCode; txtFileName.Text = MainPlan.FileName; List list = BLL.CQMS_MainPlanApproveService.GetAudit3PersonIds(MainPlanId); if (list.Count > 0) { this.Audit.Hidden = false; this.drpPerson.SelectedValueArray = list.ToArray(); } gvApprove.DataSource = BLL.CQMS_MainPlanApproveService.getListData(this.MainPlanId); gvApprove.DataBind(); if (!string.IsNullOrEmpty(MainPlan.State)) { State = MainPlan.State; } else { State = BLL.Const.MainPlan_Compile; this.HideOptions.Hidden = true; this.rblIsAgree.Hidden = true; } if (State != BLL.Const.MainPlan_Complete.ToString()) { drpHandleType.DataSource = BLL.CQMS_MainPlanService.GetDHandleTypeByState(State, MainPlanId); drpHandleType.DataBind(); } if (State == BLL.Const.MainPlan_Compile || State == BLL.Const.MainPlan_ReCompile) { this.HideOptions.Visible = false; this.rblIsAgree.Visible = false; this.drpHandleMan.Enabled = true; } else { this.HideOptions.Hidden = false; this.rblIsAgree.Hidden = false; } if (State == Const.MainPlan_Audit2) { this.drpHandleMan.Enabled = false; } if (State == BLL.Const.MainPlan_Complete || !string.IsNullOrEmpty(Request.Params["see"])) { this.btnSave.Visible = false; this.btnSubmit.Visible = false; this.next.Hidden = true; } drpHandleType_SelectedIndexChanged(null, null); } else { string prefix = BLL.ProjectService.GetProjectCodeByProjectId(this.CurrUser.LoginProjectId) + "-ZBJH-"; txtPlanCode.Text = BLL.SQLHelper.RunProcNewId("SpGetThreeNumber", "Plan_MainPlan", "PlanCode", this.CurrUser.LoginProjectId, prefix); txtFileName.Text = "总包施工质量计划"; drpHandleType.DataSource = BLL.CQMS_MainPlanService.GetDHandleTypeByState(BLL.Const.MainPlan_Compile,string.Empty); drpHandleType.DataBind(); drpHandleType_SelectedIndexChanged(null, null); } } } protected void Grid1_Sort(object sender, GridSortEventArgs e) { } protected void WindowAtt_Close(object sender, WindowCloseEventArgs e) { } /// /// 时间转换 /// /// /// public string ConvertDate(object date) { if (date != null) { return string.Format("{0:yyyy-MM-dd}", Convert.ToDateTime(date)); } else { return null; } } /// /// 把状态转换代号为文字形式 /// /// /// protected string ConvertState(object state) { if (state != null) { if (state.ToString() == BLL.Const.MainPlan_ReCompile) { return "重新编制"; } else if (state.ToString() == BLL.Const.MainPlan_Compile) { return "编制"; } else if (state.ToString() == BLL.Const.MainPlan_Audit1) { return "施工经理审核"; } else if (state.ToString() == BLL.Const.MainPlan_Audit2) { return "部门评审小组审核"; } else if (state.ToString() == BLL.Const.MainPlan_Audit3) { return "审核"; } else if (state.ToString() == BLL.Const.MainPlan_Audit4) { return "项目经理批准"; } else if (state.ToString() == BLL.Const.MainPlan_Audit5) { return "评审小组组长确认"; } else if (state.ToString() == BLL.Const.MainPlan_Complete) { return "审批完成"; } else { return ""; } } return ""; } protected void imgBtnFile_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(hdId.Text)) { hdId.Text = SQLHelper.GetNewID(); } PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=1&toKeyId={0}&path=FileUpload/CQMS/Plan&menuId={1}", hdId.Text, BLL.Const.MainPlanMenuId))); } /// /// 同意审核单选框改变事件 /// /// /// protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e) { this.drpHandleMan.Enabled = true; string State = BLL.CQMS_MainPlanService.GetMainPlanByMainPlanId(this.MainPlanId).State; if (this.RadioButtonList1.SelectedValue.Equals("true")) { if (State == Const.MainPlan_Audit1) { var auditApproves = Funs.DB.Plan_MainPlanApprove.FirstOrDefault(x => x.MainPlanId == MainPlanId && x.ApproveType == Const.MainPlan_Audit3); if (auditApproves == null) //未进入小组评审 { this.drpHandleMan.Items.Clear(); Funs.FineUIPleaseSelect(this.drpHandleMan); this.drpHandleMan.Enabled = false; } else { SitePerson_PersonService.InitProjectUserListByProjectUnitTypeDropDownList(drpHandleMan, this.CurrUser.LoginProjectId, Const.ProjectUnitType_1, false); } } if (State == Const.MainPlan_Audit4) { this.drpHandleMan.Items.Clear(); Funs.FineUIPleaseSelect(this.drpHandleMan); this.drpHandleMan.Enabled = false; } this.drpHandleType.SelectedIndex = 0; if (State == Const.MainPlan_Audit2) { this.drpHandleMan.SelectedIndex = 2; } else { this.drpHandleMan.SelectedIndex = 0; } } else { this.drpHandleMan.Items.Clear(); Funs.FineUIPleaseSelect(drpHandleMan); this.drpHandleType.SelectedIndex = 1; ListItem item = new ListItem(); var user = BLL.Person_PersonsService.GetPerson_PersonsById(BLL.CQMS_MainPlanApproveService.GetAuditMan(this.MainPlanId, BLL.Const.MainPlan_Compile).ApproveMan); item.Value = user.PersonId; item.Text = user.PersonName; this.drpHandleMan.Items.Add(item); this.drpHandleMan.SelectedIndex = 1; } } /// /// 办理步骤下拉框改变事件 /// /// /// protected void drpHandleType_SelectedIndexChanged(object sender, EventArgs e) { this.drpHandleMan.Items.Clear(); Funs.FineUIPleaseSelect(this.drpHandleMan); if (this.drpHandleType.SelectedValue == BLL.Const.MainPlan_Complete || this.drpHandleType.SelectedValue == BLL.Const.MainPlan_Audit2) { this.drpHandleMan.Enabled = false; } else if (this.drpHandleType.SelectedValue == BLL.Const.MainPlan_ReCompile) { this.drpHandleMan.Enabled = true; string userId = (from x in Funs.DB.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Compile select x.ApproveMan).First(); ListItem lis = new ListItem(BLL.Person_PersonsService.GetPersonsNameById(userId), userId); this.drpHandleMan.Items.Add(lis); this.drpHandleMan.SelectedIndex = 0; } else if (this.drpHandleType.SelectedValue == BLL.Const.MainPlan_Audit5) { this.drpHandleMan.Enabled = true; string userId = (from x in Funs.DB.Plan_MainPlanApprove where x.MainPlanId == MainPlanId && x.ApproveType == BLL.Const.MainPlan_Audit2 select x.ApproveMan).First(); ListItem lis = new ListItem(BLL.Person_PersonsService.GetPersonsNameById(userId), userId); this.drpHandleMan.Items.Add(lis); this.drpHandleMan.SelectedIndex = 1; } else { this.drpHandleMan.Enabled = true; if (this.drpHandleType.SelectedValue == BLL.Const.MainPlan_Audit1) { SitePerson_PersonService.InitProjectUserListByProjectUnitTypeDropDownList(drpHandleMan, this.CurrUser.LoginProjectId, Const.ProjectUnitType_1, false); } else { SitePerson_PersonService.InitProjectUserListByProjectUnitTypeDropDownList(drpHandleMan, this.CurrUser.LoginProjectId, Const.ProjectUnitType_1, false); } this.drpHandleMan.SelectedIndex = 0; } } protected void btnSave_Click(object sender, EventArgs e) { if (validate()) { SaveMainPlan("save"); } } /// /// 保存 /// public void SaveMainPlan(string saveType) { Model.Plan_MainPlan MainPlan = new Model.Plan_MainPlan(); MainPlan.ProjectId = this.CurrUser.LoginProjectId; MainPlan.PlanCode = this.txtPlanCode.Text.Trim(); MainPlan.FileName = this.txtFileName.Text.Trim(); if (saveType == "submit") { MainPlan.State = this.drpHandleType.SelectedValue; } else { Model.Plan_MainPlan MainPlan1 = CQMS_MainPlanService.GetMainPlanByMainPlanId(MainPlanId); if (MainPlan1 != null) { if (string.IsNullOrEmpty(MainPlan1.State)) { MainPlan.State = BLL.Const.MainPlan_Compile; } else { MainPlan.State = MainPlan1.State; } } else { MainPlan.State = BLL.Const.MainPlan_Compile; } } if (!string.IsNullOrEmpty(MainPlanId)) { MainPlan.MainPlanId = MainPlanId; CQMS_MainPlanService.UpdateMainPlan(MainPlan); if (saveType == "submit") { Model.Plan_MainPlanApprove approve1 = BLL.CQMS_MainPlanApproveService.GetMainPlanApproveByMainPlanId(MainPlanId); approve1.ApproveDate = DateTime.Now; approve1.ApproveIdea = this.txtOpinions.Text.Trim(); approve1.IsAgree = Convert.ToBoolean(this.RadioButtonList1.SelectedValue); BLL.CQMS_MainPlanApproveService.UpdateMainPlanApprove(approve1); if (this.drpHandleMan.SelectedValue != BLL.Const._Null) { Model.Plan_MainPlanApprove approve = new Model.Plan_MainPlanApprove(); approve.MainPlanId = MainPlan.MainPlanId; approve.ApproveMan = this.drpHandleMan.SelectedValue; approve.ApproveType = this.drpHandleType.SelectedValue; BLL.CQMS_MainPlanApproveService.AddMainPlanApprove(approve); } } } else { if (string.IsNullOrEmpty(hdId.Text)) { MainPlan.MainPlanId = SQLHelper.GetNewID(); } else { MainPlan.MainPlanId = hdId.Text; } MainPlan.CompileMan = this.CurrUser.PersonId; MainPlan.CompileDate = DateTime.Now; CQMS_MainPlanService.AddMainPlan(MainPlan); if (saveType == "submit") { Model.Plan_MainPlanApprove approve1 = new Model.Plan_MainPlanApprove(); approve1.MainPlanId = MainPlan.MainPlanId; approve1.ApproveMan = this.CurrUser.PersonId; approve1.ApproveType = BLL.Const.MainPlan_Compile; approve1.ApproveDate = DateTime.Now; BLL.CQMS_MainPlanApproveService.AddMainPlanApprove(approve1); Model.Plan_MainPlanApprove approve = new Model.Plan_MainPlanApprove(); approve.MainPlanId = MainPlan.MainPlanId; if (this.drpHandleMan.SelectedValue != BLL.Const._Null) { approve.ApproveMan = this.drpHandleMan.SelectedValue; } approve.ApproveType = this.drpHandleType.SelectedValue; BLL.CQMS_MainPlanApproveService.AddMainPlanApprove(approve); } else { Model.Plan_MainPlanApprove approve1 = new Model.Plan_MainPlanApprove(); approve1.MainPlanId = MainPlan.MainPlanId; approve1.ApproveMan = this.CurrUser.PersonId; approve1.ApproveType = BLL.Const.MainPlan_Compile; BLL.CQMS_MainPlanApproveService.AddMainPlanApprove(approve1); } } LogService.AddSys_Log(CurrUser, MainPlan.PlanCode, MainPlan.MainPlanId, Const.MainPlanMenuId, "修改总包施工质量计划"); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } /// /// 表格数据验证 /// private bool validate() { bool res = false; string err = string.Empty; var att = BLL.AttachFileService.GetAttachFileByToKeyId(this.hdId.Text); if (att == null) { err += "请上传文件!"; } if (!string.IsNullOrWhiteSpace(err)) { Alert.ShowInTop(err, MessageBoxIcon.Warning); } else { res = true; } return res; } protected void btnSubmit_Click(object sender, EventArgs e) { if (validate()) { if (this.drpHandleMan.Enabled == true && this.drpHandleMan.SelectedValue == BLL.Const._Null) { Alert.ShowInTop("请选择办理人!", MessageBoxIcon.Warning); return; } SaveMainPlan("submit"); } } private string GetStringByArray(string[] array) { string str = string.Empty; foreach (var item in array) { if (item != BLL.Const._Null) { str += item + ","; } } if (!string.IsNullOrEmpty(str)) { str = str.Substring(0, str.LastIndexOf(",")); } return str; } } }