| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- <?php
- namespace addons\YunfastPay\common\services\trans\nocash;
- use addons\YunfastPay\common\services\trans\TransAbstract;
- /**
- * 公众号支付
- * WechatPayTrans class
- * @package addons\YunfastPay\common\services\trans\nocash
- * @see https://yunfastpay.com/#/interface/gzh
- */
- class WechatPayTrans extends TransAbstract
- {
- /**
- * 微信openid
- *
- * @var string
- */
- protected $buyerCd;
- /**
- * 公众号appid
- *
- * @var string
- */
- protected $appid;
- /**
- * 实例化
- *
- * @param string $outOrderId
- * @param float $transAmt
- * @param string $appid
- * @param string $buyerCd
- * @param string $outOrderTitle
- * @param string $outOrderDesc
- */
- public function __construct(
- string $outOrderId,
- float $transAmt,
- string $appid,
- string $buyerCd,
- string $outOrderTitle,
- string $outOrderDesc = ''
- )
- {
- parent::__construct($outOrderId, $transAmt, $outOrderTitle, $outOrderDesc);
-
- $this->appid = $appid;
- $this->buyerCd = $buyerCd;
- }
- /**
- * 交易码
- *
- * @return string
- */
- public function getTrscode() :string
- {
- return 'TRANS1106';
- }
- /**
- * 聚合:tran
- *
- * @return string
- */
- public function getProCd() :string
- {
- return 'tran';
- }
- /**
- * 费率通道
- *
- * @return integer
- */
- public function getChanelType() :int
- {
- return 1;
- }
- public function getTransData(string $mchtCd) :array
- {
- $reqData['trscode'] = $this->getTrscode();
- $reqData['mchtCd'] = $mchtCd;
- $reqData['outOrderId'] = $this->outOrderId;
- $reqData['transAmt'] = $this->transAmt;
- $reqData['proCd'] = $this->getProCd();
- $reqData['chanelType'] = $this->getChanelType();
- $reqData['outOrderTitle'] = $this->outOrderTitle;
- $reqData['outOrderDesc'] = $this->outOrderDesc;
- $reqData['browser'] = $this->getBrowser();
- $reqData['expireTime'] = $this->getExpireTime();
- $reqData['isSplitBill'] = $this->getIsSplitBill();
- $reqData['appid'] = $this->appid;
- $reqData['buyerCd'] = $this->buyerCd;
- // 分账信息
- $itemsList = $this->getSplitBill();
- $itemsList && $reqData['itemsList'] = $itemsList;
- return $reqData;
- }
- }
|