From bd25d9a8a058e8c618ee4188ed5f15a898c0f7e8 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 27 一月 2024 11:43:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/service/src/main/java/com/doumee/core/utils/Constants.java | 222 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 200 insertions(+), 22 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/core/utils/Constants.java b/server/service/src/main/java/com/doumee/core/utils/Constants.java
index c6d746e..624e0a1 100644
--- a/server/service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/service/src/main/java/com/doumee/core/utils/Constants.java
@@ -3,12 +3,19 @@
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.dao.business.model.Solutions;
+import io.swagger.models.auth.In;
import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.compress.archivers.zip.ZipArchiveEntry;
+import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream;
import org.apache.commons.lang3.StringUtils;
-import java.io.File;
+import javax.servlet.ServletOutputStream;
+import java.io.*;
import java.math.BigDecimal;
+import java.net.URL;
import java.net.URLDecoder;
+import java.time.LocalDate;
+import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.Date;
import java.util.regex.Matcher;
@@ -72,6 +79,7 @@
public static final String TAXES_FILE = "TAXES_FILE";
public static final String APPLY_FILE ="APPLY_FILE" ;
public static final String SETTLE_FILE ="SETTLE_FILE" ;
+ public static final String SIGN_DONE_NOTIFY_URL = "SIGN_DONE_NOTIFY_URL";
/**
* 浼佷笟鏁版嵁鏉ユ簮 0骞冲彴娉ㄥ唽 1鍚庡彴瀵煎叆
@@ -140,6 +148,36 @@
}
return d.intValue();
}
+
+ public static long getAgeByIdCard(String idCard){
+ int birthYear = Integer.parseInt(idCard.substring(6, 10));
+ int birthMonth = Integer.parseInt(idCard.substring(10, 12));
+ int birthDay = Integer.parseInt(idCard.substring(12, 14));
+
+ LocalDate birthDate = LocalDate.of(birthYear, birthMonth, birthDay);
+ LocalDate currentDate = LocalDate.now();
+ long age = ChronoUnit.YEARS.between(birthDate, currentDate);
+ return age;
+ }
+
+ public static Integer getSexByIdCard(String idCard){
+ Pattern pattern = Pattern.compile("\\d{17}[\\d|x]"); // 瀹氫箟韬唤璇佸彿鐮佹牸寮忕殑姝e垯琛ㄨ揪寮�
+ Matcher matcher = pattern.matcher(idCard);
+ Integer sex = 1;
+ if (matcher.matches()) {
+ int genderCode = Integer.parseInt(idCard.substring(16, 17)); // 浠庣17浣嶅紑濮嬫彁鍙栨�у埆缂栫爜锛堝鏁颁负鐢锋�э紝鍋舵暟涓哄コ鎬э級
+
+ if ((genderCode % 2 == 1)) {
+ sex = 1;
+ } else {
+ sex = 2;
+ }
+ } else {
+ sex = -1;
+ }
+ return sex;
+ }
+
/**
* 鐘舵�� 0宸蹭繚瀛樸��1寰呭鏍搞��2瀹℃牳閫氳繃銆�3閫�鍥炰慨鏀广��4瀹℃牳椹冲洖銆�5寰呮湇鍔℃満鏋勭‘璁ゃ��6鏈嶅姟鏈烘瀯鎷掔粷銆�7宸插垎閰嶆湇鍔℃満鏋勩��8璇婃柇涓�
* 锛堟垚鍔熶笂浼犵涓�浠芥湇鍔¤祫鏂欙級銆�9鏈嶅姟瀹屾垚銆�10宸插垎閰嶈瘎鍒嗕笓瀹躲��11宸插畬鎴愶紙涓撳涓婁紶璇勫垎锛� 12閫�鍥炰慨鏀逛腑 13 宸插畬鎴愰��鍥炰慨鏀�
@@ -368,8 +406,9 @@
BD_SIGNED_PDF(9, "绛剧讲鍚庝繚鍗曠敵璇疯〃PDF", "绛剧讲鍚庝繚鍗曠敵璇疯〃PDF"),
COM_SING_IMG(10, "浼佷笟鍗扮珷", "浼佷笟鍗扮珷"),
BD_DONE_PDF(11, "鏈�缁堟姤鍗�", "鏈�缁堟姤鍗�"),
-
CA_PD_PDF(12, "鏈�缁堟姤鍗�", "鏈�缁堟姤鍗�"),
+ CA_APPLY_JIAJIAN_SIGN(13, "鍔犲噺淇濈敵璇风绔犳枃浠�", "鍔犲噺淇濈敵璇风绔犳枃浠�"),
+ CA_APPLY_CHANGEUNIT_SIGN(14, "鎹㈠巶鐢宠绛剧珷鏂囦欢", "鎹㈠巶鐢宠绛剧珷鏂囦欢"),
;
@@ -620,6 +659,54 @@
}
+ public enum ApplyCollectStatus {
+ DSP(0, "寰呭鎵�"),
+ DCD(1, "寰呭嚭鍗�"),
+ BZZ(2, "淇濋殰涓�"),
+ YGQ(3, "宸茶繃鏈�"),
+ YTH(4, "宸查��鍥�"),
+ THSQZ(5, "閫�鍥炵敵璇蜂腑"),
+ YGB(6, "宸插叧闂�"),
+ ;
+ // 鎴愬憳鍙橀噺
+ private String name;
+ private int key;
+
+ // 鏋勯�犳柟娉�
+ ApplyCollectStatus(int key, String name) {
+ this.name = name;
+ this.key = key;
+ }
+
+ // 鏅�氭柟娉�
+ public static String getName(int index) {
+ for (ApplyCollectStatus c : ApplyCollectStatus.values()) {
+ if (c.getKey() == index) {
+ return c.name;
+ }
+ }
+ return null;
+ }
+
+ // get set 鏂规硶
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int getKey() {
+ return key;
+ }
+
+ public void setKey(int key) {
+ this.key = key;
+ }
+
+ }
+
public enum ApplyLogType {
UPLOAD(0, "鎻愪氦鎶曚繚","鎻愪氦鎰忚锛�${param}"),
@@ -645,6 +732,9 @@
CA_PALTFORM_REFUSE_APPLY(20, "椹冲洖閫�鍥炵敵璇�",""),
CA_PALTFORM_EDIT_PIDAN(21, "淇敼鎵瑰崟","淇敼鍘熷洜锛�${param}"),
PALTFORM_EDIT_BD(22, "淇敼淇濆崟","淇敼鍘熷洜锛�${param}"),
+ CA_JIAJIAN_APPLY_SIGN(23, "鍔犲噺淇濈敵璇蜂紒涓氱绔�",""),
+
+ CA_CHANGUNIT_APPLY_SIGN(24, "鎹㈡垚鐢宠浼佷笟绛剧珷",""),
;
// 鎴愬憳鍙橀噺
private String name;
@@ -703,28 +793,31 @@
}
public enum InsuranceApplyStatus {
- UPLOAD(0, "鎻愪氦鎶曚繚",""),
- PLATFORM_RETURN(1, "瀹℃牳涓嶉�氳繃","鎻愪氦鎰忚锛�${param}"),
- WAIT_SIGNATURE(2, "宸蹭笂浼犱唬绛剧敵璇疯〃寰呬紒涓氱绔�",""),
- SIGNATURE(3, "宸茬绔犲緟涓婁紶淇濋櫓鍗�",""),
- FAIL_RETURN(4, "淇濆崟鍑哄叿澶辫触閫�鍥�",""),
- UPLOAD_INSURANCE(5, "淇濆崟瀹屾垚","淇濋櫓鐢熸晥璧锋湡锛�${param}鍙樻洿涓�${param1}"),
- COMPANY_BACK_APPLY_UPLOAD(6, "浼佷笟鐢宠閫�鍥�(鎻愪氦鎶曚繚)","鎻愪氦鎰忚锛�${param}"),
- COMPANY_BACK_APPLY_WAIT_SIGNATURE(7, "浼佷笟鐢宠閫�鍥�(寰呯绔�)","鎻愪氦鎰忚锛�${param}"),
- COMPANY_BACK_APPLY_SIGNATURE(8, "浼佷笟鐢宠閫�鍥�(宸茬绔�)","鎻愪氦鎰忚锛�${param}"),
- CLOSE(9, "璁㈠崟鍏抽棴",""),
- PLATFORM_CHECK_PASS(10,"骞冲彴鎶曚繚瀹℃牳閫氳繃",""),
+ UPLOAD(0, "鎻愪氦鎶曚繚","",0),
+ PLATFORM_RETURN(1, "瀹℃牳涓嶉�氳繃","鎻愪氦鎰忚锛�${param}",4),
+ WAIT_SIGNATURE(2, "宸蹭笂浼犱唬绛剧敵璇疯〃寰呬紒涓氱绔�","",1),
+ SIGNATURE(3, "宸茬绔犲緟涓婁紶淇濋櫓鍗�","",1),
+ FAIL_RETURN(4, "淇濆崟鍑哄叿澶辫触閫�鍥�","",0),
+ UPLOAD_INSURANCE(5, "淇濆崟瀹屾垚","淇濋櫓鐢熸晥璧锋湡锛�${param}鍙樻洿涓�${param1}",2),
+ COMPANY_BACK_APPLY_UPLOAD(6, "浼佷笟鐢宠閫�鍥�(鎻愪氦鎶曚繚)","鎻愪氦鎰忚锛�${param}",5),
+ COMPANY_BACK_APPLY_WAIT_SIGNATURE(7, "浼佷笟鐢宠閫�鍥�(寰呯绔�)","鎻愪氦鎰忚锛�${param}",5),
+ COMPANY_BACK_APPLY_SIGNATURE(8, "浼佷笟鐢宠閫�鍥�(宸茬绔�)","鎻愪氦鎰忚锛�${param}",5),
+ CLOSE(9, "璁㈠崟鍏抽棴","",6),
+ PLATFORM_CHECK_PASS(10,"骞冲彴鎶曚繚瀹℃牳閫氳繃","鎻愪氦鎰忚锛�${param}",1),
;
// 鎴愬憳鍙橀噺
private String name;
private String info;
private int key;
+ private int collectStatus;
+
// 鏋勯�犳柟娉�
- InsuranceApplyStatus(int key, String name,String info) {
+ InsuranceApplyStatus(int key, String name,String info,int collectStatus) {
this.name = name;
this.key = key;
this.info = info;
+ this.collectStatus = collectStatus;
}
// 鏅�氭柟娉�
@@ -732,6 +825,25 @@
for (InsuranceApplyStatus c : InsuranceApplyStatus.values()) {
if (c.getKey() == index) {
return c.name;
+ }
+ }
+ return null;
+ }
+ public static List<Integer> getKesByStatus(Integer collectStatus) {
+ List<Integer> list = new ArrayList<>();
+ if(collectStatus!=null){
+ for (InsuranceApplyStatus c : InsuranceApplyStatus.values()) {
+ if (Constants.equalsInteger(c.getCollectStatus() ,collectStatus)) {
+ list.add(c.getKey());
+ }
+ }
+ }
+ return list;
+ }
+ public static Integer getCollectStatus(Integer index) {
+ for (InsuranceApplyStatus c : InsuranceApplyStatus.values()) {
+ if (Constants.equalsInteger(c.getKey() , index)) {
+ return c.collectStatus;
}
}
return null;
@@ -768,6 +880,14 @@
public void setInfo(String info) {
this.info = info;
+ }
+
+ public int getCollectStatus() {
+ return collectStatus;
+ }
+
+ public void setCollectStatus(int collectStatus) {
+ this.collectStatus = collectStatus;
}
}
@@ -844,8 +964,9 @@
public enum SettleClaimsStatus {
WAIT_ACCEPTANCE(0, "寰呭彈鐞�"),
RETURN_ACCEPTANCE(1, "閫�鍥炲彈鐞�"),
- CONFIRM_INFORMATION(2, "纭璧勬枡"),
- FINISH_ACCEPTANCE(3, "瀹屾垚鍙楃悊"),
+ DEAL_ING(2, "鍙楃悊涓�"),
+ CONFIRM_INFORMATION(3, "纭璧勬枡"),
+ FINISH_ACCEPTANCE(4, "瀹屾垚鍙楃悊"),
;
// 鎴愬憳鍙橀噺
private String name;
@@ -888,15 +1009,15 @@
public enum SettleClaimsLogType {
UPLOAD(0, "鎻愪氦鎶ユ","鎻愪氦鎰忚锛�${param}"),
PLATFORM_RETURN(1, "骞冲彴閫�鍥�","鎻愪氦鎰忚锛�${param}"),
- CONFIRM_INFORMATION(2, "骞冲彴纭璧勬枡","鎻愪氦鎰忚锛�${param}"),
+ PLATFORM_CONFIRM_INFORMATION(2, "骞冲彴纭璧勬枡",""),
PLATFORM_FINISH(3, "骞冲彴瀹屾垚鍙楃悊","鎻愪氦鎰忚锛�${param}"),
UPDATE_DATA(4, "淇敼淇℃伅","鎻愪氦鎰忚锛�${param}"),
SUPPLEMENT(5, "琛ュ厖璇存槑","鎻愪氦鎰忚锛�${param}"),
- COMPANY_APPLY_RETURN(6, "骞冲彴鐞嗚禂澶勭悊","鎻愪氦鎰忚锛�${param}"),
- COMPANY_APPLY_CLOSE(7, "骞冲彴澶囨敞鏍囩",""),
- PLATFORM_AGREE_BACK(8, "骞冲彴娣诲姞鎶ユ鍙�",""),
+ PLATFORM_LP_DEAL(6, "骞冲彴鐞嗚禂澶勭悊","鎻愪氦鎰忚锛�${param}"),
+ PLATFORM_REMARK(7, "骞冲彴澶囨敞鏍囩",""),
+ PLATFORM_ADDCODE(8, "骞冲彴娣诲姞鎶ユ鍙�",""),
PLATFORM_UN_AGREE_BACK(9, "浼佷笟涓嬭浇璧勬枡",""),
- COMPANY_EDIT(10, "骞冲彴涓嬭浇璧勬枡",""),
+ PLATFORM_DOWNLOAD(10, "骞冲彴涓嬭浇璧勬枡",""),
PLATFORM_CHECK_PASS(11, "骞冲彴涓婁紶璧勬枡",""),
;
// 鎴愬憳鍙橀噺
@@ -958,7 +1079,6 @@
-//3=閫�鍥炵敵璇凤紱4=骞冲彴瀹℃壒閫氳繃锛�0=瀹℃壒椹冲洖;5=骞冲彴瀹℃壒椹冲洖
public enum ApplyChangeLogStatus {
UPLOAD(0, "鍙戣捣鐢宠"),
RETURN_APPLY(3, "鍙戣捣閫�鍥炵敵璇�"),
@@ -1004,6 +1124,8 @@
}
}
+
+
public enum ProjectRecord {
@@ -1207,4 +1329,60 @@
this.des = des;
}
}
+
+ public static File getFileByNetFile(String url,String fileName) {
+ //瀵规湰鍦版枃浠跺懡鍚�
+ File file = null;
+ try {
+ URL urlfile;
+ InputStream inStream = null;
+ OutputStream os = null;
+ try {
+ String tempDir = System.getProperty("java.io.tmpdir")+fileName;
+ file = new File(tempDir);
+ //涓嬭浇
+ urlfile = new URL(url);
+ inStream = urlfile.openStream();
+ os = new FileOutputStream(file);
+ int bytesRead = 0;
+ byte[] buffer = new byte[8192];
+ while ((bytesRead = inStream.read(buffer, 0, 8192)) != -1) {
+ os.write(buffer, 0, bytesRead);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ try {
+ if (null != os) {
+ os.close();
+ }
+ if (null != inStream) {
+ inStream.close();
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }catch (Exception e){
+
+ }
+
+ return file;
+ }
+ public static void packFilesToZip(List<File> files, ServletOutputStream os) throws IOException {
+ try (ZipArchiveOutputStream zipOutputStream = new ZipArchiveOutputStream(os)) {
+ for (File file : files) {
+ ZipArchiveEntry entry = new ZipArchiveEntry(file.getName());
+ zipOutputStream.putArchiveEntry(entry);
+ try (FileInputStream fileInputStream = new FileInputStream(file)) {
+ byte[] buffer = new byte[1024];
+ int length;
+ while ((length = fileInputStream.read(buffer)) > 0) {
+ zipOutputStream.write(buffer, 0, length);
+ }
+ }
+ zipOutputStream.closeArchiveEntry();
+ }
+ }
+ }
}
--
Gitblit v1.9.3