protected override int OnSave(object sender, object neuObject) { if (this.fpSpread2_Sheet1.Tag == null || this.fpSpread2_Sheet1.Tag.ToString() == "") { MessageBox.Show("请先选择一个科室!", "提示"); return(-1); } Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(); //t.BeginTransaction(); try { if (this.tabMgr == null) { this.tabMgr = new Neusoft.HISFC.BizProcess.Integrate.Registration.Tabulation(); } tabMgr.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); for (int i = 0; i < this.fpSpread2_Sheet1.RowCount; i++) { Neusoft.HISFC.Models.Registration.WorkType obj = (Neusoft.HISFC.Models.Registration.WorkType) this.fpSpread2_Sheet1.Rows[i].Tag; //先删除 if (tabMgr.Delete(this.fpSpread2_Sheet1.Tag.ToString(), obj.ID) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(tabMgr.Err, "提示"); return(-1); } if (tabMgr.Insert(this.fpSpread2_Sheet1.Tag.ToString(), obj) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(tabMgr.Err, "提示"); return(-1); } } Neusoft.FrameWork.Management.PublicTrans.Commit(); } catch (Exception e) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(e.Message, "提示"); return(-1); } MessageBox.Show("保存成功!", "提示"); return(base.OnSave(sender, neuObject)); }
/// <summary> /// 保存 /// </summary> /// <returns></returns> public int Save() { //验证 if (valid() == -1) { return(-1); } //安排序号 string arrangeID = DateTime.Parse(fpSpread1_Sheet1.ColumnHeader.Cells[0, 2].Text).ToString("yyyyMMdd") + DateTime.Parse(fpSpread1_Sheet1.ColumnHeader.Cells[0, 8].Text).ToString("yyyyMMdd"); string deptID = this.Tag.ToString();//科室代码 Neusoft.FrameWork.Management.PublicTrans.BeginTransaction(); //Neusoft.FrameWork.Management.Transaction t = new Neusoft.FrameWork.Management.Transaction(this.personMgr.Connection); //t.BeginTransaction(); tabMgr.SetTrans(Neusoft.FrameWork.Management.PublicTrans.Trans); try { //删除已经保存的排班记录 if (tabMgr.DeleteTabular(arrangeID, deptID) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(this.tabMgr.Err, "提示"); return(-1); } //添加排班记录 for (int i = 0; i < fpSpread1_Sheet1.RowCount; i++) { //员工代码 string emplID = (fpSpread1_Sheet1.GetTag(i, 1) as Neusoft.HISFC.Models.Base.Employee).ID; for (int j = 2; j < 9; j++) { if (fpSpread1_Sheet1.GetTag(i, j) != null) { //排班日期 DateTime workDate = DateTime.Parse(fpSpread1_Sheet1.ColumnHeader.Cells[0, j].Text); tabular = new Neusoft.HISFC.Models.Registration.Tabulation(); tabular.Kind = (Neusoft.HISFC.Models.Registration.WorkType)fpSpread1_Sheet1.GetTag(i, j); // tabular.arrangeID = arrangeID; //安排序号 tabular.DeptID = deptID; //科室 tabular.EmplID = emplID; tabular.Workdate = workDate; tabular.OperID = var.ID; tabular.Memo = fpSpread1_Sheet1.GetNote(i, j); tabular.SortID = 2 * i; if (tabMgr.Insert(tabular) == -1) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(tabMgr.Err, "提示"); return(-1); } } } } Neusoft.FrameWork.Management.PublicTrans.Commit(); } catch (Exception e) { Neusoft.FrameWork.Management.PublicTrans.RollBack(); MessageBox.Show(e.Message, "提示"); return(-1); } MessageBox.Show("安排成功!", "提示"); return(0); }