jb-data.de/scripts/ajax/l_summe.php
2025-08-11 22:23:30 +02:00

132 lines
No EOL
5.7 KiB
PHP

<?php
//echo "<pre>"; print_r($data); echo "</pre>";
$monat= $_POST['monat'];
$jahr = $_POST['jahr'];
$mid=$_POST['maID'];
$gl = $GLOBALS['mysql']->query_single("SELECT * FROM ma_lohn_ges WHERE mid='".$mid."' and monat='".$monat."' and jahr='".$jahr."'");
$ma = $GLOBALS['mysql']->query_single("SELECT * FROM mitarbeiter WHERE id='".$mid."'");
//--- SOLL ----------------------------------------------------------------------------------------
$data['soll_h']=$ma['grund_h'];
$data['soll_n1']=$ma['grund_n1'];
$data['soll_n2']=$ma['grund_n2'];
//--- IST -----------------------------------------------------------------------------------------
$z = $GLOBALS['mysql']->query_single("SELECT SUM(tarifh) As tarifh, SUM(tarifn1) As tarifn1, SUM(tarifn2) As tarifn2 FROM tourenliste WHERE monat='".$monat."' and jahr='".$jahr."' and fahrer='".$mid."' and typ in(3,4,5,17,18)");
$data['ist_h']=$z['tarifh'];
$data['ist_n1']=$z['tarifn1']; //nachtzuschläge 25
$data['ist_n2']=$z['tarifn2']; //nachtzuschläge 40
if($z['tarifh'] < $ma['grund_h']) { $data['w1']=1; } else { $data['w1']=0; }
if($z['tarifn1']< $ma['grund_n1']) { $data['w2']=1; } else { $data['w2']=0; }
if($z['tarifn2']< $ma['grund_n2']) { $data['w3']=1; } else { $data['w3']=0; }
//--- CALC ----------------------------------------------------------------------------------------
$data['calc_h']=$gl['grund_h'];
$data['calc_n1']=$gl['grund_n1'];
$data['calc_n2']=$gl['grund_n2'];
//--- Zusatz ----------------------------------------------------------------------------------------
$data['zusatz_h']=$gl['zusatz_h'];
$data['zusatz_n1']=$gl['zusatz_n1'];
$data['zusatz_n2']=$gl['zusatz_n2'];
//--------------- Zwischensumme Brutto
$data['summe_h'] =$data['calc_h'] +$data['zusatz_h'];
$data['summe_n1']=$data['calc_n1']+$data['zusatz_n1'];
$data['summe_n2']=$data['calc_n2']+$data['zusatz_n2'];
$data['brutto']=$data['summe_h']*12; // $data['brutto']=$brutto;
//--------------------------------------------------------------------------------
$brutto=$data['summe_h']*12; $bruttox=$brutto*100;
$apiurl='https://www.bmf-steuerrechner.de/interface/2023Version1.xhtml?code=ext2023';
$apiurl=$apiurl.'&LZZ=2';
if ($gl['kinder']==0 && $gl['alter']<24) { // ab 24 Jahren Kinderloszuschlag
$apiurl=$apiurl.'&PVZ=1';
}
$apiurl=$apiurl."&RE4=".$bruttox; //Brutto
$apiurl=$apiurl."&STKL=".$gl['steuerkl']; //Steuerklasse
if($gl['steuerkl']==4) { $apiurl=$apiurl.'&F=1'; } //Faktor bei STKL 4
$apiurl=$apiurl.'&PVS=1'; //Pfeleversicherung Sachsen
$apiurl=$apiurl."&ZKF=".$gl['kinderfb']; //Kinderfreibeträge
if($gl['kirche']==20) { $gl['kirche']=0; }
$apiurl=$apiurl."&R=".$gl['kirche']; //Religionszugehörigkeit
//--------------------------------------------------------------------------------
function xml_attribute($object, $attribute)
{
if(isset($object[$attribute]))
return (string) $object[$attribute];
}
//--------------------------------------------------------------------------------
$url = $apiurl; $xml = simplexml_load_file($url);
//$ks=xml_attribute($xml->ausgaben->ausgabe[0], 'value'); $data['ksteuer']=$ks/100; //--- Kirchensteuer
$ls=xml_attribute($xml->ausgaben->ausgabe[3], 'value'); $data['lsteuer']=$ls/100; $data['lsteuer']=round($data['lsteuer'], 2); //--- Lohnsteuer
//--------------------------------------------------------------------------------
if($gl['kirche']==20 OR $gl['kirche']==0) { $data['ksteuer']=0; }else{ $data['ksteuer']=$data['brutto']*0.008; } $data['ksteuer']=round($data['ksteuer'], 2);
$data['netto_zs']=$data['brutto']-$data['ksteuer']-$data['lsteuer'];
//--------------------------------------------------------------------------------
//--- Krankenversicherung
$temp1=$brutto*0.073;
$temp2=$gl['kkzuschlag']/200;
$temp3=$brutto*$temp2;
$data['kv']=$temp1+$temp3;
$data['kv']=round($data['kv'], 2);
$data['kz']=$gl['kkzuschlag'];
//--- Pflegeversicherung
$data['pv']=$brutto*0.02025;
$data['pv']=round($data['pv'], 2);
//--- Kinderlos
if($gl['kkzuschlag']>0) {
$data['kl']=$brutto*0.0035;
$data['kl']=round($data['kl'], 2);
} else { $data['kl']=0; }
//--- Rentenversicherung
$data['rv']=$brutto*0.093;
$data['rv']=round($data['rv'], 2);
//--- Rentenversicherung
$data['al']=$brutto*0.013;
$data['al']=round($data['al'], 2);
//---------------------------------------------------------------------------------------------
//--- Nettorechnung
$data['netto']=$data['netto_zs']-$data['kv']-$data['pv']-$data['kl']-$data['rv']-$data['al'];
//---------------------------------------------------------------------------------------------
//--- Nachtzuschläge
$data['nz1']=$data['summe_n1']*12*0.25;
$data['nz2']=$data['summe_n2']*12*0.40;
$data['netto_ges']=$data['netto']+$data['nz1']+$data['nz2'];
//echo "<pre>"; print_r($data['test']); echo "</pre>";
/*
https://www.bmf-steuerrechner.de/interface/2023Version1.xhtml?code=ext2023
&LZZ=2
&JRE4ENT=0&JVBEZ=0&KRV=0&KVZ=0.9&LZZ=2&PKPV=0&PVS=0&PVZ=0&PKV=0&R=1&RE4=200000&JRE4=2400000&SONSTB=0&SONSTENT=0&JRE4ENT=0&STERBE=0&STKL=1&VBEZ=0&VBEZM=0&VBEZS=0&VBS=0&VKAPA=0&VMT=0&ZKF=0&ZMVB=12
KVZ=1,6
LZZ 1 jahr 2 Monat
PKV 0 = gesetzlich krankenversicherte Arbeitnehmer
1 = ausschließlich privat krankenversicherte Arbeitnehmer ohne
Arbeitgeberzuschuss
2 = ausschließlich privat krankenversicherte Arbeitnehmer mit
Arbeitgeberzuschuss
PVS 1, wenn bei der sozialen Pflegeversicherung die Besonderheiten in
Sachsen zu berücksichtigen sind bzw. zu berücksichtigen wären
PVZ 1, wenn der Arbeitnehmer den Zuschlag zur sozialen
Pflegeversicherung zu zahlen hat ab 24 Jahren Kinderlos
RE4 Steuerpflichtiger Arbeitslohn für den Lohnzahlungszeitraum
*/
$template->assign('monat', $monat);
$template->assign('jahr', $jahr);
$template->assign('ma_id', $mid);
$template->assign('ld', $data);
$template->assign('content', 'tpl/ajax/l_summe.tpl');
?>