280 lines
17 KiB
XML
280 lines
17 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.ImsIntoInventoryMapper">
|
|
|
|
<resultMap type="com.bonus.canteen.core.ims.domain.ImsIntoInventory" id="ImsIntoInventoryResult">
|
|
<result property="intoId" column="into_id" />
|
|
<result property="intoCode" column="into_code" />
|
|
<result property="warehouseId" column="warehouse_id" />
|
|
<result property="intoDate" column="into_date" />
|
|
<result property="totalNum" column="total_num" />
|
|
<result property="intoType" column="into_type" />
|
|
<result property="status" column="status" />
|
|
<result property="refundOutId" column="refund_out_id" />
|
|
<result property="relateDeliveryGoodsId" column="relate_delivery_goods_id" />
|
|
<result property="totalAmount" column="total_amount" />
|
|
<result property="relateOrderGoodsId" column="relate_order_goods_id" />
|
|
<result property="relateInspectGoodsId" column="relate_inspect_goods_id" />
|
|
<result property="intoRelateOutId" column="into_relate_out_id" />
|
|
<result property="goodsAllocationId" column="goods_allocation_id" />
|
|
<result property="remark" column="remark" />
|
|
<result property="delFlag" column="del_flag" />
|
|
<result property="createBy" column="create_by" />
|
|
<result property="createTime" column="create_time" />
|
|
<result property="updateBy" column="update_by" />
|
|
<result property="updateTime" column="update_time" />
|
|
<result property="warehouseName" column="warehouse_name" />
|
|
<result property="areaName" column="area_name" />
|
|
<result property="areaId" column="area_id" />
|
|
</resultMap>
|
|
|
|
<resultMap id="ImsIntoInventoryImsIntoInventoryDetailResult" type="com.bonus.canteen.core.ims.domain.ImsIntoInventory" extends="ImsIntoInventoryResult">
|
|
<collection property="imsIntoInventoryDetailList" ofType="com.bonus.canteen.core.ims.domain.ImsIntoInventoryDetail" column="into_id" select="selectImsIntoInventoryDetailList" />
|
|
</resultMap>
|
|
|
|
<resultMap type="com.bonus.canteen.core.ims.domain.ImsIntoInventoryDetail" id="ImsIntoInventoryDetailResult">
|
|
<result property="intoDetailId" column="into_detail_id" />
|
|
<result property="intoId" column="into_id" />
|
|
<result property="intoCode" column="into_code" />
|
|
<result property="inventoryId" column="inventory_id" />
|
|
<result property="materialId" column="material_id" />
|
|
<result property="supplierId" column="supplier_id" />
|
|
<result property="unitId" column="unit_id" />
|
|
<result property="size" column="size" />
|
|
<result property="unitPrice" column="unit_price" />
|
|
<result property="totalPrice" column="total_price" />
|
|
<result property="deliveryNum" column="delivery_num" />
|
|
<result property="purNum" column="pur_num" />
|
|
<result property="unqualifiedNum" column="unqualified_num" />
|
|
<result property="inventoryNum" column="inventory_num" />
|
|
<result property="productDate" column="product_date" />
|
|
<result property="expireTime" column="expire_time" />
|
|
<result property="imgUrl" column="img_url" />
|
|
<result property="ifFillInventory" column="if_fill_inventory" />
|
|
<result property="relateOrderGoodsDetailId" column="relate_order_goods_detail_id" />
|
|
<result property="relateDeliveryGoodsDetailId" column="relate_delivery_goods_detail_id" />
|
|
<result property="delFlag" column="del_flag" />
|
|
<result property="createBy" column="create_by" />
|
|
<result property="createTime" column="create_time" />
|
|
<result property="updateBy" column="update_by" />
|
|
<result property="updateTime" column="update_time" />
|
|
<result property="supplierName" column="supplier_name" />
|
|
<result property="materialName" column="material_name" />
|
|
<result property="materialTypeName" column="material_type_name" />
|
|
<result property="unitName" column="unit_name" />
|
|
<result property="barCode" column="bar_code" />
|
|
<result property="materialSize" column="material_size" />
|
|
<result property="materialCode" column="material_code" />
|
|
</resultMap>
|
|
|
|
<sql id="selectImsIntoInventoryVo">
|
|
select into_id, into_code, iii.warehouse_id, into_date, total_num, into_type, status,
|
|
refund_out_id, relate_delivery_goods_id, total_amount, relate_order_goods_id,
|
|
relate_inspect_goods_id, into_relate_out_id, goods_allocation_id, remark, iii.del_flag,
|
|
iii.create_by, iii.create_time, iii.update_by, iii.update_time, iwi.warehouse_name,
|
|
ba.area_name, ba.area_id
|
|
from ims_into_inventory iii
|
|
left join ims_warehouse_info iwi on iii.warehouse_id = iwi.warehouse_id
|
|
left join basic_area ba on iwi.area_id = ba.area_id
|
|
</sql>
|
|
|
|
<select id="selectImsIntoInventoryList" parameterType="com.bonus.canteen.core.ims.domain.ImsIntoInventory" resultMap="ImsIntoInventoryResult">
|
|
<include refid="selectImsIntoInventoryVo"/>
|
|
<where>
|
|
iii.del_flag = '0'
|
|
<if test="intoCode != null and intoCode != ''"> and iii.into_code = #{intoCode}</if>
|
|
<if test="warehouseId != null "> and iii.warehouse_id = #{warehouseId}</if>
|
|
<if test="intoDate != null "> and iii.into_date = #{intoDate}</if>
|
|
<if test="totalNum != null "> and iii.total_num = #{totalNum}</if>
|
|
<if test="intoType != null "> and iii.into_type = #{intoType}</if>
|
|
<if test="status != null "> and iii.status = #{status}</if>
|
|
<if test="refundOutId != null and refundOutId != ''"> and iii.refund_out_id = #{refundOutId}</if>
|
|
<if test="relateDeliveryGoodsId != null and relateDeliveryGoodsId != ''"> and iii.relate_delivery_goods_id = #{relateDeliveryGoodsId}</if>
|
|
<if test="totalAmount != null "> and total_amount = #{totalAmount}</if>
|
|
<if test="relateOrderGoodsId != null and relateOrderGoodsId != ''"> and iii.relate_order_goods_id = #{relateOrderGoodsId}</if>
|
|
<if test="relateInspectGoodsId != null and relateInspectGoodsId != ''"> and iii.relate_inspect_goods_id = #{relateInspectGoodsId}</if>
|
|
<if test="intoRelateOutId != null and intoRelateOutId != ''"> and iii.into_relate_out_id = #{intoRelateOutId}</if>
|
|
<if test="goodsAllocationId != null and goodsAllocationId != ''"> and iii.goods_allocation_id = #{goodsAllocationId}</if>
|
|
<if test="startDateTime != null">
|
|
and iii.into_date <![CDATA[ >= ]]> #{startDateTime}
|
|
</if>
|
|
<if test="endDateTime != null">
|
|
and iii.into_date <![CDATA[ <= ]]> #{endDateTime}
|
|
</if>
|
|
</where>
|
|
</select>
|
|
|
|
<select id="selectImsIntoInventoryByIntoId" parameterType="Long" resultMap="ImsIntoInventoryImsIntoInventoryDetailResult">
|
|
select into_id, into_code, iii.warehouse_id, into_date, total_num, into_type,
|
|
status, refund_out_id, relate_delivery_goods_id, total_amount,
|
|
relate_order_goods_id, relate_inspect_goods_id, into_relate_out_id,
|
|
goods_allocation_id, remark, iii.del_flag, iii.create_by, iii.create_time,
|
|
iii.update_by, iii.update_time, iwi.warehouse_name, ba.area_name, ba.area_id
|
|
from ims_into_inventory iii
|
|
left join ims_warehouse_info iwi on iii.warehouse_id = iwi.warehouse_id
|
|
left join basic_area ba on iwi.area_id = ba.area_id
|
|
where iii.into_id = #{intoId} and iii.del_flag = '0'
|
|
</select>
|
|
|
|
<select id="selectImsIntoInventoryDetailList" resultMap="ImsIntoInventoryDetailResult">
|
|
select into_detail_id, into_id, into_code, inventory_id, iiid.material_id, iiid.supplier_id,
|
|
iiid.unit_id, iiid.size, iiid.unit_price, total_price, delivery_num, pur_num, unqualified_num,
|
|
inventory_num, product_date, expire_time, iiid.img_url, if_fill_inventory,
|
|
relate_order_goods_detail_id, relate_delivery_goods_detail_id, iiid.del_flag,
|
|
iiid.create_by, iiid.create_time, iiid.update_by, iiid.update_time, isr.supplier_name,
|
|
cm.material_name, cmt.material_type_name,
|
|
iu.unit_name, cm.bar_code, cm.size AS material_size, cm.material_code
|
|
from ims_into_inventory_detail iiid
|
|
left join ims_supplier isr on iiid.supplier_id = isr.supplier_id
|
|
left join cook_material cm on iiid.material_id = cm.material_id
|
|
left join cook_material_type cmt on cm.material_type_id = cmt.material_type_id
|
|
left join ims_unit iu on iiid.unit_id = iu.unit_id
|
|
where iiid.into_id = #{into_id} and iiid.del_flag = '0'
|
|
</select>
|
|
|
|
<select id="selectImsIntoInventoryDetailListByInventoryId" resultMap="ImsIntoInventoryDetailResult">
|
|
select into_detail_id,
|
|
iiid.into_id,
|
|
iiid.into_code,
|
|
inventory_id,
|
|
material_id,
|
|
iiid.supplier_id,
|
|
unit_id,
|
|
size,
|
|
unit_price,
|
|
total_price,
|
|
delivery_num,
|
|
pur_num,
|
|
unqualified_num,
|
|
inventory_num,
|
|
product_date,
|
|
expire_time,
|
|
img_url,
|
|
if_fill_inventory,
|
|
relate_order_goods_detail_id,
|
|
relate_delivery_goods_detail_id,
|
|
iiid.del_flag,
|
|
iiid.create_by,
|
|
iiid.create_time,
|
|
iiid.update_by,
|
|
iiid.update_time
|
|
from ims_into_inventory_detail iiid
|
|
left join ims_into_inventory iii on iii.into_id = iiid.into_id
|
|
where iiid.inventory_id = #{inventoryId}
|
|
and iii.status = '2'
|
|
and iiid.inventory_num > 0
|
|
and iiid.del_flag = '0'
|
|
order by iii.into_date
|
|
</select>
|
|
|
|
<insert id="insertImsIntoInventory" parameterType="com.bonus.canteen.core.ims.domain.ImsIntoInventory" useGeneratedKeys="true" keyProperty="intoId">
|
|
insert into ims_into_inventory
|
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
|
<if test="intoCode != null and intoCode != ''">into_code,</if>
|
|
<if test="warehouseId != null">warehouse_id,</if>
|
|
<if test="intoDate != null">into_date,</if>
|
|
<if test="totalNum != null">total_num,</if>
|
|
<if test="intoType != null">into_type,</if>
|
|
<if test="status != null">status,</if>
|
|
<if test="refundOutId != null">refund_out_id,</if>
|
|
<if test="relateDeliveryGoodsId != null">relate_delivery_goods_id,</if>
|
|
<if test="totalAmount != null">total_amount,</if>
|
|
<if test="relateOrderGoodsId != null">relate_order_goods_id,</if>
|
|
<if test="relateInspectGoodsId != null">relate_inspect_goods_id,</if>
|
|
<if test="intoRelateOutId != null">into_relate_out_id,</if>
|
|
<if test="goodsAllocationId != null">goods_allocation_id,</if>
|
|
<if test="remark != null">remark,</if>
|
|
<if test="delFlag != null">del_flag,</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="intoCode != null and intoCode != ''">#{intoCode},</if>
|
|
<if test="warehouseId != null">#{warehouseId},</if>
|
|
<if test="intoDate != null">#{intoDate},</if>
|
|
<if test="totalNum != null">#{totalNum},</if>
|
|
<if test="intoType != null">#{intoType},</if>
|
|
<if test="status != null">#{status},</if>
|
|
<if test="refundOutId != null">#{refundOutId},</if>
|
|
<if test="relateDeliveryGoodsId != null">#{relateDeliveryGoodsId},</if>
|
|
<if test="totalAmount != null">#{totalAmount},</if>
|
|
<if test="relateOrderGoodsId != null">#{relateOrderGoodsId},</if>
|
|
<if test="relateInspectGoodsId != null">#{relateInspectGoodsId},</if>
|
|
<if test="intoRelateOutId != null">#{intoRelateOutId},</if>
|
|
<if test="goodsAllocationId != null">#{goodsAllocationId},</if>
|
|
<if test="remark != null">#{remark},</if>
|
|
<if test="delFlag != null">#{delFlag},</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="updateImsIntoInventory" parameterType="com.bonus.canteen.core.ims.domain.ImsIntoInventory">
|
|
update ims_into_inventory
|
|
<trim prefix="SET" suffixOverrides=",">
|
|
<if test="intoCode != null and intoCode != ''">into_code = #{intoCode},</if>
|
|
<if test="warehouseId != null">warehouse_id = #{warehouseId},</if>
|
|
<if test="intoDate != null">into_date = #{intoDate},</if>
|
|
<if test="totalNum != null">total_num = #{totalNum},</if>
|
|
<if test="intoType != null">into_type = #{intoType},</if>
|
|
<if test="status != null">status = #{status},</if>
|
|
<if test="refundOutId != null">refund_out_id = #{refundOutId},</if>
|
|
<if test="relateDeliveryGoodsId != null">relate_delivery_goods_id = #{relateDeliveryGoodsId},</if>
|
|
<if test="totalAmount != null">total_amount = #{totalAmount},</if>
|
|
<if test="relateOrderGoodsId != null">relate_order_goods_id = #{relateOrderGoodsId},</if>
|
|
<if test="relateInspectGoodsId != null">relate_inspect_goods_id = #{relateInspectGoodsId},</if>
|
|
<if test="intoRelateOutId != null">into_relate_out_id = #{intoRelateOutId},</if>
|
|
<if test="goodsAllocationId != null">goods_allocation_id = #{goodsAllocationId},</if>
|
|
<if test="remark != null">remark = #{remark},</if>
|
|
<if test="delFlag != null">del_flag = #{delFlag},</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 into_id = #{intoId}
|
|
</update>
|
|
|
|
<delete id="deleteImsIntoInventoryByIntoId" parameterType="Long">
|
|
update ims_into_inventory set del_flag = '2' where into_id = #{intoId}
|
|
</delete>
|
|
|
|
<delete id="deleteImsIntoInventoryByIntoIds" parameterType="String">
|
|
update ims_into_inventory set del_flag = '2' where into_id in
|
|
<foreach item="intoId" collection="array" open="(" separator="," close=")">
|
|
#{intoId}
|
|
</foreach>
|
|
</delete>
|
|
|
|
<delete id="deleteImsIntoInventoryDetailByIntoIds" parameterType="String">
|
|
update ims_into_inventory_detail set del_flag = '2' where into_id in
|
|
<foreach item="intoId" collection="array" open="(" separator="," close=")">
|
|
#{intoId}
|
|
</foreach>
|
|
</delete>
|
|
|
|
<delete id="deleteImsIntoInventoryDetailByIntoId" parameterType="Long">
|
|
update ims_into_inventory_detail set del_flag = '2' where into_id = #{intoId}
|
|
</delete>
|
|
|
|
<insert id="batchImsIntoInventoryDetail">
|
|
insert into ims_into_inventory_detail( into_detail_id, into_id, into_code, inventory_id, material_id, supplier_id, unit_id, size, unit_price, total_price, delivery_num, pur_num, unqualified_num, inventory_num, product_date, expire_time, img_url, if_fill_inventory, relate_order_goods_detail_id, relate_delivery_goods_detail_id, del_flag, create_by, create_time, update_by, update_time) values
|
|
<foreach item="item" index="index" collection="list" separator=",">
|
|
( #{item.intoDetailId}, #{item.intoId}, #{item.intoCode}, #{item.inventoryId}, #{item.materialId}, #{item.supplierId}, #{item.unitId}, #{item.size}, #{item.unitPrice}, #{item.totalPrice}, #{item.deliveryNum}, #{item.purNum}, #{item.unqualifiedNum}, #{item.inventoryNum}, #{item.productDate}, #{item.expireTime}, #{item.imgUrl}, #{item.ifFillInventory}, #{item.relateOrderGoodsDetailId}, #{item.relateDeliveryGoodsDetailId}, #{item.delFlag}, #{item.createBy}, #{item.createTime}, #{item.updateBy}, #{item.updateTime})
|
|
</foreach>
|
|
</insert>
|
|
|
|
<update id="updateIntoInventoryNum">
|
|
update ims_into_inventory_detail
|
|
set inventory_num = inventory_num - #{fetchNum}
|
|
where into_detail_id = #{intoDetailId}
|
|
AND inventory_num >= #{fetchNum}
|
|
AND del_flag = '0'
|
|
</update>
|
|
</mapper> |