wms_data.sql 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. -- 1 库存信息
  2. -- ShopStock 表, 不加时间戳, 加监控totalQty的时间字段到ShopStock上
  3. --SELECT * FROM ShopStock WHERE sku='ISZWKJ001930'
  4. --UPDATE ShopStock set pendingShipment=0 WHERE id=6911
  5. -- --增加时间字段
  6. -- ALTER TABLE qhwms.dbo.ShopStock ADD totQtyChgTime DATETIME NULL
  7. -- EXEC sp_addextendedproperty 'MS_Description', '总数变化时间', 'SCHEMA', 'dbo', 'TABLE', 'ShopStock', 'COLUMN', 'totQtyChgTime'
  8. SELECT * from (
  9. select t1.shortName AS goodsName, t2.customsProductCode AS codeTs, t.sku AS skuNo, t.sku AS goodsId, t1.unit AS gUnitName, t10.codeValue AS gUnit,
  10. t.totalQty AS gQty, t1.qty1*t.totalQty AS legalQty, t1.unit1 AS legalUnitName, t11.codeValue AS legalUnit, t1.customsDeclaredElements AS goodsModel,
  11. t.shopId, t3.compayName AS ownerName, t3.customsCertNo AS ownerCode,
  12. '440301111758322' AS storeUscCode, 'I440366000315001' AS localEmsNo,
  13. '深圳前海电商供应链管理有限公司' AS storeCompanyName, '319489717' AS storeUseCode,
  14. '4403660003' AS storeCustomsCode, '534931948971720171102000281725' AS storeCode, t.totQtyChgTime
  15. from ShopStock t
  16. LEFT OUTER JOIN Product t1 ON t.sku=t1.sku
  17. LEFT OUTER JOIN ProductCategory t2 ON t1.productCategoryId=t2.id
  18. LEFT OUTER JOIN ShopInfo t3 ON t.shopId=t3.ShopID
  19. LEFT OUTER JOIN CustomsCode t10 ON t1.unit=t10.codeName AND t10.codeType='4'
  20. LEFT OUTER JOIN CustomsCode t11 ON t1.unit1=t11.codeName AND t11.codeType='4'
  21. where t.qualityType='0' AND t.totalQty <> 0 AND t.totQtyChgTime IS NOT NULL
  22. ) tt
  23. where tt.totQtyChgTime>='2017-09-27 13:40:12.360'
  24. -- 2 货物上下架信息, 分开报送
  25. -- 1) 上架: AsnItem 表, slottingState 状态:WAREHOUSED, 不加时间戳, 直接使用 warehousedTime 上架时间
  26. -- 2) 下架: (1) 退港: StockWithDrawItem 表, sku, WarehousingEntry 表可用数量必须为0, 不加时间戳, 直接使用 created 创建时间
  27. -- (2) 出货: 建出货流水表记录出货数
  28. -- 上架
  29. --SELECT * FROM AsnItem WHERE sku='ISTTGM000047'
  30. -- 监控数据
  31. SELECT * from (
  32. SELECT t3.id, t.asnItemId, t1.shortName AS goodsName, t2.customsProductCode AS codeTs, t.sku AS skuNo, t.sku AS goodsId, t1.unit AS gUnitName, t10.codeValue AS gUnit,
  33. t.nonDefectQty AS gQty, t1.qty1*t.nonDefectQty AS legalQty, t1.unit1 AS legalUnitName, t11.codeValue AS legalUnit, t1.customsDeclaredElements AS goodsModel,
  34. t4.label AS seatNo, 'I' AS shelfLoadType, t.warehousedTime AS shelfLoadTime,
  35. '440301111758322' AS storeUscCode, 'I440366000315001' AS localEmsNo,
  36. '深圳前海电商供应链管理有限公司' AS storeCompanyName, '319489717' AS storeUseCode, '4403660003' AS storeCustomsCode, '534931948971720171102000281725' AS storeCode
  37. FROM AsnItem t
  38. LEFT OUTER JOIN Product t1 ON t.sku=t1.sku
  39. LEFT OUTER JOIN ProductCategory t2 ON t1.productCategoryId=t2.id
  40. LEFT OUTER JOIN WarehousingEntry t3 ON t.asnItemId=t3.id
  41. LEFT OUTER JOIN WarehouseSlot t4 ON t3.slotId=t4.id
  42. LEFT OUTER JOIN CustomsCode t10 ON t1.unit=t10.codeName AND t10.codeType='4'
  43. LEFT OUTER JOIN CustomsCode t11 ON t1.unit1=t11.codeName AND t11.codeType='4'
  44. WHERE t.slottingState='WAREHOUSED' AND t3.availableQty <> 0 AND t.nonDefectQty <> 0 AND t.warehousedTime IS NOT NULL
  45. AND t4.label IN (SELECT seat_no AS seatNo FROM WareHouseSlot_cus_data_supervise)
  46. ) tt
  47. where tt.shelfLoadTime>='2017-04-27 13:40:12.360'
  48. -- (1)退港
  49. -- SELECT * FROM StockWithDrawItem WHERE sku='ISMG660000021'
  50. -- SELECT * FROM WarehousingEntry WHERE id='9968'
  51. -- SELECT * FROM WarehouseSlot WHERE id='16408'
  52. -- 监控数据
  53. SELECT * from (
  54. SELECT t1.shortName AS goodsName, t2.customsProductCode AS codeTs, t.sku AS skuNo, t.sku AS goodsId, t1.unit AS gUnitName, t10.codeValue AS gUnit,
  55. t.withdrawQty AS gQty, t1.qty1*t.withdrawQty AS legalQty, t1.unit1 AS legalUnitName, t11.codeValue AS legalUnit, t1.customsDeclaredElements AS goodsModel,
  56. t4.label AS seatNo, 'E' AS shelfLoadType, t.created AS shelfLoadTime,
  57. '440301111758322' AS storeUscCode, 'I440366000315001' AS localEmsNo,
  58. '深圳前海电商供应链管理有限公司' AS storeCompanyName, '319489717' AS storeUseCode, '4403660003' AS storeCustomsCode, '534931948971720171102000281725' AS storeCode
  59. FROM StockWithdrawItem t
  60. LEFT OUTER JOIN Product t1 ON t.sku=t1.sku
  61. LEFT OUTER JOIN ProductCategory t2 ON t1.productCategoryId=t2.id
  62. LEFT OUTER JOIN WarehousingEntry t3 ON t.warehousingEntryId=t3.id
  63. LEFT OUTER JOIN WarehouseSlot t4 ON t3.slotId=t4.id
  64. LEFT OUTER JOIN CustomsCode t10 ON t1.unit=t10.codeName AND t10.codeType='4'
  65. LEFT OUTER JOIN CustomsCode t11 ON t1.unit1=t11.codeName AND t11.codeType='4'
  66. WHERE t3.availableQty <> 0 AND t.created IS NOT NULL
  67. AND t4.label IN (SELECT seat_no AS seatNo FROM WareHouseSlot_cus_data_supervise)
  68. ) tt
  69. where tt.shelfLoadTime>='2017-09-27 13:40:12.360'
  70. -- (2) 出货
  71. -- 建出货流水表记录出货数
  72. -- 监控数据
  73. SELECT * from (
  74. SELECT t.id, t1.shortName AS goodsName, t2.customsProductCode AS codeTs, t.sku AS skuNo, t.sku AS goodsId, t1.unit AS gUnitName, t10.codeValue AS gUnit,
  75. t.qty AS gQty, t1.qty1*t.qty AS legalQty, t1.unit1 AS legalUnitName, t11.codeValue AS legalUnit, t1.customsDeclaredElements AS goodsModel,
  76. t4.label AS seatNo, 'E' AS shelfLoadType, t.createTime AS shelfLoadTime,
  77. '440301111758322' AS storeUscCode, 'I440366000315001' AS localEmsNo,
  78. '深圳前海电商供应链管理有限公司' AS storeCompanyName, '319489717' AS storeUseCode, '4403660003' AS storeCustomsCode, '534931948971720171102000281725' AS storeCode
  79. FROM WarehousingEntry_shipment t
  80. LEFT OUTER JOIN Product t1 ON t.sku=t1.sku
  81. LEFT OUTER JOIN ProductCategory t2 ON t1.productCategoryId=t2.id
  82. LEFT OUTER JOIN WarehouseSlot t4 ON t.slotId=t4.id
  83. LEFT OUTER JOIN CustomsCode t10 ON t1.unit=t10.codeName AND t10.codeType='4'
  84. LEFT OUTER JOIN CustomsCode t11 ON t1.unit1=t11.codeName AND t11.codeType='4'
  85. WHERE t.qty <> 0 AND t.createTime IS NOT NULL
  86. AND t4.label IN (SELECT seat_no AS seatNo FROM WareHouseSlot_cus_data_supervise)
  87. ) tt
  88. where tt.shelfLoadTime>='2017-09-27 13:40:12.360'
  89. -- 3 货物库位移动信息
  90. -- StockSlotTransfer 表, 货物库位移动
  91. -- state, 0:未移仓;1已移仓
  92. -- qualityType, 0:良,1:次
  93. -- 下架时间与上架时间一致
  94. -- SELECT * FROM StockSlotTransfer WHERE sku='ISTTGM000047'
  95. -- SELECT * FROM WarehouseSlot WHERE id='15817'
  96. -- --不加时间戳, 直接使用 transferTime 转移时间, transferTime不为空, state='1', qualityType='0'
  97. -- 监控数据
  98. SELECT * from (
  99. SELECT t.transferTime AS shelfLoadTime, t.transferTime AS shelfUnloadTime, t5.label AS targetSeatNo, t4.label AS originSeatNo,
  100. t1.shortName AS goodsName, t2.customsProductCode AS codeTs, t.sku AS skuNo, t.sku AS goodsId, t1.unit AS gUnitName, t10.codeValue AS gUnit, t.qty AS gQty,
  101. t1.qty1*t.qty AS legalQty, t1.unit1 AS legalUnitName, t11.codeValue AS legalUnit, t1.customsDeclaredElements AS goodsModel,
  102. '440301111758322' AS storeUscCode, 'I440366000315001' AS localEmsNo,
  103. '深圳前海电商供应链管理有限公司' AS storeCompanyName, '319489717' AS storeUseCode, '4403660003' AS storeCustomsCode, '534931948971720171102000281725' AS storeCode,
  104. transferTime
  105. FROM StockSlotTransfer t
  106. LEFT OUTER JOIN Product t1 ON t.sku=t1.sku
  107. LEFT OUTER JOIN ProductCategory t2 ON t1.productCategoryId=t2.id
  108. LEFT OUTER JOIN WarehouseSlot t4 ON t.sourceSlotId=t4.id
  109. LEFT OUTER JOIN WarehouseSlot t5 ON t.destSlotId=t5.id
  110. LEFT OUTER JOIN CustomsCode t10 ON t1.unit=t10.codeName AND t10.codeType='4'
  111. LEFT OUTER JOIN CustomsCode t11 ON t1.unit1=t11.codeName AND t11.codeType='4'
  112. WHERE t.state='1' AND t.qualityType='0' AND t.qty &lt;&gt; 0 AND t.transferTime IS NOT NULL
  113. AND t4.label IN (SELECT seat_no AS seatNo FROM WareHouseSlot_cus_data_supervise)
  114. AND t5.label IN (SELECT seat_no AS seatNo FROM WareHouseSlot_cus_data_supervise)
  115. ) tt
  116. where tt.shelfLoadTime>='2017-08-24 11:36:11.317'
  117. -- 4 库位货物信息
  118. -- 1. .WarehousingEntry 表, 库位, 2.WarehouseSlot 标签
  119. -- 不增加时间戳,
  120. -- WarehousingEntryMapper.xml addQtyById, updateTBNum, updateQtyById 增加时间监管可用数量字段变化
  121. -- WarehousingEntryMapper.java batchUpdateQty
  122. -- ISTH01001215
  123. -- type, 0:良,1:次
  124. -- SELECT * FROM WarehousingEntry WHERE sku='ISTH01001215'
  125. -- SELECT * FROM WarehouseSlot WHERE id='15892'
  126. -- --增加时间字段
  127. -- ALTER TABLE qhwms.dbo.WarehousingEntry ADD avaQtyChgTime DATETIME NULL
  128. -- EXEC sp_addextendedproperty 'MS_Description', '可用数量变化时间', 'SCHEMA', 'dbo', 'TABLE', 'WarehousingEntry', 'COLUMN', 'avaQtyChgTime'
  129. -- 监控数据
  130. SELECT * from (
  131. SELECT t4.label AS seatNo, t1.shortName AS goodsName, t2.customsProductCode AS codeTs, t.sku AS skuNo, t.sku AS goodsId, t1.unit AS gUnitName, t10.codeValue AS gUnit,
  132. (t.availableQty + t.frozenQty) AS gQty, t1.qty1*(t.availableQty + t.frozenQty) AS legalQty, t1.unit1 AS legalUnitName, t11.codeValue AS legalUnit, t1.customsDeclaredElements AS goodsModel,
  133. t.shopId, t3.compayName AS ownerName, t3.customsCertNo AS ownerCode,
  134. '440301111758322' AS storeUscCode, 'I440366000315001' AS localEmsNo,
  135. '深圳前海电商供应链管理有限公司' AS storeCompanyName, '319489717' AS storeUseCode, '4403660003' AS storeCustomsCode, '534931948971720171102000281725' AS storeCode,
  136. t.avaQtyChgTime
  137. FROM WarehousingEntry t
  138. LEFT OUTER JOIN Product t1 ON t.sku=t1.sku
  139. LEFT OUTER JOIN ProductCategory t2 ON t1.productCategoryId=t2.id
  140. LEFT OUTER JOIN ShopInfo t3 ON t.shopId=t3.ShopId
  141. LEFT OUTER JOIN WarehouseSlot t4 ON t.slotId=t4.id
  142. LEFT OUTER JOIN CustomsCode t10 ON t1.unit=t10.codeName AND t10.codeType='4'
  143. LEFT OUTER JOIN CustomsCode t11 ON t1.unit1=t11.codeName AND t11.codeType='4'
  144. WHERE t.type='0' AND t.availableQty &lt;&gt; 0 AND t.avaQtyChgTime IS NOT NULL
  145. AND t4.label IN (SELECT seat_no AS seatNo FROM WareHouseSlot_cus_data_supervise)
  146. ) tt
  147. where tt.avaQtyChgTime>='2017-09-27 13:40:12.360'
  148. -- 4 增加正常库位表
  149. -- 目前正在使用中正常库位信息
  150. -- 共 16508
  151. -- 正常状态 16473
  152. -- 冻结状态 35
  153. -- 使用中 5736
  154. -- 对使用中的库位建表
  155. ------------- 建表开始 -------------
  156. USE [qhwms]
  157. GO
  158. -- 仓库出货流水,每次写入一条
  159. CREATE TABLE qhwms.dbo.WarehousingEntry_shipment
  160. (
  161. id BIGINT PRIMARY KEY NOT NULL IDENTITY,
  162. warehousingEntryId INT,
  163. sku VARCHAR(50),
  164. qty INT,
  165. slotId INT,
  166. createTime DATETIME,
  167. shopId INT
  168. )
  169. /****** Object: Table [dbo].[WarehouseSlot_cus_data_supervise] Script Date: 11/11/2017 11:01:48 ******/
  170. -- 正常库位表
  171. SET ANSI_NULLS ON
  172. GO
  173. SET QUOTED_IDENTIFIER ON
  174. GO
  175. SET ANSI_PADDING ON
  176. GO
  177. CREATE TABLE [dbo].[WarehouseSlot_cus_data_supervise](
  178. [seat_no] [varchar](32) NULL,
  179. [is_valid] [char](1) NULL
  180. ) ON [PRIMARY]
  181. GO
  182. SET ANSI_PADDING OFF
  183. GO
  184. EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'库位编码,对应WarehouseSlotge表label' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WarehouseSlot_cus_data_supervise', @level2type=N'COLUMN',@level2name=N'seat_no'
  185. GO
  186. EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'是否可用' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WarehouseSlot_cus_data_supervise', @level2type=N'COLUMN',@level2name=N'is_valid'
  187. GO
  188. ALTER TABLE [dbo].[WarehouseSlot_cus_data_supervise] ADD CONSTRAINT [DF_WarehouseSlot_cus_data_supervise_is_valid] DEFAULT ((1)) FOR [is_valid]
  189. GO
  190. ------------- 建表结束 -------------