From a451f3be2f47bd48c717e558e54530f0031e88eb Mon Sep 17 00:00:00 2001 From: caoqi Date: Fri, 22 Mar 2024 17:32:58 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=9B=BE=E5=B1=82=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/kms/yg/znjg/domain/SyLayer.java | 6 ++ .../com/kms/yg/znjg/domain/SyLayerField.java | 56 +++++++++++++++++++ .../yg/znjg/mapper/SyLayerFieldMapper.java | 22 ++++++++ .../yg/znjg/service/SyLayerFieldService.java | 10 ++++ .../kms/yg/znjg/service/SyLayerService.java | 26 ++++++++- .../mapper/yg/znjg/SyLayerFieldMapper.xml | 21 +++++++ 6 files changed, 139 insertions(+), 2 deletions(-) create mode 100644 shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayerField.java create mode 100644 shuili-system/src/main/java/com/kms/yg/znjg/mapper/SyLayerFieldMapper.java create mode 100644 shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerFieldService.java create mode 100644 shuili-system/src/main/resources/mapper/yg/znjg/SyLayerFieldMapper.xml diff --git a/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayer.java b/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayer.java index bbfa1cca..3890702e 100644 --- a/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayer.java +++ b/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayer.java @@ -159,4 +159,10 @@ public class SyLayer implements Serializable { * 扩展字段,主要用来标识关联关系 */ private String extendData; + + /** + * 字段配置信息 + */ + @TableField(exist = false) + private List fields = new ArrayList<>(); } diff --git a/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayerField.java b/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayerField.java new file mode 100644 index 00000000..d906fa7d --- /dev/null +++ b/shuili-system/src/main/java/com/kms/yg/znjg/domain/SyLayerField.java @@ -0,0 +1,56 @@ +package com.kms.yg.znjg.domain; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.io.Serializable; + +/** + * 图层字段对象 + * @author huangzhiyong + * @TableName bs_sgc_qqjd_layer_field + */ +@TableName(value ="bs_sgc_qqjd_layer_field") +@Data +public class SyLayerField implements Serializable { + /** + * 主键id + */ + @TableId + private String id; + + /** + * 图层id + */ + private String layerId; + + /** + * 字段名称 + */ + private String field; + + /** + * 字段名称 + */ + private String fieldName; + + /** + * 字段类型 + */ + private String fieldType; + + /** + * 0:false;1:true + */ + private Integer isShow; + + /** + * 排序 + */ + private Integer orderNm = 0; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/shuili-system/src/main/java/com/kms/yg/znjg/mapper/SyLayerFieldMapper.java b/shuili-system/src/main/java/com/kms/yg/znjg/mapper/SyLayerFieldMapper.java new file mode 100644 index 00000000..01d0520c --- /dev/null +++ b/shuili-system/src/main/java/com/kms/yg/znjg/mapper/SyLayerFieldMapper.java @@ -0,0 +1,22 @@ +package com.kms.yg.znjg.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.kms.yg.znjg.domain.SyLayerField; +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Repository; + +/** +* @author Admin +* @description 针对表【sy_layer_field】的数据库操作Mapper +* @createDate 2023-09-14 17:34:08 +* @Entity com.sy.servicemanager.domain.SyLayerField +*/ +@Repository +@Mapper +public interface SyLayerFieldMapper extends BaseMapper { + +} + + + + diff --git a/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerFieldService.java b/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerFieldService.java new file mode 100644 index 00000000..0d956b27 --- /dev/null +++ b/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerFieldService.java @@ -0,0 +1,10 @@ +package com.kms.yg.znjg.service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.kms.yg.znjg.domain.SyLayerField; +import com.kms.yg.znjg.mapper.SyLayerFieldMapper; +import org.springframework.stereotype.Service; + +@Service +public class SyLayerFieldService extends ServiceImpl { +} diff --git a/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerService.java b/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerService.java index 4cc3ee14..ad8b3ba0 100644 --- a/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerService.java +++ b/shuili-system/src/main/java/com/kms/yg/znjg/service/SyLayerService.java @@ -1,5 +1,6 @@ package com.kms.yg.znjg.service; +import cn.hutool.core.collection.CollUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -9,7 +10,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.kms.yg.df.domain.BsSgcDfJbxx; import com.kms.yg.znjg.domain.SyDirLayer; import com.kms.yg.znjg.domain.SyLayer; +import com.kms.yg.znjg.domain.SyLayerField; import com.kms.yg.znjg.mapper.SyDirLayerMapper; +import com.kms.yg.znjg.mapper.SyLayerFieldMapper; import com.kms.yg.znjg.mapper.SyLayerMapper; import com.shuili.common.core.domain.SearchParam; import org.apache.commons.lang.StringUtils; @@ -28,6 +31,12 @@ public class SyLayerService extends ServiceImpl { @Autowired private SyDirLayerMapper syDirLayerMapper; + @Autowired + private SyLayerFieldMapper syLayerFieldMapper; + + @Autowired + private SyLayerFieldService syLayerFieldService; + public Boolean checkNameIsRepeat(String serviceName, String id) { Long cnt = syLayerMapper.selectByLayerName(serviceName, id); if (cnt > 0) { @@ -62,7 +71,7 @@ public class SyLayerService extends ServiceImpl { //保存图层目录信息 saveLayerDir(syLayer); //保存图层字段信息 - //saveLayerField(syLayer.getId(), syLayer.getFields()); + saveLayerField(syLayer.getId(), syLayer.getFields()); } private void saveLayerDir(SyLayer syLayer) { @@ -104,7 +113,7 @@ public class SyLayerService extends ServiceImpl { //保存图层目录信息 saveLayerDir(syLayer); //保存图层字段信息 - //saveLayerField(syLayer.getId(), syLayer.getFields()); + saveLayerField(syLayer.getId(), syLayer.getFields()); } public List findLayerByLayerIds(List idList) { @@ -145,4 +154,17 @@ public class SyLayerService extends ServiceImpl { syLayerMapper.findSyLayerList(pageQuery, syLayer, orderBy, sortBy); return pageQuery; } + + + @Transactional(rollbackFor = Exception.class) + public void saveLayerField(String layerId, List fields) { + if (CollUtil.isNotEmpty(fields)) { + //先删除该图层字段,再插入 + syLayerFieldMapper.delete(new LambdaQueryWrapper().eq(SyLayerField::getLayerId, layerId)); + for (SyLayerField field : fields) { + field.setLayerId(layerId); + } + syLayerFieldService.saveBatch(fields); + } + } } diff --git a/shuili-system/src/main/resources/mapper/yg/znjg/SyLayerFieldMapper.xml b/shuili-system/src/main/resources/mapper/yg/znjg/SyLayerFieldMapper.xml new file mode 100644 index 00000000..65cd46a1 --- /dev/null +++ b/shuili-system/src/main/resources/mapper/yg/znjg/SyLayerFieldMapper.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + id,layer_id,field,field_name, + field_type,show,order_nm + +