示例#1
0
        EcommerceProductAction generateCheckoutProductAction(ActionData actionData, ProductActions productAction)
        {
            var pAction = new EcommerceProductAction().SetAction(productAction.ToString());

            if (actionData != null)
            {
                if (string.IsNullOrEmpty(actionData?.Id) &&
                    (productAction == ProductActions.purchase ||
                     productAction == ProductActions.refund))
                {
                    return(pAction);
                }
                else if (!string.IsNullOrEmpty(actionData?.Id))
                {
                    pAction.SetTransactionId(actionData.Id);
                }

                if (!string.IsNullOrEmpty(actionData?.Affiliation))
                {
                    pAction.SetAffiliation(actionData.Affiliation);
                }

                if (actionData?.Revenue != 0)
                {
                    pAction.SetRevenue(new NSNumber(actionData.Revenue));
                }

                if (actionData?.Tax != 0)
                {
                    pAction.SetTax(new NSNumber(actionData.Tax));
                }

                if (actionData?.Shipping != 0)
                {
                    pAction.SetShipping(new NSNumber(actionData.Shipping));
                }

                if (!string.IsNullOrEmpty(actionData?.Coupon))
                {
                    pAction.SetCouponCode(actionData.Coupon);
                }

                if (!string.IsNullOrEmpty(actionData?.List))
                {
                    pAction.SetProductActionList(actionData.List);
                }

                if (actionData?.Step != 0)
                {
                    pAction.SetCheckoutStep(new NSNumber(actionData.Step));
                }

                if (!string.IsNullOrEmpty(actionData?.Option))
                {
                    pAction.SetCheckoutOption(actionData.Option);
                }
            }

            return(pAction);
        }