Allineamento devel con Master

This commit is contained in:
2024-05-25 08:56:11 +00:00
2731 changed files with 741260 additions and 6129 deletions

View File

@@ -4,6 +4,7 @@ namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Http;
class Avviso extends Model
{
@@ -25,4 +26,30 @@ class Avviso extends Model
{
return self::all();
}
public static function getActualAvvisi()
{
return self::where('creato_il','>=', now()->subMonth())->get();
}
public static function getHAstatus()
{
/*$response = Http::withHeaders([
'Authorization'=>' Bearer '.env('HA_TOKEN'),
'Content-Type'=>' application/json',
])->get('https://ha.lavorain.cloud/api/services',['domain']);
return $response;
// return dd($response);*/
}
public static function getAnsaNews()
{
/*$xmlstring = Http::get('https://www.ansa.it/trentino/notizie/trentino_rss.xml');
$xml_file = simplexml_load_string($xmlstring);
$json = json_encode($xml_file );
$array = json_decode($json,TRUE);
dd($array); // return $array;*/
}
}

View File

@@ -19,7 +19,10 @@ class Categorie extends Model
{
return self::all();
}
public static function listCategorieAPI()
{
return self::select('cat_name')->pluck('cat_name');
}
public static function listSpesa()
{
return DB::table('categories')->where('cat_uscita','=',1)->orderBy('cat_name')->get();

View File

@@ -4,8 +4,40 @@ namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class Contratti extends Model
{
use HasFactory;
protected $fillable=[
'numero',
'nome',
'datainizio',
'datatermine',
'fornitore',
'tipo',
'importo',
'scadenzapagamento',
'stato',
'note',
'filename'
];
public static function storeContratto(Request $req){
/* dd($req); */
}
public static function getAllContratto(){
return self::all();
}
public static function getContrattoById($id){
return DB::table('contrattis')->where('id','=',$id)->get();
}
}

View File

@@ -9,6 +9,12 @@ use Illuminate\Support\Facades\DB;
class Documenti extends Model
{
use HasFactory;
protected $fillable = [
'descrizione',
'path',
];
public static function countDocument($id){
$quanti=DB::table('documentis')
@@ -26,13 +32,14 @@ class Documenti extends Model
*/
public static function store($req) {
$movimento_id=$req->input('id');
$filename=$req->file('filename')->store('Documenti');
// $movimento_id=$req->input('id');
// $filename=$req->file('filename')->store('Documenti');
DB::table('documentis')
->insert([
'movimenti_id'=>$movimento_id,
// 'movimenti_id'=>$movimento_id,
'descrizione'=>$req->input('descrizione'),
'filename'=>$filename,
'path'=>$req->input('path'),
// 'filename'=>$filename,
]);
}
@@ -53,12 +60,12 @@ class Documenti extends Model
public static function getList($id)
{
return DB::table('documentis')
->where('movimenti_id','=',$id)
->where('movimenti_id','=', $id)
->get();
}
// Proposta modifica issue {#5 gitea} (generalizzazione del documento)
/*
/*
public static function getList($id,$entity)
{
self::where('entita','=',$entity)->where('entita_id','=',$id)->get();

51
app/Models/GenDoc.php Normal file
View File

@@ -0,0 +1,51 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
use App\Models\Documenti;
class GenDoc extends Model
{
use HasFactory;
// DocumentiGenerali
public static function saveDocument($data){
$filename=$data->file('filename')->store(self::getEntityFolder($data['entity']));
DB::table('gen_docs')
->insert([
'entity'=>$data['entity'],
'entity_id'=>($data['entity_id'] ?? 0 ),
'descrizione'=>$data['descrizione'],
'filename'=>$filename,
]);
}
public static function listDocument($entity,$entity_id = 0)
{
// Ritorna la lista dei documenti in base all'entità e al rispettivo id
return DB::table('gen_docs')->where('entity','=',$entity)->where('entity_id','=',$entity_id)->get(); //nuova funzione
// return DB::table('documentis')->where('movimenti_id','=', $entity_id)->get();
}
public static function countDocument($entity,$entity_id = 0){
// Conta i documenti inseriti per la determinata entità e id
$quanti=DB::table('gen_docs')
->where('entity','=',$entity)
->andWhere('entity_id','=',$entity_id)
->count();
return $quanti;
}
private static function getEntityFolder($id)
{
$entita = Documenti::where('id',$id)->pluck('path');
return $entita[0];
//return $entita->path;
}
}

View File

@@ -0,0 +1,26 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Http;
class HomeAssistantAPI extends Model
{
use HasFactory;
public static function getSensorState($sensor)
{
$result=Http::withHeaders(
[
'Authorization'=>'Bearer '.env('HA_TOKEN'),
'Content-Type'=>'application/json',
]
)->get('https://ha.lavorain.cloud/api/states/'.$sensor);
return json_decode($result);
}
}

View File

@@ -13,14 +13,34 @@ class Movimenti extends Model
protected $dates = ['mov_data'];
protected $casts = [ 'mov_data'=>'datetime'];
public static $query='SELECT
a.id,
a.mov_data,
a.mov_importo,
a.mov_descrizione,
c.cat_name,
t.tag_name,
(SELECT Count(entity_id) as quanti FROM gen_docs WHERE entity=0 AND entity_id = a.id) as quanti
FROM movimentis as a
JOIN tags as t ON a.mov_fk_tags=t.id
JOIN categories as c ON a.mov_fk_categoria=c.id';
public static function getList() {
return DB::table('movimentis')
->join('categories','movimentis.mov_fk_categoria','=','categories.id')
->join('tags','movimentis.mov_fk_tags','=','tags.id')
->leftJoin('documentis', 'movimenti_id','=','movimentis.id')
->select('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name', DB::raw('Count(movimenti_id) as quanti'))
->groupBy('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name')
->get();
return DB::select(DB::raw(
'SELECT
a.id,
a.mov_data,
a.mov_importo,
a.mov_descrizione,
c.cat_name,
t.tag_name,
(SELECT Count(entity_id) as quanti FROM gen_docs WHERE entity=0 AND entity_id = a.id) as quanti
FROM movimentis as a
JOIN tags as t ON a.mov_fk_tags=t.id
JOIN categories as c ON a.mov_fk_categoria=c.id'
));
}
public static function getSaldo($date) {
@@ -114,38 +134,51 @@ class Movimenti extends Model
}
public static function listByCatMonth($month,$cat,$year) {
return DB::table('movimentis')
->join('categories','movimentis.mov_fk_categoria','=','categories.id')
->join('tags','movimentis.mov_fk_tags','=','tags.id')
->where('movimentis.mov_fk_categoria','=',$cat)
->whereMonth('mov_data','=',$month)
->whereYear('mov_data', '=' , $year)
->leftJoin('documentis', 'movimenti_id','=','movimentis.id')
->select('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name', DB::raw('Count(movimenti_id) as quanti'))
->groupBy('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name')
->get();
return DB::select(DB::raw('SELECT
a.id,
a.mov_data,
a.mov_importo,
a.mov_descrizione,
c.cat_name,
t.tag_name,
(SELECT Count(entity_id) as quanti FROM gen_docs WHERE entity=0 AND entity_id = a.id) as quanti
FROM movimentis as a
JOIN tags as t ON a.mov_fk_tags=t.id
JOIN categories as c ON a.mov_fk_categoria=c.id
WHERE Month(a.mov_data)='.$month.' AND Year(a.mov_data)='.$year.' AND a.mov_fk_categoria='.$cat
));
}
public static function listByCategory($cat) {
return DB::table('movimentis')
->join('categories','movimentis.mov_fk_categoria','=','categories.id')
->join('tags','movimentis.mov_fk_tags','=','tags.id')
->where('movimentis.mov_fk_categoria','=',$cat)
->leftJoin('documentis', 'movimenti_id','=','movimentis.id')
->select('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name', DB::raw('Count(movimenti_id) as quanti'))
->groupBy('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name')
->get();
return DB::select(DB::raw('SELECT
a.id,
a.mov_data,
a.mov_importo,
a.mov_descrizione,
c.cat_name,
t.tag_name,
(SELECT Count(entity_id) as quanti FROM gen_docs WHERE entity=0 AND entity_id = a.id) as quanti
FROM movimentis as a
JOIN tags as t ON a.mov_fk_tags=t.id
JOIN categories as c ON a.mov_fk_categoria=c.id
WHERE a.mov_fk_categoria = '.$cat ));
}
public static function getByTag($tag) {
return DB::table('movimentis')
->where('mov_fk_tags','=',$tag)
->join('categories','movimentis.mov_fk_categoria','=','categories.id')
->join('tags','movimentis.mov_fk_tags','=','tags.id')
->leftJoin('documentis', 'movimenti_id','=','movimentis.id')
->select('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name', DB::raw('Count(movimenti_id) as quanti'))
->groupBy('movimentis.id','mov_data','mov_descrizione','mov_importo','cat_name','tag_name')
->get();
return DB::select(DB::raw('SELECT
a.id,
a.mov_data,
a.mov_importo,
a.mov_descrizione,
c.cat_name,
t.tag_name,
(SELECT Count(entity_id) as quanti FROM gen_docs WHERE entity=0 AND entity_id = a.id) as quanti
FROM movimentis as a
JOIN tags as t ON a.mov_fk_tags=t.id
JOIN categories as c ON a.mov_fk_categoria=c.id
WHERE a.mov_fk_tags = '.$tag ));
}
public static function importEstrattoIng($filename)
@@ -160,7 +193,11 @@ class Movimenti extends Model
list($giorno,$mese,$anno) = explode('/',$line['Data valuta']);
$data="$anno-$mese-$giorno";
self::insEntrata([
<<<<<<< HEAD
'mov_data'=>$data,
=======
'mov_data'=>self::dateFormat(0,$line['Data valuta']),
>>>>>>> devel
'mov_fk_categoria'=>1,
'mov_descrizione'=>$line['Descrizione operazione'],
'mov_importo'=>trim(str_replace(',','.',(str_replace('.','',str_replace('€', '', $line['Importo']))))),
@@ -183,7 +220,8 @@ class Movimenti extends Model
if($line['DARE']<>'')
{
$dati=[
'mov_data'=>self::dateFormat(0,$line['VALUTA']), // date_format(date_create($movimento->mov_data),'d/m/Y'
'mov_data'=>self::dateFormat(0,$line['VALUTA']),
// date_format(date_create($movimento->mov_data),'d/m/Y'
// 'mov_data'=>date_format(date_create($line['VALUTA']),'Y-m-d'),
'mov_fk_categoria'=>1,
'mov_descrizione'=>$line['DESCRIZIONE OPERAZIONE'],

View File

@@ -19,7 +19,7 @@ class Task extends Model
//
public static function getTaskAssignedToUser($userid)
{
return self::where('assegnato_a',$userid)->get();
return self::where('assegnato_a',$userid)->where('termine_il','>=', now())->get();
}
//

View File

@@ -30,4 +30,5 @@ class contatto extends Model
}
}

View File

@@ -14,6 +14,11 @@ class tag extends Model
return DB::table('tags')->orderBy('tag_name')->get();
}
public static function getApiList()
{
return self::select('tag_name')->pluck('tag_name');
}
public static function inserisci($param) {
DB::table('tags')->insert(['tag_name'=> $param['tag_name']]);
}