北斗启航科技教育平台管理系统

This commit is contained in:
2026-03-27 17:49:17 +08:00
commit 51b979c182
113 changed files with 7210 additions and 0 deletions

149
app/controller/BSide.js Normal file
View File

@@ -0,0 +1,149 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "BSide";
class BSideController extends Controller {
// 注册B端用户
async addBSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
const salt = this.generateRandomString();
element.uid = this.generateNumberString('B');
element.salt = this.encryptRequest(salt);
element.status = 0;
element.role = this.decryptRequest(element.role);
element.account_name = this.decryptRequest(element.account_name);
element.password = this.shaForm('123456', salt);
element.organization = element.organization == "" ? null : this.decryptRequest(element.organization);
element.user_name = element.user_name == "" ? "" : this.decryptRequest(element.user_name);
element.phone = element.phone == "" ? "" : this.decryptRequest(element.phone);
element.msg = element.msg == "" ? "" : this.decryptRequest(element.msg);
element.created_at = new Date();
element.updated_at = new Date();
element.login_at = new Date();
element.login_status = 0;
});
const result = await ctx.service.bSide.addBSide(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '创建B端新用户成功', "none");
} else {
this.setResponse(ctx, 404, '创建B端新用户失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addBSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看B端用户
async showBSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.bSide.showBSide(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let BSideMsg = [];
result.rows.forEach(element => {
BSideMsg.push(element.dataValues);
});
const data = {
BSideMsg: BSideMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索B端用户成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索B端用户失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑B端用户
async editBSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.bSide.editBSide(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑B端用户信息成功', "none");
} else {
this.setResponse(ctx, 404, '编辑B端用户信息失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editBSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除B端用户
async deleteBSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.bSide.deleteBSide(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除B端用户成功', "none");
} else {
this.setResponse(ctx, 404, '删除B端用户失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteBSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = BSideController;

141
app/controller/BdCard.js Normal file
View File

@@ -0,0 +1,141 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "BdCard";
class BdCardController extends Controller {
// 注册北斗卡
async addBdCard() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
element.card_id = this.decryptRequest(element.card_id);
element.card_imsi = this.decryptRequest(element.card_imsi);
element.type = 0;
element.status = 0;
element.created_at = new Date();
element.updated_at = new Date();
});
const result = await ctx.service.bdCard.addBdCard(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '导入北斗卡成功', "none");
} else {
this.setResponse(ctx, 404, '导入北斗卡失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addBdCard";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看北斗卡
async showBdCard() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.bdCard.showBdCard(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let bdCardMsg = [];
result.rows.forEach(element => {
bdCardMsg.push(element.dataValues);
});
const data = {
bdCardMsg: bdCardMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索北斗卡成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索北斗卡失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBdCard";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑北斗卡
async editBdCard() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.bdCard.editBdCard(uid, modelType, deCodePassword, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑北斗卡成功', "none");
} else {
this.setResponse(ctx, 404, '编辑北斗卡失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editBdCard";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除北斗卡
async deleteBdCard() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.bdCard.deleteBdCard(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除北斗卡成功', "none");
} else {
this.setResponse(ctx, 404, '删除北斗卡失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteBdCard";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = BdCardController;

View File

@@ -0,0 +1,75 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "BindRecord";
class BindRecordController extends Controller {
// 查看北斗卡绑定记录
async showBindRecord() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.bindRecord.showBindRecord(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let BindRecordMsg = [];
result.rows.forEach(element => {
BindRecordMsg.push(element.dataValues);
});
const data = {
BindRecordMsg: BindRecordMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索北斗卡绑定记录成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索北斗卡绑定记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBindRecord";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除北斗卡绑定记录
async deleteBindRecord() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.bindRecord.deleteBindRecord(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除北斗卡绑定记录成功', "none");
} else {
this.setResponse(ctx, 404, '删除北斗卡绑定记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteBindRecord";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = BindRecordController;

View File

@@ -0,0 +1,75 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "BindSNRecord";
class BindSNRecordController extends Controller {
// 查看SN号绑定记录
async showBindSNRecord() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.bindSNRecord.showBindSNRecord(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let BindSNRecordMsg = [];
result.rows.forEach(element => {
BindSNRecordMsg.push(element.dataValues);
});
const data = {
BindSNRecordMsg: BindSNRecordMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索SN号绑定记录成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索SN号绑定记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBindSNRecord";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除SN号绑定记录
async deleteBindSNRecord() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.bindSNRecord.deleteBindSNRecord(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除SN号绑定记录成功', "none");
} else {
this.setResponse(ctx, 404, '删除SN号绑定记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteBindSNRecord";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = BindSNRecordController;

207
app/controller/Business.js Normal file
View File

@@ -0,0 +1,207 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "Business";
class BusinessController extends Controller {
// 注册公司业务
async addBusiness() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
const salt = this.generateRandomString();
element.salt = this.encryptRequest(salt);
element.login_url = this.decryptRequest(element.login_url);
element.client_url = this.decryptRequest(element.client_url);
element.temporary_id = this.decryptRequest(element.temporary_id) == 'true' ? this.shaForm(this.generateRandomString(), salt) : this.decryptRequest(element.temporary_id);
element.client_id = this.generateClientId();
element.client_secret = this.shaForm(this.generateRandomString(), salt);
element.name = this.decryptRequest(element.name);
element.type = element.type ? this.decryptRequest(element.type) : 2;
element.level = element.level ? this.decryptRequest(element.level) : 0;
element.status = element.status ? this.decryptRequest(element.status) : 0;
element.created_at = new Date();
element.updated_at = new Date();
});
const result = await ctx.service.business.addBusiness(uid, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '新增公司业务成功', "none");
} else {
this.setResponse(ctx, 404, '新增公司业务失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addBusiness";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看公司业务
async showBusiness() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.business.showBusiness(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let BusinessMsg = [];
result.rows.forEach(element => {
BusinessMsg.push(element.dataValues);
});
const data = {
BusinessMsg: BusinessMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索公司业务成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索公司业务失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBusiness";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 远程搜索公司业务
async SearchBusiness() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.business.SearchBusiness(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let business = [];
result.forEach(element => {
business.push(element.dataValues);
});
const data = {
business: business,
};
this.setResponse(ctx, 200, '搜索公司业务信息成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索公司业务信息失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑公司业务
async editBusiness() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg, password } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
let salt;
if (updateMsg.salt) {
salt = this.generateRandomString();
updateMsg.salt = this.encryptRequest(salt);
} else {
delete updateMsg.salt;
}
if (!updateMsg.temporary_id) {
delete updateMsg.temporary_id;
} else if (updateMsg.temporary_id == 'true') {
updateMsg.temporary_id = this.shaForm(this.generateRandomString(), salt);
}
if (updateMsg.client_id) {
updateMsg.client_id = this.generateClientId();
} else {
delete updateMsg.client_id;
}
if (updateMsg.client_secret) {
updateMsg.client_secret = this.shaForm(this.generateRandomString(), salt);
} else {
delete updateMsg.client_secret;
}
const result = await ctx.service.business.editBusiness(uid, modelType, deCodePassword, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑公司业务成功', "none");
} else {
this.setResponse(ctx, 404, '编辑公司业务失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editBusiness";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除公司业务
async deleteBusiness() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.business.deleteBusiness(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除公司业务成功', "none");
} else {
this.setResponse(ctx, 404, '删除公司业务失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteBusiness";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = BusinessController;

106
app/controller/CSide.js Normal file
View File

@@ -0,0 +1,106 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "CSide";
class CSideController extends Controller {
// 查看C端用户
async showCSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.cSide.showCSide(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let CSideMsg = [];
result.rows.forEach(element => {
CSideMsg.push(element.dataValues);
});
const data = {
CSideMsg: CSideMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索C端用户成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索C端用户失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showCSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑C端用户
async editCSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.cSide.editCSide(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑C端用户信息成功', "none");
} else {
this.setResponse(ctx, 404, '编辑C端用户信息失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editCSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除C端用户
async deleteCSide() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.cSide.deleteCSide(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除C端用户成功', "none");
} else {
this.setResponse(ctx, 404, '删除C端用户失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteCSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = CSideController;

View File

@@ -0,0 +1,209 @@
const Controller = require('../core/base_controller');
const fileName = "ContestAccount";
class ContestAccountController extends Controller {
// 管理系统导入竞赛账号信息
async importAccount() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
const salt = this.generateRandomString();
element.uid = this.generateNumberString('T');
element.salt = this.encryptRequest(salt);
element.contest_uid = this.decryptRequest(element.contest_uid);
element.account_name = this.decryptRequest(element.account_name);
element.password = this.shaForm('123456', salt);
element.status = 0;
element.created_at = new Date();
element.login_status = 0;
});
const result = await ctx.service.contestAccount.importAccount(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "importAccount";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统创建竞赛账号信息
async addAccount() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
const salt = this.generateRandomString();
element.uid = this.generateNumberString('T');
element.salt = this.encryptRequest(salt);
element.contest_uid = this.decryptRequest(element.contest_uid);
element.account_name = this.decryptRequest(element.account_name);
element.password = this.shaForm('123456', salt);
element.status = 0;
element.created_at = new Date();
element.login_status = 0;
});
const result = await ctx.service.contestAccount.addAccount(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addAccount";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统查看竞赛账号信息
async showAccount() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.contestAccount.showAccount(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let accountMsg = [];
result.rows.forEach(element => {
accountMsg.push(element.dataValues);
});
const data = {
accountMsg,
count: result.count
};
this.setResponse(ctx, 200, '操作成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showAccount";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统编辑竞赛账号信息
async editAccount() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.contestAccount.editAccount(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editAccount";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统删除竞赛账号信息
async delAccount() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.contestAccount.delAccount(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "delAccount";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统重置竞赛账号密码
async resetAccount() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const { account_uid, password } = ctx.request.body;
const accountUid = this.decryptRequest(account_uid);
const resetPassword = this.decryptRequest(password);
const result = await ctx.service.contestAccount.resetAccount(uid, accountUid, resetPassword);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "resetAccount";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = ContestAccountController;

View File

@@ -0,0 +1,131 @@
const Controller = require('../core/base_controller');
const fileName = "ContestExamination";
class ContestExaminationController extends Controller {
// 管理系统查看账号答题情况
async showExamination() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.contestExamination.showExamination(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let examinationMsg = [];
result.rows.forEach(element => {
examinationMsg.push(element.dataValues);
});
const data = {
examinationMsg,
count: result.count
};
this.setResponse(ctx, 200, '操作成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showExamination";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统编辑账号答题情况
async editExamination() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.contestExamination.editExamination(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editExamination";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统删除账号答题情况
async delExamination() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.contestExamination.delExamination(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "delExamination";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统导出账号答题情况
async downloadExamination() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.contestExamination.downloadExamination(uid, body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "downloadExamination";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = ContestExaminationController;

View File

@@ -0,0 +1,177 @@
const Controller = require('../core/base_controller');
const fileName = "ContestMsg";
class ContestMsgController extends Controller {
// 管理系统检索竞赛 uid
async searchContestUid() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.contestMsg.searchContestUid(uid, body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let contestUid = [];
result.forEach(element => {
contestUid.push({ value: element.dataValues.uid });
});
this.setResponse(ctx, 200, '操作成功', "polymerization", contestUid);
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "searchContestUid";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统创建竞赛信息
async addContest() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
element.uid = this.generateNumberString('H');
element.contest_name = this.decryptRequest(element.contest_name);
element.contest_organizers = this.decryptRequest(element.contest_organizers);
element.contest_term = this.decryptRequest(element.contest_term);
element.type = Number(element.type);
element.status = 0;
element.online_start = new Date(element.online_start);
element.online_end = new Date(element.online_end);
element.offline_start = new Date(element.offline_start);
element.offline_end = new Date(element.offline_end);
element.contest_start = new Date(element.contest_start);
element.contest_end = new Date(element.contest_end);
element.created_at = new Date();
});
const result = await ctx.service.contestMsg.addContest(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addContest";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统查看竞赛信息
async showContest() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.contestMsg.showContest(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let contestMsg = [];
result.rows.forEach(element => {
contestMsg.push(element.dataValues);
});
const data = {
contestMsg,
count: result.count
};
this.setResponse(ctx, 200, '操作成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showContest";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统编辑竞赛信息
async editContest() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.contestMsg.editContest(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editContest";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统删除竞赛信息
async delContest() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.contestMsg.delContest(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "delContest";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = ContestMsgController;

View File

@@ -0,0 +1,173 @@
const Controller = require('../core/base_controller');
const fileName = "ContestTopic";
class ContestTopicController extends Controller {
// 管理系统导入选择题
async importChoiceTopic() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
element.topic = this.decryptRequest(element.topic);
element.options_a = this.decryptRequest(element.options_a);
element.options_b = this.decryptRequest(element.options_b);
element.options_c = this.decryptRequest(element.options_c);
element.options_d = this.decryptRequest(element.options_d);
element.answer = this.decryptRequest(element.answer);
});
const result = await ctx.service.contestTopic.importChoiceTopic(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "importChoiceTopic";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统创建选择题
async addChoiceTopic() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
element.topic = this.decryptRequest(element.topic);
element.options_a = this.decryptRequest(element.options_a);
element.options_b = this.decryptRequest(element.options_b);
element.options_c = this.decryptRequest(element.options_c);
element.options_d = this.decryptRequest(element.options_d);
element.answer = this.decryptRequest(element.answer);
});
const result = await ctx.service.contestTopic.addChoiceTopic(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addChoiceTopic";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统查看选择题
async showChoiceTopic() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.contestTopic.showChoiceTopic(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let choiceTopicMsg = [];
result.rows.forEach(element => {
choiceTopicMsg.push(element.dataValues);
});
const data = {
choiceTopicMsg,
count: result.count
};
this.setResponse(ctx, 200, '操作成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showChoiceTopic";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统编辑选择题
async editChoiceTopic() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.contestTopic.editChoiceTopic(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editChoiceTopic";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 管理系统删除选择题
async delChoiceTopic() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.contestTopic.delChoiceTopic(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '操作成功', "none");
} else {
this.setResponse(ctx, 404, '操作失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "delChoiceTopic";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = ContestTopicController;

149
app/controller/Insiders.js Normal file
View File

@@ -0,0 +1,149 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "Insiders";
class InsidersController extends Controller {
// 注册管理系统用户
async addInsiders() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
const salt = this.generateRandomString();
element.uid = this.generateNumberString('M');
element.salt = this.encryptRequest(salt);
element.status = this.decryptRequest(element.role) == '99' ? 2 : 0;
element.role = this.decryptRequest(element.role) == '99' ? 0 : this.decryptRequest(element.role);
element.name = this.decryptRequest(element.name);
element.password = this.shaForm('123456', salt);
element.department = element.department == "" ? "" : this.decryptRequest(element.department);
element.change = this.decryptRequest(element.change);
element.created_at = new Date();
element.updated_at = new Date();
element.login_at = new Date();
element.login_status = 0;
});
const result = await ctx.service.insiders.addInsiders(uid, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '创建公司员工账号成功', "none");
} else {
this.setResponse(ctx, 404, '创建公司员工账号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addInsiders";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看管理系统用户
async showInsiders() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.insiders.showInsiders(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let InsidersMsg = [];
result.rows.forEach(element => {
InsidersMsg.push(element.dataValues);
});
const data = {
InsidersMsg: InsidersMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索公司员工成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索公司员工失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showInsiders";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑管理系统用户
async editInsiders() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.insiders.editInsiders(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑公司员工账号信息成功', "none");
} else {
this.setResponse(ctx, 404, '编辑公司员工账号信息失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editInsiders";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除管理系统用户
async deleteInsiders() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.insiders.deleteInsiders(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除公司员工账号成功', "none");
} else {
this.setResponse(ctx, 404, '删除公司员工账号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteInsiders";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = InsidersController;

View File

@@ -0,0 +1,75 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "Monitoring";
class MonitoringController extends Controller {
// 查看危险操作记录
async showMonitoring() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.monitoring.showMonitoring(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let MonitoringMsg = [];
result.rows.forEach(element => {
MonitoringMsg.push(element.dataValues);
});
const data = {
MonitoringMsg: MonitoringMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索危险操作记录成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索危险操作记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showMonitoring";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除危险操作记录
async deleteMonitoring() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.monitoring.deleteMonitoring(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除危险操作记录成功', "none");
} else {
this.setResponse(ctx, 404, '删除危险操作记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteMonitoring";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = MonitoringController;

View File

@@ -0,0 +1,180 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "Organization";
class OrganizationController extends Controller {
// 注册B端用户单位
async addOrganization() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
element.uid = this.generateNumberString('O');
element.organization_name = this.decryptRequest(element.organization_name);
element.address = element.address == "" ? "" : this.decryptRequest(element.address);
element.liaison_name = element.liaison_name == "" ? "" : this.decryptRequest(element.liaison_name);
element.phone = element.phone == "" ? "" : this.decryptRequest(element.phone);
element.email = element.email == "" ? "" : this.decryptRequest(element.email);
element.other_information = element.other_information == "" ? "" : this.decryptRequest(element.other_information);
element.post_code = element.post_code == "" ? "" : this.decryptRequest(element.post_code);
element.created_at = new Date();
element.updated_at = new Date();
});
const result = await ctx.service.organization.addOrganization(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '新增B端用户单位成功', "none");
} else {
this.setResponse(ctx, 404, '新增B端用户单位失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addOrganization";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看B端用户单位
async showOrganization() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.organization.showOrganization(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let OrganizationMsg = [];
result.rows.forEach(element => {
OrganizationMsg.push(element.dataValues);
});
const data = {
OrganizationMsg: OrganizationMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索B端用户单位成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索B端用户单位失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showOrganization";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 远程搜索B端用户单位
async SearchOrganization() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.organization.SearchOrganization(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let organization = [];
result.forEach(element => {
organization.push(element.dataValues);
});
const data = {
organization: organization,
};
this.setResponse(ctx, 200, '搜索B端用户信息成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索B端用户信息失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showBSide";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑B端用户单位
async editOrganization() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const result = await ctx.service.organization.editOrganization(uid, modelType, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑B端用户单位成功', "none");
} else {
this.setResponse(ctx, 404, '编辑B端用户单位失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editOrganization";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除B端用户单位
async deleteOrganization() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.organization.deleteOrganization(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除B端用户单位成功', "none");
} else {
this.setResponse(ctx, 404, '删除B端用户单位失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteOrganization";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = OrganizationController;

161
app/controller/SNAdmin.js Normal file
View File

@@ -0,0 +1,161 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "SNAdmin";
class SNAdminController extends Controller {
// 搜索可分配的SN号
async searchAllocationSN() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const result = await ctx.service.sNAdmin.searchAllocationSN();
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
const data = {
snArr: result
};
this.setResponse(ctx, 200, '搜索可分配的SN号成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索可分配的SN号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "searchAllocationSN";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 搜索可分配的单位用户
async searchAllocationUser() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const result = await ctx.service.sNAdmin.searchAllocationUser();
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
const data = {
userArr: result
};
this.setResponse(ctx, 200, '搜索可分配的单位用户成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索可分配的单位用户失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "searchAllocationUser";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// B端分配SN号
async allocationSN() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const result = await ctx.service.sNAdmin.allocationSN(uid, body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, 'B端分配SN号成功', "none");
} else {
this.setResponse(ctx, 404, 'B端分配SN号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "allocationSN";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看B端SN号分配记录
async showAllocationSNRecord() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.sNAdmin.showAllocationSNRecord(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let SNAdminMsg = [];
result.rows.forEach(element => {
SNAdminMsg.push(element.dataValues);
});
const data = {
SNAdminMsg: SNAdminMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索SN号分配记录成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索SN号分配记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showAllocationSNRecord";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除B端SN号分配记录
async deleteAllocationSNRecord() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.sNAdmin.deleteAllocationSNRecord(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除SN号分配记录成功', "none");
} else {
this.setResponse(ctx, 404, '删除SN号分配记录失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteAllocationSNRecord";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = SNAdminController;

139
app/controller/Sn.js Normal file
View File

@@ -0,0 +1,139 @@
'use strict';
const Controller = require('../core/base_controller');
const fileName = "SN";
class SNController extends Controller {
// 注册SN号
async addSN() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const requestMsg = ctx.request.body.requestMsg;
requestMsg.forEach(element => {
element.sn_number = this.decryptRequest(element.sn_number);
element.status = 0;
element.created_at = new Date();
element.updated_at = new Date();
});
const result = await ctx.service.sn.addSN(requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '导入SN号成功', "none");
} else {
this.setResponse(ctx, 404, '导入SN号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "addSN";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 查看SN号
async showSN() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const body = ctx.request.body;
const result = await ctx.service.sn.showSN(body);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
let SNMsg = [];
result.rows.forEach(element => {
SNMsg.push(element.dataValues);
});
const data = {
SNMsg: SNMsg,
count: result.count
};
this.setResponse(ctx, 200, '搜索SN号成功', "deconstruction", data);
} else {
this.setResponse(ctx, 404, '搜索SN号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "showSN";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 编辑SN号
async editSN() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, updateMsg, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.sn.editSN(uid, modelType, deCodePassword, updateMsg, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '编辑SN号成功', "none");
} else {
this.setResponse(ctx, 404, '编辑SN号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "editSN";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
// 删除SN号
async deleteSN() {
const { ctx } = this;
try {
let rdmcode = await this.checkUid(ctx);
if (!rdmcode) {
this.setResponse(ctx, 401, 'token过期或错误', "none");
return;
}
const uid = JSON.parse(rdmcode).uid;
const body = ctx.request.body;
const { model, password, requestMsg } = body
const modelType = this.decryptRequest(model);
const deCodePassword = this.decryptRequest(password);
const result = await ctx.service.sn.deleteSN(uid, modelType, deCodePassword, requestMsg);
if (result == "error") {
this.setResponse(ctx, 500, '服务器错误', "none");
return;
}
if (result) {
this.setResponse(ctx, 200, '删除SN号成功', "none");
} else {
this.setResponse(ctx, 404, '删除SN号失败', "none");
}
} catch (error) {
const blockName = fileName + "--" + "deleteSN";
ctx.app.middleware.log('../../controllerLog', blockName + ">>>>" + error);
this.setResponse(ctx, 500, '服务器错误', "none");
}
}
}
module.exports = SNController;

29
app/controller/home.js Normal file
View File

@@ -0,0 +1,29 @@
const { Controller } = require('egg');
const fileName = "home";
class HomeController extends Controller {
async index() {
const { ctx } = this;
ctx.body = {
code:200,
msg:'test'
}
}
async home() {
const { ctx } = this;
ctx.body = {
code:200,
msg:'home'
}
}
async main() {
const { ctx } = this;
ctx.body = {
code:200,
msg:'main'
}
}
}
module.exports = HomeController;