const express = require('express'); const router = express.Router(); const mongoose=require('mongoose'); // User Model let User = require('../models/user'); var utils = require('../js/utils'); const path = require('path'); let Item = require('../models/item'); let Client = require('../models/client'); let Warehouse = require('../models/warehouse'); let Recipt = require('../models/recipt'); const checkUserAdmin3 = require('../js/helperFuncs'); var fs = require('fs'); // Új raktár létrehozás router.get('/new', utils.ensureAuthenticated,function(req,res){ var admin=false; Warehouse.find({}, function(err,warehouses) { if(req.user) { checkUserAdmin3(req,function(err,res){ admin=res; }); } if (err) { console.log(err); res.send('Hiba történt az oldal betöltése során. '); } else { res.render('receiptsNew', { title: 'Új bevételezés', warehouses: warehouses, rot:admin, }); } }); }); // Ügyfelek keresése // Find Clients on keypress router.post('/find', utils.ensureAuthenticated,function (req,res) { let man=new Item(); var findman=Item.findOne( {'name' : req.body.content}); var q = Client.find({'name': new RegExp(req.body.content, 'i')}).limit(20); var response = { status : 200, data : 'null' } q.exec(function(err,t){ if (err) { console.log(err); return; } if (t) { t.forEach(function(tetel){ //console.log('Tools find:' +tetel.name); }) response = { status : 200, data : t } } else { response = { status : 200, data : null } console.log('Tools find: null'); } res.send(response); }); }); // Find ItemsBy Number on keypress router.post('/findItemCikk', utils.ensureAuthenticated,function (req,res) { let man=new Item(); //console.log(req.body.content); var q = Item.find({'itemNumber': new RegExp(req.body.content, 'i')}).limit(20); q.exec(function(err,t){ if (err) { console.log(err); return; } if (t) { t.forEach(function(tetel){ //console.log('Tools find:' +tetel.name); }) response = { status : 200, data : t } } else { response = { status : 200, data : null } console.log('Tools find: null'); } res.send(response); }); }); // Find ItemsBy Name on keypress router.post('/findItemName', utils.ensureAuthenticated,function (req,res) { let man=new Item(); // console.log(req.body.content); var q = Item.find({'title': new RegExp(req.body.content, 'i')}).limit(20); q.exec(function(err,t){ if (err) { console.log(err); return; } if (t) { t.forEach(function(tetel){ //console.log('Tools find:' +tetel.name); }) response = { status : 200, data : t } } else { response = { status : 200, data : null } console.log('Tools find: null'); } res.send(response); }); }); // Új bevételezés rögzítése router.post('/receiptNewReceipt', utils.ensureAuthenticated,function (req,res) { console.log(req.body); // var rec=JSON.parse(req.body); var newRec=new Recipt(); var q=Client.findOne({'name' : req.body.client}) q.exec(function(err,client){ if (err) { console.log(err); response = { status : 400, data : err } res.send(response); } if (client) { newRec.warehouseId= req.body.warehouse;//mongoose.Types.ObjectId(req.body.warehouse); newRec.certSerial=req.body.certSerial; newRec.clientId=client.id; req.body.Items.forEach(element => { newRec.Items.push(element); }); //newRec.Items=req.body.Items; var priceN=0; req.body.Items.forEach(item => { priceN+=(item.netListPrice * item.stock); // newRec.Items.push() }); newRec.priceNet=priceN; newRec.priceBr=(priceN*1.27); var warehouseId=newRec.warehouseId; newRec.save(function(err){ if(err){ response = { status : 400, data : { eredmeny:'SZAR'} } res.send(response); } else { // Elemek hozzáadása a raktárkészlethez //Warehouse.findById({"_id":warehouseId}, function(err,warehouse) //req.body.Items.forEach(item => { Warehouse.findOneAndUpdate({"_id":warehouseId},{ $push:{'Items': req.body.Items}},{'upsert':true},function(err,resp) { if (err) { console.log(err); response = { status : 404, data : { eredmeny:'Hiba történt az oldal betöltése során. '} } res.send(response); } else { response = { status : 200, data : { eredmeny:'Fasza!'} } res.send(response); // newRec.Items.push() } //}); }); /* response = { status : 200, data : { eredmeny:'RAKTARHIBA'} } res.send(response);*/ } }); } }); }); module.exports = router;