/// <summary> /// 初始化方法 /// </summary> /// <remarks></remarks> private void Bind() { try { if (string.IsNullOrWhiteSpace(ID) == false) { int RID = Convert.ToInt32(ID); //将ID转换成Int类型 RB_RowsDto row = AutofacConfig.rBService.GetRowByRowID(RID); string TypeName = AutofacConfig.rBService.GetTypeNameByID(row.R_TypeID); title.TitleText = "消费记录"; TYPEID = row.R_TypeID; //消费类型编号 this.btnRBType.Text = TypeName; //消费类型名称 this.txtMoney.Text = row.R_Amount.ToString(); //消费金额 this.txtNote.Text = row.R_Note; //消费备注 } else { title.TitleText = "消费记录创建"; this.btnRBType.Text = "选择类型"; this.btnDelete.Visible = false; btnSave.Width = 280; btnSave.Left = 10; } } catch (Exception ex) { Toast(ex.Message); } }
/// <summary> /// 创建消费记录 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Press(object sender, EventArgs e) { try { if (string.IsNullOrEmpty(RBCC)) //判断成本中心是否已经选择 { throw new Exception("请选择成本中心!"); } else { RBInputDto RB = new RBInputDto(); //定义一个新的报销单 RB.CC_ID = RBCC; //成本中心编号 RB.RB_Note = this.TxtNote.Text; //报销单备注 //将选中的消费记录行项添加到报销单中 foreach (ListViewRow Row in listRBRowData.Rows) { frmRBCreateLayout layout = Row.Control as frmRBCreateLayout; //如果当前行项消费记录被选中 if (layout.checkNum() == 1) { //把选中行的消费记录行项的数据添加到报销单中 int RID = layout.getID(); RB_RowsDto RBRow = AutofacConfig.rBService.GetRowByRowID(RID); RB_RowsInputDto NewRBRow = new RB_RowsInputDto(); NewRBRow.R_ID = RBRow.R_ID; //消费记录编号 NewRBRow.R_TypeID = RBRow.R_TypeID; //消费类型编号 NewRBRow.R_Amount = RBRow.R_Amount; //消费记录金额 NewRBRow.R_Note = RBRow.R_Note; //消费记录日期 NewRBRow.R_ConsumeDate = RBRow.R_ConsumeDate; //消费日期 RB.RB_Rows.Add(NewRBRow); } } RB.RB_CreateUser = Client.Session["U_ID"].ToString(); //创建用户 ReturnInfo r = AutofacConfig.rBService.CreateRB(RB); if (r.IsSuccess == true) { //如果数据库添加报销记录成功 this.ShowResult = ShowResult.Yes; this.Close(); Toast("报销提交成功!"); } else { throw new Exception(r.ErrorInfo); } } } catch (Exception ex) { Toast(ex.Message); } }
/// <summary> /// 根据报销明细ID返回报销明细对象 /// </summary> /// <param name="ID">报销明细ID</param> public RB_RowsDto GetRowByRowID(int ID) { RB_RowsDto rr = Mapper.Map <RB_Rows, RB_RowsDto> (_rbrowsRepository.GetByID(ID).AsNoTracking().FirstOrDefault()); if (rr != null && !string.IsNullOrEmpty(rr.R_TypeID)) { RB_RType rt = _rbTypeRepository.GetByID(rr.R_TypeID); if (rt != null) { rr.R_TypeName = rt.RB_RT_Name; } } return(rr); }
/// <summary> /// 保存报销编辑 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Press(object sender, EventArgs e) { try { RBInputDto ReimBur = new RBInputDto(); ReimBur.RB_Rows = new List <RB_RowsInputDto>(); ReimBur.RB_ID = this.lblRBNO.Text; //报销单编号 ReimBur.CC_ID = RBCC; //成本中心编号 ReimBur.RB_Note = this.TxtNote.Text; //备注 //消费记录行项更改 foreach (ListViewRow Row in listRBRowData.Rows) { //判断消费记录是否选中 frmConsumption1Layout layout = Row.Control as frmConsumption1Layout; if (layout.checkNum() == 1) { //把选中行的Row的数据添加到报销单中 int RID = layout.getID(); RB_RowsDto RBRow = AutofacConfig.rBService.GetRowByRowID(RID); RB_RowsInputDto NewRBRow = new RB_RowsInputDto(); NewRBRow.R_ID = RBRow.R_ID; NewRBRow.R_TypeID = RBRow.R_TypeID; NewRBRow.R_Amount = RBRow.R_Amount; NewRBRow.R_Note = RBRow.R_Note; NewRBRow.R_ConsumeDate = RBRow.R_ConsumeDate; ReimBur.RB_Rows.Add(NewRBRow); } } ReturnInfo r = AutofacConfig.rBService.UpdateRB(ReimBur); //将报销记录更新到数据库中 if (r.IsSuccess == true) { this.ShowResult = ShowResult.Yes; this.Close(); Toast("报销提交成功!"); } else { throw new Exception(r.ErrorInfo); } } catch (Exception ex) { Toast(ex.Message); } }