コード例 #1
0
        public async Task <JsonResult> ConfirmCode([FromBody] getFullParamViewModel ListFullParam, string code)
        {
            CM_Customer customer = await this.SaleOrderBLL.FindUserByCMND(ListFullParam.Customer.CMND);

            bool isSuccess = await SaleOrderBLL.ConfirmCode(customer, code);

            return(Json(new ResponseMessage {
                Message = SaleOrderBLL.Message, IsSuccess = isSuccess, errorSaleOrder = SaleOrderBLL.enumErrorSaleOrder
            }));
        }
コード例 #2
0
        public async Task <JsonResult> GetFullParam([FromBody] getFullParamViewModel ListFullParam)
        {
            var         i = 0;
            CM_Customer CurrentCustomer = new CM_Customer()
            {
                CustomerName     = ListFullParam.Customer.Name,
                CustomerPhone    = ListFullParam.Customer.Phone,
                CMND             = ListFullParam.Customer.CMND,
                TypeCustomerEnum = Common.Enum.SM.TypeCustomerEnum.KVL
            };

            #region validateSaleOrder
            SaleOrder CurrentSaleOrder = new SaleOrder()
            {
                ReceiveAddress   = ListFullParam.saleOrder.ReceiveAddress,
                TotalPrice       = ListFullParam.saleOrder.TotalPrice,
                PaymentMethod    = (Common.Enum.SM.PaymentMethod)ListFullParam.saleOrder.PaymentMethod,
                DistrictID       = ListFullParam.saleOrder.DistrictID,
                TransportPriceID = ListFullParam.saleOrder.TransportTypeID,
            };
            CurrentSaleOrder.TransportTypePrice = await GetTransportPrice(ListFullParam.saleOrder.TransportPriceID, ListFullParam.saleOrder.TransportTypeID);

            if (CurrentSaleOrder.TransportTypePrice == -1)
            {
                return(Json(new ResponseMessage {
                    Message = "Vui long chon nha van chuyen ", IsSuccess = false
                }));
            }
            #endregion
            List <SaleOrderDetail> CurrentSaleDetails = new List <SaleOrderDetail>();

            foreach (var item in ListFullParam.saleOrderDetails)
            {
                var productDetails = await ProductDetailsBLL.Find(item.ProductDetailIDSale);

                SaleOrderDetail temp = new SaleOrderDetail()
                {
                    ProductDetailId = item.ProductDetailIDSale,
                    Quality         = item.QuantitySale,
                    ProductDetail   = productDetails
                };
                CurrentSaleDetails.Add(temp);
            }
            var isSuccess = await SaleOrderBLL.CreateBill(CurrentCustomer, CurrentSaleOrder, CurrentSaleDetails);

            string BaseUrl = string.Format("{0}://{1}", HttpContext.Request.Scheme, HttpContext.Request.Host);

            if (isSuccess)
            {
                if (CurrentSaleOrder.PaymentMethod == Common.Enum.SM.PaymentMethod.Paypal)
                {
                    string SuccessUrl = BaseUrl + Url.Action("ExcutePayment", "Bill");
                    string ErrorUrl   = BaseUrl + Url.Action("ErrorBill", "Bill");
                    var    payment    = await this._paypalServicesGatewayBLL.CreatePayment(SuccessUrl, ErrorUrl, CurrentSaleOrder, CurrentSaleDetails, CurrentCustomer);

                    CurrentSaleOrder.AuthenticationMethodGuid = payment.Id;
                    await this.SaleOrderBLL.Update(CurrentSaleOrder);



                    return(Json(new ResponseMessage {
                        Message = SaleOrderBLL.Message, IsSuccess = isSuccess, errorSaleOrder = SaleOrderBLL.enumErrorSaleOrder, RedirectoURl = payment.Links[1].Href
                    }));
                }
                else if (CurrentSaleOrder.PaymentMethod == Common.Enum.SM.PaymentMethod.GDTT)
                {
                    string SuccessUrl = BaseUrl + Url.Action("PaymentTTTN", "Bill");
                    string ErrorUrl   = BaseUrl + Url.Action("ErrorBill", "Bill");
                    return(Json(new ResponseMessage {
                        Message = SaleOrderBLL.Message, IsSuccess = isSuccess, errorSaleOrder = SaleOrderBLL.enumErrorSaleOrder, RedirectoURl = SuccessUrl
                    }));
                }
                else if (CurrentSaleOrder.PaymentMethod == Common.Enum.SM.PaymentMethod.NganLuong)
                {
                    var    ReturnUrlNganLuong = BaseUrl + Url.Action("PaymentTTTN", "Bill");
                    string Note           = "WEB BMT";
                    string UrlNLRedirecto = "https://www.nganluong.vn/[email protected]&product_name=" + CurrentSaleOrder.ID + "&price=" + CurrentSaleOrder.TotalPrice + "&return_url=" + ReturnUrlNganLuong + "&comments=" + Note;

                    return(Json(new ResponseMessage {
                        Message = SaleOrderBLL.Message, IsSuccess = isSuccess, errorSaleOrder = SaleOrderBLL.enumErrorSaleOrder, RedirectoURl = UrlNLRedirecto
                    }));
                }
                return(Json(new ResponseMessage {
                    Message = SaleOrderBLL.Message, IsSuccess = isSuccess, errorSaleOrder = SaleOrderBLL.enumErrorSaleOrder
                }));
            }
            else
            {
                return(Json(new ResponseMessage {
                    Message = SaleOrderBLL.Message, IsSuccess = isSuccess, errorSaleOrder = SaleOrderBLL.enumErrorSaleOrder
                }));
            }
        }