123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 |
- <?php
- namespace app\index\controller;
- use app\common\model\OrderListModel;
- use app\common\model\PayListModel;
- use app\common\model\UserAddressModel;
- use app\common\service\ServiceBaseInfo;
- use app\common\model\OrderModel;
- use think\Session;
- use think\Validate;
- class Order extends Base{
- public function _initialize()
- {
- parent::_initialize();
- }
- /**
- * 我的订单页面
- * @return mixed
- */
- public function order(){
- $params = $this->request->param();
- $rule = [
- ['order_status|订单类型','number'],
- ];
- $validate = new Validate($rule);
- if(!$validate->check($params)){
- $this->error($validate->getError(),'','','3');
- }
- if(isset($params['order_status'])){
- // echo $params['order_status'];exit;
- $order_status = $params['order_status'];
- Session::set('order_status',$order_status);
- } elseif (Session::has('order_status')){
- $order_status = Session::get('order_status');
- }else{
- $order_status = 0;
- }
- if($order_status==1){
- $order_status = 0;
- }
- if($order_status == 10){
- $order_status = 1;
- }
- if($order_status == 20){
- $order_status = 2;
- }
- if($order_status == 30){
- $order_status = 3;
- }
- if($order_status == 40){
- $order_status = 4;
- }
- // echo $order_status;
- $this->assign('status',$order_status);
- return $this->fetch('Order/order');
- }
- /**
- * 提交售后
- * @return mixed
- */
- public function sales(){
- $params = $this->request->param();
- $rule = [
- ['orderNo|用户名','require|number'],
- ];
- $validate = new Validate($rule);
- if(!$validate->check($params)){
- $this->error($validate->getError(),'','','3');
- }
- $this->assign('orderNo',$params['orderNo']);
- return $this->fetch('Order/sales');
- }
- /**
- * 订单详情页面
- */
- public function orderDetail(){
- $params = $this->request->param();
- $address_id = isset($params['address_id'])?$params['address_id']:'';
- $userAddressInfo = '';
- $is_have_address = 2;
- if($address_id){
- $userAddressModel = new UserAddressModel();
- $userAddressInfo = $userAddressModel->getOne(['address_id'=>$address_id,'status'=>1]);
- if(empty($userAddressInfo)){
- $this->error('地址信息有误');
- }
- $userAddressInfo['province'] = ServiceBaseInfo::getAddress(['level'=>1,'code'=>$userAddressInfo['province_code']]);
- $userAddressInfo['province'] = current($userAddressInfo['province']);
- $userAddressInfo['city'] = ServiceBaseInfo::getAddress(['level'=>2,'code'=>$userAddressInfo['city_code']]);
- $userAddressInfo['city'] = current($userAddressInfo['city']);
- $userAddressInfo['area'] = ServiceBaseInfo::getAddress(['level'=>3,'code'=>$userAddressInfo['area_code']]);
- $userAddressInfo['area'] = current($userAddressInfo['area']);
- $is_have_address = 1;
- }
- if(!Session::has('orderNo')){
- $this->error('订单数据有误');
- }
- $orderNo = Session::get('orderNo');
- $this->assign('orderNo',$orderNo);
- $this->assign('userAddressInfo',$userAddressInfo);
- $this->assign('is_have_address',$is_have_address);
- return $this->fetch('Order/orderDetail');
- }
- /**
- * 订单详情
- */
- public function order_apply(){
- $orderNo = Session::get('orderNo');
- $orderModel = new OrderModel();
- $orderInfo = $orderModel->getOne(['order_no'=>$orderNo]);
- if(empty($orderInfo)){
- $this->error('订单数据有误');
- }
- $orderDetailInfo = $orderModel->getOrderAndProduct(['order.order_no'=>$orderNo]);
- // print_r($orderDetailInfo);exit;
- foreach ($orderDetailInfo as &$orderDetail){
- $orderDetail['images'] = json_decode($orderDetail['images'],true);
- }
- $orderInfo['province'] = ServiceBaseInfo::getAddress(['level'=>1,'code'=>$orderInfo['province_code']]);
- $orderInfo['province'] = !empty($orderInfo['province'])?current($orderInfo['province']):'';
- $orderInfo['city'] = ServiceBaseInfo::getAddress(['level'=>2,'code'=>$orderInfo['city_code']]);
- $orderInfo['city'] = !empty($orderInfo['city'])?current($orderInfo['city']):'';
- $orderInfo['area'] = ServiceBaseInfo::getAddress(['level'=>3,'code'=>$orderInfo['area_code']]);
- $orderInfo['area'] = !empty($orderInfo['area'])?current($orderInfo['area']):'';
- $orderInfo['orderDetailInfo'] = $orderDetailInfo;
- // print_r($orderInfo);exit;
- $PayListModel = new PayListModel();
- $list = $PayListModel->getOne(['order_no'=>$orderNo]);
- $this->assign('list',$list);
- $this->assign('orderInfo',$orderInfo);
- return $this->fetch('Order/order_apply');
- }
- /**
- * 支付成功页面
- * @return mixed
- */
- public function paySuccess(){
- $orderNo = Session::get('orderNo');
- $orderModel = new OrderModel();
- $orderInfo = $orderModel->getOne(['order_no'=>$orderNo]);
- if(empty($orderInfo)){
- $this->error('订单数据有误');
- }
- $payList = new PayListModel();
- $payListInfo = $payList->getOne(['order_no'=>$orderNo]);
- if($payListInfo['status'] == 2){
- $this->redirect('/index/order/order_apply');
- }
- $this->assign('orderInfo',$orderInfo);
- return $this->fetch('Order/paySuccess');
- }
- public function sales_detail(){
- $params = $this->request->param();
- $rule = [
- ['orderNo|商品标识','require|number'],
- ];
- $validate = new Validate($rule);
- if(!$validate->check($params)){
- $this->error($validate->getError(),'','','3');
- }
- $orderList = new OrderListModel();
- $orderListInfo = $orderList->getOrderSales(['orderList.order_no'=>$params['orderNo']]);
- // print_r($orderListInfo);exit;
- $this->assign('orderListInfo',$orderListInfo);
- return $this->fetch('Order/sales_detail');
- }
- function getthemonth($date)
- {
- $firstday = date('Y-m-01', strtotime($date));
- $lastday = date('Y-m-d', strtotime("$firstday +1 month -1 day"));
- return array($firstday,$lastday);
- }
- public function aaa(){
- $date = date('Y-m-d');
- echo strtotime("21:00:00");
- // echo $date;
- $return = $this->getthemonth();
- $date == $return[1];
- echo $return[1];
- }
- /**
- * 购物车页面
- * @return mixed
- */
- public function car(){
- return $this->fetch('Order/car');
- }
- }
|