239 行
7.2 KiB
PHP
可执行文件
239 行
7.2 KiB
PHP
可执行文件
<?php
|
|
|
|
|
|
namespace Retail\Controller;
|
|
|
|
use Common\Model\ImageGalleryModel;
|
|
use Common\Model\RetailBillOrderModel;
|
|
use Common\Model\RetailSellModel;
|
|
use Common\Model\RetailOrderEvaluateModel;
|
|
use Think\Controller;
|
|
|
|
//[1.8.50]
|
|
|
|
/**
|
|
* OrderEvaluateController 后台-零售小程序商品评价
|
|
* @author shao nianyi
|
|
* @create_time 2020年4月10日
|
|
*/
|
|
class OrderEvaluateController extends BaseController
|
|
{
|
|
/**
|
|
* 评价列表展示
|
|
*/
|
|
public function index()
|
|
{
|
|
$this->display();
|
|
}
|
|
|
|
/**
|
|
* 获取门店商品评价
|
|
*/
|
|
public function getEvaluateByStore()
|
|
{
|
|
$goods_name = I('post.goods_name');
|
|
$nickname = I('post.nickname');
|
|
$stars = I('post.stars');
|
|
$is_hide = I('post.is_hide');
|
|
$start_time = I('post.start_time');
|
|
$end_time = I('post.end_time');
|
|
$page = I('post.page');
|
|
$pageSize = I('post.pageSize');
|
|
|
|
$RetailOrderEvaluate = new RetailOrderEvaluateModel();
|
|
|
|
$map['roe.state'] = 2;
|
|
$map['roe.store_id'] = $this->store_id;;
|
|
if ($nickname) {
|
|
$map['rx.nickname'] = ['like', "%{$nickname}%"];
|
|
}
|
|
if ($goods_name) {
|
|
$map['roe.goods_name'] = ['like', "%{$goods_name}%"];
|
|
}
|
|
if ($stars) {
|
|
$map['roe.stars'] = $stars;
|
|
}
|
|
if ($is_hide) {
|
|
$map['roe.is_hide'] = $is_hide;
|
|
}
|
|
if ($start_time && $end_time) {
|
|
$map['roe.create_time'] = array('between', array($start_time, $end_time));
|
|
} else if ($start_time && !$end_time) {
|
|
$map['roe.create_time'] = ['gt', $start_time];
|
|
} else if (!$start_time && $end_time) {
|
|
$map['roe.create_time'] = ['lt', $end_time];
|
|
}
|
|
$list = $RetailOrderEvaluate->getEvaluateByStore($map, $page, $pageSize);
|
|
if (!empty($list['list'])) {
|
|
$ImageGalleryModel = new ImageGalleryModel();
|
|
foreach ($list['list'] as &$value) {
|
|
$value['goods_img'] = $ImageGalleryModel->getImageArray($value['goods_img_id']);
|
|
if ($value['content']) $value['content'] = urldecode($value['content']);
|
|
}
|
|
$res['status'] = 1;
|
|
$res['msg'] = '数据获取成功!';
|
|
$res['data'] = $list;
|
|
} else {
|
|
$res['status'] = 1;
|
|
$res['msg'] = '暂无数据';
|
|
$res['data'] = array();
|
|
}
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
// 查看评价详情
|
|
public function getEvaluateDetails()
|
|
{
|
|
$evaluate_id = I('post.evaluate_id');
|
|
|
|
$RetailOrderEvaluate = new RetailOrderEvaluateModel();
|
|
|
|
$where['id'] = $evaluate_id;
|
|
|
|
$field = [
|
|
'content',
|
|
'img_id'
|
|
];
|
|
|
|
$evaluate_info = $RetailOrderEvaluate->getOrderFind($where, $field);
|
|
if (!$evaluate_info) {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '必要参数缺失!';
|
|
$this->ajaxReturn($res);
|
|
}
|
|
$evaluate_info['content'] && ($evaluate_info['content'] = urldecode($evaluate_info['content']));
|
|
$ImageGalleryModel = new ImageGalleryModel();
|
|
$evaluate_info['goods_img'] = $ImageGalleryModel->getImageArray($evaluate_info['img_id']);
|
|
unset($evaluate_info['img_id']);
|
|
$res['status'] = 1;
|
|
$res['msg'] = '数据获取成功';
|
|
$res['data'] = $evaluate_info;
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
// 查看订单详情
|
|
public function getBillDetails()
|
|
{
|
|
$bill_id = I('post.bill_id');
|
|
|
|
if (!$bill_id) {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '必要参数缺失!';
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
// 获取订单号与订单时间
|
|
$RetailBillOnline = new RetailBillOrderModel();
|
|
$billMap = [
|
|
'id' => $bill_id
|
|
];
|
|
|
|
$billField = [
|
|
'add_time',
|
|
'order_no'
|
|
];
|
|
$bill_info = $RetailBillOnline->getOrderFind($billMap, $billField);
|
|
if ($bill_info) {
|
|
$bill_info['add_time'] = date('Y-m-d H:i:s', $bill_info['add_time']);
|
|
}
|
|
|
|
// 获取订单详情
|
|
$RetailSell = new RetailSellModel();
|
|
|
|
$sellMap = [
|
|
'bill_id' => $bill_id
|
|
];
|
|
|
|
$sellField = [
|
|
's.goods_name',
|
|
's.goods_img_id',
|
|
's.price',
|
|
's.original_price',
|
|
's.vip_discount',
|
|
's.sell_number',
|
|
's.all_money'
|
|
];
|
|
$goods_info = $RetailSell->getSelectAndGoods($sellMap, $sellField);
|
|
$ImageGalleryModel = new ImageGalleryModel();
|
|
if ($goods_info) {
|
|
foreach ($goods_info as &$value) {
|
|
$value['goods_img'] = $ImageGalleryModel->getImageArray($value['goods_img_id'])[0];
|
|
}
|
|
}
|
|
|
|
$list['bill_info'] = $bill_info;
|
|
$list['goods_info'] = $goods_info;
|
|
|
|
$res['status'] = 1;
|
|
$res['msg'] = '数据获取成功';
|
|
$res['data'] = $list;
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
// 更改评价显示状态
|
|
public function updateEvaluateHide()
|
|
{
|
|
$evaluate_id = I('post.evaluate_id');
|
|
if (!$evaluate_id) {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '必要参数缺失11!';
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
$RetailOrderEvaluate = new RetailOrderEvaluateModel();
|
|
$where['id'] = $evaluate_id;
|
|
$evaluate_info = $RetailOrderEvaluate->getFindTrue($where);
|
|
if (!$evaluate_info) {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '评价信息有误!';
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
if ($evaluate_info['is_hide'] == 1) {
|
|
$result = $RetailOrderEvaluate->updateOrder(['id' => $evaluate_id], ['is_hide' => 2]);
|
|
} else {
|
|
$result = $RetailOrderEvaluate->updateOrder(['id' => $evaluate_id], ['is_hide' => 1]);
|
|
}
|
|
|
|
if ($result) {
|
|
$res['status'] = 1;
|
|
$res['msg'] = '操作成功';
|
|
} else {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '操作失败,请稍后!';
|
|
}
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
// 更改评价置顶状态
|
|
public function updateEvaluateTop()
|
|
{
|
|
$evaluate_id = I('post.evaluate_id');
|
|
$store_id = $this->store_id;
|
|
|
|
$where['id'] = $evaluate_id;
|
|
$RetailOrderEvaluate = new RetailOrderEvaluateModel();
|
|
$evaluate_info = $RetailOrderEvaluate->getFindTrue($where);
|
|
if (!$evaluate_info) {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '必要参数缺失!';
|
|
$this->ajaxReturn($res);
|
|
}
|
|
|
|
if ($evaluate_info['is_top'] == 1) {
|
|
$result = $RetailOrderEvaluate->updateOrder(['id' => $evaluate_id], ['is_top' => 2]);
|
|
} else {
|
|
$RetailOrderEvaluate->updateOrder(['store_id' => $store_id], ['is_top' => 2]); // 取消其他置顶
|
|
$result = $RetailOrderEvaluate->updateOrder(['id' => $evaluate_id], ['is_top' => 1]);
|
|
}
|
|
if ($result) {
|
|
$res['status'] = 1;
|
|
$res['msg'] = '操作成功';
|
|
} else {
|
|
$res['status'] = 0;
|
|
$res['msg'] = '操作有误!';
|
|
}
|
|
$this->ajaxReturn($res);
|
|
}
|
|
}
|