Merge branch 'master' of https://github.com/devcode-it/openstamanager
This commit is contained in:
commit
b6153fff53
|
@ -1063,3 +1063,8 @@ div.tip {
|
||||||
.div-loading {
|
.div-loading {
|
||||||
opacity: 0.5;
|
opacity: 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Stile Fullcalendar per weekend */
|
||||||
|
.fc-sat, .fc-sun {
|
||||||
|
background-color: rgba(255, 99, 71, 0.6) !important;
|
||||||
|
}
|
||||||
|
|
2
mail.php
2
mail.php
|
@ -127,7 +127,7 @@ echo '
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
{[ "type": "ckeditor", "label": "'.tr('Contenuto').'", "name": "body", "value": '.json_encode($body).' ]}
|
{[ "type": "ckeditor", "label": "'.tr('Contenuto').'", "name": "body", "id": "body_'.rand(0, 999).'", "value": '.json_encode($body).' ]}
|
||||||
</div>
|
</div>
|
||||||
</div>';
|
</div>';
|
||||||
|
|
||||||
|
|
|
@ -483,13 +483,12 @@ $riga = $contratto->getRiga($type, $id_riga);
|
||||||
|
|
||||||
if (!empty($documento->sconto_finale)) {
|
if (!empty($documento->sconto_finale)) {
|
||||||
$contratto->sconto_finale = $documento->sconto_finale;
|
$contratto->sconto_finale = $documento->sconto_finale;
|
||||||
} elseif(!empty($documento->sconto_finale_percentuale)){
|
} elseif (!empty($documento->sconto_finale_percentuale)) {
|
||||||
$contratto->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
$contratto->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
||||||
}
|
}
|
||||||
|
|
||||||
$contratto->save();
|
$contratto->save();
|
||||||
|
|
||||||
|
|
||||||
$righe = $documento->getRighe();
|
$righe = $documento->getRighe();
|
||||||
foreach ($righe as $riga) {
|
foreach ($righe as $riga) {
|
||||||
if (post('evadere')[$riga->id] == 'on' and !empty(post('qta_da_evadere')[$riga->id])) {
|
if (post('evadere')[$riga->id] == 'on' and !empty(post('qta_da_evadere')[$riga->id])) {
|
||||||
|
|
|
@ -118,7 +118,7 @@ if (strtotime($record['data_conclusione']) < strtotime($record['data_accettazion
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "number", "label": "<?php echo ('Sconto finale'); ?>", "name": "sconto_finale", "value": "<?php echo $contratto->sconto_finale_percentuale ?: $contratto->sconto_finale; ?>", "icon-after": "choice|untprc|<?php echo (empty($contratto->sconto_finale) ? 'PRC' : 'UNT'); ?>", "help": "<?php echo tr('Sconto finale, utilizzabile per applicare sconti sul Netto a pagare del documento'); ?>." ]}
|
{[ "type": "number", "label": "<?php echo 'Sconto finale'; ?>", "name": "sconto_finale", "value": "<?php echo $contratto->sconto_finale_percentuale ?: $contratto->sconto_finale; ?>", "icon-after": "choice|untprc|<?php echo empty($contratto->sconto_finale) ? 'PRC' : 'UNT'; ?>", "help": "<?php echo tr('Sconto finale, utilizzabile per applicare sconti sul Netto a pagare del documento'); ?>." ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -334,7 +334,7 @@ switch (post('op')) {
|
||||||
|
|
||||||
if (!empty($documento->sconto_finale)) {
|
if (!empty($documento->sconto_finale)) {
|
||||||
$ddt->sconto_finale = $documento->sconto_finale;
|
$ddt->sconto_finale = $documento->sconto_finale;
|
||||||
} elseif(!empty($documento->sconto_finale_percentuale)){
|
} elseif (!empty($documento->sconto_finale_percentuale)) {
|
||||||
$ddt->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
$ddt->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -705,7 +705,7 @@ switch (post('op')) {
|
||||||
|
|
||||||
if (!empty($documento->sconto_finale)) {
|
if (!empty($documento->sconto_finale)) {
|
||||||
$fattura->sconto_finale = $documento->sconto_finale;
|
$fattura->sconto_finale = $documento->sconto_finale;
|
||||||
} elseif(!empty($documento->sconto_finale_percentuale)){
|
} elseif (!empty($documento->sconto_finale_percentuale)) {
|
||||||
$fattura->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
$fattura->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -73,9 +73,7 @@ foreach ($raggruppamenti as $mese => $raggruppamento) {
|
||||||
|
|
||||||
// Elenco interventi da pianificare
|
// Elenco interventi da pianificare
|
||||||
foreach ($raggruppamento as $r) {
|
foreach ($raggruppamento as $r) {
|
||||||
|
$rs_tecnici = $dbo->fetchArray("SELECT GROUP_CONCAT(ragione_sociale SEPARATOR ',') AS tecnici FROM an_anagrafiche INNER JOIN in_interventi_tecnici_assegnati ON in_interventi_tecnici_assegnati.id_tecnico=an_anagrafiche.idanagrafica WHERE id_intervento=".prepare($r['id']).' GROUP BY id_intervento');
|
||||||
$rs_tecnici = $dbo->fetchArray("SELECT GROUP_CONCAT(ragione_sociale SEPARATOR ',') AS tecnici FROM an_anagrafiche INNER JOIN in_interventi_tecnici_assegnati ON in_interventi_tecnici_assegnati.id_tecnico=an_anagrafiche.idanagrafica WHERE id_intervento=".prepare($r['id'])." GROUP BY id_intervento");
|
|
||||||
|
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<tr id="int_'.$r['id'].'">
|
<tr id="int_'.$r['id'].'">
|
||||||
|
|
|
@ -195,7 +195,7 @@ switch (post('op')) {
|
||||||
|
|
||||||
// Impostare data evasione su tutte le righe
|
// Impostare data evasione su tutte le righe
|
||||||
if (post('data_evasione_all') == 1) {
|
if (post('data_evasione_all') == 1) {
|
||||||
$righe = $ordine->getRighe()->where('is_descrizione', '=', '0');;
|
$righe = $ordine->getRighe()->where('is_descrizione', '=', '0');
|
||||||
|
|
||||||
foreach ($righe as $riga) {
|
foreach ($righe as $riga) {
|
||||||
$riga->data_evasione = post('data_evasione') ?: null;
|
$riga->data_evasione = post('data_evasione') ?: null;
|
||||||
|
@ -205,7 +205,7 @@ switch (post('op')) {
|
||||||
}
|
}
|
||||||
// Impostare confermato su tutte le righe
|
// Impostare confermato su tutte le righe
|
||||||
if (post('confermato_all') == 1) {
|
if (post('confermato_all') == 1) {
|
||||||
$righe = $ordine->getRighe()->where('is_descrizione', '=', '0');;
|
$righe = $ordine->getRighe()->where('is_descrizione', '=', '0');
|
||||||
|
|
||||||
foreach ($righe as $riga) {
|
foreach ($righe as $riga) {
|
||||||
$riga->confermato = post('confermato') ?: 0;
|
$riga->confermato = post('confermato') ?: 0;
|
||||||
|
@ -405,7 +405,7 @@ switch (post('op')) {
|
||||||
|
|
||||||
if (!empty($documento->sconto_finale)) {
|
if (!empty($documento->sconto_finale)) {
|
||||||
$ordine->sconto_finale = $documento->sconto_finale;
|
$ordine->sconto_finale = $documento->sconto_finale;
|
||||||
} elseif(!empty($documento->sconto_finale_percentuale)){
|
} elseif (!empty($documento->sconto_finale_percentuale)) {
|
||||||
$ordine->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
$ordine->sconto_finale_percentuale = $documento->sconto_finale_percentuale;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ if ($module['name'] == 'Ordini cliente') {
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "number", "label": "<?php echo ('Sconto finale'); ?>", "name": "sconto_finale", "value": "<?php echo $ordine->sconto_finale_percentuale ?: $ordine->sconto_finale; ?>", "icon-after": "choice|untprc|<?php echo (empty($ordine->sconto_finale) ? 'PRC' : 'UNT'); ?>", "help": "<?php echo tr('Sconto finale, utilizzabile per applicare sconti sul Netto a pagare del documento'); ?>." ]}
|
{[ "type": "number", "label": "<?php echo 'Sconto finale'; ?>", "name": "sconto_finale", "value": "<?php echo $ordine->sconto_finale_percentuale ?: $ordine->sconto_finale; ?>", "icon-after": "choice|untprc|<?php echo empty($ordine->sconto_finale) ? 'PRC' : 'UNT'; ?>", "help": "<?php echo tr('Sconto finale, utilizzabile per applicare sconti sul Netto a pagare del documento'); ?>." ]}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php
|
<?php
|
||||||
|
|
|
@ -131,7 +131,7 @@ foreach ($righe as $riga) {
|
||||||
|
|
||||||
if (!empty($riga->ora_evasione)) {
|
if (!empty($riga->ora_evasione)) {
|
||||||
$ora_evasione = '<br>'.Translator::timeToLocale($riga->ora_evasione).'';
|
$ora_evasione = '<br>'.Translator::timeToLocale($riga->ora_evasione).'';
|
||||||
} else{
|
} else {
|
||||||
$ora_evasione = '';
|
$ora_evasione = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -139,7 +139,7 @@ echo '
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
{[ "type": "number", "label": "<?php echo ('Sconto finale'); ?>", "name": "sconto_finale", "value": "<?php echo $preventivo->sconto_finale_percentuale ?: $preventivo->sconto_finale; ?>", "icon-after": "choice|untprc|<?php echo (empty($preventivo->sconto_finale) ? 'PRC' : 'UNT'); ?>", "help": "<?php echo tr('Sconto finale, utilizzabile per applicare sconti sul Netto a pagare del documento'); ?>." ]}
|
{[ "type": "number", "label": "<?php echo 'Sconto finale'; ?>", "name": "sconto_finale", "value": "<?php echo $preventivo->sconto_finale_percentuale ?: $preventivo->sconto_finale; ?>", "icon-after": "choice|untprc|<?php echo empty($preventivo->sconto_finale) ? 'PRC' : 'UNT'; ?>", "help": "<?php echo tr('Sconto finale, utilizzabile per applicare sconti sul Netto a pagare del documento'); ?>." ]}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -126,14 +126,14 @@ switch ($operazione) {
|
||||||
|
|
||||||
$qta_evasa += $qta_riga;
|
$qta_evasa += $qta_riga;
|
||||||
$pianificata[] = $pianificazioni[$rata];
|
$pianificata[] = $pianificazioni[$rata];
|
||||||
} else{
|
} else {
|
||||||
$non_pianificata[] = $pianificazioni[$rata];
|
$non_pianificata[] = $pianificazioni[$rata];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$r->delete();
|
$r->delete();
|
||||||
}
|
}
|
||||||
$tot_non_pianificati = implode(', ', array_unique(array_diff($non_pianificata, $pianificata)));
|
$tot_non_pianificati = implode(', ', array_unique(array_diff($non_pianificata, $pianificata)));
|
||||||
if(!empty($tot_non_pianificati)){
|
if (!empty($tot_non_pianificati)) {
|
||||||
$dbo->query('DELETE FROM `co_fatturazione_contratti` WHERE `id` IN ('.$tot_non_pianificati.')');
|
$dbo->query('DELETE FROM `co_fatturazione_contratti` WHERE `id` IN ('.$tot_non_pianificati.')');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,17 +24,16 @@ use Illuminate\Database\Eloquent\Model as Model;
|
||||||
|
|
||||||
abstract class Document extends Model implements ReferenceInterface, DocumentInterface
|
abstract class Document extends Model implements ReferenceInterface, DocumentInterface
|
||||||
{
|
{
|
||||||
protected $casts = [
|
|
||||||
'sconto_finale' => 'float',
|
|
||||||
'sconto_finale_percentuale' => 'float',
|
|
||||||
];
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Abilita la movimentazione automatica degli Articoli, finalizzata alla gestione interna del magazzino.
|
* Abilita la movimentazione automatica degli Articoli, finalizzata alla gestione interna del magazzino.
|
||||||
*
|
*
|
||||||
* @var bool
|
* @var bool
|
||||||
*/
|
*/
|
||||||
public static $movimenta_magazzino = true;
|
public static $movimenta_magazzino = true;
|
||||||
|
protected $casts = [
|
||||||
|
'sconto_finale' => 'float',
|
||||||
|
'sconto_finale_percentuale' => 'float',
|
||||||
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Restituisce il valore della variabile statica $movimenta_magazzino per il documento.
|
* Restituisce il valore della variabile statica $movimenta_magazzino per il documento.
|
||||||
|
@ -217,6 +216,52 @@ abstract class Document extends Model implements ReferenceInterface, DocumentInt
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Imposta lo sconto finale.
|
||||||
|
*
|
||||||
|
* @param $sconto
|
||||||
|
* @param $tipo
|
||||||
|
*/
|
||||||
|
public function setScontoFinale($sconto, $tipo)
|
||||||
|
{
|
||||||
|
if ($tipo == 'PRC') {
|
||||||
|
$this->sconto_finale_percentuale = $sconto;
|
||||||
|
$this->sconto_finale = 0;
|
||||||
|
} else {
|
||||||
|
$this->sconto_finale = $sconto;
|
||||||
|
$this->sconto_finale_percentuale = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Restituisce lo sconto finale.
|
||||||
|
*/
|
||||||
|
public function getScontoFinale()
|
||||||
|
{
|
||||||
|
$netto = $this->calcola('netto');
|
||||||
|
|
||||||
|
if (!empty($this->sconto_finale_percentuale)) {
|
||||||
|
$sconto = $netto * ($this->sconto_finale_percentuale / 100);
|
||||||
|
} else {
|
||||||
|
$sconto = $this->sconto_finale;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $sconto;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calcola il netto a pagare del documento.
|
||||||
|
*
|
||||||
|
* @return float
|
||||||
|
*/
|
||||||
|
public function getNettoAttribute()
|
||||||
|
{
|
||||||
|
$netto = $this->calcola('netto');
|
||||||
|
$sconto_finale = $this->getScontoFinale();
|
||||||
|
|
||||||
|
return $netto - $sconto_finale;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Costruisce una nuova collezione Laravel a partire da quelle indicate.
|
* Costruisce una nuova collezione Laravel a partire da quelle indicate.
|
||||||
*
|
*
|
||||||
|
@ -272,50 +317,4 @@ abstract class Document extends Model implements ReferenceInterface, DocumentInt
|
||||||
|
|
||||||
return round($value, $decimals);
|
return round($value, $decimals);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Imposta lo sconto finale.
|
|
||||||
*
|
|
||||||
* @param $sconto
|
|
||||||
* @param $tipo
|
|
||||||
*/
|
|
||||||
public function setScontoFinale($sconto, $tipo)
|
|
||||||
{
|
|
||||||
if ($tipo == 'PRC') {
|
|
||||||
$this->sconto_finale_percentuale = $sconto;
|
|
||||||
$this->sconto_finale = 0;
|
|
||||||
} else {
|
|
||||||
$this->sconto_finale = $sconto;
|
|
||||||
$this->sconto_finale_percentuale = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Restituisce lo sconto finale.
|
|
||||||
*/
|
|
||||||
public function getScontoFinale()
|
|
||||||
{
|
|
||||||
$netto = $this->calcola('netto');
|
|
||||||
|
|
||||||
if (!empty($this->sconto_finale_percentuale)) {
|
|
||||||
$sconto = $netto * ($this->sconto_finale_percentuale / 100);
|
|
||||||
} else {
|
|
||||||
$sconto = $this->sconto_finale;
|
|
||||||
}
|
|
||||||
|
|
||||||
return $sconto;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Calcola il netto a pagare del documento.
|
|
||||||
*
|
|
||||||
* @return float
|
|
||||||
*/
|
|
||||||
public function getNettoAttribute()
|
|
||||||
{
|
|
||||||
$netto = $this->calcola('netto');
|
|
||||||
$sconto_finale = $this->getScontoFinale();
|
|
||||||
|
|
||||||
return $netto - $sconto_finale;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -261,7 +261,7 @@ if ($options['pricing']) {
|
||||||
</th>
|
</th>
|
||||||
</tr>';
|
</tr>';
|
||||||
|
|
||||||
if($sconto_finale){
|
if ($sconto_finale) {
|
||||||
// SCONTO FINALE
|
// SCONTO FINALE
|
||||||
echo '
|
echo '
|
||||||
<tr>
|
<tr>
|
||||||
|
|
|
@ -86,7 +86,7 @@ if ($options['pricing']) {
|
||||||
</td>
|
</td>
|
||||||
</tr>';
|
</tr>';
|
||||||
|
|
||||||
if($sconto_finale){
|
if ($sconto_finale) {
|
||||||
// Riga 4 SCONTO FINALE
|
// Riga 4 SCONTO FINALE
|
||||||
echo "
|
echo "
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -97,9 +97,9 @@ if ($options['pricing']) {
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class='cell-padded text-right'>
|
<td class='cell-padded text-right'>
|
||||||
".moneyFormat($sconto_finale, 2)."
|
".moneyFormat($sconto_finale, 2).'
|
||||||
</td>
|
</td>
|
||||||
</tr>";
|
</tr>';
|
||||||
|
|
||||||
// Riga 5 NETTO A PAGARE
|
// Riga 5 NETTO A PAGARE
|
||||||
echo "
|
echo "
|
||||||
|
@ -111,9 +111,9 @@ if ($options['pricing']) {
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class='cell-padded text-right'>
|
<td class='cell-padded text-right'>
|
||||||
".moneyFormat($netto_a_pagare, 2)."
|
".moneyFormat($netto_a_pagare, 2).'
|
||||||
</td>
|
</td>
|
||||||
</tr>";
|
</tr>';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Riga 1
|
// Riga 1
|
||||||
|
|
|
@ -77,11 +77,11 @@ if ($options['pricing']) {
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "
|
echo "
|
||||||
<th class='text-center' style='width:10%'>".tr('Data evasione', [], ['upper' => true])."</th>
|
<th class='text-center' style='width:10%'>".tr('Data evasione', [], ['upper' => true]).'</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
|
|
||||||
<tbody>";
|
<tbody>';
|
||||||
|
|
||||||
$num = 0;
|
$num = 0;
|
||||||
foreach ($righe as $riga) {
|
foreach ($righe as $riga) {
|
||||||
|
@ -122,7 +122,7 @@ foreach ($righe as $riga) {
|
||||||
'.nl2br($r['descrizione']);
|
'.nl2br($r['descrizione']);
|
||||||
|
|
||||||
if ($riga->isArticolo()) {
|
if ($riga->isArticolo()) {
|
||||||
if($documento->direzione == 'entrata'){
|
if ($documento->direzione == 'entrata') {
|
||||||
// Codice articolo
|
// Codice articolo
|
||||||
$text = tr('COD. _COD_', [
|
$text = tr('COD. _COD_', [
|
||||||
'_COD_' => $riga->codice,
|
'_COD_' => $riga->codice,
|
||||||
|
@ -296,7 +296,7 @@ if ($options['pricing']) {
|
||||||
</th>
|
</th>
|
||||||
</tr>';
|
</tr>';
|
||||||
|
|
||||||
if($sconto_finale){
|
if ($sconto_finale) {
|
||||||
// SCONTO FINALE
|
// SCONTO FINALE
|
||||||
echo '
|
echo '
|
||||||
<tr>
|
<tr>
|
||||||
|
|
|
@ -322,7 +322,7 @@ if (($options['pricing'] && !isset($options['hide_total'])) || $options['show_on
|
||||||
</th>
|
</th>
|
||||||
</tr>';
|
</tr>';
|
||||||
|
|
||||||
if($sconto_finale){
|
if ($sconto_finale) {
|
||||||
// SCONTO FINALE
|
// SCONTO FINALE
|
||||||
echo '
|
echo '
|
||||||
<tr>
|
<tr>
|
||||||
|
|
Loading…
Reference in New Issue