Newer
Older
casic-metering-eqpt-xichang / casic-metering-dao / src / main / resources / mapper / business / BizBusinessOutsourceNoticeMapper.xml
zhangyingjie on 13 Sep 2023 4 KB 新增首页看板接口
<?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.casic.missiles.mapper.business.BizBusinessOutsourceNoticeMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.casic.missiles.model.business.BizBusinessOutsourceNotice">
        <id column="id" property="id" />
        <result column="notice_no" property="noticeNo" />
        <result column="notice_name" property="noticeName" />
        <result column="lab_code" property="labCode" />
        <result column="group_code" property="groupCode" />
        <result column="customer_id" property="customerId" />
        <result column="customer_name" property="customerName" />
        <result column="outsourcer_name" property="outsourcerName" />
        <result column="device_name" property="deviceName" />
        <result column="create_user_id" property="createUserId" />
        <result column="create_user_name" property="createUserName" />
        <result column="contacts" property="contacts" />
        <result column="mobile" property="mobile" />
        <result column="notice_date" property="noticeDate" />
        <result column="notice_user_id" property="noticeUserId" />
        <result column="notice_user_name" property="noticeUserName" />
        <result column="approval_status" property="approvalStatus" />
        <result column="process_id" property="processId" />
        <result column="create_time" property="createTime" />
        <result column="update_time" property="updateTime" />
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, notice_no, notice_name, lab_code, group_code, customerId, customer_name, outsourcer_name, device_name, create_user_id,
        create_user_name, contacts, mobile, notice_date, notice_user_id, notice_user_name, approval_status, process_id, create_time, update_time
    </sql>

    <select id="selectMaxNoticeNo" resultType="java.lang.Long">
        SELECT IFNULL(max(RIGHT(notice_no, 3)), 0) from biz_business_outsource_notice
    </select>

    <select id="selectBatchForApprovalList" resultMap="BaseResultMap">
        SELECT *
        FROM biz_business_outsource_notice
        WHERE 1=1
        <if test="request != null and request.approvalStatus != null and request.approvalStatus !=''">
            and approval_status = #{request.approvalStatus}
        </if>
        <if test="request != null and request.createUserId != null and request.createUserId !=''">
            and create_user_id = #{request.createUserId}
        </if>
        <if test="request != null and request.noticeNo != null and request.noticeNo !=''">
            and notice_no like concat('%',#{request.noticeNo},'%')
        </if>
        <if test="request != null and request.customerName != null and request.customerName !=''">
            and customer_name like concat('%',#{request.customerName},'%')
        </if>
        <if test="request != null and request.outsourcerName != null and request.outsourcerName !=''">
            and outsourcer_name like concat('%',#{request.outsourcerName},'%')
        </if>
        <if test="request != null and request.applicantName != null and request.applicantName !=''">
            and create_user_name like concat('%',#{request.applicantName},'%')
        </if>
        <if test="request != null and request.applicantTimeStart != null and request.applicantTimeStart !=''">
            and create_time &gt;= #{request.applicantTimeStart}
        </if>
        <if test="request != null and request.applicantTimeEnd != null and request.applicantTimeEnd !=''">
            and create_time &lt;= #{request.applicantTimeEnd}
        </if>
        <if test="request != null and request.noticeUserId != null and request.noticeUserId !=''">
            and notice_user_id like concat('%',#{request.noticeUserId},'%')
        </if>
        <if test="businessKeys != null">
            and id in
            <foreach collection="businessKeys" item="id" index="index" open="(" close=")" separator=",">
                #{id}
            </foreach>
        </if>
        ORDER BY create_time DESC
    </select>
</mapper>