<?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.dy.pmsGlobal.daoPr.PrOrderItemMapper">
|
|
<resultMap id="BaseResultMap" type="com.dy.pmsGlobal.pojoPr.PrOrderItem">
|
<id property="id" column="id" jdbcType="BIGINT"/>
|
<result property="orderId" column="order_id" jdbcType="BIGINT"/>
|
<result property="proId" column="pro_id" jdbcType="BIGINT"/>
|
<result property="number" column="number" jdbcType="INTEGER"/>
|
<result property="completeNumber" column="complete_number" jdbcType="INTEGER"/>
|
<result column="deleted" property="deleted" typeHandler="com.dy.common.mybatis.BooleanTypeHandler" />
|
</resultMap>
|
|
<sql id="Base_Column_List">
|
id,order_id,pro_id,number,
|
complete_number, deleted
|
</sql>
|
|
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
|
select
|
<include refid="Base_Column_List" />
|
from pr_order_item
|
where id = #{id,jdbcType=BIGINT}
|
</select>
|
<select id="selectItems" parameterType="java.lang.Long" resultMap="BaseResultMap">
|
<!--算出完成率 Base_Column_List-->
|
SELECT aa.*, concat(round(((complete_number/number) * 100 ),2), '%') as complete_rate from (
|
select oi.id,oi.order_id,oi.pro_id,oi.number, sum(IFNULL(pap.output_number,0)) as complete_number
|
from (SELECT * from pr_order_item where order_id = #{orderId,jdbcType=BIGINT} and deleted !=1 ) oi
|
LEFT JOIN pr_assembly_plan pap
|
ON oi.order_id = pap.order_id AND oi.pro_id = pap.pro_id
|
GROUP BY oi.id,oi.order_id,oi.pro_id,oi.number) aa
|
</select>
|
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
|
delete from pr_order_item
|
where id = #{id,jdbcType=BIGINT}
|
</delete>
|
<insert id="insert" parameterType="com.dy.pmsGlobal.pojoPr.PrOrderItem">
|
<!--@mbg.generated-->
|
insert into pr_order_item ( id,order_id,pro_id,number,
|
complete_number, deleted
|
)
|
values (#{id,jdbcType=BIGINT},#{orderId,jdbcType=BIGINT}, #{proId,jdbcType=BIGINT}, #{number,jdbcType=INTEGER},
|
#{completeNumber,jdbcType=INTEGER}, #{deleted,jdbcType=TINYINT}
|
)
|
</insert>
|
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPr.PrOrderItem" useGeneratedKeys="true">
|
insert into pr_order_item
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<if test="id != null">id,</if>
|
<if test="orderId != null">order_id,</if>
|
<if test="proId != null">pro_id,</if>
|
<if test="number != null">number,</if>
|
<if test="completeNumber != null">complete_number,</if>
|
<if test="deleted != null">deleted,</if>
|
</trim>
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
<if test="id != null">#{id,jdbcType=BIGINT},</if>
|
<if test="orderId != null">#{orderId,jdbcType=BIGINT},</if>
|
<if test="proId != null">#{proId,jdbcType=BIGINT},</if>
|
<if test="number != null">#{number,jdbcType=INTEGER},</if>
|
<if test="completeNumber != null">#{completeNumber,jdbcType=INTEGER},</if>
|
<if test="deleted != null">#{deleted,jdbcType=TINYINT},</if>
|
</trim>
|
</insert>
|
<update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoPr.PrOrderItem">
|
<!--@mbg.generated-->
|
update pr_order_item
|
<set>
|
<if test="orderId != null">
|
order_id = #{orderId,jdbcType=BIGINT},
|
</if>
|
<if test="proId != null">
|
pro_id = #{proId,jdbcType=BIGINT},
|
</if>
|
<if test="number != null">
|
number = #{number,jdbcType=INTEGER},
|
</if>
|
<if test="completeNumber != null">
|
complete_number = #{completeNumber,jdbcType=INTEGER},
|
</if>
|
<if test="deleted != null">
|
deleted = #{deleted,jdbcType=TINYINT},
|
</if>
|
</set>
|
where id = #{id,jdbcType=BIGINT}
|
</update>
|
<delete id="deleteLogicById">
|
update pr_order_item set deleted = 1 where id = #{id}
|
</delete>
|
<select id="selectSome" resultMap="BaseResultMap">
|
select
|
<include refid="Base_Column_List" />
|
from pr_order_item p
|
where p.deleted!=1
|
<trim prefix="and " suffixOverrides="and">
|
<if test="orderId != null and orderId != ''">
|
p.order_id = #{orderId,jdbcType=BIGINT} and
|
</if>
|
</trim>
|
order by id desc
|
<trim prefix="limit " >
|
<if test="start != null and count != null">
|
#{start}, #{count}
|
</if>
|
</trim>
|
</select>
|
|
<select id="selectSomeCount" resultType="java.lang.Long">
|
select count(1)
|
from pr_order_item p
|
where p.deleted!=1
|
<trim prefix="and " suffixOverrides="and">
|
<if test="orderId != null and orderId != ''">
|
p.order_id = #{orderId,jdbcType=BIGINT} and
|
</if>
|
</trim>
|
</select>
|
</mapper>
|