ProductStockMapper.xml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  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. <if test="request.companyId != null and request.companyId != 0">
  31. and ps.company_id = #{request.companyId}
  32. </if>
  33. <if test="request.warehouseId != null and request.warehouseId != 0">
  34. and ps.id = #{request.warehouseId}
  35. </if>
  36. <if test="request.keyword != null and request.keyword != ''">
  37. and (
  38. g.name like concat("%",#{request.keyword },"%")
  39. or g.bar_code like concat("%",#{request.keyword },"%")
  40. or g.name like concat("%",#{request.keyword },"%")
  41. )
  42. </if>
  43. </where>
  44. order by ps.id desc
  45. limit ${(request.pageNo- 1) * request.pageSize} , #{request.pageSize}
  46. </select>
  47. <!-- 查询产品预警库存信息分页列表 -->
  48. <select id="selectCount" resultType="Long" useCache="false">
  49. select
  50. count(ps.id)
  51. from erp_product_stock ps
  52. left join erp_warehouse w on ps.warehouse_id = w.id
  53. left join erp_product p on ps.product_id = p.id
  54. left join erp_goods g on ps.goods_id = g.id
  55. left join erp_warehouse_area a on ps.area_id = a.id
  56. <where>
  57. <if test="request.warehouseId != null and request.warehouseId != 0">
  58. and ps.id = #{request.warehouseId}
  59. </if>
  60. <if test="request.keyword != null and request.keyword != ''">
  61. and (
  62. g.name like concat("%",#{request.keyword },"%")
  63. or g.bar_code like concat("%",#{request.keyword },"%")
  64. or g.name like concat("%",#{request.keyword },"%")
  65. )
  66. </if>
  67. </where>
  68. </select>
  69. <!-- 查询产品预警库存信息分页列表 -->
  70. <select id="listWarningStockPage" resultType="com.hys.app.model.erp.vo.ProductStockWarningVO" useCache="false">
  71. 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
  72. left join erp_warehouse w on ps.warehouse_id = w.id
  73. left join erp_product p on ps.product_id = p.id
  74. left join erp_company_dept sd on w.dept_id = sd.id
  75. <where>
  76. ps.num &lt;= p.warning_value
  77. <if test="deptId != null and deptId != 0">
  78. and w.dept_id = #{deptId}
  79. </if>
  80. <if test="warehouseId != null and warehouseId != 0">
  81. and ps.warehouse_id = #{warehouseId}
  82. </if>
  83. <if test="name != null and name != ''">
  84. and p.name like concat('%',#{name},'%')
  85. </if>
  86. </where>
  87. </select>
  88. <select id="transitDetail" resultType="com.hys.app.model.erp.vo.TransitVO">
  89. SELECT
  90. eo.sn order_sn,
  91. eoi.num,
  92. eoi.end_time
  93. FROM
  94. erp_order_item eoi
  95. LEFT JOIN erp_order eo ON eoi.order_id = eo.id
  96. WHERE
  97. eoi.product_stock_id = #{stockId}
  98. and eoi.has_return = 0
  99. AND eo.type = "TO_C"
  100. </select>
  101. </mapper>