123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- <?php
- /**
- * Created by PhpStorm.
- * User: north
- * Date: 2017/8/31
- * Time: 上午10:00
- */
- class POrderController extends AdminController
- {
- public function actionIndex()
- {
- $status = CommonFn::getComboboxData(POrder::$status_options, 100, true,100);
- $package_product = CommonFn::getComboboxData(POrder::$standards_options, 1);
- $this->render('index', array(
- 'status' => $status,
- 'package_product'=> $package_product,
- ));
- }
- public function actionList(){
- $floor = Yii::app()->request->getParam('floor','');
- $room = Yii::app()->request->getParam('room','');
- $date_start_book = strtotime(Yii::app()->request->getParam('date_start_book',''));
- $date_end_book = strtotime(Yii::app()->request->getParam('date_end_book',''));
- $params = CommonFn::getPageParams();
- $criteria = new EMongoCriteria($params);
- if ($floor) {
- $criteria->addCond('address.floor','==',$floor);
- }
- if ($room) {
- $criteria->addCond('address.room','==',$room);
- }
- if ($date_end_book < $date_start_book) {
- $tmp = $date_end_book;
- $date_end_book = $date_start_book;
- $date_start_book = $tmp;
- }
- if ($date_start_book) {
- $criteria->addCond('order_time','>=',$date_start_book);
- }
- if ($date_end_book) {
- $criteria->addCond('order_time','<=',$date_end_book);
- }
- $cursor = POrder::model()->findAll($criteria);
- $total = $cursor->count();
- $rows = CommonFn::getRowsFromCursor($cursor);
- $parsedRows = POrder::model()->parse($rows);
- echo CommonFn::composeDatagridData($parsedRows, $total);
- }
- public function actionAdd () {
- $order_time = Yii::app()->request->getParam('order_time','');
- $floor = Yii::app()->request->getParam('floor','');
- $room = Yii::app()->request->getParam('room','');
- $service_employer = Yii::app()->request->getParam('service_employer','');
- $package = Yii::app()->request->getParam('package','');
- $order = new POrder();
- $criteria = new EMongoCriteria();
- $criteria->user_name('==',$service_employer);
- $userInfo = Employe::model()->find($criteria);
- //获取服务人员信息
- if ($userInfo) {
- $order->service_employer = $userInfo->_id;//服务人员Id
- } else {
- CommonFn::requestAjax(false, '服务人员信息不存在');exit;
- }
- $order->order_time = strtotime($order_time);//服务日期
- $order->address['floor'] = $floor;//楼号
- $order->address['room'] = $room;//房号
- $order->service_standards = $package;//服务标准
- $order->status = 0;//已派单
- $order->in_room_time = 0;
- $order->out_room_time = 0;
- $result = $order->save();
- CommonFn::requestAjax($result, '', array());
- }
- // 根据手机号 获取对应用户的地址信息
- public function actionGetUserInfo(){
- $user_name = Yii::app()->request->getParam('user_name', '');
- $criteria = new EMongoCriteria();
- $criteria->addCond('user_name', 'or', new MongoRegex('/'.$user_name.'/'));
- $criteria->addCond('auth','==',6);
- $userInfos = Employe::model()->findAll($criteria);
- $result = array();
- $index = 0;
- foreach ($userInfos as $k => $v) {
- $result[] = array(
- 'id' => $index++,
- 'data' => $v->user_name,
- 'description' => $v->mobile,
- );
- }
- echo json_encode($result);exit;
- }
- public function actionAddComplaintsInfo()
- {
- $order_id = Yii::app()->request->getParam('id','');
- $user_name = Yii::app()->request->getParam('user_name','');
- $result = Yii::app()->request->getParam('result','');
- $feedback = Yii::app()->request->getParam('feedback','');
- $desc = Yii::app()->request->getParam('desc','');
- if (!CommonFn::isMongoId($order_id)) {
- CommonFn::requestAjax(false, 'id_not_exits');exit;
- }
- $porder = POrder::get(new MongoId($order_id));
- $complaints = new Complaints();
- $complaints->com_time = $porder->order_time;
- $complaints->address = $porder->address;
- $complaints->user_name = $user_name;
- $complaints->p_id = $order_id;
- $complaints->employer = Employe::get(new MOngoId($porder->service_employer))->user_name;
- $complaints->result = $result;
- $complaints->feedback = $feedback;
- $complaints->desc = $desc;
- $res = $complaints->save();
- if ($res) {
- CommonFn::requestAjax(true, '保存成功');exit;
- } else {
- CommonFn::requestAjax(true, '保存失败');exit;
- }
- }
- }
|