明树Git Lab

Commit 6c0f355f authored by zengfanpei's avatar zengfanpei

update

parent 75a745d4
const errorMessage = require("../utils/errorMessage");
async function createTemplate(req, res, next) {
try {
let body = req.body;
body.creator = req.user._id;
let ret = await DB.FileTemplate.findOneAndUpdate({ key: body.key }, body, { upsert: true });
res.sendData(ret);
} catch (error) {
next(error);
}
}
async function getFileTemplate(req, res, next) {
try {
let search = {
del: 0,
...req.body,
};
let ret = await DB.FileTemplate.findOne(search).populate({path: "creator", select: "mobile name"}).populate({path: "url"});
if(!ret) {
return res.sendError(errorMessage.resourceNotFound);
}
res.sendData(ret);
} catch (error) {
next(error);
}
}
async function getFileTemplateList(req, res, next) {
try {
let search = { del: 0 };
let page = req.body.page || 1;
let pageSize = req.body.pageSize || 10;
let skip = (page - 1) * pageSize;
if (req.body.name) {
search.name = { $regex: req.body.name };
}
const count = await DB.FileTemplate.countDocuments(search);
let list = await DB.FileTemplate.find(search).skip(skip).limit(pageSize).populate({path: "creator", select: "mobile name"}).populate({path: "url"}).lean().exec();
return res.sendData({ list, count });
} catch (error) {
next(error);
}
}
async function updateFileTem(req, res, next) {
try {
let updateInfo = {
...req.body,
_id: undefined
}
await DB.FileTemplate.findOneAndUpdate({_id: req.body._id}, updateInfo);
return res.sendData({});
} catch (error) {
next(error);
}
}
async function deleteFileTem(req, res, next) {
try {
await DB.FileTemplate.findOneAndUpdate({_id: req.body._id}, {del: 1});
return res.sendData({});
} catch (error) {
next(error);
}
}
module.exports = {
createTemplate,
getFileTemplate,
getFileTemplateList,
updateFileTem,
deleteFileTem,
}
\ No newline at end of file
...@@ -46,6 +46,9 @@ const AgrMatType = require('./models/letianAgrMatType'); ...@@ -46,6 +46,9 @@ const AgrMatType = require('./models/letianAgrMatType');
const AgrMatApproval = require('./models/letianAgrMatApproval'); const AgrMatApproval = require('./models/letianAgrMatApproval');
const AgrMatInOut = require('./models/letianAgrMatInOut'); const AgrMatInOut = require('./models/letianAgrMatInOut');
const FileTemplate = require('./models/letianFIleTemplate');
const Device = require('./models/collectDevice'); const Device = require('./models/collectDevice');
const CollectSMC = require('./models/collectSMC'); const CollectSMC = require('./models/collectSMC');
...@@ -81,6 +84,7 @@ global.DB = { ...@@ -81,6 +84,7 @@ global.DB = {
AgrMatType, AgrMatType,
AgrMatApproval, AgrMatApproval,
AgrMatInOut, AgrMatInOut,
FileTemplate,
CollectThreshold, CollectThreshold,
CollectSMC, CollectSMC,
......
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const moment = require('moment');
/**
* 文件模板---首页文件、excel模板等
*/
const letianFIleTemplateSchema = new Schema({
url: {
type: mongoose.Types.ObjectId,
ref: 'File',
comment: "文件地址",
default: null,
set: v => { if (!v) { return null; } else { return v; } }
},
name: {
type: String,
comment: "模板名称"
},
key: {
type: String,
comment: "标识" ,
unique: true,
},
creator: {
type: mongoose.Types.ObjectId,
ref: 'User',
comment: "创建人"
},
createdAt: {
type: Date,
default: Date.now,
get: v => moment(v).format("YYYY-MM-DD HH:mm:ss"),
},
updatedAt: {
type: Date,
default: Date.now,
get: v => moment(v).format("YYYY-MM-DD HH:mm:ss"),
},
del: {
type: Number,
default: 0,
comment: '默认0 , 1:表示删除,若有其他隐藏业务 不要混用此字段。'
}
}, {
toJSON: {
getters: true
}
});
const letianFIleTemplate = mongoose.model('letianFIleTemplate', letianFIleTemplateSchema, 'letianFIleTemplate');
module.exports = letianFIleTemplate;
\ No newline at end of file
...@@ -7,6 +7,7 @@ const menuRouter = require('./menuRouter'); ...@@ -7,6 +7,7 @@ const menuRouter = require('./menuRouter');
const noticeRouter = require('./noticeRouter'); const noticeRouter = require('./noticeRouter');
const fileRouter = require('./fileRouter'); const fileRouter = require('./fileRouter');
const templateRouter = require('./templateRouter');
const collectRouter = require('./collectRouter'); const collectRouter = require('./collectRouter');
const deviceRouter = require('./deviceRouter'); const deviceRouter = require('./deviceRouter');
...@@ -29,6 +30,7 @@ router.use('/notice', noticeRouter); ...@@ -29,6 +30,7 @@ router.use('/notice', noticeRouter);
router.use('/file', fileRouter); // 文件 router.use('/file', fileRouter); // 文件
router.use('/template', templateRouter); // 模板文件
router.use('/collect', collectRouter); // 数据采集 router.use('/collect', collectRouter); // 数据采集
router.use('/device', deviceRouter); // 硬件设备 router.use('/device', deviceRouter); // 硬件设备
......
const express = require('express');
const router = express.Router();
const fileTemplateController = require('../controller/fileTemplateController');
router.post('/create', fileTemplateController.createTemplate);
router.post('/info', fileTemplateController.getFileTemplate);
router.post('/list', fileTemplateController.getFileTemplateList);
router.post('/update', fileTemplateController.updateFileTem);
router.post('/delete', fileTemplateController.deleteFileTem);
module.exports = router;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment