From 5d7b65670282a4fad015e37d567cfa171b162052 Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期二, 20 五月 2025 12:25:19 +0800 Subject: [PATCH] 基础代码 --- pt-errand/src/main/java/com/ruoyi/errand/service/impl/EvaluationServiceImpl.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 58 insertions(+), 0 deletions(-) diff --git a/pt-errand/src/main/java/com/ruoyi/errand/service/impl/EvaluationServiceImpl.java b/pt-errand/src/main/java/com/ruoyi/errand/service/impl/EvaluationServiceImpl.java new file mode 100644 index 0000000..5deedf4 --- /dev/null +++ b/pt-errand/src/main/java/com/ruoyi/errand/service/impl/EvaluationServiceImpl.java @@ -0,0 +1,58 @@ +package com.ruoyi.errand.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.exception.ServiceException; +import com.ruoyi.errand.constant.DelFlagConstant; +import com.ruoyi.errand.domain.AppUser; +import com.ruoyi.errand.domain.Evaluation; +import com.ruoyi.errand.domain.Order; +import com.ruoyi.errand.mapper.EvaluationMapper; +import com.ruoyi.errand.mapper.OrderMapper; +import com.ruoyi.errand.object.dto.app.AddEvaluationDTO; +import com.ruoyi.errand.service.EvaluationService; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Service; + +import java.time.LocalDateTime; +import java.util.Objects; + +@Service +public class EvaluationServiceImpl extends ServiceImpl<EvaluationMapper, Evaluation> implements EvaluationService { + + private OrderMapper orderMapper; + + @Override + public void add(AddEvaluationDTO addEvaluationDTO) { + //检查订单id是否存在 + //该用户类型是否正常 + AppUser appuser = (AppUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); + //判断订单是否存在 + Order order = orderMapper.selectById(addEvaluationDTO.getOrderId()); + if (order==null ||order.getDelFlag().equals(DelFlagConstant.DELETE)){ + throw new ServiceException("订单id错误"); + } + if (order.getOrderStatus()!=4){ + throw new ServiceException("订单状态错误"); + } + + if (addEvaluationDTO.getType()==0){ + //用户评价 + if (!Objects.equals(order.getAppUserId(), appuser.getId())){ + throw new ServiceException("用户与订单不匹配"); + } + }else if (addEvaluationDTO.getType()==1){ + if (!Objects.equals(order.getCourierId(), appuser.getCourierId())){ + throw new ServiceException("跑腿与订单不匹配"); + } + }else { + throw new ServiceException("评价类型错误"); + } + Evaluation evaluation = new Evaluation(); + evaluation.setOrderId(addEvaluationDTO.getOrderId()); + evaluation.setType(addEvaluationDTO.getType()); + evaluation.setRating(addEvaluationDTO.getRating()); + evaluation.setContent(addEvaluationDTO.getContent()); + evaluation.setCreateTime(LocalDateTime.now()); + this.save(evaluation); + } +} \ No newline at end of file -- Gitblit v1.7.1