Árajánlat elkezdve
This commit is contained in:
parent
49aa293794
commit
ffa0dac861
2
app.js
2
app.js
|
|
@ -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){
|
||||
|
|
|
|||
|
|
@ -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":":"}}},
|
||||
|
|
@ -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);
|
||||
|
|
@ -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;
|
||||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
Loading…
Reference in New Issue