DalMenuInfo.cs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. using ProjectBase.Data.BaseDAL.BaseDatabase;
  2. using ProjectBase.Util;
  3. using SIASUN.Autopilot.DAL.IDALSQL;
  4. using SIASUN.Autopilot.Model;
  5. using System;
  6. using System.Collections;
  7. using System.Collections.Generic;
  8. using System.Data;
  9. using System.Linq;
  10. using System.Text;
  11. using System.Threading.Tasks;
  12. namespace SIASUN.Autopilot.DAL.DALSQL
  13. {
  14. /// <summary>
  15. /// 菜单管理
  16. /// </summary>
  17. public class DalMenuInfo : BaseDALSQL<MoMenuInfo>, IDalMenuInfo
  18. {
  19. #region 对象实例及构造函数
  20. public static DalMenuInfo Instance
  21. {
  22. get
  23. {
  24. return new DalMenuInfo();
  25. }
  26. }
  27. public DalMenuInfo() : base("menu", new string[] { "menu_sequence" })
  28. {
  29. this.sortField = "menu_sequence";
  30. this.isDescending = false;
  31. }
  32. #endregion
  33. /// <summary>
  34. /// 将DataReader的属性值转化为实体类的属性值,返回实体类
  35. /// </summary>
  36. /// <param name="dr">有效的DataReader对象</param>
  37. /// <returns>实体类对象</returns>
  38. protected override MoMenuInfo DataReaderToEntity(IDataReader dataReader)
  39. {
  40. MoMenuInfo info = new MoMenuInfo();
  41. SmartDataReader reader = new SmartDataReader(dataReader);
  42. info.ID = reader.GetString("menu_id");
  43. info.Name = reader.GetString("menu_name");
  44. info.PID = reader.GetString("menu_parent_id");
  45. info.Icon = reader.GetString("menu_icon");
  46. info.Seq = reader.GetString("menu_sequence");
  47. info.FunctionId = reader.GetString("menu_function_id");
  48. info.WinformType = reader.GetString("menu_winform_type");
  49. info.Url = reader.GetString("menu_url");
  50. info.WebIcon = reader.GetString("menu_webicon");
  51. info.Creator_ID = reader.GetString("menu_create_id");
  52. info.CreateTime = Convert.ToDateTime(reader.GetString("menu_create_time"));
  53. info.Deleted = Convert.ToBoolean(reader.GetInt32("menu_delete"));
  54. info.Visible = Convert.ToBoolean(reader.GetInt32("menu_visible"));
  55. return info;
  56. }
  57. /// <summary>
  58. /// 将实体对象的属性值转化为Hashtable对应的键值
  59. /// </summary>
  60. /// <param name="obj">有效的实体对象</param>
  61. /// <returns>包含键值映射的Hashtable</returns>
  62. protected override Hashtable GetHashByEntity(MoMenuInfo obj)
  63. {
  64. MoMenuInfo info = obj as MoMenuInfo;
  65. Hashtable hash = new Hashtable();
  66. hash.Add("menu_id", info.ID);
  67. hash.Add("menu_name", info.Name);
  68. hash.Add("menu_parent_id", info.PID);
  69. hash.Add("menu_icon", info.Icon);
  70. hash.Add("menu_sequence", info.Seq);
  71. hash.Add("menu_function_id", info.FunctionId);
  72. hash.Add("menu_winform_type", info.WinformType);
  73. hash.Add("menu_url", info.Url);
  74. hash.Add("menu_webicon", info.WebIcon);
  75. hash.Add("menu_create_id", info.Creator_ID);
  76. hash.Add("menu_create_time", info.CreateTime);
  77. hash.Add("menu_delete", info.Deleted);
  78. hash.Add("menu_visible", info.Visible);
  79. return hash;
  80. }
  81. }
  82. }