<?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.production.mapper.ProductionPlanMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.ruoyi.production.pojo.ProductionPlan">
|
<id column="id" property="id"/>
|
<result column="mps_no" property="mpsNo"/>
|
<result column="required_date" property="requiredDate"/>
|
<result column="remark" property="remark"/>
|
<result column="create_time" property="createTime"/>
|
<result column="update_time" property="updateTime"/>
|
<result column="create_user" property="createUser"/>
|
<result column="update_user" property="updateUser"/>
|
<result column="product_model_id" property="productModelId"/>
|
<result column="qty_required" property="qtyRequired"/>
|
<result column="issued" property="issued"/>
|
<result column="source" property="source"/>
|
<result column="promised_delivery_date" property="promisedDeliveryDate"/>
|
</resultMap>
|
|
<select id="listPage" resultType="com.ruoyi.production.bean.vo.ProductionPlanVo">
|
SELECT
|
pp.*,
|
pm.model,
|
p.id as productId,
|
p.product_name AS productName,
|
pm.unit,
|
sl.sales_contract_no,
|
sl.customer_name,
|
sl.project_name
|
FROM production_plan pp
|
left join product_model pm on pp.product_model_id = pm.id
|
left join product p on pm.product_id = p.id
|
left join sales_ledger sl on pp.sales_ledger_id = sl.id
|
<where>
|
<if test="c != null">
|
<if test="c.id != null">
|
and pp.id = #{c.id}
|
</if>
|
<if test="c.productName != null and c.productName != ''">
|
and p.product_name like concat('%', #{c.productName}, '%')
|
</if>
|
<if test="c.model != null and c.model != ''">
|
and pm.model like concat('%', #{c.model}, '%')
|
</if>
|
<if test="c.status != null">
|
and pp.status = #{c.status}
|
</if>
|
<if test="c.mpsNo != null and c.mpsNo != ''">
|
and pp.mps_no like concat('%', #{c.mpsNo}, '%')
|
</if>
|
<if test="c.requiredDateStart != null and c.requiredDateEnd != null">
|
and pp.required_date between #{c.requiredDateStart} and #{c.requiredDateEnd}
|
</if>
|
</if>
|
</where>
|
ORDER BY COALESCE(pp.id) DESC
|
</select>
|
|
<select id="selectWithMaterialByIds" resultType="com.ruoyi.production.bean.dto.ProductionPlanDto">
|
SELECT
|
pp.*,
|
pm.model,
|
p.product_name AS productName,
|
pm.unit
|
FROM production_plan pp
|
LEFT JOIN product_model pm ON pp.product_model_id = pm.id
|
LEFT JOIN product p ON pm.product_id = p.id
|
WHERE pp.id IN
|
<foreach collection="ids" item="id" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
ORDER BY pp.id ASC
|
</select>
|
<select id="selectProductionPlanDtoById" resultType="com.ruoyi.production.bean.dto.ProductionPlanDto">
|
SELECT
|
pp.*,
|
pm.model,
|
p.product_name AS productName,
|
pm.unit
|
FROM production_plan pp
|
left join product_model pm on pp.product_model_id = pm.id
|
left join product p on pm.product_id = p.id
|
WHERE pp.id = #{productionPlanId}
|
</select>
|
<select id="getSource" resultType="com.ruoyi.production.bean.vo.ProductionPlanVo">
|
SELECT
|
pp.*,
|
pm.model,
|
p.product_name AS productName,
|
pm.unit,
|
sl.sales_contract_no,
|
sl.customer_name,
|
sl.project_name
|
FROM production_plan pp
|
LEFT JOIN product_model pm ON pp.product_model_id = pm.id
|
LEFT JOIN product p ON pm.product_id = p.id
|
left join sales_ledger sl on pp.sales_ledger_id = sl.id
|
WHERE pp.id IN
|
<foreach collection="ids" item="id" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
ORDER BY pp.id ASC
|
</select>
|
</mapper>
|