|
@@ -6,6 +6,7 @@ use common\components\Model;
|
|
|
use common\helpers\Cache;
|
|
use common\helpers\Cache;
|
|
|
use common\helpers\Date;
|
|
use common\helpers\Date;
|
|
|
use common\helpers\Form;
|
|
use common\helpers\Form;
|
|
|
|
|
+use common\helpers\PayStack;
|
|
|
use common\helpers\Tool;
|
|
use common\helpers\Tool;
|
|
|
use common\helpers\user\Cash;
|
|
use common\helpers\user\Cash;
|
|
|
use common\helpers\user\Info;
|
|
use common\helpers\user\Info;
|
|
@@ -31,6 +32,7 @@ class RechargeForm extends Model {
|
|
|
// public $bankCounty;
|
|
// public $bankCounty;
|
|
|
|
|
|
|
|
public $sn;
|
|
public $sn;
|
|
|
|
|
+ public $currency;
|
|
|
public $amount;
|
|
public $amount;
|
|
|
public $bankRealName;
|
|
public $bankRealName;
|
|
|
|
|
|
|
@@ -42,7 +44,7 @@ class RechargeForm extends Model {
|
|
|
public function rules() {
|
|
public function rules() {
|
|
|
return [
|
|
return [
|
|
|
[['userName', 'idCard', 'applyAmount', 'auditStatus', 'remark', 'selectedIds', 'sn','amount', 'bankRealName', 'bankNo'], 'trim'],
|
|
[['userName', 'idCard', 'applyAmount', 'auditStatus', 'remark', 'selectedIds', 'sn','amount', 'bankRealName', 'bankNo'], 'trim'],
|
|
|
- [['selectedIds', 'auditStatus', 'userName','applyAmount','openBank','bankNo','bankAddress'], 'required'],
|
|
|
|
|
|
|
+ [['selectedIds', 'auditStatus', 'userName','applyAmount', 'currency'/*,'openBank','bankNo','bankAddress'*/], 'required'],
|
|
|
[['selectedIds'], 'exist', 'targetClass' => Recharge::class, 'targetAttribute' => 'ID', 'message' => '充值申请不存在'],
|
|
[['selectedIds'], 'exist', 'targetClass' => Recharge::class, 'targetAttribute' => 'ID', 'message' => '充值申请不存在'],
|
|
|
[['userName'], 'exist', 'targetClass' => UserInfo::class, 'targetAttribute' => 'USER_NAME', 'message' => '会员不存在'],
|
|
[['userName'], 'exist', 'targetClass' => UserInfo::class, 'targetAttribute' => 'USER_NAME', 'message' => '会员不存在'],
|
|
|
[['applyAmount'], 'price'],
|
|
[['applyAmount'], 'price'],
|
|
@@ -60,7 +62,7 @@ class RechargeForm extends Model {
|
|
|
$parentScenarios = parent::scenarios();
|
|
$parentScenarios = parent::scenarios();
|
|
|
$customScenarios = [
|
|
$customScenarios = [
|
|
|
'addByAdmin' => ['userName', 'applyAmount'],
|
|
'addByAdmin' => ['userName', 'applyAmount'],
|
|
|
- 'addByUser' => ['applyAmount','openBank','bankNo','bankAddress'],
|
|
|
|
|
|
|
+ 'addByUser' => ['applyAmount','openBank','bankNo','bankAddress','currency'],
|
|
|
'statusByAdmin' => ['selectedIds', 'auditStatus', 'createRemark'],
|
|
'statusByAdmin' => ['selectedIds', 'auditStatus', 'createRemark'],
|
|
|
];
|
|
];
|
|
|
return array_merge($parentScenarios, $customScenarios);
|
|
return array_merge($parentScenarios, $customScenarios);
|
|
@@ -74,9 +76,10 @@ class RechargeForm extends Model {
|
|
|
'selectedIds' => '充值申请ID',
|
|
'selectedIds' => '充值申请ID',
|
|
|
'userName' => '会员编号',
|
|
'userName' => '会员编号',
|
|
|
'applyAmount' => '申请充值的金额',
|
|
'applyAmount' => '申请充值的金额',
|
|
|
- 'openBank' => '汇款银行',
|
|
|
|
|
- 'bankNo' => '汇款账号',
|
|
|
|
|
- 'bankAddress' => '银行支行',
|
|
|
|
|
|
|
+// 'openBank' => '汇款银行',
|
|
|
|
|
+// 'bankNo' => '汇款账号',
|
|
|
|
|
+// 'bankAddress' => '银行支行',
|
|
|
|
|
+ 'currency' => '货币',
|
|
|
// 'bankProvince' => '银行省',
|
|
// 'bankProvince' => '银行省',
|
|
|
// 'bankCity' => '银行市',
|
|
// 'bankCity' => '银行市',
|
|
|
// 'bankCounty' => '银行县',
|
|
// 'bankCounty' => '银行县',
|
|
@@ -185,6 +188,12 @@ class RechargeForm extends Model {
|
|
|
}
|
|
}
|
|
|
$db = \Yii::$app->db;
|
|
$db = \Yii::$app->db;
|
|
|
$transaction = $db->beginTransaction();
|
|
$transaction = $db->beginTransaction();
|
|
|
|
|
+ // 向paystack发起订单
|
|
|
|
|
+ $userInfo = Info::baseInfo($this->_userId);
|
|
|
|
|
+ $rechargeOrder = PayStack::transactionInit($this->currency, $this->applyAmount, $userInfo['EMAIL']);
|
|
|
|
|
+ if($rechargeOrder['status']!=1){
|
|
|
|
|
+ throw new Exception('api error');
|
|
|
|
|
+ }
|
|
|
try {
|
|
try {
|
|
|
$nowTime = Date::nowTime();
|
|
$nowTime = Date::nowTime();
|
|
|
$period = Recharge::getPeriod($nowTime);
|
|
$period = Recharge::getPeriod($nowTime);
|
|
@@ -199,10 +208,14 @@ class RechargeForm extends Model {
|
|
|
$rechargeModel->RECHARGE_PERIOD_NUM = $period['nowPeriodNum'];
|
|
$rechargeModel->RECHARGE_PERIOD_NUM = $period['nowPeriodNum'];
|
|
|
$rechargeModel->RECHARGE_YEAR = $period['nowYear'];
|
|
$rechargeModel->RECHARGE_YEAR = $period['nowYear'];
|
|
|
$rechargeModel->RECHARGE_MONTH = $period['nowMonth'];
|
|
$rechargeModel->RECHARGE_MONTH = $period['nowMonth'];
|
|
|
|
|
+ $rechargeModel->CURRENCY = $this->currency;
|
|
|
$rechargeModel->AMOUNT = $this->applyAmount;
|
|
$rechargeModel->AMOUNT = $this->applyAmount;
|
|
|
- $rechargeModel->OPEN_BANK = $this->openBank;
|
|
|
|
|
- $rechargeModel->BANK_ADDRESS = $this->bankAddress;
|
|
|
|
|
- $rechargeModel->BANK_NO = $this->bankNo;
|
|
|
|
|
|
|
+ $rechargeModel->RECHARGE_REF = $rechargeOrder['data']['reference'];
|
|
|
|
|
+ $rechargeModel->RECHARGE_ORDER_ID = $rechargeOrder['data']['access_code'];
|
|
|
|
|
+ $rechargeModel->RECHARGE_STATUS = 0;
|
|
|
|
|
+ $rechargeModel->OPEN_BANK = 'a';
|
|
|
|
|
+ $rechargeModel->BANK_ADDRESS = 'b';
|
|
|
|
|
+ $rechargeModel->BANK_NO = 'c';
|
|
|
// $rechargeModel->BANK_PROVINCE = $this->bankProvince ?? 0;
|
|
// $rechargeModel->BANK_PROVINCE = $this->bankProvince ?? 0;
|
|
|
// $rechargeModel->BANK_CITY = $this->bankCity ?? 0;
|
|
// $rechargeModel->BANK_CITY = $this->bankCity ?? 0;
|
|
|
// $rechargeModel->BANK_COUNTY = $this->bankCounty ?? 0;
|
|
// $rechargeModel->BANK_COUNTY = $this->bankCounty ?? 0;
|