Update API for COPY Recepie
This commit is contained in:
parent
eceff163a9
commit
d8d9d54679
6
app.js
6
app.js
|
@ -21,7 +21,11 @@ var app = express();
|
|||
app.set('views', path.join(__dirname, 'views'));
|
||||
app.set('view engine', 'pug');
|
||||
|
||||
app.use(cors());
|
||||
// Settin Cors Options
|
||||
var corsOptions = {
|
||||
methods: ['GET', 'PUT', 'POST', 'DELETE', 'COPY']
|
||||
}
|
||||
app.use(cors(corsOptions));
|
||||
app.use(logger('dev'));
|
||||
app.use(express.json());
|
||||
app.use(express.urlencoded({ extended: false }));
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
const express = require('express');
|
||||
const router = express.Router();
|
||||
var cors = require('cors');
|
||||
|
||||
|
||||
const bcrypt = require('bcrypt');
|
||||
const randToken = require('rand-token');
|
||||
|
@ -91,9 +93,19 @@ router.post('/', function(req, res, next) {
|
|||
let result = {};
|
||||
result['recepies'] = rs.rows[0];
|
||||
|
||||
req.db.query("INSERT into rezept_dauer (rezept, sort, name, dauer) VALUES ($1, 1, 'Zubereitung', '30m')", [rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query("INSERT into rezept_wertung (nutzer, rezept, wert, wertungskategorie) VALUES ($1, $2, 5, (SELECT id FROM wertungskategorie WHERE schluessel = 'sum'))", [rs.rows[0].nutzer, rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query("INSERT into rezept_schitt (rezept, sort, name, beschreibung) VALUES ($1, 1, 'Zubreitung', 'Mit Sherry ablöschen, Sahne hinzugeben und Parmesan reiben.')", [rs.rows[0].id], (err, rs) => {});
|
||||
let querys = [
|
||||
"INSERT into rezept_dauer (rezept, sort, name, dauer) VALUES ($1, 1, 'Zubereitung', '30m')",
|
||||
"INSERT into rezept_wertung (nutzer, rezept, wert, wertungkategorie) VALUES ($1, $2, 5, (SELECT id FROM wertungkategorie WHERE schluessel = 'sum'))",
|
||||
"INSERT into rezept_schritt (rezept, sort, name, beschreibung) VALUES ($1, 1, 'Zubereitung', 'Mit Sherry ablöschen, Sahne hinzugeben und Parmesan reiben.')"
|
||||
];
|
||||
|
||||
console.log(querys[0],rs.rows[0].id);
|
||||
console.log(querys[1],[rs.rows[0].nutzer, rs.rows[0].id]);
|
||||
console.log(querys[2],rs.rows[0].id);
|
||||
|
||||
req.db.query(querys[0], [rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query(querys[1], [rs.rows[0].nutzer, rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query(querys[2], [rs.rows[0].id], (err, rs) => {});
|
||||
|
||||
|
||||
res.status(200).json(result);
|
||||
|
@ -106,6 +118,54 @@ router.get('/:recepieId', function(req, res, next) {
|
|||
res.status(200).json(req.recepie);
|
||||
});
|
||||
|
||||
|
||||
router.options('/:recepieId', cors())
|
||||
|
||||
router.copy('/:recepieId', cors(), function(req, res, next) {
|
||||
let recepie = req.recepie;
|
||||
if(!recepie.schluessel) recepie.schluessel = randToken.uid(8);
|
||||
if(!recepie.schwierigkeit || !recepie.name || !recepie.nutzer) {
|
||||
return res.status(400).send("Wrong Params")
|
||||
}
|
||||
let query = "INSERT INTO rezept (nutzer, name, schluessel, schwierigkeit, portionen, beschreibung) "+
|
||||
" VALUES ($1, $2, $3, $4, $5, $6)" +
|
||||
" returning *";
|
||||
let values = [recepie.nutzer, recepie.name+"Kopie", recepie.schluessel+"-kopie", recepie.schwierigkeit, recepie.portionen, recepie.beschreibung];
|
||||
|
||||
if(DEBUG) console.log(query);
|
||||
|
||||
req.db.query(query, values, (err, rs) => {
|
||||
if(err && err.constraint && err.constraint ==='idx_rezept_email') {
|
||||
return res.status(409).send("Recipie Key already in use");
|
||||
} else if (err){
|
||||
next(err);
|
||||
} else {
|
||||
let result = {};
|
||||
result['recepies'] = rs.rows[0];
|
||||
|
||||
let querys = [
|
||||
"INSERT into rezept_dauer (rezept, sort, name, dauer, beschreibung) SELECT $2, sort, name, dauer, beschreibung FROM rezept_dauer where rezept = $1",
|
||||
"INSERT into rezept_zutat (rezept, zutat, einheit, menge, beschreibung) SELECT $2, zutat, einheit, menge, beschreibung FROM rezept_zutat WHERE rezept = $1",
|
||||
"INSERT into rezept_geraet (rezept, geraet, einheit, menge, beschreibung) SELECT $2, geraet, einheit, menge, beschreibung FROM rezept_geraet WHERE rezept = $1",
|
||||
"INSERT into rezept_schritt (rezept, sort, name, beschreibung) SELECT $2, sort, name, beschreibung FROM rezept_schritt where rezept = $1"
|
||||
];
|
||||
|
||||
console.log(querys[0],recepie.id);
|
||||
console.log(querys[1],recepie.id);
|
||||
console.log(querys[2],recepie.id);
|
||||
console.log(querys[3],recepie.id);
|
||||
|
||||
req.db.query(querys[0], [recepie.id, rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query(querys[1], [recepie.id, rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query(querys[2], [recepie.id, rs.rows[0].id], (err, rs) => {});
|
||||
req.db.query(querys[3], [recepie.id, rs.rows[0].id], (err, rs) => {});
|
||||
|
||||
|
||||
res.status(200).json(result);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
router.put('/:recepieId', function(req, res, next) {
|
||||
let recepie = req.body.recepies;
|
||||
let query = "UPDATE rezept set name = '"+recepie.name+
|
||||
|
|
|
@ -25,7 +25,8 @@ router.param('stepId', function(req, res, next, id) {
|
|||
router.get('/', function(req, res, next) {
|
||||
let query = " Select rezept_schritt.id, name, sort, beschreibung "+
|
||||
" FROM rezept_schritt "+
|
||||
" WHERE rezept =$1";
|
||||
" WHERE rezept =$1"+
|
||||
" ORDER BY sort";
|
||||
if(DEBUG) console.log(query);
|
||||
req.db.query(query,[req.recepieId], (err, rs) => {
|
||||
if (err){
|
||||
|
|
Loading…
Reference in New Issue