View | Details | Raw Unified | Return to bug 22540
Collapse All | Expand All

(-)a/misc/sip_cli_emulator.pl (-6 / +66 lines)
Lines 258-263 my $handlers = { Link Here
258
            'transaction_id',
258
            'transaction_id',
259
        ],
259
        ],
260
    },
260
    },
261
    hold => {
262
        name       => 'Hold',
263
        subroutine => \&build_hold_command_message,
264
        parameters => {
265
            hold_mode           => '+',
266
            transaction_date    => $transaction_date,
267
            expiration_date     => undef,
268
            pickup_location     => undef,
269
            hold_type           => undef,
270
            institution_id      => $location_code,
271
            patron_identifier   => $patron_identifier,
272
            patron_password     => $patron_password,
273
            item_identifier     => $item_identifier,
274
            title_identifier    => undef,
275
            terminal_password   => $terminal_password,
276
            fee_acknowledged    => $fee_acknowledged,
277
        },
278
        optional => [
279
            'expiration_date',
280
            'pickup_location',
281
            'hold_type',
282
            'patron_password',
283
            'item_identifier',
284
            'title_identifier',
285
            'terminal_password',
286
            'fee_acknowledged',
287
        ],
288
    },
261
};
289
};
262
290
263
my $data = run_command_message('login');
291
my $data = run_command_message('login');
Lines 459-464 sub build_checkin_command_message { Link Here
459
      . build_field( FID_CANCEL,       $cancel, { optional => 1 } );
487
      . build_field( FID_CANCEL,       $cancel, { optional => 1 } );
460
}
488
}
461
489
490
sub build_hold_command_message {
491
    my ($params) = @_;
492
493
    my $hold_mode         = $params->{hold_mode} || '+';
494
    my $transaction_date  = $params->{transaction_date};
495
    my $expiration_date   = $params->{expiration_date};
496
    my $pickup_location   = $params->{pickup_location};
497
    my $hold_type         = $params->{hold_type};
498
    my $institution_id    = $params->{institution_id};
499
    my $patron_identifier = $params->{patron_identifier};
500
    my $patron_password   = $params->{patron_password};
501
    my $item_identifier   = $params->{item_identifier};
502
    my $title_identifier  = $params->{title_identifier};
503
    my $terminal_password = $params->{terminal_password};
504
    my $fee_acknowledged  = $params->{fee_acknowledged} || 'N';
505
506
    return
507
        HOLD
508
      . $hold_mode
509
      . $transaction_date
510
      . build_field( FID_EXPIRATION,   $expiration_date,   { optional => 1 } )
511
      . build_field( FID_PICKUP_LOCN,  $pickup_location,   { optional => 1 } )
512
      . build_field( FID_HOLD_TYPE,    $hold_type,         { optional => 1 } )
513
      . build_field( FID_INST_ID,      $institution_id                       )
514
      . build_field( FID_PATRON_ID,    $patron_identifier                    )
515
      . build_field( FID_PATRON_PWD,   $patron_password,   { optional => 1 } )
516
      . build_field( FID_ITEM_ID,      $item_identifier,   { optional => 1 } )
517
      . build_field( FID_TITLE_ID,     $title_identifier,  { optional => 1 } )
518
      . build_field( FID_TERMINAL_PWD, $terminal_password, { optional => 1 } )
519
      . build_field( FID_FEE_ACK,      $fee_acknowledged,  { optional => 1 } );
520
}
521
462
sub build_renew_command_message {
522
sub build_renew_command_message {
463
    my ($params) = @_;
523
    my ($params) = @_;
464
524
Lines 580-591 Options: Link Here
580
  -m --message     SIP2 message to execute
640
  -m --message     SIP2 message to execute
581
641
582
  Implemented Messages:
642
  Implemented Messages:
583
    patron_status_request
584
    patron_information
585
    item_information
586
    checkout
587
    checkin
643
    checkin
588
    renew
644
    checkout
589
    fee_paid
645
    fee_paid
646
    hold
647
    item_information
648
    patron_information
649
    patron_status_request
650
    renew
590
/
651
/
591
}
652
}
592
- 

Return to bug 22540