fix bug when deleting ressource from project

This commit is contained in:
OliiverHacker
2021-04-29 11:06:51 +02:00
parent 35f1b00d7a
commit 898562e742
4 changed files with 88 additions and 16 deletions
+4
View File
@@ -267,8 +267,11 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
try
{
var col = tree.columns.getColumnFor(document.getAnonymousElementByAttribute(this ,'anonid', 'treecol-ressource-projekt_ressource_id'));
var projekt_ressource_id = tree.view.getCellText(tree.currentIndex, col);
var projekt_kurzbz = this.getAttribute('projekt_kurzbz');
var projektphase_id = this.getAttribute('projektphase_id');
//var projekt_ressource_id = this.getAttribute('projekt_ressource_id');
var soapBody = new SOAPObject("deleteProjektRessource");
//soapBody.appendChild(new SOAPObject("username")).val('joe');
@@ -286,6 +289,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
projektRessource.appendChild(new SOAPObject("projekt_kurzbz")).val('');
}
projektRessource.appendChild(new SOAPObject("ressource_id")).val(ressource_id);
projektRessource.appendChild(new SOAPObject("projekt_ressource_id")).val(projekt_ressource_id);
soapBody.appendChild(projektRessource);
var sr = new SOAPRequest("deleteProjektRessource",soapBody);
+66
View File
@@ -677,6 +677,72 @@ class ressource extends basis_db
return false;
}
$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projektphase_id=".$this->db_add_param($projektphase_id, FHC_INTEGER, false).';';
if($this->db_query($qry))
return true;
else
{
$this->errormsg = 'Fehler beim Löschen der Daten';
return false;
}
}
/**
* Löscht eine Ressource zu Projekt Zuordnung
* @param type $ressource_id
* @param type $projekt_kurzbz
* @return boolean
*/
public function deleteFromProjektWithProjektRessourceId($ressource_id, $projekt_kurzbz, $project_ressource_id)
{
if($ressource_id == '' || !is_numeric($ressource_id))
{
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
/*$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projekt_kurzbz=".$this->db_add_param($projekt_kurzbz, FHC_STRING, false).';';
*/
$qry="
DELETE FROM fue.tbl_projekt_ressource pr
USING fue.tbl_ressource r
WHERE r.ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false). "
AND pr.projekt_ressource_id=".$this->db_add_param($project_ressource_id, FHC_INTEGER, false). "
AND pr.projekt_kurzbz=".$this->db_add_param($projekt_kurzbz, FHC_STRING, false).';';
if($this->db_query($qry))
{
return true;
}
else
{
$this->errormsg = 'Fehler beim Löschen der Daten';
return false;
}
}
/**
* Löscht eine Ressource zu Phase Zuordnung
* @param type $ressource_id
* @param type $projekt_kurzbz
* @return boolean
*/
public function deleteFromPhaseWithProjektRessourceId($ressource_id, $projektphase_id, $project_ressource_id)
{
if($ressource_id == '' || !is_numeric($ressource_id))
{
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
if($projektphase_id == '' || !is_numeric($projektphase_id))
{
$this->errormsg = 'Ressource Id ist keine gültige Zahl';
return false;
}
$qry="DELETE FROM fue.tbl_projekt_ressource WHERE ressource_id =".$this->db_add_param($ressource_id, FHC_INTEGER, false)."
AND projektphase_id=".$this->db_add_param($projektphase_id, FHC_INTEGER, false).';';
+3 -1
View File
@@ -113,8 +113,10 @@ function deleteProjektRessource($username, $passwort, $projektRessource)
}
else
{
// von Projekt löschen
if($ressource->deleteFromProjekt($projektRessource->ressource_id, $projektRessource->projekt_kurzbz))
//if($ressource->deleteFromProjekt($projektRessource->ressource_id, $projektRessource->projekt_kurzbz))
if($ressource->deleteFromProjektWithProjektRessourceId($projektRessource->ressource_id, $projektRessource->projekt_kurzbz, $projektRessource->projekt_ressource_id))
return "Erfolg";
else
return "Fehler beim Löschen";
+1 -1
View File
@@ -37,7 +37,7 @@ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<wsdl:message name="DeleteProjektRessourceRequest">
<wsdl:part name="username" type="xsd:string" minOccurs="0"></wsdl:part>
<wsdl:part name="passwort" type="xsd:string" minOccurs="0"></wsdl:part>
<wsdl:part name="projektRessource" type="tns:projektRessource"></wsdl:part>
<wsdl:part name="projektRessource" type="xsd:projektRessource"></wsdl:part>
</wsdl:message>
<wsdl:message name="DeleteProjektRessourceResponse">