订单类型由订单明细移动至订单本体中

This commit is contained in:
longbinbin
2024-12-10 14:17:01 +08:00
parent c5977252fc
commit 4c51e1be08
16 changed files with 206 additions and 71 deletions

View File

@ -98,9 +98,9 @@ public class AppMemberServiceImpl implements AppMemberService {
List<MemberRespVO> list = memberMapper.list(memberReqQuery);
if (list.isEmpty()) {
MemberEntity memberEntity = new MemberEntity();
BeanCopierUtils.copyProperties(userInfoDTO, memberEntity);
memberEntity.setId(SnowFlakeUtil.getLongId());
memberEntity.setOpenId(openId.toString());
BeanCopierUtils.copyProperties(userInfoDTO, memberEntity);
memberMapper.add(memberEntity);
BeanCopierUtils.copyProperties(memberEntity, memberRespVO);
} else {

View File

@ -1,5 +1,6 @@
package com.ycwl.basic.service.impl.pc;
import cn.hutool.core.bean.BeanUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.ycwl.basic.constant.BaseContextHandler;
@ -9,11 +10,16 @@ import com.ycwl.basic.model.jwt.JwtInfo;
import com.ycwl.basic.model.pc.face.entity.FaceEntity;
import com.ycwl.basic.model.pc.face.req.FaceReqQuery;
import com.ycwl.basic.model.pc.face.resp.FaceRespVO;
import com.ycwl.basic.model.task.resp.SearchFaceRespVo;
import com.ycwl.basic.service.impl.task.TaskFaceServiceImpl;
import com.ycwl.basic.service.pc.FaceService;
import com.ycwl.basic.service.task.TaskFaceService;
import com.ycwl.basic.utils.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
@ -32,6 +38,11 @@ public class FaceServiceImpl implements FaceService {
private FaceMapper faceMapper;
@Autowired
private OssUtil ossUtil;
@Autowired
private TaskFaceService faceService;
@Value("${face.score}")
private float faceScore;
@Override
public ApiResponse<PageInfo<FaceRespVO>> pageQuery(FaceReqQuery faceReqQuery) {
@ -89,20 +100,21 @@ public class FaceServiceImpl implements FaceService {
}
@Override
public ApiResponse faceUPload(MultipartFile file) {
//TODO 获取用户信息
// @Transactional(rollbackFor = Exception.class)
public ApiResponse faceUPload(MultipartFile file,Long scenicId) {
//获取用户id
String userId = BaseContextHandler.getUserId();
JwtInfo worker = JwtTokenUtil.getWorker();
log.info("当前登录用户信息:{}",worker);
//1、上传人脸照片
String facaeUrl = uploadFileALiOss(file, userId);
//TODO 2、人脸照片有效性校验
Boolean isValid=true;
// 2、查看人脸是否已上传
FaceRespVO faceRespVO=faceMapper.getByMemberId(userId);
if(isValid){
//校验成功,保存用户人脸信息,将访问人脸照片访问地址响应给前端
FaceEntity faceEntity = new FaceEntity();
FaceEntity faceEntity = new FaceEntity();
if (faceRespVO==null) {
//新增人脸
faceEntity.setId(SnowFlakeUtil.getLongId());
faceEntity.setMemberId(Long.parseLong(userId));
faceEntity.setFaceUrl(facaeUrl);
@ -112,14 +124,26 @@ public class FaceServiceImpl implements FaceService {
// faceEntity.setMatchResult();
//TODO 人脸数据存库
faceMapper.add(faceEntity);
return ApiResponse.success(facaeUrl);
}else {
//2、更新人脸
faceRespVO.setFaceUrl(facaeUrl);
BeanUtil.copyProperties(faceRespVO,faceEntity);
faceMapper.update(faceEntity);
}
SearchFaceRespVo faceRespVo = faceService.searchFace(scenicId, faceRespVO.getId());
float score = faceRespVo.getScore();
if (score<faceScore) {
//校验失败,删除,提示重新上传
ossUtil.deleteFile(facaeUrl);
throw new BaseException("人脸照片校验失败,请重新上传");
}else {
//校验成功,保存用户人脸信息,将访问人脸照片访问地址响应给前端
return ApiResponse.success(facaeUrl);
}
}
/**

View File

@ -207,9 +207,9 @@ public class OrderServiceImpl implements OrderService {
//如果订单未支付就把商品状态更改成未购买
if (state != OrderStateEnum.PAID.getState()) {
OrderRespVO orderRespVO = orderMapper.getById(orderSn);
Integer goodsType = orderRespVO.getGoodsType();
List<OrderItemVO> orderItemList = orderRespVO.getOrderItemList();
orderItemList.forEach(orderItemVO -> {
Integer goodsType = orderItemVO.getGoodsType();
Long goodsId = orderItemVO.getGoodsId();
if (Objects.equals(goodsType, GoodsTypeEnum.VIDEO.code)) {
VideoEntity videoEntity = new VideoEntity();
@ -225,9 +225,9 @@ public class OrderServiceImpl implements OrderService {
});
} else if (state == OrderStateEnum.REFUNDED.getState()) {//订单退款成功就把商品状态更改成未购买
OrderRespVO orderRespVO = orderMapper.getById(orderSn);
Integer goodsType = orderRespVO.getGoodsType();
List<OrderItemVO> orderItemList = orderRespVO.getOrderItemList();
orderItemList.forEach(orderItemVO -> {
Integer goodsType = orderItemVO.getGoodsType();
Long goodsId = orderItemVO.getGoodsId();
if (Objects.equals(goodsType, GoodsTypeEnum.VIDEO.code)) {
VideoEntity videoEntity = new VideoEntity();

View File

@ -22,5 +22,5 @@ public interface FaceService {
ApiResponse<Integer> deleteByIds(List<Long> ids);
ApiResponse<Integer> update(FaceEntity face);
ApiResponse faceUPload(MultipartFile file);
ApiResponse faceUPload(MultipartFile file,Long scrnicId);
}