From 89ec46ca925463a43b8f09fe39bd33b1c4d403b6 Mon Sep 17 00:00:00 2001 From: icanci Date: Mon, 11 Sep 2023 23:20:38 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E7=BA=A0=E5=AF=9F=E5=9B=BEMVP#=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../loopstack/bic/biz/mapper/NodeMapper.java | 15 ++ .../bic/biz/service/NodeService.java | 32 ++++ .../bic/biz/service/impl/NodeServiceImpl.java | 89 +++++++++ .../biz/service/impl/UseCaseServiceImpl.java | 1 + .../loopstack/bic/common/model/BuryingVO.java | 1 - .../bic/dal/mongo/daointerface/NodeDAO.java | 27 +++ .../bic/dal/mongo/dateobject/NodeDO.java | 17 ++ .../bic/dal/mongo/mongo/MongoNodeDAO.java | 89 +++++++++ .../vueboot/src/api/loadSelectorApi.js | 22 +++ .../main/resources/vueboot/src/api/node.js | 34 ++++ .../resources/vueboot/src/router/index.js | 12 +- .../src/views/bic-config/dialog/node-form.vue | 160 ++++++++++++++++ .../src/views/bic-config/node-config.vue | 175 +++++++++++++++++- .../bic/web/controller/NodeController.java | 60 ++++++ .../loopstack/bic/web/form/NodeQueryForm.java | 16 ++ .../bic/web/mapper/NodeWebMapper.java | 15 ++ .../icanci/loopstack/bic/web/model/Node.java | 17 ++ 17 files changed, 769 insertions(+), 13 deletions(-) create mode 100644 biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/NodeMapper.java create mode 100644 biz/src/main/java/cn/icanci/loopstack/bic/biz/service/NodeService.java create mode 100644 biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/NodeServiceImpl.java create mode 100644 dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/NodeDAO.java create mode 100644 dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/NodeDO.java create mode 100644 dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoNodeDAO.java create mode 100644 views/src/main/resources/vueboot/src/api/node.js create mode 100644 views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/controller/NodeController.java create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/form/NodeQueryForm.java create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/mapper/NodeWebMapper.java create mode 100644 web/src/main/java/cn/icanci/loopstack/bic/web/model/Node.java diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/NodeMapper.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/NodeMapper.java new file mode 100644 index 0000000..709b36b --- /dev/null +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/mapper/NodeMapper.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.NodeVO; +import cn.icanci.loopstack.bic.dal.mongo.dateobject.NodeDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 22:58 + */ +@Mapper(componentModel = "spring", nullValueMappingStrategy = NullValueMappingStrategy.RETURN_NULL) +public interface NodeMapper extends BaseMapper { +} diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/NodeService.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/NodeService.java new file mode 100644 index 0000000..dc1acc6 --- /dev/null +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/NodeService.java @@ -0,0 +1,32 @@ +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.NodeVO; +import cn.icanci.loopstack.bic.dal.mongo.common.PageList; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 22:56 + */ +public interface NodeService extends BaseService { + @Override + List queryAll(); + + @Override + void save(NodeVO nodeVO); + + @Override + NodeVO queryById(String id); + + @Override + PageList queryPage(NodeVO nodeVO, int pageNum, int pageSize); + + NodeVO queryBySystemUuidAndName(String systemUuid, String name); + + NodeVO queryBySystemUuidAndKey(String systemUuid, String key); + + List loadSelector(String systemUuid); + +} diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/NodeServiceImpl.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/NodeServiceImpl.java new file mode 100644 index 0000000..c92aaca --- /dev/null +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/NodeServiceImpl.java @@ -0,0 +1,89 @@ +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.NodeMapper; +import cn.icanci.loopstack.bic.biz.service.NodeService; +import cn.icanci.loopstack.bic.common.model.TextValue; +import cn.icanci.loopstack.bic.common.model.base.NodeVO; +import cn.icanci.loopstack.bic.dal.mongo.common.PageList; +import cn.icanci.loopstack.bic.dal.mongo.daointerface.NodeDAO; +import cn.icanci.loopstack.bic.dal.mongo.dateobject.NodeDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 22:57 + */ +@Service("nodeService") +public class NodeServiceImpl implements NodeService { + @Resource + private NodeDAO nodeDAO; + @Resource + private NodeMapper nodeMapper; + + @Override + public List queryAll() { + return nodeMapper.dos2vos(nodeDAO.queryAll()); + } + + @Override + public void save(NodeVO nodeVO) { + // TODO 日志记录 + if (doInsert(nodeVO)) { + NodeDO insert = nodeMapper.vo2do(nodeVO); + nodeDAO.insert(insert); + } else { + nodeDAO.update(nodeMapper.vo2do(nodeVO)); + } + } + + @Override + public NodeVO queryById(String id) { + return nodeMapper.do2vo(nodeDAO.queryOneById(id)); + } + + @Override + public PageList queryPage(NodeVO nodeVO, int pageNum, int pageSize) { + PageList pageQuery = nodeDAO.pageQuery(nodeMapper.vo2do(nodeVO), pageNum, pageSize); + return new PageList<>(nodeMapper.dos2vos(pageQuery.getData()), pageQuery.getPaginator()); + } + + @Override + public NodeVO queryBySystemUuidAndName(String systemUuid, String name) { + return nodeMapper.do2vo(nodeDAO.queryBySystemUuidAndName(systemUuid, name)); + } + + @Override + public NodeVO queryBySystemUuidAndKey(String systemUuid, String key) { + return nodeMapper.do2vo(nodeDAO.queryBySystemUuidAndKey(systemUuid, key)); + } + + @Override + @SuppressWarnings("all") + public List loadSelector(String systemUuid) { + List nodes = queryAll(); + List textValues = Lists.newArrayList(); + for (NodeVO node : nodes) { + if (!StringUtils.equals(systemUuid, node.getSystemUuid())) { + continue; + } + + String label; + if (isDeleted(node)) { + label = String.format(DELETED_FORMAT, node.getNodeName()); + } else { + label = String.format(NOT_DELETED_FORMAT, node.getNodeName()); + } + String value = node.getUuid(); + textValues.add(new TextValue(label, value)); + } + return textValues; + } +} diff --git a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/UseCaseServiceImpl.java b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/UseCaseServiceImpl.java index ca00930..d477008 100644 --- a/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/UseCaseServiceImpl.java +++ b/biz/src/main/java/cn/icanci/loopstack/bic/biz/service/impl/UseCaseServiceImpl.java @@ -67,6 +67,7 @@ public class UseCaseServiceImpl implements UseCaseService { } @Override + @SuppressWarnings("all") public List loadSelector(String systemUuid) { List useCases = queryAll(); List textValues = Lists.newArrayList(); diff --git a/common/src/main/java/cn/icanci/loopstack/bic/common/model/BuryingVO.java b/common/src/main/java/cn/icanci/loopstack/bic/common/model/BuryingVO.java index 44ba9de..208a969 100644 --- a/common/src/main/java/cn/icanci/loopstack/bic/common/model/BuryingVO.java +++ b/common/src/main/java/cn/icanci/loopstack/bic/common/model/BuryingVO.java @@ -1,6 +1,5 @@ package cn.icanci.loopstack.bic.common.model; -import cn.icanci.loopstack.bic.common.model.BaseVO; import lombok.Data; /** diff --git a/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/NodeDAO.java b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/NodeDAO.java new file mode 100644 index 0000000..bbc1c54 --- /dev/null +++ b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/daointerface/NodeDAO.java @@ -0,0 +1,27 @@ +package cn.icanci.loopstack.bic.dal.mongo.daointerface; + +import cn.icanci.loopstack.bic.dal.mongo.dateobject.NodeDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 22:59 + */ +public interface NodeDAO extends BaseDAO { + /** 文档对应的名字 */ + String COLLECTION_NAME = BASE_COLLECTION_NAME + "node"; + /** 文档对应的Class */ + Class COLLECTION_CLASS = NodeDO.class; + + NodeDO queryBySystemUuidAndName(String systemUuid, String name); + + NodeDO queryBySystemUuidAndKey(String systemUuid, String key); + + /** 列 */ + interface NodeColumn extends BaseColumn { + String NODE_NAME = "nodeName"; + + String NODE_KEY = "nodeKey"; + + String SYSTEM_UUID = "systemUuid"; + } +} diff --git a/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/NodeDO.java b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/NodeDO.java new file mode 100644 index 0000000..fec0597 --- /dev/null +++ b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/dateobject/NodeDO.java @@ -0,0 +1,17 @@ +package cn.icanci.loopstack.bic.dal.mongo.dateobject; + +import lombok.Data; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 22:58 + */ +@Data +public class NodeDO extends BaseDO { + /** 节点系统标识 */ + private String systemUuid; + /** 节点名称 */ + private String nodeName; + /** 节点Key */ + private String nodeKey; +} diff --git a/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoNodeDAO.java b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoNodeDAO.java new file mode 100644 index 0000000..ac284b4 --- /dev/null +++ b/dal/src/main/java/cn/icanci/loopstack/bic/dal/mongo/mongo/MongoNodeDAO.java @@ -0,0 +1,89 @@ +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.NodeDAO; +import cn.icanci.loopstack.bic.dal.mongo.dateobject.NodeDO; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/10 15:29 + */ +@Service("nodeDAO") +public class MongoNodeDAO extends AbstractBaseDAO implements NodeDAO { + @Override + public void insert(NodeDO node) { + super.insert(node); + mongoTemplate.insert(node, COLLECTION_NAME); + } + + @Override + public void update(NodeDO node) { + super.update(node); + mongoTemplate.save(node, COLLECTION_NAME); + } + + @Override + public List queryAll() { + Criteria criteria = Criteria.where(NodeColumn.ENV).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.find(query, COLLECTION_CLASS, COLLECTION_NAME); + } + + @Override + public PageList pageQuery(NodeDO node, int pageNum, int pageSize) { + Criteria criteria = Criteria.where(NodeColumn.ENV).is(DEFAULT_ENV); + if (StringUtils.isNotBlank(node.getNodeName())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(NodeColumn.NODE_NAME).regex("^.*" + node.getNodeName() + ".*$", "i"); + } + if (StringUtils.isNotBlank(node.getNodeKey())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(NodeColumn.NODE_KEY).regex("^.*" + node.getNodeKey() + ".*$", "i"); + } + if (StringUtils.isNotBlank(node.getSystemUuid())) { + criteria.and(NodeColumn.SYSTEM_UUID).is(node.getSystemUuid()); + } + Query query = new Query(criteria); + query.with(Sort.by(Sort.Direction.DESC, NodeColumn.CREATE_TIME)); + return pageQuery(query, COLLECTION_CLASS, pageSize, pageNum, COLLECTION_NAME); + } + + @Override + public NodeDO queryOneById(String _id) { + Criteria criteria = Criteria.where(NodeColumn._ID).is(_id); + criteria.and(NodeColumn.ENV).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); + } + + @Override + public Class getBaseColumn() { + return NodeColumn.class; + } + + @Override + public NodeDO queryBySystemUuidAndName(String systemUuid, String name) { + Criteria criteria = Criteria.where(NodeColumn.NODE_NAME).is(name); + criteria.and(NodeColumn.ENV).is(DEFAULT_ENV); + criteria.and(NodeColumn.SYSTEM_UUID).is(systemUuid); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); + } + + @Override + public NodeDO queryBySystemUuidAndKey(String systemUuid, String key) { + Criteria criteria = Criteria.where(NodeColumn.NODE_KEY).is(key); + criteria.and(NodeColumn.ENV).is(DEFAULT_ENV); + criteria.and(NodeColumn.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/loadSelectorApi.js b/views/src/main/resources/vueboot/src/api/loadSelectorApi.js index 39f7ec5..989da1f 100644 --- a/views/src/main/resources/vueboot/src/api/loadSelectorApi.js +++ b/views/src/main/resources/vueboot/src/api/loadSelectorApi.js @@ -46,6 +46,28 @@ export async function systemSelector() { return [] } +export async function useCaseSelector(systemUuid) { + let ret = await request({ + url: '/bicAdmin/useCase/loadSelector/' + systemUuid, + method: 'get' + }) + if (ret.ok) { + return ret.data.textValues; + } + return [] +} + +export async function nodeSelector(systemUuid) { + let ret = await request({ + url: '/bicAdmin/node/loadSelector/' + systemUuid, + method: 'get' + }) + if (ret.ok) { + return ret.data.textValues; + } + return [] +} + export function joiner(arr, join) { let res = "" if (!res && !join) { diff --git a/views/src/main/resources/vueboot/src/api/node.js b/views/src/main/resources/vueboot/src/api/node.js new file mode 100644 index 0000000..6ebe242 --- /dev/null +++ b/views/src/main/resources/vueboot/src/api/node.js @@ -0,0 +1,34 @@ +import request from '@/utils/request' + +export async function nodePageQuery(node, paginator) { + return await request({ + url: '/bicAdmin/node/query', + method: 'post', + data: { + 'node': node, + 'paginator': paginator + } + }) +} + +export async function nodeSave(node) { + return await request({ + url: '/bicAdmin/node/save', + method: 'post', + data: node + }) +} + +export async function remoteValidateNodeName(systemUuid, name) { + return await request({ + url: '/bicAdmin/node/validateName/' + systemUuid + '/' + name, + method: 'get', + }) +} + +export async function remoteValidatesNodeKey(systemUuid, key) { + return await request({ + url: '/bicAdmin/node/validateKey/' + systemUuid + '/' + key, + method: 'get', + }) +} diff --git a/views/src/main/resources/vueboot/src/router/index.js b/views/src/main/resources/vueboot/src/router/index.js index 21e6790..53af3ba 100644 --- a/views/src/main/resources/vueboot/src/router/index.js +++ b/views/src/main/resources/vueboot/src/router/index.js @@ -124,6 +124,12 @@ export const constantRoutes = [ name: 'useCaseConfig', meta: {title: '用例配置'}, }, + { + path: 'node-config', + component: () => import('@/views/bic-config/node-config'), + name: 'nodeConfig', + meta: {title: '节点配置'} + }, { path: 'edge-config', component: () => import('@/views/bic-config/edge-config'), @@ -136,12 +142,6 @@ export const constantRoutes = [ name: 'edgeFunctionConfig', meta: {title: '边函数配置'} }, - { - path: 'node-config', - component: () => import('@/views/bic-config/node-config'), - name: 'nodeConfig', - meta: {title: '节点配置'} - }, { path: 'node-function-config', component: () => import('@/views/bic-config/node-function-config'), diff --git a/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue b/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue new file mode 100644 index 0000000..1ca814d --- /dev/null +++ b/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue @@ -0,0 +1,160 @@ + + + diff --git a/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue b/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue index 0bb837c..b53e839 100644 --- a/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue +++ b/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue @@ -1,19 +1,182 @@ diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/controller/NodeController.java b/web/src/main/java/cn/icanci/loopstack/bic/web/controller/NodeController.java new file mode 100644 index 0000000..3b14e30 --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/controller/NodeController.java @@ -0,0 +1,60 @@ +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.NodeService; +import cn.icanci.loopstack.bic.common.model.TextValue; +import cn.icanci.loopstack.bic.common.model.base.NodeVO; +import cn.icanci.loopstack.bic.common.result.R; +import cn.icanci.loopstack.bic.web.form.NodeQueryForm; +import cn.icanci.loopstack.bic.web.mapper.NodeWebMapper; +import cn.icanci.loopstack.bic.web.model.Node; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 21:40 + */ +@RestController +@RequestMapping("/bicAdmin/node") +public class NodeController { + @Resource + private NodeWebMapper nodeWebMapper; + @Resource + private NodeService nodeService; + + // ================================ CRUD ================================ + @PostMapping("query") + public R query(@RequestBody NodeQueryForm form) { + return R.builderOk().data("queryPage", nodeService.queryPage(nodeWebMapper.web2vo(form.getNode()), form.getPaginator().getCurrentPage(), form.getPaginator().getPageSize())) + .build(); + } + + @PostMapping("save") + public R save(@RequestBody Node node) { + nodeService.save(nodeWebMapper.web2vo(node)); + return R.builderOk().build(); + } + + @GetMapping("validateName/{systemUuid}/{name}") + public R validateName(@PathVariable("systemUuid") String systemUuid, @PathVariable("name") String name) { + NodeVO node = nodeService.queryBySystemUuidAndName(systemUuid, name); + return R.builderOk().data("result", node == null).build(); + } + + @GetMapping("validateKey/{systemUuid}/{key}") + public R validateKey(@PathVariable("systemUuid") String systemUuid, @PathVariable("key") String key) { + NodeVO node = nodeService.queryBySystemUuidAndKey(systemUuid, key); + return R.builderOk().data("result", node == null).build(); + } + // ================================ Load Selectors ================================ + + @GetMapping("loadSelector/{systemUuid}") + public R loadSelector(@PathVariable("systemUuid") String systemUuid) { + List textValues = nodeService.loadSelector(systemUuid); + return R.builderOk().data("textValues", textValues).build(); + } +} diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/form/NodeQueryForm.java b/web/src/main/java/cn/icanci/loopstack/bic/web/form/NodeQueryForm.java new file mode 100644 index 0000000..fa16aa2 --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/form/NodeQueryForm.java @@ -0,0 +1,16 @@ +package cn.icanci.loopstack.bic.web.form; + +import cn.icanci.loopstack.bic.web.model.Node; +import lombok.Data; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/10 20:06 + */ +@Data +public class NodeQueryForm extends BaseQueryForm { + /** + * 用例查询模型 + */ + private Node node; +} diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/mapper/NodeWebMapper.java b/web/src/main/java/cn/icanci/loopstack/bic/web/mapper/NodeWebMapper.java new file mode 100644 index 0000000..6459982 --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/mapper/NodeWebMapper.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.NodeVO; +import cn.icanci.loopstack.bic.web.model.Node; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/10 15:17 + */ +@Mapper(componentModel = "spring", uses = {}, nullValueMappingStrategy = NullValueMappingStrategy.RETURN_NULL) +public interface NodeWebMapper extends BaseWebMapper { +} diff --git a/web/src/main/java/cn/icanci/loopstack/bic/web/model/Node.java b/web/src/main/java/cn/icanci/loopstack/bic/web/model/Node.java new file mode 100644 index 0000000..516b7ee --- /dev/null +++ b/web/src/main/java/cn/icanci/loopstack/bic/web/model/Node.java @@ -0,0 +1,17 @@ +package cn.icanci.loopstack.bic.web.model; + +import lombok.Data; + +/** + * @author icanci + * @since 1.0 Created in 2023/09/11 22:55 + */ +@Data +public class Node extends Base { + /** 节点系统标识 */ + private String systemUuid; + /** 节点名称 */ + private String nodeName; + /** 节点Key */ + private String nodeKey; +} -- Gitee From 2db353c6754faca74b0480a627cb669aeaa47315 Mon Sep 17 00:00:00 2001 From: icanci Date: Mon, 11 Sep 2023 23:21:06 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E7=BA=A0=E5=AF=9F=E5=9B=BEMVP#=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/vueboot/src/views/bic-config/dialog/node-form.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue b/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue index 1ca814d..f08c581 100644 --- a/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue +++ b/views/src/main/resources/vueboot/src/views/bic-config/dialog/node-form.vue @@ -3,7 +3,7 @@ @@ -89,6 +89,7 @@ export default { labelPosition: 'right', dialogVisible: false, saveData: { + id:'', nodeName: '', nodeKey: '', systemUuid: '', @@ -120,6 +121,7 @@ export default { if (data) { vm.saveData = vm.$cloneObj(data) } + console.log(vm.saveData) vm.dialogVisible = true }, save() { @@ -145,6 +147,7 @@ export default { let vm = this try { vm.saveData = { + id:'', useCaseName: '', useCaseKey: '', systemUuid: '' diff --git a/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue b/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue index b53e839..3f4bf0b 100644 --- a/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue +++ b/views/src/main/resources/vueboot/src/views/bic-config/node-config.vue @@ -73,6 +73,7 @@ label="操作">