<?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.nanometer.smartlab.dao.OpeOrderDao">
|
<resultMap id="OpeOrder" type="com.nanometer.smartlab.entity.OpeOrder">
|
<id property="id" column="id"/>
|
<result property="orderCode" column="order_code"></result>
|
<result property="orderName" column="order_name"></result>
|
<result property="status" column="status" typeHandler="com.nanometer.smartlab.entity.handler.ApplyStatusHandler"></result>
|
<result property="createTime" column="create_time"></result>
|
<result property="updateTime" column="update_time"></result>
|
<result property="validFlag" column="valid_flag" typeHandler="com.nanometer.smartlab.entity.handler.ValidFlagHandler"></result>
|
<result property="memo" column="memo"></result>
|
<result property="consigneeUserId" column="consignee_user_id"></result>
|
<result property="orderUserId" column="order_user_id"></result>
|
<result property="arrivalTime" column="arrival_time"></result>
|
<result property="orderUserName" column="orderUserName"></result>
|
<result property="consigneeUserName" column="consigneeUserName"></result>
|
<result property="supplierId" column="supplier_id"></result>
|
<result property="supplierName" column="supplier_name"></result>
|
</resultMap>
|
|
<sql id="queryWhereSql">
|
<if test="orderCode != null and orderCode != ''">
|
and oo.order_code like #{orderCode}
|
</if>
|
<if test="orderName != null and orderName != ''">
|
and oo.order_name like #{orderName}
|
</if>
|
<if test="startTime!= null">
|
and oo.create_time >= #{startTime}
|
</if>
|
<if test="endTime != null">
|
and #{endTime} >= oo.create_time
|
</if>
|
<if test="status != null">
|
and oo.status = #{status}
|
</if>
|
<if test="orderUserName != null and orderUserName != ''">
|
and su.name like #{orderUserName}
|
</if>
|
<if test="editId != null and editId != ''">
|
and oo.id != #{editId}
|
</if>
|
<if test="supplierId != null and supplierId != ''">
|
and oo.supplier_id != #{supplierId}
|
</if>
|
</sql>
|
|
<select id="getOpeOrder" resultMap="OpeOrder" >
|
select oo.*, su.name as orderUserName, su2.name as consigneeUserName
|
from ope_order as oo
|
left join sys_user as su on oo.order_user_id = su.id
|
left join sys_user as su2 on oo.consignee_user_id = su2.id
|
where oo.id = #{id} and oo.valid_flag = 1
|
</select>
|
|
<select id="getOpeOrderList" parameterType="java.util.Map" resultMap="OpeOrder">
|
select oo.*, su.name as orderUserName, su2.name as consigneeUserName
|
from ope_order as oo
|
left join sys_user as su on oo.order_user_id = su.id
|
left join sys_user as su2 on oo.consignee_user_id = su2.id
|
where oo.valid_flag = 1
|
<include refid="queryWhereSql"/>
|
order by oo.create_time desc
|
<if test="first != null and pageSize != null">
|
limit #{first}, #{pageSize}
|
</if>
|
</select>
|
|
<select id="getOpeOrderTotalCount" parameterType="java.util.Map" resultType="int">
|
select count(1)
|
from ope_order as oo
|
left join sys_user as su on oo.order_user_id = su.id
|
where oo.valid_flag = 1
|
<include refid="queryWhereSql"/>
|
</select>
|
|
<insert id="insertOpeOrder" parameterType="com.nanometer.smartlab.entity.OpeOrder" useGeneratedKeys = "true" keyProperty = "id">
|
insert into ope_order( order_code, order_name, status, memo, consignee_user_id, order_user_id, arrival_time, valid_flag, create_time, update_time, supplier_id, supplier_name)
|
values ( #{orderCode}, #{orderName}, #{status}, #{memo}, #{consigneeUserId}, #{orderUserId}, #{arrivalTime}, 1, now(), now(),#{supplierId},#{supplierName})
|
</insert>
|
|
<update id="updateOpeOrder" parameterType="com.nanometer.smartlab.entity.OpeOrder">
|
update ope_order
|
<set>
|
<if test="orderCode != null">order_code=#{orderCode},</if>
|
<if test="orderName != null">order_name=#{orderName},</if>
|
<if test="status != null">status=#{status},</if>
|
<if test="memo != null">memo=#{memo},</if>
|
<if test="consigneeUserId != null">consignee_user_id=#{consigneeUserId},</if>
|
<if test="orderUserId != null">order_user_id=#{orderUserId},</if>
|
<if test="arrivalTime != null">arrival_time=#{arrivalTime},</if>
|
<if test="supplierId != null">supplier_id=#{supplierId},</if>
|
<if test="supplierName != null">supplier_name=#{supplierName},</if>
|
update_time=now()
|
</set>
|
where id=#{id}
|
</update>
|
|
<update id="deleteOpeOrder" parameterType="java.util.List">
|
update ope_order set valid_flag=0, update_time=now()
|
where id in
|
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</update>
|
<update id="updateOpeOrderStatus" parameterType="com.nanometer.smartlab.entity.OpeOrder">
|
update ope_order
|
set status = #{status},
|
arrival_time = #{arrivalTime},
|
consignee_user_id = #{consigneeUserId}
|
where id = #{id}
|
</update>
|
|
<select id="selectParentOrder" resultType="com.nanometer.smartlab.entity.OpeOrder">
|
select
|
oo.id,
|
oo.status,
|
oo.order_code orderCode,
|
oo.order_name orderName,
|
oo.order_user_id orderUserId,
|
oo.consignee_user_id
|
from ope_apply_order oao
|
left join ope_order oo on oo.id = oao.ope_order_id
|
where oo.valid_flag = 1
|
and oao.ope_apply_id = #{0}
|
|
</select>
|
</mapper>
|