|
- <?php
- /**
- *
- * ============================================================================
- * * 版权所有 运游通 * *
- * 网站地址: http://www.zhizhuchuxing.com
- * ----------------------------------------------------------------------------
- * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和
- * 使用;不允许对程序代码以任何形式任何目的的再发布。
- * ============================================================================
- * Author By: Redstop
- * PhpStorm CtripController.php
- * Create By 2017/4/17 10:03 $
- */
-
- namespace backend\modules\api\controllers;
-
- use backend\modules\api\logic\Ctrip;
- use backend\modules\api\models\OrderTitle;
- use common\util\CtripUtil;
- use yii\web\Controller;
-
- class CtripController extends Controller
- {
- public $enableCsrfValidation = false;
- /***
- * @var array 接口列表
- */
- public $apiList = [
- 'VerifyOrder' => 'VerifyOrder',//下单验证接口
- 'CreateOrder' => 'CreateOrder',//订单下单接口
- 'CancelOrder' => 'CancelOrder',//订单取消接口
- 'QueryOrder' => 'QueryOrder',//订单查询接口
- 'ReSend' => 'ReSend',//凭证重发接口
- 'GetFromCityList' => 'GetFromCityList',//获取出发城市
- 'GetToCityList' => 'GetToCityList',//获取到达城市
- 'GetLine' => 'GetLine',//获取线路数据
- //下面两个接口模拟携程返回
- 'NoticeOrderCancel' => 'NoticeOrderCancel',//订单取消审核结果通知接口
- 'NoticeOrderConsumed' => 'NoticeOrderConsumed',//消费通知接口
- ];
- public $unCheck = [
- 'Send-test',
- 'Verify-order',
- ];
-
- public $logic = null;
-
- /**
- * Des:logic
- * Name: logic
- * @return Ctrip
- * @author 倪宗锋
- */
- public function logic()
- {
- if ($this->logic == null) {
- $this->logic = new Ctrip();
- }
- return $this->logic;
- }
-
- /**
- * Des:接口入口验证 入口指引
- * Name: beforeAction
- * @param \yii\base\Action $action
- * @return bool
- * @author 倪宗锋
- */
- // public function beforeAction($action)
- // {
- // $actionName = ucfirst($action->id);
- // //校验是否需要校验参数
- // if (in_array($actionName, $this->unCheck) == false) {
- // $result = CtripUtil::util()->getRequest();
- // if ($result['flag'] == false) {
- // CtripUtil::util()->returnErr($result['msg'], $result['code'], $result['data']);
- // return false;
- // }
- // $actionName = empty($result['data']['header']['serviceName']) ? '' : $result['data']['header']['serviceName'];
- // if (empty($this->apiList[$actionName])) {
- // CtripUtil::util()->returnErr("参数不合法+【serviceName】", '1006');
- // return false;
- // }
- // CtripUtil::util()->setAction($action, $actionName);
- // }
- // return parent::beforeAction($action);
- // }
-
- /**
- * Des:入口 不会访问
- * Name: actionOrderhandler
- * @author 倪宗锋
- */
- public function actionOrderhandler()
- {
- }
-
- /**
- * Des:发送调试
- * Name: actionSendTest
- * @return string
- * @author 倪宗锋
- */
- public function actionSendTest()
- {
- $orderTitle = new OrderTitle();
- $obj = $orderTitle::findOne(['outside_order_no' => $_GET['ctrip_order']]);
- $obj->order_title_status = 3;
- $obj->update();
- $data = [
- 'otaOrderId' => $_GET['ctrip_order'],
- 'vendorOrderId' => $_GET['order_id'],
- 'useDate' => date('Y-m-d'),
- 'amount' => 1,
- 'count' => 1,
- 'useCount' => 1,
- 'cancelCount' => 0,
- 'orderStatus' => 5
- ];
- $ctripUtil = CtripUtil::init()->exec('NoticeOrderConsumed', $data);
- if ($ctripUtil['flag'] == false) {
- return CtripUtil::util()->returnErr($ctripUtil['msg'], $ctripUtil['code'], $ctripUtil['data']);
- }
- return CtripUtil::util()->returnSu('', $ctripUtil['data']);
- }
-
- /**
- * Des:验证下单接口
- * Name: actionVerifyOrder
- * @author 娄梦宁
- */
- public function actionVerifyOrder()
- {
- $params = CtripUtil::util()->getBody();
- $logic = new Ctrip();
- $verify_result = $logic->VerifyOrder($params);
- if ($verify_result['flag']) {
- return CtripUtil::util()->returnSu('验证成功', $verify_result['data']);
- } else {
- return CtripUtil::util()->returnErr($verify_result['msg'], $verify_result['code'], $verify_result['data']);
- }
- }
-
- /**
- * Des:下单接口
- * Name: actionCreateOrder
- * @author 娄梦宁
- */
- public function actionCreateOrder()
- {
- $params = CtripUtil::util()->getBody();
- $logic = new Ctrip();
- $create_result = $logic->CreateOrder($params);
- if ($create_result['flag']) {
- return CtripUtil::util()->returnSu('下单成功', $create_result['data']);
- } else {
- return CtripUtil::util()->returnErr($create_result['msg'], $create_result['code'], $create_result['data']);
- }
- }
-
- /**
- * Des:申请取消订单接口
- * Name: actionCancelOrder
- * @return string
- * @author 倪宗锋
- */
- public function actionCancelOrder()
- {
- $params = CtripUtil::util()->getBody();
- $result = $this->logic()->CancelOrder($params);
- if ($result['flag'] == true) {
- return CtripUtil::util()->returnSu('申请取消成功', $result['data']);
- } else {
- return CtripUtil::util()->returnErr($result['msg'], $result['code'], $result['data']);
- }
- }
-
- /**
- * Des:订单查询接口
- * Name: actionQueryOrder
- * @author 倪宗锋
- */
- public function actionQueryOrder()
- {
- $params = CtripUtil::util()->getBody();
- $result = $this->logic()->QueryOrder($params);
- if ($result['flag'] == true) {
- return CtripUtil::util()->returnSu('查询成功', $result['data']);
- } else {
- return CtripUtil::util()->returnErr($result['msg'], $result['code'], $result['data']);
- }
- }
-
- /**
- * Function Description:获取出发城市列表
- * Function Name: actionGetFromCityList
- * @return string
- * @author 田玲菲
- */
- public function actionGetFromCityList()
- {
- $params = CtripUtil::util()->getBody();
- $result = $this->logic()->GetFromCityList($params);
- return CtripUtil::util()->returnSu('获取数据成功', $result['data']);
- }
-
-
- /**
- * Function Description:获取到达城市
- * Function Name: actionGetToCityList
- * @return string
- * @author 田玲菲
- */
- public function actionGetToCityList(){
- $params = CtripUtil::util()->getBody();
- $result = $this->logic()->GetToCityList($params);
- if ($result['flag'] == true) {
- return CtripUtil::util()->returnSu('获取数据成功', $result['data']);
- }else{
- return CtripUtil::util()->returnErr($result['msg'], $result['code'], $result['data']);
- }
- }
-
-
- }
|