diff --git a/frontend/config/params.php b/frontend/config/params.php index 7f754b9..acf5d51 100644 --- a/frontend/config/params.php +++ b/frontend/config/params.php @@ -1,4 +1,10 @@ 'admin@example.com', + 'userPanel' => [ + 'token' => 'ff7dc73536475c11981a1c52531f2ff7', + 'phone_url' => 'http://user.banmacar.com/api/phone/op', + 'sms_url' => 'http://user.banmacar.com/api/sms/single-send', + 'myinfo_url' => 'http://user.banmacar.com/api/user/myinfo', + ], ]; diff --git a/frontend/controllers/PhoneCenterController.php b/frontend/controllers/PhoneCenterController.php index 4d7b850..457f868 100644 --- a/frontend/controllers/PhoneCenterController.php +++ b/frontend/controllers/PhoneCenterController.php @@ -10,6 +10,7 @@ namespace frontend\controllers; use common\models\FixCarT; use common\models\UserT; +use GuzzleHttp\Client; use yii\base\Controller; use common\libs\MyLib; use common\models\AppointmentT; @@ -319,7 +320,6 @@ public function actionDownload(){ $phone = $request->post('phone',''); $is_double = $request->post('is_double',0); - if($user_id == 0) { $result['msg'] = '请输入人员名称!'; return $result; @@ -330,14 +330,33 @@ public function actionDownload(){ return $result; } - - $tran = NetworkPhoneAssignT::getDb()->beginTransaction(); - try { $row = null; if($id > 0) { $row = NetworkPhoneAssignT::findOne(['id'=>$id]); + + $url = Yii::$app->params['userPanel']['phone_url']; + $token = Yii::$app->params['userPanel']['token']; + + $params = [ + 'token' => $token, + 'op' => 'edit', + 'phone' => $phone, + 'old_phone' => $row->phone + ]; + $client = new Client(); + $res = $client->request('POST', $url, [ + 'form_params' => $params, + 'http_errors' => false, + ]); + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody()); + if($obj->code == 400) { + $result['msg'] = $obj->msg; + return $result; + } + } } else { if($is_double == 0) { $t = NetworkPhoneAssignT::findOne(['phone' => $phone]); @@ -346,6 +365,26 @@ public function actionDownload(){ return $result; } } + $url = Yii::$app->params['userPanel']['phone_url']; + $token = Yii::$app->params['userPanel']['token']; + + $params = [ + 'token' => $token, + 'op' => 'add', + 'phone' => $phone + ]; + $client = new Client(); + $res = $client->request('POST', $url, [ + 'form_params' => $params, + 'http_errors' => false, + ]); + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody()); + if($obj->code == 400) { + $result['msg'] = $obj->msg; + return $result; + } + } $row = new NetworkPhoneAssignT(); } $row->user_id = $user_id; @@ -386,6 +425,27 @@ public function actionDownload(){ return $result; } $row = NetworkPhoneAssignT::findOne(['id'=>$id]); + + $url = Yii::$app->params['userPanel']['phone_url']; + $token = Yii::$app->params['userPanel']['token']; + + $params = [ + 'token' => $token, + 'op' => 'delete', + 'phone' => $row->phone + ]; + $client = new Client(); + $res = $client->request('POST', $url, [ + 'form_params' => $params, + 'http_errors' => false, + ]); + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody()); + if($obj->code == 400) { + $result['msg'] = $obj->msg; + return $result; + } + } $row->delete(); $result['success'] = true; @@ -394,7 +454,7 @@ public function actionDownload(){ $tran->commit(); } catch(\Exception $e) { $tran->rollBack(); - throw $e; + $result['msg'] = $e->getMessage(); } } } @@ -412,7 +472,6 @@ public function actionDownload(){ $info = new NetworkPhoneSubT(); } - return $this->render('sub-edit',[ 'info' => $info, 'assign_id'=>$assign_id @@ -434,13 +493,12 @@ public function actionDownload(){ $is_called = $request->post('is_called'); $is_double = $request->post('is_double'); - - if($phone == '') { $result['msg'] = '请输入电话号码!'; return $result; } + $phone_info = NetworkPhoneAssignT::findOne(['id'=>$assign_id]); $tran = NetworkPhoneSubT::getDb()->beginTransaction(); @@ -448,6 +506,28 @@ public function actionDownload(){ $row = null; if($id > 0) { $row = NetworkPhoneSubT::findOne(['id'=>$id]); + + $url = Yii::$app->params['userPanel']['phone_url']; + $token = Yii::$app->params['userPanel']['token']; + $params = [ + 'token' => $token, + 'op' => 'sub_edit', + 'phone' => $phone_info->phone, + 'sub_phone' => $phone, + 'old_sub_phone' => $row->phone + ]; + $client = new Client(); + $res = $client->request('POST', $url, [ + 'form_params' => $params, + 'http_errors' => false, + ]); + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody()); + if($obj->code == 400) { + $result['msg'] = $obj->msg; + return $result; + } + } } else { if($is_double == 0) { $t = NetworkPhoneSubT @@ -457,6 +537,28 @@ public function actionDownload(){ return $result; } } + + $url = Yii::$app->params['userPanel']['phone_url']; + $token = Yii::$app->params['userPanel']['token']; + $params = [ + 'token' => $token, + 'op' => 'sub_add', + 'phone' => $phone_info->phone, + 'sub_phone' => $phone + ]; + $client = new Client(); + $res = $client->request('POST', $url, [ + 'form_params' => $params, + 'http_errors' => false, + ]); + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody()); + if($obj->code == 400) { + $result['msg'] = $obj->msg; + return $result; + } + } + $row = new NetworkPhoneSubT(); } $row->assign_id = $assign_id; @@ -467,7 +569,7 @@ public function actionDownload(){ $tran->commit(); } catch(\Exception $e) { $tran->rollBack(); - throw $e; + $result['msg'] = $e->getMessage(); } $result['success'] = true; @@ -492,6 +594,26 @@ public function actionDownload(){ try { $row = NetworkPhoneSubT::findOne(['id'=>$id]); if($row->bind_id == ''){ + $url = Yii::$app->params['userPanel']['phone_url']; + $token = Yii::$app->params['userPanel']['token']; + $params = [ + 'token' => $token, + 'op' => 'sub_delete', + 'sub_phone' => $row->phone + ]; + $client = new Client(); + $res = $client->request('POST', $url, [ + 'form_params' => $params, + 'http_errors' => false, + ]); + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody()); + if($obj->code == 400) { + $result['msg'] = $obj->msg; + return $result; + } + } + $row->delete(); $result['success'] = true; @@ -502,7 +624,7 @@ public function actionDownload(){ $tran->commit(); } catch(\Exception $e) { $tran->rollBack(); - throw $e; + $result['msg'] = $e->getMessage(); } } } diff --git a/frontend/controllers/PhoneController.php b/frontend/controllers/PhoneController.php index 83eba69..b9029d0 100644 --- a/frontend/controllers/PhoneController.php +++ b/frontend/controllers/PhoneController.php @@ -16,6 +16,7 @@ use common\models\NetworkPhoneAssignT; use common\models\NetworkPhoneSubT; use common\models\NetworkPhoneT; +use GuzzleHttp\Client; use Yii; use yii\console\Request; use yii\web\Response; @@ -723,11 +724,30 @@ class PhoneController extends \yii\web\Controller $phone = $request->get('phone',''); $user_id = $request->get('user_id',0); + //检查通话剩余分钟 + $url = Yii::$app->params['userPanel']['myinfo_url']; + $token = Yii::$app->params['userPanel']['token']; + + $client = new Client(); + $res = $client->request('GET', $url.'?token='.$token); + $phone_time = 0; + if($res->getStatusCode() == 200) { + $obj = json_decode($res->getBody(), true); + if($obj['code'] == 400) { + $result['msg'] = $obj['msg']; + return $result; + } + $phone_time = intval($obj['data']['phone_time']); + } + + if($phone_time <= 0) { + $result['msg'] = '电话剩余话费不足,请联系管理员充值'; + return $result; + } + $headers = array( "Content-Type: application/json;charset=UTF-8", "Accept:application/json", - - ); $uri = "http://api.1ketong.com/ykt-pool/number/ax2/call_out"; $app_key = '0946239060682011';