#!/usr/bin/env python # -*- coding: utf-8 -*- import json from alipay.aop.api.FileItem import FileItem from alipay.aop.api.constant.ParamConstants import * class AlipayEbppPdeductPayRequest(object): def __init__(self, biz_model=None): self._biz_model = biz_model self._agent_channel = None self._agent_code = None self._agreement_id = None self._bill_date = None self._bill_key = None self._extend_field = None self._fine_amount = None self._memo = None self._out_order_no = None self._pay_amount = None self._pid = None self._user_id = None self._version = "1.0" self._terminal_type = None self._terminal_info = None self._prod_code = None self._notify_url = None self._return_url = None self._udf_params = None self._need_encrypt = False @property def biz_model(self): return self._biz_model @biz_model.setter def biz_model(self, value): self._biz_model = value @property def agent_channel(self): return self._agent_channel @agent_channel.setter def agent_channel(self, value): self._agent_channel = value @property def agent_code(self): return self._agent_code @agent_code.setter def agent_code(self, value): self._agent_code = value @property def agreement_id(self): return self._agreement_id @agreement_id.setter def agreement_id(self, value): self._agreement_id = value @property def bill_date(self): return self._bill_date @bill_date.setter def bill_date(self, value): self._bill_date = value @property def bill_key(self): return self._bill_key @bill_key.setter def bill_key(self, value): self._bill_key = value @property def extend_field(self): return self._extend_field @extend_field.setter def extend_field(self, value): self._extend_field = value @property def fine_amount(self): return self._fine_amount @fine_amount.setter def fine_amount(self, value): self._fine_amount = value @property def memo(self): return self._memo @memo.setter def memo(self, value): self._memo = value @property def out_order_no(self): return self._out_order_no @out_order_no.setter def out_order_no(self, value): self._out_order_no = value @property def pay_amount(self): return self._pay_amount @pay_amount.setter def pay_amount(self, value): self._pay_amount = value @property def pid(self): return self._pid @pid.setter def pid(self, value): self._pid = value @property def user_id(self): return self._user_id @user_id.setter def user_id(self, value): self._user_id = value @property def version(self): return self._version @version.setter def version(self, value): self._version = value @property def terminal_type(self): return self._terminal_type @terminal_type.setter def terminal_type(self, value): self._terminal_type = value @property def terminal_info(self): return self._terminal_info @terminal_info.setter def terminal_info(self, value): self._terminal_info = value @property def prod_code(self): return self._prod_code @prod_code.setter def prod_code(self, value): self._prod_code = value @property def notify_url(self): return self._notify_url @notify_url.setter def notify_url(self, value): self._notify_url = value @property def return_url(self): return self._return_url @return_url.setter def return_url(self, value): self._return_url = value @property def udf_params(self): return self._udf_params @udf_params.setter def udf_params(self, value): if not isinstance(value, dict): return self._udf_params = value @property def need_encrypt(self): return self._need_encrypt @need_encrypt.setter def need_encrypt(self, value): self._need_encrypt = value def add_other_text_param(self, key, value): if not self.udf_params: self.udf_params = dict() self.udf_params[key] = value def get_params(self): params = dict() params[P_METHOD] = 'alipay.ebpp.pdeduct.pay' params[P_VERSION] = self.version if self.biz_model: params[P_BIZ_CONTENT] = json.dumps(obj=self.biz_model.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) if self.agent_channel: if hasattr(self.agent_channel, 'to_alipay_dict'): params['agent_channel'] = json.dumps(obj=self.agent_channel.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['agent_channel'] = self.agent_channel if self.agent_code: if hasattr(self.agent_code, 'to_alipay_dict'): params['agent_code'] = json.dumps(obj=self.agent_code.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['agent_code'] = self.agent_code if self.agreement_id: if hasattr(self.agreement_id, 'to_alipay_dict'): params['agreement_id'] = json.dumps(obj=self.agreement_id.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['agreement_id'] = self.agreement_id if self.bill_date: if hasattr(self.bill_date, 'to_alipay_dict'): params['bill_date'] = json.dumps(obj=self.bill_date.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['bill_date'] = self.bill_date if self.bill_key: if hasattr(self.bill_key, 'to_alipay_dict'): params['bill_key'] = json.dumps(obj=self.bill_key.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['bill_key'] = self.bill_key if self.extend_field: if hasattr(self.extend_field, 'to_alipay_dict'): params['extend_field'] = json.dumps(obj=self.extend_field.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['extend_field'] = self.extend_field if self.fine_amount: if hasattr(self.fine_amount, 'to_alipay_dict'): params['fine_amount'] = json.dumps(obj=self.fine_amount.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['fine_amount'] = self.fine_amount if self.memo: if hasattr(self.memo, 'to_alipay_dict'): params['memo'] = json.dumps(obj=self.memo.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['memo'] = self.memo if self.out_order_no: if hasattr(self.out_order_no, 'to_alipay_dict'): params['out_order_no'] = json.dumps(obj=self.out_order_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['out_order_no'] = self.out_order_no if self.pay_amount: if hasattr(self.pay_amount, 'to_alipay_dict'): params['pay_amount'] = json.dumps(obj=self.pay_amount.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['pay_amount'] = self.pay_amount if self.pid: if hasattr(self.pid, 'to_alipay_dict'): params['pid'] = json.dumps(obj=self.pid.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['pid'] = self.pid if self.user_id: if hasattr(self.user_id, 'to_alipay_dict'): params['user_id'] = json.dumps(obj=self.user_id.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['user_id'] = self.user_id if self.terminal_type: params['terminal_type'] = self.terminal_type if self.terminal_info: params['terminal_info'] = self.terminal_info if self.prod_code: params['prod_code'] = self.prod_code if self.notify_url: params['notify_url'] = self.notify_url if self.return_url: params['return_url'] = self.return_url if self.udf_params: params.update(self.udf_params) return params def get_multipart_params(self): multipart_params = dict() return multipart_params