<?php /** * ALIPAY API: zhima.merchant.closeloop.data.upload request * * @author auto create * @since 1.0, 2018-01-11 15:47:27 */ class ZhimaMerchantCloseloopDataUploadRequest { /** * 公用回传参数(非必填),该参数会透传给商户,商户可以用于业务逻辑处理,请使用json格式。 **/ private $bizExtParams; /** * 单条数据的数据列,多个列以逗号隔开。 **/ private $columns; /** * 传入的json格式的文件,其中records属性必填。json中的字段可以通过如下步骤获取:首先调用zhima.merchant.data.upload.initialize接口获取数据模板,该接口会返回一个数据模板文件的url地址,如:http://zmxymerchant-prod.oss-cn-shenzhen.zmxy.com.cn/openApi/openDoc/信用护航-负面记录和信用足迹商户数据模板V1.0.xlsx,该数据模板文件详细列出了需要传入的字段,及各字段的要求,data中的各字段就是该文件中列出的字段编码。 **/ private $file; /** * 文件的编码,如果文件格式是UTF-8,则填写UTF-8,如果文件格式是GBK,则填写GBK。 **/ private $fileCharset; /** * 芝麻平台服务商模式下的二级商户标识(即二级商户PID),如果是直连商户调用该接口,不需要设置 **/ private $linkedMerchantId; /** * 主键列使用传入字段进行组合,也可以使用传入的某个单字段(确保主键稳定,而且可以很好的区分不同的数据)。例如order_no,pay_month或者order_no,bill_month组合,对于一个order_no只会有一条数据的情况,直接使用order_no作为主键列。 **/ private $primaryKeyColumns; /** * 文件数据记录条数,如file字段中的record数组有10条数据,那么就填10。 **/ private $records; /** * 数据应用的场景编码,场景码和场景名称(数字或字符串为场景码)如下: 8:数据反馈 32:骑行 CAR_RENTING:租车行业解决方案 每个场景码对应的数据模板不一样,请使用zhima.merchant.data.upload.initialize接口获取场景码对应的数据模板。 **/ private $sceneCode; private $apiParas = array(); private $terminalType; private $terminalInfo; private $prodCode; private $apiVersion="1.0"; private $notifyUrl; private $returnUrl; private $needEncrypt=false; public function setBizExtParams($bizExtParams) { $this->bizExtParams = $bizExtParams; $this->apiParas["biz_ext_params"] = $bizExtParams; } public function getBizExtParams() { return $this->bizExtParams; } public function setColumns($columns) { $this->columns = $columns; $this->apiParas["columns"] = $columns; } public function getColumns() { return $this->columns; } public function setFile($file) { $this->file = $file; $this->apiParas["file"] = $file; } public function getFile() { return $this->file; } public function setFileCharset($fileCharset) { $this->fileCharset = $fileCharset; $this->apiParas["file_charset"] = $fileCharset; } public function getFileCharset() { return $this->fileCharset; } public function setLinkedMerchantId($linkedMerchantId) { $this->linkedMerchantId = $linkedMerchantId; $this->apiParas["linked_merchant_id"] = $linkedMerchantId; } public function getLinkedMerchantId() { return $this->linkedMerchantId; } public function setPrimaryKeyColumns($primaryKeyColumns) { $this->primaryKeyColumns = $primaryKeyColumns; $this->apiParas["primary_key_columns"] = $primaryKeyColumns; } public function getPrimaryKeyColumns() { return $this->primaryKeyColumns; } public function setRecords($records) { $this->records = $records; $this->apiParas["records"] = $records; } public function getRecords() { return $this->records; } public function setSceneCode($sceneCode) { $this->sceneCode = $sceneCode; $this->apiParas["scene_code"] = $sceneCode; } public function getSceneCode() { return $this->sceneCode; } public function getApiMethodName() { return "zhima.merchant.closeloop.data.upload"; } public function setNotifyUrl($notifyUrl) { $this->notifyUrl=$notifyUrl; } public function getNotifyUrl() { return $this->notifyUrl; } public function setReturnUrl($returnUrl) { $this->returnUrl=$returnUrl; } public function getReturnUrl() { return $this->returnUrl; } public function getApiParas() { return $this->apiParas; } public function getTerminalType() { return $this->terminalType; } public function setTerminalType($terminalType) { $this->terminalType = $terminalType; } public function getTerminalInfo() { return $this->terminalInfo; } public function setTerminalInfo($terminalInfo) { $this->terminalInfo = $terminalInfo; } public function getProdCode() { return $this->prodCode; } public function setProdCode($prodCode) { $this->prodCode = $prodCode; } public function setApiVersion($apiVersion) { $this->apiVersion=$apiVersion; } public function getApiVersion() { return $this->apiVersion; } public function setNeedEncrypt($needEncrypt) { $this->needEncrypt=$needEncrypt; } public function getNeedEncrypt() { return $this->needEncrypt; } }