<?php /** * Created by PhpStorm. * User: Administrator * Date: 2019/6/5 * Time: 19:55 */ namespace app\portal\controller; use app\portal\model\AddressModel; use app\portal\model\IndentGoodsModel; use app\portal\model\IndentModel; use cmf\controller\WeChatBaseController; class OrderController extends WeChatBaseController { /** * 全部订单 * @return mixed * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException * @throws \think\exception\DbException */ public function get_all(){ $state = $this->request->param('state',0,'intval'); // if(!empty($state)){ // $where1['state'] = ['eq',$state]; // } $user_id = cmf_get_current_user_id(); $indentModel = new IndentModel(); $where1['uid'] = ['eq',$user_id]; $data = $indentModel->selectData($where1); if(!empty($data)){ $indentGoodsModel = new IndentGoodsModel(); foreach($data as $key => $vo){ $where2['indent_id'] = ['eq',$vo['id']]; $indentGoods = $indentGoodsModel->selectData($where2); $data[$key]['indent_goods'] = $indentGoods; } } $this->assign('data',$data); $this->assign('state',$state); return $this->fetch(); } public function get_one(){ $id = $this->request->param('id',0,'intval'); if(empty($id)){ $this->error('缺少必要参数','','',''); } $user_id = cmf_get_current_user_id(); $where1['uid'] = ['eq',$user_id]; $where1['id'] = ['eq',$id]; $indentModel = new IndentModel(); $data = $indentModel->findData($where1)->toArray(); if(empty($data)){ $this->error('未查询到该订单','','',''); } $where2['indent_id'] = ['eq',$data['id']]; $indentGoodsModel = new IndentGoodsModel(); $indentGoods = $indentGoodsModel->selectData($where2); $addressModle = new AddressModel(); $address = $addressModle->findData(['id'=>$data['indent_address']])->toArray(); $data['address'] = $address; $data['indent_goods'] = $indentGoods; $this->assign('data',$data); return $this->fetch(); } public function cancel_order(){ $id = $this->request->param('id',0,'intval'); if(empty($id)){ $this->error('缺少必要参数','','',''); } $where1['id'] = ['eq',$id]; $indentModel = new IndentModel(); $data = $indentModel->findData($where1); if(empty($data)){ $this->error('缺少必要参数','','',''); } if($data['state'] != 4){ $this->error('订单不是待支付状态','','',''); } $result = $indentModel->deleteData($where1); if(empty($result)){ $this->error('sql执行失败','','',''); } $this->success('SUCCESS'); } }