Merge branch 'master' of https://github.com/devcode-it/openstamanager
This commit is contained in:
commit
7cdb7defaf
|
@ -45,6 +45,8 @@ if (empty($_GET['visualizza_allegati'])) {
|
||||||
//Controllo i permessi dei modulo per la visualizzazione degli allegati
|
//Controllo i permessi dei modulo per la visualizzazione degli allegati
|
||||||
$rs = $dbo->table('zz_permissions')->where('idgruppo', $user->idgruppo)->get();
|
$rs = $dbo->table('zz_permissions')->where('idgruppo', $user->idgruppo)->get();
|
||||||
$permessi = [];
|
$permessi = [];
|
||||||
|
$documenti[] = 0;
|
||||||
|
|
||||||
foreach ($rs as $r) {
|
foreach ($rs as $r) {
|
||||||
$permessi[] = $r->idmodule;
|
$permessi[] = $r->idmodule;
|
||||||
}
|
}
|
||||||
|
|
|
@ -263,7 +263,7 @@ $budget = $rs[0]['budget'];
|
||||||
$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe_contratti` WHERE um='ore' AND idcontratto=".prepare($id_record));
|
$rs = $dbo->fetchArray("SELECT SUM(qta) AS totale_ore FROM `co_righe_contratti` WHERE um='ore' AND idcontratto=".prepare($id_record));
|
||||||
$totale_ore_contratto = $rs[0]['totale_ore'];
|
$totale_ore_contratto = $rs[0]['totale_ore'];
|
||||||
|
|
||||||
$diff = sum($budget, -$totale);
|
$diff = sum($budget, -$totale) - $contratto->provvigione;
|
||||||
|
|
||||||
if ($diff > 0) {
|
if ($diff > 0) {
|
||||||
$bilancio = '<span class="text-success"><big>'.moneyFormat($diff).'</big></span>';
|
$bilancio = '<span class="text-success"><big>'.moneyFormat($diff).'</big></span>';
|
||||||
|
|
|
@ -33,6 +33,7 @@ use Carbon\Carbon;
|
||||||
|
|
||||||
$anagrafica_azienda = Anagrafica::find(setting('Azienda predefinita'));
|
$anagrafica_azienda = Anagrafica::find(setting('Azienda predefinita'));
|
||||||
$stato_emessa = $dbo->selectOne('co_statidocumento', 'id', ['descrizione' => 'Emessa'])['id'];
|
$stato_emessa = $dbo->selectOne('co_statidocumento', 'id', ['descrizione' => 'Emessa'])['id'];
|
||||||
|
$is_fiscale = $dbo->selectOne('zz_segments', 'is_fiscale', ['id' => $_SESSION['module_'.$id_module]])['is_fiscale'];
|
||||||
|
|
||||||
switch (post('op')) {
|
switch (post('op')) {
|
||||||
case 'export-bulk':
|
case 'export-bulk':
|
||||||
|
@ -569,6 +570,35 @@ switch (post('op')) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'cambia-sezionale':
|
||||||
|
$count = 0;
|
||||||
|
$n_doc = 0;
|
||||||
|
|
||||||
|
foreach ($id_records as $id) {
|
||||||
|
$documento = Fattura::find($id);
|
||||||
|
++ $count;
|
||||||
|
|
||||||
|
if($documento->stato->descrizione == 'Bozza') {
|
||||||
|
$documento->id_segment = post('id_segment');
|
||||||
|
$documento->save();
|
||||||
|
++ $n_doc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($n_doc > 0) {
|
||||||
|
flash()->info(tr('_NUM_ fatture spostate', [
|
||||||
|
'_NUM_' => $n_doc,
|
||||||
|
]));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (($count - $n_doc) > 0) {
|
||||||
|
flash()->warning(tr('_NUM_ fatture non sono state spostate perchè non sono in stato "Bozza".', [
|
||||||
|
'_NUM_' => $count - $n_doc,
|
||||||
|
]));
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (App::debug()) {
|
if (App::debug()) {
|
||||||
|
@ -697,6 +727,19 @@ if ($dir == 'entrata') {
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$operations['cambia-sezionale'] = [
|
||||||
|
'text' => '<span><i class="fa fa-tags"></i> '.tr('Cambia sezionale'),
|
||||||
|
'data' => [
|
||||||
|
'title' => tr('Cambia sezionale'),
|
||||||
|
'msg' => tr('Scegli il sezionale _TIPOLOGIA_ in cui spostare le fatture in stato "Bozza" selezionate', [
|
||||||
|
'_TIPOLOGIA_' => $is_fiscale ? tr('fiscale') : tr('non fiscale'),
|
||||||
|
]).':<br><br>{[ "type": "select", "label": "'.tr('Sezionale').'", "name": "id_segment", "required": 1, "ajax-source": "segmenti", "select-options": '.json_encode(["id_module" => $id_module, 'is_sezionale' => 1, 'is_fiscale' => $is_fiscale, 'escludi_id' => $_SESSION['module_'.$id_module]['id_segment']]).', "select-options-escape": true ]}',
|
||||||
|
'button' => tr('Procedi'),
|
||||||
|
'class' => 'btn btn-lg btn-warning',
|
||||||
|
'blank' => false,
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
if (Interaction::isEnabled()) {
|
if (Interaction::isEnabled()) {
|
||||||
$operations['hook-send'] = [
|
$operations['hook-send'] = [
|
||||||
'text' => '<span><i class="fa fa-paper-plane"></i> '.tr('Coda di invio FE').'</span>',
|
'text' => '<span><i class="fa fa-paper-plane"></i> '.tr('Coda di invio FE').'</span>',
|
||||||
|
|
|
@ -123,7 +123,7 @@ $totale_avere = 0;
|
||||||
|
|
||||||
// Elenco per documenti
|
// Elenco per documenti
|
||||||
$scadenze = $movimenti
|
$scadenze = $movimenti
|
||||||
->where('iddocumento', '<>', '')
|
->where('iddocumento', '<>', 0)
|
||||||
->groupBy('iddocumento');
|
->groupBy('iddocumento');
|
||||||
foreach ($scadenze as $id_documento => $righe) {
|
foreach ($scadenze as $id_documento => $righe) {
|
||||||
$documento = Fattura::find($id_documento);
|
$documento = Fattura::find($id_documento);
|
||||||
|
@ -137,8 +137,8 @@ foreach ($scadenze as $id_documento => $righe) {
|
||||||
|
|
||||||
// Elenco per scadenze
|
// Elenco per scadenze
|
||||||
$scadenze = $movimenti
|
$scadenze = $movimenti
|
||||||
->where('iddocumento', '=', '')
|
->where('iddocumento', '=', 0)
|
||||||
->where('id_scadenza', '<>', '')
|
->where('id_scadenza', '<>', 0)
|
||||||
->groupBy('id_scadenza');
|
->groupBy('id_scadenza');
|
||||||
foreach ($scadenze as $id_scadenza => $righe) {
|
foreach ($scadenze as $id_scadenza => $righe) {
|
||||||
$nome = tr('Scadenza num. _ID_', [
|
$nome = tr('Scadenza num. _ID_', [
|
||||||
|
@ -150,8 +150,8 @@ foreach ($scadenze as $id_scadenza => $righe) {
|
||||||
|
|
||||||
// Elenco generale
|
// Elenco generale
|
||||||
$movimenti_generali = $movimenti
|
$movimenti_generali = $movimenti
|
||||||
->where('iddocumento', '=', '0')
|
->where('iddocumento', '=', 0)
|
||||||
->where('id_scadenza', '=', '');
|
->where('id_scadenza', '=', 0);
|
||||||
if ($movimenti_generali->isEmpty()) {
|
if ($movimenti_generali->isEmpty()) {
|
||||||
$movimenti_generali->push([]);
|
$movimenti_generali->push([]);
|
||||||
$movimenti_generali->push([]);
|
$movimenti_generali->push([]);
|
||||||
|
|
|
@ -25,6 +25,7 @@ switch ($resource) {
|
||||||
$id_module = $superselect['id_module'];
|
$id_module = $superselect['id_module'];
|
||||||
$is_fiscale = $superselect['is_fiscale'];
|
$is_fiscale = $superselect['is_fiscale'];
|
||||||
$is_sezionale = $superselect['is_sezionale'];
|
$is_sezionale = $superselect['is_sezionale'];
|
||||||
|
$escludi_id = $superselect['escludi_id'];
|
||||||
|
|
||||||
if (isset($id_module)) {
|
if (isset($id_module)) {
|
||||||
$query = 'SELECT `id`, `name` AS descrizione FROM zz_segments INNER JOIN `zz_group_segment` ON `zz_segments`.`id` = `zz_group_segment`.`id_segment` |where| ORDER BY `name` ASC';
|
$query = 'SELECT `id`, `name` AS descrizione FROM zz_segments INNER JOIN `zz_group_segment` ON `zz_segments`.`id` = `zz_group_segment`.`id_segment` |where| ORDER BY `name` ASC';
|
||||||
|
@ -40,6 +41,10 @@ switch ($resource) {
|
||||||
$where[] = 'zz_segments.is_sezionale = '.prepare($is_sezionale);
|
$where[] = 'zz_segments.is_sezionale = '.prepare($is_sezionale);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($escludi_id != null) {
|
||||||
|
$where[] = 'zz_segments.id != '.prepare($escludi_id);
|
||||||
|
}
|
||||||
|
|
||||||
foreach ($elements as $element) {
|
foreach ($elements as $element) {
|
||||||
$filter[] = 'id='.prepare($element);
|
$filter[] = 'id='.prepare($element);
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,3 +16,7 @@ UPDATE `zz_settings` SET `help` = "Valore espresso in Giga superato il quale vie
|
||||||
DELETE FROM `zz_settings` WHERE `zz_settings`.`nome` = 'Google Maps API key';
|
DELETE FROM `zz_settings` WHERE `zz_settings`.`nome` = 'Google Maps API key';
|
||||||
|
|
||||||
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Tile server OpenStreetMap', 'https://{s}.tile.openstreetmap.de/{z}/{x}/{y}.png', 'string', '1', 'Generali', NULL, NULL);
|
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `order`, `help`) VALUES (NULL, 'Tile server OpenStreetMap', 'https://{s}.tile.openstreetmap.de/{z}/{x}/{y}.png', 'string', '1', 'Generali', NULL, NULL);
|
||||||
|
|
||||||
|
-- Nuova colonna Giorni scadenza in Scadenzario
|
||||||
|
INSERT INTO `zz_views` (`id_module`, `name`, `query`, `order`, `search`, `slow`, `format`, `html_format`, `search_inside`, `order_by`, `visible`, `summable`, `default`) VALUES
|
||||||
|
((SELECT `id` FROM `zz_modules` WHERE name='Scadenzario'), 'Scadenza giorni', 'DATEDIFF(co_scadenziario.scadenza,NOW())', 19, 1, 0, 0, 0, '', '', 1, 0, 0);
|
Loading…
Reference in New Issue