コード例 #1
0
        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);
        }
コード例 #2
0
        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);
                }
            }
        }
コード例 #3
0
        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);
        }