ISmsService.cs 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. using LYFZ.Model.ISmsModel;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.ServiceModel;
  6. using System.ServiceModel.Activation;
  7. using System.ServiceModel.Web;
  8. using System.Text;
  9. namespace LYFZ.SWcfServiceLibrary
  10. {
  11. [ServiceContract]
  12. public interface ISmsService
  13. {
  14. #region 软件有效期验证
  15. /// <summary>
  16. /// 获取软件验证信息
  17. /// </summary>
  18. /// <returns></returns>
  19. [OperationContract]
  20. [WebInvoke(UriTemplate = "GetSmsSendToken", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  21. ResultData<SoftwareInfo> GetSmsSendToken(System.IO.Stream stream);
  22. #endregion
  23. #region 短信帐号管理接口
  24. /// <summary>
  25. /// 用户登录
  26. /// </summary>
  27. /// <param name="account">帐号</param>
  28. /// <param name="password">密码</param>
  29. /// <param name="t">时间戳(yyyyMMddhhmmsss)</param>
  30. /// <returns></returns>
  31. [OperationContract]
  32. [WebInvoke(UriTemplate = "GetToken", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  33. ResultData<UserToken> GetToken(System.IO.Stream stream);
  34. /// <summary>
  35. /// 设置有效期
  36. /// </summary>
  37. /// <param name="stream"></param>
  38. /// <returns></returns>
  39. [OperationContract]
  40. [WebInvoke(UriTemplate = "SetValidDateRuns/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  41. ResultData<string> SetValidDateRuns(System.IO.Stream stream, string token);
  42. /// <summary>
  43. /// 添加修改客户短信帐号
  44. /// </summary>
  45. /// <param name="stream"></param>
  46. /// <returns></returns>
  47. [OperationContract]
  48. [WebInvoke(UriTemplate = "CustomerSmsAccount/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  49. ResultData<LYFZ.Model.ISmsModel.CustomerInfo> CustomerSmsAccount(System.IO.Stream stream,string token);
  50. /// <summary>
  51. /// 获取短信发送通道列表
  52. /// </summary>
  53. /// <param name="stream"></param>
  54. /// <returns></returns>
  55. [OperationContract]
  56. [WebInvoke(UriTemplate = "SmsChannel", Method = "GET", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  57. ResultData<string[]> SmsChannel();
  58. /// <summary>
  59. /// 获取用户信息
  60. /// </summary>
  61. /// <param name="account">帐号</param>
  62. /// <param name="token">token</param>
  63. /// <returns></returns>
  64. [OperationContract]
  65. [WebGet(UriTemplate = "GetCustomerAccount/{account}/{token}", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  66. ResultData<LYFZ.Model.ISmsModel.CustomerInfo> GetCustomerAccount(string account, string token);
  67. /// <summary>
  68. /// 获取客户短信帐号集合
  69. /// </summary>
  70. /// <param name="stream"></param>
  71. /// <returns></returns>
  72. [OperationContract]
  73. [WebInvoke(UriTemplate = "GetCustomerList/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  74. ResultData<ReturnPageList<LYFZ.Model.ISmsModel.CustomerInfo>> GetCustomerList(System.IO.Stream stream, string token);
  75. /// <summary>
  76. /// 获取短信充值单价
  77. /// </summary>
  78. /// <param name="stream"></param>
  79. /// <returns></returns>
  80. [OperationContract]
  81. [WebGet(UriTemplate = "SmsPrice", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  82. ResultData<decimal> SmsPrice();
  83. /// <summary>
  84. /// 短信充值
  85. /// </summary>
  86. /// <param name="stream"></param>
  87. /// <returns></returns>
  88. [OperationContract]
  89. [WebInvoke(UriTemplate = "SmsRecharge/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  90. ResultData<RechargeRecordInfo> SmsRecharge(System.IO.Stream stream, string token);
  91. /// <summary>
  92. /// 获取帐号充值记录
  93. /// </summary>
  94. /// <param name="stream"></param>
  95. /// <param name="token"></param>
  96. /// <returns></returns>
  97. [OperationContract]
  98. [WebInvoke(UriTemplate = "GetRechargeRecord/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  99. ResultData<ReturnPageList<LYFZ.Model.ISmsModel.RechargeRecordInfo>> GetRechargeRecord(System.IO.Stream stream, string token);
  100. /// <summary>
  101. /// 获取短信记录
  102. /// </summary>
  103. /// <param name="stream"></param>
  104. /// <param name="token"></param>
  105. /// <returns></returns>
  106. [OperationContract]
  107. [WebInvoke(UriTemplate = "GetMessageRecord/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  108. ResultData<ReturnPageList<LYFZ.Model.ISmsModel.SMSSendRecordInfo>> GetMessageRecord(System.IO.Stream stream, string token);
  109. /// <summary>
  110. /// 删除客户帐号
  111. /// </summary>
  112. /// <param name="stream"></param>
  113. /// <param name="token"></param>
  114. /// <returns></returns>
  115. [OperationContract]
  116. [WebInvoke(UriTemplate = "DeleteCustomer/{token}", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  117. ResultData<string> DeleteCustomer(System.IO.Stream stream, string token);
  118. /// <summary>
  119. /// 查询客户帐号余额
  120. /// </summary>
  121. /// <param name="stream"></param>
  122. /// <param name="token"></param>
  123. /// <returns></returns>
  124. [OperationContract]
  125. [WebInvoke(UriTemplate = "QueryBalance", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  126. ResultData<SmsAccountInfo> QueryBalance(System.IO.Stream stream);
  127. /// <summary>
  128. /// 查询客户帐号最新余额
  129. /// </summary>
  130. /// <param name="stream"></param>
  131. /// <param name="token"></param>
  132. /// <returns></returns>
  133. [OperationContract]
  134. [WebInvoke(UriTemplate = "QueryLatestBalance", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  135. ResultData<SmsAccountInfo> QueryLatestBalance(System.IO.Stream stream);
  136. /// <summary>
  137. /// 发送短信
  138. /// </summary>
  139. /// <param name="stream"></param>
  140. /// <param name="token"></param>
  141. /// <returns></returns>
  142. [OperationContract]
  143. [WebInvoke(UriTemplate = "SendMessage", Method = "POST", RequestFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, ResponseFormat = WebMessageFormat.Json)]
  144. ResultData<SmsSendInfo> SendMessage(System.IO.Stream stream);
  145. #endregion
  146. }
  147. }