1007 lines
31 KiB
JavaScript
1007 lines
31 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
// Bring in article module
|
|
//let Tool = require('../models/tool')
|
|
let Article = require('../models/article');
|
|
let KifCert = require('../models/kifcerts');
|
|
var logging=require('../js/helpers');
|
|
// User Model
|
|
let User = require('../models/user');
|
|
var utils = require('../js/utils');
|
|
const path = require('path');
|
|
|
|
|
|
var vfeszOptions = [
|
|
{value: '1,89', text: '1,89'},
|
|
{value: '2,5', text: '2,5'},
|
|
{value: '10', text: '10'},
|
|
{value: '20', text: '20'},
|
|
{value: '28', text: '28'},
|
|
{value: '50', text: '50'}
|
|
];
|
|
|
|
var minositesOptions = [
|
|
{value: 'valid', text: 'Megfelelt'},
|
|
{value: 'not valid', text: 'Nem felelt meg'},
|
|
];
|
|
|
|
var muszerek = [
|
|
"METRA HIT Digitális műszer gysz: 748818:",
|
|
"SMA 2101 Lakatfogó gysz: 150302385",
|
|
"MX -25306 Digitális műszer gysz: 00059080",
|
|
"SMA MY 64 Digitális műszer gysz: 1500500489",
|
|
"MS2101 Digitális műszer gysz: 070400128",
|
|
"TESTBOY TV325 Digitális Hőmérő gysz: CO610071011",
|
|
"Vanguard DMOM-200 Átmeneti ell. mérő gysz: 64174",
|
|
"K-L 50 Nagyfeszültségű átütés vizsgáló gysz: 2014/",
|
|
"MeggerProgramma SVERKER 780 áramnyomató gysz",
|
|
"METREL Terra ohm Szigetelés vizsgáló gysz: 0849142",
|
|
"METREL EUROTEST 61557 gysz: 08510155",
|
|
];
|
|
|
|
function bodyToModelNew(req)
|
|
{
|
|
var kofmb=new KifCert();
|
|
kofmb.jkvTitle = req.body.jkvtitle;
|
|
kofmb.deviceId=req.params.id;
|
|
|
|
kofmb.certType='KOFMC';
|
|
kofmb.megnevezes=req.body.megnevezes;
|
|
kofmb.mennyiseg=req.body.mennyiseg;
|
|
kofmb.mennyisegegyseg=req.body.mennyisegegyseg;
|
|
kofmb.gyariszam=req.body.gyartasiszam;
|
|
kofmb.rajzszam=req.body.rajzszam;
|
|
kofmb.vedettseg=req.body.vedettseg;
|
|
kofmb.tipus=req.body.tipus;
|
|
kofmb.egyebazonosito=req.body.egyebazonosito;
|
|
kofmb.feszUe=req.body.ueff;
|
|
kofmb.feszEgyseg=req.body.fesz;
|
|
kofmb.aramIe=req.body.ieff;
|
|
kofmb.megrendelo=req.body.megrendelo;
|
|
kofmb.vizsgfesz=req.body.vizsgfesz;
|
|
kofmb.vizsgfesz22=req.body.vizsgfesz22;
|
|
kofmb.megjegyzes=req.body.megjegyzes;
|
|
kofmb.minosites=req.body.minositestxt;
|
|
kofmb.munkaszam=req.body.munkaszam;
|
|
|
|
if (req.body.minositescbo==='valid')
|
|
{
|
|
kofmb.vegeredmeny=true;
|
|
}
|
|
else
|
|
{
|
|
kofmb.vegeredmeny=false;
|
|
}
|
|
|
|
kofmb.szabvanyok[0]=req.body.msz1;
|
|
kofmb.szabvanyok[1]=req.body.msz2;
|
|
kofmb.szabvanyok[2]=req.body.msz3;
|
|
|
|
kofmb.vizsgalat1[0]=req.body.chk11;
|
|
kofmb.vizsgalat1[1]=req.body.chk12;
|
|
kofmb.vizsgalat1[2]=req.body.chk13;
|
|
kofmb.vizsgalat1[3]=req.body.chk14;
|
|
kofmb.vizsgalat1[4]=req.body.chk15;
|
|
kofmb.vizsgalat1[5]=req.body.chk16;
|
|
kofmb.vizsgalat1[6]=req.body.chk17;
|
|
kofmb.vizsgalat1[7]=req.body.chk18;
|
|
kofmb.vizsgalat1[8]=req.body.chk19;
|
|
|
|
kofmb.vizsgalat2[0]=req.body.chk21;
|
|
kofmb.vizsgalat2[1]=req.body.chk22;
|
|
|
|
kofmb.vizsgalat3[0]=req.body.chk31;
|
|
kofmb.vizsgalat3[1]=req.body.chk32;
|
|
kofmb.vizsgalat3[2]=req.body.chk33;
|
|
|
|
kofmb.vizsgalat4[0]=req.body.chk411;
|
|
kofmb.vizsgalat4[1]=req.body.chk412;
|
|
kofmb.vizsgalat4[2]=req.body.chk421;
|
|
kofmb.vizsgalat4[3]=req.body.chk422;
|
|
|
|
kofmb.vizsgalat5[0]=req.body.chk51;
|
|
kofmb.vizsgalat5[1]=req.body.chk52;
|
|
|
|
kofmb.vizsgalat6[0]=req.body.chk61;
|
|
|
|
kofmb.vizsgalat8[0]=req.body.chk81;
|
|
kofmb.vizsgalat8[1]=req.body.chk82;
|
|
kofmb.vizsgalat8[2]=req.body.chk83;
|
|
kofmb.vizsgalat8[3]=req.body.chk84;
|
|
kofmb.vizsgalat8[4]=req.body.chk85;
|
|
kofmb.vizsgalat8[5]=req.body.chk86;
|
|
kofmb.vizsgalat8[6]=req.body.chk87;
|
|
kofmb.vizsgalat8[7]=req.body.chk88;
|
|
kofmb.vizsgalat8[8]=req.body.chk89;
|
|
kofmb.vizsgalat8[9]=req.body.chk90;
|
|
kofmb.vizsgalat8[10]=req.body.chk91;
|
|
kofmb.vizsgalat8[11]=req.body.chk92;
|
|
kofmb.vizsgalat8[12]=req.body.chk93;
|
|
kofmb.vizsgalat8[13]=req.body.chk94;
|
|
kofmb.vizsgalat8[14]=req.body.chk95;
|
|
|
|
return kofmb;
|
|
}
|
|
|
|
function bodyToModelUpdate(req)
|
|
{
|
|
let kofmb={};
|
|
kofmb.jkvTitle = req.body.jkvtitle;
|
|
//kofmb.deviceId=req.params.id;
|
|
kofmb.certType='KOFMC';
|
|
kofmb.megnevezes=req.body.megnevezes;
|
|
kofmb.mennyiseg=req.body.mennyiseg;
|
|
kofmb.mennyisegegyseg=req.body.mennyisegegyseg;
|
|
kofmb.gyariszam=req.body.gyartasiszam;
|
|
kofmb.rajzszam=req.body.rajzszam;
|
|
kofmb.vedettseg=req.body.vedettseg;
|
|
kofmb.tipus=req.body.tipus;
|
|
kofmb.egyebazonosito=req.body.egyebazonosito;
|
|
kofmb.feszUe=req.body.ueff;
|
|
//kofmb.feszEgyseg=req.body.fesz;
|
|
kofmb.aramIe=req.body.ieff;
|
|
kofmb.megrendelo=req.body.megrendelo;
|
|
kofmb.vizsgfesz=req.body.vizsgfesz;
|
|
kofmb.megjegyzes=req.body.megjegyzes;
|
|
kofmb.minosites=req.body.minositestxt;
|
|
kofmb.munkaszam=req.body.munkaszam;
|
|
|
|
if (req.body.minositescbo==='valid')
|
|
{
|
|
kofmb.vegeredmeny=true;
|
|
}
|
|
else
|
|
{
|
|
kofmb.vegeredmeny=false;
|
|
}
|
|
|
|
var szv=[req.body.msz1,req.body.msz2,req.body.msz3];
|
|
kofmb.szabvanyok=szv;
|
|
|
|
var v1=[req.body.chk11,req.body.chk12,req.body.chk13,req.body.chk14,req.body.chk15,req.body.chk16,req.body.chk17,req.body.chk18,req.body.chk19];
|
|
kofmb.vizsgalat1=v1;
|
|
|
|
var v2=[req.body.chk21,req.body.chk22];
|
|
kofmb.vizsgalat2=v2;
|
|
|
|
var v3=[req.body.chk31,req.body.chk32, req.body.chk33];
|
|
kofmb.vizsgalat3=v3;
|
|
|
|
var v4=[req.body.chk411,req.body.chk412,req.body.chk421,req.body.chk422];
|
|
kofmb.vizsgalat4=v4;
|
|
|
|
var v5=[req.body.chk51,req.body.chk52];
|
|
kofmb.vizsgalat5=v5
|
|
|
|
var v6=[req.body.chk61];
|
|
kofmb.vizsgalat6=v6;
|
|
|
|
var v8=[ req.body.chk81,req.body.chk82,req.body.chk83,req.body.chk84,
|
|
req.body.chk85,req.body.chk86,req.body.chk87,req.body.chk88,
|
|
req.body.chk89,req.body.chk90,req.body.chk91,req.body.chk92,
|
|
req.body.chk93,req.body.chk94,req.body.chk95];
|
|
kofmb.vizsgalat8=v8;
|
|
|
|
|
|
return kofmb;
|
|
}
|
|
// Bizonylatok lekérdezése KOFCERT TR
|
|
router.get('/kofcert/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
var t='Légszigetelésű mérőcella nyilatkozata';
|
|
console.log('Jegyzokonyvek');
|
|
|
|
if (req.params.id==='single')
|
|
{
|
|
t='Légszigetelésű mérőcella nyilatkozata (egyéni)';
|
|
}
|
|
else
|
|
{
|
|
KifCert.findById(req.params.id,function(err,cert)
|
|
{
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else
|
|
{
|
|
console.log(cert.title);
|
|
|
|
res.render('kofcert_mc', {
|
|
view: 'modify',
|
|
dev: 'MC',
|
|
certId: cert.id,
|
|
vfeszOptions: vfeszOptions,
|
|
vfeszOptions22: vfeszOptions,
|
|
minositesOptions: minositesOptions,
|
|
title: t,
|
|
vjkvtitle: cert.jkvTitle,
|
|
articleId: cert.deviceId,
|
|
vmegnevezes: cert.megnevezes,
|
|
vmennyiseg: cert.mennyiseg,
|
|
vgyartasiszam: cert.gyariszam,
|
|
vmunkaszam: cert.munkaszam,
|
|
vmennyisegegyseg: cert.mennyisegegyseg,
|
|
vrajzszam: cert.rajzszam,
|
|
vvedettseg: cert.vedettseg,
|
|
vtipus: cert.tipus,
|
|
vegyebazonosito: cert.egyebazonosito,
|
|
vueff: cert.feszUe,
|
|
vfesz: cert.feszEgyseg,
|
|
vieff: cert.aramIe,
|
|
vmegrendelo: cert.megrendelo,
|
|
vmsz1: cert.szabvanyok[0],
|
|
vmsz2: cert.szabvanyok[1],
|
|
vmsz3: cert.szabvanyok[2],
|
|
vchk11: cert.vizsgalat1[0],
|
|
vchk12: cert.vizsgalat1[1],
|
|
vchk13: cert.vizsgalat1[2],
|
|
vchk14: cert.vizsgalat1[3],
|
|
vchk15: cert.vizsgalat1[4],
|
|
vchk16: cert.vizsgalat1[5],
|
|
vchk17: cert.vizsgalat1[6],
|
|
vchk18: cert.vizsgalat1[7],
|
|
vchk19: cert.vizsgalat1[8],
|
|
|
|
vchk21: cert.vizsgalat2[0],
|
|
vchk22: cert.vizsgalat2[1],
|
|
|
|
vchk30: cert.vizsgalat3[0],
|
|
|
|
vvizsgfesz22: cert.vizsgfesz22,
|
|
vvizsgfesz: cert.vizsgfesz,
|
|
vchk31: cert.vizsgalat3[1],
|
|
|
|
vchk411: cert.vizsgalat4[0],
|
|
vchk412: cert.vizsgalat4[1],
|
|
vchk421: cert.vizsgalat4[2],
|
|
vchk422: cert.vizsgalat4[3],
|
|
|
|
vchk51: cert.vizsgalat5[0],
|
|
vchk52: cert.vizsgalat5[1],
|
|
|
|
vchk61: cert.vizsgalat6[0],
|
|
vmegjegyzes: cert.megjegyzes,
|
|
|
|
vchk81: cert.vizsgalat8[0],
|
|
vchk82: cert.vizsgalat8[1],
|
|
vchk83: cert.vizsgalat8[2],
|
|
vchk84: cert.vizsgalat8[3],
|
|
vchk85: cert.vizsgalat8[4],
|
|
vchk86: cert.vizsgalat8[5],
|
|
vchk87: cert.vizsgalat8[6],
|
|
vchk88: cert.vizsgalat8[7],
|
|
vchk89: cert.vizsgalat8[8],
|
|
vchk90: cert.vizsgalat8[9],
|
|
vchk91: cert.vizsgalat8[10],
|
|
vchk92: cert.vizsgalat8[11],
|
|
vchk93: cert.vizsgalat8[12],
|
|
vchk94: cert.vizsgalat8[13],
|
|
vchk95: cert.vizsgalat8[14],
|
|
vminosites: cert.minosites,
|
|
minositescbo: cert.vegeredmeny
|
|
});
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
// Bizonylatok KOFCERT TR
|
|
router.get('/kofcertnew/:id', utils.ensureAuthenticated,function (req,res) {
|
|
var chkVal={};
|
|
var IchkVal={};
|
|
var IIchkVal={};
|
|
var IIchkVal={};
|
|
var IIIchkVal={};
|
|
var IVchkVal={};
|
|
var VchkVal={};
|
|
var VIchkVal={};
|
|
var VIIIchkVal={};
|
|
|
|
// Set default settings
|
|
chkVal[1]='checked';
|
|
IVchkVal[2]='checked';
|
|
VIIIchkVal[1]='checked';
|
|
VIIIchkVal[3]='checked';
|
|
VIIIchkVal[11]='checked';
|
|
|
|
|
|
var t='Légszigetelésű mérőcella nyilatkozata';
|
|
console.log('Jegyzokonyvek');
|
|
|
|
if (req.params.id==='single')
|
|
{
|
|
t='Légszigetelésű mérőcella nyilatkozata (egyéni)';
|
|
}
|
|
else
|
|
{
|
|
Article.findById(req.params.id,function(err,article)
|
|
{
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else
|
|
{
|
|
console.log(article.title);
|
|
|
|
res.render('kofcert_mc', {
|
|
view: 'new',
|
|
dev: 'MC',
|
|
vfeszOptions: vfeszOptions,
|
|
vfeszOptions22: vfeszOptions,
|
|
minositesOptions: minositesOptions,
|
|
title: t,
|
|
articleId: article.id,
|
|
vmegnevezes: article.title,
|
|
vmennyiseg: 1,
|
|
vminosites: 'Ezen vizsgálat alkalmával hiányosságok nem voltak.',
|
|
vgyartasiszam: article.deviceNumber,
|
|
vmunkaszam: article.workNumber,
|
|
vmennyisegegyseg: 'db',
|
|
vrajzszam: '',
|
|
vvedettseg: 'IP55',
|
|
vtipus: 'KOFMC',
|
|
vegyebazonosito: article.workSign,
|
|
vvizsgfesz: '10',
|
|
vvizsgfesz22: '50',
|
|
vueff: '20',
|
|
vfesz: 'kV',
|
|
vieff: '630',
|
|
vmegrendelo: '',
|
|
vmsz1: chkVal[0],
|
|
vmsz2: chkVal[1],
|
|
vmsz3: chkVal[2],
|
|
vchk11: IchkVal[0],
|
|
vchk12: IchkVal[1],
|
|
vchk13: IchkVal[2],
|
|
vchk14: IchkVal[3],
|
|
vchk15: IchkVal[4],
|
|
vchk16: IchkVal[5],
|
|
vchk17: IchkVal[6],
|
|
vchk18: IchkVal[7],
|
|
vchk19: IchkVal[8],
|
|
|
|
vchk21: IIchkVal[0],
|
|
vchk22: IIchkVal[1],
|
|
|
|
vchk30: IIIchkVal[0],
|
|
|
|
// vvizsgfesz: '2,5',
|
|
vchk31: IIIchkVal[1],
|
|
|
|
vchk411: IVchkVal[0],
|
|
vchk412: IVchkVal[1],
|
|
vchk421: IVchkVal[2],
|
|
vchk422: IVchkVal[3],
|
|
|
|
vchk51: VchkVal[0],
|
|
vchk52: VchkVal[1],
|
|
|
|
vchk61: VIchkVal[0],
|
|
vmegjegyzes: ' ',
|
|
|
|
vchk81: VIIIchkVal[0],
|
|
vchk82: VIIIchkVal[1],
|
|
vchk83: VIIIchkVal[2],
|
|
vchk84: VIIIchkVal[3],
|
|
vchk85: VIIIchkVal[4],
|
|
vchk86: VIIIchkVal[5],
|
|
vchk87: VIIIchkVal[6],
|
|
vchk88: VIIIchkVal[7],
|
|
vchk89: VIIIchkVal[8],
|
|
vchk90: VIIIchkVal[9],
|
|
vchk91: VIIIchkVal[10],
|
|
vchk92: VIIIchkVal[11],
|
|
vchk93: VIIIchkVal[12],
|
|
vchk94: VIIIchkVal[13],
|
|
vchk95: VIIIchkVal[14]
|
|
});
|
|
}
|
|
});
|
|
}
|
|
});
|
|
|
|
|
|
// Bizonylatok KIFCE generálás
|
|
|
|
// KoF Bizonylat Módosítás és mentés
|
|
router.post('/kofceupdate/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
req.checkBody('jkvtitle','Jegyzőkönyv megnevezése kötelező!').notEmpty();
|
|
req.checkBody('megnevezes','Megnevezés kötelező!').notEmpty();
|
|
req.checkBody('mennyiseg','Mennyiség megadása kötelező!').notEmpty();
|
|
req.checkBody('gyartasiszam','Berendezés gyártási szám kötelező!').notEmpty();
|
|
req.checkBody('rajzszam','Berendezés jel megadása kötelező!').notEmpty();
|
|
req.checkBody('vedettseg','Védettség megadása kötelező!').notEmpty();
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
|
|
if(errors)
|
|
{
|
|
res.render('kofcert_mc', {
|
|
title: 'Légszigetelésű mérőcella nyilatkozata',
|
|
errors:errors,
|
|
vmegnevezes: req.body.megnevezes,
|
|
vmennyiseg: req.body.mennyiseg,
|
|
vgyartasiszam: req.body.gyartasiszam,
|
|
vmunkaszam: req.body.munkaszam,
|
|
vrajzszam: req.body.rajzszam,
|
|
vedettseg: req.body.vedettseg
|
|
});
|
|
|
|
} else {
|
|
var dt = new Date();
|
|
var bornDate= dt.toISOString().replace(/T/, ' ').replace(/\..+/, '');
|
|
let query = {_id:req.params.id}
|
|
console.log('Update!'+req.params.id);
|
|
// CERT
|
|
var kofmb = bodyToModelUpdate(req);
|
|
|
|
KifCert.update(query, kofmb, function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
console.log('Jegyzőkönyv Módosítva! ');
|
|
}
|
|
});
|
|
|
|
|
|
var deviceDate= new Date().toISOString().replace(/-/g, '.').substring(0,10);
|
|
var JSZip = require('jszip');
|
|
var Docxtemplater = require('docxtemplater');
|
|
|
|
var fs = require('fs');
|
|
var path = require('path');
|
|
|
|
//Load the docx file as a binary
|
|
var content = fs
|
|
.readFileSync(__dirname+'/../docs/templates/kof/mc/kof_mc_ce_template.docx', 'binary');
|
|
|
|
var zip = new JSZip(content);
|
|
|
|
var doc = new Docxtemplater();
|
|
doc.loadZip(zip);
|
|
var year=new Date().getFullYear();
|
|
console.log(req.params.id);
|
|
KifCert.findById(req.params.id, function(err,kofmb){
|
|
//set the templateVariables
|
|
var gyev=kofmb.gyariszam.substring(0,4);
|
|
if (err)
|
|
{
|
|
console.log(err);
|
|
}
|
|
else
|
|
{
|
|
//console.log('Megvan!');
|
|
doc.setData({
|
|
tipus: kofmb.megnevezes,
|
|
mennyiseg: kofmb.mennyiseg,
|
|
mennyisegiegyseg: kofmb.mennyisegegyseg,
|
|
gyartasiszam: kofmb.gyariszam,
|
|
munkaszam: kofmb.munkaszam,
|
|
gyartasiev: gyev,
|
|
rajzszam: kofmb.rajzszam,
|
|
egyebazonosito: kofmb.egyebazonosito,
|
|
author: kofmb.author,
|
|
datum: deviceDate,
|
|
feszeff: kofmb.feszUe+kofmb.feszEgyseg,
|
|
arameff: kofmb.aramIe+'A',
|
|
vedettseg: kofmb.vedettseg,
|
|
serial: kofmb.gyariszam
|
|
});
|
|
}
|
|
|
|
try {
|
|
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
|
|
console.log('Generálás kész!');
|
|
doc.render();
|
|
|
|
}
|
|
catch (error) {
|
|
var e = {
|
|
message: error.message,
|
|
name: error.name,
|
|
stack: error.stack,
|
|
properties: error.properties,
|
|
}
|
|
console.log(JSON.stringify({error: e}));
|
|
// The error thrown here contains additional information when logged with JSON.stringify (it contains a property object).
|
|
throw error;
|
|
}
|
|
|
|
var buf = doc.getZip()
|
|
.generate({type: 'nodebuffer'});
|
|
logging.logAppend("Jegyzőkönyv módosítva.",req.user,kofmb.id,KifCert.db.name,'CERTEDIT');
|
|
fs.writeFileSync(__dirname+'/../docs/kofmbce.docx', buf);
|
|
//req.flash('success','Berendezés sikeresen hozzáadva');
|
|
res.download(path.normalize(__dirname+'/../docs/kofmbce.docx'),'köf_MC_CE_megfelelőségi.docx');
|
|
});
|
|
}
|
|
|
|
});
|
|
|
|
|
|
// Bizonylatok KoFEU generálás
|
|
|
|
router.post('/kofeuupdate/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
req.checkBody('jkvtitle','Jegyzőkönyv megnevezése kötelező!').notEmpty();
|
|
req.checkBody('megnevezes','Megnevezés kötelező!').notEmpty();
|
|
req.checkBody('mennyiseg','Mennyiség megadása kötelező!').notEmpty();
|
|
req.checkBody('gyartasiszam','Berendezés gyártási szám kötelező!').notEmpty();
|
|
req.checkBody('rajzszam','Berendezés jel megadása kötelező!').notEmpty();
|
|
req.checkBody('vedettseg','Védettség megadása kötelező!').notEmpty();
|
|
req.checkBody('tipus','Védettség megadása kötelező!').notEmpty();
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
if(errors)
|
|
{
|
|
res.render('kofcert_mc', {
|
|
title: 'Légszigetelésű mérőcella nyilatkozata',
|
|
errors:errors,
|
|
vmegnevezes: req.body.megnevezes,
|
|
vmennyiseg: req.body.mennyiseg,
|
|
vgyartasiszam: req.body.gyartasiszam,
|
|
vmunkaszam: kofmb.munkaszam,
|
|
vrajzszam: req.body.rajzszam,
|
|
vedettseg: req.body.vedettseg,
|
|
tipus: req.body.tipus
|
|
});
|
|
|
|
} else {
|
|
console.log('Generálás!');
|
|
var dt = new Date();
|
|
var bornDate= dt.toISOString().replace(/T/, ' ').replace(/\..+/, '');
|
|
let query = {_id:req.params.id}
|
|
console.log('Update!'+req.params.id);
|
|
// CERT
|
|
var kofmb = bodyToModelUpdate(req);
|
|
|
|
KifCert.update(query, kofmb, function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
console.log('Jegyzőkönyv Módosítva! ');
|
|
}
|
|
});
|
|
|
|
var deviceDate= new Date().toISOString().replace(/-/g, '.').substring(0,10);
|
|
var JSZip = require('jszip');
|
|
var Docxtemplater = require('docxtemplater');
|
|
|
|
var fs = require('fs');
|
|
var path = require('path');
|
|
|
|
//Load the docx file as a binary
|
|
var content = fs
|
|
.readFileSync(__dirname+'/../docs/templates/kof/mc/kof_mc_eu_template.docx', 'binary');
|
|
|
|
var zip = new JSZip(content);
|
|
|
|
var doc = new Docxtemplater();
|
|
doc.loadZip(zip);
|
|
var year=new Date().getFullYear();
|
|
KifCert.findById(req.params.id, function(err,kofmb){
|
|
//set the templateVariables
|
|
doc.setData({
|
|
tipus: kofmb.tipus,
|
|
gyartasiszam: kofmb.gyariszam,
|
|
munkaszam: kofmb.munkaszam,
|
|
author: kofmb.author,
|
|
datum: deviceDate,
|
|
});
|
|
|
|
try {
|
|
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
|
|
console.log('Generálás kész!');
|
|
doc.render();
|
|
|
|
}
|
|
catch (error) {
|
|
var e = {
|
|
message: error.message,
|
|
name: error.name,
|
|
stack: error.stack,
|
|
properties: error.properties,
|
|
}
|
|
console.log(JSON.stringify({error: e}));
|
|
// The error thrown here contains additional information when logged with JSON.stringify (it contains a property object).
|
|
throw error;
|
|
}
|
|
|
|
var buf = doc.getZip()
|
|
.generate({type: 'nodebuffer'});
|
|
logging.logAppend("Jegyzőkönyv módosítva.",req.user,kofmb.id,KifCert.db.name,'CERTEDIT');
|
|
fs.writeFileSync(__dirname+'/../docs/kofmbeu.docx', buf);
|
|
//req.flash('success','Berendezés sikeresen hozzáadva');
|
|
res.download(path.normalize(__dirname+'/../docs/kofmbeu.docx'),'kof_MC_EU_megfelelőségi.docx');
|
|
});
|
|
}
|
|
|
|
});
|
|
// KoF mérőlap update
|
|
router.post('/kofmerolapupdate/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
req.checkBody('jkvtitle','Jegyzőkönyv megnevezése kötelező!').notEmpty();
|
|
req.checkBody('megnevezes','Megnevezés kötelező!').notEmpty();
|
|
req.checkBody('mennyiseg','Mennyiség megadása kötelező!').notEmpty();
|
|
req.checkBody('gyartasiszam','Berendezés gyártási szám kötelező!').notEmpty();
|
|
req.checkBody('rajzszam','Berendezés jel megadása kötelező!').notEmpty();
|
|
req.checkBody('vedettseg','Védettség megadása kötelező!').notEmpty();
|
|
req.checkBody('tipus','Védettség megadása kötelező!').notEmpty();
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
if(errors)
|
|
{
|
|
res.render('kofcert_mc', {
|
|
title: 'Légszigetelésű mérőcella nyilatkozata',
|
|
errors:errors,
|
|
vmegnevezes: req.body.megnevezes,
|
|
vmennyiseg: req.body.mennyiseg,
|
|
vmunkaszam: kofmb.munkaszam,
|
|
vgyartasiszam: req.body.gyartasiszam,
|
|
vrajzszam: req.body.rajzszam,
|
|
vedettseg: req.body.vedettseg,
|
|
tipus: req.body.tipus
|
|
});
|
|
|
|
} else {
|
|
console.log('Generálás!');
|
|
var dt = new Date();
|
|
var bornDate= dt.toISOString().replace(/T/, ' ').replace(/\..+/, '');
|
|
let query = {_id:req.params.id}
|
|
console.log('Update!'+req.params.id);
|
|
// CERT
|
|
var kofmb = bodyToModelUpdate(req);
|
|
|
|
KifCert.update(query, kofmb, function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
console.log('Jegyzőkönyv Módosítva! ');
|
|
}
|
|
});
|
|
|
|
var deviceDate= new Date().toISOString().replace(/-/g, '.').substring(0,10);
|
|
var JSZip = require('jszip');
|
|
var Docxtemplater = require('docxtemplater');
|
|
|
|
var fs = require('fs');
|
|
var path = require('path');
|
|
|
|
//Load the docx file as a binary
|
|
var content = fs
|
|
.readFileSync(__dirname+'/../docs/templates/kof/mc/kof_mc_merolaptemplate.docx', 'binary');
|
|
|
|
var zip = new JSZip(content);
|
|
|
|
var doc = new Docxtemplater();
|
|
doc.loadZip(zip);
|
|
var year=new Date().getFullYear();
|
|
KifCert.findById(req.params.id, function(err,kofmb){
|
|
//set the templateVariables
|
|
|
|
var eredmeny;
|
|
|
|
if(kofmb.vegeredmeny==true)
|
|
eredmeny='Megfelelt';
|
|
else
|
|
eredmeny='Nem felelt meg';
|
|
|
|
var szabvanyok='';
|
|
if (kofmb.szabvanyok[0]==true) szabvanyok+='MSZ EN 61439 ';
|
|
if (kofmb.szabvanyok[1]==true) szabvanyok+='MSZ EN 62271-200 ';
|
|
if (kofmb.szabvanyok[2]==true) szabvanyok+='MSZ EN 60947 ';
|
|
var p1=[];
|
|
kofmb.vizsgalat1.forEach(element => {
|
|
if (element==true)
|
|
p1.push('megfelelt');
|
|
else
|
|
p1.push('nem felelt meg');
|
|
});
|
|
|
|
var p2=[];
|
|
kofmb.vizsgalat2.forEach(element => {
|
|
if (element==true)
|
|
p2.push('megfelelt');
|
|
else
|
|
p2.push('nem felelt meg');
|
|
});
|
|
|
|
var p3=[];
|
|
kofmb.vizsgalat3.forEach(element => {
|
|
if (element==true)
|
|
p3.push('megfelelt');
|
|
else
|
|
p3.push('nem felelt meg');
|
|
});
|
|
|
|
var p4=[];
|
|
if (kofmb.vizsgalat4[0]==false && kofmb.vizsgalat4[1]==false)
|
|
{
|
|
p4.push('csengetéssel / villamos működtetéssel:');
|
|
p4.push('nem alkalmazható');
|
|
}else{
|
|
if (kofmb.vizsgalat4[0]==true)
|
|
p4.push('csengetéssel'); else p4.push(' ');
|
|
if (kofmb.vizsgalat4[1]==true)
|
|
p4.push('villamos működtetéssel'); else p4.push(' ');
|
|
}
|
|
|
|
if (kofmb.vizsgalat4[2]==false && kofmb.vizsgalat4[3]==false)
|
|
{
|
|
p4.push('primer / szekunder oldali nyomatással:');
|
|
p4.push('nem alkalmazható');
|
|
}else{
|
|
if (kofmb.vizsgalat4[2]==true)
|
|
p4.push('primer oldali nyomatással'); else p4.push(' ');
|
|
if (kofmb.vizsgalat4[3]==true)
|
|
p4.push('szekunder oldali nyomatással'); else p4.push(' ');
|
|
}
|
|
|
|
var p5=[];
|
|
kofmb.vizsgalat5.forEach(element => {
|
|
if (element==true)
|
|
p5.push('megfelelt');
|
|
else
|
|
p5.push('nem felelt meg');
|
|
});
|
|
|
|
var p6=[];
|
|
kofmb.vizsgalat6.forEach(element => {
|
|
if (element==true)
|
|
p6.push('megfelelt');
|
|
else
|
|
p6.push('nem felelt meg');
|
|
});
|
|
|
|
var p8=[' ',' ',' ',' ',' ',' ',' '];
|
|
var i=0;
|
|
kofmb.vizsgalat8.forEach(element => {
|
|
if (element==true)
|
|
{
|
|
if (i<6)
|
|
{
|
|
p8[i]=muszerek[i];
|
|
i++;
|
|
}
|
|
}
|
|
});
|
|
|
|
doc.setData({
|
|
tipus: kofmb.tipus,
|
|
mennyiseg: kofmb.mennyiseg,
|
|
mennyisegegyseg: kofmb.mennyisegegyseg,
|
|
gyartasiszam: kofmb.gyariszam,
|
|
msz: kofmb.munkaszam,
|
|
author: kofmb.author,
|
|
datum: deviceDate,
|
|
bizonylatszam: kofmb.gyariszam,
|
|
rsz: kofmb.rajzszam,
|
|
megrendelo: kofmb.megrendelo,
|
|
szabvanyok: szabvanyok,
|
|
vizsgfesz: kofmb.vizsgfesz,
|
|
megjegyzes: kofmb.megjegyzes,
|
|
minosites: kofmb.minosites,
|
|
eredmeny: eredmeny,
|
|
berendezesnev: kofmb.megnevezes,
|
|
p11: p1[0],
|
|
p12: p1[1],
|
|
p13: p1[2],
|
|
p14: p1[3],
|
|
p15: p1[4],
|
|
p16: p1[5],
|
|
p17: p1[6],
|
|
p18: p1[7],
|
|
p19: p1[8],
|
|
|
|
p21: p2[0],
|
|
p22: p2[1],
|
|
|
|
p31: p3[0],
|
|
p32: p3[1],
|
|
p33: p3[2],
|
|
|
|
csengetessel: p4[0],
|
|
villamosmukodtetessel: p4[1],
|
|
nyomatasprimer: p4[2],
|
|
nyomatasszekunder: p4[3],
|
|
p51: p5[0],
|
|
p61: p6[0],
|
|
|
|
p81: p8[0],
|
|
p82: p8[1],
|
|
p83: p8[2],
|
|
p84: p8[3],
|
|
p85: p8[4],
|
|
p86: p8[5],
|
|
});
|
|
|
|
try {
|
|
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
|
|
console.log('Generálás kész!');
|
|
doc.render();
|
|
|
|
}
|
|
catch (error) {
|
|
var e = {
|
|
message: error.message,
|
|
name: error.name,
|
|
stack: error.stack,
|
|
properties: error.properties,
|
|
}
|
|
console.log(JSON.stringify({error: e}));
|
|
// The error thrown here contains additional information when logged with JSON.stringify (it contains a property object).
|
|
throw error;
|
|
}
|
|
|
|
var buf = doc.getZip()
|
|
.generate({type: 'nodebuffer'});
|
|
logging.logAppend("Jegyzőkönyv módosítva.",req.user,kofmb.id,KifCert.db.name,'CERTEDIT');
|
|
fs.writeFileSync(__dirname+'/../docs/kofmerolap.docx', buf);
|
|
//req.flash('success','Berendezés sikeresen hozzáadva');
|
|
res.download(path.normalize(__dirname+'/../docs/kofmerolap.docx'),'kof_MC_mérőlap.docx');
|
|
});
|
|
}
|
|
|
|
});
|
|
|
|
router.post('/kofkkupdate/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
req.checkBody('jkvtitle','Jegyzőkönyv megnevezése kötelező!').notEmpty();
|
|
req.checkBody('megnevezes','Megnevezés kötelező!').notEmpty();
|
|
req.checkBody('mennyiseg','Mennyiség megadása kötelező!').notEmpty();
|
|
req.checkBody('gyartasiszam','Berendezés gyártási szám kötelező!').notEmpty();
|
|
req.checkBody('rajzszam','Berendezés jel megadása kötelező!').notEmpty();
|
|
req.checkBody('vedettseg','Védettség megadása kötelező!').notEmpty();
|
|
req.checkBody('tipus','Védettség megadása kötelező!').notEmpty();
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
if(errors)
|
|
{
|
|
res.render('kofcert_mc', {
|
|
title: 'Légszigetelésű mérőcella nyilatkozata',
|
|
errors:errors,
|
|
vjkvtitle: req.body.jkvtitle,
|
|
vmegnevezes: req.body.megnevezes,
|
|
vmennyiseg: req.body.mennyiseg,
|
|
vgyartasiszam: req.body.gyartasiszam,
|
|
vmunkaszam: kofmb.munkaszam,
|
|
vrajzszam: req.body.rajzszam,
|
|
vedettseg: req.body.vedettseg,
|
|
tipus: req.body.tipus
|
|
});
|
|
|
|
} else {
|
|
console.log('Generálás!');
|
|
var dt = new Date();
|
|
var bornDate= dt.toISOString().replace(/T/, ' ').replace(/\..+/, '');
|
|
let query = {_id:req.params.id}
|
|
console.log('Update!'+req.params.id);
|
|
// CERT
|
|
var kofmb = bodyToModelUpdate(req);
|
|
|
|
KifCert.update(query, kofmb, function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
console.log('Jegyzőkönyv Módosítva! ');
|
|
}
|
|
});
|
|
|
|
var deviceDate= new Date().toISOString().replace(/-/g, '.').substring(0,10);
|
|
var JSZip = require('jszip');
|
|
var Docxtemplater = require('docxtemplater');
|
|
|
|
var fs = require('fs');
|
|
var path = require('path');
|
|
|
|
//Load the docx file as a binary
|
|
var content = fs
|
|
.readFileSync(__dirname+'/../docs/templates/kof/mc/kof_mc_kktemplate.docx', 'binary');
|
|
|
|
var zip = new JSZip(content);
|
|
|
|
var doc = new Docxtemplater();
|
|
doc.loadZip(zip);
|
|
var year=new Date().getFullYear();
|
|
KifCert.findById(req.params.id, function(err,kofmb){
|
|
//set the templateVariables
|
|
doc.setData({
|
|
tipus: kofmb.tipus,
|
|
author: kofmb.author,
|
|
datum: deviceDate,
|
|
});
|
|
|
|
try {
|
|
// render the document (replace all occurences of {first_name} by John, {last_name} by Doe, ...)
|
|
console.log('Generálás kész!');
|
|
doc.render();
|
|
|
|
}
|
|
catch (error) {
|
|
var e = {
|
|
message: error.message,
|
|
name: error.name,
|
|
stack: error.stack,
|
|
properties: error.properties,
|
|
}
|
|
console.log(JSON.stringify({error: e}));
|
|
// The error thrown here contains additional information when logged with JSON.stringify (it contains a property object).
|
|
throw error;
|
|
}
|
|
|
|
var buf = doc.getZip()
|
|
.generate({type: 'nodebuffer'});
|
|
logging.logAppend("Jegyzőkönyv módosítva.",req.user,kofmb.id,KifCert.db.name,'CERTEDIT');
|
|
fs.writeFileSync(__dirname+'/../docs/kofkezelesi.docx', buf);
|
|
//req.flash('success','Berendezés sikeresen hozzáadva');
|
|
res.download(path.normalize(__dirname+'/../docs/kofkezelesi.docx'),'kof_MC_kezelési_karbantartási.docx');
|
|
});
|
|
}
|
|
|
|
});
|
|
// Új Kof jegyzőkönyv
|
|
router.post('/kofgen/:id', utils.ensureAuthenticated,function (req,res) {
|
|
|
|
req.checkBody('megnevezes','Megnevezés kötelező!').notEmpty();
|
|
req.checkBody('mennyiseg','Mennyiség megadása kötelező!').notEmpty();
|
|
req.checkBody('gyartasiszam','Berendezés gyártási szám kötelező!').notEmpty();
|
|
req.checkBody('rajzszam','Berendezés jel megadása kötelező!').notEmpty();
|
|
req.checkBody('vedettseg','Védettség megadása kötelező!').notEmpty();
|
|
req.checkBody('tipus','Védettség megadása kötelező!').notEmpty();
|
|
// Get errors
|
|
let errors = req.validationErrors();
|
|
|
|
if(errors)
|
|
{
|
|
res.render('kofcert_mc', {
|
|
title: 'Légszigetelésű mérőcella nyilatkozata',
|
|
errors:errors,
|
|
vmegnevezes: req.body.megnevezes,
|
|
vmennyiseg: req.body.mennyiseg,
|
|
vmunkaszam: req.body.munkaszam,
|
|
vgyartasiszam: req.body.gyartasiszam,
|
|
vrajzszam: req.body.rajzszam,
|
|
vedettseg: req.body.vedettseg,
|
|
tipus: req.body.tipus
|
|
});
|
|
|
|
} else {
|
|
console.log('Generálás!');
|
|
var dt = new Date();
|
|
var bornDate= dt.toISOString().replace(/T/, ' ').replace(/\..+/, '');
|
|
|
|
console.log('Generálás!'+req.params.id);
|
|
// CERT
|
|
var kofmb = bodyToModelNew(req);
|
|
//let cert=new KifCert();
|
|
kofmb.bornDate=bornDate;
|
|
kofmb.author=req.user.name;
|
|
kofmb.feszEgyseg='kV';
|
|
kofmb.certType='KOFMC';
|
|
kofmb.save(function(err){
|
|
if(err){
|
|
console.log(err);
|
|
return;
|
|
}else{
|
|
logging.logAppend("Jegyzőkönyv létrehozva.",req.user,kofmb.id,KifCert.db.name,'CERTADD');
|
|
console.log('Jegyzőkönyv sikeresen létrehozva! ');
|
|
req.flash('success','Jegyzőkönyv sikeresen létrehozva.');
|
|
res.redirect('/certificates_mc/kofcert/'+kofmb.id);
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
});
|
|
module.exports = router; |