#!/usr/bin/env python # -*- coding: utf-8 -*- import json from alipay.aop.api.constant.ParamConstants import * from alipay.aop.api.domain.AgreementSignParams import AgreementSignParams from alipay.aop.api.domain.ExtUserInfo import ExtUserInfo from alipay.aop.api.domain.ExtendParams import ExtendParams from alipay.aop.api.domain.GoodsDetail import GoodsDetail from alipay.aop.api.domain.InvoiceInfo import InvoiceInfo from alipay.aop.api.domain.RoyaltyInfo import RoyaltyInfo from alipay.aop.api.domain.SettleInfo import SettleInfo from alipay.aop.api.domain.SubMerchant import SubMerchant class AlipayTradePagePayModel(object): def __init__(self): self._agreement_sign_params = None self._body = None self._business_params = None self._disable_pay_channels = None self._enable_pay_channels = None self._ext_user_info = None self._extend_params = None self._goods_detail = None self._goods_type = None self._integration_type = None self._invoice_info = None self._merchant_order_no = None self._out_trade_no = None self._passback_params = None self._product_code = None self._promo_params = None self._qr_pay_mode = None self._qrcode_width = None self._request_from_url = None self._royalty_info = None self._settle_info = None self._store_id = None self._sub_merchant = None self._subject = None self._time_expire = None self._timeout_express = None self._total_amount = None @property def agreement_sign_params(self): return self._agreement_sign_params @agreement_sign_params.setter def agreement_sign_params(self, value): if isinstance(value, AgreementSignParams): self._agreement_sign_params = value else: self._agreement_sign_params = AgreementSignParams.from_alipay_dict(value) @property def body(self): return self._body @body.setter def body(self, value): self._body = value @property def business_params(self): return self._business_params @business_params.setter def business_params(self, value): self._business_params = value @property def disable_pay_channels(self): return self._disable_pay_channels @disable_pay_channels.setter def disable_pay_channels(self, value): self._disable_pay_channels = value @property def enable_pay_channels(self): return self._enable_pay_channels @enable_pay_channels.setter def enable_pay_channels(self, value): self._enable_pay_channels = value @property def ext_user_info(self): return self._ext_user_info @ext_user_info.setter def ext_user_info(self, value): if isinstance(value, ExtUserInfo): self._ext_user_info = value else: self._ext_user_info = ExtUserInfo.from_alipay_dict(value) @property def extend_params(self): return self._extend_params @extend_params.setter def extend_params(self, value): if isinstance(value, ExtendParams): self._extend_params = value else: self._extend_params = ExtendParams.from_alipay_dict(value) @property def goods_detail(self): return self._goods_detail @goods_detail.setter def goods_detail(self, value): if isinstance(value, list): self._goods_detail = list() for i in value: if isinstance(i, GoodsDetail): self._goods_detail.append(i) else: self._goods_detail.append(GoodsDetail.from_alipay_dict(i)) @property def goods_type(self): return self._goods_type @goods_type.setter def goods_type(self, value): self._goods_type = value @property def integration_type(self): return self._integration_type @integration_type.setter def integration_type(self, value): self._integration_type = value @property def invoice_info(self): return self._invoice_info @invoice_info.setter def invoice_info(self, value): if isinstance(value, InvoiceInfo): self._invoice_info = value else: self._invoice_info = InvoiceInfo.from_alipay_dict(value) @property def merchant_order_no(self): return self._merchant_order_no @merchant_order_no.setter def merchant_order_no(self, value): self._merchant_order_no = value @property def out_trade_no(self): return self._out_trade_no @out_trade_no.setter def out_trade_no(self, value): self._out_trade_no = value @property def passback_params(self): return self._passback_params @passback_params.setter def passback_params(self, value): self._passback_params = value @property def product_code(self): return self._product_code @product_code.setter def product_code(self, value): self._product_code = value @property def promo_params(self): return self._promo_params @promo_params.setter def promo_params(self, value): self._promo_params = value @property def qr_pay_mode(self): return self._qr_pay_mode @qr_pay_mode.setter def qr_pay_mode(self, value): self._qr_pay_mode = value @property def qrcode_width(self): return self._qrcode_width @qrcode_width.setter def qrcode_width(self, value): self._qrcode_width = value @property def request_from_url(self): return self._request_from_url @request_from_url.setter def request_from_url(self, value): self._request_from_url = value @property def royalty_info(self): return self._royalty_info @royalty_info.setter def royalty_info(self, value): if isinstance(value, RoyaltyInfo): self._royalty_info = value else: self._royalty_info = RoyaltyInfo.from_alipay_dict(value) @property def settle_info(self): return self._settle_info @settle_info.setter def settle_info(self, value): if isinstance(value, SettleInfo): self._settle_info = value else: self._settle_info = SettleInfo.from_alipay_dict(value) @property def store_id(self): return self._store_id @store_id.setter def store_id(self, value): self._store_id = value @property def sub_merchant(self): return self._sub_merchant @sub_merchant.setter def sub_merchant(self, value): if isinstance(value, SubMerchant): self._sub_merchant = value else: self._sub_merchant = SubMerchant.from_alipay_dict(value) @property def subject(self): return self._subject @subject.setter def subject(self, value): self._subject = value @property def time_expire(self): return self._time_expire @time_expire.setter def time_expire(self, value): self._time_expire = value @property def timeout_express(self): return self._timeout_express @timeout_express.setter def timeout_express(self, value): self._timeout_express = value @property def total_amount(self): return self._total_amount @total_amount.setter def total_amount(self, value): self._total_amount = value def to_alipay_dict(self): params = dict() if self.agreement_sign_params: if hasattr(self.agreement_sign_params, 'to_alipay_dict'): params['agreement_sign_params'] = self.agreement_sign_params.to_alipay_dict() else: params['agreement_sign_params'] = self.agreement_sign_params if self.body: if hasattr(self.body, 'to_alipay_dict'): params['body'] = self.body.to_alipay_dict() else: params['body'] = self.body if self.business_params: if hasattr(self.business_params, 'to_alipay_dict'): params['business_params'] = self.business_params.to_alipay_dict() else: params['business_params'] = self.business_params if self.disable_pay_channels: if hasattr(self.disable_pay_channels, 'to_alipay_dict'): params['disable_pay_channels'] = self.disable_pay_channels.to_alipay_dict() else: params['disable_pay_channels'] = self.disable_pay_channels if self.enable_pay_channels: if hasattr(self.enable_pay_channels, 'to_alipay_dict'): params['enable_pay_channels'] = self.enable_pay_channels.to_alipay_dict() else: params['enable_pay_channels'] = self.enable_pay_channels if self.ext_user_info: if hasattr(self.ext_user_info, 'to_alipay_dict'): params['ext_user_info'] = self.ext_user_info.to_alipay_dict() else: params['ext_user_info'] = self.ext_user_info if self.extend_params: if hasattr(self.extend_params, 'to_alipay_dict'): params['extend_params'] = self.extend_params.to_alipay_dict() else: params['extend_params'] = self.extend_params if self.goods_detail: if isinstance(self.goods_detail, list): for i in range(0, len(self.goods_detail)): element = self.goods_detail[i] if hasattr(element, 'to_alipay_dict'): self.goods_detail[i] = element.to_alipay_dict() if hasattr(self.goods_detail, 'to_alipay_dict'): params['goods_detail'] = self.goods_detail.to_alipay_dict() else: params['goods_detail'] = self.goods_detail if self.goods_type: if hasattr(self.goods_type, 'to_alipay_dict'): params['goods_type'] = self.goods_type.to_alipay_dict() else: params['goods_type'] = self.goods_type if self.integration_type: if hasattr(self.integration_type, 'to_alipay_dict'): params['integration_type'] = self.integration_type.to_alipay_dict() else: params['integration_type'] = self.integration_type if self.invoice_info: if hasattr(self.invoice_info, 'to_alipay_dict'): params['invoice_info'] = self.invoice_info.to_alipay_dict() else: params['invoice_info'] = self.invoice_info if self.merchant_order_no: if hasattr(self.merchant_order_no, 'to_alipay_dict'): params['merchant_order_no'] = self.merchant_order_no.to_alipay_dict() else: params['merchant_order_no'] = self.merchant_order_no if self.out_trade_no: if hasattr(self.out_trade_no, 'to_alipay_dict'): params['out_trade_no'] = self.out_trade_no.to_alipay_dict() else: params['out_trade_no'] = self.out_trade_no if self.passback_params: if hasattr(self.passback_params, 'to_alipay_dict'): params['passback_params'] = self.passback_params.to_alipay_dict() else: params['passback_params'] = self.passback_params if self.product_code: if hasattr(self.product_code, 'to_alipay_dict'): params['product_code'] = self.product_code.to_alipay_dict() else: params['product_code'] = self.product_code if self.promo_params: if hasattr(self.promo_params, 'to_alipay_dict'): params['promo_params'] = self.promo_params.to_alipay_dict() else: params['promo_params'] = self.promo_params if self.qr_pay_mode: if hasattr(self.qr_pay_mode, 'to_alipay_dict'): params['qr_pay_mode'] = self.qr_pay_mode.to_alipay_dict() else: params['qr_pay_mode'] = self.qr_pay_mode if self.qrcode_width: if hasattr(self.qrcode_width, 'to_alipay_dict'): params['qrcode_width'] = self.qrcode_width.to_alipay_dict() else: params['qrcode_width'] = self.qrcode_width if self.request_from_url: if hasattr(self.request_from_url, 'to_alipay_dict'): params['request_from_url'] = self.request_from_url.to_alipay_dict() else: params['request_from_url'] = self.request_from_url if self.royalty_info: if hasattr(self.royalty_info, 'to_alipay_dict'): params['royalty_info'] = self.royalty_info.to_alipay_dict() else: params['royalty_info'] = self.royalty_info if self.settle_info: if hasattr(self.settle_info, 'to_alipay_dict'): params['settle_info'] = self.settle_info.to_alipay_dict() else: params['settle_info'] = self.settle_info if self.store_id: if hasattr(self.store_id, 'to_alipay_dict'): params['store_id'] = self.store_id.to_alipay_dict() else: params['store_id'] = self.store_id if self.sub_merchant: if hasattr(self.sub_merchant, 'to_alipay_dict'): params['sub_merchant'] = self.sub_merchant.to_alipay_dict() else: params['sub_merchant'] = self.sub_merchant if self.subject: if hasattr(self.subject, 'to_alipay_dict'): params['subject'] = self.subject.to_alipay_dict() else: params['subject'] = self.subject if self.time_expire: if hasattr(self.time_expire, 'to_alipay_dict'): params['time_expire'] = self.time_expire.to_alipay_dict() else: params['time_expire'] = self.time_expire if self.timeout_express: if hasattr(self.timeout_express, 'to_alipay_dict'): params['timeout_express'] = self.timeout_express.to_alipay_dict() else: params['timeout_express'] = self.timeout_express if self.total_amount: if hasattr(self.total_amount, 'to_alipay_dict'): params['total_amount'] = self.total_amount.to_alipay_dict() else: params['total_amount'] = self.total_amount return params @staticmethod def from_alipay_dict(d): if not d: return None o = AlipayTradePagePayModel() if 'agreement_sign_params' in d: o.agreement_sign_params = d['agreement_sign_params'] if 'body' in d: o.body = d['body'] if 'business_params' in d: o.business_params = d['business_params'] if 'disable_pay_channels' in d: o.disable_pay_channels = d['disable_pay_channels'] if 'enable_pay_channels' in d: o.enable_pay_channels = d['enable_pay_channels'] if 'ext_user_info' in d: o.ext_user_info = d['ext_user_info'] if 'extend_params' in d: o.extend_params = d['extend_params'] if 'goods_detail' in d: o.goods_detail = d['goods_detail'] if 'goods_type' in d: o.goods_type = d['goods_type'] if 'integration_type' in d: o.integration_type = d['integration_type'] if 'invoice_info' in d: o.invoice_info = d['invoice_info'] if 'merchant_order_no' in d: o.merchant_order_no = d['merchant_order_no'] if 'out_trade_no' in d: o.out_trade_no = d['out_trade_no'] if 'passback_params' in d: o.passback_params = d['passback_params'] if 'product_code' in d: o.product_code = d['product_code'] if 'promo_params' in d: o.promo_params = d['promo_params'] if 'qr_pay_mode' in d: o.qr_pay_mode = d['qr_pay_mode'] if 'qrcode_width' in d: o.qrcode_width = d['qrcode_width'] if 'request_from_url' in d: o.request_from_url = d['request_from_url'] if 'royalty_info' in d: o.royalty_info = d['royalty_info'] if 'settle_info' in d: o.settle_info = d['settle_info'] if 'store_id' in d: o.store_id = d['store_id'] if 'sub_merchant' in d: o.sub_merchant = d['sub_merchant'] if 'subject' in d: o.subject = d['subject'] if 'time_expire' in d: o.time_expire = d['time_expire'] if 'timeout_express' in d: o.timeout_express = d['timeout_express'] if 'total_amount' in d: o.total_amount = d['total_amount'] return o