From 091deb59ef7918d95160a1363955a7112432e2da Mon Sep 17 00:00:00 2001 From: aixianling Date: Thu, 7 Jul 2022 17:43:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9A=E5=88=B6=E9=A1=B9=E7=9B=AE=E6=89=93?= =?UTF-8?q?=E5=8C=85=E6=8E=A5=E5=8F=A3=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/rest/custom/cancelZip.js | 14 +++++++++++++ src/rest/custom/getZip.js | 38 ++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 src/rest/custom/cancelZip.js create mode 100644 src/rest/custom/getZip.js diff --git a/src/rest/custom/cancelZip.js b/src/rest/custom/cancelZip.js new file mode 100644 index 0000000..ba2ce5d --- /dev/null +++ b/src/rest/custom/cancelZip.js @@ -0,0 +1,14 @@ +const dbUtils = require("../../utils/dbUitls"); +module.exports = { + action: "/node/custom/cancelZip", + method: "post", + execute: (request, response) => { + let id = request.query?.id, sql = `update node_custom_config set zipTime=null where id='${id}'` + dbUtils.query(sql).then(() => { + response.send({code: 0, data: "取消成功!"}) + }).catch(err => { + console.log(err) + response.send({code: 1, err: err.sqlMessage}) + }) + } +} diff --git a/src/rest/custom/getZip.js b/src/rest/custom/getZip.js new file mode 100644 index 0000000..f03ca6d --- /dev/null +++ b/src/rest/custom/getZip.js @@ -0,0 +1,38 @@ +const db = require("../../utils/dbUitls"); +const execute = require("../../tools/exec") +const dayjs = require("dayjs") +const fse = require("fs-extra"); +module.exports = { + action: "/node/custom/getZip", + method: "post", + execute: (request, response) => { + let {id} = request.query, uniCon = `id='${id}'`.db.query(`select * from node_custom_config where id='${id}'`).then(res => { + let info = res?.[0], sql + if (info?.id) { + sql = `update node_custom_config set download=null,error=null,zipTime='${dayjs().format("YYYY-MM-DD HH:mm:ss")}' where ${uniCon}` + db.query(sql).then(() => setTimeout(() => { + response.send({code: 0}) + }, 2000)) + const buildPath = { + web: 'base-web', + wxwork: 'base-wxcp', + mp: '' + }[info.type] || {} + const path = `/home/deploy/node-service/${buildPath}`, + dest = `/home/deploy/node-service/customZips/${id}/` + execute(`cd ${path}&&npm run apps&&node bin/pages.js ${id}&&npm run build`) + .then(() => fse.emptyDir(dest)) + .then(() => execute(`/root/node-service/move.sh ${info.type} ${path} ${dest}`)) + .then(() => { + return db.query(`update node_custom_config set download='${dayjs().format("YYYY-MM-DD HH:mm:ss")}',error='' where ${uniCon}`) + }).catch(err => { + console.log(err) + return db.query(`update node_custom_config set error='${err}',zipTime=null where ${uniCon}`) + }) + } else return response.send({code: 1, err: "无法找到定制项目信息"}) + }).catch(err => { + console.log(err) + response.send({code: 1, err: err.sqlMessage}) + }) + } +}