This commit is contained in:
2025-06-02 09:44:11 +08:00
parent ceba1e1b01
commit 4273cda7cd
7 changed files with 37 additions and 5 deletions

View File

@ -14,6 +14,7 @@ import com.ycwl.basic.model.pc.face.resp.FaceRespVO;
import com.ycwl.basic.model.pc.order.req.CreateBatchOrderReqVO;
import com.ycwl.basic.model.pc.order.req.CreateOrderReqVO;
import com.ycwl.basic.model.pc.order.resp.OrderAppRespVO;
import com.ycwl.basic.pay.entity.PayResponse;
import com.ycwl.basic.service.pc.OrderService;
import com.ycwl.basic.utils.ApiResponse;
import com.ycwl.basic.utils.JwtTokenUtil;
@ -63,6 +64,11 @@ public class AppOrderController {
return orderService.createOrder(worker.getUserId(), orderAddReq);
}
@ApiOperation("查询订单")
@GetMapping("/queryOrder")
public ApiResponse<PayResponse> queryOrder(@RequestParam("orderId") Long orderId) {
return ApiResponse.success(orderService.queryOrder(orderId));
}
@ApiOperation("用户端打包订单新增")
@PostMapping("/addBatchOrder")
@ -97,6 +103,9 @@ public class AppOrderController {
Long userId = Long.parseLong(BaseContextHandler.getUserId());
if (faceId == null) {
FaceRespVO lastFaceByUserId = faceMapper.findLastFaceByUserId(BaseContextHandler.getUserId());
if (lastFaceByUserId == null) {
return ApiResponse.fail("您还未上传人脸");
}
faceId = lastFaceByUserId.getId();
}
IsBuyBatchRespVO buy = priceBiz.isBuy(userId, faceId, scenicId, type, goodsIds);

View File

@ -30,7 +30,7 @@ public interface DeviceMapper {
DeviceEntity getByDeviceId(Long deviceId);
List<DeviceRespVO> listByScenicIdWithWVP(Long scenicId);
ScenicDeviceCountVO deviceCountByScenicId(@Param("scenicId") Long scenicId,@Param("userId") Long userId);
ScenicDeviceCountVO deviceCountByScenicId(@Param("scenicId") Long scenicId);
DeviceConfigEntity getConfigByDeviceId(Long deviceId);
int addConfig(DeviceConfigEntity deviceConfigEntity);

View File

@ -3,6 +3,7 @@ package com.ycwl.basic.service.mobile;
import com.ycwl.basic.model.wx.WXPayOrderReqVO;
import com.ycwl.basic.model.wx.WechatCallbackSuccessData;
import com.ycwl.basic.pay.entity.PayResponse;
import jakarta.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.Map;
@ -19,7 +20,7 @@ public interface WxPayService {
*/
void payNotify(HttpServletRequest request);
void payNotify(Long scenicId, HttpServletRequest request);
PayResponse payNotify(Long scenicId, HttpServletRequest request);
/**

View File

@ -51,14 +51,14 @@ public class AppScenicServiceImpl implements AppScenicService {
@Override
public ApiResponse<ScenicDeviceCountVO> deviceCountByScenicId(Long scenicId) {
JwtInfo worker = JwtTokenUtil.getWorker();
ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(scenicId, worker.getUserId());
ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(scenicId);
return ApiResponse.success(scenicDeviceCountVO);
}
@Override
public ApiResponse<ScenicRespVO> getDetails(Long id) {
ScenicRespVO scenicRespVO = scenicMapper.getAppById(id);
ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(id, -1L);
ScenicDeviceCountVO scenicDeviceCountVO = deviceMapper.deviceCountByScenicId(id);
scenicRespVO.setLensNum(scenicDeviceCountVO.getTotalDeviceCount());
return ApiResponse.success(scenicRespVO);
}

View File

@ -80,6 +80,7 @@ public class WxPayServiceImpl implements WxPayService {
CreateOrderResponse order = scenicPayAdapter.createOrder(request);
Map<String, Object> paymentParams = scenicPayAdapter.getPaymentParams(order);
paymentParams.put("needPay", !order.isSkipPay());
paymentParams.put("orderId", req.getOrderSn());
return paymentParams;
} catch (Exception e) {
log.error("[微信支付]createOrder error", e);
@ -88,7 +89,7 @@ public class WxPayServiceImpl implements WxPayService {
}
@Override
public void payNotify(Long scenicId, HttpServletRequest request) {
public PayResponse payNotify(Long scenicId, HttpServletRequest request) {
IPayAdapter scenicPayAdapter = scenicService.getScenicPayAdapter(scenicId);
try {
PayResponse callbackResponse = scenicPayAdapter.handleCallback(request);
@ -108,6 +109,7 @@ public class WxPayServiceImpl implements WxPayService {
} catch (Exception e) {
throw new AppException(BizCodeEnum.ADVANCE_PAYMENT_CALLBACK_FAILED, e.toString());
}
return null;
}
@Override

View File

@ -11,6 +11,7 @@ import com.ycwl.basic.model.pc.order.req.OrderUpdateReq;
import com.ycwl.basic.model.pc.order.req.OrderReqQuery;
import com.ycwl.basic.model.pc.order.resp.OrderAppRespVO;
import com.ycwl.basic.model.pc.order.resp.OrderRespVO;
import com.ycwl.basic.pay.entity.PayResponse;
import com.ycwl.basic.utils.ApiResponse;
import java.util.List;
@ -65,4 +66,6 @@ public interface OrderService {
ApiResponse<Map<String, Object>> createOrder(Long userId, CreateOrderReqVO orderAddReq) throws Exception;
ApiResponse<Map<String, Object>> createBatchOrder(Long userId, CreateBatchOrderReqVO batchOrderReqVO) throws Exception;
PayResponse queryOrder(Long orderId);
}

View File

@ -11,6 +11,7 @@ import com.ycwl.basic.constant.BaseContextHandler;
import com.ycwl.basic.constant.NumberConstant;
import com.ycwl.basic.enums.*;
import com.ycwl.basic.exception.AppException;
import com.ycwl.basic.exception.BaseException;
import com.ycwl.basic.mapper.*;
import com.ycwl.basic.model.mobile.goods.GoodsDetailVO;
import com.ycwl.basic.model.mobile.order.IsBuyRespVO;
@ -38,6 +39,8 @@ import com.ycwl.basic.model.pc.task.entity.TaskEntity;
import com.ycwl.basic.model.pc.template.resp.TemplateRespVO;
import com.ycwl.basic.model.pc.video.entity.VideoEntity;
import com.ycwl.basic.model.wx.WXPayOrderReqVO;
import com.ycwl.basic.pay.adapter.IPayAdapter;
import com.ycwl.basic.pay.entity.PayResponse;
import com.ycwl.basic.repository.FaceRepository;
import com.ycwl.basic.repository.PriceRepository;
import com.ycwl.basic.repository.TemplateRepository;
@ -45,6 +48,7 @@ import com.ycwl.basic.repository.VideoRepository;
import com.ycwl.basic.repository.VideoTaskRepository;
import com.ycwl.basic.service.mobile.WxPayService;
import com.ycwl.basic.service.pc.OrderService;
import com.ycwl.basic.service.pc.ScenicService;
import com.ycwl.basic.service.task.impl.TaskTaskServiceImpl;
import com.ycwl.basic.utils.ApiResponse;
import com.ycwl.basic.utils.SnowFlakeUtil;
@ -104,6 +108,8 @@ public class OrderServiceImpl implements OrderService {
private TaskTaskServiceImpl taskTaskService;
@Autowired
private PrinterMapper printerMapper;
@Autowired
private ScenicService scenicService;
@Override
public ApiResponse<PageInfo<OrderRespVO>> pageQuery(OrderReqQuery query) {
@ -611,4 +617,15 @@ public class OrderServiceImpl implements OrderService {
}
}
@Override
public PayResponse queryOrder(Long orderId) {
OrderRespVO order = orderMapper.getById(orderId);
if (order == null) {
throw new BaseException("订单不存在");
}
IPayAdapter scenicPayAdapter = scenicService.getScenicPayAdapter(order.getScenicId());
PayResponse payResponse = scenicPayAdapter.queryOrder(orderId.toString());
return payResponse;
}
}