|
|
|
<?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.glxp.api.dao.purchase.PurPlanDetailDao">
|
|
|
|
|
|
|
|
<select id="queryPageList" parameterType="com.glxp.api.req.purchase.PurPlanDetailRequest"
|
|
|
|
resultType="com.glxp.api.entity.purchase.PurPlanDetailEntity">
|
|
|
|
select *
|
|
|
|
FROM pur_plan_detail
|
|
|
|
<where>
|
|
|
|
<if test="orderIdFk != '' and orderIdFk != null">
|
|
|
|
AND orderIdFk = #{orderIdFk}
|
|
|
|
</if>
|
|
|
|
<if test="productId != null">
|
|
|
|
AND productId = #{productId}
|
|
|
|
</if>
|
|
|
|
<if test="supId != '' and supId != null">
|
|
|
|
AND supId = #{supId}
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<select id="joinQueryList" parameterType="com.glxp.api.req.purchase.PurPlanDetailRequest"
|
|
|
|
resultType="com.glxp.api.res.purchase.PurOrderDetailResponse">
|
|
|
|
SELECT
|
|
|
|
pur_plan_detail.*,
|
|
|
|
basic_products.ggxh spec,
|
|
|
|
basic_products.nameCode nameCode,
|
|
|
|
basic_products.measname,
|
|
|
|
basic_products.manufactory,
|
|
|
|
basic_products.ylqxzcrbarmc,
|
|
|
|
basic_corp.`name` supName
|
|
|
|
FROM
|
|
|
|
pur_plan_detail
|
|
|
|
INNER JOIN basic_udirel ON pur_plan_detail.productId = basic_udirel.id
|
|
|
|
INNER JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
|
|
|
|
left JOIN basic_corp ON pur_plan_detail.supId = basic_corp.erpId
|
|
|
|
<where>
|
|
|
|
<if test="orderIdFk != '' and orderIdFk != null">
|
|
|
|
AND orderIdFk = #{orderIdFk}
|
|
|
|
AND basic_products.diType=1
|
|
|
|
</if>
|
|
|
|
<if test="productId != null">
|
|
|
|
AND productId = #{productId}
|
|
|
|
</if>
|
|
|
|
<if test="supId != '' and supId != null">
|
|
|
|
AND supId = #{supId}
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<select id="joinDrugQueryList" parameterType="com.glxp.api.req.purchase.PurPlanDetailRequest"
|
|
|
|
resultType="com.glxp.api.res.purchase.PurOrderDetailResponse">
|
|
|
|
SELECT
|
|
|
|
pur_plan_detail.*,
|
|
|
|
basic_products.ggxh spec,
|
|
|
|
basic_products.nameCode nameCode,
|
|
|
|
basic_products.measname,
|
|
|
|
basic_products.manufactory,
|
|
|
|
basic_products.ylqxzcrbarmc,
|
|
|
|
basic_products.bzgg,
|
|
|
|
basic_products.packUnit,
|
|
|
|
basic_products.prepnSpec,
|
|
|
|
basic_products.prepnUnit,
|
|
|
|
basic_corp.`name` supName
|
|
|
|
FROM
|
|
|
|
pur_plan_detail
|
|
|
|
INNER JOIN basic_udirel ON pur_plan_detail.productId = basic_udirel.id
|
|
|
|
INNER JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
|
|
|
|
left JOIN basic_corp ON pur_plan_detail.supId = basic_corp.erpId
|
|
|
|
<where>
|
|
|
|
<if test="orderIdFk != '' and orderIdFk != null">
|
|
|
|
AND orderIdFk = #{orderIdFk}
|
|
|
|
AND basic_products.diType=1
|
|
|
|
</if>
|
|
|
|
<if test="productId != null">
|
|
|
|
AND productId = #{productId}
|
|
|
|
</if>
|
|
|
|
<if test="supId != '' and supId != null">
|
|
|
|
AND supId = #{supId}
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<insert id="insert" keyProperty="id"
|
|
|
|
parameterType="com.glxp.api.entity.purchase.PurPlanDetailEntity">
|
|
|
|
replace
|
|
|
|
INTO pur_plan_detail
|
|
|
|
(
|
|
|
|
orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh,destinyId
|
|
|
|
)
|
|
|
|
values (
|
|
|
|
#{orderIdFk},
|
|
|
|
#{productId},
|
|
|
|
#{productName},
|
|
|
|
#{count},
|
|
|
|
#{supId},#{zczbhhzbapzbh},#{destinyId})
|
|
|
|
</insert>
|
|
|
|
|
|
|
|
|
|
|
|
<delete id="deleteByIds" parameterType="java.util.List">
|
|
|
|
DELETE FROM pur_plan_detail WHERE id in
|
|
|
|
<foreach collection="ids" item="item" open="(" separator="," close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
</delete>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<delete id="deleteByOrderId" parameterType="map">
|
|
|
|
DELETE
|
|
|
|
FROM pur_plan_detail
|
|
|
|
WHERE orderIdFk = #{orderIdFk}
|
|
|
|
</delete>
|
|
|
|
|
|
|
|
<update id="update" parameterType="com.glxp.api.entity.purchase.PurPlanDetailEntity">
|
|
|
|
UPDATE pur_plan_detail
|
|
|
|
<trim prefix="set" suffixOverrides=",">
|
|
|
|
<if test="orderIdFk != null">orderIdFk=#{orderIdFk},</if>
|
|
|
|
<if test="productId != null">productId=#{productId},</if>
|
|
|
|
<if test="productName != null">productName=#{productName},</if>
|
|
|
|
<if test="count != null">`count`=#{count},</if>
|
|
|
|
<if test="supId != null">supId=#{supId},</if>
|
|
|
|
<if test="zczbhhzbapzbh != null">zczbhhzbapzbh=#{zczbhhzbapzbh},</if>
|
|
|
|
</trim>
|
|
|
|
WHERE id = #{id}
|
|
|
|
</update>
|
|
|
|
|
|
|
|
|
|
|
|
<insert id="insertPurPlanDetailEntity" keyProperty="id" parameterType="com.glxp.api.entity.purchase.PurPlanDetailEntity">
|
|
|
|
REPLACE INTO pur_plan_detail
|
|
|
|
( orderIdFk,productId,productName,count,supId,zczbhhzbapzbh) values
|
|
|
|
|
|
|
|
<foreach collection="datas" item="item" index="index" separator=",">
|
|
|
|
(
|
|
|
|
#{item.orderIdFk},
|
|
|
|
#{item.productId},
|
|
|
|
#{item.productName},
|
|
|
|
#{item.count},
|
|
|
|
#{item.supId},
|
|
|
|
#{item.zczbhhzbapzbh}
|
|
|
|
)
|
|
|
|
</foreach>
|
|
|
|
</insert>
|
|
|
|
|
|
|
|
<select id="selectIoOrderDetailBiz" parameterType="long"
|
|
|
|
resultType="com.glxp.api.entity.basic.BasicProductsEntity">
|
|
|
|
SELECT
|
|
|
|
b2.*
|
|
|
|
FROM
|
|
|
|
pur_plan_detail p1
|
|
|
|
LEFT JOIN basic_udirel b1 on b1.id=p1.productId
|
|
|
|
LEFT JOIN basic_products b2 on b1.uuid = b2 .uuid
|
|
|
|
<where>
|
|
|
|
<if test="id != null and id!='' ">
|
|
|
|
AND p1.id = #{id}
|
|
|
|
</if>
|
|
|
|
</where>
|
|
|
|
GROUP BY uuid
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<select id="seletDetaiList" resultType="com.glxp.api.res.purchase.PurOrderDetailResponse">
|
|
|
|
SELECT
|
|
|
|
pur_plan_detail.*,
|
|
|
|
pur_plan.billNo,
|
|
|
|
basic_products.ggxh spec,
|
|
|
|
basic_products.measname,
|
|
|
|
basic_products.nameCode,
|
|
|
|
basic_products.manufactory,
|
|
|
|
basic_products.ylqxzcrbarmc,
|
|
|
|
basic_products.bzgg,
|
|
|
|
basic_products.packUnit,
|
|
|
|
basic_products.prepnSpec,
|
|
|
|
basic_products.prepnUnit,
|
|
|
|
basic_corp.`name` supName
|
|
|
|
FROM
|
|
|
|
pur_plan_detail
|
|
|
|
INNER JOIN basic_udirel ON pur_plan_detail.productId = basic_udirel.id
|
|
|
|
INNER JOIN basic_products ON basic_udirel.uuid = basic_products.uuid
|
|
|
|
left JOIN basic_corp ON pur_plan_detail.supId = basic_corp.erpId
|
|
|
|
left join pur_plan on pur_plan.id = pur_plan_detail.orderIdFk
|
|
|
|
Left Join sys_approval_flow as saf ON pur_plan.approvalFlowId = saf.id
|
|
|
|
<where>
|
|
|
|
<if test="nameCode != null and nameCode != ''">
|
|
|
|
AND basic_products.nameCode like concat('%', #{nameCode}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="billNo != null and billNo != ''">
|
|
|
|
AND pur_plan.billNo like concat('%', #{billNo}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="productType != null">
|
|
|
|
AND pur_plan.productType = #{productType}
|
|
|
|
</if>
|
|
|
|
<if test="productId != null">
|
|
|
|
AND productId like concat('%', #{productId}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="productName != null and productName != ''">
|
|
|
|
AND productName like concat('%', #{productName}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="spec != null and spec != ''">
|
|
|
|
AND basic_products.ggxh like concat('%', #{spec}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="zczbhhzbapzbh != null and zczbhhzbapzbh != ''">
|
|
|
|
AND pur_plan_detail.zczbhhzbapzbh like concat('%', #{zczbhhzbapzbh}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="manufactory != null and manufactory != ''">
|
|
|
|
AND basic_products.manufactory like concat('%', #{manufactory}, '%')
|
|
|
|
</if>
|
|
|
|
<if test="startDate != null and startDate !=''">
|
|
|
|
<![CDATA[ and DATE_FORMAT(pur_plan.createTime,'%Y-%m-%d')>= #{startDate}]]>
|
|
|
|
</if>
|
|
|
|
<if test="endDate != null and endDate !=''">
|
|
|
|
<![CDATA[ and DATE_FORMAT(pur_plan.createTime,'%Y-%m-%d') <= #{endDate}]]>
|
|
|
|
</if>
|
|
|
|
<if test="keyWords != '' and keyWords != null">
|
|
|
|
AND (
|
|
|
|
basic_products.nameCode LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or pur_plan.billNo LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or pur_plan.productType LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or productId LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or productName LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or basic_products.ggxh LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or pur_plan_detail.zczbhhzbapzbh LIKE concat('%', #{keyWords}, '%')
|
|
|
|
or basic_products.manufactory LIKE concat('%', #{keyWords}, '%')
|
|
|
|
)
|
|
|
|
</if>
|
|
|
|
and (pur_plan.status = 3 or saf.status = 3)
|
|
|
|
</where>
|
|
|
|
</select>
|
|
|
|
</mapper>
|