Lines 2162-2196
sub AddReturn {
Link Here
|
2162 |
} |
2162 |
} |
2163 |
|
2163 |
|
2164 |
# check if we have a transfer for this document |
2164 |
# check if we have a transfer for this document |
2165 |
my $transfer = $item->get_transfer; |
2165 |
my $transfers = $item->get_transfers; |
|
|
2166 |
my $transfer = $transfers->next; |
2166 |
|
2167 |
|
2167 |
# if we have a transfer to complete, we update the line of transfers with the datearrived |
2168 |
# if we have a transfer to complete, we update the line of transfers with the datearrived |
2168 |
if ($transfer) { |
2169 |
if ($transfer) { |
2169 |
$validTransfer = 0; |
2170 |
$validTransfer = 0; |
2170 |
if ( $transfer->in_transit ) { |
2171 |
# Catch cancelled transfers, we've found the item now |
2171 |
if ( $transfer->tobranch eq $branch ) { |
2172 |
my $reverse; |
2172 |
$transfer->receive; |
2173 |
while ( $transfer && $transfer->is_cancelled ) { |
2173 |
$messages->{'TransferArrived'} = $transfer->frombranch; |
2174 |
$transfer->receive; |
2174 |
# validTransfer=1 allows us returning the item back if the reserve is cancelled |
2175 |
$messages->{'TransferTrigger'} = $transfer->reason; |
2175 |
$validTransfer = 1 if $transfer->reason eq 'Reserve'; |
2176 |
$messages->{'WrongTransferItem'} = $item->itemnumber; |
2176 |
} |
2177 |
$reverse = $transfer->frombranch; |
2177 |
else { |
2178 |
$transfer = $transfers->next; |
2178 |
$messages->{'WrongTransfer'} = $transfer->tobranch; |
|
|
2179 |
$messages->{'WrongTransferItem'} = $item->itemnumber; |
2180 |
$messages->{'TransferTrigger'} = $transfer->reason; |
2181 |
} |
2182 |
} |
2179 |
} |
2183 |
else { |
2180 |
if ( $transfer && $transfer->tobranch eq $branch ) { |
2184 |
if ( $transfer->tobranch eq $branch ) { |
2181 |
$transfer->receive; |
2185 |
$transfer->receive; |
2182 |
$messages->{'TransferArrived'} = $transfer->frombranch; |
2186 |
$messages->{'TransferArrived'} = $transfer->frombranch; |
2183 |
} |
2187 |
# validTransfer=1 allows us returning the item back if the reserve is cancelled |
2184 |
elsif ( $transfer && $transfer->in_transit ) { |
2188 |
$validTransfer = 1 if $transfer->reason eq 'Reserve'; |
2185 |
$messages->{'WrongTransfer'} = $transfer->tobranch; |
2189 |
} |
2186 |
$messages->{'WrongTransferItem'} = $item->itemnumber; |
2190 |
else { |
2187 |
} |
2191 |
$messages->{'WasTransfered'} = $transfer->tobranch; |
2188 |
elsif ( $transfer ) { |
2192 |
$messages->{'TransferTrigger'} = $transfer->reason; |
2189 |
$messages->{'WasTransfered'} = $transfer->tobranch; |
2193 |
} |
2190 |
$messages->{'TransferTrigger'} = $transfer->reason; |
|
|
2191 |
} else { |
2192 |
$messages->{'TransferCancelled'} = $reverse; |
2194 |
} |
2193 |
} |
2195 |
} |
2194 |
} |
2196 |
|
2195 |
|