Browse Source

更改数据库命名、关系管理的增删改查、实体关系的查看、删除

R 1 năm trước cách đây
mục cha
commit
589b0d094a
3 tập tin đã thay đổi với 100 bổ sung16 xóa
  1. 5 3
      app.js
  2. 14 13
      router/dataMark/entity.js
  3. 81 0
      router/dataMark/relationship.js

+ 5 - 3
app.js

@@ -28,11 +28,13 @@ process
 const adminRouter = require('./router/system/admin.js') //管理菜单等路由
 const fileRouter = require('./router/system/file.js') //文件等路由
 const testsRouter = require('./router/tests.js') //测试信息路由
-const componentsRouter = require('./router/components.js') //测试信息路由
-const dataMarkRouter = require('./router/dataMark/entity.js') //测试信息路由
+const componentsRouter = require('./router/components.js')
+const entityRouter = require('./router/dataMark/entity.js')
+const relationshipRouter = require('./router/dataMark/relationship.js')
 server.use('/admin', adminRouter)
 server.use('/file', fileRouter)
 server.use('/tests', testsRouter)
 server.use('/components', componentsRouter)
-server.use('/dataMark', dataMarkRouter)
+server.use('/entity', entityRouter)
+server.use('/relationship', relationshipRouter)
 console.log('后端接口启动成功')

+ 14 - 13
router/dataMark/entity.js

@@ -10,9 +10,9 @@ const fileEvent = require('../../utils/file')
 const getNewSqlParamEntity = require('../../utils/tool.js')
 const execTrans = require('../../utils/dbHelper.js')
 
-// 增加实体大类
+// 增加实体
 router.post('/addEntity', async (req, res) => {
-  let sql = 'INSERT INTO entity(`name`,`introduce`,is_show,parent_id) VALUES (?,?,?,?)',
+  let sql = 'INSERT INTO entity_t(`name`,`introduce`,is_show,parent_id) VALUES (?,?,?,?)',
     obj = req.body
   await pools({
     sql,
@@ -27,12 +27,12 @@ router.post('/addEntity', async (req, res) => {
 router.post('/getEntityList', async (req, res) => {
   let user = await utils.getUserInfo({ req, res }),
     obj = req.body
-  let sql = `SELECT entity_id AS entityId,name,introduce,is_show,parent_id AS parentId FROM entity WHERE 1=1` // WHERE 1=1是一个始终为真的条件,后续动态添加查询条件的起点
+  let sql = `SELECT id AS entityId,name,introduce,is_show,parent_id AS parentId FROM entity_t WHERE 1=1` // WHERE 1=1是一个始终为真的条件,后续动态添加查询条件的起点
   sql = utils.setLike(sql, 'name', obj.name) // 添加一个基于name字段的模糊匹配条件,匹配的值来自obj.name
   sql = utils.setMoreId(sql, user)
   sql = utils.setOr(sql, 'name', obj.name)
-  let { total } = await utils.getSum({ sql, name: 'entity', res, req }) // 执行SQL查询并获取结果中的总数
-  sql += ` ORDER BY entity_id ASC` // 在SQL查询语句的末尾添加了一个ORDER BY子句,用于根据id字段排序结果 ASC升序、DESC降序
+  let { total } = await utils.getSum({ sql, name: 'entity_t', res, req }) // 执行SQL查询并获取结果中的总数
+  sql += ` ORDER BY id ASC` // 在SQL查询语句的末尾添加了一个ORDER BY子句,用于根据id字段排序结果 ASC升序、DESC降序
   // sql = utils.pageSize(sql, obj.page, obj.size) // 函数来修改SQL语句,添加分页功能。它使用obj.page和obj.size来确定返回结果的范围。
   let { result } = await pools({ sql, res, req })
   result = result.map((item) => ({
@@ -44,7 +44,7 @@ router.post('/getEntityList', async (req, res) => {
 
 //修改
 router.post('/updataEntity', async (req, res) => {
-  let sql = 'UPDATE entity SET name=?,introduce=?,is_show=?,parent_id=? WHERE entity_id=?',
+  let sql = 'UPDATE entity_t SET name=?,introduce=?,is_show=?,parent_id=? WHERE id=?',
     obj = req.body
   await pools({ sql, val: [obj.name, obj.introduce, obj.is_show, obj.parentId, obj.entityId], run: false, res, req })
 })
@@ -54,10 +54,10 @@ router.post('/delEntity', async (req, res) => {
   // await utils.checkPermi({ req, res, role: [systemSettings.menus.menuDelte] })  //检查是否有删除权限
   let obj = req.body // 假设这是一个包含所有要删除的entityId的数组
   let hasChildren = false
-  let selectSql = 'SELECT entity_id FROM entity WHERE parent_id=?'
+  let selectSql = 'SELECT id FROM entity_t WHERE parent_id=?'
   // 检查是否有子项
-  for (let entity_id of obj) {
-    let { result } = await pools({ sql: selectSql, val: [entity_id], res, req })
+  for (let id of obj) {
+    let { result } = await pools({ sql: selectSql, val: [id], res, req })
     if (result.length !== 0) {
       hasChildren = true
       break
@@ -68,13 +68,14 @@ router.post('/delEntity', async (req, res) => {
   } else {
     // 构建参数化查询的参数
     let placeholders = obj.map(() => '?').join(',')
-    let sql = `DELETE FROM entity WHERE entity_id in (${placeholders})`
+    let sql = `DELETE FROM entity_t WHERE id in (${placeholders})`
     await pools({ sql, val: obj, run: false, res, req }) // 注意这里直接传递obj数组作为参数
   }
 })
 
+// 导入
 router.post('/importEntity', async (req, res) => {
-  let sql = 'INSERT INTO entity(`name`,`introduce`,is_show,parent_id) VALUES ?'
+  let sql = 'INSERT INTO entity_t(`name`,`introduce`,is_show,parent_id) VALUES ?'
   let fileArr = await fileEvent(req, res)
   let filename = fileArr[0].filename
   //配置获取文件路径
@@ -89,12 +90,12 @@ router.post('/importEntity', async (req, res) => {
       console.log('res1', res1)
     } else {
       let parentName = item[item.length - 1]
-      let parentSql = 'SELECT entity_id FROM entity WHERE `name` = ?'
+      let parentSql = 'SELECT id FROM entity_t WHERE `name` = ?'
       let parentId
       try {
         let result = await pools({ sql: parentSql, val: [parentName], run: true, res, req })
         console.log('result', result)
-        parentId = result.result[0].entity_id
+        parentId = result.result[0].id
         console.log('parentId', parentId)
       } catch (error) {
         console.log('获取父节点id失败', error)

+ 81 - 0
router/dataMark/relationship.js

@@ -0,0 +1,81 @@
+const express = require('express')
+const router = express.Router()
+const utils = require('../../utils/index.js')
+const pools = require('../../utils/pools.js')
+// 增加实体
+router.post('/addRelationship', async (req, res) => {
+  let sql = 'INSERT INTO relationship_t(`name`) VALUES (?)',
+    obj = req.body
+  await pools({
+    sql,
+    val: [obj.name],
+    run: false,
+    res,
+    req
+  })
+})
+
+//查询测试账号
+router.post('/getRelationshipList', async (req, res) => {
+  let user = await utils.getUserInfo({ req, res }),
+    obj = req.body
+  let sql = `SELECT id AS relationshipId,name FROM relationship_t WHERE 1=1`
+  sql = utils.setLike(sql, 'name', obj.name)
+  sql = utils.setMoreId(sql, user)
+  let { total } = await utils.getSum({ sql, name: 'relationship_t', res, req })
+  sql += ` ORDER BY id ASC`
+  sql = utils.pageSize(sql, obj.page, obj.size)
+  let { result } = await pools({ sql, res, req })
+  res.send(utils.returnData({ data: result, total }))
+})
+
+//删除
+router.post('/delRelationship', async (req, res) => {
+  obj = req.body
+  let placeholders = obj.map(() => '?').join(',')
+  let sql = `DELETE FROM relationship_t WHERE id in (${placeholders})`
+  await pools({ sql, val: obj, run: false, res, req }) // 注意这里直接传递obj数组作为参数
+})
+
+//修改
+router.post('/updataRelationship', async (req, res) => {
+  let sql = 'UPDATE relationship_t SET name=? WHERE id=?',
+    obj = req.body
+  await pools({ sql, val: [obj.name, obj.relationshipId], run: false, res, req })
+})
+
+// 获取ERList
+router.post('/getERList', async (req, res) => {
+  let user = await utils.getUserInfo({ req, res }),
+    obj = req.body
+  console.log('obj', obj)
+  // let sql = `SELECT relationship_id AS relationshipId,name FROM relationship WHERE 1=1`
+  let sql = `SELECT
+      r.NAME AS relationshipName,
+      r.id AS relationshipId,
+      t.object_id AS objectId,
+      t.is_show,
+      t.id AS ERId,
+      (SELECT name from entity_t e where e.id = t.object_id) as objectName,
+      t.subject_id AS subjectId,
+      (SELECT name from entity_t e where e.id = t.subject_id) as subjectName
+    FROM
+      entity_relationship_t t JOIN relationship_t r ON r.id = t.relationship_id 
+    WHERE
+      r.id = ?`
+  let { result } = await pools({ sql, val: [obj.relationshipId], req })
+  result = result.map((item) => ({
+    ...item,
+    isShow: item.is_show === 1
+  }))
+  res.send(utils.returnData({ data: result }))
+})
+
+//删除测试账号
+router.post('/delER', async (req, res) => {
+  obj = req.body
+  let placeholders = obj.map(() => '?').join(',')
+  let sql = `DELETE FROM entity_relationship_t WHERE id in (${placeholders})`
+  await pools({ sql, val: obj, run: false, res, req }) // 注意这里直接传递obj数组作为参数
+})
+module.exports = router