wms-acq-inventory-info.xml 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.emato.cus.supervise.mapper.WmsAcqInventoryInfoMapper">
  4. <!-- WMS库存查询,作了库位转账册分类转换 -->
  5. <select id="getWmsAcqInventoryInfo" parameterType="java.util.Map"
  6. resultType="com.emato.cus.supervise.domain.WmsAcqInventoryInfo">
  7. SELECT
  8. emsClassCode,
  9. skuNo,
  10. goodsId,
  11. SUM(gQty) AS gQty,
  12. merchSn,
  13. goodsName,
  14. goodsModel,
  15. storeCode
  16. FROM (
  17. SELECT
  18. (CASE
  19. WHEN (left(a.seatNo, 2) = 'ZS') THEN 'zszc'
  20. WHEN (left(a.seatNo, 2) = 'F-') THEN 'fbwl'
  21. ELSE 'kjds' END) as emsClassCode,
  22. seatNo,
  23. skuNo,
  24. goodsId,
  25. gQty,
  26. merchSn,
  27. goodsName,
  28. goodsModel,
  29. storeCode
  30. FROM
  31. (SELECT distinct
  32. th.zone,
  33. th.companyCode AS merchSn,
  34. th.locationCode AS seatNo,
  35. th.itemName AS goodsName,
  36. th.itemCode AS skuNo,
  37. th.itemCode AS goodsId,
  38. i.unitDesc AS gUnit,
  39. ( case when (li.qty is null and th.afterOnHandQty = 0) or (li.qty is not null and th.afterOnHandQty = li.qty) then th.afterOnHandQty
  40. else li.qty end) AS gQty,
  41. th.warehouseCode AS storeCode,
  42. CONCAT( i.itemSize, '-', i.itemColor, '-', i.itemStyle ) AS goodsModel
  43. FROM
  44. transaction_history th
  45. LEFT OUTER JOIN ( SELECT itemCode, locationCode, SUM( onHandQty ) AS qty
  46. FROM location_inventory
  47. GROUP BY itemCode, locationCode ) AS li
  48. ON th.itemCode = li.itemCode AND th.locationCode = li.locationCode
  49. LEFT OUTER JOIN item i ON th.itemCode = i.CODE
  50. WHERE
  51. 1 = 1
  52. AND th.zone IN ( 'A区', 'B区', 'C区', 'GQ区', 'F区', 'P区', 'Y区', 'ZS')
  53. and th.created >= '2019-01-01 00:00:00'
  54. /*and th.itemCode = 'bj1510081058'*/
  55. ORDER BY th.lastUpdated DESC
  56. ) AS a where a.gQty is not null GROUP BY seatNo, skuNo
  57. ) as b GROUP BY emsClassCode, skuNo;
  58. </select>
  59. </mapper>