diff --git a/src/main/java/com/ycwl/basic/controller/pc/SourceController.java b/src/main/java/com/ycwl/basic/controller/pc/SourceController.java index 11e7c0fd..c152a5f0 100644 --- a/src/main/java/com/ycwl/basic/controller/pc/SourceController.java +++ b/src/main/java/com/ycwl/basic/controller/pc/SourceController.java @@ -4,12 +4,16 @@ import com.ycwl.basic.annotation.IgnoreToken; import com.ycwl.basic.model.jwt.JwtInfo; import com.ycwl.basic.model.pc.source.entity.SourceEntity; import com.ycwl.basic.model.pc.source.req.SourceReqQuery; +import com.ycwl.basic.model.printer.req.CreateVirtualOrderRequest; import com.ycwl.basic.service.pc.SourceService; +import com.ycwl.basic.service.printer.PrinterService; import com.ycwl.basic.utils.ApiResponse; import com.ycwl.basic.utils.JwtTokenUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.Map; + /** * @Author:longbinbin * @Date:2024/12/3 15:45 @@ -21,6 +25,8 @@ public class SourceController { @Autowired private SourceService sourceService; + @Autowired + private PrinterService printerService; // 分页查询视频源 @PostMapping("/page") @@ -45,5 +51,26 @@ public class SourceController { return sourceService.deleteById(id); } + /** + * 创建虚拟用户0元订单 + * 用于后台直接从source创建订单,不需要真实用户 + * + * @param request 请求参数 + * @return 订单信息 + */ + @PostMapping("/createVirtualOrder") + public ApiResponse> createVirtualOrder(@RequestBody CreateVirtualOrderRequest request) { + try { + Map result = printerService.createVirtualOrder( + request.getSourceId(), + request.getScenicId(), + request.getPrinterId() + ); + return ApiResponse.success(result); + } catch (Exception e) { + return ApiResponse.fail(e.getMessage()); + } + } + }