|
|
|
@ -826,62 +826,6 @@ public class LabelSettingController extends AbstractController { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @description: 预览标签(将数据源字段替换为真实数据) |
|
|
|
* @author Kiro |
|
|
|
* @date 2025/1/24 |
|
|
|
* @version 1.0 |
|
|
|
*/ |
|
|
|
@PostMapping("previewLabelWithData") |
|
|
|
public R previewLabelWithData(@RequestBody Map<String, Object> params) { |
|
|
|
try { |
|
|
|
log.info("收到标签预览请求: {}", params); |
|
|
|
|
|
|
|
String reportId = (String) params.get("reportId"); |
|
|
|
if (reportId == null || reportId.trim().isEmpty()) { |
|
|
|
log.warn("标签ID为空"); |
|
|
|
return R.error("标签ID不能为空"); |
|
|
|
} |
|
|
|
|
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
Map<String, Object> dataMap = (Map<String, Object>) params.get("dataMap"); |
|
|
|
if (dataMap == null) { |
|
|
|
dataMap = new java.util.HashMap<>(); |
|
|
|
} |
|
|
|
|
|
|
|
String previewType = (String) params.get("previewType"); |
|
|
|
if (previewType == null) { |
|
|
|
previewType = "elements"; |
|
|
|
} |
|
|
|
|
|
|
|
log.info("处理标签预览: reportId={}, previewType={}, dataMap={}", reportId, previewType, dataMap); |
|
|
|
|
|
|
|
if ("zpl".equals(previewType)) { |
|
|
|
// 返回ZPL代码预览 |
|
|
|
log.info("生成ZPL代码预览"); |
|
|
|
String zplCode = reportLabelListService.previewLabelWithData(reportId, dataMap); |
|
|
|
log.info("ZPL代码生成成功,长度: {}", zplCode != null ? zplCode.length() : 0); |
|
|
|
return R.ok() |
|
|
|
.put("code", 200) |
|
|
|
.put("msg", "ZPL代码生成成功") |
|
|
|
.put("data", zplCode); |
|
|
|
} else { |
|
|
|
// 返回处理后的元素列表(默认) |
|
|
|
log.info("生成元素预览"); |
|
|
|
List<ReportLabelList> processedElements = reportLabelListService.getProcessedElements(reportId, dataMap); |
|
|
|
log.info("元素处理成功,元素数: {}", processedElements != null ? processedElements.size() : 0); |
|
|
|
return R.ok() |
|
|
|
.put("code", 200) |
|
|
|
.put("msg", "标签元素处理成功") |
|
|
|
.put("data", processedElements); |
|
|
|
} |
|
|
|
|
|
|
|
} catch (Exception e) { |
|
|
|
log.error("标签预览失败: {}", e.getMessage(), e); |
|
|
|
return R.error("标签预览失败: " + e.getMessage()); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @description: 使用真实数据预览标签(从数据库视图获取数据) |
|
|
|
* @author Kiro |
|
|
|
|