You've already forked FrameTour-BE
feat(printer): 添加自定义打印图片URL功能
- 在CreateVirtualOrderRequest中新增printImgUrl字段 - 修改createVirtualOrder方法支持自定义打印图片URL参数 - 实现当提供printImgUrl时优先使用该URL进行打印 - 更新服务接口和实现类以支持新的参数传递 - 添加相应的文档注释说明新功能特性
This commit is contained in:
@@ -65,7 +65,8 @@ public class SourceController {
|
|||||||
request.getSourceId(),
|
request.getSourceId(),
|
||||||
request.getScenicId(),
|
request.getScenicId(),
|
||||||
request.getPrinterId(),
|
request.getPrinterId(),
|
||||||
request.getNeedEnhance()
|
request.getNeedEnhance(),
|
||||||
|
request.getPrintImgUrl()
|
||||||
);
|
);
|
||||||
return ApiResponse.success(result);
|
return ApiResponse.success(result);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|||||||
@@ -26,4 +26,9 @@ public class CreateVirtualOrderRequest {
|
|||||||
* 是否需要图像增强(可选,默认不增强)
|
* 是否需要图像增强(可选,默认不增强)
|
||||||
*/
|
*/
|
||||||
private Boolean needEnhance;
|
private Boolean needEnhance;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打印图片URL(可选,如果提供则使用此URL进行打印)
|
||||||
|
*/
|
||||||
|
private String printImgUrl;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -131,4 +131,16 @@ public interface PrinterService {
|
|||||||
* @return 订单信息
|
* @return 订单信息
|
||||||
*/
|
*/
|
||||||
Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId, Boolean needEnhance);
|
Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId, Boolean needEnhance);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建虚拟用户0元订单(支持图像增强选项和自定义打印图片URL)
|
||||||
|
*
|
||||||
|
* @param sourceId source记录ID
|
||||||
|
* @param scenicId 景区ID
|
||||||
|
* @param printerId 打印机ID(可选)
|
||||||
|
* @param needEnhance 是否需要图像增强(可选)
|
||||||
|
* @param printImgUrl 打印图片URL(可选,如果提供则使用此URL进行打印)
|
||||||
|
* @return 订单信息
|
||||||
|
*/
|
||||||
|
Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId, Boolean needEnhance, String printImgUrl);
|
||||||
}
|
}
|
||||||
@@ -1638,11 +1638,16 @@ public class PrinterServiceImpl implements PrinterService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId) {
|
public Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId) {
|
||||||
return createVirtualOrder(sourceId, scenicId, printerId, null);
|
return createVirtualOrder(sourceId, scenicId, printerId, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId, Boolean needEnhance) {
|
public Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId, Boolean needEnhance) {
|
||||||
|
return createVirtualOrder(sourceId, scenicId, printerId, needEnhance, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> createVirtualOrder(Long sourceId, Long scenicId, Integer printerId, Boolean needEnhance, String printImgUrl) {
|
||||||
// 1. 查询source记录
|
// 1. 查询source记录
|
||||||
SourceEntity source = sourceMapper.getEntity(sourceId);
|
SourceEntity source = sourceMapper.getEntity(sourceId);
|
||||||
FaceSampleEntity faceSample = faceSampleMapper.getEntity(source.getFaceSampleId());
|
FaceSampleEntity faceSample = faceSampleMapper.getEntity(source.getFaceSampleId());
|
||||||
@@ -1674,7 +1679,7 @@ public class PrinterServiceImpl implements PrinterService {
|
|||||||
log.info("创建人脸记录成功: faceId={}, virtualMemberId={}, origUrl={}", faceId, virtualMemberId, source.getUrl());
|
log.info("创建人脸记录成功: faceId={}, virtualMemberId={}, origUrl={}", faceId, virtualMemberId, source.getUrl());
|
||||||
|
|
||||||
// 4. 创建member_print记录(参考addUserPhotoFromSource方法)
|
// 4. 创建member_print记录(参考addUserPhotoFromSource方法)
|
||||||
Integer memberPrintId = addUserPhoto(virtualMemberId, scenicId, source.getUrl(), faceId, sourceId);
|
Integer memberPrintId = addUserPhoto(virtualMemberId, scenicId, (printImgUrl != null && !printImgUrl.isEmpty()) ? printImgUrl : source.getUrl(), faceId, sourceId);
|
||||||
if (memberPrintId == null) {
|
if (memberPrintId == null) {
|
||||||
throw new BaseException("创建member_print记录失败");
|
throw new BaseException("创建member_print记录失败");
|
||||||
}
|
}
|
||||||
@@ -1762,3 +1767,4 @@ public class PrinterServiceImpl implements PrinterService {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user