projekt uebergeordnetes_projekt nummernkreis

This commit is contained in:
OpenXE 2025-01-26 20:34:38 +01:00
parent 91146d35d2
commit 472c23b451
4 changed files with 52 additions and 9 deletions

View File

@ -80375,6 +80375,17 @@
"Extra": "",
"Privileges": "select,insert,update,references",
"Comment": ""
},
{
"Field": "uebergeordnetes_projekt",
"Type": "int(11)",
"Collation": null,
"Null": "NO",
"Key": "",
"Default": "0",
"Extra": "",
"Privileges": "select,insert,update,references",
"Comment": ""
}
],
"keys": [

View File

@ -27254,6 +27254,23 @@ function Firmendaten($field,$projekt="")
$eigenernummernkreis = $this->app->DB->Select("SELECT eigenernummernkreis FROM projekt WHERE id='$projekt' LIMIT 1");
$belegnr = '';
$untergeordnetes_projekt = $projekt;
if (empty($eigenernummernkreis)) {
do {
$uebergeordnetes_projekt = $this->app->DB->Select("SELECT uebergeordnetes_projekt FROM projekt WHERE id='$untergeordnetes_projekt' LIMIT 1");
if (!empty($uebergeordnetes_projekt)) {
$eigenernummernkreis = $this->app->DB->Select("SELECT eigenernummernkreis FROM projekt WHERE id='$uebergeordnetes_projekt' LIMIT 1");
if ($eigenernummernkreis) {
$projekt = $uebergeordnetes_projekt;
break;
} else {
$untergeordnetes_projekt = $uebergeordnetes_projekt;
}
}
} while (!empty($uebergeordnetes_projekt) && $uebergeordnetes_projekt != $projekt);
}
if($eigenernummernkreis=='1')
{
$allowedtypes = ['angebot', 'auftrag', 'rechnung', 'lieferschein', 'arbeitsnachweis', 'reisekosten',

View File

@ -46,6 +46,12 @@
<input type="text" name="verantwortlicher" id="verantwortlicher" size="30" value="[VERANTWORTLICHER]">
</td>
</tr>
<tr>
<td>&Uuml;bergeordnetes Projekt:</td>
<td>
<input type="text" name="uebergeordnetes_projekt" id="uebergeordnetes_projekt" size="30" value="[UEBERGEORDNETES_PROJEKT]"><i>Für Nummernkreise</i>
</td>
</tr>
<tr>
<td>Status:</td>
<td>

View File

@ -1890,6 +1890,10 @@ class Projekt extends GenProjekt {
{
$kunde = $this->app->Secure->GetPOST("kunde");
$verantwortlicher = $this->app->Secure->GetPOST("verantwortlicher");
$uebergeordnetes_projekt = $this->app->Secure->GetPOST('uebergeordnetes_projekt');
$uebergeordnetes_projekt = $this->app->erp->ReplaceProjektName(true,$uebergeordnetes_projekt,true);
$kundennummer = strstr($kunde,' ',true);
$mitarbeiternummer = strstr($verantwortlicher,' ',true);
$kundeid = $this->app->DB->Select("SELECT id FROM adresse WHERE kundennummer!='' AND kundennummer='$kundennummer' AND geloescht!=1 LIMIT 1");
@ -1921,7 +1925,7 @@ class Projekt extends GenProjekt {
}
$this->app->FormHandler->FormUpdateDatabase("projekt",$id);
$this->app->DB->Update("UPDATE projekt SET kunde='$kundeid', verantwortlicher='$verantwortlicherid' WHERE id='$id' LIMIT 1");
$this->app->DB->Update("UPDATE projekt SET kunde='$kundeid', verantwortlicher='$verantwortlicherid', uebergeordnetes_projekt='$uebergeordnetes_projekt' WHERE id='$id' LIMIT 1");
if($msg!="")
{
header("Location: index.php?module=projekt&action=uebersicht&id=$id&msg=$msg");
@ -1931,12 +1935,13 @@ class Projekt extends GenProjekt {
}
$this->app->FormHandler->FormGetVars("projekt",$id);
$data = $this->app->DB->SelectArr("SELECT CONCAT(a.kundennummer,' ',a.name) as kunde, CONCAT(a2.id,' ',a2.name) as mitarbeiter, status FROM projekt p
$data = $this->app->DB->SelectArr("SELECT CONCAT(a.kundennummer,' ',a.name) as kunde, CONCAT(a2.id,' ',a2.name) as mitarbeiter, status, uebergeordnetes_projekt FROM projekt p
LEFT JOIN adresse a ON a.id=p.kunde LEFT JOIN adresse a2 ON a2.id=p.verantwortlicher WHERE p.id='$id' LIMIT 1");
if(isset($data[0]))
{
$this->app->Tpl->Set('KUNDE',$data[0]['kunde']);
$this->app->Tpl->Set('VERANTWORTLICHER',$data[0]['mitarbeiter']);
$this->app->Tpl->Set('VERANTWORTLICHER',$data[0]['mitarbeiter']);
$this->app->Tpl->Set('UEBERGEORDNETES_PROJEKT',$this->app->erp->ReplaceProjektName(false,$data[0]['uebergeordnetes_projekt'],false));
switch($data[0]['status']){
case 'gestartet':
case 'geplant':
@ -1946,8 +1951,6 @@ class Projekt extends GenProjekt {
}
}
for($i = 0; $i <= 10; $i++)
{
$n1 = 'projektfreifeld'.$i.'typ';
@ -2041,9 +2044,10 @@ class Projekt extends GenProjekt {
$this->app->Tpl->Set("FREIFELDER",$output);
$this->app->YUI->AutoComplete("abkuerzung","projektname",1);
// $this->app->YUI->AutoComplete("abkuerzung","projektname",1);
$this->app->YUI->AutoComplete("kunde","kunde");
$this->app->YUI->AutoComplete("verantwortlicher","adresse");
$this->app->YUI->AutoComplete("uebergeordnetes_projekt","projektname");
$this->app->YUI->CkEditor("beschreibung","belege");
$this->app->YUI->CkEditor("sonstiges","internal");
$this->app->Tpl->Parse('PAGE','projekt_uebersicht.tpl');
@ -2825,9 +2829,14 @@ class Projekt extends GenProjekt {
if($check > 0){
$this->app->DB->Update(
"UPDATE `projekt`
SET `name` = '" . $data['name'] . "', `abkuerzung` = '" . $data['abkuerzung'] . "',
`kunde` = '" . $data['kunde'] . "', `verantwortlicher` = '" . $data['verantwortlicher'] . "',
`beschreibung` = '" . $data['beschreibung'] . "', `status` = '" . $data['status'] . "'
SET
`name` = '" . $data['name'] . "',
`abkuerzung` = '" . $data['abkuerzung'] . "',
`kunde` = '" . $data['kunde'] . "',
`verantwortlicher` = '" . $data['verantwortlicher'] . "',
`uebergeordnetes_projekt` = '" . $data['uebergeordnetes_projekt'] . "',
`beschreibung` = '" . $data['beschreibung'] . "',
`status` = '" . $data['status'] . "'
WHERE `id` = '$check'
LIMIT 1"
);