public bool SaveRecharge(CompanyAccountRecordInfo accountRecordInfo) { bool pass = true; accountRecordInfo.CreateTime = DateTime.Now; using (EntityContext context = Session.CreateContext()) { try { context.BeginTransaction(); CompanyAccountInfo accountInfo = new CompanyAccountInfo() { CompanyId = accountRecordInfo.CompanyId, AccountId = accountRecordInfo.AccountId, AccountBalance = accountRecordInfo.AccountBalance + accountRecordInfo.Money }; context.Save <CompanyAccountInfo>("hr.company.updateCompanyAccount", accountInfo); context.Save <CompanyAccountRecordInfo>("hr.company.insertCompanyAccountDetail", accountRecordInfo); context.Commit(); } catch { context.Rollback(); pass = false; } } return(pass); }
public bool CancelPayment(int paymentId, out string message) { Payment payment = LoadPayment(paymentId); payment.Status = 0; using (EntityContext context = Session.CreateContext()) { try { CompanyInfo companyInfo = context.Selete <CompanyInfo>("hr.company.findCompanyById", payment.CompanyId); CompanyAccountRecordInfo accountRecordInfo = new CompanyAccountRecordInfo(); accountRecordInfo.CompanyId = payment.CompanyId; accountRecordInfo.AccountId = companyInfo.AccountId; accountRecordInfo.AccountBalance = companyInfo.AccountBalance; accountRecordInfo.Money = payment.Total * -1; accountRecordInfo.CreateTime = DateTime.Now; context.BeginTransaction(); CompanyAccountInfo accountInfo = new CompanyAccountInfo() { CompanyId = accountRecordInfo.CompanyId, AccountId = accountRecordInfo.AccountId, AccountBalance = accountRecordInfo.AccountBalance - accountRecordInfo.Money }; context.Save <CompanyAccountInfo>("hr.company.updateCompanyAccount", accountInfo); context.Save <CompanyAccountRecordInfo>("hr.company.insertCompanyAccountDetail", accountRecordInfo); context.Save <Payment>("hr.payment.submitPayment", payment); context.Commit(); message = string.Format("本次从单位账户返还{0}元,账户余额{1}元。", payment.Total, accountInfo.AccountBalance); return(true); } catch (Exception e) { message = e.Message; context.Rollback(); return(false); } } }
public ActionResult SaveRecharge(int companyId, decimal money) { EmployeeManager manager = new EmployeeManager(); CompanyInfo company = manager.GetCompany(companyId); CompanyAccountRecordInfo recordInfo = new CompanyAccountRecordInfo() { AccountId = company.AccountId, CompanyId = companyId, Creator = BlueFramework.User.UserContext.CurrentUser.UserId, Money = money, AccountBalance = company.AccountBalance }; bool pass = manager.SaveRecharge(recordInfo); Object result = new { success = pass, data = pass?"充值成功!":"充值失败!" }; JsonResult jsonResult = Json(result, JsonRequestBehavior.AllowGet); return(jsonResult); }