mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-16 19:40:44 +01:00
Merge branch 'master' of https://github.com/devcode-it/openstamanager
This commit is contained in:
commit
037bf9e089
@ -66,6 +66,7 @@ Il formato utilizzato è basato sulle linee guida di [Keep a Changelog](http://k
|
||||
- Aggiunto il supporto ai valori multipli nelle impostazioni
|
||||
- Aggiunta colonna Anagrafica in Movimenti
|
||||
- Aggiunto codice fornitore in ordini cliente
|
||||
- Aggiunta selezione periodo nelle stampe contabili
|
||||
### Modificato(Changed)
|
||||
- Miglioria per velocizzazione apertura DDT
|
||||
- Migliorie modulo Causali
|
||||
|
@ -19,29 +19,63 @@
|
||||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Carbon\Carbon;
|
||||
|
||||
// Trovo id_print della stampa
|
||||
$link = Prints::getHref('Scadenzario', null);
|
||||
|
||||
$year = (new Carbon($_SESSION['period_end']))->format('Y');
|
||||
$periodi[] = [
|
||||
'id' => 'manuale',
|
||||
'text' => tr('Manuale'),
|
||||
];
|
||||
|
||||
$month_start = 1;
|
||||
$month_end = 3;
|
||||
for ($i=1; $i<=4; $i++) {
|
||||
$periodi[] = [
|
||||
'id' => ''.$i.'_trimestre',
|
||||
'text' => tr('_NUM_° Trimestre _YEAR_', ['_NUM_' => $i, '_YEAR_' => $year]),
|
||||
'date_start' => $year.','.$month_start.',01',
|
||||
'date_end' => $year.','.$month_end.','.(new Carbon($year.'-'.$month_end.'-01'))->endOfMonth()->format('d'),
|
||||
];
|
||||
$month_start += 3;
|
||||
$month_end += 3;
|
||||
}
|
||||
|
||||
for ($i=1; $i<=12; $i++) {
|
||||
$month = (new Carbon($year.'-'.$i.'-01'))->locale('it')->getTranslatedMonthName('IT MMMM');
|
||||
$periodi[] = [
|
||||
'id' => ''.$i.'_mese',
|
||||
'text' => tr('_MONTH_ _YEAR_', ['_MONTH_' => $month, '_YEAR_' => $year]),
|
||||
'date_start' => $year.','.$i.',01',
|
||||
'date_end' => $year.','.$i.','.(new Carbon($year.'-'.$i.'-01'))->endOfMonth()->format('d'),
|
||||
];
|
||||
}
|
||||
|
||||
echo '
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
{[ "type": "date", "label": "'.tr('Data inizio').'", "name": "data_inizio", "value": "" ]}
|
||||
{[ "type": "date", "label": "'.tr('Data inizio').'", "name": "date_start", "value": "'.$_SESSION['period_start'].'" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
{[ "type": "date", "label": "'.tr('Data fine').'", "name": "data_fine", "value": "" ]}
|
||||
{[ "type": "date", "label": "'.tr('Data fine').'", "name": "date_end", "value": "'.$_SESSION['period_end'].'" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
{[ "type": "checkbox", "label": "'.tr('Includi scadenze pagate').'", "name": "is_pagata" ]}
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Periodo').'", "name": "periodo", "required": "1", "values": '.json_encode($periodi).', "value": "manuale" ]}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "'.tr('Includi scadenze pagate').'", "name": "is_pagata" ]}
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "'.tr('Includi solo Ri.Ba').'", "name": "is_riba" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "'.tr('Includi solo scadenze Clienti').'", "name": "is_cliente" ]}
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="col-md-3">
|
||||
{[ "type": "checkbox", "label": "'.tr('Includi solo scadenze Fornitori').'", "name": "is_fornitore" ]}
|
||||
</div>
|
||||
</div>
|
||||
@ -58,15 +92,17 @@ echo '
|
||||
|
||||
echo '
|
||||
<script>
|
||||
$(document).ready(init);
|
||||
|
||||
function avvia_stampa (){
|
||||
var data_inizio = $("#data_inizio").val();
|
||||
var data_fine = $("#data_fine").val();
|
||||
var date_start = $("#date_start").val();
|
||||
var date_end = $("#date_end").val();
|
||||
var is_pagata = $("#is_pagata").is(":checked");
|
||||
var is_riba = $("#is_riba").is(":checked");
|
||||
var is_cliente = $("#is_cliente").is(":checked");
|
||||
var is_fornitore = $("#is_fornitore").is(":checked");
|
||||
|
||||
window.open("'.$link.'&data_inizio="+data_inizio+"&data_fine="+data_fine+"&is_pagata="+is_pagata+"&is_riba="+is_riba+"&is_cliente="+is_cliente+"&is_fornitore="+is_fornitore, "_blank");
|
||||
window.open("'.$link.'&date_start="+date_start+"&date_end="+date_end+"&is_pagata="+is_pagata+"&is_riba="+is_riba+"&is_cliente="+is_cliente+"&is_fornitore="+is_fornitore, "_blank");
|
||||
}
|
||||
|
||||
$("#is_cliente").change(function() {
|
||||
@ -80,4 +116,17 @@ echo '
|
||||
$("#is_cliente").prop("checked", false);
|
||||
}
|
||||
});
|
||||
|
||||
$("#periodo").change(function() {
|
||||
if ($(this).val()=="manuale") {
|
||||
input("date_start").enable();
|
||||
input("date_end").enable();
|
||||
} else {
|
||||
$("#date_start").data("DateTimePicker").date(new Date(input("periodo").getData().date_start));
|
||||
$("#date_end").data("DateTimePicker").date(new Date(input("periodo").getData().date_end));
|
||||
input("date_start").disable();
|
||||
input("date_end").disable();
|
||||
}
|
||||
eseguiControlli();
|
||||
});
|
||||
</script>';
|
@ -20,6 +20,7 @@
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Models\Module;
|
||||
use Carbon\Carbon;
|
||||
|
||||
$id_record = filter('id_record');
|
||||
$dir = filter('dir');
|
||||
@ -27,6 +28,36 @@ $nome_stampa = filter('nome_stampa');
|
||||
$id_print = $dbo->fetchOne('SELECT id FROM zz_prints WHERE name='.prepare($nome_stampa))['id'];
|
||||
$id_module = Module::pool('Stampe contabili')->id;
|
||||
|
||||
$year = (new Carbon($_SESSION['period_end']))->format('Y');
|
||||
$periodi[] = [
|
||||
'id' => 'manuale',
|
||||
'text' => tr('Manuale'),
|
||||
];
|
||||
|
||||
$month_start = 1;
|
||||
$month_end = 3;
|
||||
for ($i=1; $i<=4; $i++) {
|
||||
$periodi[] = [
|
||||
'id' => ''.$i.'_trimestre',
|
||||
'text' => tr('_NUM_° Trimestre _YEAR_', ['_NUM_' => $i, '_YEAR_' => $year]),
|
||||
'date_start' => $year.','.$month_start.',01',
|
||||
'date_end' => $year.','.$month_end.','.(new Carbon($year.'-'.$month_end.'-01'))->endOfMonth()->format('d'),
|
||||
];
|
||||
$month_start += 3;
|
||||
$month_end += 3;
|
||||
}
|
||||
|
||||
for ($i=1; $i<=12; $i++) {
|
||||
$month = (new Carbon($year.'-'.$i.'-01'))->locale('it')->getTranslatedMonthName('IT MMMM');
|
||||
$periodi[] = [
|
||||
'id' => ''.$i.'_mese',
|
||||
'text' => tr('_MONTH_ _YEAR_', ['_MONTH_' => $month, '_YEAR_' => $year]),
|
||||
'date_start' => $year.','.$i.',01',
|
||||
'date_end' => $year.','.$i.','.(new Carbon($year.'-'.$i.'-01'))->endOfMonth()->format('d'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
// Trovo id_print della stampa
|
||||
$link = Prints::getHref($nome_stampa, $id_record);
|
||||
|
||||
@ -41,12 +72,6 @@ echo '
|
||||
|
||||
<form action="" method="post" id="form" >
|
||||
<div class="row">';
|
||||
if ($nome_stampa != 'Liquidazione IVA') {
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_sezionale", "required": "1", "values": "query=SELECT id AS id, name AS descrizione FROM zz_segments WHERE id_module = (SELECT id FROM zz_modules WHERE name = \''.(($dir == 'entrata') ? 'Fatture di vendita' : 'Fatture di acquisto').'\') AND is_fiscale = 1 UNION SELECT 0 AS id, \'Tutti i sezionali\' AS descrizione" ]}
|
||||
</div>';
|
||||
}
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "date", "label": "'.tr('Data inizio').'", "required": "1", "name": "date_start", "value": "'.$_SESSION['period_start'].'" ]}
|
||||
@ -56,10 +81,20 @@ echo '
|
||||
{[ "type": "date", "label": "'.tr('Data fine').'", "required": "1", "name": "date_end", "value": "'.$_SESSION['period_end'].'" ]}
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Periodo').'", "name": "periodo", "required": "1", "values": '.json_encode($periodi).', "value": "manuale" ]}
|
||||
</div>
|
||||
</div>';
|
||||
|
||||
echo '
|
||||
<div class="row">
|
||||
<div class="row">';
|
||||
if ($nome_stampa != 'Liquidazione IVA') {
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_sezionale", "required": "1", "values": "query=SELECT id AS id, name AS descrizione FROM zz_segments WHERE id_module = (SELECT id FROM zz_modules WHERE name = \''.(($dir == 'entrata') ? 'Fatture di vendita' : 'Fatture di acquisto').'\') AND is_fiscale = 1 UNION SELECT 0 AS id, \'Tutti i sezionali\' AS descrizione" ]}
|
||||
</div>';
|
||||
}
|
||||
echo '
|
||||
<div class="col-md-4">
|
||||
{[ "type": "select", "label": "'.tr('Formato').'", "name": "format", "required": "1", "values": "list=\"A4\": \"'.tr('A4').'\", \"A3\": \"'.tr('A3').'\"", "value": "'.$_SESSION['stampe_contabili']['format'].'" ]}
|
||||
</div>
|
||||
@ -132,24 +167,23 @@ if ($nome_stampa != 'Liquidazione IVA') {
|
||||
|
||||
echo '
|
||||
<script>
|
||||
$(document).ready(init);
|
||||
|
||||
$(document).ready(function () {
|
||||
setTimeout(function () {
|
||||
eseguiControlli();
|
||||
}, 1000);
|
||||
});
|
||||
|
||||
$("#date_start").on("blur", function(){
|
||||
eseguiControlli();
|
||||
});
|
||||
|
||||
$("#date_start").blur(function(){
|
||||
eseguiControlli();
|
||||
});
|
||||
|
||||
$("#date_end").blur(function(){
|
||||
$("#date_end").on("blur", function(){
|
||||
eseguiControlli();
|
||||
});
|
||||
|
||||
function eseguiControlli() {
|
||||
let date_start = $("#date_start").data("DateTimePicker").date().format("YYYY-MM-DD");
|
||||
let date_end = $("#date_end").data("DateTimePicker").date().format("YYYY-MM-DD");
|
||||
|
||||
controllaDate(date_start, date_end);
|
||||
}
|
||||
|
||||
@ -222,6 +256,8 @@ if ($nome_stampa != 'Liquidazione IVA') {
|
||||
|
||||
echo '
|
||||
<script>
|
||||
$(document).ready(init);
|
||||
|
||||
function avvia_stampa (){
|
||||
if ($("#definitiva").is(":checked")) {
|
||||
let date_start = $("#date_start").data("DateTimePicker").date().format("YYYY-MM-DD");
|
||||
@ -258,4 +294,17 @@ echo '
|
||||
$("#orientation").change(function() {
|
||||
session_set("stampe_contabili,orientation", $(this).val(), 0, 0);
|
||||
});
|
||||
|
||||
$("#periodo").change(function() {
|
||||
if ($(this).val()=="manuale") {
|
||||
input("date_start").enable();
|
||||
input("date_end").enable();
|
||||
} else {
|
||||
$("#date_start").data("DateTimePicker").date(new Date(input("periodo").getData().date_start));
|
||||
$("#date_end").data("DateTimePicker").date(new Date(input("periodo").getData().date_end));
|
||||
input("date_start").disable();
|
||||
input("date_end").disable();
|
||||
}
|
||||
eseguiControlli();
|
||||
});
|
||||
</script>';
|
||||
|
@ -29,16 +29,16 @@ $total = Util\Query::readQuery($module);
|
||||
// Lettura parametri modulo
|
||||
$module_query = $total['query'];
|
||||
|
||||
if(!empty(get('data_inizio'))){
|
||||
$module_query = str_replace('1=1', '1=1 AND DATE_FORMAT(`data`, "%Y%m%d") >= "'.date('Ymd', strtotime(get('data_inizio'))).'"', $module_query);
|
||||
if(!empty(get('date_start'))){
|
||||
$module_query = str_replace('1=1', '1=1 AND DATE_FORMAT(`data`, "%Y%m%d") >= "'.date('Ymd', strtotime(get('date_start'))).'"', $module_query);
|
||||
|
||||
$date_start = get('data_inizio');
|
||||
$date_start = get('date_start');
|
||||
}
|
||||
|
||||
if(!empty(get('data_fine'))){
|
||||
$module_query = str_replace('1=1', '1=1 AND DATE_FORMAT(`data`, "%Y%m%d") <= "'.date('Ymd', strtotime(get('data_fine'))).'"', $module_query);
|
||||
if(!empty(get('date_end'))){
|
||||
$module_query = str_replace('1=1', '1=1 AND DATE_FORMAT(`data`, "%Y%m%d") <= "'.date('Ymd', strtotime(get('date_end'))).'"', $module_query);
|
||||
|
||||
$date_start = get('data_inizio');
|
||||
$date_end = get('date_end');
|
||||
}
|
||||
|
||||
if(get('is_pagata')=='false'){
|
||||
|
Loading…
x
Reference in New Issue
Block a user