liusheng
2024-03-21 c20c99f256e2f47bd45f0b48fb6b1bcc83960f1e
ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml
@@ -1,122 +1,156 @@
<?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">
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.project.mapper.ServiceEthicalreviewopinionsMapper">
    <resultMap type="ServiceEthicalreviewopinions" id="ServiceEthicalreviewopinionsResult">
        <result property="id"    column="ID"    />
        <result property="delFlag"    column="del_flag"    />
        <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="infoid"    column="InfoID"    />
        <result property="donorno"    column="DonorNo"    />
        <result property="expertopinion"    column="ExpertOpinion"    />
        <result property="expertconclusion"    column="ExpertConclusion"    />
        <result property="expertname"    column="ExpertName"    />
        <result property="conclusiontime"    column="ConclusionTime"    />
        <result property="conclusionannex"    column="ConclusionAnnex"    />
        <result property="conclusionorder"    column="ConclusionOrder"    />
    <resultMap type="com.ruoyi.project.domain.ServiceEthicalreviewopinions" id="ServiceEthicalreviewopinionsResult">
        <result property="id" column="ID"/>
        <result property="del_flag" column="del_flag"/>
        <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="infoid" column="InfoID"/>
        <result property="donorno" column="DonorNo"/>
        <result property="expertopinion" column="ExpertOpinion"/>
        <result property="expertconclusion" column="ExpertConclusion"/>
        <result property="expertname" column="ExpertName"/>
        <result property="conclusiontime" column="ConclusionTime"/>
        <result property="conclusionannex" column="ConclusionAnnex"/>
        <result property="conclusionorder" column="ConclusionOrder"/>
    </resultMap>
    <sql id="selectServiceEthicalreviewopinionsVo">
        select ID, del_flag, create_by, create_time, update_by, update_time, InfoID, DonorNo, ExpertOpinion, ExpertConclusion, ExpertName, ConclusionTime, ConclusionAnnex, ConclusionOrder from service_ethicalreviewopinions
        select ID,
               del_flag,
               create_by,
               create_time,
               update_by,
               update_time,
               InfoID,
               DonorNo,
               ExpertOpinion,
               ExpertConclusion,
               ExpertName,
               ConclusionTime,
               ConclusionAnnex,
               ConclusionOrder
        from service_ethicalreviewopinions
    </sql>
    <select id="selectServiceEthicalreviewopinionsList" parameterType="ServiceEthicalreviewopinions" resultMap="ServiceEthicalreviewopinionsResult">
    <select id="selectServiceEthicalreviewopinionsList"
            parameterType="com.ruoyi.project.domain.ServiceEthicalreviewopinions"
            resultMap="ServiceEthicalreviewopinionsResult">
        <include refid="selectServiceEthicalreviewopinionsVo"/>
        <where>
            <if test="infoid != null "> and InfoID = #{infoid}</if>
            <if test="donorno != null  and donorno != ''"> and DonorNo = #{donorno}</if>
            <if test="expertopinion != null  and expertopinion != ''"> and ExpertOpinion = #{expertopinion}</if>
            <if test="expertconclusion != null "> and ExpertConclusion = #{expertconclusion}</if>
            <if test="expertname != null  and expertname != ''"> and ExpertName like concat('%', #{expertname}, '%')</if>
            <if test="conclusiontime != null "> and ConclusionTime = #{conclusiontime}</if>
            <if test="conclusionannex != null  and conclusionannex != ''"> and ConclusionAnnex = #{conclusionannex}</if>
            <if test="conclusionorder != null "> and ConclusionOrder = #{conclusionorder}</if>
            <if test="infoid != null ">and InfoID = #{infoid}</if>
            <if test="donorno != null  and donorno != ''">and DonorNo = #{donorno}</if>
            <if test="expertopinion != null  and expertopinion != ''">and ExpertOpinion = #{expertopinion}</if>
            <if test="expertconclusion != null ">and ExpertConclusion = #{expertconclusion}</if>
            <if test="expertname != null  and expertname != ''">and ExpertName like concat('%', #{expertname}, '%')</if>
            <if test="conclusiontime != null ">and ConclusionTime = #{conclusiontime}</if>
            <if test="conclusionannex != null  and conclusionannex != ''">and ConclusionAnnex = #{conclusionannex}</if>
            <if test="conclusionorder != null ">and ConclusionOrder = #{conclusionorder}</if>
        </where>
    </select>
    <select id="selectVOList" resultType="com.ruoyi.project.domain.vo.EthicalReviewVO">
        SELECT
        `service_donatebaseinfo`.`ID` AS `ID`,
        `service_donatebaseinfo`.`Name` AS `Name`,
        `service_donatebaseinfo`.`Sex` AS `Sex`,
        `service_donatebaseinfo`.`IDCardNo` AS `IDCardNo`,
        `service_donatebaseinfo`.`Age` AS `Age`,
        `service_donatebaseinfo`.`Birthday` AS `Birthday`,
        `service_donatebaseinfo`.`Nationality` AS `Nationality`,
        `service_donatebaseinfo`.`Nation` AS `Nation`,
        `service_donatebaseinfo`.`RegisterAddress` AS `RegisterAddress`,
        `service_donatebaseinfo`.`RegisterProvince` AS `RegisterProvince`,
        `service_donatebaseinfo`.`RegisterProvinceName` AS `RegisterProvinceName`,
        `service_donatebaseinfo`.`RegisterCity` AS `RegisterCity`,
        `service_donatebaseinfo`.`RegisterCityName` AS `RegisterCityName`,
        `service_donatebaseinfo`.`RegisterTown` AS `RegisterTown`,
        `service_donatebaseinfo`.`RegisterTownName` AS `RegisterTownName`,
        `service_donatebaseinfo`.`RegisterCommunity` AS `RegisterCommunity`,
        `service_donatebaseinfo`.`RegisterCommunityName` AS `RegisterCommunityName`,
        `service_donatebaseinfo`.`RegisterCountyCode` AS `RegisterCountyCode`,
        `service_donatebaseinfo`.`RegisterCountyName` AS `RegisterCountyName`,
        `service_donatebaseinfo`.`RecordState` AS `RecordState`,
        `service_donatebaseinfo`.`TreatmentHospitalNo` AS `TreatmentHospitalNo`,
        `service_donatebaseinfo`.`TreatmentHospitalName` AS `TreatmentHospitalName`,
        `service_donatebaseinfo`.`TreatmentDeptName` AS `TreatmentDeptName`,
        `service_donatebaseinfo`.`DiagnosisNo` AS `DiagnosisNo`,
        `service_donatebaseinfo`.`DiagnosisName` AS `DiagnosisName`,
        `service_donatebaseinfo`.`DonorNo` AS `DonorNo`,
        `service_donatebaseinfo`.`ReporterNo` AS `ReporterNo`,
        `service_donatebaseinfo`.`ReporterName` AS `ReporterName`,
        `service_donatebaseinfo`.`ReporterPhone` AS `ReporterPhone`,
        `service_donatebaseinfo`.`ReportTime` AS `ReportTime`,
        `service_donatebaseinfo`.`BloodType` AS `BloodType`,
        `service_donatebaseinfo`.`RhYin` AS `RhYin`,
        `service_donatebaseinfo`.`InpatientNo` AS `InpatientNo`,
        `service_donatebaseinfo`.`IllnessOverview` AS `IllnessOverview`,
        `service_donatebaseinfo`.`DiseaseType` AS `DiseaseType`,
        `service_donatebaseinfo`.`PatientState` AS `PatientState`,
        `service_donatebaseinfo`.`create_by` AS `basecreateby`,
        `service_donateflowchart`.`ID` AS `fcID`,
        `service_donateflowchart`.`InfoID` AS `InfoID`,
        `service_donateflowchart`.`DonorNo` AS `fcDonorNo`,
        `service_donateflowchart`.`del_flag` AS `delFlag`,
        `service_donateflowchart`.`create_by` AS `createBy`,
        `service_donateflowchart`.`create_time` AS `createTime`,
        `service_donateflowchart`.`update_by` AS `updateBy`,
        `service_donateflowchart`.`update_time` AS `updateTime`,
        `service_donateflowchart`.`FlowName` AS `FlowName`,
        `service_donateflowchart`.`FlowAnnex` AS `FlowAnnex`,
        `service_donateflowchart`.`FlowContent` AS `FlowContent`,
        `service_donateflowchart`.`FlowConclusion` AS `FlowConclusion`
        service_donatebaseinfo.ID as id,
        service_donatebaseinfo.`Name` as name,
        service_donatebaseinfo.IDCardNo as idcardno,
        service_donatebaseinfo.IDCardType as idcardtype,
        service_donatebaseinfo.Sex as sex,
        service_donatebaseinfo.Age as age,
        service_donatebaseinfo.AgeUnit as ageUnit,
        service_donatebaseinfo.Birthday as irthday,
        service_donatebaseinfo.Phone as phone,
        service_donatebaseinfo.Nationality as nationality,
        service_donatebaseinfo.NativePlace as nativePlace,
        service_donatebaseinfo.Nation as nation,
        service_donatebaseinfo.RegisterAddress as registerAddress,
        service_donatebaseinfo.RegisterProvince as registerProvince,
        service_donatebaseinfo.RegisterProvinceName as registerProvinceName,
        service_donatebaseinfo.RegisterCity as registerCity,
        service_donatebaseinfo.RegisterCityName aS registerCityName,
        service_donatebaseinfo.RegisterTown as registerTown,
        service_donatebaseinfo.RegisterTownName as registerTownName,
        service_donatebaseinfo.RegisterCommunity as registerCommunity,
        service_donatebaseinfo.RegisterCommunityName as registerCommunityName,
        service_donatebaseinfo.RegisterCountyCode as registerCountyCode,
        service_donatebaseinfo.RegisterCountyName as registerCountyName,
        service_donatebaseinfo.RecordState as recordState,
        service_donatebaseinfo.TreatmentHospitalNo as treatmentHospitalNo,
        service_donatebaseinfo.TreatmentHospitalName as treatmentHospitalName,
        service_donatebaseinfo.TreatmentDeptName as treatmentDeptName,
        service_donatebaseinfo.DiagnosisNo as diagnosisNo,
        service_donatebaseinfo.DiagnosisName as diagnosisName,
        service_donatebaseinfo.BloodType as bloodType,
        service_donatebaseinfo.RhYin as rhYin,
        service_donatebaseinfo.InpatientNo as inpatientNo,
        service_donatebaseinfo.DonorNo as donorNo,
        service_donatebaseinfo.DonationCategory as donationcategory,
        service_donatebaseinfo.IllnessOverview as illnessoverview,
        service_donatebaseinfo.DiseaseType as diseasetype,
        service_donatebaseinfo.DiseaseType_Other as diseasetypeOther,
        service_donatebaseinfo.create_by as createBy,
        service_donatebaseinfo.create_time as createTime,
        service_donatebaseinfo.del_flag as delFlag,
        service_donatebaseinfo.workflow,
        service_donatebaseinfo.termination_case as terminationCase,
        service_donatebaseinfo.donatetime,
        service_donatebaseinfo.donateno,
        service_donatebaseinfo.deptid,
        service_donatebaseinfo.deptname,
        service_ethicalreviewopinions.ID as fcid,
        service_ethicalreviewopinions.ExpertOpinion as expertopinion,
        service_ethicalreviewopinions.ExpertConclusion as expertconclusion,
        service_ethicalreviewopinions.ExpertName as expertname,
        service_ethicalreviewopinions.ConclusionTime as conclusiontime,
        service_ethicalreviewopinions.ConclusionAnnex as conclusionannex,
        service_ethicalreviewopinions.ConclusionOrder as conclusionorder
        FROM
        service_donatebaseinfo
        LEFT JOIN
        service_ethicalreviewopinions
        ON
        service_donatebaseinfo.ID = service_ethicalreviewopinions.InfoID
        LEFT JOIN base_organization ON
        base_organization.OrganizationID = service_donatebaseinfo.TreatmentHospitalNo
        `service_donatebaseinfo`
        LEFT JOIN `service_donateflowchart` ON
        `service_donatebaseinfo`.`ID` = `service_donateflowchart`.`InfoID`
        AND  `service_donateflowchart`.`FlowName` = '伦理审查'
        LEFT JOIN `base_organization` ON
        `base_organization`.`OrganizationID` = `service_donatebaseinfo`.`TreatmentHospitalNo`
        <where>
            <if test="donorno != null  and donorno != ''"> and `service_donatebaseinfo`.`DonorNo` = #{donorno}</if>
            <if test="name != null  and name != ''"> and `service_donatebaseinfo`.`Name` like concat('%', #{name}, '%')</if>
            <if test="idcardno != null  and idcardno != ''"> and `service_donatebaseinfo`.`IDCardNo` = #{idcardno}</if>
            <if test="treatmenthospitalno != null  and treatmenthospitalno != ''"> and `service_donatebaseinfo`.`TreatmentHospitalNo` = #{treatmenthospitalno}</if>
            <if test="recordstate != null  and recordstate != ''"> and `service_donatebaseinfo`.`RecordState` = #{recordstate}</if>
            <if test="basecreateby != null  and basecreateby != ''"> and `service_donatebaseinfo`.`create_by` = #{basecreateby}</if>
            <if test="starttime != null "> and `service_donateflowchart`.create_time >= #{starttime} </if>
            <if test="endtime != null ">  and `service_donateflowchart`.create_time &lt;= #{endtime}</if>
            <if test="reporterno != null  and reporterno != ''"> and `service_donatebaseinfo`.ReporterNo = #{reporterno}</if>
            <if test="city != null and city != ''"> and `base_organization`.`City` = #{city}</if>
            <if test="fcid != null ">  and `service_donateflowchart`.`ID` = #{fcid}</if>
            <if test="donorno != null  and donorno != ''">and `service_donatebaseinfo`.`DonorNo` = #{donorno}</if>
            <if test="name != null  and name != ''">and `service_donatebaseinfo`.`Name` like concat('%', #{name}, '%')
            </if>
            <if test="idcardno != null  and idcardno != ''">and `service_donatebaseinfo`.`IDCardNo` = #{idcardno}</if>
            <if test="treatmenthospitalno != null  and treatmenthospitalno != ''">and
                `service_donatebaseinfo`.`TreatmentHospitalNo` = #{treatmenthospitalno}
            </if>
            <if test="recordstate != null  and recordstate != ''">and `service_donatebaseinfo`.`RecordState` =
                #{recordstate}
            </if>
            <if test="basecreateby != null  and basecreateby != ''">and `service_donatebaseinfo`.`create_by` =
                #{basecreateby}
            </if>
            <if test="starttime != null ">and `service_ethicalreviewopinions`.ConclusionTime >= #{starttime}</if>
            <if test="endtime != null ">and `service_ethicalreviewopinions`.ConclusionTime &lt;= #{endtime}</if>
            <if test="reporterno != null  and reporterno != ''">and `service_donatebaseinfo`.ReporterNo =
                #{reporterno}
            </if>
            <if test="city != null and city != ''">and `base_organization`.`City` = #{city}</if>
            <if test="fcid != null ">and `service_ethicalreviewopinions`.`ID` = #{fcid}</if>
            <if test="workflow != null "> and `service_donatebaseinfo`.`workflow` = #{workflow}</if>
        </where>
        order by  `service_donateflowchart`.`create_time` desc
        order by `service_ethicalreviewopinions`.`ConclusionTime` desc
    </select>
    <select id="countNumber" resultType="java.lang.Integer">
        select count(*) from service_donateflowchart where `service_donateflowchart`.`FlowName` = '伦理审查'
        and create_time >= #{starttime} and create_time &lt;= #{endtime}
        select count(*)
        from service_donateflowchart
        where `service_donateflowchart`.`FlowName` = '伦理审查'
          and create_time >= #{starttime}
          and create_time &lt;= #{endtime}
    </select>
</mapper>