Bonus-Cloud-JYY-Smart-Canteen/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/CheckInventoryDetailMapper.xml

180 lines
9.8 KiB
XML

<?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="com.bonus.canteen.core.ims.mapper.CheckInventoryDetailMapper">
<resultMap type="com.bonus.canteen.core.ims.domain.CheckInventoryDetail" id="CheckInventoryDetailResult">
<result property="detailId" column="detail_id" />
<result property="checkId" column="check_id" />
<result property="checkCode" column="check_code" />
<result property="inventoryId" column="inventory_id" />
<result property="intoId" column="into_id" />
<result property="intoDate" column="into_date" />
<result property="actualNum" column="actual_num" />
<result property="bookNum" column="book_num" />
<result property="differNum" column="differ_num" />
<result property="differReason" column="differ_reason" />
<result property="price" column="price" />
<result property="actualAmount" column="actual_amount" />
<result property="bookAmount" column="book_amount" />
<result property="differAmount" column="differ_amount" />
<result property="checkPicUrls" column="check_pic_urls" />
<result property="remark" column="remark" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectCheckInventoryDetailVo">
select detail_id, check_id, check_code, inventory_id, into_id, into_date, actual_num, book_num, differ_num, differ_reason, price, actual_amount, book_amount, differ_amount, check_pic_urls, remark, create_by, create_time, update_by, update_time from ims_check_inventory_detail
</sql>
<select id="selectCheckInventoryDetailList" parameterType="com.bonus.canteen.core.ims.domain.CheckInventoryDetail" resultMap="CheckInventoryDetailResult">
<include refid="selectCheckInventoryDetailVo"/>
<where>
<if test="checkId != null "> and check_id = #{checkId}</if>
<if test="checkCode != null and checkCode != ''"> and check_code = #{checkCode}</if>
<if test="inventoryId != null "> and inventory_id = #{inventoryId}</if>
<if test="intoId != null and intoId != ''"> and into_id = #{intoId}</if>
<if test="intoDate != null "> and into_date = #{intoDate}</if>
<if test="actualNum != null "> and actual_num = #{actualNum}</if>
<if test="bookNum != null "> and book_num = #{bookNum}</if>
<if test="differNum != null "> and differ_num = #{differNum}</if>
<if test="differReason != null and differReason != ''"> and differ_reason = #{differReason}</if>
<if test="price != null "> and price = #{price}</if>
<if test="actualAmount != null "> and actual_amount = #{actualAmount}</if>
<if test="bookAmount != null "> and book_amount = #{bookAmount}</if>
<if test="differAmount != null "> and differ_amount = #{differAmount}</if>
<if test="checkPicUrls != null and checkPicUrls != ''"> and check_pic_urls = #{checkPicUrls}</if>
</where>
</select>
<select id="selectCheckInventoryDetailByDetailId" parameterType="Long" resultMap="CheckInventoryDetailResult">
<include refid="selectCheckInventoryDetailVo"/>
where detail_id = #{detailId}
</select>
<insert id="insertCheckInventoryDetail" parameterType="com.bonus.canteen.core.ims.domain.CheckInventoryDetail" useGeneratedKeys="true" keyProperty="detailId">
insert into ims_check_inventory_detail
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="checkId != null">check_id,</if>
<if test="checkCode != null and checkCode != ''">check_code,</if>
<if test="inventoryId != null">inventory_id,</if>
<if test="intoId != null">into_id,</if>
<if test="intoDate != null">into_date,</if>
<if test="actualNum != null">actual_num,</if>
<if test="bookNum != null">book_num,</if>
<if test="differNum != null">differ_num,</if>
<if test="differReason != null">differ_reason,</if>
<if test="price != null">price,</if>
<if test="actualAmount != null">actual_amount,</if>
<if test="bookAmount != null">book_amount,</if>
<if test="differAmount != null">differ_amount,</if>
<if test="checkPicUrls != null">check_pic_urls,</if>
<if test="remark != null">remark,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="checkId != null">#{checkId},</if>
<if test="checkCode != null and checkCode != ''">#{checkCode},</if>
<if test="inventoryId != null">#{inventoryId},</if>
<if test="intoId != null">#{intoId},</if>
<if test="intoDate != null">#{intoDate},</if>
<if test="actualNum != null">#{actualNum},</if>
<if test="bookNum != null">#{bookNum},</if>
<if test="differNum != null">#{differNum},</if>
<if test="differReason != null">#{differReason},</if>
<if test="price != null">#{price},</if>
<if test="actualAmount != null">#{actualAmount},</if>
<if test="bookAmount != null">#{bookAmount},</if>
<if test="differAmount != null">#{differAmount},</if>
<if test="checkPicUrls != null">#{checkPicUrls},</if>
<if test="remark != null">#{remark},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<update id="updateCheckInventoryDetail" parameterType="com.bonus.canteen.core.ims.domain.CheckInventoryDetail">
update ims_check_inventory_detail
<trim prefix="SET" suffixOverrides=",">
<if test="checkId != null">check_id = #{checkId},</if>
<if test="checkCode != null and checkCode != ''">check_code = #{checkCode},</if>
<if test="inventoryId != null">inventory_id = #{inventoryId},</if>
<if test="intoId != null">into_id = #{intoId},</if>
<if test="intoDate != null">into_date = #{intoDate},</if>
<if test="actualNum != null">actual_num = #{actualNum},</if>
<if test="bookNum != null">book_num = #{bookNum},</if>
<if test="differNum != null">differ_num = #{differNum},</if>
<if test="differReason != null">differ_reason = #{differReason},</if>
<if test="price != null">price = #{price},</if>
<if test="actualAmount != null">actual_amount = #{actualAmount},</if>
<if test="bookAmount != null">book_amount = #{bookAmount},</if>
<if test="differAmount != null">differ_amount = #{differAmount},</if>
<if test="checkPicUrls != null">check_pic_urls = #{checkPicUrls},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
</trim>
where detail_id = #{detailId}
</update>
<delete id="deleteCheckInventoryDetailByDetailId" parameterType="Long">
delete from ims_check_inventory_detail where detail_id = #{detailId}
</delete>
<delete id="deleteCheckInventoryDetailByCheckId" parameterType="Long">
delete from ims_check_inventory_detail where check_id = #{checkId}
</delete>
<delete id="deleteCheckInventoryDetailByDetailIds" parameterType="String">
delete from ims_check_inventory_detail where detail_id in
<foreach item="detailId" collection="array" open="(" separator="," close=")">
#{detailId}
</foreach>
</delete>
<select id="selectListByIntoIds" resultType="com.bonus.canteen.core.ims.vo.CheckDetailVO">
SELECT dcd.detail_id,
dcd.check_id,
dcd.inventory_id,
di.material_id,
mm.material_code,
mm.material_name,
mm.material_type_id,
mmc.material_type_name,
mm.img_url,
dcd.into_id,
dii.into_date,
di.unit_id,
du.unit_name,
dcd.actual_num,
dcd.book_num,
dcd.differ_num,
dcd.price,
dcd.actual_amount,
dcd.book_amount,
dcd.differ_amount,
dcd.differ_reason,
dcd.check_pic_urls
FROM ims_check_inventory_detail dcd
LEFT JOIN ims_inventory di ON di.inventory_id = dcd.inventory_id
LEFT JOIN cook_material mm ON mm.material_id = di.material_id
LEFT JOIN cook_material_type mmc ON mmc.material_type_id = mm.material_type_id
LEFT JOIN ims_unit du ON du.unit_id = di.unit_id
LEFT JOIN ims_into_inventory dii ON dii.into_id = dcd.into_id
WHERE dcd.check_id in
<foreach collection="collect" item="checkId" open="(" close=")" separator=",">
#{checkId}
</foreach>
</select>
</mapper>