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.

168 lines
7.1 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.quality.mapper.QcUserMaterialMapper">
<resultMap type="QcUserMaterial" id="QcUserMaterialResult">
<result property="id" column="id" />
<result property="userCode" column="user_code" />
<result property="userName" column="user_name" />
<result property="materialCode" column="material_code" />
<result property="materialName" column="material_name" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
<result property="attr4" column="attr4" />
<result property="userId" column="user_id"/>
<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="factoryCode" column="factory_code" />
<result property="delFlag" column="del_flag" />
</resultMap>
<sql id="selectQcUserMaterialVo">
select id, user_code, user_name, material_code, material_name, attr1, attr2, attr3, attr4,
create_by, create_time, update_by, update_time, factory_code, del_flag from qc_user_material
</sql>
<select id="selectUserList" parameterType="QcUserMaterial" resultType="com.op.quality.domain.QcUserMaterial">
SELECT
user_id as userId,
user_name as userCode,
nick_name as userName,
phonenumber,
email,
status,
create_time
FROM sys_user
WHERE del_flag = '0'
<if test="userName != null and userName != ''"> and nick_name like concat('%', #{userName}, '%')</if>
<if test="phonenumber != null and phonenumber != ''"> and phonenumber like concat('%', #{phonenumber}, '%')</if>
</select>
<select id="selectQcUserMaterialList" parameterType="QcUserMaterial" resultMap="QcUserMaterialResult">
<include refid="selectQcUserMaterialVo"/>
<where>
<if test="userCode != null and userCode != ''"> and user_code = #{userCode}</if>
<if test="userName != null and userName != ''"> and user_name like concat('%', #{userName}, '%')</if>
<if test="materialCode != null and materialCode != ''"> and material_code = #{materialCode}</if>
<if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if>
<if test="factoryCode != null and factoryCode != ''"> and factory_code = #{factoryCode}</if>
</where>-->
</select>
<select id="selectUserByUserCode" parameterType="QcUserMaterial" resultMap="QcUserMaterialResult">
SELECT
user_id,
user_name as user_code,
nick_name as user_name,
phonenumber,
create_time
FROM sys_user
WHERE user_name = #{userCode}
</select>
<select id="selectQcUserMaterialById" parameterType="String" resultMap="QcUserMaterialResult">
<include refid="selectQcUserMaterialVo"/>
where id = #{id}
</select>
<select id="getUserMaterialListUndo" resultType="com.op.quality.domain.QcUserMaterial">
select
bp.product_code materialCode,
concat(bp.product_desc_zh,'(',bp.product_code,')') label,
concat(bp.product_desc_zh,'(',bp.product_code,')') materialName,
bp.product_id materialId
from base_product bp
where bp.active_flag = '1' and bp.del_flag = '0'
and bp.product_code not in (
select um.material_code
from qc_user_material um
where um.user_code =#{userCode}
)
<if test="materialName != null and materialName != ''"> and bp.product_desc_zh like concat('%', #{materialName}, '%')</if>
</select>
<select id="getUserMaterialListDo" resultType="com.op.quality.domain.QcUserMaterial">
select distinct um.material_code materialCode,
concat(bp.product_desc_zh,'(',bp.product_code,')') label
from qc_user_material um
left join base_product bp on um.material_code = bp.product_code
where um.user_code = #{userCode}
<if test="materialName != null and materialName != ''"> and bp.product_desc_zh like concat('%', #{materialName}, '%')</if>
</select>
<insert id="insertQcUserMaterial" parameterType="QcUserMaterial">
insert into qc_user_material
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="userCode != null">user_code,</if>
<if test="userName != null">user_name,</if>
<if test="materialCode != null">material_code,</if>
<if test="materialName != null">material_name,</if>
<if test="attr1 != null">attr1,</if>
<if test="attr2 != null">attr2,</if>
<if test="attr3 != null">attr3,</if>
<if test="attr4 != null">attr4,</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="factoryCode != null and factoryCode != ''">factory_code,</if>
<if test="delFlag != null">del_flag,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="userCode != null">#{userCode},</if>
<if test="userName != null">#{userName},</if>
<if test="materialCode != null">#{materialCode},</if>
<if test="materialName != null">#{materialName},</if>
<if test="attr1 != null">#{attr1},</if>
<if test="attr2 != null">#{attr2},</if>
<if test="attr3 != null">#{attr3},</if>
<if test="attr4 != null">#{attr4},</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="factoryCode != null and factoryCode != ''">#{factoryCode},</if>
<if test="delFlag != null">#{delFlag},</if>
</trim>
</insert>
<update id="updateQcUserMaterial" parameterType="QcUserMaterial">
update qc_user_material
<trim prefix="SET" suffixOverrides=",">
<if test="userCode != null">user_code = #{userCode},</if>
<if test="userName != null">user_name = #{userName},</if>
<if test="materialCode != null">material_code = #{materialCode},</if>
<if test="materialName != null">material_name = #{materialName},</if>
<if test="attr1 != null">attr1 = #{attr1},</if>
<if test="attr2 != null">attr2 = #{attr2},</if>
<if test="attr3 != null">attr3 = #{attr3},</if>
<if test="attr4 != null">attr4 = #{attr4},</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="factoryCode != null and factoryCode != ''">factory_code = #{factoryCode},</if>
<if test="delFlag != null">del_flag = #{delFlag},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteQcUserMaterialByUserCode" parameterType="String">
delete from qc_user_material where user_code = #{userCode}
</delete>
<delete id="deleteQcUserMaterialByUserCodes" parameterType="String">
delete from qc_user_material where user_code in
<foreach item="userCode" collection="array" open="(" separator="," close=")">
#{userCode}
</foreach>
</delete>
</mapper>