You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

199 lines
11 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.op.plan.mapper.ProWhiteOrderMapper">
<resultMap type="ProOrder" id="ProOrderResult">
<result property="id" column="id" />
<result property="factoryCode" column="factory_code" />
<result property="orderType" column="order_type" />
<result property="orderCode" column="order_code" />
<result property="prodCode" column="prod_code" />
<result property="prodDesc" column="prod_desc" />
<result property="quantity" column="quantity" />
<result property="quantitySplit" column="quantity_split" />
<result property="unit" column="unit" />
<result property="workerOrder" column="worker_order" />
<result property="planProDate" column="plan_pro_date" />
<result property="planComplete" column="plan_complete" />
<result property="atrr1" column="atrr1" />
<result property="atrr2" column="atrr2" />
<result property="atrr3" column="atrr3" />
<result property="status" column="status" />
<result property="parentOrder" column="parent_order" />
<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="prodType" column="prod_type" />
</resultMap>
<sql id="selectProOrderVo">
select id, factory_code, order_type, order_code, prod_code, prod_desc,
quantity, quantity_split, unit, worker_order, plan_pro_date,
plan_complete, atrr1, atrr2, atrr3, status, parent_order, create_by,
create_time, update_by, update_time, prod_type
from pro_order
</sql>
<select id="selectProOrderList" parameterType="ProOrder" resultMap="ProOrderResult">
<include refid="selectProOrderVo"/>
<where>
<if test="planFactoryCode != null and planFactoryCode != ''"> and plan_factory_code = #{planFactoryCode}</if>
<if test="factoryCode != null and factoryCode != ''"> and factory_code = #{factoryCode}</if>
<if test="orderType != null and orderType != ''"> and order_type = #{orderType}</if>
<if test="orderCode != null and orderCode != ''"> and order_code like concat('%', #{orderCode}, '%')</if>
<if test="prodCode != null and prodCode != ''"> and prod_code like concat('%', #{prodCode}, '%')</if>
<if test="prodDesc != null and prodDesc != ''"> and prod_desc like concat('%', #{prodDesc}, '%')</if>
<if test="quantity != null "> and quantity = #{quantity}</if>
<if test="unit != null and unit != ''"> and unit = #{unit}</if>
<if test="workerOrder != null and workerOrder != ''"> and worker_order = #{workerOrder}</if>
<if test="planProDate != null "> and plan_pro_date = #{planProDate}</if>
<if test="planComplete != null "> and plan_complete = #{planComplete}</if>
<if test="atrr1 != null and atrr1 != ''"> and atrr1 = #{atrr1}</if>
<if test="atrr2 != null and atrr2 != ''"> and atrr2 = #{atrr2}</if>
<if test="atrr3 != null and atrr3 != ''"> and atrr3 = #{atrr3}</if>
<if test="status != null and status != ''"> and status = #{status}</if>
<if test="parentOrder != null and parentOrder != ''"> and parent_order = #{parentOrder}</if>
<if test="prodType != null and prodType != ''"> and prod_type = #{prodType}</if>
<if test="prodSpc != null and prodSpc != ''"> and prod_spc = #{prodSpc}</if>
<if test="planDateStart != null "> and CONVERT(varchar(10),plan_pro_date, 120) >= '${planDateStart}'</if>
<if test="planDateEnd != null "> and '${planDateEnd}%' >= CONVERT(varchar(10),plan_pro_date, 120)</if>
</where>
and prod_type = 'white' and del_flag = '0'
ORDER BY plan_pro_date DESC , order_code ASC
</select>
<select id="selectProOrderById" parameterType="String" resultMap="ProOrderResult">
<include refid="selectProOrderVo"/>
where id = #{id}
</select>
<select id="selectProOrderByParentOrder" resultMap="ProOrderResult">
<include refid="selectProOrderVo"/>
where order_code = #{parentOrder} and del_flag = '0'
</select>
<select id="selectProWorkOrderByOrderCode" resultType="com.op.plan.domain.ProOrderWorkorder">
select workorder_id, workorder_code, workorder_name, order_id, order_code, product_id, product_code, product_name,
product_spc, unit, quantity_produced, quantity_split, route_code, prod_line_code, product_date,
shift_id, parent_order, ancestors, status, remark, attr1, attr2, attr3, attr4, create_by, create_time,
update_by, update_time, prod_type, factory_code , end_flag , car_num
from pro_order_workorder
where order_code = #{orderCode} and del_flag = '0'
</select>
<select id="selectProShift" resultType="com.op.plan.domain.ProShift">
SELECT bst.Shift_Id shiftId,bst.Shift_Desc_Global shiftDesc
FROM base_shifts_t bst
</select>
<select id="getTodayMaxNum" resultType="java.lang.Integer">
select count(0)+1
from pro_order
where order_type = 'white' and plan_pro_date = CONVERT(varchar(10),GETDATE(), 120)
</select>
<insert id="insertProOrder" parameterType="ProOrder">
insert into pro_order
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="planFactoryCode != null and planFactoryCode != ''">plan_factory_code,</if>
<if test="factoryCode != null">factory_code,</if>
<if test="orderType != null">order_type,</if>
<if test="orderCode != null">order_code,</if>
<if test="prodCode != null">prod_code,</if>
<if test="prodDesc != null">prod_desc,</if>
<if test="quantity != null">quantity,</if>
<if test="quantitySplit != null">quantity_split,</if>
<if test="unit != null">unit,</if>
<if test="workerOrder != null">worker_order,</if>
<if test="planProDate != null">plan_pro_date,</if>
<if test="planComplete != null">plan_complete,</if>
<if test="atrr1 != null">atrr1,</if>
<if test="atrr2 != null">atrr2,</if>
<if test="atrr3 != null">atrr3,</if>
<if test="status != null">status,</if>
<if test="parentOrder != null">parent_order,</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>
<if test="prodType != null">prod_type,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="planFactoryCode != null and planFactoryCode != ''">#{planFactoryCode},</if>
<if test="factoryCode != null">#{factoryCode},</if>
<if test="orderType != null">#{orderType},</if>
<if test="orderCode != null">#{orderCode},</if>
<if test="prodCode != null">#{prodCode},</if>
<if test="prodDesc != null">#{prodDesc},</if>
<if test="quantity != null">#{quantity},</if>
<if test="quantitySplit != null">#{quantitySplit},</if>
<if test="unit != null">#{unit},</if>
<if test="workerOrder != null">#{workerOrder},</if>
<if test="planProDate != null">#{planProDate},</if>
<if test="planComplete != null">#{planComplete},</if>
<if test="atrr1 != null">#{atrr1},</if>
<if test="atrr2 != null">#{atrr2},</if>
<if test="atrr3 != null">#{atrr3},</if>
<if test="status != null">#{status},</if>
<if test="parentOrder != null">#{parentOrder},</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>
<if test="prodType != null">#{prodType},</if>
</trim>
</insert>
<update id="updateProOrder" parameterType="ProOrder">
update pro_order
<trim prefix="SET" suffixOverrides=",">
<if test="factoryCode != null">factory_code = #{factoryCode},</if>
<if test="orderType != null">order_type = #{orderType},</if>
<if test="orderCode != null">order_code = #{orderCode},</if>
<if test="prodCode != null">prod_code = #{prodCode},</if>
<if test="prodDesc != null">prod_desc = #{prodDesc},</if>
<if test="quantity != null">quantity = #{quantity},</if>
<if test="quantitySplit != null">quantity_split = #{quantitySplit},</if>
<if test="unit != null">unit = #{unit},</if>
<if test="workerOrder != null">worker_order = #{workerOrder},</if>
<if test="planProDate != null">plan_pro_date = #{planProDate},</if>
<if test="planComplete != null">plan_complete = #{planComplete},</if>
<if test="atrr1 != null">atrr1 = #{atrr1},</if>
<if test="atrr2 != null">atrr2 = #{atrr2},</if>
<if test="atrr3 != null">atrr3 = #{atrr3},</if>
<if test="status != null">status = #{status},</if>
<if test="parentOrder != null">parent_order = #{parentOrder},</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>
<if test="prodType != null">prod_type = #{prodType},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteProOrderById" parameterType="String">
update pro_order
set del_flag = '1'
where id = #{id}
</delete>
<delete id="deleteProOrderByIds" parameterType="String">
update pro_order
set del_flag = '1'
where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
or parent_order in (
select order_code from pro_order where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
)
</delete>
</mapper>