|
- <?php
- /**
- *
- * ============================================================================
- * * 版权所有 蜘蛛出行 * *
- * 网站地址: http://www.zhizhuchuxing.com
- * ----------------------------------------------------------------------------
- * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和
- * 使用;不允许对程序代码以任何形式任何目的的再发布。
- * ============================================================================
- * Author By: 温依莅
- * PhpStorm GetStockController.php 获取巴士,酒店,门票的库存和成本价信息接口
- * Create By 2017/6/23 9:44 $
- */
- namespace backend\modules\api\controllers;
-
- use backend\modules\api\logic\GetTouristStock;
- use backend\modules\api\logic\GetStockData;
- use backend\modules\api\models\OperaProductRun;
- use console\models\GroupOrder;
- use yii\web\Controller;
- use Yii;
- use Zend\Validator\Date;
-
- class GetStockController extends Controller
- {
- public $enableCsrfValidation = false;
-
- /**
- * Function Description:入口
- * Function Name: actionIndex
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionIndex()
- {
- $request = Yii::$app->request;
- $action = $request->post('action');
- $func = 'action';
- $action = explode('_', $action);
- foreach ($action as $key => $vel) {
- $func .= ucfirst($vel);
- }
-
- if ($action === false || method_exists($this, $func) == false) {
- $json = ['code' => 1, 'info' => '必要参数缺失'];
- return json_encode($json);
- }
- return $this->$func();
- }
-
- /**
- * Function Description:获取格式化的组合产品库存成本【不报错,若无则返回全是0的信息】
- * Function Name: actionGetFormatTouristStock
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetFormatTouristStock()
- {
- $tourist_id = Yii::$app->request->post('tourist_id', -1);//组合产品id
- $run_date = Yii::$app->request->post('run_date', -1);//起始日期
- $org_id = Yii::$app->request->post('org_id', 164);//组合产品销售渠道id
- $user_id = Yii::$app->request->post('user_id', -1);//用户id
- $main_corp_id = Yii::$app->request->post('main_corp_id', -1);//运营主体id,(可不传,则根据user_id判断)
-
- $tourist_stock_obj = new GetTouristStock();
- $res = $tourist_stock_obj->getFormatTouristStock($tourist_id, $run_date, $org_id, $user_id, $main_corp_id);
- return json_encode($res);
- }
-
- /**
- * Function Description:获取自由行产品实际需要支付金额
- * Function Name: actionGetTouristPayTotal
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetTouristPayTotal()
- {
- $tourist_id = Yii::$app->request->post('sign', -1);//组合产品id
- $run_date = Yii::$app->request->post('date', -1);//起始日期
- $prod_arr = Yii::$app->request->post('prod_arr', -1);//票种信息(购买数量)
- $org_id = Yii::$app->request->post('org_id', 164);//用户id
- $user_id = Yii::$app->request->post('user_id', 2);//用户id
- if ($tourist_id == -1 || $run_date == -1 || $prod_arr == -1) {
- $result['code'] = '1';
- $result['info'] = '参数缺失';
- return json_encode($result);
- }
- $tourist_stock_obj = new GetTouristStock();
- $res = $tourist_stock_obj->getTouristPayTotal($tourist_id, $run_date, $org_id, $user_id, json_decode($prod_arr,true));
- return json_encode($res);
- }
-
- /**
- * Function Description:获取组合产品库存和成本
- * Function Name: actionGetTouristStock
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetTouristStock()
- {
- $tourist_id = Yii::$app->request->post('tourist_id', -1);//组合产品id
- $run_date = Yii::$app->request->post('run_date', -1);//起始日期
- $org_id = Yii::$app->request->post('org_id', 164);//组合产品销售渠道id
- $user_id = Yii::$app->request->post('user_id', -1);//用户id
- $main_corp_id = Yii::$app->request->post('main_corp_id', -1);//运营主体id,(可不传,则根据user_id判断)
-
- $tourist_stock_obj = new GetTouristStock();
- $result = array();
- if ($tourist_id == -1 || $run_date == -1 || $user_id == -1) {
- $result['code'] = '1';
- $result['info'] = '参数格式有误';
- return json_encode($result);
- }
- $res = $tourist_stock_obj->getTouristStock($tourist_id, $run_date, $org_id, $user_id, $main_corp_id);
- return json_encode($res);
- }
-
- /**
- * Function Description:巴士根据票种,和票种出发时间获取班次run_id
- * Function Name: actionGetBusRunInfo
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetBusRunInfo()
- {
- $prod_id = Yii::$app->request->post('prod_id', -1);
- $run_date = Yii::$app->request->post('run_date', -1);
- $start_time = Yii::$app->request->post('start_time', -1);
- $tourist_stock_obj = new GetTouristStock();
- $result = array();
- if ($prod_id == -1 || $run_date == -1 || $start_time == -1) {
- $result['code'] = '1';
- $result['info'] = '参数格式有误';
- return json_encode($result);
- }
- $res = $tourist_stock_obj->getBusRunInfo($prod_id, $run_date, $start_time);
- return json_encode($res);
- }
-
- /**
- * Function Description:获取巴士库存
- * Function Name: actionGetBusStock
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetBusStock()
- {
- $run_id = Yii::$app->request->post('run_id', -1);
- $prod_id = Yii::$app->request->post('prod_id', -1);
- $stock_obj = new GetStockData();
- $result = array();
- if ($run_id == -1 || $prod_id == -1) {
- $result['code'] = '1';
- $result['info'] = '参数格式有误';
- return json_encode($result);
- }
- $res = $stock_obj->getBusBasicStock($run_id, $prod_id);
- return json_encode($res);
- }
-
- /**
- * Function Description:获取巴士成本
- * Function Name: actionGetBusCost
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetBusCost()
- {
- $prod_id = Yii::$app->request->post('prod_id', -1);//票种id
- $user_id = Yii::$app->request->post('user_id', -1);//下单用户id
- $org_id = Yii::$app->request->post('org_id', -1);//渠道id
- $main_corp_id = Yii::$app->request->post('main_corp_id', -1);//运营主体id,若不传则根据user_id判断运营主体
- $stock_obj = new GetStockData();
- $result = array();
- if ($prod_id == -1 || $user_id == -1 || $org_id == -1) {
- $result['code'] = '1';
- $result['info'] = '参数格式有误';
- return json_encode($result);
- }
-
- $res = $stock_obj->getBusBasicCost($prod_id, $org_id, $user_id, $main_corp_id);
-
- return json_encode($res);
- }
-
- /**
- * Function Description:获取酒店成本和库存
- * Function Name: actionGetHotelStock
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetHotelStock()
- {
- $org_id = Yii::$app->request->post('org_id', -1);//渠道id
- $hotel_id = Yii::$app->request->post('hotel_id', -1);//酒店id
- $base_room_type = Yii::$app->request->post('base_room_type', -1);//基础子房型id
- $room_type = Yii::$app->request->post('room_type', -1);//子房型id
- $run_date = Yii::$app->request->post('run_date', -1);//入住日期
-
- $stock_obj = new GetStockData();
- $result = array();
- if ($org_id == -1 || $hotel_id == -1 || $base_room_type == -1 || $room_type == -1 || $run_date == -1) {
- $result['code'] = '1';
- $result['info'] = '参数格式有误';
- return json_encode($result);
- }
-
- $res = $stock_obj->getHotelBasicStock($hotel_id, $base_room_type, $room_type, $run_date, $org_id);
-
- return json_encode($res);
- }
-
- /**
- * Function Description:获取门票成本和库存
- * Function Name: actionGetTicketStock
- *
- * @return string
- *
- * @author 温依莅
- */
- public function actionGetTicketStock()
- {
- $main_prod_id = Yii::$app->request->post('main_prod_id', -1);//父票种id
- $sub_prod_id = Yii::$app->request->post('sub_prod_id', -1);//子票种id
- $run_date = Yii::$app->request->post('run_date', -1);//日期
-
- $stock_obj = new GetStockData();
- $result = array();
- if ($main_prod_id == -1 || $sub_prod_id == -1 || $run_date == -1) {
- $result['code'] = '1';
- $result['info'] = '参数格式有误';
- return json_encode($result);
- }
-
- $res = $stock_obj->getTicketBasicStock($main_prod_id, $sub_prod_id, $run_date,0);
-
- return json_encode($res);
- }
- /**
- * Function Description:测试对自由行产品已确认订单发送预订成功短信
- * Function Name: actionSendBookMsg
- *
- *
- * @author 温依莅
- */
- public function actionSendBookMsg(){
- $group_obj=new GroupOrder();
- $group_obj->sendBookMsg();
- }
-
-
- /**
- * Function Description:查询门票价格统一接口
- * Function Name: getProdPrice
- *
- * @return string
- *
- * @author 冒炎
- */
- public function actionGetProdPrice(){
- $request = Yii::$app->request;
- $run_date =$request->post('run_date',-1);
- $to_org_id = $request->post('to_org_id',-1);
- $sub_prod_id = $request->post('prod_id',-1);
- if($run_date == -1||$to_org_id==-1||$sub_prod_id==-1){
- return json_encode(['code'=>'1','info'=>'参数有误']);
- }
- $logic = new GetStockData();
- $data = $logic->getProdPrice($run_date,$to_org_id,$sub_prod_id);
- return json_encode($data);
-
-
- }
-
- }
|