ryan 1 месяц назад
Родитель
Сommit
01fda75879

+ 1 - 0
backendApi/config/urlManagerRules.php

@@ -502,6 +502,7 @@ return [
             'GET transfer-list-export' => 'transfer-list-export',
             'GET history-bonus-export' => 'history-bonus-export',
             'GET recharge' => 'recharge',
+            'GET,POST recharge-type' => 'recharge-type',
             'GET,POST recharge-status' => 'recharge-status',
             'GET recharge-export' => 'recharge-export',
             'POST mult-point' => 'mult-point',

+ 18 - 0
backendApi/modules/v1/controllers/FinanceController.php

@@ -1184,6 +1184,24 @@ class FinanceController extends BaseController {
         return static::notice($data);
     }
 
+    /**
+     * 提交充值申请
+     * @return mixed
+     * @throws \yii\db\Exception
+     * @throws \yii\web\HttpException
+     */
+    public function actionRechargeType() {
+        if (\Yii::$app->request->isPost) {
+            $formModel = new RechargeForm();
+            if ($formModel->load(\Yii::$app->request->post(), '') && $formModel->updateType()) {
+                return static::notice(Yii::t('app', 'successfully'));
+            } else {
+                return static::notice(Form::formatErrorsForApi($formModel->getErrors()), 400);
+            }
+        }
+        return static::notice(['type'=>['Cash', 'Credit Card', 'Direct Banking']]);
+    }
+
     /**
      * 充值导出
      * @return mixed

+ 59 - 0
common/models/forms/RechargeForm.php

@@ -296,6 +296,65 @@ class RechargeForm extends Model {
         return $rechargeModel;
     }
 
+    /**
+     * 更新充值申请
+     * @return null|string
+     * @throws \yii\db\Exception
+     */
+    public function updateType() {
+        if (!$this->validate(['id', 'rechargeType'])) {
+            return false;
+        }
+        if(!$this->id){
+            return false;
+        }
+        $rechargeModel = Recharge::findOne(['ID' => $this->id]);
+//        if(in_array($rechargeModel->AUDIT_STATUS,[Recharge::STATUS_PROCESSING,Recharge::STATUS_SUCCESS,Recharge::STATUS_REJECT])){
+//            $this->addError('scenario', 'This status cannot be modified');
+//            return false;
+//        }
+        $db = \Yii::$app->db;
+        $transaction = $db->beginTransaction();
+        try {
+            $nowTime = Date::nowTime();
+            $rechargeLogModel = new RechargeLog();
+            $rechargeLogModel->SN = $this->_generateSn();
+            $rechargeLogModel->USER_ID = $rechargeModel->USER_ID;
+            $rechargeLogModel->REAL_NAME = $rechargeModel->REAL_NAME;
+            $rechargeLogModel->ID_CARD = $rechargeModel->ID_CARD;
+            $rechargeLogModel->RECHARGE_PERIOD_NUM = $rechargeModel->RECHARGE_PERIOD_NUM;
+            $rechargeLogModel->RECHARGE_YEAR = $rechargeModel->RECHARGE_YEAR;
+            $rechargeLogModel->RECHARGE_MONTH =$rechargeModel->RECHARGE_MONTH;
+            $rechargeLogModel->AMOUNT = $rechargeModel->AMOUNT;
+            $rechargeLogModel->UPDATE_AMOUNT = $this->applyAmount;
+            $rechargeLogModel->OPEN_BANK = $rechargeModel->OPEN_BANK;
+            $rechargeLogModel->UPDATE_OPEN_BANK = $this->openBank;
+            $rechargeLogModel->BANK_ADDRESS = $rechargeModel->BANK_ADDRESS;
+            $rechargeLogModel->UPDATE_BANK_ADDRESS = $this->bankAddress;
+            $rechargeLogModel->BANK_NO = $rechargeModel->BANK_NO;
+            $rechargeLogModel->UPDATE_BANK_NO = $this->bankNo;
+            $rechargeLogModel->P_MONTH = $rechargeModel->P_MONTH;
+            $rechargeLogModel->AUDIT_STATUS = $rechargeModel->AUDIT_STATUS;
+            $rechargeLogModel->TYPE = $rechargeModel->TYPE;
+            $rechargeLogModel->CREATED_AT = $nowTime;
+            if (!$rechargeLogModel->save()) {
+                throw new Exception(Form::formatErrorsForApi($rechargeLogModel->getErrors()));
+            }
+
+            $rechargeModel->UPDATED_AT = $nowTime;
+            $rechargeModel->TYPE = $this->rechargeType;
+            if (!$rechargeModel->save()) {
+                throw new Exception(Form::formatErrorsForApi($rechargeModel->getErrors()));
+            }
+            $transaction->commit();
+        } catch (Exception $e) {
+            $transaction->rollBack();
+            $this->addError('updateType', $e->getMessage());
+            return false;
+        }
+        return $rechargeModel;
+    }
+
     /**
      * 生成流水号
      * @return string