ajaxReturn($res); } $map = [ 'bill_id' => $bill_id ]; $field = [ 'id as sell_id', 'goods_id', 'goods_name', 'goods_img_id', 'sku_json_info', 'add_time' ]; $SellModel = new RetailSellModel(); $order_info = $SellModel->getSelect($map, $field); if ($order_info) { foreach ($order_info as &$value) { $value['add_time'] = date('Y-m-d', $value['add_time']); $value['goods_img'] = $this->getGoodsImage($value['goods_img_id']); // 处理规格名称 if ($value['sku_json_info']) { $value['sku_name'] = json_decode($value['sku_json_info'], true)['name']; $value['sku_id'] = json_decode($value['sku_json_info'], true)['id']; } else { $value['sku_name'] = ''; $value['sku_id'] = ''; } unset($value['sku_json_info']); unset($value['goods_img_id']); } $res['status'] = 1; $res['msg'] = '数据获取成功'; $res['data'] = $order_info; } else { $res['status'] = 1; $res['msg'] = '暂无数据,请稍后重试!'; $res['data'] = []; } $this->ajaxReturn($res); } /** * 用户发布评论 */ public function userReleaseEvaluate() { $uid = self::$uid; $store_id = self::$store_id; $bill_id = I('post.bill_id'); $evaluate_json = I('post.evaluate_json'); if (!$evaluate_json) { $res['status'] = 0; $res['msg'] = '必要参数缺失!'; $this->ajaxReturn($res); } $evaluate_data = json_decode($evaluate_json, true); $RetailBillOnline = new RetailBillOnlineModel(); $RetailOrderEvaluate = new RetailOrderEvaluateModel(); // 查询订单是否评价 if ($RetailBillOnline->getFind(['bill_id' => $bill_id, 'eval_status' => 1])) { $res['status'] = 0; $res['msg'] = '订单已评价!'; $this->ajaxReturn($res); } $evaluate_info = ''; foreach ($evaluate_data as &$value) { if (!$value['sell_id'] || !$value['goods_id']) { $res['status'] = 0; $res['msg'] = '必要参数缺失2!'; $this->ajaxReturn($res); } if (mb_strlen($value['content'], 'utf-8') > 100) { $res['status'] = 0; $res['msg'] = '评论内容过长!'; $this->ajaxReturn($res); } $field = [ 'bill_id' => (int)$bill_id, 'sell_id' => (int)$value['sell_id'], 'goods_id' => (int)$value['goods_id'], 'sku_id' => (int)$value['sku_id'], 'sku_name' => $value['sku_name'], 'goods_name' => $value['goods_name'], 'uid' => $uid, 'store_id' => $store_id, 'content' => urlencode($value['content']), 'stars' => $value['stars'], 'img_id' => $value['img_id'], 'create_time' => date('Y-m-d H:i:s', time()) ]; $evaluate_info = $RetailOrderEvaluate->addOrder($field); } $RetailBillOnline->updateOrder(['bill_id' => $bill_id], ['eval_status' => 1]); if ($evaluate_info) { $res['status'] = 1; $res['msg'] = '评价成功'; } else { $res['status'] = 0; $res['msg'] = '操作失败,请稍后评价!'; } $this->ajaxReturn($res); } /** * 获取商品第一个评论及条数 */ public function getGoodsEvaluate() { $goods_id = I('post.goods_id'); if (empty($goods_id)) { $res['status'] = 0; $res['msg'] = '必要参数缺失!'; $this->ajaxReturn($res); } $EvaluateModel = new RetailOrderEvaluateModel(); $evaluate_info = $EvaluateModel->getGoodsEvaluate($goods_id); $ImageGalleryModel = new ImageGalleryModel(); if ($evaluate_info['list']) { $evaluate_info['list']['evaluate_img'] = $ImageGalleryModel->getImageArray($evaluate_info['list']['img_id']); if (!$evaluate_info['list']['evaluate_img']) { $evaluate_info['list']['evaluate_img'] = []; } if (!$evaluate_info['list']['content']) { $evaluate_info['list']['content'] = '此用户没有填写评价'; }else{ $evaluate_info['list']['content'] = urldecode($evaluate_info['list']['content']); } $evaluate_info['list'] = array(0 => $evaluate_info['list']); $res['status'] = 1; $res['msg'] = '信息获取成功'; $res['data'] = $evaluate_info; } else { $res['status'] = 0; $res['msg'] = '该商品暂无评价'; } $this->ajaxReturn($res); } /** * 获取评论列表 */ public function getGoodsEvaluateList() { $goods_id = I('post.goods_id'); $page = I('post.page') ? I('post.page') : 1; $pageSize = I('post.pageSize') ? I('post.pageSize') : 3; if (empty($goods_id)) { $res['status'] = 0; $res['msg'] = '必要参数缺失!'; $this->ajaxReturn($res); } $EvaluateModel = new RetailOrderEvaluateModel(); $evaluate_list = $EvaluateModel->getGoodsEvaluateList($goods_id, $page, $pageSize); $ImageGalleryModel = new ImageGalleryModel(); if ($evaluate_list) { foreach ($evaluate_list as &$value) { $value['evaluate_img'] = $ImageGalleryModel->getImageArray($value['img_id']); if (!$value['evaluate_img']) { $value['evaluate_img'] = []; } if (!$value['content']) { $value['content'] = '此用户没有填写评价'; }else{ $value['content'] = urldecode($value['content']); } } $res['status'] = 1; $res['msg'] = '信息获取成功'; $res['data'] = $evaluate_list; } else { $res['status'] = 1; $res['msg'] = '该商品暂无评价'; $res['data'] = array(); } $this->ajaxReturn($res); } /** * 获取评论详情 */ public function getGoodsEvaluateDetails() { $evaluate_id = I('post.evaluate_id'); if (empty($evaluate_id)) { $res['status'] = 0; $res['msg'] = '必要参数缺失!'; $this->ajaxReturn($res); } $EvaluateModel = new RetailOrderEvaluateModel(); $evaluate_info = $EvaluateModel->getGoodsEvaluateDetails($evaluate_id); if ($evaluate_info) { $ImageGalleryModel = new ImageGalleryModel(); $evaluate_info['evaluate_img'] = $ImageGalleryModel->getImageArray($evaluate_info['img_id']); $res['status'] = 1; $res['msg'] = '数据获取成功!'; $res['data'] = $evaluate_info; } else { $res['status'] = 0; $res['msg'] = '数据异常,请稍后评价!'; } $this->ajaxReturn($res); } /** * 评论图片上传 */ public function evaluateImage() { $item_arr = array( 'add_time' => time(), 'from_type_id' => 50, 'localUrl' => 'Store/Evaluate', 'user_type' => 6, 'limit_size' => 5*1024*1024, 'merchant_id' => self::$merchant_id, ); $uploads = uploadFiles($item_arr); //上传图片 if (!empty($uploads['evaluate_img'])) { $res['status'] = 1; $res['evaluate_img_id'] = $uploads['evaluate_img']['id']; // 评论图片 $res['evaluate_path'] = $uploads['evaluate_img']['path']; //商品展示图片 } else { $res['status'] = 0; if($uploads['msg']){ $res['msg'] = $uploads['msg']; } else { $res['msg'] = '图片上传失败'; } } $this->ajaxReturn($res); } }