|
@@ -0,0 +1,73 @@
|
|
|
+const express = require('express')
|
|
|
+const router = express.Router()
|
|
|
+const utils = require('../../utils/index.js')
|
|
|
+const pools = require('../../utils/pools.js')
|
|
|
+// 增加实体
|
|
|
+router.post('/addDataset', async (req, res) => {
|
|
|
+ let sql = 'INSERT INTO dataset_t(`name`,creator_id) VALUES (?,?)',
|
|
|
+ obj = req.body
|
|
|
+ await utils.existName({
|
|
|
+ sql: 'SELECT name FROM dataset_t WHERE name=?',
|
|
|
+ name: obj.name,
|
|
|
+ res,
|
|
|
+ msg: '该数据集名称已存在!',
|
|
|
+ req
|
|
|
+ })
|
|
|
+ await pools({
|
|
|
+ sql,
|
|
|
+ val: [obj.name, obj.creatorId],
|
|
|
+ run: false,
|
|
|
+ res,
|
|
|
+ req
|
|
|
+ })
|
|
|
+})
|
|
|
+
|
|
|
+//查询
|
|
|
+router.post('/getDatasetList', async (req, res) => {
|
|
|
+ let user = await utils.getUserInfo({ req, res }),
|
|
|
+ obj = req.body
|
|
|
+ let sql = `SELECT
|
|
|
+ d.id,
|
|
|
+ d.name,
|
|
|
+ d.creator_id AS creatorId,
|
|
|
+ u.name as creatorName,
|
|
|
+ (SELECT count(*) from mark_data_t m where m.dataset_id = d.id AND m.state=1) as marked,
|
|
|
+ (SELECT count(*) from mark_data_t m where m.dataset_id = d.id) as totalNumber
|
|
|
+ FROM
|
|
|
+ dataset_t d JOIN user u ON d.creator_id = u.id WHERE 1=1` // WHERE 1=1是一个始终为真的条件,后续动态添加查询条件的起点 JOIN mark_data_t m ON d.id = m.dataset_id
|
|
|
+ sql = utils.setLike(sql, 'd.name', obj.name) // 添加一个基于name字段的模糊匹配条件,匹配的值来自obj.name
|
|
|
+ sql = utils.setMoreId(sql, user)
|
|
|
+ let { total } = await utils.getSum({ sql, name: 'dataset_t d', res, req }) // 执行SQL查询并获取结果中的总数
|
|
|
+ sql = utils.pageSize(sql, obj.page, obj.size) // 函数来修改SQL语句,添加分页功能。它使用obj.page和obj.size来确定返回结果的范围。
|
|
|
+ let { result } = await pools({ sql, res, req })
|
|
|
+ res.send(utils.returnData({ data: result, total }))
|
|
|
+})
|
|
|
+
|
|
|
+// 编辑
|
|
|
+router.post('/updataDataset', async (req, res) => {
|
|
|
+ let sql = 'UPDATE dataset_t SET name=? WHERE id=?',
|
|
|
+ obj = req.body
|
|
|
+ await pools({ sql, val: [obj.name, obj.id], run: false, res, req })
|
|
|
+})
|
|
|
+
|
|
|
+//删除
|
|
|
+router.post('/delDataset', async (req, res) => {
|
|
|
+ obj = req.body
|
|
|
+ let placeholders = obj.map(() => '?').join(',')
|
|
|
+ let sql = `DELETE FROM dataset_t WHERE id in (${placeholders})`
|
|
|
+ await pools({ sql, val: obj, run: false, res, req }) // 注意这里直接传递obj数组作为参数
|
|
|
+})
|
|
|
+
|
|
|
+//查询
|
|
|
+router.post('/getImportRecord', async (req, res) => {
|
|
|
+ let user = await utils.getUserInfo({ req, res }),
|
|
|
+ obj = req.body
|
|
|
+ let sql = `SELECT id,name,address,importor_id,time,data_volume FROM file_import_t WHERE 1=1` // WHERE 1=1是一个始终为真的条件,后续动态添加查询条件的起点
|
|
|
+ sql = utils.setLike(sql, 'name', obj.name) // 添加一个基于name字段的模糊匹配条件,匹配的值来自obj.name
|
|
|
+ sql = utils.setMoreId(sql, user)
|
|
|
+ let { total } = await utils.getSum({ sql, name: 'file_import_t', res, req }) // 执行SQL查询并获取结果中的总数
|
|
|
+ // sql = utils.pageSize(sql, obj.page, obj.size) // 函数来修改SQL语句,添加分页功能。它使用obj.page和obj.size来确定返回结果的范围。
|
|
|
+ let { result } = await pools({ sql, res, req })
|
|
|
+ res.send(utils.returnData({ data: result, total }))
|
|
|
+})
|
|
|
+module.exports = router
|