mirror of
https://github.com/devcode-it/openstamanager.git
synced 2025-02-21 14:00:53 +01:00
fix: correzioni su api applicazione
This commit is contained in:
parent
6d9a06e450
commit
69de15c397
@ -188,7 +188,9 @@ abstract class AppResource extends Resource implements RetrieveInterface, Create
|
|||||||
protected function mapModifiedRecords($records)
|
protected function mapModifiedRecords($records)
|
||||||
{
|
{
|
||||||
if ($records instanceof Collection) {
|
if ($records instanceof Collection) {
|
||||||
return $records->mapToGroups(fn ($item, $key) => [$item['id'] => $item])->toArray();
|
return $records->mapWithKeys(function ($item) {
|
||||||
|
return [$item['id'] => $item];
|
||||||
|
})->toArray();
|
||||||
}
|
}
|
||||||
|
|
||||||
return array_reduce($records, function ($accumulator, $item) {
|
return array_reduce($records, function ($accumulator, $item) {
|
||||||
|
@ -60,10 +60,10 @@ class Articoli extends AppResource
|
|||||||
FROM
|
FROM
|
||||||
`mg_articoli`
|
`mg_articoli`
|
||||||
LEFT JOIN `mg_articoli_lang` ON (`mg_articoli`.`id` = `mg_articoli_lang`.`id_record` AND `mg_articoli_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).')
|
LEFT JOIN `mg_articoli_lang` ON (`mg_articoli`.`id` = `mg_articoli_lang`.`id_record` AND `mg_articoli_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).')
|
||||||
LEFT JOIN `mg_categorie` as categoria ON (`mg_articoli`.`id_categoria` = `mg_categorie`.`id`)
|
LEFT JOIN `mg_categorie` as categoria ON (`mg_articoli`.`id_categoria` = `categoria`.`id`)
|
||||||
LEFT JOIN `mg_categorie_lang` as categoria_lang ON (`mg_categorie`.`id` = `mg_categorie_lang`.`id_record` AND `mg_categorie_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).')
|
LEFT JOIN `mg_categorie_lang` as categoria_lang ON (`categoria`.`id` = `categoria_lang`.`id_record` AND `categoria_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).')
|
||||||
LEFT JOIN `mg_categorie` as sottocategoria ON (`mg_articoli`.`id_sottocategoria` = `mg_categorie`.`id`)
|
LEFT JOIN `mg_categorie` as sottocategoria ON (`mg_articoli`.`id_sottocategoria` = `sottocategoria`.`id`)
|
||||||
LEFT JOIN `mg_categorie_lang` as sottocategoria_lang ON (`mg_categorie`.`id` = `mg_categorie_lang`.`id_record` AND `mg_categorie_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).')
|
LEFT JOIN `mg_categorie_lang` as sottocategoria_lang ON (`sottocategoria`.`id` = `sottocategoria_lang`.`id_record` AND `sottocategoria_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).')
|
||||||
WHERE
|
WHERE
|
||||||
`mg_articoli`.`id` = '.prepare($id);
|
`mg_articoli`.`id` = '.prepare($id);
|
||||||
|
|
||||||
|
@ -95,11 +95,7 @@ class Checklists extends AppResource
|
|||||||
->select('zz_operations.id_record')
|
->select('zz_operations.id_record')
|
||||||
->distinct()
|
->distinct()
|
||||||
->join('zz_modules', 'zz_modules.id', '=', 'zz_operations.id_module')
|
->join('zz_modules', 'zz_modules.id', '=', 'zz_operations.id_module')
|
||||||
->leftJoin('zz_modules_lang', function ($join) {
|
->where('zz_modules.name', '=', 'Interventi')
|
||||||
$join->on('zz_modules.id', '=', 'zz_modules_lang.id_record')
|
|
||||||
->where('zz_modules_lang.id_lang', '=', \Models\Locale::getDefault()->id);
|
|
||||||
})
|
|
||||||
->where('zz_modules_lang.name', '=', 'Interventi')
|
|
||||||
->where('zz_operations.op', '=', 'delete_check')
|
->where('zz_operations.op', '=', 'delete_check')
|
||||||
->where('zz_operations.created_at', '>', $last_sync_at)
|
->where('zz_operations.created_at', '>', $last_sync_at)
|
||||||
->pluck('id_record')
|
->pluck('id_record')
|
||||||
|
@ -34,11 +34,7 @@ class Impianti extends AppResource
|
|||||||
->select('zz_operations.id_record')
|
->select('zz_operations.id_record')
|
||||||
->distinct()
|
->distinct()
|
||||||
->join('zz_modules', 'zz_modules.id', '=', 'zz_operations.id_module')
|
->join('zz_modules', 'zz_modules.id', '=', 'zz_operations.id_module')
|
||||||
->leftJoin('zz_modules_lang', function ($join) {
|
->where('zz_modules.name', '=', 'Impianti')
|
||||||
$join->on('zz_modules.id', '=', 'zz_modules_lang.id_record')
|
|
||||||
->where('zz_modules_lang.id_lang', '=', \Models\Locale::getDefault()->id);
|
|
||||||
})
|
|
||||||
->where('zz_modules_lang.name', '=', 'Impianti')
|
|
||||||
->where('zz_operations.op', '=', 'delete')
|
->where('zz_operations.op', '=', 'delete')
|
||||||
->whereNotNull('zz_operations.options')
|
->whereNotNull('zz_operations.options')
|
||||||
->where('zz_operations.created_at', '>', $last_sync_at)
|
->where('zz_operations.created_at', '>', $last_sync_at)
|
||||||
@ -77,28 +73,39 @@ class Impianti extends AppResource
|
|||||||
{
|
{
|
||||||
// Gestione della visualizzazione dei dettagli del record
|
// Gestione della visualizzazione dei dettagli del record
|
||||||
$query = 'SELECT
|
$query = 'SELECT
|
||||||
`my_impianti`.`id`,
|
`impianti`.`id`,
|
||||||
`my_impianti`.`idanagrafica` AS id_cliente,
|
`impianti`.`idanagrafica` AS id_cliente,
|
||||||
`my_impianti`.`idsede` AS id_sede,
|
`impianti`.`idsede` AS id_sede,
|
||||||
`my_impianti`.`matricola`,
|
`impianti`.`matricola`,
|
||||||
`my_impianti`.`nome`,
|
`impianti`.`nome`,
|
||||||
`my_impianti`.`descrizione`,
|
`impianti`.`descrizione`,
|
||||||
`my_impianti`.`data` AS data_installazione,
|
`impianti`.`data` AS data_installazione,
|
||||||
`my_impianti`.`proprietario`,
|
`impianti`.`proprietario`,
|
||||||
`my_impianti`.`ubicazione`,
|
`impianti`.`ubicazione`,
|
||||||
`my_impianti`.`palazzo`,
|
`impianti`.`palazzo`,
|
||||||
`my_impianti`.`scala`,
|
`impianti`.`scala`,
|
||||||
`my_impianti`.`piano`,
|
`impianti`.`piano`,
|
||||||
`my_impianti`.`interno`,
|
`impianti`.`interno`,
|
||||||
`my_impianti`.`occupante`,
|
`impianti`.`occupante`,
|
||||||
`categorie_lang`.`title` AS categoria
|
`categorie_lang`.`title` AS categoria,
|
||||||
`sottocategorie_lang`.`title` AS sottocategoria
|
`sottocategorie_lang`.`title` AS sottocategoria
|
||||||
FROM `my_impianti`
|
FROM
|
||||||
LEFT JOIN `my_impianti_categorie` ON `my_impianti_categorie`.`id` = `my_impianti`.`id_categoria`
|
my_impianti AS impianti
|
||||||
LEFT JOIN `my_impianti_categorie_lang` as categorie_lang ON (`categorie_lang`.`id_record` = `my_impianti_categorie`.`id` AND `categorie_lang`.|lang|)
|
LEFT JOIN
|
||||||
LEFT JOIN `my_impianti_categorie` as sottocategorie ON (`sottocategorie`.`id` = `my_impianti_categorie`.`id_sottocategoria`)
|
my_impianti_categorie AS categorie
|
||||||
LEFT JOIN `my_impianti_categorie_lang` as sottocategorie_lang ON (`sottocategorie_lang`.`id_record` = `sottocategorie`.`id` AND `sottocategorie_lang`.|lang|)
|
ON categorie.id = impianti.id_categoria
|
||||||
WHERE `my_impianti`.`id` = '.prepare($id);
|
LEFT JOIN
|
||||||
|
my_impianti_categorie_lang AS categorie_lang
|
||||||
|
ON categorie_lang.id_record = categorie.id
|
||||||
|
AND categorie_lang.id_lang = '.prepare(\Models\Locale::getDefault()->id).'
|
||||||
|
LEFT JOIN
|
||||||
|
my_impianti_categorie AS sottocategorie
|
||||||
|
ON sottocategorie.id = impianti.id_sottocategoria
|
||||||
|
LEFT JOIN
|
||||||
|
my_impianti_categorie_lang AS sottocategorie_lang
|
||||||
|
ON sottocategorie_lang.id_record = sottocategorie.id
|
||||||
|
AND sottocategorie_lang.id_lang = '.prepare(\Models\Locale::getDefault()->id).'
|
||||||
|
WHERE `impianti`.`id` = '.prepare($id);
|
||||||
|
|
||||||
$record = database()->fetchOne($query);
|
$record = database()->fetchOne($query);
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ class Impostazioni extends AppResource
|
|||||||
|
|
||||||
public function getModifiedRecords($last_sync_at)
|
public function getModifiedRecords($last_sync_at)
|
||||||
{
|
{
|
||||||
$query = 'SELECT `zz_settings`.`id`, `zz_settings`.`updated_at` FROM `zz_settings` LEFT JOIN `zz_settings_lang` ON (`zz_settings`.`id` = `zz_settings_lang`.`id_record` AND `zz_settings_lang`.`id_lang` = '.prepare(\App::getLang()).") WHERE `sezione` = 'Applicazione'";
|
$query = 'SELECT `zz_settings`.`id`, `zz_settings`.`updated_at` FROM `zz_settings` LEFT JOIN `zz_settings_lang` ON (`zz_settings`.`id` = `zz_settings_lang`.`id_record` AND `zz_settings_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).") WHERE `sezione` = 'Applicazione'";
|
||||||
|
|
||||||
// Aggiunta delle impostazioni esterne alla sezione Applicazione
|
// Aggiunta delle impostazioni esterne alla sezione Applicazione
|
||||||
$impostazioni_esterne = $this->getImpostazioniEsterne();
|
$impostazioni_esterne = $this->getImpostazioniEsterne();
|
||||||
|
@ -57,7 +57,7 @@ class Preventivi extends AppResource implements RetrieveInterface
|
|||||||
INNER JOIN `an_anagrafiche` ON `an_anagrafiche`.`idanagrafica` = `co_preventivi`.`idanagrafica`
|
INNER JOIN `an_anagrafiche` ON `an_anagrafiche`.`idanagrafica` = `co_preventivi`.`idanagrafica`
|
||||||
INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idanagrafica` = `an_anagrafiche`.`idanagrafica`
|
INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idanagrafica` = `an_anagrafiche`.`idanagrafica`
|
||||||
INNER JOIN `an_tipianagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idtipoanagrafica` = `an_tipianagrafiche`.`id`
|
INNER JOIN `an_tipianagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idtipoanagrafica` = `an_tipianagrafiche`.`id`
|
||||||
INNER JOIN `an_tipianagrafiche_lang` ON (`an_tipianagrafiche`.`id` = `an_tipianagrafiche_lang`.`id_record` AND `an_tipianagrafiche_lang`.`id_lang` = '.\App::getLang().")
|
INNER JOIN `an_tipianagrafiche_lang` ON (`an_tipianagrafiche`.`id` = `an_tipianagrafiche_lang`.`id_record` AND `an_tipianagrafiche_lang`.`id_lang` = '.\Models\Locale::getDefault()->id.")
|
||||||
WHERE
|
WHERE
|
||||||
`an_tipianagrafiche_lang`.`title` = 'Cliente' AND `co_statipreventivi`.`is_pianificabile` = 1 AND `an_anagrafiche`.`deleted_at` IS NULL";
|
`an_tipianagrafiche_lang`.`title` = 'Cliente' AND `co_statipreventivi`.`is_pianificabile` = 1 AND `an_anagrafiche`.`deleted_at` IS NULL";
|
||||||
|
|
||||||
|
@ -39,7 +39,7 @@ class Referenti extends AppResource implements RetrieveInterface
|
|||||||
INNER JOIN `an_anagrafiche` ON `an_anagrafiche`.`idanagrafica` = `an_referenti`.`idanagrafica`
|
INNER JOIN `an_anagrafiche` ON `an_anagrafiche`.`idanagrafica` = `an_referenti`.`idanagrafica`
|
||||||
INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idanagrafica` = `an_anagrafiche`.`idanagrafica`
|
INNER JOIN `an_tipianagrafiche_anagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idanagrafica` = `an_anagrafiche`.`idanagrafica`
|
||||||
INNER JOIN `an_tipianagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idtipoanagrafica` = `an_tipianagrafiche`.`id`
|
INNER JOIN `an_tipianagrafiche` ON `an_tipianagrafiche_anagrafiche`.`idtipoanagrafica` = `an_tipianagrafiche`.`id`
|
||||||
LEFT JOIN `an_tipianagrafiche_lang` ON (`an_tipianagrafiche_lang`.`id_record` = `an_tipianagrafiche`.`id` AND `an_tipianagrafiche_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id)."
|
LEFT JOIN `an_tipianagrafiche_lang` ON (`an_tipianagrafiche_lang`.`id_record` = `an_tipianagrafiche`.`id` AND `an_tipianagrafiche_lang`.`id_lang` = '.prepare(\Models\Locale::getDefault()->id).")
|
||||||
WHERE
|
WHERE
|
||||||
`an_tipianagrafiche_lang`.`title` = 'Cliente' AND (an_anagrafiche.deleted_at IS NULL OR an_anagrafiche.idanagrafica IN(SELECT in_interventi.idanagrafica FROM in_interventi))";
|
`an_tipianagrafiche_lang`.`title` = 'Cliente' AND (an_anagrafiche.deleted_at IS NULL OR an_anagrafiche.idanagrafica IN(SELECT in_interventi.idanagrafica FROM in_interventi))";
|
||||||
|
|
||||||
|
@ -35,11 +35,7 @@ class SessioniInterventi extends AppResource
|
|||||||
->select('zz_operations.id_record')
|
->select('zz_operations.id_record')
|
||||||
->distinct()
|
->distinct()
|
||||||
->join('zz_modules', 'zz_modules.id', '=', 'zz_operations.id_module')
|
->join('zz_modules', 'zz_modules.id', '=', 'zz_operations.id_module')
|
||||||
->leftJoin('zz_modules_lang', function ($join) {
|
->where('zz_modules.name', '=', 'Interventi')
|
||||||
$join->on('zz_modules.id', '=', 'zz_modules_lang.id_record')
|
|
||||||
->where('zz_modules_lang.id_lang', '=', \Models\Locale::getDefault()->id);
|
|
||||||
})
|
|
||||||
->where('zz_modules_lang.name', '=', 'Interventi')
|
|
||||||
->where('zz_operations.op', '=', 'delete_sessione')
|
->where('zz_operations.op', '=', 'delete_sessione')
|
||||||
->whereNotNull('zz_operations.options')
|
->whereNotNull('zz_operations.options')
|
||||||
->where('zz_operations.created_at', '>', $last_sync_at)
|
->where('zz_operations.created_at', '>', $last_sync_at)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user