IService.cs 6.69 KB
using XingYe_ACS.BaseStruct;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
using System.Threading.Tasks;

namespace XingYe_ACS.WebApi
{
    [ServiceContract]
    public interface IService
    {
        /// <summary>
        /// 增删改码值信息
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChangePoint")]
        ReMessage ChangePoint(Stream stream);

        /// <summary>
        /// 增删改AGV信息
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChangeAGV")]
        ReMessage ChangeAGV(Stream stream);

        /// <summary>
        /// 增删改站台信息
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ChangeStation")]
        ReMessage ChangeStation(Stream stream);

        /// <summary>
        /// 增删改任务分解
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "TaskSplit")]
        ReMessage TaskSplit(Stream stream);

        /// <summary>
        /// 更改电量配置信息
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "KeyValue")]
        ReMessage KeyValue(Stream stream);

        /// <summary>
        /// 任务下发
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "TaskAssign")]
        ReMessage TaskAssign(Stream stream);

        /// <summary>
        /// 任务暂停、取消
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "TaskChange")]
        ReMessage TaskChange(Stream stream);

        /// <summary>
        /// 连接AGV,告知上位机进行单步控制AGV
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "LinkAgv")]
        ReMessage LinkAgv(Stream stream);

        /// <summary>
        /// 单步控制AGV动作
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "ControlAgv")]
        ReMessage ControlAgv(Stream stream);

        /// <summary>
        /// 一键关机
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "CloseAgv")]
        ReMessage CloseAgv(Stream stream);

        /// <summary>
        /// 任务AGV群组绑定
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "TaskAgvGroup")]
        ReMessage TaskAgvGroup(Stream stream);

        /// <summary>
        /// 任务预览
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "TaskPreview")]
        ReMessage TaskPreview(Stream stream);

        /// <summary>
        /// Demo任务预览
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "DemoTaskPreview")]
        ReMessage DemoTaskPreview(Stream stream);

        /// <summary>
        /// 任务完成信息
        /// </summary>
        /// <param name="stream"></param>
        /// <returns></returns>
        [OperationContract]
        [WebInvoke(Method = "POST",
            BodyStyle = WebMessageBodyStyle.WrappedRequest,
            RequestFormat = WebMessageFormat.Json,
            ResponseFormat = WebMessageFormat.Json,
            UriTemplate = "TaskFinish")]
        ReMessage TaskFinish(Stream stream);
    }
}