@Override
  public Passport perform(PassCode passCode) {
    log.info("Gugong perform serialNo: " + passCode.getSerialNo());
    log.info("Gugong getOrder: " + passCode.getSerialNo());

    Passport passport = null;
    GugongOrderResponse response = null;
    try {
      response = GugongHTTPUtil.getOrderStatus(passCode);
    } catch (Exception e) {
      log.error(e);
    }
    if (response != null) {
      // 永乐方已经出票,驴妈妈自动履行
      if (response.isSuccess() && response.getStatus() == 2) {
        passport = new Passport();
        passport.setChild("0");
        passport.setAdult("0");
        passport.setUsedDate(new Date());
        passport.setDeviceId("Gugong");
      } else {
        String codeMsg = GugongConstant.getInstance().getOrderStatus(response.getStatus());
        log.error("Gugong auto perform failed: ".concat(codeMsg));
      }
    } else {
      this.addComLog(
          passCode,
          GugongConstant.getInstance().getCodeMsg(response.getResultcode()),
          "查询永乐方订单状态失败");
      log.error(
          "Gugong auto perform failed: "
              .concat(GugongConstant.getInstance().getCodeMsg(response.getResultcode())));
    }

    return passport;
  }