ProductStockMapper.xml 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  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.hys.app.mapper.erp.ProductStockMapper">
  4. <select id="getOne" resultType="com.hys.app.model.erp.dos.ProductStockDO">
  5. select * from erp_product_stock where id=#{id}
  6. </select>
  7. <!-- 查询产品预警库存信息分页列表 -->
  8. <select id="queryList" resultType="com.hys.app.model.erp.vo.ProductStockV1" useCache="false">
  9. select
  10. ps.id,
  11. ps.actual_stock,
  12. ps.usable_stock,
  13. ps.transit_Stock,
  14. ps.warning_stock,
  15. ps.locked_stock,
  16. w.id as warehouse_id,
  17. w.name as warehouse_name,
  18. g.id as goods_id,
  19. g.name as goodsName,
  20. g.bar_code as goods_bar_code,
  21. g.sn ,
  22. p.id as product_id,
  23. p.name as product_name,
  24. p.unit goodsUnit
  25. from erp_product_stock ps
  26. left join erp_warehouse w on ps.warehouse_id = w.id
  27. left join erp_product p on ps.product_id = p.id
  28. left join erp_goods g on ps.goods_id = g.id
  29. <where>
  30. <!--
  31. <if test="request.warehouseId != null and request.warehouseId != 0">
  32. and ps.id = #{request.warehouseId}
  33. </if>
  34. -->
  35. <if test="request.warehouseId != null and request.warehouseId != 0">
  36. and w.id = #{request.warehouseId}
  37. </if>
  38. <if test="request.keyword != null and request.keyword != ''">
  39. and (
  40. p.bar_code like concat("%",#{request.keyword },"%")
  41. or g.sn like concat("%",#{request.keyword },"%")
  42. or p.sku like concat("%",#{request.keyword },"%")
  43. or p.name like concat("%",#{request.keyword },"%")
  44. )
  45. </if>
  46. </where>
  47. order by ps.id desc
  48. limit ${(request.pageNo- 1) * request.pageSize} , #{request.pageSize}
  49. </select>
  50. <!-- 查询产品预警库存信息分页列表 -->
  51. <select id="queryCount" resultType="Long" useCache="false">
  52. select
  53. count(ps.id)
  54. from erp_product_stock ps
  55. left join erp_warehouse w on ps.warehouse_id = w.id
  56. left join erp_product p on ps.product_id = p.id
  57. left join erp_goods g on ps.goods_id = g.id
  58. left join erp_warehouse_area a on ps.area_id = a.id
  59. <where>
  60. <if test="request.warehouseId != null and request.warehouseId != 0">
  61. and w.id = #{request.warehouseId}
  62. </if>
  63. <if test="request.keyword != null and request.keyword != ''">
  64. and (
  65. g.name like concat("%",#{request.keyword },"%")
  66. or g.bar_code like concat("%",#{request.keyword },"%")
  67. or g.sn like concat("%",#{request.keyword },"%")
  68. or p.sku like concat("%",#{request.keyword },"%")
  69. or p.name like concat("%",#{request.keyword },"%")
  70. )
  71. </if>
  72. </where>
  73. </select>
  74. <!-- 查询产品预警库存信息分页列表 -->
  75. <select id="listWarningStockPage" resultType="com.hys.app.model.erp.vo.ProductStockWarningVO" useCache="false">
  76. select p.*,ps.warehouse_id,w.`name` as warehouse_name,w.dept_id,sd.`name` as dept_name,ps.num as stock_num from erp_product_stock ps
  77. left join erp_warehouse w on ps.warehouse_id = w.id
  78. left join erp_product p on ps.product_id = p.id
  79. left join system_dept sd on w.dept_id = sd.id
  80. <where>
  81. ps.num &lt;= p.warning_value
  82. <if test="deptId != null and deptId != 0">
  83. and w.dept_id = #{deptId}
  84. </if>
  85. <if test="warehouseId != null and warehouseId != 0">
  86. and ps.warehouse_id = #{warehouseId}
  87. </if>
  88. <if test="name != null and name != ''">
  89. and p.name like concat('%',#{name},'%')
  90. </if>
  91. </where>
  92. </select>
  93. <select id="transitDetail" resultType="com.hys.app.model.erp.vo.TransitVO">
  94. SELECT
  95. eo.sn order_sn,
  96. eoi.stock_num num,
  97. eo.end_time
  98. FROM
  99. erp_order_item eoi
  100. LEFT JOIN erp_order eo ON eoi.order_id = eo.id
  101. WHERE
  102. eoi.product_stock_id = #{stockId}
  103. and eoi.has_return = 0
  104. AND eo.type = "TO_C"
  105. </select>
  106. </mapper>