| @ -0,0 +1,125 @@ | |||||
| package com.fkzy.warn.common.util; | |||||
| import java.util.HashMap; | |||||
| import java.util.Map; | |||||
| /** | |||||
| * @author zhangjing | |||||
| * @date 2026/03/10 18:04 | |||||
| * @description | |||||
| */ | |||||
| public enum CaseRoleMapping { | |||||
| // 民事 | |||||
| CIVIL_PLAINTIFF("civil", "原告", "原告"), | |||||
| CIVIL_DEFENDANT("civil", "被告", "被告"), | |||||
| CIVIL_COUNTER_PLAINTIFF("civil", "反诉原告", "原告"), | |||||
| CIVIL_COUNTER_DEFENDANT("civil", "反诉被告", "被告"), | |||||
| CIVIL_THIRD_PARTY("civil", "第三人", "第三人"), | |||||
| CIVIL_APPELLANT("civil", "上诉人", "原告"), | |||||
| CIVIL_RESPONDENT("civil", "被上诉人", "被告"), | |||||
| CIVIL_ORIGINAL_PLAINTIFF("civil", "原审原告", "原告"), | |||||
| CIVIL_ORIGINAL_DEFENDANT("civil", "原审被告", "被告"), | |||||
| CIVIL_ORIGINAL_THIRD_PARTY("civil", "原审第三人", "第三人"), | |||||
| CIVIL_ORIGINAL_APPLICANT("civil", "原审申请人", "原告"), | |||||
| CIVIL_ORIGINAL_RESPONDENT("civil", "原审被申请人", "被告"), | |||||
| // 刑事 | |||||
| CRIMINAL_DEFENDANT("criminal", "被告人", "被告"), | |||||
| CRIMINAL_PRIVATE_PROSECUTOR("criminal", "自诉人", "原告"), | |||||
| CRIMINAL_COUNTER_PLAINTIFF("criminal", "反诉人", "原告"), | |||||
| CRIMINAL_COUNTER_DEFENDANT("criminal", "反诉被告人", "被告"), | |||||
| CRIMINAL_CIVIL_PLAINTIFF("criminal", "附带民事诉讼原告", "原告"), | |||||
| CRIMINAL_CIVIL_DEFENDANT("criminal", "附带民事诉讼被告", "被告"), | |||||
| CRIMINAL_CIVIL_COUNTER_PLAINTIFF("criminal", "附带民事诉讼反诉原告", "原告"), | |||||
| CRIMINAL_CIVIL_COUNTER_DEFENDANT("criminal", "附带民事诉讼反诉被告", "被告"), | |||||
| CRIMINAL_APPELLANT("criminal", "上诉人", "原告"), | |||||
| CRIMINAL_ORIGINAL_DEFENDANT_2("criminal", "原审被告人", "被告"), | |||||
| CRIMINAL_ORIGINAL_CIVIL_PLAINTIFF("criminal", "原审附带民事诉讼原告", "原告"), | |||||
| CRIMINAL_ORIGINAL_CIVIL_DEFENDANT("criminal", "原审附带民事诉讼被告", "被告"), | |||||
| CRIMINAL_REVIEW_APPLICANT("criminal", "申请复议人", "原告"), | |||||
| CRIMINAL_ORIGINAL_RESPONDENT_2("criminal", "原审被申请人", "被告"), | |||||
| CRIMINAL_INTERESTED_PARTY("criminal", "原审利害关系人", "第三人"), | |||||
| CRIMINAL_SUSPECT("criminal", "犯罪嫌疑人", "被告"), | |||||
| CRIMINAL_ORIGINAL_COUNTER_DEFENDANT("criminal", "原审反诉被告人", "被告"), | |||||
| CRIMINAL_ORIGINAL_COUNTER_PLAINTIFF("criminal", "原审反诉人", "原告"), | |||||
| // 行政 | |||||
| ADMINISTRATIVE_PLAINTIFF("administrative", "原告", "原告"), | |||||
| ADMINISTRATIVE_DEFENDANT("administrative", "被告", "被告"), | |||||
| ADMINISTRATIVE_THIRD_PARTY("administrative", "第三人", "第三人"), | |||||
| ADMINISTRATIVE_APPELLANT("administrative", "上诉人", "原告"), | |||||
| ADMINISTRATIVE_RESPONDENT("administrative", "被上诉人", "被告"), | |||||
| ADMINISTRATIVE_ORIGINAL_PLAINTIFF("administrative", "原审原告", "原告"), | |||||
| ADMINISTRATIVE_ORIGINAL_DEFENDANT("administrative", "原审被告", "被告"), | |||||
| ADMINISTRATIVE_ORIGINAL_THIRD_PARTY("administrative", "原审第三人", "第三人"), | |||||
| // 非诉保全审查 | |||||
| NON_LITIGATION_APPLICANT("preservation", "申请人", "原告"), | |||||
| NON_LITIGATION_RESPONDENT("preservation", "被申请人", "被告"), | |||||
| // 执行 | |||||
| ENFORCEMENT_APPLICANT("implement", "申请执行人", "原告"), | |||||
| ENFORCEMENT_RESPONDENT("implement", "被执行人", "被告"), | |||||
| ENFORCEMENT_OBJECTOR("implement", "异议人", "第三人"), | |||||
| ENFORCEMENT_REVIEW_APPLICANT("implement", "申请复议人", "原告"), | |||||
| ENFORCEMENT_INTERESTED_PARTY("implement", "利害关系人", "第三人"), | |||||
| ENFORCEMENT_OUTSIDER("implement", "案外人", "第三人"), | |||||
| ENFORCEMENT_APPLICANT_GENERIC("implement", "申请人", "原告"), | |||||
| ENFORCEMENT_RESPONDENT_GENERIC("implement", "被申请人", "被告"), | |||||
| ENFORCEMENT_THIRD_PARTY("implement", "第三人", "第三人"), | |||||
| // 强制清算与破产 | |||||
| BANKRUPTCY_APPLICANT("bankrupt", "申请人", "原告"), | |||||
| BANKRUPTCY_RESPONDENT("bankrupt", "被申请人", "被告"), | |||||
| BANKRUPTCY_SUPERVISION_APPELLANT("bankrupt", "原审上诉人", "原告"), | |||||
| BANKRUPTCY_SUPERVISION_RESPONDENT("bankrupt", "原审被上诉人", "被告"), | |||||
| BANKRUPTCY_ORIGINAL_APPLICANT("bankrupt", "原审申请人", "原告"), | |||||
| BANKRUPTCY_ORIGINAL_RESPONDENT("bankrupt", "原审被申请人", "被告"), | |||||
| BANKRUPTCY_APPEAL_APPELLANT("bankrupt", "上诉人", "原告"), | |||||
| BANKRUPTCY_APPEAL_RESPONDENT("bankrupt", "被上诉人", "被告"), | |||||
| // 通用兜底 | |||||
| OTHER("所有类型", "其他", "第三人"); | |||||
| private static final Map<String, String> MAPPING = new HashMap<>(); | |||||
| static { | |||||
| for (CaseRoleMapping mapping : values()) { | |||||
| String key = buildKey(mapping.caseType, mapping.roleKey); | |||||
| MAPPING.put(key, mapping.statCategory); | |||||
| } | |||||
| } | |||||
| private final String caseType; | |||||
| private final String roleKey; | |||||
| private final String statCategory; | |||||
| CaseRoleMapping(String caseType, String roleKey, String statCategory) { | |||||
| this.caseType = caseType; | |||||
| this.roleKey = roleKey; | |||||
| this.statCategory = statCategory; | |||||
| } | |||||
| private static String buildKey(String caseType, String roleKey) { | |||||
| return caseType + "|" + roleKey; | |||||
| } | |||||
| /** | |||||
| * 根据案件类型和域值获取统计分类 | |||||
| * | |||||
| * @param caseType 案件类型,如 "civil"、"criminal" 等 | |||||
| * @param roleKey 域值,如 "原告"、"上诉人" 等 | |||||
| * @return 对应的统计分类,如未找到则返回 null | |||||
| */ | |||||
| public static String getStatCategory(String caseType, String roleKey) { | |||||
| if (caseType == null || roleKey == null) { | |||||
| return "第三人"; | |||||
| } | |||||
| String result = MAPPING.get(buildKey(caseType, roleKey)); | |||||
| if (result==null){ | |||||
| return "第三人"; | |||||
| } | |||||
| return result; | |||||
| } | |||||
| } | |||||