RailwayThirdManager.java 4.72 KB
/*
 * @(#)ApiLogManager.java
 *
 * Copyright (c) 2014-2017  xiniunet 版权所有
 * xiniunet. All rights reserved.
 *
 * This software is the confidential and proprietary
 * information of  xiniunet.
 * ("Confidential Information"). You shall not disclose
 * such Confidential Information and shall use it only
 * in accordance with the terms of the contract agreement
 * you entered into with xiniunet.
 */
package com.xiniunet.service.railway.biz;

import com.xiniunet.basic.request.AdvertisingFindByPositionRequest;
import com.xiniunet.basic.response.AdvertisingFindByPositionResponse;
import com.xiniunet.framework.base.BaseResponse;
import com.xiniunet.framework.security.Passport;
import com.xiniunet.railway.request.*;
import com.xiniunet.railway.response.*;

/**
 * 远程调用日志的管理方法.
 *
 * @author xiniunet
 */
public interface RailwayThirdManager {

    /**
     * 调用第三方接口
     * @param request
     * @return
     */
    RailwayGetPositionResponse getPosition(RailwayGetPositionRequest request, Passport passport);

    /**
     * 调用第三方接口(获取当前时间列车信息)
     * @param request
     * @param passport
     * @return
     */
    RailwayTransDetailCountGetResponse getTransCountDetail(RailwayTransDetailGetRequest request, Passport passport);


    /**
     * 调用第三方接口(获取当前时间列车信息)
     * @param request
     * @return
     */
    RailwayTransDetailGetResponse getTransDetail(RailwayTransDetailGetRequest request, Passport passport);

    /**
     * 调用第三方接口(获取布岗查询信息)
     * @param request
     * @return
     */
    RailwayPostPositionResponse getRailwayPostPosition(RailwayPostPositionGetRequest request, Passport passport);

    /**
     * 调用第三方接口(选岗添加)
     * @param request
     * @return
     */
    RailwayPostPositionCreateResponse createRailwayPostPosition(RailwayPostPositionCreateRequest request,Passport passport);

    /**
     * 调用第三方接口(签到新增)
     * @param request
     * @return
     */
    RailwayPostPositionCreateResponse createRailwayArrival(RailwayArrivalCreateRequest request, Passport passport);

    /**
     * 调用第三方接口(签退修改)
     * @param request
     * @return
     */
    RailwayPostPositionCreateResponse createRailwayLeave(RailwayLeaveCreateRequest request, Passport passport);

    /**
     * 调用第三方接口(志愿者考勤信息)
     * @param request
     * @return
     */
    RailwayPostPositionDetailResponse getRailwayPostPositionDetail(RailwayPostPositionDetailRequest request, Passport passport);

    /**
     * 调用第三方接口(志愿者选岗撤销)
     * @param request
     * @return
     */
    RailwayPostPositionCreateResponse cancelRailwayPostPosition(RailwayPostPositionCancelRequest request, Passport passport);

    /**
     * 调用第三方接口(根据车厢号查询位置)
     * @param request
     * @return
     */
    RailwayCarriagePositionFindResponse findRailwayCarriagePosition(RailwayCarriagePositionFindRequest request, Passport passport);
    /**
     * 事件上报回调
     * @param request
     * @return
     */
    RailwayReturnReportEventResponse returnRailwayReportEvent(RailwayReturnReportEventCreateRequest request, Passport passport);
    /**
     * 调用第三方接口(事件上报)
     * @param request
     * @return
     */
    RailwayReportEventResponse createRailwayReportEvent(RailwayReportEventCreateRequest request, Passport passport);

    /**
     * 调用第三方接口
     * @param request
     * @return
     */
    RailwayReportEventResponse createRailwayEventReportSft(RailwayReportEventSftRequest request, Passport passport);

    /**
     * wifi获取定位信息
     */
    WifiPositionResponse findRailwayWifiPosition(WifiPositionRequest request, Passport passport);

    /**
     * 第三方回调(事件处理结果)
     *
     * @param request  更新事件请求
     * @param passport 用户护照
     * @return 更新事件应答
     */
    RailwayThirdEventResponse updateEvent(EventUpdateRequest request, Passport passport);

    /**
     * 邮件发送
     * @param userId
     * @param passport
     * @return
     */
    BaseResponse sendMail(Long userId, Passport passport);

    /**
     * 调用第三方接口(志愿者报名状态)
     * @param request
     * @param passport
     * @return
     */
    RailwayPostPositionStatusResponse getRailwayPostPositionStatus(RailwayPostPositionStatusRequest request, Passport passport);

    /**
     * 获取广告位
     * @param request
     * @param passport
     * @return
     */
    AdvertisingFindByPositionResponse findAdvertisingByPosition(AdvertisingFindByPositionRequest request, Passport passport);
}