//修改过程 private void updateprocess() { Model.process propeocess1 = processM.GetProcessbyid(editprocess.Processpre); Model.process nextprocess1 = processM.GetProcessbyid(editprocess.Processpre); //修改名称 if (this.textBox_name.Text != editprocess.processname) { editprocess.processname = this.textBox_name.Text; } //修改规则 if (this.comboBox_rule.Text != editprocess.andrule) { editprocess.andrule = this.comboBox_rule.Text; } editprocess.condition = this.comboBox_condition.Text; //修改角色 IList <Model.Role> mrlist = (from Model.Role r in this.mSelectRole where r.Checked == true select r).ToList <Model.Role>(); //删除原有 this._accepterattribM.DeleteByProcessId(editprocess.processId); //新增 Model.accepterattrib accepter = new Book.Model.accepterattrib(); foreach (Model.Role r in mrlist) { accepter.accepterattribID = Guid.NewGuid().ToString(); accepter.processId = editprocess.processId; accepter.acceptertype = "个人"; accepter.RoleId = r.RoleId; this._accepterattribM.Insert(accepter); } //修改上一过程 if (this.comboBox_procespre.Text != propeocess1.processname) { Model.process proprocess2 = processM.SelectProcessbyname(this.comboBox_procespre.Text); Model.process nextprocess2 = processM.GetProcessbyid(proprocess2.Processnex); editprocess.Processpre = proprocess2.processId; editprocess.Processnex = nextprocess2.processId; propeocess1.Processnex = nextprocess1.processId; nextprocess1.Processpre = propeocess1.processId; proprocess2.Processnex = editprocess.processId; nextprocess2.Processpre = editprocess.processId; processM.Update(editprocess); processM.Update(propeocess1); processM.Update(nextprocess1); processM.Update(proprocess2); processM.Update(nextprocess2); return; } processM.Update(editprocess); }
//重写 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; } }