<?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.thhy.materials.modules.biz.materialsplan.mapper.RsbMaterialPlanMapper">
|
|
<!-- 通用查询结果列 -->
|
<sql id="Base_Column_List">
|
t.id as id,
|
t.pro_id as proId,
|
t.size as size,
|
t.reinforcement as reinforcement,
|
t.block_num as blockNum,
|
t.create_time as createTime,
|
t.create_user as createUser,
|
t.update_time as updateTime,
|
t.update_user as updateUser,
|
t.is_use as isUse
|
</sql>
|
|
<sql id="condition_query">
|
<where>
|
<trim suffixOverrides=" AND ">
|
t.is_use = 1 AND
|
<if test="proId!=null and proId!=''">
|
t.pro_id = #{proId} AND
|
</if>
|
<if test="size!=null and size!=''">
|
t.size = #{size} AND
|
</if>
|
<if test="reinforcement!=null and reinforcement!=''">
|
t.reinforcement = #{reinforcement} AND
|
</if>
|
<if test="blockNum!=null and blockNum!=''">
|
t.block_num = #{blockNum} AND
|
</if>
|
<if test="createTime!=null">
|
t.create_time = #{createTime} AND
|
</if>
|
<if test="createUser!=null and createUser!=''">
|
t.create_user = #{createUser} AND
|
</if>
|
<if test="updateTime!=null">
|
t.update_time = #{updateTime} AND
|
</if>
|
<if test="updateUser!=null and updateUser!=''">
|
t.update_user = #{updateUser} AND
|
</if>
|
</trim>
|
</where>
|
</sql>
|
|
<select id="queryById" resultType="com.thhy.materials.modules.biz.materialsplan.entity.RsbMaterialPlan">
|
select <include refid="Base_Column_List" />
|
from t_rsb_material_plan t
|
where t.id=#{id}
|
</select>
|
|
<select id="queryVersionById" resultType="integer">
|
select version from t_rsb_material_plan
|
where id=#{id}
|
</select>
|
|
<!--查询列表-->
|
<select id="findList" resultType="java.util.HashMap">
|
select
|
rmp.id,
|
rmp.pro_id as proId,
|
pro.pro_name as proName,
|
rmp.size,
|
sd1.dict_name as sizeName,
|
rmp.reinforcement,
|
sd2.dict_name as reinforcementName,
|
rmp.block_num as blockNum,
|
sd3.dict_name as blockNumName,
|
DATE_FORMAT(rmp.create_time,'%Y-%m-%e %H:%i:%s') as createTime,
|
su.real_name as createUserName
|
from t_rsb_material_plan rmp
|
left join sys_project pro on rmp.pro_id = pro.pro_id
|
left join sys_dict sd1 on sd1.dict_id = rmp.size
|
left join sys_dict sd2 on sd2.dict_id = rmp.reinforcement
|
left join sys_dict sd3 on sd3.dict_id = rmp.block_num
|
left join sys_users su on su.user_id = rmp.create_user
|
<where>
|
<trim suffixOverrides=" AND ">
|
rmp.is_use = 1 AND pro.company_id = #{companyId} AND
|
<if test="proId!=null and proId!=''">
|
rmp.pro_id = #{proId} AND
|
</if>
|
<if test="size!=null and size!=''">
|
rmp.size = #{size} AND
|
</if>
|
<if test="reinforcement!=null and reinforcement!=''">
|
rmp.reinforcement = #{reinforcement} AND
|
</if>
|
</trim>
|
</where>
|
-- left join t_rsb_materials rm on rm.rsb_id = rmp.id
|
</select>
|
|
<select id="queryGroup" resultType="string">
|
select GROUP_CONCAT(b.materialValue) from (select 1 as wl,case when a.material_value is null then 0 else a.material_value end as materialValue
|
from sys_dict sd
|
left join
|
(
|
select material_name,material_value from t_rsb_materials where rsb_id = #{rspId}
|
) a on sd.dict_id = a.material_name
|
|
where sd.dict_type='pipe_materials' and sd.is_use = 1 order by sd.dict_value) b group by b.wl
|
</select>
|
|
<!--查询列表-->
|
<select id="findAll" resultType="com.thhy.materials.modules.biz.materialsplan.entity.RsbMaterialPlan">
|
SELECT
|
<include refid="Base_Column_List" />
|
from t_rsb_material_plan t
|
</select>
|
|
<!--插入操作-->
|
<insert id="insert">
|
insert into t_rsb_material_plan
|
<trim prefix="(" suffix=")" suffixOverrides="," >
|
<if test="id != null">
|
id,
|
</if>
|
<if test="proId != null">
|
pro_id,
|
</if>
|
<if test="size != null">
|
size,
|
</if>
|
<if test="reinforcement != null">
|
reinforcement,
|
</if>
|
<if test="blockNum != null">
|
block_num,
|
</if>
|
<if test="createTime != null">
|
create_time,
|
</if>
|
<if test="createUser != null">
|
create_user,
|
</if>
|
<if test="updateTime != null">
|
update_time,
|
</if>
|
<if test="updateUser != null">
|
update_user,
|
</if>
|
<if test="isUse != null">
|
is_use,
|
</if>
|
</trim>
|
|
<trim prefix="values (" suffix=")" suffixOverrides="," >
|
<if test="id != null">
|
#{id},
|
</if>
|
<if test="proId != null">
|
#{proId},
|
</if>
|
<if test="size != null">
|
#{size},
|
</if>
|
<if test="reinforcement != null">
|
#{reinforcement},
|
</if>
|
<if test="blockNum != null">
|
#{blockNum},
|
</if>
|
<if test="createTime != null">
|
#{createTime},
|
</if>
|
<if test="createUser != null">
|
#{createUser},
|
</if>
|
<if test="updateTime != null">
|
#{updateTime},
|
</if>
|
<if test="updateUser != null">
|
#{updateUser},
|
</if>
|
<if test="isUse != null">
|
#{isUse},
|
</if>
|
</trim>
|
</insert>
|
|
|
<!--更新操作-->
|
<update id="update">
|
update t_rsb_material_plan
|
<set>
|
<if test="proId != null">
|
pro_id=#{proId},
|
</if>
|
<if test="size != null">
|
size=#{size},
|
</if>
|
<if test="reinforcement != null">
|
reinforcement=#{reinforcement},
|
</if>
|
<if test="blockNum != null">
|
block_num=#{blockNum},
|
</if>
|
<if test="createTime != null">
|
create_time=#{createTime},
|
</if>
|
<if test="createUser != null">
|
create_user=#{createUser},
|
</if>
|
<if test="updateTime != null">
|
update_time=#{updateTime},
|
</if>
|
<if test="updateUser != null">
|
update_user=#{updateUser},
|
</if>
|
<if test="isUse != null">
|
is_use=#{isUse},
|
</if>
|
</set>
|
where id=#{id}
|
</update>
|
|
<!--逻辑删除-->
|
<update id="deletelogic">
|
update t_rsb_material_plan
|
SET is_use = 0
|
where id=#{id}
|
</update>
|
|
<!--根据ID删除-->
|
<delete id="deleteById">
|
delete from t_rsb_material_plan
|
where id=#{id}
|
</delete>
|
|
<select id="materialsListByPlanId" resultType="com.thhy.materials.modules.biz.materialsplan.entity.RsbMaterialDict">
|
select sd.dict_id as materialName,sd.dict_name as materialNameCn,case when a.material_value is null then 0 else a.material_value end as materialValue
|
from sys_dict sd
|
left join
|
(
|
select material_name,material_value from t_rsb_materials where rsb_id = #{planId}
|
) a on sd.dict_id = a.material_name
|
|
where sd.dict_type='pipe_materials' and sd.is_use = 1 order by sd.dict_value
|
</select>
|
|
<select id="materialsListNoPlanId" resultType="com.thhy.materials.modules.biz.materialsplan.entity.RsbMaterialDict">
|
select sd.dict_id as materialName,sd.dict_name as materialNameCn,0 as materialValue
|
from sys_dict sd
|
|
where sd.dict_type='pipe_materials' and sd.is_use = 1 order by sd.dict_value
|
</select>
|
|
<select id="TableHeader" resultType="java.util.HashMap">
|
select dict_name as headName
|
from sys_dict sd
|
|
where sd.dict_type='pipe_materials' and sd.is_use = 1 order by sd.dict_value
|
</select>
|
|
<select id="countByPSRB" resultType="int">
|
select count(id) from t_rsb_material_plan where pro_id = #{proId} and `size`=#{size}
|
and reinforcement = #{reinforcement} and block_num = #{blockNum} and is_use = 1
|
</select>
|
|
<select id="queryPlanIdByPSRB" resultType="string">
|
select id from t_rsb_material_plan where pro_id = #{proId} and `size`=#{size}
|
and reinforcement = #{reinforcement} and block_num = #{blockNum} and is_use = 1
|
</select>
|
|
</mapper>
|