“djh”
3 days ago c26e227abe288476c11b0a8b7875045e71efa14c
multi-system/src/main/resources/mapper/system/ContractReviewMessMapper.xml
@@ -4,56 +4,68 @@
    <insert id="insertMesses" keyProperty="id" useGeneratedKeys="true">
        INSERT INTO `contract_review_mess` (`review_id`, `dept_name` )
        INSERT INTO `contract_review_mess` (`review_id`, `dept_id`,`review_mess`,`review_opinion`,`review_user` )
        VALUES
            <foreach collection="reviewMesses" item="item" separator=",">
                (#{item.reviewId},
                #{item.deptName})
                #{item.deptId},
                 #{item.reviewMess},
                 #{item.reviewOpinion},
                 #{item.reviewUser}
                )
            </foreach>
    </insert>
    <insert id="insertMessbs">
        INSERT INTO `contract_review_mess_b` (`mess_id`, `review_mess`,`review_opinion`,`review_sign` )
        VALUES
        <foreach collection="contractReviewMessbs" item="item" separator=",">
            (#{item.messId},
            #{item.reviewMess},
            #{item.reviewOpinion},
            #{item.reviewSign})
        </foreach>
    </insert>
    <update id="updateByUserId">
        update contract_review_mess set status = 1 ,review_opinion = #{reviewOpinion} where id = #{id} and review_user = #{reviewUser}
    </update>
    <delete id="deleteByReviewId">
        delete from contract_review_mess where review_id = #{id}
    </delete>
    <resultMap id="ContractReviewMessResult" type="com.gkhy.exam.system.domain.ContractReviewMess">
        <id property="id" column="id"/>
        <result property="reviewId" column="review_id"/>
        <result property="deptId" column="dept_id"/>
        <result property="deptName" column="dept_name"/>
        <collection property="contractReviewMessbs" column="id" select="selectByMessId" fetchType="lazy"/>
        <result property="reviewMess" column="review_mess"/>
        <result property="reviewOpinion" column="review_opinion"/>
        <result property="reviewUser" column="review_user"/>
        <result property="reviewName" column="review_name"/>
        <result property="status" column="status"/>
    </resultMap>
    <select id="selectByReviewId" resultMap="ContractReviewMessResult">
        SELECT
            `id`,
            `review_id`,
            `dept_name`
            crm.`id`,
            crm.`review_id`,
            crm.`dept_id`,
            sd.`dept_name`,
            crm.`review_mess`,
            crm.`review_opinion`,
            crm.`review_user`,
            su.`name` as review_name,
            crm.`status`
        FROM
            `contract_review_mess`
            `contract_review_mess` crm
        left join sys_user su on crm.review_user = su.id
        left join  sys_dept sd on crm.dept_id = sd.dept_id
        where review_id = #{id}
    </select>
    <select id="selectByMessId" resultType="com.gkhy.exam.system.domain.ContractReviewMessb">
    <select id="CountByReviewId" resultType="java.lang.Integer">
        SELECT
            `id`,
            `mess_id`,
            `review_mess`,
            `review_opinion`,
            `review_sign`
            COUNT(*)
        FROM
            `contract_review_mess_b`
        where mess_id = #{id}
            contract_review cr
                LEFT JOIN contract_review_mess crm ON cr.id = crm.review_id
        WHERE
            crm.STATUS = 0
          AND cr.del_flag = 1
          and cr.id = #{id}
    </select>
    <select id="selectByReviewIdAndUserId" resultType="com.gkhy.exam.system.domain.ContractReviewMess">
        select * from contract_review_mess where review_user=#{userId} and review_id = #{id}
    </select>
</mapper>