nsgm-cli 2.0.12 → 2.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.babelrc +12 -12
- package/LICENSE +201 -201
- package/README.md +161 -161
- package/client/layout/index.tsx +248 -248
- package/client/redux/reducers.ts +4 -4
- package/client/redux/store.ts +50 -50
- package/client/redux/template/manage/actions.ts +190 -190
- package/client/redux/template/manage/reducers.ts +118 -118
- package/client/redux/template/manage/types.ts +24 -24
- package/client/service/template/manage.ts +96 -96
- package/client/styled/common.ts +60 -60
- package/client/styled/layout/index.ts +25 -25
- package/client/styled/template/manage.ts +51 -51
- package/client/utils/common.ts +89 -89
- package/client/utils/cookie.ts +51 -51
- package/client/utils/fetch.ts +25 -25
- package/client/utils/menu.tsx +27 -27
- package/client/utils/sso.ts +205 -205
- package/generation/.babelrc +10 -10
- package/generation/README.md +19 -19
- package/generation/app.js +2 -2
- package/generation/client/redux/reducers.ts +4 -4
- package/generation/client/utils/menu.tsx +27 -27
- package/generation/gitignore +4 -4
- package/generation/mysql.config.js +12 -12
- package/generation/next.config.js +6 -6
- package/generation/package.json +24 -24
- package/generation/project.config.js +13 -13
- package/generation/server/rest.js +23 -23
- package/generation/server/utils/common.js +6 -6
- package/generation/tsconfig.json +30 -30
- package/index.js +10 -10
- package/lib/args.d.ts +6 -6
- package/lib/args.js +53 -53
- package/lib/generate.d.ts +3 -3
- package/lib/generate.js +751 -751
- package/lib/index.d.ts +2 -2
- package/lib/index.js +272 -272
- package/lib/server/db.d.ts +5 -5
- package/lib/server/db.js +110 -110
- package/lib/server/graphql.d.ts +7 -7
- package/lib/server/graphql.js +119 -119
- package/lib/server/plugins/date.d.ts +5 -5
- package/lib/server/plugins/date.js +16 -16
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/mysql.config.js +14 -14
- package/next-env.d.ts +5 -5
- package/next.config.js +231 -231
- package/package.json +127 -126
- package/pages/_app.tsx +54 -54
- package/pages/_document.tsx +55 -55
- package/pages/index.tsx +68 -68
- package/pages/login.tsx +78 -78
- package/pages/template/manage.tsx +299 -278
- package/project.config.js +16 -16
- package/public/slbhealthcheck.html +9 -9
- package/scripts/shutdown.sh +9 -9
- package/scripts/startup.sh +34 -34
- package/server/apis/sso.js +43 -43
- package/server/apis/template.js +37 -17
- package/server/modules/template/resolver.js +225 -225
- package/server/modules/template/schema.js +33 -33
- package/server/rest.js +24 -24
- package/server/sql/template.sql +8 -8
- package/server/utils/common.js +6 -6
package/scripts/startup.sh
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
#!/bin/sh
|
|
2
|
-
|
|
3
|
-
cpu=1
|
|
4
|
-
|
|
5
|
-
if [ -n "$CDOS_CPUS" ]; then
|
|
6
|
-
cpu=$(printf "%.0f" $CDOS_CPUS)
|
|
7
|
-
else
|
|
8
|
-
cpu=$(cat /proc/cpuinfo | grep "processor" | wc -l)
|
|
9
|
-
fi
|
|
10
|
-
|
|
11
|
-
if [ $cpu -lt 1 ]; then
|
|
12
|
-
cpu=1
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
if [ $cpu -gt 8 ]; then
|
|
16
|
-
cpu=8
|
|
17
|
-
fi
|
|
18
|
-
|
|
19
|
-
cd $(dirname $BASH_SOURCE)
|
|
20
|
-
cd ..
|
|
21
|
-
appid=$(basename $(pwd))
|
|
22
|
-
cd current
|
|
23
|
-
appname=node-app-$appid
|
|
24
|
-
|
|
25
|
-
pm2 delete $appname
|
|
26
|
-
pm2 web
|
|
27
|
-
pm2 start app.js\
|
|
28
|
-
-i $cpu\
|
|
29
|
-
--name $appname\
|
|
30
|
-
--merge-logs\
|
|
31
|
-
--log-date-format="YYYY-MM-DD HH:mm:ss"\
|
|
32
|
-
--log /opt/logs/$appid/outerr.log\
|
|
33
|
-
--output /opt/logs/$appid/out.log\
|
|
34
|
-
--error /opt/logs/$appid/err.log
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
cpu=1
|
|
4
|
+
|
|
5
|
+
if [ -n "$CDOS_CPUS" ]; then
|
|
6
|
+
cpu=$(printf "%.0f" $CDOS_CPUS)
|
|
7
|
+
else
|
|
8
|
+
cpu=$(cat /proc/cpuinfo | grep "processor" | wc -l)
|
|
9
|
+
fi
|
|
10
|
+
|
|
11
|
+
if [ $cpu -lt 1 ]; then
|
|
12
|
+
cpu=1
|
|
13
|
+
fi
|
|
14
|
+
|
|
15
|
+
if [ $cpu -gt 8 ]; then
|
|
16
|
+
cpu=8
|
|
17
|
+
fi
|
|
18
|
+
|
|
19
|
+
cd $(dirname $BASH_SOURCE)
|
|
20
|
+
cd ..
|
|
21
|
+
appid=$(basename $(pwd))
|
|
22
|
+
cd current
|
|
23
|
+
appname=node-app-$appid
|
|
24
|
+
|
|
25
|
+
pm2 delete $appname
|
|
26
|
+
pm2 web
|
|
27
|
+
pm2 start app.js\
|
|
28
|
+
-i $cpu\
|
|
29
|
+
--name $appname\
|
|
30
|
+
--merge-logs\
|
|
31
|
+
--log-date-format="YYYY-MM-DD HH:mm:ss"\
|
|
32
|
+
--log /opt/logs/$appid/outerr.log\
|
|
33
|
+
--output /opt/logs/$appid/out.log\
|
|
34
|
+
--error /opt/logs/$appid/err.log
|
|
35
35
|
pm2 dump
|
package/server/apis/sso.js
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
const express = require('express')
|
|
2
|
-
|
|
3
|
-
const router = express.Router()
|
|
4
|
-
|
|
5
|
-
router.get('/sessionCheck', (req, res) => {
|
|
6
|
-
const { query } = req
|
|
7
|
-
const { cookieValue, redirectUrl, appId } = query
|
|
8
|
-
|
|
9
|
-
res.json({
|
|
10
|
-
name: 'sessionCheck',
|
|
11
|
-
query,
|
|
12
|
-
returnCode: 0,
|
|
13
|
-
userAttr: {
|
|
14
|
-
displayName: "Erishen"
|
|
15
|
-
}
|
|
16
|
-
})
|
|
17
|
-
})
|
|
18
|
-
|
|
19
|
-
router.get('/ticketCheck', (req, res) => {
|
|
20
|
-
const { query } = req
|
|
21
|
-
const { ticket, name } = query
|
|
22
|
-
// console.log('name', name, atob(name))
|
|
23
|
-
|
|
24
|
-
if(atob(name) === "erishen,123456"){
|
|
25
|
-
res.json({
|
|
26
|
-
name: 'ticketCheck',
|
|
27
|
-
query,
|
|
28
|
-
returnCode: 0,
|
|
29
|
-
userAttr: {
|
|
30
|
-
displayName: "Erishen"
|
|
31
|
-
},
|
|
32
|
-
cookieValue: 'login_cookie',
|
|
33
|
-
cookieExpire: 10000
|
|
34
|
-
})
|
|
35
|
-
} else {
|
|
36
|
-
res.json({
|
|
37
|
-
name: 'ticketCheck',
|
|
38
|
-
query,
|
|
39
|
-
returnCode: -1
|
|
40
|
-
})
|
|
41
|
-
}
|
|
42
|
-
})
|
|
43
|
-
|
|
1
|
+
const express = require('express')
|
|
2
|
+
|
|
3
|
+
const router = express.Router()
|
|
4
|
+
|
|
5
|
+
router.get('/sessionCheck', (req, res) => {
|
|
6
|
+
const { query } = req
|
|
7
|
+
const { cookieValue, redirectUrl, appId } = query
|
|
8
|
+
|
|
9
|
+
res.json({
|
|
10
|
+
name: 'sessionCheck',
|
|
11
|
+
query,
|
|
12
|
+
returnCode: 0,
|
|
13
|
+
userAttr: {
|
|
14
|
+
displayName: "Erishen"
|
|
15
|
+
}
|
|
16
|
+
})
|
|
17
|
+
})
|
|
18
|
+
|
|
19
|
+
router.get('/ticketCheck', (req, res) => {
|
|
20
|
+
const { query } = req
|
|
21
|
+
const { ticket, name } = query
|
|
22
|
+
// console.log('name', name, atob(name))
|
|
23
|
+
|
|
24
|
+
if(atob(name) === "erishen,123456"){
|
|
25
|
+
res.json({
|
|
26
|
+
name: 'ticketCheck',
|
|
27
|
+
query,
|
|
28
|
+
returnCode: 0,
|
|
29
|
+
userAttr: {
|
|
30
|
+
displayName: "Erishen"
|
|
31
|
+
},
|
|
32
|
+
cookieValue: 'login_cookie',
|
|
33
|
+
cookieExpire: 10000
|
|
34
|
+
})
|
|
35
|
+
} else {
|
|
36
|
+
res.json({
|
|
37
|
+
name: 'ticketCheck',
|
|
38
|
+
query,
|
|
39
|
+
returnCode: -1
|
|
40
|
+
})
|
|
41
|
+
}
|
|
42
|
+
})
|
|
43
|
+
|
|
44
44
|
module.exports = router
|
package/server/apis/template.js
CHANGED
|
@@ -1,18 +1,38 @@
|
|
|
1
|
-
const express = require('express')
|
|
2
|
-
const
|
|
3
|
-
const { templateBatchAdd } = require('../modules/template/resolver')
|
|
4
|
-
const router = express.Router()
|
|
5
|
-
|
|
6
|
-
router.post('/import', (req, res) => {
|
|
7
|
-
//console.log('files', req.files)
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
//
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
1
|
+
const express = require('express')
|
|
2
|
+
const ExcelJS = require('exceljs')
|
|
3
|
+
const { templateBatchAdd } = require('../modules/template/resolver')
|
|
4
|
+
const router = express.Router()
|
|
5
|
+
|
|
6
|
+
router.post('/import', async (req, res) => {
|
|
7
|
+
// console.log('files', req.files)
|
|
8
|
+
// 从上传的文件读取数据
|
|
9
|
+
const workbook = new ExcelJS.Workbook();
|
|
10
|
+
await workbook.xlsx.load(req.files.file.data);
|
|
11
|
+
|
|
12
|
+
// 假设你想读取第一个工作表
|
|
13
|
+
const worksheet = workbook.worksheets[0];
|
|
14
|
+
|
|
15
|
+
// 获取表头
|
|
16
|
+
const headers = [];
|
|
17
|
+
worksheet.getRow(1).eachCell((cell, colNumber) => {
|
|
18
|
+
headers[colNumber] = cell.value.toLowerCase();
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
// 获取数据
|
|
22
|
+
const jsonData = [];
|
|
23
|
+
worksheet.eachRow({ includeEmpty: false }, (row, rowNumber) => {
|
|
24
|
+
if (rowNumber === 1) return; // 跳过表头行
|
|
25
|
+
|
|
26
|
+
const rowData = {};
|
|
27
|
+
row.eachCell({ includeEmpty: true }, (cell, colNumber) => {
|
|
28
|
+
rowData[headers[colNumber]] = cell.value;
|
|
29
|
+
});
|
|
30
|
+
jsonData.push(rowData);
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
// console.log('jsonData', jsonData)
|
|
34
|
+
templateBatchAdd({ datas: jsonData })
|
|
35
|
+
res.json({ name: 'Template' })
|
|
36
|
+
})
|
|
37
|
+
|
|
18
38
|
module.exports = router
|
|
@@ -1,226 +1,226 @@
|
|
|
1
|
-
const { getConnection } = require('../../utils/common')
|
|
2
|
-
const _ = require('lodash')
|
|
3
|
-
|
|
4
|
-
module.exports = {
|
|
5
|
-
template: ({ page = 0, pageSize = 10 }) => {
|
|
6
|
-
return new Promise((resolve, reject)=>{
|
|
7
|
-
getConnection().then((connection)=>{
|
|
8
|
-
const sql = 'SELECT id, name from template LIMIT ? OFFSET ?'
|
|
9
|
-
const countSql = 'SELECT count(*) as counts from template'
|
|
10
|
-
const values = [pageSize, page * pageSize]
|
|
11
|
-
|
|
12
|
-
console.log('sql', sql, values, countSql)
|
|
13
|
-
|
|
14
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
15
|
-
if (error) throw error
|
|
16
|
-
console.log('results', results)
|
|
17
|
-
|
|
18
|
-
connection.query(countSql, (countError, countResults, countFields) => {
|
|
19
|
-
if (countError) throw countError
|
|
20
|
-
const totalCounts = countResults[0].counts
|
|
21
|
-
console.log('totalCounts', totalCounts)
|
|
22
|
-
|
|
23
|
-
resolve({
|
|
24
|
-
totalCounts,
|
|
25
|
-
items: results
|
|
26
|
-
})
|
|
27
|
-
connection.end()
|
|
28
|
-
})
|
|
29
|
-
})
|
|
30
|
-
})
|
|
31
|
-
})
|
|
32
|
-
},
|
|
33
|
-
templateGet: ({ id }) => {
|
|
34
|
-
console.log('templateGet', id)
|
|
35
|
-
return new Promise((resolve, reject)=>{
|
|
36
|
-
getConnection().then((connection)=>{
|
|
37
|
-
let sql = 'SELECT id, name from template WHERE 1=1'
|
|
38
|
-
let values = []
|
|
39
|
-
|
|
40
|
-
if(id !== undefined){
|
|
41
|
-
sql += ' AND id=? '
|
|
42
|
-
values.push(id)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
console.log('sql', sql, values)
|
|
46
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
47
|
-
if (error) throw error
|
|
48
|
-
console.log('results', results)
|
|
49
|
-
|
|
50
|
-
if(results.length > 0)
|
|
51
|
-
resolve(results[0])
|
|
52
|
-
else
|
|
53
|
-
reject()
|
|
54
|
-
connection.end()
|
|
55
|
-
})
|
|
56
|
-
})
|
|
57
|
-
})
|
|
58
|
-
},
|
|
59
|
-
templateSearch: ({ page = 0, pageSize = 10, data }) => {
|
|
60
|
-
console.log('templateSearch', page, pageSize, data)
|
|
61
|
-
const { name } = data
|
|
62
|
-
return new Promise((resolve, reject)=>{
|
|
63
|
-
getConnection().then((connection)=>{
|
|
64
|
-
const values = []
|
|
65
|
-
const countsValues = []
|
|
66
|
-
|
|
67
|
-
let whereSql = ''
|
|
68
|
-
if(name !== undefined && name !== ''){
|
|
69
|
-
whereSql += ' AND name like ? '
|
|
70
|
-
values.push('%' + name + '%')
|
|
71
|
-
countsValues.push('%' + name + '%')
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const sql = 'SELECT id, name from template WHERE 1=1 ' + whereSql + ' LIMIT ? OFFSET ?'
|
|
75
|
-
const countSql = 'SELECT count(*) as counts from template WHERE 1=1 ' + whereSql
|
|
76
|
-
|
|
77
|
-
values.push(pageSize)
|
|
78
|
-
values.push(page * pageSize)
|
|
79
|
-
|
|
80
|
-
console.log('sql', sql, values, countSql)
|
|
81
|
-
|
|
82
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
83
|
-
if (error) throw error
|
|
84
|
-
console.log('results', results)
|
|
85
|
-
|
|
86
|
-
connection.query(countSql, countsValues, (countError, countResults, countFields) => {
|
|
87
|
-
if (countError) throw countError
|
|
88
|
-
const totalCounts = countResults[0].counts
|
|
89
|
-
console.log('totalCounts', totalCounts)
|
|
90
|
-
|
|
91
|
-
resolve({
|
|
92
|
-
totalCounts,
|
|
93
|
-
items: results
|
|
94
|
-
})
|
|
95
|
-
connection.end()
|
|
96
|
-
})
|
|
97
|
-
})
|
|
98
|
-
})
|
|
99
|
-
})
|
|
100
|
-
},
|
|
101
|
-
templateAdd: ({ data }) => {
|
|
102
|
-
console.log('templateAdd', data)
|
|
103
|
-
const { name } = data
|
|
104
|
-
return new Promise((resolve, reject)=>{
|
|
105
|
-
getConnection().then((connection)=>{
|
|
106
|
-
|
|
107
|
-
let sql = 'INSERT INTO template (name) values (?)'
|
|
108
|
-
let values = [name]
|
|
109
|
-
|
|
110
|
-
console.log('sql', sql, values)
|
|
111
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
112
|
-
if (error) throw error
|
|
113
|
-
console.log('results', results)
|
|
114
|
-
|
|
115
|
-
resolve(results.insertId)
|
|
116
|
-
connection.end()
|
|
117
|
-
})
|
|
118
|
-
})
|
|
119
|
-
})
|
|
120
|
-
},
|
|
121
|
-
templateBatchAdd: ({ datas }) => {
|
|
122
|
-
console.log('templateBatchAdd', datas)
|
|
123
|
-
return new Promise((resolve, reject)=>{
|
|
124
|
-
getConnection().then((connection)=>{
|
|
125
|
-
|
|
126
|
-
let sql = 'INSERT INTO template (name) values '
|
|
127
|
-
let values = []
|
|
128
|
-
|
|
129
|
-
_.each(datas, (item, index)=>{
|
|
130
|
-
sql += '(?),'
|
|
131
|
-
const { name } = item
|
|
132
|
-
values.push(name)
|
|
133
|
-
})
|
|
134
|
-
|
|
135
|
-
sql = sql.substring(0, sql.length - 1)
|
|
136
|
-
|
|
137
|
-
console.log('sql', sql, values)
|
|
138
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
139
|
-
if (error) throw error
|
|
140
|
-
console.log('results', results)
|
|
141
|
-
|
|
142
|
-
resolve(results.insertId)
|
|
143
|
-
connection.end()
|
|
144
|
-
})
|
|
145
|
-
})
|
|
146
|
-
})
|
|
147
|
-
},
|
|
148
|
-
templateUpdate: ({ id, data }) => {
|
|
149
|
-
console.log('templateUpdate', id, data)
|
|
150
|
-
const { name } = data
|
|
151
|
-
return new Promise((resolve, reject)=>{
|
|
152
|
-
getConnection().then((connection)=>{
|
|
153
|
-
let sql = 'UPDATE template SET'
|
|
154
|
-
let values = []
|
|
155
|
-
|
|
156
|
-
if(name !== undefined){
|
|
157
|
-
sql += ' name=?, '
|
|
158
|
-
values.push(name)
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
sql += ' id=? WHERE id=? '
|
|
162
|
-
values.push(id)
|
|
163
|
-
values.push(id)
|
|
164
|
-
|
|
165
|
-
console.log('sql', sql, values)
|
|
166
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
167
|
-
if (error) throw error
|
|
168
|
-
console.log('results', results)
|
|
169
|
-
|
|
170
|
-
resolve(true)
|
|
171
|
-
connection.end()
|
|
172
|
-
})
|
|
173
|
-
})
|
|
174
|
-
})
|
|
175
|
-
},
|
|
176
|
-
templateDelete: ({ id }) => {
|
|
177
|
-
console.log('templateDelete', id)
|
|
178
|
-
return new Promise((resolve, reject)=>{
|
|
179
|
-
getConnection().then((connection)=>{
|
|
180
|
-
const sql = 'DELETE FROM template WHERE id=?'
|
|
181
|
-
const values = [id]
|
|
182
|
-
console.log('sql', sql, values)
|
|
183
|
-
|
|
184
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
185
|
-
if (error) throw error
|
|
186
|
-
console.log('results', results)
|
|
187
|
-
|
|
188
|
-
resolve(true)
|
|
189
|
-
connection.end()
|
|
190
|
-
})
|
|
191
|
-
})
|
|
192
|
-
})
|
|
193
|
-
},
|
|
194
|
-
templateBatchDelete: ({ ids }) => {
|
|
195
|
-
console.log('templateBatchDelete', ids)
|
|
196
|
-
return new Promise((resolve, reject)=>{
|
|
197
|
-
getConnection().then((connection)=>{
|
|
198
|
-
let sql = 'DELETE FROM template WHERE id in ('
|
|
199
|
-
|
|
200
|
-
const idsLen = ids.length
|
|
201
|
-
|
|
202
|
-
if(idsLen > 0){
|
|
203
|
-
for(let i = 0; i < idsLen; i++){
|
|
204
|
-
sql += '?,'
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
sql = sql.substring(0, sql.length - 1)
|
|
208
|
-
sql += ')'
|
|
209
|
-
|
|
210
|
-
const values = ids
|
|
211
|
-
console.log('sql', sql, values)
|
|
212
|
-
|
|
213
|
-
connection.query(sql, values, (error, results, fields) => {
|
|
214
|
-
if (error) throw error
|
|
215
|
-
console.log('results', results)
|
|
216
|
-
|
|
217
|
-
resolve(true)
|
|
218
|
-
connection.end()
|
|
219
|
-
})
|
|
220
|
-
}
|
|
221
|
-
else
|
|
222
|
-
reject()
|
|
223
|
-
})
|
|
224
|
-
})
|
|
225
|
-
}
|
|
1
|
+
const { getConnection } = require('../../utils/common')
|
|
2
|
+
const _ = require('lodash')
|
|
3
|
+
|
|
4
|
+
module.exports = {
|
|
5
|
+
template: ({ page = 0, pageSize = 10 }) => {
|
|
6
|
+
return new Promise((resolve, reject)=>{
|
|
7
|
+
getConnection().then((connection)=>{
|
|
8
|
+
const sql = 'SELECT id, name from template LIMIT ? OFFSET ?'
|
|
9
|
+
const countSql = 'SELECT count(*) as counts from template'
|
|
10
|
+
const values = [pageSize, page * pageSize]
|
|
11
|
+
|
|
12
|
+
console.log('sql', sql, values, countSql)
|
|
13
|
+
|
|
14
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
15
|
+
if (error) throw error
|
|
16
|
+
console.log('results', results)
|
|
17
|
+
|
|
18
|
+
connection.query(countSql, (countError, countResults, countFields) => {
|
|
19
|
+
if (countError) throw countError
|
|
20
|
+
const totalCounts = countResults[0].counts
|
|
21
|
+
console.log('totalCounts', totalCounts)
|
|
22
|
+
|
|
23
|
+
resolve({
|
|
24
|
+
totalCounts,
|
|
25
|
+
items: results
|
|
26
|
+
})
|
|
27
|
+
connection.end()
|
|
28
|
+
})
|
|
29
|
+
})
|
|
30
|
+
})
|
|
31
|
+
})
|
|
32
|
+
},
|
|
33
|
+
templateGet: ({ id }) => {
|
|
34
|
+
console.log('templateGet', id)
|
|
35
|
+
return new Promise((resolve, reject)=>{
|
|
36
|
+
getConnection().then((connection)=>{
|
|
37
|
+
let sql = 'SELECT id, name from template WHERE 1=1'
|
|
38
|
+
let values = []
|
|
39
|
+
|
|
40
|
+
if(id !== undefined){
|
|
41
|
+
sql += ' AND id=? '
|
|
42
|
+
values.push(id)
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
console.log('sql', sql, values)
|
|
46
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
47
|
+
if (error) throw error
|
|
48
|
+
console.log('results', results)
|
|
49
|
+
|
|
50
|
+
if(results.length > 0)
|
|
51
|
+
resolve(results[0])
|
|
52
|
+
else
|
|
53
|
+
reject()
|
|
54
|
+
connection.end()
|
|
55
|
+
})
|
|
56
|
+
})
|
|
57
|
+
})
|
|
58
|
+
},
|
|
59
|
+
templateSearch: ({ page = 0, pageSize = 10, data }) => {
|
|
60
|
+
console.log('templateSearch', page, pageSize, data)
|
|
61
|
+
const { name } = data
|
|
62
|
+
return new Promise((resolve, reject)=>{
|
|
63
|
+
getConnection().then((connection)=>{
|
|
64
|
+
const values = []
|
|
65
|
+
const countsValues = []
|
|
66
|
+
|
|
67
|
+
let whereSql = ''
|
|
68
|
+
if(name !== undefined && name !== ''){
|
|
69
|
+
whereSql += ' AND name like ? '
|
|
70
|
+
values.push('%' + name + '%')
|
|
71
|
+
countsValues.push('%' + name + '%')
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
const sql = 'SELECT id, name from template WHERE 1=1 ' + whereSql + ' LIMIT ? OFFSET ?'
|
|
75
|
+
const countSql = 'SELECT count(*) as counts from template WHERE 1=1 ' + whereSql
|
|
76
|
+
|
|
77
|
+
values.push(pageSize)
|
|
78
|
+
values.push(page * pageSize)
|
|
79
|
+
|
|
80
|
+
console.log('sql', sql, values, countSql)
|
|
81
|
+
|
|
82
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
83
|
+
if (error) throw error
|
|
84
|
+
console.log('results', results)
|
|
85
|
+
|
|
86
|
+
connection.query(countSql, countsValues, (countError, countResults, countFields) => {
|
|
87
|
+
if (countError) throw countError
|
|
88
|
+
const totalCounts = countResults[0].counts
|
|
89
|
+
console.log('totalCounts', totalCounts)
|
|
90
|
+
|
|
91
|
+
resolve({
|
|
92
|
+
totalCounts,
|
|
93
|
+
items: results
|
|
94
|
+
})
|
|
95
|
+
connection.end()
|
|
96
|
+
})
|
|
97
|
+
})
|
|
98
|
+
})
|
|
99
|
+
})
|
|
100
|
+
},
|
|
101
|
+
templateAdd: ({ data }) => {
|
|
102
|
+
console.log('templateAdd', data)
|
|
103
|
+
const { name } = data
|
|
104
|
+
return new Promise((resolve, reject)=>{
|
|
105
|
+
getConnection().then((connection)=>{
|
|
106
|
+
|
|
107
|
+
let sql = 'INSERT INTO template (name) values (?)'
|
|
108
|
+
let values = [name]
|
|
109
|
+
|
|
110
|
+
console.log('sql', sql, values)
|
|
111
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
112
|
+
if (error) throw error
|
|
113
|
+
console.log('results', results)
|
|
114
|
+
|
|
115
|
+
resolve(results.insertId)
|
|
116
|
+
connection.end()
|
|
117
|
+
})
|
|
118
|
+
})
|
|
119
|
+
})
|
|
120
|
+
},
|
|
121
|
+
templateBatchAdd: ({ datas }) => {
|
|
122
|
+
console.log('templateBatchAdd', datas)
|
|
123
|
+
return new Promise((resolve, reject)=>{
|
|
124
|
+
getConnection().then((connection)=>{
|
|
125
|
+
|
|
126
|
+
let sql = 'INSERT INTO template (name) values '
|
|
127
|
+
let values = []
|
|
128
|
+
|
|
129
|
+
_.each(datas, (item, index)=>{
|
|
130
|
+
sql += '(?),'
|
|
131
|
+
const { name } = item
|
|
132
|
+
values.push(name)
|
|
133
|
+
})
|
|
134
|
+
|
|
135
|
+
sql = sql.substring(0, sql.length - 1)
|
|
136
|
+
|
|
137
|
+
console.log('sql', sql, values)
|
|
138
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
139
|
+
if (error) throw error
|
|
140
|
+
console.log('results', results)
|
|
141
|
+
|
|
142
|
+
resolve(results.insertId)
|
|
143
|
+
connection.end()
|
|
144
|
+
})
|
|
145
|
+
})
|
|
146
|
+
})
|
|
147
|
+
},
|
|
148
|
+
templateUpdate: ({ id, data }) => {
|
|
149
|
+
console.log('templateUpdate', id, data)
|
|
150
|
+
const { name } = data
|
|
151
|
+
return new Promise((resolve, reject)=>{
|
|
152
|
+
getConnection().then((connection)=>{
|
|
153
|
+
let sql = 'UPDATE template SET'
|
|
154
|
+
let values = []
|
|
155
|
+
|
|
156
|
+
if(name !== undefined){
|
|
157
|
+
sql += ' name=?, '
|
|
158
|
+
values.push(name)
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
sql += ' id=? WHERE id=? '
|
|
162
|
+
values.push(id)
|
|
163
|
+
values.push(id)
|
|
164
|
+
|
|
165
|
+
console.log('sql', sql, values)
|
|
166
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
167
|
+
if (error) throw error
|
|
168
|
+
console.log('results', results)
|
|
169
|
+
|
|
170
|
+
resolve(true)
|
|
171
|
+
connection.end()
|
|
172
|
+
})
|
|
173
|
+
})
|
|
174
|
+
})
|
|
175
|
+
},
|
|
176
|
+
templateDelete: ({ id }) => {
|
|
177
|
+
console.log('templateDelete', id)
|
|
178
|
+
return new Promise((resolve, reject)=>{
|
|
179
|
+
getConnection().then((connection)=>{
|
|
180
|
+
const sql = 'DELETE FROM template WHERE id=?'
|
|
181
|
+
const values = [id]
|
|
182
|
+
console.log('sql', sql, values)
|
|
183
|
+
|
|
184
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
185
|
+
if (error) throw error
|
|
186
|
+
console.log('results', results)
|
|
187
|
+
|
|
188
|
+
resolve(true)
|
|
189
|
+
connection.end()
|
|
190
|
+
})
|
|
191
|
+
})
|
|
192
|
+
})
|
|
193
|
+
},
|
|
194
|
+
templateBatchDelete: ({ ids }) => {
|
|
195
|
+
console.log('templateBatchDelete', ids)
|
|
196
|
+
return new Promise((resolve, reject)=>{
|
|
197
|
+
getConnection().then((connection)=>{
|
|
198
|
+
let sql = 'DELETE FROM template WHERE id in ('
|
|
199
|
+
|
|
200
|
+
const idsLen = ids.length
|
|
201
|
+
|
|
202
|
+
if(idsLen > 0){
|
|
203
|
+
for(let i = 0; i < idsLen; i++){
|
|
204
|
+
sql += '?,'
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
sql = sql.substring(0, sql.length - 1)
|
|
208
|
+
sql += ')'
|
|
209
|
+
|
|
210
|
+
const values = ids
|
|
211
|
+
console.log('sql', sql, values)
|
|
212
|
+
|
|
213
|
+
connection.query(sql, values, (error, results, fields) => {
|
|
214
|
+
if (error) throw error
|
|
215
|
+
console.log('results', results)
|
|
216
|
+
|
|
217
|
+
resolve(true)
|
|
218
|
+
connection.end()
|
|
219
|
+
})
|
|
220
|
+
}
|
|
221
|
+
else
|
|
222
|
+
reject()
|
|
223
|
+
})
|
|
224
|
+
})
|
|
225
|
+
}
|
|
226
226
|
}
|