<?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.BizBusinessOutsourceProtocolMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.casic.missiles.model.business.BizBusinessOutsourceProtocol">
<id column="id" property="id" />
<result column="protocol_no" property="protocolNo" />
<result column="project_name" property="projectName" />
<result column="lab_code" property="labCode" />
<result column="group_code" property="groupCode" />
<result column="outsourcer_id" property="outsourcerId" />
<result column="remark" property="remark" />
<result column="outsourcer_no" property="outsourcerNo" />
<result column="outsourcer_name" property="outsourcerName" />
<result column="contacts" property="contacts" />
<result column="mobile" property="mobile" />
<result column="address" property="address" />
<result column="require_date" property="requireDate" />
<result column="outsource_cost" property="outsourceCost" />
<result column="director" property="director" />
<result column="item" property="item" />
<result column="requires" property="requires" />
<result column="create_user_id" property="createUserId" />
<result column="create_user_name" property="createUserName" />
<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, protocol_no, project_name, lab_code, group_code, outsourcer_id, remark, outsourcer_no, outsourcer_name, contacts, mobile, address, require_date, outsource_cost, director, item, requires, create_user_id, create_user_name, approval_status, process_id, create_time, update_time
</sql>
<select id="selectMaxProtocolNo" resultType="java.lang.Long">
SELECT IFNULL(max(RIGHT(protocol_no, 3)), 0) from biz_business_outsource_protocol
</select>
<select id="selectBatchForApprovalList" resultMap="BaseResultMap">
SELECT *
FROM biz_business_outsource_protocol
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.protocolNo != null and request.protocolNo !=''">
and protocol_no like concat('%',#{request.protocolNo},'%')
</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 >= #{request.applicantTimeStart}
</if>
<if test="request != null and request.applicantTimeEnd != null and request.applicantTimeEnd !=''">
and create_time <= #{request.applicantTimeEnd}
</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>