From 6ee37775b164942e3552d9814062b083eb975949 Mon Sep 17 00:00:00 2001 From: Agent Date: Mon, 30 Mar 2026 13:28:08 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=81=A2=E5=A4=8D=E5=AE=9E=E4=BD=93?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E5=B9=B6=E5=A4=84=E7=90=86Boolean=E8=BD=ACIn?= =?UTF-8?q?teger=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/CategoryAttributeService.java | 3 +-- .../impl/CategoryAttributeServiceImpl.java | 24 ++++++------------- 2 files changed, 8 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/example/building/service/CategoryAttributeService.java b/src/main/java/com/example/building/service/CategoryAttributeService.java index 7237ad3..e4b6765 100644 --- a/src/main/java/com/example/building/service/CategoryAttributeService.java +++ b/src/main/java/com/example/building/service/CategoryAttributeService.java @@ -2,7 +2,6 @@ package com.example.building.service; import com.example.building.entity.CategoryAttribute; import java.util.List; -import java.util.Map; /** * 种类属性服务接口 @@ -17,7 +16,7 @@ public interface CategoryAttributeService { /** * 保存属性 */ - void saveAttributes(String categoryId, List> attrs); + void saveAttributes(String categoryId, List attrs); /** * 删除种类的所有属性 diff --git a/src/main/java/com/example/building/service/impl/CategoryAttributeServiceImpl.java b/src/main/java/com/example/building/service/impl/CategoryAttributeServiceImpl.java index 09f8094..8ae9ad2 100644 --- a/src/main/java/com/example/building/service/impl/CategoryAttributeServiceImpl.java +++ b/src/main/java/com/example/building/service/impl/CategoryAttributeServiceImpl.java @@ -31,7 +31,7 @@ public class CategoryAttributeServiceImpl implements CategoryAttributeService { @Override @Transactional - public void saveAttributes(String categoryId, List> attrs) { + public void saveAttributes(String categoryId, List attrs) { System.out.println("=== saveAttributes called ==="); System.out.println("categoryId: " + categoryId); System.out.println("attrs size: " + (attrs != null ? attrs.size() : 0)); @@ -43,26 +43,16 @@ public class CategoryAttributeServiceImpl implements CategoryAttributeService { // 保存新属性 if (attrs != null && !attrs.isEmpty()) { for (int i = 0; i < attrs.size(); i++) { - Map attrMap = attrs.get(i); - CategoryAttribute attr = new CategoryAttribute(); + CategoryAttribute attr = attrs.get(i); attr.setAttrId(UUID.randomUUID().toString()); attr.setCategoryId(categoryId); attr.setSortOrder(i); - if (attrMap.get("name") != null) { - attr.setName(attrMap.get("name").toString()); - } - if (attrMap.get("attrType") != null) { - attr.setAttrType(attrMap.get("attrType").toString()); - } - if (attrMap.get("unit") != null) { - attr.setUnit(attrMap.get("unit").toString()); - } - if (attrMap.get("required") != null) { - attr.setRequired((Boolean) attrMap.get("required")); - } - if (attrMap.get("formula") != null) { - attr.setFormula(attrMap.get("formula").toString()); + // 处理 required 字段类型(前端可能是 Boolean,后端存 Integer) + if (attr.getRequired() != null) { + if (attr.getRequired() instanceof Boolean) { + attr.setRequired(((Boolean) attr.getRequired()) ? 1 : 0); + } } System.out.println(" attr: " + attr.getName() + ", type=" + attr.getAttrType() + ", unit=" + attr.getUnit());