You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.8 KiB
XML

5 months ago
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.product.dal.mysql.harvestbatch.HarvestBatchMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
<resultMap id="queryBatchIdsByGoodsIdMap" type="cn.iocoder.yudao.module.product.controller.admin.harvestbatch.vo.GoodsHarvestBatchIdsRespVO">
<result column="goods_id" property="goodsId"></result>
<collection property="batchIds" ofType="String">
<result column="harvest_batch_id"></result>
</collection>
<collection property="harvestDates" ofType="Date">
<result column="harvest_date"></result>
</collection>
</resultMap>
<select id="getBatchIdsByGoodsId" resultMap="queryBatchIdsByGoodsIdMap">
select
goods_id, harvest_batch_id, harvest_date
from
product_harvest_batch
<where>
deleted = 0
<if test="businessId != null">and belong_business_id = #{businessId}</if>
<if test="goodsIds != null and goodsIds.size() > 0">
and goods_id in
<foreach collection="goodsIds" item="goodsId" open="(" close=")" separator=",">
#{goodsId}
</foreach>
</if>
<if test="blockState != null">
and block_state = #{blockState}
</if>
</where>
</select>
</mapper>