예제 #1
0
        /// <summary>
        /// 创建订单
        /// </summary>
        /// <param name="orderCreateDto"></param>
        /// <returns></returns>
        private Tbl_Order AddOrderForRecharge(OrderRechargeDto orderRechargeDto)
        {
            //创建订单号
            string orderNo = OrderHelper.GenerateOrderNo();
            //订单
            Tbl_Order tbl_Order = new Tbl_Order
            {
                OrderNo           = orderNo,
                OpenId            = orderRechargeDto.OpenId,
                TicketName        = "充值",
                TotalAmount       = orderRechargeDto.Amount,
                PayType           = (int)PayType.Wechat,
                OrderStatus       = (int)OrderStatusType.NoPay,
                ValidityDateStart = DateTime.Now,
                ValidityDateEnd   = DateTime.Now,
                OrderType         = (int)OrderType.Recharge,
                CreateTime        = DateTime.Now,
                BookCount         = 1,
                Linkman           = "",
                Mobile            = "",
                TicketSource      = 1,
                PayAccount        = "",
                PayTradeNo        = "",
                SellerId          = 0,
                Price             = 0,
                UsedQuantity      = 0,
                Remark            = "",
                IDCard            = "",
                CreateUserId      = 0,
            };

            _orderRepository.Add(tbl_Order);
            return(tbl_Order);
        }
예제 #2
0
        /// <summary>
        /// 充值
        /// </summary>
        /// <param name="orderCreateDto"></param>
        public Tbl_Order Recharge(OrderRechargeDto orderRechargeDto)
        {
            var tbl_Order = AddOrderForRecharge(orderRechargeDto);

            _orderDetailService.AddForRecharge(tbl_Order);
            return(tbl_Order);
        }
예제 #3
0
        public IHttpActionResult PostRecharge(OrderRechargeDto orderRechargeDto)
        {
            if (!ModelState.IsValid)
            {
                var message = ModelState.BuildErrorMessage();
                throw new SimplePromptException(message);
            }
            var orderCreateViewDto = _orderFacadeService.Recharge(orderRechargeDto);
            var result             = new TResult <OrderCreateViewDto>();

            return(Ok(result.SuccessResult(orderCreateViewDto)));
        }
예제 #4
0
        /// <summary>
        /// 充值
        /// </summary>
        /// <param name="orderCreateDto"></param>
        public OrderCreateViewDto Recharge(OrderRechargeDto orderRechargeDto)
        {
            _weiXinUserService.CheckIsExist(orderRechargeDto.OpenId);
            var tbl_Order = new Tbl_Order();

            using (var unitOfWork = new UnitOfWork())
            {
                tbl_Order = _orderService.Recharge(orderRechargeDto);
                unitOfWork.Commit();
            }
            var jsApiParameters = _wxPayService.PayOrderForTicket(tbl_Order);

            return(new OrderCreateViewDto
            {
                OrderNo = tbl_Order.OrderNo,
                JsApiParameters = jsApiParameters
            });
        }