Archived
2

Merge pull request #46 in DEFINMA/definma-api from proper-indentation to master

* commit '7c5b6ec605e7ecd3d4cc9ba59c41f45ef4783c80':
  Properly indent all source files
This commit is contained in:
Hartenstein Ruben (PEA4-Fe) 2021-01-25 15:19:02 +01:00
commit a08bfd9922
51 changed files with 9380 additions and 9380 deletions

4
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "dfop-api",
"version": "1.0.0",
"name": "definma-api",
"version": "0.9.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -109,7 +109,7 @@ router.delete('/material/' + IdValidate.parameter(), (req, res, next) => {
// check if there are still samples referencing this material
SampleModel.find({'material_id': new mongoose.Types.ObjectId(req.params.id), status: {$ne: globals.status.del}})
.lean().exec((err, data) => {
.lean().exec((err, data) => {
if (err) return next(err);
if (data.length) {
return res.status(400).json({status: 'Material still in use'});
@ -124,7 +124,7 @@ router.delete('/material/' + IdValidate.parameter(), (req, res, next) => {
res.status(404).json({status: 'Not found'});
}
});
});
});
});
router.put('/material/restore/' + IdValidate.parameter(), (req, res, next) => {
@ -190,12 +190,12 @@ module.exports = router;
async function nameCheck (material, res, next) { // check if name was already taken
const materialData = await MaterialModel.findOne({name: material.name}).lean().exec().catch(err => next(err)) as any;
if (materialData instanceof Error) return false;
if (materialData) { // could not find material_id
if (materialData instanceof Error) return false;
if (materialData) { // could not find material_id
res.status(400).json({status: 'Material name already taken'});
return false;
}
return true;
}
return true;
}
async function groupResolve (material, req, next) {

View File

@ -47,23 +47,23 @@ router.put('/measurement/' + IdValidate.parameter(), async (req, res, next) => {
// add properties needed for sampleIdCheck
measurement.measurement_template = data.measurement_template;
measurement.sample_id = data.sample_id;
if (!await sampleIdCheck(measurement, req, res, next)) return;
measurement.sample_id = data.sample_id;
if (!await sampleIdCheck(measurement, req, res, next)) return;
// check for changes
if (measurement.values) { // fill not changed values from database
// check for changes
if (measurement.values) { // fill not changed values from database
measurement.values = _.assign({}, data.values, measurement.values);
if (!_.isEqual(measurement.values, data.values)) {
measurement.status = globals.status.new; // set status to new
}
}
}
if (!await templateCheck(measurement, 'change', res, next)) return;
await MeasurementModel.findByIdAndUpdate(req.params.id, measurement, {new: true})
.log(req).lean().exec((err, data) => {
if (!await templateCheck(measurement, 'change', res, next)) return;
await MeasurementModel.findByIdAndUpdate(req.params.id, measurement, {new: true})
.log(req).lean().exec((err, data) => {
if (err) return next(err);
res.json(MeasurementValidate.output(data, req));
});
});
});
router.delete('/measurement/' + IdValidate.parameter(), (req, res, next) => {

View File

@ -128,9 +128,9 @@ router.put('/template/:collection(measurement|condition|material)/' + IdValidate
else {
res.json(TemplateValidate.output(templateData));
}
});
});
router.post('/template/:collection(measurement|condition|material)/new', async (req, res, next) => {
router.post('/template/:collection(measurement|condition|material)/new', async (req, res, next) => {
if (!req.auth(res, ['dev', 'admin'], 'basic')) return;
const {error, value: template} = TemplateValidate.input(req.body, 'new');
@ -144,15 +144,15 @@ router.post('/template/:collection(measurement|condition|material)/new', async (
db.log(req, req.params.collection + '_templates', {_id: data._id}, data.toObject());
res.json(TemplateValidate.output(data.toObject()));
});
});
});
module.exports = router;
module.exports = router;
function model (req) { // return right template model
function model (req) { // return right template model
switch (req.params.collection) {
case 'condition': return ConditionTemplateModel
case 'measurement': return MeasurementTemplateModel
case 'material': return MaterialTemplateModel
}
}
}

View File

@ -186,28 +186,28 @@ module.exports = router;
function getUsername (req, res) { // returns username or false if action is not allowed
req.params.username = req.params[0]; // because of path regex
if (req.params.username !== undefined) { // different username than request user
if (req.params.username !== undefined) { // different username than request user
if (!req.auth(res, ['admin'], 'basic')) return false;
return req.params.username;
}
else {
}
else {
return req.authDetails.username;
}
}
}
async function usernameCheck (name, res, next) { // check if username is already taken
const userData = await UserModel.findOne({name: name}).lean().exec().catch(err => next(err)) as any;
if (userData instanceof Error) return false;
if (userData || UserValidate.isSpecialName(name)) {
if (userData instanceof Error) return false;
if (userData || UserValidate.isSpecialName(name)) {
res.status(400).json({status: 'Username already taken'});
return false;
}
return true;
}
return true;
}
async function modelsCheck (models, res, next) { // check if model ids exist, returns false on error
let result = true;
for (let i in models) {
for (let i in models) {
const model = await ModelModel.findOne({'models._id': mongoose.Types.ObjectId(models[i])})
.lean().exec().catch(err => next(err)) as any;
if(!model) {
@ -215,6 +215,6 @@ async function modelsCheck (models, res, next) { // check if model ids exist, r
result = false;
break;
}
}
return result;
}
return result;
}

View File

@ -7,14 +7,14 @@ export default class MeasurementValidate {
private static measurement = {
values: Joi.object()
.pattern(/.*/, Joi.alternatives()
.try(
.try(
Joi.string().max(128),
Joi.number(),
Joi.boolean(),
Joi.array().items(Joi.array().items(Joi.number())), // for spectra
Joi.array()
)
.allow(null)
)
.allow(null)
)
};

View File

@ -41,12 +41,12 @@ export default class SampleValidate {
custom_fields: Joi.object()
.pattern(/.*/, Joi.alternatives()
.try(
.try(
Joi.string().max(128),
Joi.number(),
Joi.boolean(),
Joi.date()
)
)
)
}),