@JwServicePublish
 public JwList<Integer> getItemMovementItemIds(
     AcActionTypeEnum flightItemActionType,
     Integer type,
     JwTimestamp startEffectiveUtcTs,
     JwTimestamp endEffectiveUtcTs,
     String receiveAirportFilterType,
     String receiveAirportCode,
     String deliverAirportFilterType,
     String deliverAirportCode,
     String itemMovementHashKey) {
   AcImrMovementType movementType = AcItemMovementVo.getMovementType(type);
   AcImrItemMovementReport r = new AcImrItemMovementReport(getAccess());
   return r.runItems(
       flightItemActionType,
       movementType,
       itemMovementHashKey,
       startEffectiveUtcTs,
       endEffectiveUtcTs);
 }
 @JwServicePublish
 public JwList<AcItemMovementVo> getItemMovementReport(
     AcActionTypeEnum flightItemActionType,
     Integer type,
     JwTimestamp startEffectiveUtcTs,
     JwTimestamp endEffectiveUtcTs,
     String receiveAirportFilterType,
     String receiveAirportCode,
     String deliverAirportFilterType,
     String deliverAirportCode) {
   AcImrMovementType movementType = AcItemMovementVo.getMovementType(type);
   AcImrItemMovementReport r = new AcImrItemMovementReport(getAccess());
   JwList<AcItemMovementVo> v =
       r.run(flightItemActionType, movementType, startEffectiveUtcTs, endEffectiveUtcTs);
   filter(
       v,
       new ReceiveAirportCodeFilter(receiveAirportFilterType, receiveAirportCode),
       new DeliverAirportCodeFilter(deliverAirportFilterType, deliverAirportCode));
   return v;
 }
 protected String getAirportCode(AcItemMovementVo e) {
   return e.getExpectedDeliverAirportCode();
 }
 protected String getAirportCode(AcItemMovementVo e) {
   return e.getReceiveAirportCode();
 }