#!/usr/bin/env python # -*- coding: utf-8 -*- import json from alipay.aop.api.FileItem import FileItem from alipay.aop.api.constant.ParamConstants import * class AlipayInsSceneClaimAttachmentUploadRequest(object): def __init__(self, biz_model=None): self._biz_model = biz_model self._attachment_name = None self._attachment_type = None self._claim_report_no = None self._description = None self._file_type = None self._file_content = 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 attachment_name(self): return self._attachment_name @attachment_name.setter def attachment_name(self, value): self._attachment_name = value @property def attachment_type(self): return self._attachment_type @attachment_type.setter def attachment_type(self, value): self._attachment_type = value @property def claim_report_no(self): return self._claim_report_no @claim_report_no.setter def claim_report_no(self, value): self._claim_report_no = value @property def description(self): return self._description @description.setter def description(self, value): self._description = value @property def file_type(self): return self._file_type @file_type.setter def file_type(self, value): self._file_type = value @property def file_content(self): return self._file_content @file_content.setter def file_content(self, value): if not isinstance(value, FileItem): return self._file_content = 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.ins.scene.claim.attachment.upload' 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.attachment_name: if hasattr(self.attachment_name, 'to_alipay_dict'): params['attachment_name'] = json.dumps(obj=self.attachment_name.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['attachment_name'] = self.attachment_name if self.attachment_type: if hasattr(self.attachment_type, 'to_alipay_dict'): params['attachment_type'] = json.dumps(obj=self.attachment_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['attachment_type'] = self.attachment_type if self.claim_report_no: if hasattr(self.claim_report_no, 'to_alipay_dict'): params['claim_report_no'] = json.dumps(obj=self.claim_report_no.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['claim_report_no'] = self.claim_report_no if self.description: if hasattr(self.description, 'to_alipay_dict'): params['description'] = json.dumps(obj=self.description.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['description'] = self.description if self.file_type: if hasattr(self.file_type, 'to_alipay_dict'): params['file_type'] = json.dumps(obj=self.file_type.to_alipay_dict(), ensure_ascii=False, sort_keys=True, separators=(',', ':')) else: params['file_type'] = self.file_type 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() if self.file_content: multipart_params['file_content'] = self.file_content return multipart_params