liusheng
2023-09-22 785310c565529336e3f23418655ab445038e57f8
代码提交
已修改3个文件
607 ■■■■ 文件已修改
ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonateorgan.java 186 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml 419 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/tax/TaxtUtils.java
@@ -12,7 +12,7 @@
import java.util.List;
/**
 * 劳务报酬个税计算规则 (可能不答公共用法,用前先看看是否适合)
 * 劳务报酬个税计算规则 (可能不适合公共用法,用前先看看是否适合)
 *
 * @author ls
 */
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonateorgan.java
@@ -1,146 +1,274 @@
package com.ruoyi.project.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
 * 捐献器官管理对象 service_donateorgan
 *
 *
 * @author ruoyi
 * @date 2021-11-10
 */
@Data
@ApiModel("捐献器官管理")
public class ServiceDonateorgan extends BaseEntity
{
public class ServiceDonateorgan extends BaseEntity {
    private static final long serialVersionUID = 1L;
    /** $column.columnComment */
    /**
     * $column.columnComment
     */
    @ApiModelProperty("$column.columnComment")
    //数据库自增改成@TableId(type = IdType.AUTO)
    @TableId(type = IdType.AUTO)
    private Long id;
    /** 关联service_donatebaseinfo表的ID */
    /**
     * 关联service_donatebaseinfo表的ID
     */
    @ApiModelProperty("关联service_donatebaseinfo表的ID")
    private Long infoid;
    /** 捐献者编号 */
    /**
     * 捐献者编号
     */
    @ApiModelProperty("捐献者编号")
    @Excel(name = "捐献者编号")
    private String donorno;
    /** 器官类别 详见字典sys_Organ */
    @ApiModelProperty("器官类别")
    /**
     * 器官类别 详见字典sys_Organ
     */
    @ApiModelProperty("器官类别")
    @Excel(name = "器官类别 详见字典sys_Organ")
    private String organno;
    /** 器官类别名称 详见字典sys_Organ */
    /**
     * 器官类别名称 详见字典sys_Organ
     */
    @ApiModelProperty("器官类别名称")
    @Excel(name = "器官类别名称 详见字典sys_Organ")
    private String organname;
    /** 器官状态 1:预登记 2:已获取 3:分配登记  4:分配审核(已分配) 4:运输中 5:已移植 */
    /**
     * 器官状态 1:预登记 2:已获取 3:分配登记  4:分配审核(已分配) 4:运输中 5:已移植
     */
    @Excel(name = "器官状态 1:预登记 2:已获取 3:分配登记  4:分配审核", readConverterExp = "已分配")
    @ApiModelProperty("器官状态")
    private String organstate;
    /** 器官编号 见证登记后生成 */
    /**
     * 器官编号 见证登记后生成
     */
    @ApiModelProperty("器官编号")
    @Excel(name = "器官编号 见证登记后生成")
    private String organnumber;
    /** 器官获取时间 */
    /**
     * 器官获取时间
     */
    @ApiModelProperty("器官获取时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "器官获取时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date organgettime;
    /** 医生姓名 */
    /**
     * 医生姓名
     */
    @ApiModelProperty("医生姓名")
    @Excel(name = "医生姓名")
    private String organgetdoct;
    /** 器官获取机构编号 对应机构表 */
    /**
     * 器官获取机构编号 对应机构表
     */
    @ApiModelProperty("器官获取机构编号")
    @Excel(name = "器官获取机构编号 对应机构表")
    private String gainhospitalno;
    /** 器官获取机构名称 对应机构表 */
    /**
     * 器官获取机构名称 对应机构表
     */
    @ApiModelProperty("器官获取机构名称")
    @Excel(name = "器官获取机构名称 对应机构表")
    private String gainhospitalname;
    /** 器官移植机构编号 对应机构表 */
    /**
     * 器官移植机构编号 对应机构表
     */
    @ApiModelProperty("器官移植机构编号")
    @Excel(name = "器官移植机构编号 对应机构表")
    private String transplanthospitalno;
    /** 器官移植机构名称 对应机构表 */
    /**
     * 器官移植机构名称 对应机构表
     */
    @ApiModelProperty("器官移植机构名称")
    @Excel(name = "器官移植机构名称 对应机构表")
    private String transplanthospitalname;
    /** 移植医生 */
    /**
     * 移植医生
     */
    @ApiModelProperty("移植医生")
    @Excel(name = "移植医生")
    private String transplantdoct;
    /** 移植时间 */
    /**
     * 移植时间
     */
    @ApiModelProperty("移植时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "移植时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date transplanttime;
    /** 是否获取前活检 */
    /**
     * 是否获取前活检
     */
    @ApiModelProperty("是否获取前活检")
    @Excel(name = "是否获取前活检")
    private String isbiopsybefore;
    /** 是否获取后活检 */
    /**
     * 是否获取后活检
     */
    @ApiModelProperty("是否获取后活检")
    @Excel(name = "是否获取后活检")
    private String isbiopsyafter;
    /** 是否边缘器官 */
    /**
     * 是否边缘器官
     */
    @ApiModelProperty("是否边缘器官")
    @Excel(name = "是否边缘器官")
    private String ismarginalorgan;
    /** 是否病原菌阳性 */
    /**
     * 是否病原菌阳性
     */
    @ApiModelProperty("是否病原菌阳性")
    @Excel(name = "是否病原菌阳性")
    private String ispathogenpositive;
    /** 是否原发性无功能 */
    /**
     * 是否原发性无功能
     */
    @ApiModelProperty("是否原发性无功能")
    @Excel(name = "是否原发性无功能")
    private String ispnf;
    /** 是否功能延迟性恢复 */
    /**
     * 是否功能延迟性恢复
     */
    @ApiModelProperty("是否功能延迟性恢复")
    @Excel(name = "是否功能延迟性恢复")
    private String isdgf;
    /** 弃用原因 */
    /**
     * 弃用原因
     */
    @ApiModelProperty("弃用原因")
    @Excel(name = "弃用原因")
    private String abandonreason;
    /** 重新分配原因 */
    /**
     * 重新分配原因
     */
    @ApiModelProperty("重新分配原因")
    @Excel(name = "重新分配原因")
    private String reallocationreason;
    @ApiModelProperty("申请人编号")
    private String applicantUserID;
    @ApiModelProperty("申请人姓名")
    private String applicantUserName;
    @ApiModelProperty("申请时间")
    private Date applicantTime;
    @ApiModelProperty("审核人编号")
    private String checkUserID;
    @ApiModelProperty("审核人姓名")
    private String checkUserName;
    @ApiModelProperty("审核时间")
    private Date checkTime;
    @ApiModelProperty("审核意见")
    private String checkSuggestion;
    @ApiModelProperty("0:提交分配;1:审核通过;2:审核拒绝")
    private Integer allocationStatus;
    @ApiModelProperty("移植人姓名")
    private String name;
    @ApiModelProperty("移植人性别 根据字典sys_user_sex")
    private Integer sexOMMENT;
    @ApiModelProperty("移植人证件类型 根据字典sys_IDType")
    private Integer idCardType;
    @ApiModelProperty("移植人证件号码")
    private String idCardNo;
    @ApiModelProperty("移植人年龄")
    private Integer age;
    @ApiModelProperty("移植人年龄单位 根据字典sys_AgeUnit")
    private String ageUnit;
    @ApiModelProperty("移植人出生日期")
    private String birthday;
    @ApiModelProperty("移植人联系电话")
    private String phone;
    @ApiModelProperty("移植人现住地址")
    private String residenceAddress;
    @ApiModelProperty("移植人现住地址省代码")
    private String residenceProvince;
    @ApiModelProperty("移植人现住地址省名称")
    private String residenceProvinceName;
    @ApiModelProperty("移植人市编号 根据行政区划表")
    private String residenceCity;
    @ApiModelProperty("移植人市名称")
    private String residenceCityName;
    @ApiModelProperty("移植人所属街道(镇)根据行政区划表")
    private String residenceTown;
    @ApiModelProperty("移植人所属街道(镇)名称")
    private String residenceTownName;
    @ApiModelProperty("移植人社区(村)编号 根据行政区划表")
    private String residenceCommunity;
    @ApiModelProperty("移植人社区(村)名称")
    private String residenceCommunityName;
    @ApiModelProperty("移植人所属区域编号 根据行政区划表")
    private String residenceCountyCode;
    @ApiModelProperty("移植人所属区域名称")
    private String residenceCountyName;
}
ruoyi-project/src/main/resources/mapper/project/ServiceDonateorganMapper.xml
@@ -1,69 +1,161 @@
<?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.ServiceDonateorganMapper">
    <resultMap type="com.ruoyi.project.domain.ServiceDonateorgan" id="ServiceDonateorganResult">
        <result property="id"    column="ID"    />
        <result property="infoid"    column="InfoID"    />
        <result property="donorno"    column="DonorNo"    />
        <result property="organno"    column="OrganNo"    />
        <result property="organname"    column="OrganName"    />
        <result property="organstate"    column="OrganState"    />
        <result property="organnumber"    column="OrganNumber"    />
        <result property="organgettime"    column="OrganGetTime"    />
        <result property="organgetdoct"    column="OrganGetDoct"    />
        <result property="gainhospitalno"    column="GainHospitalNo"    />
        <result property="gainhospitalname"    column="GainHospitalName"    />
        <result property="transplanthospitalno"    column="TransplantHospitalNo"    />
        <result property="transplanthospitalname"    column="TransplantHospitalName"    />
        <result property="abandonreason"    column="AbandonReason"    />
        <result property="reallocationreason"    column="ReallocationReason"    />
        <result property="transplantdoct"    column="TransplantDoct"    />
        <result property="transplanttime"    column="TransplantTime"    />
        <result property="isbiopsybefore"    column="IsBiopsyBefore"    />
        <result property="isbiopsyafter"    column="IsBiopsyAfter"    />
        <result property="ismarginalorgan"    column="IsMarginalOrgan"    />
        <result property="ispathogenpositive"    column="IsPathogenPositive"    />
        <result property="ispnf"    column="IsPNF"    />
        <result property="isdgf"    column="IsDGF"    />
        <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="id" column="ID"/>
        <result property="infoid" column="InfoID"/>
        <result property="donorno" column="DonorNo"/>
        <result property="organno" column="OrganNo"/>
        <result property="organname" column="OrganName"/>
        <result property="organstate" column="OrganState"/>
        <result property="organnumber" column="OrganNumber"/>
        <result property="organgettime" column="OrganGetTime"/>
        <result property="organgetdoct" column="OrganGetDoct"/>
        <result property="gainhospitalno" column="GainHospitalNo"/>
        <result property="gainhospitalname" column="GainHospitalName"/>
        <result property="transplanthospitalno" column="TransplantHospitalNo"/>
        <result property="transplanthospitalname" column="TransplantHospitalName"/>
        <result property="abandonreason" column="AbandonReason"/>
        <result property="reallocationreason" column="ReallocationReason"/>
        <result property="transplantdoct" column="TransplantDoct"/>
        <result property="transplanttime" column="TransplantTime"/>
        <result property="isbiopsybefore" column="IsBiopsyBefore"/>
        <result property="isbiopsyafter" column="IsBiopsyAfter"/>
        <result property="ismarginalorgan" column="IsMarginalOrgan"/>
        <result property="ispathogenpositive" column="IsPathogenPositive"/>
        <result property="ispnf" column="IsPNF"/>
        <result property="isdgf" column="IsDGF"/>
        <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="applicantUserID" column="ApplicantUserID"/>
        <result property="applicantUserName" column="ApplicantUserName"/>
        <result property="applicantTime" column="ApplicantTime"/>
        <result property="checkUserID" column="CheckUserID"/>
        <result property="checkUserName" column="CheckUserName"/>
        <result property="checkTime" column="CheckTime"/>
        <result property="checkSuggestion" column="CheckSuggestion"/>
        <result property="allocationStatus" column="AllocationStatus"/>
        <result property="name" column="Name"/>
        <result property="sexOMMENT" column="SexOMMENT"/>
        <result property="idCardType" column="IDCardType"/>
        <result property="idCardNo" column="IDCardNo"/>
        <result property="age" column="Age"/>
        <result property="ageUnit" column="AgeUnit"/>
        <result property="birthday" column="Birthday"/>
        <result property="phone" column="Phone"/>
        <result property="residenceAddress" column="ResidenceAddress"/>
        <result property="residenceProvince" column="ResidenceProvince"/>
        <result property="residenceProvinceName" column="ResidenceProvinceName"/>
        <result property="residenceCity" column="ResidenceCity"/>
        <result property="residenceCityName" column="ResidenceCityName"/>
        <result property="residenceTown" column="ResidenceTown"/>
        <result property="residenceTownName" column="ResidenceTownName"/>
        <result property="residenceCommunity" column="ResidenceCommunity"/>
        <result property="residenceCommunityName" column="ResidenceCommunityName"/>
        <result property="residenceCountyCode" column="ResidenceCountyCode"/>
        <result property="residenceCountyName" column="ResidenceCountyName"/>
    </resultMap>
    <sql id="selectServiceDonateorganVo">
        select ID, InfoID, DonorNo, OrganNo, OrganName, OrganState, OrganNumber, OrganGetTime, OrganGetDoct, GainHospitalNo, GainHospitalName, TransplantHospitalNo, TransplantHospitalName, TransplantDoct, TransplantTime, AbandonReason, ReallocationReason, IsBiopsyBefore, IsBiopsyAfter, IsMarginalOrgan, IsPathogenPositive, IsPNF, IsDGF, del_flag, create_by, create_time, update_by, update_time from service_donateorgan
        select ID,
               InfoID,
               DonorNo,
               OrganNo,
               OrganName,
               OrganState,
               OrganNumber,
               OrganGetTime,
               OrganGetDoct,
               GainHospitalNo,
               GainHospitalName,
               TransplantHospitalNo,
               TransplantHospitalName,
               TransplantDoct,
               TransplantTime,
               AbandonReason,
               ReallocationReason,
               IsBiopsyBefore,
               IsBiopsyAfter,
               IsMarginalOrgan,
               IsPathogenPositive,
               IsPNF,
               IsDGF,
               del_flag,
               create_by,
               create_time,
               update_by,
               update_time,
               ApplicantUserID,
               ApplicantUserName,
               ApplicantTime,
               CheckUserID,
               ApplicantUserName,
               ApplicantTime,
               CheckUserID,
               CheckUserName,
               CheckTime,
               CheckSuggestion,
               AllocationStatus,
               Name,
               SexOMMENT,
               IDCardType,
               IDCardNo,
               Age,
               AgeUnit,
               Birthday,
               Phone,
               ResidenceAddress,
               ResidenceProvince,
               ResidenceProvinceName,
               ResidenceCity,
               ResidenceCityName,
               ResidenceTown,
               ResidenceTownName,
               ResidenceCommunity,
               ResidenceCommunityName,
               ResidenceCountyCode,
               ResidenceCountyName
        from service_donateorgan
    </sql>
    <select id="selectServiceDonateorganList" parameterType="com.ruoyi.project.domain.ServiceDonateorgan" resultMap="ServiceDonateorganResult">
    <select id="selectServiceDonateorganList" parameterType="com.ruoyi.project.domain.ServiceDonateorgan"
            resultMap="ServiceDonateorganResult">
        <include refid="selectServiceDonateorganVo"/>
        <where>
            <if test="infoid != null "> and InfoID = #{infoid}</if>
            <if test="donorno != null  and donorno != ''"> and DonorNo = #{donorno}</if>
            <if test="organno != null  and organno != ''"> and OrganNo = #{organno}</if>
            <if test="organname != null  and organname != ''"> and OrganName like concat('%', #{organname}, '%')</if>
            <if test="organstate != null "> and OrganState = #{organstate}</if>
            <if test="organnumber != null  and organnumber != ''"> and OrganNumber = #{organnumber}</if>
            <if test="organgettime != null "> and OrganGetTime = #{organgettime}</if>
            <if test="organgetdoct != null  and organgetdoct != ''"> and OrganGetDoct = #{organgetdoct}</if>
            <if test="gainhospitalno != null  and gainhospitalno != ''"> and GainHospitalNo = #{gainhospitalno}</if>
            <if test="gainhospitalname != null  and gainhospitalname != ''"> and GainHospitalName like concat('%', #{gainhospitalname}, '%')</if>
            <if test="transplanthospitalno != null  and transplanthospitalno != ''"> and TransplantHospitalNo = #{transplanthospitalno}</if>
            <if test="transplanthospitalname != null  and transplanthospitalname != ''"> and TransplantHospitalName like concat('%', #{transplanthospitalname}, '%')</if>
            <if test="transplantdoct != null  and transplantdoct != ''"> and TransplantDoct = #{transplantdoct}</if>
            <if test="transplanttime != null "> and TransplantTime = #{transplanttime}</if>
            <if test="abandonreason != null "> and AbandonReason = #{abandonreason}</if>
            <if test="reallocationreason != null "> and ReallocationReason = #{reallocationreason}</if>
            <if test="isbiopsybefore != null "> and IsBiopsyBefore = #{isbiopsybefore}</if>
            <if test="isbiopsyafter != null "> and IsBiopsyAfter = #{isbiopsyafter}</if>
            <if test="ismarginalorgan != null "> and IsMarginalOrgan = #{ismarginalorgan}</if>
            <if test="ispathogenpositive != null "> and IsPathogenPositive = #{ispathogenpositive}</if>
            <if test="ispnf != null "> and IsPNF = #{ispnf}</if>
            <if test="isdgf != null "> and isDGF = #{isdgf}</if>
            <if test="infoid != null ">and InfoID = #{infoid}</if>
            <if test="donorno != null  and donorno != ''">and DonorNo = #{donorno}</if>
            <if test="organno != null  and organno != ''">and OrganNo = #{organno}</if>
            <if test="organname != null  and organname != ''">and OrganName like concat('%', #{organname}, '%')</if>
            <if test="organstate != null ">and OrganState = #{organstate}</if>
            <if test="organnumber != null  and organnumber != ''">and OrganNumber = #{organnumber}</if>
            <if test="organgettime != null ">and OrganGetTime = #{organgettime}</if>
            <if test="organgetdoct != null  and organgetdoct != ''">and OrganGetDoct = #{organgetdoct}</if>
            <if test="gainhospitalno != null  and gainhospitalno != ''">and GainHospitalNo = #{gainhospitalno}</if>
            <if test="gainhospitalname != null  and gainhospitalname != ''">and GainHospitalName like concat('%',
                #{gainhospitalname}, '%')
            </if>
            <if test="transplanthospitalno != null  and transplanthospitalno != ''">and TransplantHospitalNo =
                #{transplanthospitalno}
            </if>
            <if test="transplanthospitalname != null  and transplanthospitalname != ''">and TransplantHospitalName like
                concat('%', #{transplanthospitalname}, '%')
            </if>
            <if test="transplantdoct != null  and transplantdoct != ''">and TransplantDoct = #{transplantdoct}</if>
            <if test="transplanttime != null ">and TransplantTime = #{transplanttime}</if>
            <if test="abandonreason != null ">and AbandonReason = #{abandonreason}</if>
            <if test="reallocationreason != null ">and ReallocationReason = #{reallocationreason}</if>
            <if test="isbiopsybefore != null ">and IsBiopsyBefore = #{isbiopsybefore}</if>
            <if test="isbiopsyafter != null ">and IsBiopsyAfter = #{isbiopsyafter}</if>
            <if test="ismarginalorgan != null ">and IsMarginalOrgan = #{ismarginalorgan}</if>
            <if test="ispathogenpositive != null ">and IsPathogenPositive = #{ispathogenpositive}</if>
            <if test="ispnf != null ">and IsPNF = #{ispnf}</if>
            <if test="isdgf != null ">and isDGF = #{isdgf}</if>
        </where>
    </select>
@@ -76,30 +168,30 @@
        inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
        where OrganState = "3"
        <if test="starttime != null "> and d.create_time >= #{starttime} </if>
        <if test="endtime != null ">  and d.create_time &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.create_time >= #{starttime}</if>
        <if test="endtime != null ">and d.create_time &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getAllFinishedOrgans" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
        inner join service_donatebaseinfo b on b.id = d.InfoID
        inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
        where OrganState = "6" AND d.del_flag=0 AND d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
        <if test="starttime != null "> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getOrganNo" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
        inner join service_donatebaseinfo b on b.id = d.InfoID
        inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
        where d.del_flag=0 AND d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00' and d.OrganNo = #{organno}
        <if test="starttime != null "> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getAllFinishedOrgansThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -109,10 +201,10 @@
        where OrganState = "6" AND d.del_flag=0 AND d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        <if test="starttime != null"> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getOrganNumberThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -124,10 +216,10 @@
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
        <if test="starttime != null "> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getbiopsyBeforeNumberThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -140,10 +232,10 @@
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
        <if test="starttime != null"> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getbiopsyAfterNumberThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -156,25 +248,25 @@
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
        <if test="starttime != null "> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getmarginalOrgansNumberThisYear" resultType="java.lang.Integer">
         select count(*) from service_donateorgan d
        select count(*) from service_donateorgan d
        inner join service_donatebaseinfo b on b.id = d.InfoID
        inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
         where IsMarginalOrgan = "1" AND
        where IsMarginalOrgan = "1" AND
        d.OrganGetTime IS NOT NULL AND d.OrganNo != 'C00'
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
         <if test="starttime != null "> and d.OrganGetTime >= #{starttime} </if>
         <if test="endtime != null">  and d.OrganGetTime &lt;= #{endtime}</if>
         <if test="city != null and city != ''"> and o.City = #{city} </if>
         <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getPathogenPositiveNumberThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -187,10 +279,10 @@
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
        <if test="starttime != null "> and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getPNFNumberThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -198,20 +290,20 @@
        inner join service_donatebaseinfo b on b.id = d.InfoID
        inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
        where IsPNF = "1"
        <if test="starttime != null ">  and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getDGFNumberThisYear" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
        inner join service_donatebaseinfo b on b.id = d.InfoID
        inner join base_organization o on b.TreatmentHospitalNo = o.OrganizationID
        where IsDGF = "1"
        <if test="starttime != null ">  and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="selectPNFOrganThisYear" resultType="com.ruoyi.project.domain.ServiceDonateorgan">
        select * from service_donateorgan d
@@ -223,10 +315,10 @@
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
        <if test="starttime != null ">  and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="selectDGFOrganThisYear" resultType="com.ruoyi.project.domain.ServiceDonateorgan">
@@ -239,13 +331,13 @@
        AND d.OrganNo != 'C69L'
        AND d.OrganNo != 'C69R'
        AND d.del_flag=0
        <if test="starttime != null ">  and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="selectVOList" resultType="com.ruoyi.project.domain.vo.DonateOrganVO">
    SELECT
        SELECT
        `service_donatebaseinfo`.`ID` AS `ID`,
        `service_donatebaseinfo`.`Name` AS `Name`,
        `service_donatebaseinfo`.`Sex` AS `Sex`,
@@ -301,54 +393,81 @@
        `service_donatebaseinfo`.`leadername` AS `leadername`,
        `service_donatebaseinfo`.`leaderno` AS `leaderno`,
        `service_donatebaseinfo`.`businessarea` AS `businessarea`
    FROM
        FROM
        (
            `service_donatebaseinfo`
            JOIN `service_donateorgan` ON ((
                `service_donatebaseinfo`.`ID` = `service_donateorgan`.`InfoID`
        `service_donatebaseinfo`
        JOIN `service_donateorgan` ON ((
        `service_donatebaseinfo`.`ID` = `service_donateorgan`.`InfoID`
        )))
        <where>
            <if test="donorno != null  and donorno != ''"> and `service_donatebaseinfo`.`DonorNo` = #{donorno}</if>
            <if test="name != null  and name != ''"> and `service_donatebaseinfo`.`Name` = #{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="donorno != null  and donorno != ''">and `service_donatebaseinfo`.`DonorNo` = #{donorno}</if>
            <if test="name != null  and name != ''">and `service_donatebaseinfo`.`Name` = #{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="organno != null  and organno != ''"> and `service_donateorgan`.`OrganNo` = #{organno}</if>
            <if test="organname != null  and organname != ''"> and `service_donateorgan`.`OrganName` = #{organname}</if>
            <if test="transplanthospitalno != null  and transplanthospitalno != ''"> and `service_donateorgan`.`TransplantHospitalNo` = #{transplanthospitalno}</if>
            <if test="transplanthospitalname != null  and transplanthospitalname != ''"> and `service_donateorgan`.`TransplantHospitalName` = #{transplanthospitalname}</if>
            <if test="organstate != null  and organstate != ''"> and `service_donateorgan`.`OrganState` = #{organstate}</if>
            <if test="reportername != null  and reportername != ''"> and `service_donatebaseinfo`.`ReporterName` = #{reportername}</if>
            <if test="leadername != null  and leadername != ''"> and `service_donatebaseinfo`.`leadername` = #{leadername}</if>
            <if test="leaderno != null  and leaderno != ''"> and `service_donatebaseinfo`.`leaderno` = #{leaderno}</if>
            <if test="businessarea != null  and businessarea != ''"> and `service_donatebaseinfo`.`businessarea` = #{businessarea}</if>
            <if test="gainHospitalname != null  and gainHospitalname != ''"> and `service_donateorgan`.`GainHospitalName` = #{gainHospitalname}</if>
            <if test="treatmenthospitalname != null  and treatmenthospitalname != ''"> and `service_donatebaseinfo`.`TreatmentHospitalName` = #{treatmenthospitalname}</if>
            <if test="startorgangettime != null  and endorgangettime != null "> and `service_donateorgan`.`OrganGetTime` >= #{startorgangettime} and `service_donateorgan`.`OrganGetTime`  &lt;=  #{endorgangettime} </if>
            <if test="starttransplanttime != null  and endtransplanttime != null  ">  and `service_donateorgan`.`TransplantTime` >= #{starttransplanttime} and  `service_donateorgan`.`TransplantTime` &lt;= #{endtransplanttime}</if>
            <if test="organno != null  and organno != ''">and `service_donateorgan`.`OrganNo` = #{organno}</if>
            <if test="organname != null  and organname != ''">and `service_donateorgan`.`OrganName` = #{organname}</if>
            <if test="transplanthospitalno != null  and transplanthospitalno != ''">and
                `service_donateorgan`.`TransplantHospitalNo` = #{transplanthospitalno}
            </if>
            <if test="transplanthospitalname != null  and transplanthospitalname != ''">and
                `service_donateorgan`.`TransplantHospitalName` = #{transplanthospitalname}
            </if>
            <if test="organstate != null  and organstate != ''">and `service_donateorgan`.`OrganState` = #{organstate}
            </if>
            <if test="reportername != null  and reportername != ''">and `service_donatebaseinfo`.`ReporterName` =
                #{reportername}
            </if>
            <if test="leadername != null  and leadername != ''">and `service_donatebaseinfo`.`leadername` =
                #{leadername}
            </if>
            <if test="leaderno != null  and leaderno != ''">and `service_donatebaseinfo`.`leaderno` = #{leaderno}</if>
            <if test="businessarea != null  and businessarea != ''">and `service_donatebaseinfo`.`businessarea` =
                #{businessarea}
            </if>
            <if test="gainHospitalname != null  and gainHospitalname != ''">and `service_donateorgan`.`GainHospitalName`
                = #{gainHospitalname}
            </if>
            <if test="treatmenthospitalname != null  and treatmenthospitalname != ''">and
                `service_donatebaseinfo`.`TreatmentHospitalName` = #{treatmenthospitalname}
            </if>
            <if test="startorgangettime != null  and endorgangettime != null ">and `service_donateorgan`.`OrganGetTime`
                >= #{startorgangettime} and `service_donateorgan`.`OrganGetTime` &lt;= #{endorgangettime}
            </if>
            <if test="starttransplanttime != null  and endtransplanttime != null  ">and
                `service_donateorgan`.`TransplantTime` >= #{starttransplanttime} and
                `service_donateorgan`.`TransplantTime` &lt;= #{endtransplanttime}
            </if>
        </where>
    </select>
    <select id="countNumber" resultType="java.lang.Integer">
        select count(*) from service_donateorgan
        where
            OrganGetTime >= #{starttime} and OrganGetTime &lt;= #{endtime}
            -- (OrganState = "3" or OrganState = "4" or OrganState = "5" or OrganState = "6")
        select count(*)
        from service_donateorgan
        where OrganGetTime >= #{starttime}
          and OrganGetTime &lt;= #{endtime}
          -- (OrganState = "3" or OrganState = "4" or OrganState = "5" or OrganState = "6")
          AND OrganGetTime IS NOT NULL
AND OrganNo != 'C00'
          AND OrganNo != 'C00'
          AND del_flag=0
    </select>
    <select id="countPeople" resultType="java.lang.Integer">
        select count(distinct(InfoID)) from service_donateorgan
        where create_time >= #{starttime} and create_time &lt;= #{endtime}
        select count(distinct (InfoID))
        from service_donateorgan
        where create_time >= #{starttime}
          and create_time &lt;= #{endtime}
    </select>
    <select id="getAllDonateOrgansByTime" resultType="com.ruoyi.project.domain.ServiceDonateorgan">
        <include refid="selectServiceDonateorganVo"/>
        where OrganGetTime >= #{starttime} and OrganGetTime &lt;= #{endtime}
        AND OrganGetTime IS NOT NULL
        -- AND  (OrganState = "3" or OrganState = "4" or OrganState = "5" or OrganState = "6")
        -- AND (OrganState = "3" or OrganState = "4" or OrganState = "5" or OrganState = "6")
        AND OrganNo != 'C00'
        AND del_flag=0
    </select>
@@ -358,9 +477,12 @@
    </select>
    <select id="getOrgansCount" resultType="java.lang.Integer">
        select count(*) from service_donateorgan
        where TransplantHospitalNo = #{organizationid} and del_flag = 0
        and OrganGetTime >= #{starttime} and OrganGetTime &lt;= #{endtime}
        select count(*)
        from service_donateorgan
        where TransplantHospitalNo = #{organizationid}
          and del_flag = 0
          and OrganGetTime >= #{starttime}
          and OrganGetTime &lt;= #{endtime}
    </select>
    <select id="getDistinctOrgansCount" resultType="java.lang.Integer">
        select count(*) from service_donateorgan d
@@ -370,13 +492,14 @@
        -- and (OrganState = "3" or OrganState = "4" or OrganState = "5" or OrganState = "6")
        and d.del_flag=0
        and d.OrganGetTime IS NOT NULL
        <if test="starttime != null ">  and d.OrganGetTime >= #{starttime} </if>
        <if test="endtime != null ">  and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''"> and o.City = #{city} </if>
        <if test="reporterno != null and reporterno != ''"> and b.ReporterNo = #{reporterno}</if>
        <if test="starttime != null ">and d.OrganGetTime >= #{starttime}</if>
        <if test="endtime != null ">and d.OrganGetTime &lt;= #{endtime}</if>
        <if test="city != null and city != ''">and o.City = #{city}</if>
        <if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
    </select>
    <select id="getOrganNameByNo" resultType="java.lang.String">
        select distinct OrganName from service_donateorgan
        select distinct OrganName
        from service_donateorgan
        where OrganNo = #{organno}
    </select>
    <select id="selectAll" resultType="com.ruoyi.project.domain.ServiceDonateorgan">