Files
FT542-WMS/ruoyi-admin/src/main/resources/mapper/in/InStockinMapper.xml
2025-12-08 09:45:22 +08:00

239 lines
12 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.ruoyi.in.stockin.mapper.InStockinMapper">
<resultMap type="InStockin" id="InStockinResult">
<result property="stockinGuid" column="stockin_guid" />
<result property="stockinId" column="stockin_id" />
<result property="inType" column="in_type" />
<result property="createDate" column="create_date" />
<result property="createManId" column="create_man_id" />
<result property="createManName" column="user_name" />
<result property="status" column="status" />
<result property="warehouseId" column="warehouse_id" />
<result property="warehouseName" column="warehouse_name" />
<result property="finishDate" column="finish_date" />
<result property="erpBill" column="erp_bill" />
<result property="stockSource" column="stock_source" />
<result property="departmentNo" column="department_no" />
<result property="departmentName" column="dept_name" />
<result property="customerNo" column="customer_no" />
<result property="classNo" column="class_no" />
<result property="supplierNo" column="supplier_no" />
<result property="supplierName" column="supplier_name" />
<result property="spare1" column="spare1" />
<result property="spare2" column="spare2" />
<result property="spare4" column="spare4" />
<result property="spare3" column="spare3" />
<result property="spare5" column="spare5" />
</resultMap>
<sql id="selectInStockinVo">
select is2.stockin_guid,
is2.stockin_id,
is2.in_type,
is2.create_date,
is2.create_man_id,
is2.status,
is2.warehouse_id,
is2.finish_date,
is2.erp_bill,
is2.stock_source,
is2.department_no,
is2.customer_no,
is2.class_no,
is2.supplier_no,
is2.spare1,
is2.spare2,
is2.spare4,
is2.spare3,
is2.spare5,
bw.warehouse_name,
bs.supplier_name,
sd.dept_name ,
su.user_name
from in_stockin is2
left join bas_warehouse bw on is2.warehouse_id = bw.warehouse_id
left join bas_supplier bs on bs.supplier_no = is2.supplier_no
left join sys_dept sd on is2.department_no = sd.dept_id
left join sys_user su on su.user_id = is2.create_man_id
</sql>
<select id="selectInStockinList" parameterType="InStockin" resultMap="InStockinResult">
<include refid="selectInStockinVo"/>
<where>
<if test="stockinId != null and stockinId != ''"> and is2.stockin_id = #{stockinId}</if>
<if test="inType != null and inType != ''"> and is2.in_type = #{inType}</if>
<if test="beginTime != null and beginTime != ''"> and is2.create_date &gt;= #{beginTime}</if>
<if test="endTime != null and endTime != ''"> and is2.create_date &lt;= #{endTime}</if>
<if test="createManId != null and createManId != ''"> and is2.create_man_id = #{createManId}</if>
<if test="status != null and status != ''"> and is2.status = #{status}</if>
<if test="warehouseId != null and warehouseId != ''"> and is2.warehouse_id = #{warehouseId}</if>
<if test="finishDate != null and finishDate != ''"> and is2.finish_date = #{finishDate}</if>
<if test="erpBill != null and erpBill != ''"> and is2.erp_bill = #{erpBill}</if>
<if test="stockSource != null and stockSource != ''"> and is2.stock_source = #{stockSource}</if>
<if test="departmentNo != null and departmentNo != ''"> and is2.department_no = #{departmentNo}</if>
<if test="customerNo != null and customerNo != ''"> and is2.customer_no = #{customerNo}</if>
<if test="classNo != null and classNo != ''"> and is2.class_no = #{classNo}</if>
<if test="supplierNo != null and supplierNo != ''"> and is2.supplier_no = #{supplierNo}</if>
<if test="supplierName != null and supplierName != ''"> and supplier_name like concat('%', #{supplierName},'%')</if>
<if test="spare1 != null and spare1 != ''"> and is2.spare1 = #{spare1}</if>
<if test="spare2 != null and spare2 != ''"> and is2.spare2 = #{spare2}</if>
<if test="spare4 != null and spare4 != ''"> and is2.spare4 = #{spare4}</if>
<if test="spare3 != null and spare3 != ''"> and is2.spare3 = #{spare3}</if>
<if test="spare5 != null and spare5 != ''"> and is2.spare5 = #{spare5}</if>
<if test="materialDesc !=null and materialDesc!=''">
and is2.stockin_id in (
select distinct stockin_id from in_stockin_detail isd
left join bas_product bp on isd.product_id = bp.product_id
where bp.product_name like concat('%',#{materialDesc},'%')
)
</if>
<if test="lotNo !=null and lotNo!=''">
and is2.stockin_id in (
select distinct stockin_id from in_stockin_detail
where lot_no like concat('%',#{lotNo},'%')
)
</if>
<if test="params.warehouseDataScope != null and params.warehouseDataScope !=''">
${params.warehouseDataScope}
</if>
<if test="typeData != null and typeData.size()>0">
and bw.warehouse_type in
<foreach item="item" index="index" collection="typeData" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</where>
order by is2.create_date desc
</select>
<select id="selectInStockinByStockinGuid" parameterType="String" resultMap="InStockinResult">
<include refid="selectInStockinVo"/>
where is2.stockin_guid = #{stockinGuid}
</select>
<insert id="insertInStockin" parameterType="InStockin">
insert into in_stockin
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="stockinGuid != null">stockin_guid,</if>
<if test="stockinId != null and stockinId != ''">stockin_id,</if>
<if test="inType != null and inType != ''">in_type,</if>
<if test="createDate != null and createDate != ''">create_date,</if>
<if test="createManId != null">create_man_id,</if>
<if test="status != null and status != ''">status,</if>
<if test="warehouseId != null">warehouse_id,</if>
<if test="finishDate != null">finish_date,</if>
<if test="erpBill != null">erp_bill,</if>
<if test="stockSource != null">stock_source,</if>
<if test="departmentNo != null">department_no,</if>
<if test="customerNo != null">customer_no,</if>
<if test="classNo != null">class_no,</if>
<if test="supplierNo != null">supplier_no,</if>
<if test="spare1 != null">spare1,</if>
<if test="spare2 != null">spare2,</if>
<if test="spare4 != null">spare4,</if>
<if test="spare3 != null">spare3,</if>
<if test="spare5 != null">spare5,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="stockinGuid != null">#{stockinGuid},</if>
<if test="stockinId != null and stockinId != ''">#{stockinId},</if>
<if test="inType != null and inType != ''">#{inType},</if>
<if test="createDate != null and createDate != ''">#{createDate},</if>
<if test="createManId != null">#{createManId},</if>
<if test="status != null and status != ''">#{status},</if>
<if test="warehouseId != null">#{warehouseId},</if>
<if test="finishDate != null">#{finishDate},</if>
<if test="erpBill != null">#{erpBill},</if>
<if test="stockSource != null">#{stockSource},</if>
<if test="departmentNo != null">#{departmentNo},</if>
<if test="customerNo != null">#{customerNo},</if>
<if test="classNo != null">#{classNo},</if>
<if test="supplierNo != null">#{supplierNo},</if>
<if test="spare1 != null">#{spare1},</if>
<if test="spare2 != null">#{spare2},</if>
<if test="spare4 != null">#{spare4},</if>
<if test="spare3 != null">#{spare3},</if>
<if test="spare5 != null">#{spare5},</if>
</trim>
</insert>
<insert id="insertInStockinHistory">
insert into in_stockin_finish
select * from in_stockin where stockin_guid = #{stockinGuid}
</insert>
<update id="updateInStockin" parameterType="InStockin">
update in_stockin
<trim prefix="SET" suffixOverrides=",">
<if test="stockinId != null and stockinId != ''">stockin_id = #{stockinId},</if>
<if test="inType != null and inType != ''">in_type = #{inType},</if>
<if test="createDate != null and createDate != ''">create_date = #{createDate},</if>
<if test="createManId != null">create_man_id = #{createManId},</if>
<if test="status != null and status != ''">status = #{status},</if>
<if test="warehouseId != null">warehouse_id = #{warehouseId},</if>
<if test="finishDate != null">finish_date = #{finishDate},</if>
<if test="erpBill != null">erp_bill = #{erpBill},</if>
<if test="stockSource != null">stock_source = #{stockSource},</if>
<if test="departmentNo != null">department_no = #{departmentNo},</if>
<if test="customerNo != null">customer_no = #{customerNo},</if>
<if test="classNo != null">class_no = #{classNo},</if>
<if test="supplierNo != null">supplier_no = #{supplierNo},</if>
<if test="spare1 != null">spare1 = #{spare1},</if>
<if test="spare2 != null">spare2 = #{spare2},</if>
<if test="spare4 != null">spare4 = #{spare4},</if>
<if test="spare3 != null">spare3 = #{spare3},</if>
<if test="spare5 != null">spare5 = #{spare5},</if>
</trim>
where stockin_guid = #{stockinGuid}
</update>
<delete id="deleteInStockinByStockinGuid" parameterType="String">
delete from in_stockin where stockin_guid = #{stockinGuid}
</delete>
<delete id="deleteInStockinByStockinGuids" parameterType="String">
delete from in_stockin where stockin_guid in
<foreach item="stockinGuid" collection="array" open="(" separator="," close=")">
#{stockinGuid}
</foreach>
</delete>
<select id="selectStockinByDetail" parameterType="string" resultMap="InStockinResult">
select distinct is2.stockin_guid,
is2.stockin_id,
is2.in_type,
is2.create_date,
is2.create_man_id,
is2.status,
is2.warehouse_id,
is2.finish_date,
is2.erp_bill,
is2.stock_source,
is2.department_no,
is2.customer_no,
is2.class_no,
is2.supplier_no,
is2.spare1,
is2.spare2,
is2.spare4,
is2.spare3,
is2.spare5,
bw.warehouse_name,
bs.supplier_name,
sd.dept_name ,
su.user_name
from in_stockin is2
left join bas_warehouse bw on is2.warehouse_id = bw.warehouse_id
left join bas_supplier bs on bs.supplier_no = is2.supplier_no
left join sys_dept sd on is2.department_no = sd.dept_id
left join sys_user su on su.user_id = is2.create_man_id
left join in_stockin_detail isd on isd.stockin_id = is2.stockin_id
<where>
<if test="stockinDetailId != null and stockinDetailId !=''"> stockin_detail_id=#{stockinDetailId}</if>
</where>
</select>
</mapper>