Beispiel #1
0
        /// <summary>
        /// 添加用户充值订单表
        /// </summary>
        /// <param name="model">用户充值订单表</param>
        /// <returns>是否成功</returns>
        public ResultModel AddZJ_RechargeOrder(ZJ_RechargeOrderModel model)
        {
            var result = new ResultModel
            {
                Data = _database.Db.ZJ_RechargeOrder.Insert(model)
            };

            return(result);
        }
Beispiel #2
0
        /// <summary>
        /// web 账户充值(第三方充值成功)
        /// </summary>
        /// <param name="RechargeAmount">充值金额</param>
        /// <param name="Radiochecked">第三方充值方式通道</param>
        /// <param name="UserID">用户ID</param>
        ///  <param name="Account">登录名</param>
        ///  <param name="AddOrCutType">充值类型(账户充值1)</param>
        ///  <param name="OrderNo">订单编号</param>
        ///  <param name="OrderSource">来源0:网站,1移动设备</param>
        /// <returns></returns>
        public ResultModel AccountRechargeWebs(AccountRechargeModel armodel)
        {
            var result = new ResultModel();


            #region 用户余额信息表 和其对应的资金流水账
            //用户余额信息表(前台)
            ZJ_UserBalanceModel zjubModel = new ZJ_UserBalanceModel();
            zjubModel.UserID   = armodel.UserID;
            zjubModel.UpdateBy = "前台账户自己充值";
            zjubModel.UpdateDT = DateTime.Now;
            //用户账户金额异动记录表(资金流水账)
            ZJ_UserBalanceChangeLogModel zjublModel = new ZJ_UserBalanceChangeLogModel();
            zjublModel.Account        = armodel.Account;
            zjublModel.AddOrCutAmount = armodel.AddOrCutAmount;
            zjublModel.AddOrCutType   = armodel.AddOrCutType;
            zjublModel.CreateBy       = armodel.Account == null ? "前台登录名为空" : armodel.Account;
            zjublModel.CreateDT       = DateTime.Now;
            if (armodel.AddOrCutAmount >= 0)
            {
                zjublModel.IsAddOrCut = 1;
            }
            else
            {
                zjublModel.IsAddOrCut = 0;
            }
            zjublModel.IsDisplay = 1;
            zjublModel.OrderNo   = armodel.OrderNo;
            zjublModel.Remark    = "前台账户充值";
            zjublModel.UserID    = armodel.UserID;
            #endregion

            #region 用户充值订单
            //用户充值订单
            ZJ_RechargeOrderModel zjroModel = new ZJ_RechargeOrderModel();

            zjroModel.OrderNO = armodel.OrderNo;

            zjroModel.RechargeResult = 1;

            #endregion

            #region 订单支付信息表
            //订单支付信息表
            PaymentOrderModel poModel = new PaymentOrderModel();
            poModel.PaymentOrderID = armodel.PaymentOrderID;
            poModel.Flag           = 2;
            poModel.outOrderId     = armodel.outOrderId;

            #endregion

            result = AccountRechargeWeb(zjubModel, zjublModel, poModel, zjroModel, zjublModel);


            return(result);
        }
        /// <summary>
        /// 添加 用户充值订单表(第三方用户没有返汇前添加)
        /// </summary>
        /// <param name="RechargeAmount">充值金额</param>
        /// <param name="Radiochecked">第三方充值方式通道</param>
        /// <param name="UserID">用户ID</param>
        /// <param name="OrderSource">来源0:网站,1移动设备</param>
        ///  <param name="OrderNO">用户充值订单表ID</param>
        ///   <param name="PaymentOrderID">订单支付信息表ID</param>
        /// <returns></returns>
        public ResultModel InsertAddZJ_RechargeOrder(AccountRechargeModel armodel, ERechargeOrderPrefix prefix, out string OrderNO, out string PaymentOrderID)
        {
            var result = new ResultModel();

            #region 用户充值订单表
            ZJ_RechargeOrderModel zjroModel = new ZJ_RechargeOrderModel();
            zjroModel.CreateDT        = DateTime.Now;
            zjroModel.IsDisplay       = 1;
            zjroModel.OrderNO         = EnumDescription.GetFieldText(prefix) + MemCacheFactory.GetCurrentMemCache().Increment("commonId").ToString();//这里是为了区分商品订单还是充值订单
            zjroModel.OrderSource     = armodel.OrderSource;
            zjroModel.RechargeAmount  = armodel.AddOrCutAmount;
            zjroModel.RechargeChannel = armodel.RechargeChannel;
            zjroModel.RechargeDT      = DateTime.Now;
            zjroModel.RechargeResult  = 0;//默认是失败的
            zjroModel.UserID          = armodel.UserID;

            OrderNO = zjroModel.OrderNO;
            #endregion

            #region 订单支付信息表
            //订单支付信息表
            PaymentOrderModel poModel = new PaymentOrderModel();
            poModel.Flag           = 1;
            poModel.outOrderId     = "";
            poModel.PaymentDate    = DateTime.Now;
            poModel.PaymentOrderID = MemCacheFactory.GetCurrentMemCache().Increment("commonId").ToString();
            poModel.PayType        = 2;//支付类型(1:商城订单支付,2充值支付)
            poModel.ProductAmount  = armodel.AddOrCutAmount;
            poModel.RealAmount     = armodel.AddOrCutAmount;
            poModel.UserID         = armodel.UserID;
            poModel.CreateDT       = DateTime.Now;
            poModel.PayChannel     = armodel.RechargeChannel;
            //订单支付信息与订单关联记录表
            PaymentOrder_OrdersModel pooModel = new PaymentOrder_OrdersModel();
            pooModel.OrderID  = zjroModel.OrderNO;
            pooModel.RelateID = MemCacheFactory.GetCurrentMemCache().Increment("commonId");

            pooModel.PaymentOrderID = poModel.PaymentOrderID;

            #endregion
            result = _zjUserBalanceServiceWeb.AccountRechargeFailure(zjroModel, pooModel, poModel);

            PaymentOrderID = poModel.PaymentOrderID;
            return(result);
        }
        public void ZJ_RechargeOrderService_AddZJ_RechargeOrder()
        {
            var model = new ZJ_RechargeOrderModel
            {
                UserID          = 1,
                OrderNO         = "asdfasdf22342344",
                RechargeChannel = 50,
                RechargeAmount  = 1,
                RechargeDT      = DateTime.Now,
                RechargeResult  = 0,
                IsDisplay       = 0,
                OrderSource     = 0,
                CreateDT        = DateTime.Now
            };



            var result = this._zjRechargeOrderService.AddZJ_RechargeOrder(model);

            Assert.IsTrue(result.IsValid);
        }
Beispiel #5
0
        /// <summary>
        /// web 账户充值(没有跳转到第三方前)
        /// </summary>
        /// <param name="zjoModel">用户充值订单表</param>
        /// <param name="poomodel">订单支付信息与订单关联记录表</param>
        /// <param name="pomodel">订单支付信息表</param>
        /// <returns></returns>
        public ResultModel AccountRechargeFailure(ZJ_RechargeOrderModel zjoModel, PaymentOrder_OrdersModel poomodel, PaymentOrderModel pomodel)
        {
            var result = new ResultModel();

            using (var tx1 = _database.Db.BeginTransaction())
            {
                try
                {
                    InserZJ_RechargeOrder(zjoModel, tx1);

                    InsertPaymentOrder(poomodel, pomodel, tx1);
                    tx1.Commit();
                }
                catch (Exception ex)
                {
                    tx1.Rollback();

                    result.IsValid = false;
                    result.Messages.Add(ex.Message);
                }
            }
            return(result);
        }
        /// <summary>
        /// web 账户充值(第三方充值成功)
        /// </summary>
        /// <param name="RechargeAmount">充值金额</param>
        /// <param name="Radiochecked">第三方充值方式通道</param>
        /// <param name="UserID">用户ID</param>
        ///  <param name="Account">登录名</param>
        ///  <param name="AddOrCutType">充值类型(账户充值1)</param>
        ///  <param name="OrderNo">订单编号</param>
        ///  <param name="OrderSource">来源0:网站,1移动设备</param>
        /// <returns></returns>
        public ResultModel AccountRechargeWeb(AccountRechargeModel armodel)
        {
            var result = new ResultModel();


            #region 用户余额信息表 和其对应的资金流水账
            //用户余额信息表(前台)
            ZJ_UserBalanceModel zjubModel = new ZJ_UserBalanceModel();
            zjubModel.UserID   = armodel.UserID;
            zjubModel.UpdateBy = "前台账户自己充值";
            zjubModel.UpdateDT = DateTime.Now;
            //用户账户金额异动记录表(资金流水账)
            ZJ_UserBalanceChangeLogModel zjublModel = new ZJ_UserBalanceChangeLogModel();
            zjublModel.Account        = armodel.Account;
            zjublModel.AddOrCutAmount = armodel.AddOrCutAmount;
            zjublModel.AddOrCutType   = armodel.AddOrCutType;
            zjublModel.CreateBy       = armodel.Account == null ? "前台登录名为空" : armodel.Account;
            zjublModel.CreateDT       = DateTime.Now;
            if (armodel.AddOrCutAmount >= 0)
            {
                zjublModel.IsAddOrCut = 1;
            }
            else
            {
                zjublModel.IsAddOrCut = 0;
            }
            zjublModel.IsDisplay = 1;
            zjublModel.OrderNo   = armodel.OrderNo;
            zjublModel.Remark    = "前台账户充值";
            zjublModel.UserID    = armodel.UserID;
            #endregion

            #region 用户充值订单
            //用户充值订单
            ZJ_RechargeOrderModel zjroModel = new ZJ_RechargeOrderModel();

            zjroModel.OrderNO = armodel.OrderNo;

            zjroModel.RechargeResult = 1;

            #endregion

            #region 订单支付信息表
            //订单支付信息表
            PaymentOrderModel poModel = new PaymentOrderModel();
            poModel.PaymentOrderID = armodel.PaymentOrderID;
            poModel.Flag           = 2;
            poModel.outOrderId     = armodel.outOrderId;
            //poModel.outOrderId = armodel.OrderNo;
            //poModel.PaymentDate = DateTime.Now;

            //poModel.PayType = 1;
            //poModel.ProductAmount = armodel.AddOrCutAmount;
            //poModel.RealAmount = armodel.AddOrCutAmount;
            //poModel.UserID = armodel.UserID;
            ////订单支付信息与订单关联记录表
            //PaymentOrder_OrdersModel pooModel = new PaymentOrder_OrdersModel();
            //pooModel.OrderID = armodel.OrderNo;
            //pooModel.RelateID = MemCacheFactory.GetCurrentMemCache().Increment("commonId");
            #endregion

            result = _zjUserBalanceServiceWeb.AccountRechargeWeb(zjubModel, zjublModel, poModel, zjroModel, zjublModel);


            return(result);
        }
 public static ZJ_RechargeOrder ToEntity(this ZJ_RechargeOrderModel model)
 {
     return(Mapper.Map <ZJ_RechargeOrder>(model));
 }
Beispiel #8
0
 /// <summary>
 /// 添加用户充值订单表
 /// </summary>
 /// <param name="zjoModel">用户充值订单表Model</param>
 /// <param name="ulogModel">用户账户金额异动记录表model</param>
 /// <param name="tx"></param>
 public void InserZJ_RechargeOrder(ZJ_RechargeOrderModel zjoModel, ZJ_UserBalanceChangeLogModel ulogModel, dynamic tx)
 {
     tx.ZJ_RechargeOrder.Insert(zjoModel);
     tx.ZJ_UserBalanceChangeLog.Insert(ulogModel);
 }
Beispiel #9
0
        /// <summary>
        /// web 账户充值(成功)
        /// </summary>
        /// <param name="model">用户余额信息表model</param>
        /// <param name="ulogModel">用户账户金额异动记录表model</param>
        /// <param name="poomodel">订单支付信息表model</param>
        /// <param name="pomodel">订单支付信息与订单关联记录表model</param>
        /// <returns></returns>
        public ResultModel AccountRechargeWeb(ZJ_UserBalanceModel model, ZJ_UserBalanceChangeLogModel ulogModel, PaymentOrderModel pomodel, ZJ_RechargeOrderModel zjoModel, ZJ_UserBalanceChangeLogModel zjoulogModel)
        {
            var result = new ResultModel();

            using (var tx1 = _database.Db.BeginTransaction())
            {
                try
                {
                    UpdateZJ_RechargeOrder(zjoModel, tx1);

                    UpdatePaymentOrder(pomodel, tx1);

                    UpdateZJ_UserBalance(model, ulogModel, tx1);

                    tx1.Commit();
                }
                catch (Exception ex)
                {
                    tx1.Rollback();

                    result.IsValid = false;
                    result.Messages.Add(ex.Message);
                }
            }
            return(result);
        }
Beispiel #10
0
 /// <summary>
 /// 第三方充值成功修改用户充值订单表订单状态
 /// </summary>
 /// <param name="zjoModel"></param>
 /// <param name="tx"></param>
 public void UpdateZJ_RechargeOrder(ZJ_RechargeOrderModel zjoModel, dynamic tx)
 {
     tx.ZJ_RechargeOrder.UpdateByOrderNO(OrderNO: zjoModel.OrderNO, RechargeResult: zjoModel.RechargeResult);
 }
Beispiel #11
0
 /// <summary>
 /// 添加用户充值订单表
 /// </summary>
 /// <param name="zjoModel">用户充值订单表Model</param>
 /// <param name="tx"></param>
 public void InserZJ_RechargeOrder(ZJ_RechargeOrderModel zjoModel, dynamic tx)
 {
     tx.ZJ_RechargeOrder.Insert(zjoModel);
 }