Ignore:
Timestamp:
Jan 27, 2015 10:53:31 AM (10 years ago)
Author:
dungnv
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • pro-violet-viettel/sourcecode/application/modules/services/models/services_model.php

    r689 r707  
    4343                _SBG_MO_REGISTER                        => array('pattern' => '/^(SBG)([[:blank:]])(DK)$/'),
    4444                _SBG_MO_REGISTER_FOR            => array('pattern' => '/^(SBG)([[:blank:]])(DK)([[:blank:]])([0-9]{10,11})$/'),
    45                 _SBG_MO_PHONENUM_CHANGE         => array('pattern' => '/^(SBG)([[:blank:]])(DDT)([[:blank:]])([0-9]{10,11})([[:blank:]])([a-zA-Z0-9]{1,})$/'),
     45                //_SBG_MO_PHONENUM_CHANGE       => array('pattern' => '/^(SBG)([[:blank:]])(DDT)([[:blank:]])([0-9]{10,11})([[:blank:]])([a-zA-Z0-9]{1,})$/'),
    4646                _SBG_MO_PASSWORD_RECOVERY       => array('pattern' => '/^(SBG)([[:blank:]])(MK)$/'),
    4747                _SBG_MO_VIP_REGISTER            => array('pattern' => '/^(SBG)([[:blank:]])(VIP)([[:blank:]])([a-zA-Z0-9]{1,})$/'),
     
    8787                }
    8888               
    89                 return array('case' => $case, 'content' => $aryContent);;
     89                return array('case' => $case, 'content' => $aryContent);
    9090        }
    9191       
     
    127127                               
    128128                                $sms = $this->objUserModel->register($userName, $collaborator, $collaboratorMsg);
     129                               
    129130                                if ($case == _SBG_MO_REGISTER_FOR) {
    130131                                        $smsReturn = $collaboratorMsg;
     
    136137                                        $smsReturn = $sms;
    137138                                }
     139
    138140                                break;
    139141                        case _SBG_MO_PHONENUM_CHANGE:
     
    158160                                break;
    159161                        case _SBG_MO_VIP_REGISTER:
     162                                $packageData = array();
    160163                                $p_code = $aryContents[0];
    161                                 $smsReturn = $this->objUserModel->registerVip($sentNumber, $p_code);
    162                                 $this->objUserModel->insertRegisterVipLog($sentNumber, $p_code, true);
    163                                 break;
     164                                $smsReturn = $this->objUserModel->registerVip($sentNumber, $p_code, $packageData);
     165                               
     166                                $arySmsReturn = explode('|', $smsReturn);
     167                                $result = $arySmsReturn[0];
     168
     169                                if (trim($arySmsReturn[1]) == trim(lang('_SBG_MO_USER_REGISTER_VIP_FAIL_NOT_ENOUGH_MSG'))) {
     170                                       
     171                                        $amount = $packageData ['p_price'];
     172                                        $result = $this->chargeRootAccountProcess($sentNumber, $amount, $sentNumber.' paid for SBG');
     173
     174                                        if ($result == _SBG_CHARGING_SUCCESS) {
     175                                                $this->objUserModel->rechargeAccount($sentNumber, $amount);
     176                                                $smsReturn = $this->objUserModel->registerVip($sentNumber, $p_code, $packageData);
     177                                               
     178                                                $paidTime = date('Y-m-d H:i:s');
     179                                                $this->objUserModel->insertPaidlog($sentNumber, $sentNumber, _SBG_PAIDTYPE_SMS, $amount, $paidTime);
     180                                                $result = 1;
     181                                        }
     182                                }
     183
     184                                if ((int)$result == 1) $this->objUserModel->insertRegisterVipLog($sentNumber, $p_code, true);
     185                                break;
     186
    164187                        case _SBG_MO_PAY_TO_ACCOUNT:
    165188                        case _SBG_MO_PAY_TO_ACCOUNT_FOR:
     189
    166190                                $userName = isset($aryContents[1]) ? $this->formatPhoneNumber($aryContents[1]) : $sentNumber;
    167191                               
     
    186210                                                $smsMT = preg_replace($aryPatterns, array($amount, $sentNumber), lang('_SBG_MO_PAY_TO_ACCOUNT_FOR_MSG'));
    187211                                                $sendMT = $this->sendMT($this->formatPhoneNumber($userName, -1), $smsMT);
     212                                                $smsReturn = $arySmsReturn[0].'|'.preg_replace(array('/:amount:/','/:username:/'), array($amount, $userName), lang('_SBG_MO_PAY_TO_ACCOUNT_FOR_OTHER_SUCCESS_MSG'));
    188213                                        }
    189                                        
    190214                                        //write to paid log
    191215                                        $paidTime = date('Y-m-d H:i:s');
     
    290314                                'Contents' => $contents
    291315                );
    292                
     316
    293317                $xml = $this->load->view('charging', $aryParams, true);
    294318                $client = new nusoap_client($url);
Note: See TracChangeset for help on using the changeset viewer.