public ProcessEdit(string processid, string action) { InitializeComponent(); this.action = action; this.editprocess = processM.GetProcessbyid(processid); Formload(); this.textBox_name.Text = editprocess.processname; if (editprocess.Processpre != null) { this.comboBox_procespre.Text = (processM.GetProcessbyid(editprocess.Processpre)).processname; } this.comboBox_rule.Text = editprocess.andrule; this.textBox_description.Text = editprocess.descript; this.comboBox_condition.Text = editprocess.condition; // this.comboBox_procespre.Properties.Items.Remove(editprocess.processname); BL.accepterattribManager accepm = new Book.BL.accepterattribManager(); Model.accepterattrib a = null; foreach (Model.accepterattrib at in accepm.Select()) { if (at.processId == processid) { a = at; } } if (a != null) { string acceid = a.RoleId; foreach (Model.Operators op in (new BL.OperatorsManager()).Select()) { if (op.OperatorsId == acceid) { this.currentoperators = op; } } } }
//重写 protected override void Save() { if (!this.gridView1.PostEditor() || !this.gridView1.UpdateCurrentRow()) { return; } switch (action) { case "insert": Model.process preprocess = new Book.Model.process(); foreach (Model.process pro in processlist) { if (pro.processname == this.comboBox_procespre.Text) { preprocess = pro; } } Model.process nextprocess = processM.GetProcessbyid(preprocess.Processnex); //待添加的过程 Model.process currentproccess = new Book.Model.process(); currentproccess.WorkflowId = wid; currentproccess.processId = Guid.NewGuid().ToString(); if (this.checkname(wid, this.textBox_name.Text)) { currentproccess.processname = this.textBox_name.Text; currentproccess.andrule = this.comboBox_rule.Text; currentproccess.condition = this.comboBox_condition.Text; currentproccess.descript = this.textBox_description.Text; currentproccess.Processpre = preprocess.processId; currentproccess.Processnex = nextprocess == null ? null : nextprocess.processId; currentproccess.InsertTime = DateTime.Now; currentproccess.number = 1; currentproccess.processType = "中间"; preprocess.Processnex = currentproccess.processId; if (nextprocess != null) { nextprocess.Processpre = currentproccess.processId; } processM.Insert(currentproccess); processM.Update(preprocess); processM.Update(nextprocess); BL.accepterattribManager accepterm = new Book.BL.accepterattribManager(); Model.accepterattrib accepter = new Book.Model.accepterattrib(); IList <Model.Role> mrlist = (from Model.Role r in this.mSelectRole where r.Checked == true select r).ToList <Model.Role>(); foreach (Model.Role currentRole in mrlist) { accepter.accepterattribID = Guid.NewGuid().ToString(); accepter.processId = currentproccess.processId; accepter.acceptertype = "个人"; accepter.RoleId = currentRole.RoleId; accepterm.Insert(accepter); } } break; case "update": updateprocess(); break; } }