{flesh => 1, flesh_fields => {jub => ['attributes']}}
]) or return $e->die_event;
+ return $e->die_event(
+ new OpenILS::Event(
+ "BAD_PARAMS", payload => $li,
+ note => "acq.lineitem #" . $li->id .
+ ": purchase_order #" . $li->purchase_order
+ )
+ ) if $li->purchase_order;
+
$li->provider($po->provider);
$li->purchase_order($po->id);
$li->state('pending-order');
}
foreach my $li (@$lis) {
- unless ($li->state =~ /new|order-ready|pending-order/) {
+ if ($li->state !~ /new|order-ready|pending-order/ or
+ $li->purchase_order) {
$e->rollback;
return {success => 0, li => $li, error => 'bad-li-state'};
}