电子药箱通讯服务端
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

PortableStorageTrackBLL.cs 4.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using RDH.Data.Models;
  7. namespace RDH.Data.BLL
  8. {
  9. public partial class PortableStorageTrackBLL : BaseOrclBLL<PortableStorageTrack>
  10. {
  11. public PortableStorageTrackBLL() : base()
  12. {
  13. AliasTableName = "pst";
  14. }
  15. internal override String TABLE_NAME { get { return "PORTABLE_STORAGE_TRACK"; } }//TB_NAME
  16. internal override string ENTITY_NAME { get { return "PortableStorageTrack"; } }
  17. internal override String KEY_COLUMN { get { return "ITEM_CODE"; } }//KEY_COLUMN
  18. internal override void InitMaps()
  19. {
  20. ColumnPropMaps.Add("ITEM_CODE", "ItemCode");
  21. ColumnPropMaps.Add("TRACK_CODE", "TrackCode");
  22. ColumnPropMaps.Add("TRACK_VALUE", "TrackValue");
  23. ColumnPropMaps.Add("CREATE_BY", "CreateBy");
  24. ColumnPropMaps.Add("CREATE_TIME", "CreateTime");
  25. ColumnPropMaps.Add("FLAG", "Flag");
  26. ColumnPropMaps.Add("CLIENT_TIME", "ClientTime");
  27. ColumnPropMaps.Add("SERVER_TIME", "ServerTime");
  28. ColumnPropMaps.Add("EXT01", "Ext01");
  29. ColumnPropMaps.Add("EXT02", "Ext02");
  30. ColumnPropMaps.Add("EXT03", "Ext03");
  31. ColumnPropMaps.Add("EXT04", "Ext04");
  32. ColumnPropMaps.Add("EXT05", "Ext05");
  33. ColumnPropMaps.Add("EXT06", "Ext06");
  34. ColumnPropMaps.Add("EXT07", "Ext07");
  35. ColumnPropMaps.Add("EXT08", "Ext08");
  36. ColumnPropMaps.Add("EXT09", "Ext09");
  37. ColumnPropMaps.Add("EXT10", "Ext10");
  38. }
  39. internal override object GetParam(PortableStorageTrack t)
  40. {
  41. return new
  42. {
  43. ItemCode = t.ItemCode,
  44. TrackCode = t.TrackCode,
  45. TrackValue = t.TrackValue,
  46. CreateBy = t.CreateBy,
  47. CreateTime = t.CreateTime,
  48. Flag = t.Flag,
  49. ClientTime = t.ClientTime,
  50. ServerTime = t.ServerTime,
  51. Ext01 = t.Ext01,
  52. Ext02 = t.Ext02,
  53. Ext03 = t.Ext03,
  54. Ext04 = t.Ext04,
  55. Ext05 = t.Ext05,
  56. Ext06 = t.Ext06,
  57. Ext07 = t.Ext07,
  58. Ext08 = t.Ext08,
  59. Ext09 = t.Ext09,
  60. Ext10 = t.Ext10,
  61. };
  62. }
  63. public IEnumerable<PortableStorageTrack> ListTrackByItem(String itemCode, DateTime beginTime, DateTime endTime)
  64. {
  65. StringBuilder sqlBuilder = new StringBuilder();
  66. sqlBuilder.Append(BuildBaseSql());
  67. sqlBuilder.Append(" WHERE ");
  68. if (!String.IsNullOrEmpty(itemCode))
  69. {
  70. sqlBuilder.AppendFormat("{0}.item_code=:itemCode AND ", this.TABLE_NAME);
  71. }
  72. sqlBuilder.AppendFormat("{0}.create_time BETWEEN :startTime AND :endTime ORDER BY {0}.CREATE_TIME", this.TABLE_NAME);
  73. return SqlMapper.Query<PortableStorageTrack>(ConnectionFactory.Current.GetSessionConnection(),
  74. sqlBuilder.ToString(),
  75. new
  76. {
  77. itemCode = itemCode,
  78. startTime = beginTime,
  79. endTime = endTime
  80. });
  81. }
  82. public PortableStorageTrack GetLastTrackByItem(String itemCode)
  83. {
  84. StringBuilder sqlBuilder = new StringBuilder();
  85. sqlBuilder.Append(BuildBaseSql());
  86. sqlBuilder.Append(" WHERE ");
  87. if (!String.IsNullOrEmpty(itemCode))
  88. {
  89. sqlBuilder.AppendFormat("{0}.item_code=:itemCode ", this.TABLE_NAME);
  90. }
  91. sqlBuilder.Append($"ORDER BY {this.TABLE_NAME}.CREATE_TIME DESC");
  92. return SqlMapper.Query<PortableStorageTrack>(ConnectionFactory.Current.GetSessionConnection(),
  93. sqlBuilder.ToString(),
  94. new
  95. {
  96. itemCode = itemCode,
  97. })
  98. .FirstOrDefault();
  99. }
  100. }
  101. }