DKIBOSSPRDService.cs 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. /*******************************************************************************
  2. * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:DKIBOSSPRDService.cs
  5. * 2.功能描述:系统登录模块服务。
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * 陈晓野 2014/09/16 1.00 新建
  9. *******************************************************************************/
  10. using System;
  11. using System.Data;
  12. using System.Diagnostics;
  13. using System.Reflection;
  14. using System.ServiceModel;
  15. using System.ServiceModel.Activation;
  16. using Dongke.IBOSS.PRD.Basics.Library;
  17. using Dongke.IBOSS.PRD.Service.DKIBOSSPRDLogic;
  18. using Dongke.IBOSS.PRD.WCF.Contracts;
  19. using Dongke.IBOSS.PRD.WCF.DataModels;
  20. namespace Dongke.IBOSS.PRD.WCF.Services
  21. {
  22. /// <summary>
  23. /// 系统登录模块服务
  24. /// </summary>
  25. // 服务实现类,继承服务声明接口
  26. // 该标签声明该服务可以在ASP.NET下运行
  27. [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
  28. [ServiceBehavior(ConfigurationName = "DKIBOSSPRDService",
  29. InstanceContextMode = InstanceContextMode.PerCall,
  30. ConcurrencyMode = ConcurrencyMode.Multiple,
  31. UseSynchronizationContext = false)]
  32. public class DKIBOSSPRDService : ServicesBase, IDKIBOSSPRD
  33. {
  34. #region 构造函数
  35. /// <summary>
  36. /// 构造函数
  37. /// </summary>
  38. public DKIBOSSPRDService()
  39. : base()
  40. {
  41. }
  42. #endregion
  43. #region 服务连接测试
  44. /// <summary>
  45. /// 服务连接测试
  46. /// </summary>
  47. /// <returns></returns>
  48. public bool GetServiceState()
  49. {
  50. return true;
  51. }
  52. #endregion
  53. #region 系统登录、退出
  54. /// <summary>
  55. /// 系统登录
  56. /// </summary>
  57. /// <param name="requestEntity">系统登录请求</param>
  58. /// <returns>系统登录结果</returns>
  59. public LoginResultEntity DoLogin(LoginRequestEntity requestEntity)
  60. {
  61. LoginResultEntity result = ServiceInvoker.Invoke<LoginResultEntity>(this,
  62. () => DKIBOSSPRDLogic.DoLogin(requestEntity, "0"));
  63. result.CurrentUserEntity.Remarks = INIUtility.Instance(INIUtility.IniFile.Config).ReadIniData("WCFSetting", "ServerName");
  64. return result;
  65. }
  66. /// <summary>
  67. /// 系统登录
  68. /// </summary>
  69. /// <param name="requestEntity">系统登录请求</param>
  70. /// <returns>系统登录结果</returns>
  71. public LoginResultEntity DoLoginRefresh(LoginRequestEntity requestEntity)
  72. {
  73. LoginResultEntity result = ServiceInvoker.Invoke<LoginResultEntity>(this,
  74. () => DKIBOSSPRDLogic.DoLoginRefresh(requestEntity, "3"));
  75. return result;
  76. }
  77. /// <summary>
  78. /// 系统登出
  79. /// </summary>
  80. /// <param name="userID"></param>
  81. /// <returns></returns>
  82. public void Logout(int userID)
  83. {
  84. bool result = ServiceInvoker.Invoke<bool>(this,
  85. () => DKIBOSSPRDLogic.Logout(userID, "1", this.SUserInfo));
  86. }
  87. #endregion
  88. #region 客户端升级
  89. /// <summary>
  90. /// 客户端升级判断
  91. /// </summary>
  92. /// <param name="version">客户端版本号</param>
  93. /// <returns>客户端是否需要更新信息</returns>
  94. public NeedUpgradeResultEntity IsNeedUpgrade(string version)
  95. {
  96. FileVersionInfo info = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location);
  97. string dllVersion = info.FileVersion;
  98. NeedUpgradeResultEntity result = ServiceInvoker.Invoke<NeedUpgradeResultEntity>(this,
  99. () => DKIBOSSPRDLogic.IsNeedUpgrade(version, dllVersion));
  100. return result;
  101. }
  102. /// <summary>
  103. /// 下载更新程序
  104. /// </summary>
  105. /// <returns>更新程序</returns>
  106. public byte[] DownloadUpgradeFile(string flag)
  107. {
  108. byte[] result = ServiceInvoker.Invoke<byte[]>(this,
  109. () => DKIBOSSPRDLogic.DownloadUpgradeFile(flag));
  110. return result;
  111. }
  112. #endregion
  113. }
  114. }