生物安全多羊只耳号查询
This commit is contained in:
@@ -46,6 +46,17 @@ public class BasSheepController extends BaseController {
|
|||||||
return getDataTable(list);
|
return getDataTable(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/earNumbers")
|
||||||
|
public AjaxResult searchEarNumbers(@RequestParam("query") String query) {
|
||||||
|
try {
|
||||||
|
List<String> earNumbers =basSheepService.searchEarNumbers(query);
|
||||||
|
return success(earNumbers);
|
||||||
|
} catch (Exception e) {
|
||||||
|
logger.error("搜索耳号异常", e);
|
||||||
|
return error("搜索耳号失败:" + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 导出羊只基本信息列表
|
* 导出羊只基本信息列表
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -70,6 +70,15 @@ public interface BasSheepMapper
|
|||||||
BasSheep selectBasSheepByManageTags(String manageTags);
|
BasSheep selectBasSheepByManageTags(String manageTags);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 模糊查询母羊耳号列表
|
||||||
|
*
|
||||||
|
* @param query 查询关键字
|
||||||
|
* @return 耳号列表
|
||||||
|
*/
|
||||||
|
List<String> searchEarNumbers(@Param("query") String query);
|
||||||
|
|
||||||
|
|
||||||
List<BasSheep> selectBasSheepBySheepfold(String id);
|
List<BasSheep> selectBasSheepBySheepfold(String id);
|
||||||
|
|
||||||
// 根据牧场ID获取羊只列表
|
// 根据牧场ID获取羊只列表
|
||||||
|
|||||||
@@ -28,6 +28,13 @@ public interface IBasSheepService
|
|||||||
*/
|
*/
|
||||||
public List<BasSheep> selectBasSheepList(BasSheep basSheep);
|
public List<BasSheep> selectBasSheepList(BasSheep basSheep);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 羊只查询耳号信息
|
||||||
|
*
|
||||||
|
* @param earNumbers 耳号
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public List<String> searchEarNumbers(String earNumbers);
|
||||||
/**
|
/**
|
||||||
* 新增羊只基本信息
|
* 新增羊只基本信息
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -44,6 +44,16 @@ public class BasSheepServiceImpl implements IBasSheepService
|
|||||||
return basSheepMapper.selectBasSheepList(basSheep);
|
return basSheepMapper.selectBasSheepList(basSheep);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 搜索羊只 earNumbers
|
||||||
|
*
|
||||||
|
* @param query
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<String> searchEarNumbers(String query) {
|
||||||
|
return basSheepMapper.searchEarNumbers(query);
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 新增羊只基本信息
|
* 新增羊只基本信息
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -35,6 +35,8 @@ public class Deworm extends BaseEntity
|
|||||||
@Excel(name = "羊只耳号")
|
@Excel(name = "羊只耳号")
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
@Excel(name = "品种")
|
@Excel(name = "品种")
|
||||||
private String variety;
|
private String variety;
|
||||||
@@ -75,10 +77,7 @@ public class Deworm extends BaseEntity
|
|||||||
@Excel(name = "备注")
|
@Excel(name = "备注")
|
||||||
private String comment;
|
private String comment;
|
||||||
|
|
||||||
// public void setGender(String gender) {
|
|
||||||
// this.gender = gender;
|
|
||||||
// this.genderName = Gender.getDescByCode(Integer.valueOf(gender));
|
|
||||||
// }
|
|
||||||
// 排序查询
|
// 排序查询
|
||||||
private String orderByColumn;
|
private String orderByColumn;
|
||||||
private String isAsc;
|
private String isAsc;
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package com.zhyc.module.biosafety.domain;
|
package com.zhyc.module.biosafety.domain;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.zhyc.module.enums.Gender;
|
import com.zhyc.module.enums.Gender;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
@@ -38,6 +40,9 @@ public class Diagnosis extends BaseEntity
|
|||||||
@Excel(name = "羊只耳号")
|
@Excel(name = "羊只耳号")
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
|
|
||||||
private Long sheepId;
|
private Long sheepId;
|
||||||
|
|
||||||
@@ -97,12 +102,23 @@ public class Diagnosis extends BaseEntity
|
|||||||
|
|
||||||
private Long sheepfoldId;
|
private Long sheepfoldId;
|
||||||
|
|
||||||
public void setGender(String gender) {
|
|
||||||
this.gender = gender;
|
|
||||||
this.genderName = Gender.getDescByCode(Integer.valueOf(gender));
|
|
||||||
}
|
|
||||||
|
|
||||||
// 排序查询
|
// 排序查询
|
||||||
private String orderByColumn;
|
private String orderByColumn;
|
||||||
private String isAsc;
|
private String isAsc;
|
||||||
|
|
||||||
|
public void setGender(String gender) {
|
||||||
|
this.gender = gender;
|
||||||
|
if (gender != null && !gender.trim().isEmpty()) {
|
||||||
|
try {
|
||||||
|
Integer genderCode = Integer.valueOf(gender.trim());
|
||||||
|
this.genderName = Gender.getDescByCode(genderCode);
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
// 如果转换失败,设置为空或默认值
|
||||||
|
this.genderName = null;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.genderName = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,13 +31,15 @@ public class Health extends BaseEntity
|
|||||||
/** 羊只id */
|
/** 羊只id */
|
||||||
@Excel(name = "羊只id")
|
@Excel(name = "羊只id")
|
||||||
private Long sheepId;
|
private Long sheepId;
|
||||||
|
|
||||||
private Integer[] sheepIds;
|
private Integer[] sheepIds;
|
||||||
|
|
||||||
/** 羊只id */
|
/** 羊只id */
|
||||||
@Excel(name = "羊只耳号")
|
@Excel(name = "羊只耳号")
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
|
|
||||||
@Excel(name = "品种")
|
@Excel(name = "品种")
|
||||||
private String variety;
|
private String variety;
|
||||||
@@ -70,11 +72,23 @@ public class Health extends BaseEntity
|
|||||||
// 药品使用
|
// 药品使用
|
||||||
private List<SwMedicineUsageDetails> usageDetails;
|
private List<SwMedicineUsageDetails> usageDetails;
|
||||||
|
|
||||||
public void setGender(String gender) {
|
|
||||||
this.gender = gender;
|
|
||||||
this.genderName = Gender.getDescByCode(Integer.valueOf(gender));
|
|
||||||
}
|
|
||||||
// 排序查询
|
// 排序查询
|
||||||
private String orderByColumn;
|
private String orderByColumn;
|
||||||
private String isAsc;
|
private String isAsc;
|
||||||
|
|
||||||
|
public void setGender(String gender) {
|
||||||
|
this.gender = gender;
|
||||||
|
if (gender != null && !gender.trim().isEmpty()) {
|
||||||
|
try {
|
||||||
|
Integer genderCode = Integer.valueOf(gender.trim());
|
||||||
|
this.genderName = Gender.getDescByCode(genderCode);
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
// 如果转换失败,设置为空或默认值
|
||||||
|
this.genderName = null;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.genderName = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,6 +37,9 @@ public class Immunity extends BaseEntity
|
|||||||
@Excel(name = "羊只耳号")
|
@Excel(name = "羊只耳号")
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
|
|
||||||
@Excel(name = "品种")
|
@Excel(name = "品种")
|
||||||
|
|
||||||
@@ -77,12 +80,24 @@ public class Immunity extends BaseEntity
|
|||||||
|
|
||||||
// 药品使用
|
// 药品使用
|
||||||
private List<SwMedicineUsageDetails> usageDetails;
|
private List<SwMedicineUsageDetails> usageDetails;
|
||||||
public void setGender(String gender) {
|
|
||||||
this.gender = gender;
|
|
||||||
this.genderName = Gender.getDescByCode(Integer.valueOf(gender));
|
|
||||||
}
|
|
||||||
// 排序查询
|
// 排序查询
|
||||||
private String orderByColumn;
|
private String orderByColumn;
|
||||||
private String isAsc;
|
private String isAsc;
|
||||||
|
|
||||||
|
public void setGender(String gender) {
|
||||||
|
this.gender = gender;
|
||||||
|
if (gender != null && !gender.trim().isEmpty()) {
|
||||||
|
try {
|
||||||
|
Integer genderCode = Integer.valueOf(gender.trim());
|
||||||
|
this.genderName = Gender.getDescByCode(genderCode);
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
// 如果转换失败,设置为空或默认值
|
||||||
|
this.genderName = null;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.genderName = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,8 @@
|
|||||||
package com.zhyc.module.biosafety.domain;
|
package com.zhyc.module.biosafety.domain;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.zhyc.module.enums.Gender;
|
import com.zhyc.module.enums.Gender;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
@@ -37,6 +39,9 @@ public class QuarantineReport extends BaseEntity
|
|||||||
@Excel(name = "羊只耳号")
|
@Excel(name = "羊只耳号")
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
|
|
||||||
@Excel(name = "羊只类别")
|
@Excel(name = "羊只类别")
|
||||||
private String sheepType;
|
private String sheepType;
|
||||||
|
|||||||
@@ -39,6 +39,10 @@ public class SwMedicineUsage extends BaseEntity
|
|||||||
@Excel(name = "耳号",width = 20, needMerge = true)
|
@Excel(name = "耳号",width = 20, needMerge = true)
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
|
|
||||||
private Integer sheepId;
|
private Integer sheepId;
|
||||||
/** 使用时间 */
|
/** 使用时间 */
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
|
|||||||
@@ -33,6 +33,9 @@ public class Treatment extends BaseEntity
|
|||||||
@Excel(name = "羊只耳号")
|
@Excel(name = "羊只耳号")
|
||||||
private String sheepNo;
|
private String sheepNo;
|
||||||
private String[] sheepNos;
|
private String[] sheepNos;
|
||||||
|
/** 全部羊耳号列表(用于多耳号查询) */
|
||||||
|
private List<String> allEarNumbers;
|
||||||
|
|
||||||
|
|
||||||
private Long sheepId;
|
private Long sheepId;
|
||||||
// 用于批量新增
|
// 用于批量新增
|
||||||
|
|||||||
@@ -148,6 +148,15 @@
|
|||||||
WHERE s.id = #{id}
|
WHERE s.id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="searchEarNumbers" resultType="java.lang.String">
|
||||||
|
SELECT DISTINCT manage_tags
|
||||||
|
FROM bas_sheep
|
||||||
|
WHERE manage_tags LIKE CONCAT(#{query}, '%')
|
||||||
|
AND is_delete = 0
|
||||||
|
ORDER by manage_tags
|
||||||
|
LIMIT 50
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="selectBasSheepByManageTags" parameterType="String" resultMap="BasSheepResult">
|
<select id="selectBasSheepByManageTags" parameterType="String" resultMap="BasSheepResult">
|
||||||
SELECT s.*,
|
SELECT s.*,
|
||||||
bv.variety AS varietyName
|
bv.variety AS varietyName
|
||||||
|
|||||||
@@ -43,6 +43,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
|
||||||
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''">
|
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''">
|
||||||
and datetime between #{params.beginDatetime} and #{params.endDatetime}
|
and datetime between #{params.beginDatetime} and #{params.endDatetime}
|
||||||
|
|||||||
@@ -52,6 +52,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
|
||||||
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
||||||
<if test="diseasePid != null "> and disease_pid = #{diseasePid}</if>
|
<if test="diseasePid != null "> and disease_pid = #{diseasePid}</if>
|
||||||
<if test="diseaseId != null "> and disease_id = #{diseaseId}</if>
|
<if test="diseaseId != null "> and disease_id = #{diseaseId}</if>
|
||||||
|
|||||||
@@ -50,7 +50,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
||||||
<if test="technical != null and technical != ''"> and technical = #{technical}</if>
|
<if test="technical != null and technical != ''"> and technical = #{technical}</if>
|
||||||
</where>
|
</where>
|
||||||
|
|||||||
@@ -48,7 +48,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
||||||
<if test="technical != null and technical != ''"> and technical = #{technical}</if>
|
<if test="technical != null and technical != ''"> and technical = #{technical}</if>
|
||||||
</where>
|
</where>
|
||||||
|
|||||||
@@ -54,6 +54,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
<if test="quarItem != null "> and quar_item = #{quarItem}</if>
|
<if test="quarItem != null "> and quar_item = #{quarItem}</if>
|
||||||
<if test="sampleType != null "> and sample_type = #{sampleType}</if>
|
<if test="sampleType != null "> and sample_type = #{sampleType}</if>
|
||||||
<if test="sampler != null and sampler != ''"> and sampler like concat('%',#{sampler},'%') </if>
|
<if test="sampler != null and sampler != ''"> and sampler like concat('%',#{sampler},'%') </if>
|
||||||
|
|||||||
@@ -80,6 +80,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
|
||||||
|
|
||||||
<!-- 4. 使用时间区间 -->
|
<!-- 4. 使用时间区间 -->
|
||||||
<if test="params.beginUseTime != null and params.endUseTime != null">
|
<if test="params.beginUseTime != null and params.endUseTime != null">
|
||||||
|
|||||||
@@ -62,6 +62,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</foreach>
|
</foreach>
|
||||||
)
|
)
|
||||||
</if>
|
</if>
|
||||||
|
<!-- 全部羊多耳号查询(母羊或公羊匹配即可) -->
|
||||||
|
<if test="allEarNumbers != null and allEarNumbers.size() > 0">
|
||||||
|
AND (
|
||||||
|
bs.manage_tags IN
|
||||||
|
<foreach collection="allEarNumbers" item="earNumber" open="(" separator="," close=")">
|
||||||
|
#{earNumber}
|
||||||
|
</foreach>
|
||||||
|
|
||||||
|
)
|
||||||
|
</if>
|
||||||
|
|
||||||
|
|
||||||
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
<if test="params.beginDatetime != null and params.beginDatetime != '' and params.endDatetime != null and params.endDatetime != ''"> and datetime between #{params.beginDatetime} and #{params.endDatetime}</if>
|
||||||
<if test="diseaseId != null "> and disease_id = #{diseaseId}</if>
|
<if test="diseaseId != null "> and disease_id = #{diseaseId}</if>
|
||||||
|
|||||||
Reference in New Issue
Block a user