package com.ruoyi.order.controller;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.ruoyi.common.core.web.domain.AjaxResult;
|
import com.ruoyi.common.core.web.page.PageInfo;
|
import com.ruoyi.common.log.annotation.Log;
|
import com.ruoyi.common.log.enums.BusinessType;
|
import com.ruoyi.common.log.enums.OperatorType;
|
import com.ruoyi.common.security.annotation.Logical;
|
import com.ruoyi.common.security.annotation.RequiresPermissions;
|
import com.ruoyi.common.security.service.TokenService;
|
import com.ruoyi.order.api.model.TOrderEvaluate;
|
import com.ruoyi.order.api.model.TOrderEvaluateTag;
|
import com.ruoyi.order.api.query.TOrderEvaluateQuery;
|
import com.ruoyi.order.api.vo.SiteDetailEvaluateVO;
|
import com.ruoyi.order.api.vo.TOrderEvaluateVO;
|
import com.ruoyi.order.dto.GetOrderEvaluatePageList;
|
import com.ruoyi.order.dto.GetOrderEvaluatePageListDTO;
|
import com.ruoyi.order.dto.OrderEvaluateVo;
|
import com.ruoyi.order.service.TOrderEvaluateService;
|
import com.ruoyi.order.service.TOrderEvaluateTagService;
|
import com.ruoyi.order.vo.ReplyEvaluationVO;
|
import com.ruoyi.other.api.vo.TEvaluationTagVO;
|
import io.swagger.annotations.*;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* <p>
|
* 前端控制器
|
* </p>
|
*
|
* @author xiaochen
|
* @since 2024-08-07
|
*/
|
@Api(tags = "订单评价")
|
@RestController
|
@RequestMapping("/t-order-evaluate")
|
public class TOrderEvaluateController {
|
|
@Autowired
|
private TOrderEvaluateService orderEvaluateService;
|
|
@Resource
|
private TOrderEvaluateTagService orderEvaluateTagService;
|
|
@Resource
|
private TokenService tokenService;
|
|
|
|
|
@ApiOperation(tags = {"小程序-订单评价"},value = "充电订单评价标签及数量查询")
|
@GetMapping(value = "/getTagCount")
|
public AjaxResult<List<TEvaluationTagVO>> getTagCount(@ApiParam(value = "站点id")Integer siteId) {
|
return AjaxResult.ok(orderEvaluateService.getTagCount(siteId));
|
}
|
|
|
@ApiOperation(tags = {"小程序-订单评价"},value = "充电订单评价分页列表查询")
|
@PostMapping(value = "/pageList")
|
public AjaxResult<PageInfo<TOrderEvaluateVO>> pageList(@RequestBody TOrderEvaluateQuery query) {
|
return AjaxResult.ok(orderEvaluateService.getTagList(query));
|
}
|
|
|
|
|
|
|
@RequiresPermissions(value = {"/chargeEvaluation/list"}, logical = Logical.OR)
|
@PostMapping(value = "/getPageList")
|
@ApiOperation(value = "获取充电评价列表", tags = {"管理后台-充电评价"})
|
public AjaxResult<PageInfo<GetOrderEvaluatePageListDTO>> getPageList(@RequestBody GetOrderEvaluatePageList pageList){
|
PageInfo<GetOrderEvaluatePageListDTO> list = orderEvaluateService.getPageList(pageList);
|
return AjaxResult.success(list);
|
}
|
|
|
@RequiresPermissions(value = {"/chargeEvaluation/del"}, logical = Logical.OR)
|
@DeleteMapping(value = "/delOrderEvaluate/{id}")
|
@ApiOperation(value = "删除充电评价", tags = {"管理后台-充电评价"})
|
public AjaxResult delOrderEvaluate(@PathVariable("id") Long id){
|
TOrderEvaluate orderEvaluate = orderEvaluateService.getById(id);
|
orderEvaluateService.removeById(orderEvaluate);
|
orderEvaluateTagService.remove(new LambdaQueryWrapper<TOrderEvaluateTag>().eq(TOrderEvaluateTag::getOrderEvaluateId, id));
|
return AjaxResult.success();
|
}
|
|
|
|
@RequiresPermissions(value = {"/chargeEvaluation/reply"}, logical = Logical.OR)
|
@PostMapping(value = "/replyEvaluation")
|
@ApiOperation(value = "充电评价回复", tags = {"管理后台-充电评价"})
|
public AjaxResult replyEvaluation(@RequestBody ReplyEvaluationVO vo){
|
TOrderEvaluate orderEvaluate = orderEvaluateService.getById(vo.getId());
|
String reply = vo.getReply().replaceAll("& #40;", "(")
|
.replaceAll("& #41;", ")")
|
.replaceAll("& #40;", "(")
|
.replaceAll("& #41;", ")")
|
.replaceAll("& #39;", "'")
|
.replaceAll("& lt;", "<")
|
.replaceAll("& gt;", ">");
|
orderEvaluate.setEvaluationResponse(reply);
|
orderEvaluate.setResponseTime(LocalDateTime.now());
|
orderEvaluateService.updateById(orderEvaluate);
|
return AjaxResult.success();
|
}
|
|
|
|
@RequiresPermissions(value = {"/chargeEvaluation/del"}, logical = Logical.OR)
|
@DeleteMapping(value = "/delOrderEvaluateReply/{id}")
|
@ApiOperation(value = "删除充电评价回复", tags = {"管理后台-充电评价"})
|
public AjaxResult delOrderEvaluateReply(@PathVariable("id") Long id){
|
TOrderEvaluate orderEvaluate = orderEvaluateService.getById(id);
|
orderEvaluate.setEvaluationResponse("");
|
orderEvaluateService.updateById(orderEvaluate);
|
return AjaxResult.success();
|
}
|
|
|
@ApiOperation(tags = {"小程序-订单评价"},value = "电站详情中评价列表查询")
|
@GetMapping(value = "/getSiteDetailEveList")
|
public AjaxResult<SiteDetailEvaluateVO> getSiteDetailEveList(@RequestParam(value = "siteId")@ApiParam(value = "站点id")Integer siteId) {
|
return AjaxResult.ok(orderEvaluateService.getSiteDetailEveList(siteId));
|
}
|
|
|
|
|
@Log(title = "【我的】添加评价记录", businessType = BusinessType.INSERT,operatorType = OperatorType.MOBILE)
|
@PostMapping(value = "/addOrderEvaluate")
|
@ApiOperation(value = "添加评价记录", tags = {"小程序-充电记录"})
|
public AjaxResult addOrderEvaluate(@RequestBody OrderEvaluateVo query){
|
return orderEvaluateService.addOrderEvaluate(query);
|
}
|
|
|
@GetMapping(value = "/getOrderEvaluate")
|
@ApiOperation(value = "获取订单评价详情", tags = {"小程序-充电记录"})
|
@ApiImplicitParams({
|
@ApiImplicitParam(value = "订单id", name = "orderId", required = true),
|
@ApiImplicitParam(value = "订单类型(1=充电订单,2=购物订单,3=兑换订单,4=会员订单)", name = "orderType", required = true),
|
})
|
public AjaxResult<OrderEvaluateVo> getOrderEvaluate(String orderId, Integer orderType){
|
OrderEvaluateVo orderEvaluate = orderEvaluateService.getOrderEvaluate(orderId, orderType);
|
return AjaxResult.success(orderEvaluate);
|
}
|
|
|
}
|