Árajánlat elkezdve

This commit is contained in:
Vincze József 2024-07-17 11:30:56 +02:00
parent 49aa293794
commit ffa0dac861
6 changed files with 205 additions and 3 deletions

2
app.js
View File

@ -1867,6 +1867,7 @@ let components=require('./routes/components');
let components_base=require('./routes/components_base');
let bid=require('./routes/bid');
let vehicles=require('./routes/vehicles');
let quotes=require('./routes/quotes');
const { date } = require('jszip/lib/defaults');
const { apiGetWorkList, apiGetEmployeeList, apiGetDailyReport, apiEmployee, apiGetAllReport, apiCheckDevice, apiRegisterDevice,apiRequestAPIkey, apiGetQRCode,apiGetWorkState } = require('./js/androidApi');
@ -1890,6 +1891,7 @@ app.use('/certificates_tr',certificates_tr);
app.use('/certificates_mc',certificates_mc);
app.use('/components',components);
app.use('/components_base',components_base);
app.use('/quotes',quotes);
//apkUpdater.enable(app, '/anyUpdateServerRoute');
/*
app.delete('/devices/:id',utils.ensureAuthenticated,function(req,res){

16
deviceLog_2024_07_04.txt Normal file
View File

@ -0,0 +1,16 @@
{"LOG":{"timeStamp":"2024.07.04 05:07:72","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Czifra József","message":"TÁVOZÁS","city":"Debrecen,Füredi út 12","worktime":"05:59","datetime":"5:59"}}},
{"LOG":{"timeStamp":"2024.07.04 05:07:14","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Czifra József","message":"ÉRKEZÉS","city":"Debrecen,Egyetem sugárút 27","worktime":"","datetime":"5:59"}}},
{"LOG":{"timeStamp":"2024.07.04 05:07:10","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Szabó Attila","message":"ÉRKEZÉS","city":"Debrecen,Egyetem sugárút 27","worktime":"","datetime":"5:59"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:92","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Győri Mihály","message":"ÉRKEZÉS","city":"Szentpéterszeg,Köztársaság utca ","worktime":"","datetime":"6:30"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:61","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Nagy István","message":"ÉRKEZÉS","city":"Szentpéterszeg,Köztársaság utca ","worktime":"","datetime":"6:30"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:55","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Jakab Tamás","message":"ÉRKEZÉS","city":"Debrecen, Senyei-Oláh István utca, 1","worktime":"","datetime":"6:39"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:94","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Iván Imre","message":"ÉRKEZÉS","city":"Nyíregyháza, , ","worktime":"","datetime":"6:46"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:18","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Horváth Dávid","message":"ÉRKEZÉS","city":"Nyíregyháza, , ","worktime":"","datetime":"6:48"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:84","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Veres Miklós","message":"ÉRKEZÉS","city":"Nyíregyháza, , ","worktime":"","datetime":"6:48"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:89","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Budai Alex","message":"ÉRKEZÉS","city":"Nyíregyháza, , ","worktime":"","datetime":"6:48"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:34","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Fige István","message":"ÉRKEZÉS","city":"Nyíregyháza, , ","worktime":"","datetime":"6:48"}}},
{"LOG":{"timeStamp":"2024.07.04 06:07:52","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Balogh Ferenc","message":"ÉRKEZÉS","city":"Szolnok,Piroskai út ","worktime":"","datetime":"6:50"}}},
{"LOG":{"timeStamp":"2024.07.04 07:07:44","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Dobos Attila","message":"ÉRKEZÉS","city":"Berettyóújfalu, Honvéd utca, 13","worktime":"","datetime":"7:09"}}},
{"LOG":{"timeStamp":"2024.07.04 07:07:22","logName":"ACCESS","logMessage":{"status":200,"data":"VALID CODE","employeeName":"Vincze József","message":"ÉRKEZÉS","city":"Szentpéterszeg, József Attila utca, 9","worktime":"","datetime":"7:22"}}},
{"LOG":{"timeStamp":"2024.07.04 09:07:20","logName":"INVALID DEVICE","logMessage":{"cmd":"ACCESS","mode":"GETAWAY","rfid":"A0BE50FD","CID1":"8944477500005305853F","CID2":"862261047473462","loc":"Ismeretlen","LAT":":","LON":":"}}},
{"LOG":{"timeStamp":"2024.07.04 09:07:98","logName":"INVALID DEVICE","logMessage":{"cmd":"ACCESS","mode":"GETAWAY","rfid":"A0BE50FD","CID1":"8944477500005305853F","CID2":"862261047473462","loc":"Ismeretlen","LAT":":","LON":":"}}},

33
models/quotemodel.js Normal file
View File

@ -0,0 +1,33 @@
let mongoose = require('mongoose');
// Quote Schema
let quoteSchema = mongoose.Schema({
// Megnevezés
title:{
type: String,
require: true
},
date:{
type: Date,
require: true
},
// Létrehozó
author:{
type: String,
require: true
},
customer:{
type:String,
require: true
},
// Megjegyzés
body:{
type: String,
require: true
},
filePath:{
type: String,
require: true
},
});
var Quote = module.exports = mongoose.model('Quote', quoteSchema);

28
routes/quotes.js Normal file
View File

@ -0,0 +1,28 @@
const express = require('express');
const router = express.Router();
var utils = require('../js/utils');
var fse = require('fs-extra');
var Promise = require('bluebird');
// Bring in article module
let Quote = require('../models/quotemodel');
// Quotes Route
router.get('/', utils.ensureAuthenticated, function(req, res) {
Quote.find({},null,{sort: {date: -1}} ,function(err, quotes){
if (err)
{
console.log(err);
}
else {
res.render('quotes', {
title: 'Árajánlatok',
quotes: quotes,
rot: req.user.isAdmin,
});
} //else
});
});
module.exports = router;

View File

@ -21,7 +21,7 @@ html
nav.navbar.navbar-inverse
if (user)
p.navbar-text Bejelentkezve mint #{user.name}
.container
//-.container
.navbar-header
button.navbar-toggle.collapsed(type='button', data-toggle='collapse', data-target='#navbar', aria-expanded='false', aria-controls='navbar')
span.sr-only Toggle navigation
@ -36,8 +36,8 @@ html
if user
li.active
a(href='/') Munkák
-//li
-//a(href='/gantt') GANTT
li
a(href='/quotes') Árajánlatok
li
a(href='/devices') Berendezések
-//li

123
views/quotes.pug Normal file
View File

@ -0,0 +1,123 @@
extends layout
block content
.mainContainer
link(rel='stylesheet' href='/bower_components/bootstrap/dist/css/bootstrap.css')
link(rel='stylesheet' href='/bower_components/bootstrap-select/dist/css/bootstrap-select.css')
link(rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css')
link(rel='stylesheet', type='text/css', href='https://unpkg.com/lightpick@latest/css/lightpick.css')
style.
.badge-success {
background-color: #468847;
}
.badge-success:hover {
background-color: #356635;
}
.padFix{
padding-top:8px;
}
.table-wrapper {
max-height: 600px;
overflow: auto;
display:inline-block;
}
body
br
.panel.panel-primary
.panel-heading
.row
.col-sm-1
h3.panel-title.padfix #{title}
//-span.badge #{quotes.length}
.col-sm-3
button.btn.btn-success(type='text' id='newQuote' ) Új árajánlat
i.glyphicon.glyphicon-upload
.col-sm-6
.input-group
input.form-control(type='text' id='findWork' value='' placeholder="Keresés...")
.input-group-btn
button.btn.btn-success
i.glyphicon.glyphicon-search
.panel-body
h2#results
.col-12.col-xs-12.col-sm-12.col-lg-12
.table-responsive.table-wrapper
table.table.table-striped
col(width='1%')
col(width='1%')
col(width='auto')
col(width='15%')
col(width='5%')
thead
tr
th #
th(style='text-align:left') Megrendelő
th Megnevezés
th(style='text-align:center') Létrehozva
th(style='text-align:center') Készítő
tbody(id='quoteTable',style='overflow-y: auto;')
each quote, i in quotes
tr
td #{i+1}
td(style='text-align:left; vertical-align:middle;font-size: 9px;font-weight: bold;') #{quote.customer || "-"}
td(style='vertical-align:middle')
a(href="/quote/"+quote._id)= quote.title
td(style='text-align:center;vertical-align:middle') #{quote.date}
td(style='text-align:left;vertical-align:middle') #{quote.author}
script(src='/bower_components/jquery/dist/jquery.js')
script(type='text/javascript',src='/build/pdfmake.js')
script(type='text/javascript',src='/build/vfs_fonts.js')
script(type='text/javascript', src='/bower_components/moment/min/moment.min.js')
script(type='text/javascript', src='/bower_components/bootstrap-select/dist/js/bootstrap-select.min.js')
script(src='https://unpkg.com/lightpick@latest/lightpick.js')
script.
(() => {
'use strict'
// Fetch all the forms we want to apply custom Bootstrap validation styles to
const forms = document.querySelectorAll('.needs-validation')
// Loop over them and prevent submission
Array.from(forms).forEach(form => {
form.addEventListener('submit', event => {
if (!form.checkValidity()) {
event.preventDefault()
event.stopPropagation()
}
form.classList.add('was-validated')
}, false)
})
})()
var showErrorSuccess = function(element, status, message) {
if (status === false) {
element.next().removeClass('hidden')//.parent().addClass('has-error');
element.parent().addClass('has-error');
element.parent().next().text(message)
return false;
}
element.next().addClass('hidden')//.parent().removeClass('has-error').addClass('has-success');
element.parent().removeClass('has-error');
};
$(function(){
$("[data-toggle='tooltip']").tooltip();
$("#findWork").on("keyup", function() {
var yr=$("#dpd").val();
var cond=$(this).val();
var parameters = { year: yr, condition: cond };
console.log(parameters);
$.get( '/filter',parameters, function(data) {
var wTable=document.getElementById("workTable");
wTable.innerHTML=data;
});
});
});