You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

157 lines
4.6 KiB

  1. ///-----------------------------------------------------------------------
  2. /// <copyright file="SystemSettingHelper.cs" company="Origtek">
  3. /// 程式代號: SystemSettingHelper
  4. /// 程式名稱: SystemSettingHelper
  5. /// 程式說明:
  6. /// 起始作者: Hercules
  7. /// 起始日期: 2017/05/11 17:15:06
  8. /// 最新修改人: Hercules
  9. /// 最新修日期: 2017/05/18 17:45:54
  10. /// </copyright>
  11. ///-----------------------------------------------------------------------
  12. #region 程式異動記錄
  13. /// xx.YYYY/MM/DD VER AUTHOR COMMENTS(說明修改的內容)
  14. /// 01.2017/05/11 1.000 Hercules 加入Folder使用(RV.4250)
  15. /// 02.2017/05/16 1.001 Hercules 更新Log4net(RV.4317)
  16. /// 03.2017/05/18 1.002 Hercules 補程式Header註解(RV.4375)
  17. #endregion
  18. namespace CounsellorBL.Helper
  19. {
  20. using MonumentDefine;
  21. using OT.COM.ArsenalDB;
  22. using SoldierData.EnterprizeV4;
  23. using System.Collections.Generic;
  24. using System.Linq;
  25. using static CounsellorBL.Common.EntityBaseExtension;
  26. /// <summary>
  27. /// 類別名稱:SystemSettingHelper
  28. /// 類別說明:
  29. /// 起始作者:
  30. /// 起始日期:
  31. /// 最新修改人:
  32. /// 最新修改日:
  33. /// </summary>
  34. public static class SystemSettingHelper
  35. {
  36. /// <summary>
  37. /// 類別成員、類別屬性說明:EPath
  38. /// </summary>
  39. public enum EPath
  40. {
  41. EP_FILE = 0,
  42. EP_FILETMP = 1
  43. }
  44. public static string GetSettings(out List<tb_sys_system_setting> i_sResult)
  45. {
  46. string sMsg = null;
  47. List<tb_sys_system_setting> oRes = null;
  48. do
  49. {
  50. tb_sys_system_setting oDisplay = new tb_sys_system_setting();
  51. oDisplay.SetFullDirtyEx(EColumnFilter.ES_NO_SYSTEMCOLUMN);
  52. Command c = Command.SetupSelectCmd(oDisplay);
  53. ArsenalInterface ai = ArsenalDBMgr.GetInst(c, null);
  54. List<tb_sys_system_setting> lo = ai.RunQueryList<tb_sys_system_setting>(c);
  55. if (lo != null && lo.Any())
  56. {
  57. oRes = lo;
  58. }
  59. sMsg = c.LastErrorMsg;
  60. }
  61. while (false);
  62. i_sResult = oRes;
  63. return sMsg;
  64. }
  65. /// <summary>
  66. /// 函式名稱:GetSetting
  67. /// 函式說明:
  68. /// 起始作者:
  69. /// 起始日期:
  70. /// 最新修改人:
  71. /// 最新修改日:
  72. /// </summary>
  73. /// <param name="i_sID"></param>
  74. /// <param name="i_sResult">
  75. /// 參數說明
  76. /// </param>
  77. /// <returns>
  78. /// 回傳
  79. /// </returns>
  80. public static string GetSetting(string i_sID, out tb_sys_system_setting i_sResult)
  81. {
  82. string sMsg = null;
  83. tb_sys_system_setting oRes = null;
  84. do
  85. {
  86. if (i_sID == null)
  87. {
  88. break;
  89. }
  90. tb_sys_system_setting oDisplay = new tb_sys_system_setting();
  91. oDisplay.SetFullDirtyEx(EColumnFilter.ES_NO_SYSTEMCOLUMN);
  92. tb_sys_system_setting oCond = new tb_sys_system_setting() { name = i_sID };
  93. Command c = Command.SetupSelectCmd(typeof(tb_sys_system_setting), oDisplay, oCond);
  94. ArsenalInterface ai = ArsenalDBMgr.GetInst(c, null);
  95. List<tb_sys_system_setting> lo = ai.RunQueryList<tb_sys_system_setting>(c);
  96. if (lo != null && lo.Any())
  97. {
  98. oRes = lo[0];
  99. }
  100. sMsg = c.LastErrorMsg;
  101. }
  102. while (false);
  103. i_sResult = oRes;
  104. return sMsg;
  105. }
  106. /// <summary>
  107. /// 函式名稱:FileFolder
  108. /// 函式說明:
  109. /// 起始作者:
  110. /// 起始日期:
  111. /// 最新修改人:
  112. /// 最新修改日:
  113. /// </summary>
  114. /// <param name="i_epType">
  115. /// 參數說明
  116. /// </param>
  117. /// <returns>
  118. /// 回傳
  119. /// </returns>
  120. public static string FileFolder(EPath i_epType)
  121. {
  122. string sRes = null;
  123. string sID = i_epType switch
  124. {
  125. EPath.EP_FILE => BLWording.PATH_UPLOAD,
  126. _ => BLWording.PATH_TEMPUPLOAD,
  127. };
  128. if (GetSetting(sID, out tb_sys_system_setting oRes) == null)
  129. {
  130. sRes = oRes.key_value;
  131. }
  132. return sRes;
  133. }
  134. }
  135. }