|
Lines 1614-1661
sub CancelReceipt {
Link Here
|
| 1614 |
} else { |
1614 |
} else { |
| 1615 |
# The order line has a parent, increase parent quantity and delete |
1615 |
# The order line has a parent, increase parent quantity and delete |
| 1616 |
# the order line. |
1616 |
# the order line. |
| 1617 |
$query = qq{ |
1617 |
unless ( $order_obj->basket->is_standing ) { |
| 1618 |
SELECT quantity, datereceived |
1618 |
$query = qq{ |
| 1619 |
FROM aqorders |
1619 |
SELECT quantity, datereceived |
| 1620 |
WHERE ordernumber = ? |
1620 |
FROM aqorders |
| 1621 |
}; |
1621 |
WHERE ordernumber = ? |
| 1622 |
$sth = $dbh->prepare($query); |
1622 |
}; |
| 1623 |
$sth->execute($parent_ordernumber); |
1623 |
$sth = $dbh->prepare($query); |
| 1624 |
my $parent_order = $sth->fetchrow_hashref; |
1624 |
$sth->execute($parent_ordernumber); |
| 1625 |
unless($parent_order) { |
1625 |
my $parent_order = $sth->fetchrow_hashref; |
| 1626 |
warn "Parent order $parent_ordernumber does not exist."; |
1626 |
unless($parent_order) { |
| 1627 |
return; |
1627 |
warn "Parent order $parent_ordernumber does not exist."; |
| 1628 |
} |
1628 |
return; |
| 1629 |
if($parent_order->{'datereceived'}) { |
1629 |
} |
| 1630 |
warn "CancelReceipt: parent order is received.". |
1630 |
if($parent_order->{'datereceived'}) { |
| 1631 |
" Can't cancel receipt."; |
1631 |
warn "CancelReceipt: parent order is received.". |
| 1632 |
return; |
1632 |
" Can't cancel receipt."; |
| 1633 |
} |
1633 |
return; |
| 1634 |
$query = qq{ |
1634 |
} |
| 1635 |
UPDATE aqorders |
1635 |
$query = qq{ |
| 1636 |
SET quantity = ?, |
1636 |
UPDATE aqorders |
| 1637 |
orderstatus = 'ordered' |
1637 |
SET quantity = ?, |
| 1638 |
WHERE ordernumber = ? |
1638 |
orderstatus = 'ordered' |
| 1639 |
}; |
1639 |
WHERE ordernumber = ? |
| 1640 |
$sth = $dbh->prepare($query); |
1640 |
}; |
| 1641 |
my $rv = $sth->execute( |
1641 |
$sth = $dbh->prepare($query); |
| 1642 |
$order->{'quantity'} + $parent_order->{'quantity'}, |
1642 |
warn "setting ". |
| 1643 |
$parent_ordernumber |
1643 |
$order->{'quantity'} + $parent_order->{'quantity'} . " to $parent_ordernumber"; |
| 1644 |
); |
1644 |
my $rv = $sth->execute( |
| 1645 |
unless($rv) { |
1645 |
$order->{'quantity'} + $parent_order->{'quantity'}, |
| 1646 |
warn "Cannot update parent order line, so do not cancel". |
1646 |
$parent_ordernumber |
| 1647 |
" receipt"; |
1647 |
); |
| 1648 |
return; |
1648 |
unless($rv) { |
| 1649 |
} |
1649 |
warn "Cannot update parent order line, so do not cancel". |
|
|
1650 |
" receipt"; |
| 1651 |
return; |
| 1652 |
} |
| 1650 |
|
1653 |
|
| 1651 |
# Recalculate tax_value |
1654 |
# Recalculate tax_value |
| 1652 |
$dbh->do(q| |
1655 |
$dbh->do(q| |
| 1653 |
UPDATE aqorders |
1656 |
UPDATE aqorders |
| 1654 |
SET |
1657 |
SET |
| 1655 |
tax_value_on_ordering = quantity * | . get_rounding_sql(q|ecost_tax_excluded|) . q| * tax_rate_on_ordering, |
1658 |
tax_value_on_ordering = quantity * | . get_rounding_sql(q|ecost_tax_excluded|) . q| * tax_rate_on_ordering, |
| 1656 |
tax_value_on_receiving = quantity * | . get_rounding_sql(q|unitprice_tax_excluded|) . q| * tax_rate_on_receiving |
1659 |
tax_value_on_receiving = quantity * | . get_rounding_sql(q|unitprice_tax_excluded|) . q| * tax_rate_on_receiving |
| 1657 |
WHERE ordernumber = ? |
1660 |
WHERE ordernumber = ? |
| 1658 |
|, undef, $parent_ordernumber); |
1661 |
|, undef, $parent_ordernumber); |
|
|
1662 |
} |
| 1659 |
|
1663 |
|
| 1660 |
_cancel_items_receipt( $order_obj, $parent_ordernumber ); |
1664 |
_cancel_items_receipt( $order_obj, $parent_ordernumber ); |
| 1661 |
# Delete order line |
1665 |
# Delete order line |
| 1662 |
- |
|
|