From 3ab404d0df9c11fcca92e6dfe1a4d0b6a88f7973 Mon Sep 17 00:00:00 2001 From: icanci Date: Sat, 16 Sep 2023 10:32:42 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E7=BA=A0=E5=AF=9F=E5=9B=BE=20=E8=BE=B9?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bic/biz/mapper/EdgeStyleMapper.java | 15 ++ .../bic/biz/service/EdgeStyleService.java | 33 +++ .../service/impl/EdgeStyleServiceImpl.java | 98 +++++++++ .../bic/common/model/base/EdgeStyleVO.java | 6 +- .../dal/mongo/daointerface/EdgeStyleDAO.java | 26 +++ .../bic/dal/mongo/dateobject/EdgeStyleDO.java | 19 ++ .../dal/mongo/mongo/MongoEdgeStyleDAO.java | 93 ++++++++ .../resources/vueboot/src/api/edgeStyle.js | 41 ++++ .../vueboot/src/api/loadSelectorApi.js | 23 ++ .../src/views/bic-config/dialog/edge-form.vue | 2 +- .../bic-config/dialog/edge-style-form.vue | 199 ++++++++++++++++++ .../bic-config/dialog/node-style-form.vue | 6 +- .../views/bic-config/edge-style-config.vue | 183 +++++++++++++++- .../web/controller/EdgeStyleController.java | 69 ++++++ .../bic/web/form/EdgeStyleQueryForm.java | 13 ++ .../bic/web/mapper/EdgeStyleWebMapper.java | 15 ++ .../loopstack/bic/web/model/EdgeStyle.java | 19 ++ 17 files changed, 844 insertions(+), 16 deletions(-) create mode 100644 biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/EdgeStyleMapper.java create mode 100644 biz/src/main/java/cn/icanci/loopstack/bic/biz/service/EdgeStyleService.java create mode 100644 biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java create mode 100644 dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/EdgeStyleDAO.java create mode 100644 dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/EdgeStyleDO.java create mode 100644 dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoEdgeStyleDAO.java create mode 100644 views/src/main/resources/vueboot/src/api/edgeStyle.js create mode 100644 views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-style-form.vue create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/controller/EdgeStyleController.java create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/form/EdgeStyleQueryForm.java create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/mapper/EdgeStyleWebMapper.java create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/model/EdgeStyle.java diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/EdgeStyleMapper.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/EdgeStyleMapper.java new file mode 100644 index 0000000..b436475 --- /dev/null +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/EdgeStyleMapper.java @@ -0,0 +1,15 @@ +package cn.icanci.loopstack.bic.biz.mapper; + +import org.mapstruct.Mapper; +import org.mapstruct.NullValueMappingStrategy; + +import cn.icanci.loopstack.bic.common.model.base.EdgeStyleVO; +import cn.icanci.loopstack.bic.dal.mongo.dateobject.EdgeStyleDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 23:10 + */ +@Mapper(componentModel = "spring", nullValueMappingStrategy = NullValueMappingStrategy.RETURN_NULL) +public interface EdgeStyleMapper extends BaseMapper { +} diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/EdgeStyleService.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/EdgeStyleService.java new file mode 100644 index 0000000..ec533c0 --- /dev/null +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/EdgeStyleService.java @@ -0,0 +1,33 @@ +package cn.icanci.loopstack.bic.biz.service; + +import java.util.List; + +import cn.icanci.loopstack.bic.common.model.TextValue; +import cn.icanci.loopstack.bic.common.model.base.EdgeStyleVO; +import cn.icanci.loopstack.bic.dal.mongo.common.PageList; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 22:44 + */ +public interface EdgeStyleService extends BaseService { + @Override + List queryAll(); + + @Override + void save(EdgeStyleVO edgeStyleVO); + + @Override + EdgeStyleVO queryById(String id); + + @Override + PageList queryPage(EdgeStyleVO edgeStyleVO, int pageNum, int pageSize); + + EdgeStyleVO queryBySystemUuidAndName(String systemUuid, String name); + + EdgeStyleVO queryBySystemUuidAndKey(String systemUuid, String key); + + List loadSelector(String systemUuid); + + String loadDefaultStyle(); +} diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java new file mode 100644 index 0000000..059be0b --- /dev/null +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java @@ -0,0 +1,98 @@ +package cn.icanci.loopstack.bic.biz.service.impl; + +import java.util.List; + +import javax.annotation.Resource; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import com.google.common.collect.Lists; + +import cn.icanci.loopstack.bic.biz.mapper.EdgeStyleMapper; +import cn.icanci.loopstack.bic.biz.service.EdgeStyleService; +import cn.icanci.loopstack.bic.biz.utils.TemplateFileUtils; +import cn.icanci.loopstack.bic.common.model.TextValue; +import cn.icanci.loopstack.bic.common.model.base.EdgeStyleVO; +import cn.icanci.loopstack.bic.dal.mongo.common.PageList; +import cn.icanci.loopstack.bic.dal.mongo.daointerface.EdgeStyleDAO; +import cn.icanci.loopstack.bic.dal.mongo.dateobject.EdgeStyleDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 22:45 + */ +@Service +public class EdgeStyleServiceImpl implements EdgeStyleService { + + @Resource + private EdgeStyleDAO nodeStyleDAO; + @Resource + private EdgeStyleMapper nodeStyleMapper; + + @Override + public List queryAll() { + return nodeStyleMapper.dos2vos(nodeStyleDAO.queryAll()); + } + + @Override + public void save(EdgeStyleVO edgeStyleVO) { + // TODO 日志记录 + // TODO 更新视图 + if (doInsert(edgeStyleVO)) { + EdgeStyleDO insert = nodeStyleMapper.vo2do(edgeStyleVO); + nodeStyleDAO.insert(insert); + } else { + nodeStyleDAO.update(nodeStyleMapper.vo2do(edgeStyleVO)); + } + } + + @Override + public EdgeStyleVO queryById(String id) { + return nodeStyleMapper.do2vo(nodeStyleDAO.queryOneById(id)); + } + + @Override + public PageList queryPage(EdgeStyleVO edgeStyleVO, int pageNum, int pageSize) { + PageList pageQuery = nodeStyleDAO.pageQuery(nodeStyleMapper.vo2do(edgeStyleVO), pageNum, pageSize); + return new PageList<>(nodeStyleMapper.dos2vos(pageQuery.getData()), pageQuery.getPaginator()); + + } + + @Override + public EdgeStyleVO queryBySystemUuidAndName(String systemUuid, String name) { + return nodeStyleMapper.do2vo(nodeStyleDAO.queryBySystemUuidAndName(systemUuid, name)); + } + + @Override + public EdgeStyleVO queryBySystemUuidAndKey(String systemUuid, String key) { + return nodeStyleMapper.do2vo(nodeStyleDAO.queryBySystemUuidAndKey(systemUuid, key)); + } + + @Override + public List loadSelector(String systemUuid) { + List nodeStyles = queryAll(); + List textValues = Lists.newArrayList(); + for (EdgeStyleVO nodeStyle : nodeStyles) { + + if (!StringUtils.equals(systemUuid, nodeStyle.getSystemUuid())) { + continue; + } + + String label; + if (isDeleted(nodeStyle)) { + label = String.format(DELETED_FORMAT, nodeStyle.getEdgeStyleName()); + } else { + label = String.format(NOT_DELETED_FORMAT, nodeStyle.getEdgeStyleName()); + } + String value = nodeStyle.getUuid(); + textValues.add(new TextValue(label, value)); + } + return textValues; + } + + @Override + public String loadDefaultStyle() { + return TemplateFileUtils.queryDefaultEdgeStyleTemplate(); + } +} diff --git a/common/src/main/java/cn/icanci/loopstack/bic/common/model/base/EdgeStyleVO.java b/common/src/main/java/cn/icanci/loopstack/bic/common/model/base/EdgeStyleVO.java index bd5c14d..8d2812f 100644 --- a/common/src/main/java/cn/icanci/loopstack/bic/common/model/base/EdgeStyleVO.java +++ b/common/src/main/java/cn/icanci/loopstack/bic/common/model/base/EdgeStyleVO.java @@ -11,8 +11,12 @@ import lombok.Data; */ @Data public class EdgeStyleVO extends BaseVO { + /** 系统 */ + private String systemUuid; /** 边样式名称 */ private String edgeStyleName; + /** 边样式Key */ + private String edgeStyleKey; /** json格式的数据格式 */ - private String style; + private String edgeStyle; } diff --git a/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/EdgeStyleDAO.java b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/EdgeStyleDAO.java new file mode 100644 index 0000000..3f20432 --- /dev/null +++ b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/EdgeStyleDAO.java @@ -0,0 +1,26 @@ +package cn.icanci.loopstack.bic.dal.mongo.daointerface; + +import cn.icanci.loopstack.bic.dal.mongo.dateobject.EdgeStyleDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 23:30 + */ +public interface EdgeStyleDAO extends BaseDAO { + /** 文档对应的名字 */ + String COLLECTION_NAME = BASE_COLLECTION_NAME + "edge-style"; + /** 文档对应的Class */ + Class COLLECTION_CLASS = EdgeStyleDO.class; + + EdgeStyleDO queryBySystemUuidAndName(String systemUuid, String name); + + EdgeStyleDO queryBySystemUuidAndKey(String systemUuid, String key); + + /** 列 */ + interface EdgeStyleColumn extends BaseColumn { + String SYSTEM_UUID = "systemUuid"; + String EDGE_STYLE_NAME = "edgeStyleName"; + String EDGE_STYLE_KEY = "edgeStyleKey"; + String EDGE_STYLE = "edgeStyle"; + } +} diff --git a/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/EdgeStyleDO.java b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/EdgeStyleDO.java new file mode 100644 index 0000000..0a49961 --- /dev/null +++ b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/EdgeStyleDO.java @@ -0,0 +1,19 @@ +package cn.icanci.loopstack.bic.dal.mongo.dateobject; + +import lombok.Data; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/16 10:16 + */ +@Data +public class EdgeStyleDO extends BaseDO { + /** 系统 */ + private String systemUuid; + /** 边样式名称 */ + private String edgeStyleName; + /** 边样式Key */ + private String edgeStyleKey; + /** json格式的数据格式 */ + private String edgeStyle; +} diff --git a/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoEdgeStyleDAO.java b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoEdgeStyleDAO.java new file mode 100644 index 0000000..ba7af7e --- /dev/null +++ b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoEdgeStyleDAO.java @@ -0,0 +1,93 @@ +package cn.icanci.loopstack.bic.dal.mongo.mongo; + +import java.util.List; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.stereotype.Service; + +import cn.icanci.loopstack.bic.dal.mongo.common.PageList; +import cn.icanci.loopstack.bic.dal.mongo.daointerface.EdgeStyleDAO; +import cn.icanci.loopstack.bic.dal.mongo.dateobject.EdgeStyleDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 23:32 + */ +@Service("edgeStyleDAO") +public class MongoEdgeStyleDAO extends AbstractBaseDAO implements EdgeStyleDAO { + @Override + public void insert(EdgeStyleDO EdgeStyleDO) { + super.insert(EdgeStyleDO); + mongoTemplate.insert(EdgeStyleDO, COLLECTION_NAME); + } + + @Override + public void update(EdgeStyleDO EdgeStyleDO) { + super.update(EdgeStyleDO); + mongoTemplate.save(EdgeStyleDO, COLLECTION_NAME); + } + + @Override + public List queryAll() { + Criteria criteria = Criteria.where(EdgeStyleColumn.ENV).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.find(query, COLLECTION_CLASS, COLLECTION_NAME); + + } + + @Override + public PageList pageQuery(EdgeStyleDO EdgeStyleDO, int pageNum, int pageSize) { + Criteria criteria = Criteria.where(EdgeStyleColumn.ENV).is(DEFAULT_ENV); + if (StringUtils.isNotBlank(EdgeStyleDO.getEdgeStyleName())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(EdgeStyleColumn.EDGE_STYLE_NAME).regex("^.*" + EdgeStyleDO.getEdgeStyleName() + ".*$", "i"); + } + if (StringUtils.isNotBlank(EdgeStyleDO.getEdgeStyleKey())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(EdgeStyleColumn.EDGE_STYLE_KEY).regex("^.*" + EdgeStyleDO.getEdgeStyleKey() + ".*$", "i"); + } + if (StringUtils.isNotBlank(EdgeStyleDO.getSystemUuid())) { + criteria.and(EdgeStyleColumn.SYSTEM_UUID).is(EdgeStyleDO.getSystemUuid()); + } + Query query = new Query(criteria); + query.with(Sort.by(Sort.Direction.DESC, EdgeStyleColumn.CREATE_TIME)); + return pageQuery(query, COLLECTION_CLASS, pageSize, pageNum, COLLECTION_NAME); + } + + @Override + public EdgeStyleDO queryOneById(String _id) { + Criteria criteria = Criteria.where(EdgeStyleColumn._ID).is(_id); + criteria.and(EdgeStyleColumn.ENV).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); + + } + + @Override + public Class getBaseColumn() { + return EdgeStyleColumn.class; + } + + @Override + public EdgeStyleDO queryBySystemUuidAndName(String systemUuid, String name) { + Criteria criteria = Criteria.where(EdgeStyleColumn.EDGE_STYLE_NAME).is(name); + criteria.and(EdgeStyleColumn.ENV).is(DEFAULT_ENV); + criteria.and(EdgeStyleColumn.SYSTEM_UUID).is(systemUuid); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); + + } + + @Override + public EdgeStyleDO queryBySystemUuidAndKey(String systemUuid, String key) { + Criteria criteria = Criteria.where(EdgeStyleColumn.EDGE_STYLE_KEY).is(key); + criteria.and(EdgeStyleColumn.ENV).is(DEFAULT_ENV); + criteria.and(EdgeStyleColumn.SYSTEM_UUID).is(systemUuid); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); + + } +} diff --git a/views/src/main/resources/vueboot/src/api/edgeStyle.js b/views/src/main/resources/vueboot/src/api/edgeStyle.js new file mode 100644 index 0000000..675be12 --- /dev/null +++ b/views/src/main/resources/vueboot/src/api/edgeStyle.js @@ -0,0 +1,41 @@ +import request from '@/utils/request' + +export async function edgeStylePageQuery(edgeStyle, paginator) { + return await request({ + url: '/bicAdmin/edgeStyle/query', + method: 'post', + data: { + 'edgeStyle': edgeStyle, + 'paginator': paginator + } + }) +} + +export async function edgeStyleSave(edgeStyle) { + return await request({ + url: '/bicAdmin/edgeStyle/save', + method: 'post', + data: edgeStyle + }) +} + +export async function remoteValidateEdgeStyleName(systemUuid, name) { + return await request({ + url: '/bicAdmin/edgeStyle/validateName/' + systemUuid + '/' + name, + method: 'get', + }) +} + +export async function remoteValidatesEdgeStyleKey(systemUuid, key) { + return await request({ + url: '/bicAdmin/edgeStyle/validateKey/' + systemUuid + '/' + key, + method: 'get', + }) +} + +export async function edgeStyleLoad() { + return await request({ + url: '/bicAdmin/edgeStyle/loadDefaultStyle', + method: 'get', + }) +} diff --git a/views/src/main/resources/vueboot/src/api/loadSelectorApi.js b/views/src/main/resources/vueboot/src/api/loadSelectorApi.js index 4a7b06b..fe61dca 100644 --- a/views/src/main/resources/vueboot/src/api/loadSelectorApi.js +++ b/views/src/main/resources/vueboot/src/api/loadSelectorApi.js @@ -78,6 +78,18 @@ export async function nodeSelector(systemUuid) { } return [] } + +export async function edgeSelector(systemUuid) { + let ret = await request({ + url: '/bicAdmin/edge/loadSelector/' + systemUuid, + method: 'get' + }) + if (ret.ok) { + return ret.data.textValues; + } + return [] +} + export async function allNodeSelector() { let ret = await request({ url: '/bicAdmin/node/loadAllSelector/', @@ -100,6 +112,17 @@ export async function nodeStyleSelector(systemUuid) { return [] } +export async function edgeStyleSelector(systemUuid) { + let ret = await request({ + url: '/bicAdmin/edgeStyle/loadSelector/' + systemUuid, + method: 'get' + }) + if (ret.ok) { + return ret.data.textValues; + } + return [] +} + export async function nodeVueSelector(systemUuid, nodeUuid) { let ret = await request({ url: '/bicAdmin/nodeVue/loadSelector/' + systemUuid + '/' + nodeUuid, diff --git a/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-form.vue b/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-form.vue index d3f74fd..5166359 100644 --- a/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-form.vue +++ b/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-form.vue @@ -50,7 +50,7 @@ import {nodeSave, remoteValidateNodeName, remoteValidatesNodeKey} from "@/api/no import {edgeSave, remoteValidateEdgeName, remoteValidatesEdgeKey} from "@/api/edge"; export default { - name: "nodeForm", + name: "edgeForm", filters: {}, components: {}, data() { diff --git a/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-style-form.vue b/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-style-form.vue new file mode 100644 index 0000000..349535a --- /dev/null +++ b/views/src/main/resources/vueboot/src/views/bic-config/dialog/edge-style-form.vue @@ -0,0 +1,199 @@ + + + diff --git a/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-style-form.vue b/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-style-form.vue index 6c983b0..998c757 100644 --- a/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-style-form.vue +++ b/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-style-form.vue @@ -50,7 +50,7 @@ import {systemSelector} from "@/api/loadSelectorApi"; import {nodeStyleLoad, nodeStyleSave, remoteValidateNodeStyleName, remoteValidatesNodeStyleKey} from "@/api/nodeStyle"; export default { - name: "nodeForm", + name: "nodeStyleForm", filters: {}, components: {}, data() { @@ -61,7 +61,7 @@ export default { let systemUuid = this.saveData.systemUuid; if (systemUuid === '') { - callback(new Error("请先选择节点所属系统")) + callback(new Error("请先选择节点样式所属系统")) } let ret = await remoteValidateNodeStyleName(systemUuid, value); @@ -77,7 +77,7 @@ export default { } let systemUuid = this.saveData.systemUuid; if (systemUuid === '') { - callback(new Error("请先选择节点所属系统")) + callback(new Error("请先选择节点样式所属系统")) } let ret = await remoteValidatesNodeStyleKey(systemUuid, value); if (ret.data.result) { diff --git a/views/src/main/resources/vueboot/src/views/bic-config/edge-style-config.vue b/views/src/main/resources/vueboot/src/views/bic-config/edge-style-config.vue index 2047579..911202a 100644 --- a/views/src/main/resources/vueboot/src/views/bic-config/edge-style-config.vue +++ b/views/src/main/resources/vueboot/src/views/bic-config/edge-style-config.vue @@ -1,25 +1,186 @@ diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/controller/EdgeStyleController.java b/web/src/main/java/cn/icanci/loopstack/bic/web/controller/EdgeStyleController.java new file mode 100644 index 0000000..345ce39 --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/controller/EdgeStyleController.java @@ -0,0 +1,69 @@ +package cn.icanci.loopstack.bic.web.controller; + +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.web.bind.annotation.*; + +import cn.icanci.loopstack.bic.biz.service.EdgeStyleService; +import cn.icanci.loopstack.bic.common.model.TextValue; +import cn.icanci.loopstack.bic.common.model.base.EdgeStyleVO; +import cn.icanci.loopstack.bic.common.result.R; +import cn.icanci.loopstack.bic.web.form.EdgeStyleQueryForm; +import cn.icanci.loopstack.bic.web.mapper.EdgeStyleWebMapper; +import cn.icanci.loopstack.bic.web.model.EdgeStyle; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 22:23 + */ +@RestController +@RequestMapping("/bicAdmin/edgeStyle") +public class EdgeStyleController { + + @Resource + private EdgeStyleWebMapper edgeStyleWebMapper; + @Resource + private EdgeStyleService edgeStyleService; + + // ================================ CRUD ================================ + @PostMapping("query") + public R query(@RequestBody EdgeStyleQueryForm form) { + return R.builderOk() + .data("queryPage", edgeStyleService.queryPage(edgeStyleWebMapper.web2vo(form.getEdgeStyle()), form.getPaginator().getCurrentPage(), form.getPaginator().getPageSize())) + .build(); + } + + @PostMapping("save") + public R save(@RequestBody EdgeStyle edgeStyle) { + edgeStyleService.save(edgeStyleWebMapper.web2vo(edgeStyle)); + return R.builderOk().build(); + } + + @GetMapping("validateName/{systemUuid}/{name}") + public R validateName(@PathVariable("systemUuid") String systemUuid, @PathVariable("name") String name) { + EdgeStyleVO edgeStyle = edgeStyleService.queryBySystemUuidAndName(systemUuid, name); + return R.builderOk().data("result", edgeStyle == null).build(); + } + + @GetMapping("validateKey/{systemUuid}/{key}") + public R validateKey(@PathVariable("systemUuid") String systemUuid, @PathVariable("key") String key) { + EdgeStyleVO edgeStyle = edgeStyleService.queryBySystemUuidAndKey(systemUuid, key); + return R.builderOk().data("result", edgeStyle == null).build(); + } + // ================================ Load Selectors ================================ + + @GetMapping("loadSelector/{systemUuid}") + public R loadSelector(@PathVariable("systemUuid") String systemUuid) { + List textValues = edgeStyleService.loadSelector(systemUuid); + return R.builderOk().data("textValues", textValues).build(); + } + + @GetMapping("loadDefaultStyle") + public R loadDefaultStyle() { + String defaultStyle = edgeStyleService.loadDefaultStyle(); + return R.builderOk().data("defaultStyle", defaultStyle).build(); + } + +} diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/form/EdgeStyleQueryForm.java b/web/src/main/java/cn/icanci/loopstack/bic/web/form/EdgeStyleQueryForm.java new file mode 100644 index 0000000..9498ecd --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/form/EdgeStyleQueryForm.java @@ -0,0 +1,13 @@ +package cn.icanci.loopstack.bic.web.form; + +import cn.icanci.loopstack.bic.web.model.EdgeStyle; +import lombok.Data; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/16 10:22 + */ +@Data +public class EdgeStyleQueryForm extends BaseQueryForm { + private EdgeStyle edgeStyle; +} diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/mapper/EdgeStyleWebMapper.java b/web/src/main/java/cn/icanci/loopstack/bic/web/mapper/EdgeStyleWebMapper.java new file mode 100644 index 0000000..fd2d1cc --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/mapper/EdgeStyleWebMapper.java @@ -0,0 +1,15 @@ +package cn.icanci.loopstack.bic.web.mapper; + +import org.mapstruct.Mapper; +import org.mapstruct.NullValueMappingStrategy; + +import cn.icanci.loopstack.bic.common.model.base.EdgeStyleVO; +import cn.icanci.loopstack.bic.web.model.EdgeStyle; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/16 10:23 + */ +@Mapper(componentModel = "spring", uses = {}, nullValueMappingStrategy = NullValueMappingStrategy.RETURN_NULL) +public interface EdgeStyleWebMapper extends BaseWebMapper { +} diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/model/EdgeStyle.java b/web/src/main/java/cn/icanci/loopstack/bic/web/model/EdgeStyle.java new file mode 100644 index 0000000..7388aad --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/model/EdgeStyle.java @@ -0,0 +1,19 @@ +package cn.icanci.loopstack.bic.web.model; + +import lombok.Data; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/13 22:05 + */ +@Data +public class EdgeStyle extends Base { + /** 系统 */ + private String systemUuid; + /** 边样式名称 */ + private String edgeStyleName; + /** 边样式Key */ + private String edgeStyleKey; + /** json格式的数据格式 */ + private String edgeStyle; +} -- Gitee From a437f7f92cec5dbc66aebfccc899d1f239c61d7e Mon Sep 17 00:00:00 2001 From: icanci Date: Sat, 16 Sep 2023 10:36:49 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=BA=A0=E5=AF=9F=E5=9B=BE=20=E8=BE=B9?= =?UTF-8?q?=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/EdgeStyleServiceImpl.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java index 059be0b..2aa3190 100644 --- a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/EdgeStyleServiceImpl.java @@ -26,13 +26,13 @@ import cn.icanci.loopstack.bic.dal.mongo.dateobject.EdgeStyleDO; public class EdgeStyleServiceImpl implements EdgeStyleService { @Resource - private EdgeStyleDAO nodeStyleDAO; + private EdgeStyleDAO edgeStyleDAO; @Resource - private EdgeStyleMapper nodeStyleMapper; + private EdgeStyleMapper edgeStyleMapper; @Override public List queryAll() { - return nodeStyleMapper.dos2vos(nodeStyleDAO.queryAll()); + return edgeStyleMapper.dos2vos(edgeStyleDAO.queryAll()); } @Override @@ -40,33 +40,33 @@ public class EdgeStyleServiceImpl implements EdgeStyleService { // TODO 日志记录 // TODO 更新视图 if (doInsert(edgeStyleVO)) { - EdgeStyleDO insert = nodeStyleMapper.vo2do(edgeStyleVO); - nodeStyleDAO.insert(insert); + EdgeStyleDO insert = edgeStyleMapper.vo2do(edgeStyleVO); + edgeStyleDAO.insert(insert); } else { - nodeStyleDAO.update(nodeStyleMapper.vo2do(edgeStyleVO)); + edgeStyleDAO.update(edgeStyleMapper.vo2do(edgeStyleVO)); } } @Override public EdgeStyleVO queryById(String id) { - return nodeStyleMapper.do2vo(nodeStyleDAO.queryOneById(id)); + return edgeStyleMapper.do2vo(edgeStyleDAO.queryOneById(id)); } @Override public PageList queryPage(EdgeStyleVO edgeStyleVO, int pageNum, int pageSize) { - PageList pageQuery = nodeStyleDAO.pageQuery(nodeStyleMapper.vo2do(edgeStyleVO), pageNum, pageSize); - return new PageList<>(nodeStyleMapper.dos2vos(pageQuery.getData()), pageQuery.getPaginator()); + PageList pageQuery = edgeStyleDAO.pageQuery(edgeStyleMapper.vo2do(edgeStyleVO), pageNum, pageSize); + return new PageList<>(edgeStyleMapper.dos2vos(pageQuery.getData()), pageQuery.getPaginator()); } @Override public EdgeStyleVO queryBySystemUuidAndName(String systemUuid, String name) { - return nodeStyleMapper.do2vo(nodeStyleDAO.queryBySystemUuidAndName(systemUuid, name)); + return edgeStyleMapper.do2vo(edgeStyleDAO.queryBySystemUuidAndName(systemUuid, name)); } @Override public EdgeStyleVO queryBySystemUuidAndKey(String systemUuid, String key) { - return nodeStyleMapper.do2vo(nodeStyleDAO.queryBySystemUuidAndKey(systemUuid, key)); + return edgeStyleMapper.do2vo(edgeStyleDAO.queryBySystemUuidAndKey(systemUuid, key)); } @Override -- Gitee