X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FLICENSES.pm;h=ca9c679f984fb1b420e51f63cae2608c1168f4ed;hb=f97b07787db5cacc0f90338fdb3c1237262917cb;hp=cbcc7913ca585838359ae171b7f607f9d5af1122;hpb=4dbb09950c9f5596646537c12d991c99086fe7c1;p=kivitendo-erp.git diff --git a/SL/LICENSES.pm b/SL/LICENSES.pm index cbcc7913c..ca9c679f9 100644 --- a/SL/LICENSES.pm +++ b/SL/LICENSES.pm @@ -35,24 +35,28 @@ package LICENSES; use SL::Form; +use strict; + sub save_license { $main::lxdebug->enter_sub(); my ($self, $myconfig, $form) = @_; - - $dbh = $form->dbconnect($myconfig); - - $query = qq| INSERT INTO license (licensenumber) VALUES ('$form->{licensenumber}')|; - $sth = $dbh->prepare($query); + + my $dbh = $form->dbconnect($myconfig); + + my $query = + qq| INSERT INTO license (licensenumber) VALUES ('$form->{licensenumber}')|; + my $sth = $dbh->prepare($query); $sth->execute || $form->dberror($query); $sth->finish(); - - $query = qq|SELECT l.id FROM license l WHERE l.licensenumber = '$form->{licensenumber}'|; + + $query = + qq|SELECT l.id FROM license l WHERE l.licensenumber = '$form->{licensenumber}'|; $sth = $dbh->prepare($query); $sth->execute || $form->dberror($query); - ($license_id) = $sth->fetchrow_array; + my ($license_id) = $sth->fetchrow_array; $sth->finish(); - + # save license $query = qq|UPDATE license SET validuntil = '$form->{validuntil}', @@ -65,18 +69,9 @@ sub save_license { $sth = $dbh->prepare($query); $sth->execute || $form->dberror($query); $sth->finish(); - - if ($form->{own_product}) { - $form->update_balance($dbh, - "parts", - "onhand", - qq|id = $form->{parts_id}|, - 1); - } - - - $dbh->disconnect(); - + + $dbh->disconnect(); + $main::lxdebug->leave_sub(); return $license_id; @@ -90,13 +85,13 @@ sub get_customers { my $ref; my $dbh = $form->dbconnect($myconfig); - my $f = $dbh->quote('%' . $form->{"customer_name"} . '%'); + my $f = $dbh->quote('%' . $form->{"customer_name"} . '%'); my $query = qq|SELECT * FROM customer WHERE name ilike $f|; - my $sth = $dbh->prepare($query); + my $sth = $dbh->prepare($query); $sth->execute || $form->dberror($query); $form->{"all_customers"} = []; - while ($ref = $sth->fetchrow_hashref(NAME_lc)) { - push(@{$form->{"all_customers"}}, $ref); + while ($ref = $sth->fetchrow_hashref("NAME_lc")) { + push(@{ $form->{"all_customers"} }, $ref); } $sth->finish(); $dbh->disconnect(); @@ -113,34 +108,38 @@ sub search { if ($form->{"partnumber"} || $form->{"description"}) { $f = "(parts_id IN (SELECT id FROM parts WHERE "; if ($form->{"partnumber"}) { - $f .= "(partnumber ILIKE " . - $dbh->quote('%' . $form->{"partnumber"} . '%') . ")"; + $f .= + "(partnumber ILIKE " + . $dbh->quote('%' . $form->{"partnumber"} . '%') . ")"; } if ($form->{"description"}) { $f .= " AND " if ($form->{"partnumber"}); - $f .= "(description ILIKE " . - $dbh->quote('%' . $form->{"description"} . '%') . ")"; + $f .= + "(description ILIKE " + . $dbh->quote('%' . $form->{"description"} . '%') . ")"; } $f .= "))"; } if ($form->{"customer_name"}) { $f .= " AND " if ($f); - $f .= "(customer_id IN (SELECT id FROM customer WHERE name ILIKE " . - $dbh->quote('%' . $form->{"customer_name"} . '%') . "))"; + $f .= + "(l.customer_id IN (SELECT id FROM customer WHERE name ILIKE " + . $dbh->quote('%' . $form->{"customer_name"} . '%') . "))"; } if (!$form->{"all"} && $form->{"expiring_in"}) { $f .= " AND " if ($f); - $f .= "(validuntil < now() + " . - $dbh->quote("" . $form->{"expiring_in"} . " months") . ")"; + $f .= + "(validuntil < now() + " + . $dbh->quote("" . $form->{"expiring_in"} . " months") . ")"; } if (!$form->{"show_expired"}) { $f .= " AND " if ($f); $f .= "(validuntil >= now())"; } - + if ($f) { $f = "WHERE (inventory_accno_id notnull) AND $f"; } else { @@ -164,20 +163,21 @@ sub search { $s .= " DESC"; } - $query = "SELECT l.*, p.partnumber, p.description, c.name, a.invnumber " . - "FROM license l " . - "LEFT JOIN parts p ON (p.id = l.parts_id) " . - "LEFT JOIN customer c ON (c.id = l.customer_id) " . - "LEFT JOIN ar a ON " . - "(a.id = (SELECT i.trans_id FROM invoice i WHERE i.id = " . - "(SELECT li.trans_id FROM licenseinvoice li WHERE li.license_id = l.id))) " . - "$f ORDER BY $s"; + $query = + "SELECT l.*, p.partnumber, p.description, c.name, a.invnumber " + . "FROM license l " + . "LEFT JOIN parts p ON (p.id = l.parts_id) " + . "LEFT JOIN customer c ON (c.id = l.customer_id) " + . "LEFT JOIN ar a ON " + . "(a.id = (SELECT i.trans_id FROM invoice i WHERE i.id = " + . "(SELECT li.trans_id FROM licenseinvoice li WHERE li.license_id = l.id))) " + . "$f ORDER BY $s"; $sth = $dbh->prepare($query); $sth->execute() || $form->dberror($query); $form->{"licenses"} = []; - while ($ref = $sth->fetchrow_hashref(NAME_lc)) { - push(@{$form->{"licenses"}}, $ref); + while ($ref = $sth->fetchrow_hashref("NAME_lc")) { + push(@{ $form->{"licenses"} }, $ref); } $sth->finish(); @@ -185,7 +185,6 @@ sub search { $main::lxdebug->leave_sub(); } - sub get_license { $main::lxdebug->enter_sub(); @@ -193,22 +192,24 @@ sub get_license { my ($ref, $sth, $query); my $dbh = $form->dbconnect($myconfig); - $query = "SELECT l.*, p.partnumber, p.description, c.name, c.street, " . - "c.zipcode, c.city, c.country, c.contact, c.phone, c.fax, c.homepage, " . - "c.email, c.notes, c.customernumber, c.language, a.invnumber " . - "FROM license l " . - "LEFT JOIN parts p ON (p.id = l.parts_id) " . - "LEFT JOIN customer c ON (c.id = l.customer_id) " . - "LEFT JOIN ar a ON " . - "(a.id = (SELECT i.trans_id FROM invoice i WHERE i.id = " . - "(SELECT li.trans_id FROM licenseinvoice li WHERE li.license_id = l.id))) " . - "LEFT JOIN invoice i ON " . - "(i.id = " . - "(SELECT li.trans_id FROM licenseinvoice li WHERE li.license_id = l.id)) " . - "WHERE l.id = " . $form->{"id"}; + $query = + "SELECT l.*, p.partnumber, p.description, c.name, c.street, " + . "c.zipcode, c.city, c.country, c.contact, c.phone, c.fax, c.homepage, " + . "c.email, c.notes, c.customernumber, c.language, a.invnumber " + . "FROM license l " + . "LEFT JOIN parts p ON (p.id = l.parts_id) " + . "LEFT JOIN customer c ON (c.id = l.customer_id) " + . "LEFT JOIN ar a ON " + . "(a.id = (SELECT i.trans_id FROM invoice i WHERE i.id = " + . "(SELECT li.trans_id FROM licenseinvoice li WHERE li.license_id = l.id))) " + . "LEFT JOIN invoice i ON " + . "(i.id = " + . "(SELECT li.trans_id FROM licenseinvoice li WHERE li.license_id = l.id)) " + . "WHERE l.id = " + . $form->{"id"}; $sth = $dbh->prepare($query); $sth->execute() || $form->dberror($query); - $form->{"license"} = $sth->fetchrow_hashref(NAME_lc); + $form->{"license"} = $sth->fetchrow_hashref("NAME_lc"); $sth->finish(); $dbh->disconnect(); $main::lxdebug->leave_sub();