#!/usr/bin/env python # -*- coding: utf-8 -*- import json from alipay.aop.api.FileItem import FileItem from alipay.aop.api.constant.ParamConstants import * class AlipayEbppBillAddRequest(object): def __init__(self, biz_model=None): self._biz_model = biz_model self._bank_bill_no = None self._bill_date = None self._bill_key = None self._charge_inst = None self._extend_field = None self._merchant_order_no = None self._mobile = None self._order_type = None self._owner_name = None self._pay_amount = None self._service_amount = None self._sub_order_type = None self._traffic_location = None self._traffic_regulations = 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 bank_bill_no(self): return self._bank_bill_no @bank_bill_no.setter def bank_bill_no(self, value): self._bank_bill_no = 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 charge_inst(self): return self._charge_inst @charge_inst.setter def charge_inst(self, value): self._charge_inst = value @property def extend_field(self): return self._extend_field @extend_field.setter def extend_field(self, value): self._extend_field = 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 mobile(self): return self._mobile @mobile.setter def mobile(self, value): self._mobile = value @property def order_type(self): return self._order_type @order_type.setter def order_type(self, value): self._order_type = value @property def owner_name(self): return self._owner_name @owner_name.setter def owner_name(self, value): self._owner_name = value @property def pay_amount(self): return self._pay_amount @pay_amount.setter def pay_amount(self, value): self._pay_amount = value @property def service_amount(self): return self._service_amount @service_amount.setter def service_amount(self, value): self._service_amount = value @property def sub_order_type(self): return self._sub_order_type @sub_order_type.setter def sub_order_type(self, value): self._sub_order_type = value @property def traffic_location(self): return self._traffic_location @traffic_location.setter def traffic_location(self, value): self._traffic_location = value @property def traffic_regulations(self): return self._traffic_regulations @traffic_regulations.setter def traffic_regulations(self, value): self._traffic_regulations = 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.bill.add' 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.bank_bill_no: if hasattr(self.bank_bill_no, 'to_alipay_dict'): params['bank_bill_no'] = json.dumps(obj=self.bank_bill_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['bank_bill_no'] = self.bank_bill_no 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.charge_inst: if hasattr(self.charge_inst, 'to_alipay_dict'): params['charge_inst'] = json.dumps(obj=self.charge_inst.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['charge_inst'] = self.charge_inst 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.merchant_order_no: if hasattr(self.merchant_order_no, 'to_alipay_dict'): params['merchant_order_no'] = json.dumps(obj=self.merchant_order_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['merchant_order_no'] = self.merchant_order_no if self.mobile: if hasattr(self.mobile, 'to_alipay_dict'): params['mobile'] = json.dumps(obj=self.mobile.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['mobile'] = self.mobile if self.order_type: if hasattr(self.order_type, 'to_alipay_dict'): params['order_type'] = json.dumps(obj=self.order_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['order_type'] = self.order_type if self.owner_name: if hasattr(self.owner_name, 'to_alipay_dict'): params['owner_name'] = json.dumps(obj=self.owner_name.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['owner_name'] = self.owner_name 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.service_amount: if hasattr(self.service_amount, 'to_alipay_dict'): params['service_amount'] = json.dumps(obj=self.service_amount.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['service_amount'] = self.service_amount if self.sub_order_type: if hasattr(self.sub_order_type, 'to_alipay_dict'): params['sub_order_type'] = json.dumps(obj=self.sub_order_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['sub_order_type'] = self.sub_order_type if self.traffic_location: if hasattr(self.traffic_location, 'to_alipay_dict'): params['traffic_location'] = json.dumps(obj=self.traffic_location.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['traffic_location'] = self.traffic_location if self.traffic_regulations: if hasattr(self.traffic_regulations, 'to_alipay_dict'): params['traffic_regulations'] = json.dumps(obj=self.traffic_regulations.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['traffic_regulations'] = self.traffic_regulations 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