|
@@ -31,12 +31,12 @@ class RefillPhone extends refill\IRefillPhone
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private function req_params(string $order_sn, string $product_code)
|
|
|
+ private function req_params(string $order_sn, string $product_code,$quantity)
|
|
|
{
|
|
|
$params['AppKey'] = config::APP_KEY;
|
|
|
$params['TimesTamp'] = time();
|
|
|
- $params['ProductCode'] = 'PLM100024'; //产品编码需传入
|
|
|
- $params['BuyCount'] = 1;
|
|
|
+ $params['ProductCode'] = $product_code;
|
|
|
+ $params['BuyCount'] = $quantity;
|
|
|
$params['MOrderID'] = $order_sn;
|
|
|
$params['CustomerIP'] = config::API_IP;
|
|
|
$params['IsCallback'] = 1;
|
|
@@ -45,12 +45,35 @@ class RefillPhone extends refill\IRefillPhone
|
|
|
return $params;
|
|
|
}
|
|
|
|
|
|
+ private function getProductCode($goods_id,$sys_pcode)
|
|
|
+ {
|
|
|
+ $thrid_refill = Model('thrid_refill');
|
|
|
+ $product = $thrid_refill->getProviderProduct($this->mStoreID,$goods_id,$sys_pcode);
|
|
|
+ if (empty($product)) {
|
|
|
+ return false;
|
|
|
+ } else {
|
|
|
+ return $product['channel_code'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//直充提单
|
|
|
public function add($card_no, $card_type, $amount, $params)
|
|
|
{
|
|
|
+ if(empty($card_no)) {
|
|
|
+ return $this->cardkey_add($params);
|
|
|
+ } else {
|
|
|
+ return $this->direct_add($card_no, $params);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private function direct_add($card_no, $params)
|
|
|
+ {
|
|
|
$order_sn = $params['order_sn'];
|
|
|
- $product_code = $params['product_code'];
|
|
|
- $params = $this->req_params($order_sn,$product_code);
|
|
|
+ $goods_id = intval($params['goods_id']);
|
|
|
+ $product_code = $this->getProductCode($goods_id,$params['product_code']);
|
|
|
+ $quantity = intval($params['quantity']);
|
|
|
+
|
|
|
+ $params = $this->req_params($order_sn,$product_code,$quantity);
|
|
|
|
|
|
$params['ChargeAccount'] = $card_no;
|
|
|
$params['ChargeAccountType'] = 1;//账号类型1 手机号,2 QQ号,3 微信号
|
|
@@ -77,11 +100,14 @@ class RefillPhone extends refill\IRefillPhone
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public function CardOrderAdd($card_no, $card_type, $amount, $params)
|
|
|
+ private function cardkey_add($params)
|
|
|
{
|
|
|
$order_sn = $params['order_sn'];
|
|
|
- $product_code = $params['product_code'];
|
|
|
- $params = $this->req_params($order_sn,$product_code);
|
|
|
+ $goods_id = intval($params['goods_id']);
|
|
|
+ $product_code = $this->getProductCode($goods_id,$params['product_code']);
|
|
|
+ $quantity = intval($params['quantity']);
|
|
|
+
|
|
|
+ $params = $this->req_params($order_sn,$product_code,$quantity);
|
|
|
|
|
|
$params['PublicKey'] = config::PUBLIC_KEY;
|
|
|
|