电子药箱通讯服务端
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.ServiceModel;
  6. using RDH.Data.Models;
  7. namespace RDH.Data.BLL
  8. {
  9. public partial class ItemBarcodeLibraryBLL : BaseOrclBLL<ItemBarcodeLibrary>
  10. {
  11. public ItemBarcodeLibraryBLL() : base()
  12. {
  13. AliasTableName = "ibl";
  14. }
  15. internal override String TABLE_NAME { get { return "ITEM_BARCODE_LIBRARY"; } }
  16. internal override string ENTITY_NAME { get { return "Item"; } }
  17. internal override String KEY_COLUMN { get { return "BARCODE"; } }
  18. internal override void InitMaps()
  19. {
  20. ColumnPropMaps.Add("BARCODE", "Barcode");
  21. ColumnPropMaps.Add("BARCODE_STATE", "BarcodeState");
  22. ColumnPropMaps.Add("ITEM_KEY", "ItemKey");
  23. ColumnPropMaps.Add("ITEM_LOT_KEY", "ItemLotKey");
  24. ColumnPropMaps.Add("CREATE_BY", "CreateBy");
  25. ColumnPropMaps.Add("CREATE_TIME", "CreateTime");
  26. ColumnPropMaps.Add("FLAG", "Flag");
  27. ColumnPropMaps.Add("CLIENT_TIME", "ClientTime");
  28. ColumnPropMaps.Add("SERVER_TIME", "ServerTime");
  29. ColumnPropMaps.Add("EXT01", "Ext01");
  30. ColumnPropMaps.Add("EXT02", "Ext02");
  31. ColumnPropMaps.Add("EXT03", "Ext03");
  32. ColumnPropMaps.Add("EXT04", "Ext04");
  33. ColumnPropMaps.Add("EXT05", "Ext05");
  34. ColumnPropMaps.Add("EXT06", "Ext06");
  35. ColumnPropMaps.Add("EXT07", "Ext07");
  36. ColumnPropMaps.Add("EXT08", "Ext08");
  37. ColumnPropMaps.Add("EXT09", "Ext09");
  38. ColumnPropMaps.Add("EXT10", "Ext10");
  39. }
  40. internal override object GetParam(ItemBarcodeLibrary item)
  41. {
  42. return new
  43. {
  44. Barcode = item.Barcode,
  45. BarcodeState = item.BarcodeState,
  46. ItemKey = item.ItemKey,
  47. ItemLotKey = item.ItemLotKey,
  48. CreateBy = item.CreateBy,
  49. CreateTime = item.CreateTime,
  50. Flag = item.Flag,
  51. ClientTime = item.ClientTime,
  52. ServerTime = item.ServerTime,
  53. Ext01 = item.Ext01,
  54. Ext02 = item.Ext02,
  55. Ext03 = item.Ext03,
  56. Ext04 = item.Ext04,
  57. Ext05 = item.Ext05,
  58. Ext06 = item.Ext06,
  59. Ext07 = item.Ext07,
  60. Ext08 = item.Ext08,
  61. Ext09 = item.Ext09,
  62. Ext10 = item.Ext10,
  63. };
  64. }
  65. public IEnumerable<ItemBarcodeLibrary> GetBarcodeLibrary(params String[] barcode)
  66. {
  67. SqlBuilder sqlBuilder = new SqlBuilder(this);
  68. ItemBLL itemBLL = new ItemBLL();
  69. TableJoinInfo itemTable = new TableJoinInfo
  70. {
  71. LeftDal = this,
  72. LeftColumnName = "ITEM_KEY",
  73. RightDal = itemBLL,
  74. RightColumnName = "KEY",
  75. JoinType = TableJoinTypes.Inner,
  76. };
  77. sqlBuilder.AppendSelectionTable(itemTable);
  78. ItemLotBLL itemLotBLL = new ItemLotBLL();
  79. TableJoinInfo itemlotTable = new TableJoinInfo
  80. {
  81. LeftDal = this,
  82. LeftColumnName = "ITEM_LOT_KEY",
  83. RightDal = itemLotBLL,
  84. RightColumnName = "KEY",
  85. JoinType = TableJoinTypes.Inner,
  86. };
  87. sqlBuilder.AppendSelectionTable(itemlotTable);
  88. sqlBuilder.AppendWherePhrases($"{this.AliasTableName}.BARCODE IN :arrBarcodes");
  89. return SqlMapper.Query<ItemBarcodeLibrary, Item, ItemLot, ItemBarcodeLibrary>(
  90. ConnectionFactory.Current.GetSessionConnection(),
  91. sqlBuilder.ToString(),
  92. (l, i, il) =>
  93. {
  94. l.ItemInfo = i;
  95. l.ItemLotInfo = il;
  96. return l;
  97. },
  98. new
  99. {
  100. arrBarcodes = barcode
  101. },
  102. splitOn: sqlBuilder.GetSpiltors());
  103. }
  104. }
  105. }