Merge branch 'master' of https://github.com/devcode-it/openstamanager
This commit is contained in:
commit
f68213e1e3
|
@ -28,7 +28,7 @@
|
|||
"ext-simplexml": "*",
|
||||
"ext-xsl": "*",
|
||||
"ext-zip": "*",
|
||||
"aluguest/ical-easy-reader": "^1.5",
|
||||
"devcode-it/ical-easy-reader": "dev-main",
|
||||
"davidepastore/codice-fiscale": "^0.6.0",
|
||||
"digitick/sepa-xml": "^2.1",
|
||||
"dragonmantank/cron-expression": "^1.0",
|
||||
|
|
|
@ -33,6 +33,7 @@ use Carbon\Carbon;
|
|||
|
||||
$anagrafica_azienda = Anagrafica::find(setting('Azienda predefinita'));
|
||||
$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')) {
|
||||
case 'export-bulk':
|
||||
|
@ -569,6 +570,35 @@ switch (post('op')) {
|
|||
}
|
||||
}
|
||||
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()) {
|
||||
|
@ -697,6 +727,19 @@ if ($dir == 'entrata') {
|
|||
];
|
||||
}
|
||||
|
||||
$operations['cambia-sezionale'] = [
|
||||
'text' => '<span><i class="fa fa-hand-stop-o"></i> '.tr('Cambia sezionale'),
|
||||
'data' => [
|
||||
'title' => tr('Cambia sezionale'),
|
||||
'msg' => tr('Scegli il sezionale _TIPOLOGIA_ in cui spostare le fatture 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()) {
|
||||
$operations['hook-send'] = [
|
||||
'text' => '<span><i class="fa fa-paper-plane"></i> '.tr('Coda di invio FE').'</span>',
|
||||
|
|
|
@ -55,7 +55,7 @@ class Sync extends Resource implements RetrieveInterface, UpdateInterface
|
|||
$result .= "PRODID:-// OpenSTAManager\n";
|
||||
|
||||
foreach ($rs as $r) {
|
||||
$richiesta = str_replace("\r\n", "\n", $r['richiesta']);
|
||||
$richiesta = str_replace("\r\n", "\n", strip_tags($r['richiesta']));
|
||||
$richiesta = str_replace("\r", "\n", $richiesta);
|
||||
$richiesta = str_replace("\n", '\\n', $richiesta);
|
||||
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
include_once __DIR__.'/../../core.php';
|
||||
|
||||
use Carbon\Carbon;
|
||||
use Modules\Anagrafiche\Anagrafica;
|
||||
use Modules\Articoli\Articolo as ArticoloOriginale;
|
||||
use Modules\Ordini\Components\Articolo;
|
||||
|
@ -110,6 +111,32 @@ switch (post('op')) {
|
|||
$ordine->num_item = post('num_item');
|
||||
$ordine->condizioni_fornitura = post('condizioni_fornitura');
|
||||
|
||||
// Verifica la presenza di ordini con lo stesso numero
|
||||
$ordini = $dbo->fetchArray("SELECT * FROM or_ordini WHERE numero_cliente=".prepare(post('numero_cliente'))." AND id!=".prepare($id_record)." AND idanagrafica=".prepare(post('idanagrafica'))." AND DATE_FORMAT(or_ordini.data, '%Y')=".prepare(Carbon::parse(post('data'))->copy()->format("Y")));
|
||||
|
||||
if (!empty($ordini)) {
|
||||
|
||||
$ordine->numero_esterno = null;
|
||||
|
||||
$documento = '';
|
||||
foreach($ordini as $rs){
|
||||
$descrizione = tr('Ordine cliente num. _NUM_ del _DATE_', [
|
||||
'_NUM_' => !empty($rs['numero_esterno']) ? $rs['numero_esterno'] : $rs['numero'],
|
||||
'_DATE_' => Translator::dateToLocale($rs['data']),
|
||||
]);
|
||||
|
||||
$documenti .= '<li>'.Modules::link('Ordini cliente', $rs['id'], $descrizione).'</li>';
|
||||
}
|
||||
|
||||
flash()->error(tr('E\' già presente un ordine con numero _NUM_ <ul>_ORDINI_</ul>', [
|
||||
'_NUM_' => post('numero_cliente'),
|
||||
'_ORDINI_' => $documenti,
|
||||
]));
|
||||
|
||||
$ordine->numero_cliente = null;
|
||||
$ordine->id_documento_fe = null;
|
||||
}
|
||||
|
||||
$ordine->setScontoFinale(post('sconto_finale'), post('tipo_sconto_finale'));
|
||||
|
||||
$ordine->save();
|
||||
|
|
|
@ -25,7 +25,8 @@ switch ($resource) {
|
|||
$id_module = $superselect['id_module'];
|
||||
$is_fiscale = $superselect['is_fiscale'];
|
||||
$is_sezionale = $superselect['is_sezionale'];
|
||||
|
||||
$escludi_id = $superselect['escludi_id'];
|
||||
|
||||
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';
|
||||
|
||||
|
@ -40,6 +41,10 @@ switch ($resource) {
|
|||
$where[] = 'zz_segments.is_sezionale = '.prepare($is_sezionale);
|
||||
}
|
||||
|
||||
if ($escludi_id != null) {
|
||||
$where[] = 'zz_segments.id != '.prepare($escludi_id);
|
||||
}
|
||||
|
||||
foreach ($elements as $element) {
|
||||
$filter[] = 'id='.prepare($element);
|
||||
}
|
||||
|
|
|
@ -21,13 +21,6 @@ include_once __DIR__.'/../../core.php';
|
|||
|
||||
$google = setting('Google Maps API key');
|
||||
|
||||
/*
|
||||
if (!empty($google)) {
|
||||
echo '
|
||||
<script src="//maps.googleapis.com/maps/api/js?libraries=places&key='.$google.'"></script>';
|
||||
}
|
||||
*/
|
||||
|
||||
echo '
|
||||
<form action="" method="post" role="form" id="form_sedi">
|
||||
<input type="hidden" name="id_plugin" value="'.$id_plugin.'">
|
||||
|
|
|
@ -15,4 +15,4 @@ UPDATE `zz_settings` SET `help` = "Valore espresso in Giga superato il quale vie
|
|||
-- Rimozione google maps
|
||||
DELETE FROM `zz_settings` WHERE `zz_settings`.`nome` = 'Google Maps API key';
|
||||
|
||||
INSERT INTO `zz_settings` (`id`, `nome`, `valore`, `tipo`, `editable`, `sezione`, `created_at`, `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);
|
Loading…
Reference in New Issue