Commit 457da8d8 by ddx

增加维护页面

parent ae0ef339
package com.sxc.etaxincome.common.enums;
import lombok.Getter;
/**
* @author caosongqing
* @date 2024/1/11
* @description
*/
@Getter
public enum PercentResponseType {
P50("p50", 0.50f),
P75("p75", 0.75f),
P80("p80", 0.8f),
P85("p85", 0.85f),
P90("p90", 0.90f),
P95("p95", 0.95f),
P99("p99", 0.99f);
private final String type;
private final float percent;
PercentResponseType(String type, float percent) {
this.type = type;
this.percent = percent;
}
public static PercentResponseType as(String type) {
for (PercentResponseType percentResponseType : PercentResponseType.values()) {
if (percentResponseType.type.equals(type)) {
return percentResponseType;
}
}
return null;
}
}
package com.sxc.etaxincome.common.exception;
/**
* @author caosongqing
* @date 2022/10/28
* @description
*/
public class LoadRemoteConfigException extends RuntimeException {
public LoadRemoteConfigException(final String errorMessage, final Object... args) {
super(String.format(errorMessage, args));
}
public LoadRemoteConfigException(final Throwable cause) {
super(cause);
}
}
package com.sxc.etaxincome.common.exception;
/**
* @author caosongqing
* @date 2022/9/2
* @description
*/
public class RequestException extends RuntimeException {
public RequestException(final String errorMessage, final Object... args) {
super(String.format(errorMessage, args));
}
public RequestException(final Throwable cause) {
super(cause);
}
}
package com.sxc.etaxincome.common.exception;
/**
* @author caosongqing
* @date 2022/8/24
* @description
*/
public class ResponseException extends RuntimeException {
public ResponseException(final String errorMessage, final Object... args) {
super(String.format(errorMessage, args));
}
public ResponseException(final Throwable cause) {
super(cause);
}
}
package com.sxc.etaxincome.common.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.net.URL;
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Data
public class HttpRequestParam {
private String strParam;
private URL filePath;
}
package com.sxc.etaxincome.common.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author caosongqing
* @date 2022/12/4
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class RequestConfig {
private String dqdm;
private String contentType;
private String proxyServer;
private String method;
private String charset;
private int retryTimes;
private int connectTimeoutMillis;
private int readTimeoutMillis;
}
package com.sxc.etaxincome.common.model.report;
import com.google.common.collect.Maps;
import lombok.Data;
import org.apache.commons.collections4.MapUtils;
import java.util.Map;
/**
* @author caosongqing
* @date 2023/3/16
* @description
*/
@Data
public class ResponseCarrier {
private Map<String, String> paramMap;
public Map<String, String> getParamMap() {
return paramMap;
}
public void putParam(String key, String value) {
if (this.paramMap == null) {
this.paramMap = Maps.newLinkedHashMapWithExpectedSize(5);
}
this.paramMap.put(key, value);
}
public void putAll(Map<String, String> otherTempParams) {
if (this.paramMap == null) {
this.paramMap = Maps.newLinkedHashMapWithExpectedSize(5);
}
if (MapUtils.isNotEmpty(otherTempParams)) {
this.paramMap.putAll(otherTempParams);
}
}
public String getParamValue(String key) {
if (paramMap != null) {
return paramMap.get(key);
}
return "";
}
}
package com.sxc.etaxincome.common.util;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class Constants {
private Constants() {
}
/**
* 集合初始化大小
*/
public static final int COLLECTION_CAPACITY = 10;
/**
* threshold response long
*/
public static final long THRESHOLD_RESPONSE_LONG_MILLIS = 1000L;
/**
* threshold response length
*/
public static final long THRESHOLD_RESPONSE_LENGTH = 10000;
/**
* valid 419 response length
*/
public static final int VALID_419_RESPONSE_LENGTH = 1000;
/**
* default retry times
*/
public static final int RETRY_TIMES_DEFAULT = 2;
/**
* default connect timed out
*/
public static final int CONNECT_TIMEOUT_MILLIS_DEFAULT = 5000;
/**
* default read timed out
*/
public static final int READ_TIMEOUT_MILLIS_DEFAULT = 15000;
/**
* key of sso security check token for cookie
*/
public static final String UPPER_CASE_SSO_SECURITY_CHECK_TOKEN_COOKIE_KEY = "SSO_SECURITY_CHECK_TOKEN";
public static final String LOWER_CASE_SSO_SECURITY_CHECK_TOKEN_COOKIE_KEY = "sso_security_check_token";
/**
* upper case key of sso security check token for request header
*/
public static final String UPPER_CASE_SSO_SECURITY_CHECK_TOKEN_HEADER_KEY = "SSO_SECURITY_CHECK_TOKEN";
/**
* lower case key of sso security check token for request header
*/
public static final String LOWER_CASE_SSO_SECURITY_CHECK_TOKEN_HEADER_KEY = "sso_security_check_token";
public static final String REQUEST_SERIAL_NO = "requestSerialNo";
public static final String REQUEST_ID = "requestId";
public static final String TAX_NO = "taxno";
public static final String USERNAME = "username";
public static final String AREA_CODE = "dqdm";
public static final String CONTENT_TYPE_MULTIPART = "multipart";
public static final String SET_COOKIE_ALIAS = "daee6ec4";
public static final String ERROR_COUNT = "error_count";
public static final String RESPONSE_419 = "response_419";
public static final String FILE_NAME = "file_name";
}
package com.sxc.etaxincome.common.util;
import javax.xml.bind.ValidationException;
import java.net.Inet6Address;
import java.net.UnknownHostException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Ipv6Utils {
private Ipv6Utils() {
}
private static final String IPV6_ADDRESS = "(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))";
private static final String IPv6_SLASH_FORMAT = IPV6_ADDRESS + "/(\\d{1,3})"; // 0 -> 32
private static final Pattern Ipv6AddressPattern = Pattern.compile(IPV6_ADDRESS);
private static final Pattern Ipv6CidrPattern = Pattern.compile(IPv6_SLASH_FORMAT);
public static String ipv6AddressFormat(String ipv6Address) throws ValidationException {
Matcher matcher = Ipv6AddressPattern.matcher(ipv6Address);
if (matcher.matches()) {
try {
String ipv6Str = Inet6Address.getByName(ipv6Address).getHostAddress();
return ipv6Str.replaceAll("((?::0\\b){2,}):?(?!\\S*\\b\\1:0\\b)(\\S*)", "::$2");
} catch (UnknownHostException e) {
throw new ValidationException("this ip is not valid v6 address");
}
} else {
throw new ValidationException("this ip is not valid v6 address");
}
}
public static String ipv6PrefixFormat(String ipv6Prefix) throws ValidationException {
Matcher matcher = Ipv6CidrPattern.matcher(ipv6Prefix);
if (matcher.matches()) {
String ip = ipv6Prefix.split("/")[0];
String len = ipv6Prefix.split("/")[1];
try {
String ipv6Str = Inet6Address.getByName(ip).getHostAddress();
return ipv6Str.replaceAll("((?::0\\b){2,}):?(?!\\S*\\b\\1:0\\b)(\\S*)", "::$2") + "/" + len;
} catch (UnknownHostException e) {
throw new ValidationException("this prefix is not valid v6 prefix");
}
} else {
throw new ValidationException("this prefix is not valid v6 prefix");
}
}
public static boolean isValidIpv6Address(String ipv6Address) {
Matcher matcher = Ipv6AddressPattern.matcher(ipv6Address);
return matcher.matches();
}
public static boolean isValidIpv6AddressAndPort(String ipv6AddressAndHost) {
if (ipv6AddressAndHost.contains(":")) {
int pos = ipv6AddressAndHost.lastIndexOf(":");
Matcher matcher = Ipv6AddressPattern.matcher(ipv6AddressAndHost.substring(0, pos));
return matcher.matches();
}
return false;
}
public static String[] splitIpv6AddressAndPort(String ipv6) {
int pos = ipv6.lastIndexOf(":");
return new String[]{ipv6.substring(0, pos), ipv6.substring(pos + 1)};
}
}
package com.sxc.etaxincome.common.util;
/**
* @author caosongqing
* @date 2023/4/11
* @description
*/
public class ParamCarrierConstants {
private ParamCarrierConstants() {
}
public static final String ORIGINAL_RESPONSE = "originalResponse";
public static final String PUBLIC_KEY = "publicKey";
public static final String MAGIC_KEY = "magicKey";
public static final String TOKEN_KEY = "tokenKey";
public static final String DZFP_SSO_TOKEN = "dzfpSsotoken";
public static final String ETAX_WEBSITE = "etaxWebsite";
public static final String TARGET_URL = "targetUrl";
public static final String DQDM = "dqdm";
public static final String ZONE_NAME = "zoneName";
public static final String TRACE_ID = "traceId";
public static final String SECURITY_MES_KEY = "securityMesKey";
public static final String ETAX_PARAM_MAGIC = "lzkqow23819";
public static final String ENCRYPT = "encrypt";
public static final String BODY_KEY = "_BODY_";
public static final String COOKIE = "cookie";
public static final String SIGN_EXTRA_COOKIE = "MKls83gqduGS";
public static final String SIGN_EXTRA_COOKIE2 = "lzkqow37189";
public static final String SIGN_EXTRA_COOKIE3 = "lzkqow38189";
public static final String SIGN_EXTRA_COOKIE4 = "lzkqow39189";
public static final String SIGN_EXTRA_COOKIE5 = "DTSwUOYx7MiWN";
/**
* 使用瑞数增强之后的cookie
*/
public static final String STRENGTH_COOKIE = "strength_cookie";
public static final String SIGN_PRIORITY = "signPriority";
public static final String SERVER_PROXY = "serverProxy";
public static final String HTML_419_ATTRIBUTE = "_y_ds";
public static final String GET_PUBLIC_KEY_FAIL_COUNT = "_getPublicKey_fail_count_";
public static final String GET_PUBLIC_KEY_FAIL = "_getPublicKey_fail_";
public static final String RESPONSE_CODE = "_response_code_";
public static final String FIXED_TOKEN = "fixed_token";
public static final String STRENGTH_SIGN_FOCUS = "_strength_sign_focus_";
}
package com.sxc.etaxincome.common.util;
/**
* @author caosongqing
* @date 2023/2/10
* @description
*/
public class ResponseCode {
private ResponseCode() {
}
/**
* success.
*/
public static final int OK = 200;
/**
* error code 418
*/
public static final int ERROR_418 = 418;
/**
* error code 419
*/
public static final int WITHOUT_SIGN_CODE = 0;
/**
* error code 500
*/
public static final int ERROR_500 = 500;
}
......@@ -28,6 +28,10 @@ public class RetryUtil<T> {
private int waitSeconds = 10;
public RetryUtil(int times) {
this.times = times;
}
public T retry(Callable<T> callable) throws ExecutionException, RetryException {
//定义重试机制
Retryer<T> retryer = RetryerBuilder.<T>newBuilder()
......
package com.sxc.etaxincome.common.util;
import org.apache.commons.lang3.StringUtils;
public class UrlUtils {
private UrlUtils() {
}
public static String appendParams(String url, String key, String value) {
return appendParams(url, key + "=" + value);
}
public static String appendParams(String url, String paramStr) {
if (StringUtils.isBlank(paramStr)) {
return url;
}
StringBuilder result = new StringBuilder(url);
if (url.contains("?")) {
result.append("&");
} else {
result.append("?");
}
result.append(paramStr);
return result.toString();
}
public static String deleteParams(String url) {
if (StringUtils.isBlank(url)) {
return url;
}
if (url.contains("?")) {
return url.substring(0, url.indexOf("?"));
}
return url;
}
public static String getLastSubstring(String url, char c) {
return url.substring(url.lastIndexOf(c) + 1);
}
}
package com.sxc.etaxincome.common.util;
import cn.hutool.core.net.URLDecoder;
import org.apache.commons.lang3.StringUtils;
import java.nio.charset.StandardCharsets;
/**
* @author caosongqing
* @date 2022/12/14
* @description
*/
public class WebsiteUtil {
private WebsiteUtil() {
}
public static String getReferer(String url) {
String urlReplace = url.replace("//","aa");
if (urlReplace.contains("/")) {
return url.substring(0, urlReplace.indexOf("/") + 1);
} else {
return url + "/";
}
}
public static String getHost(String url) {
String urlReplace = url.replace("//","aa");
return url.substring(0, urlReplace.indexOf("/") + 1);
}
public static String getPath(String url) {
String urlReplace = url.replace("//","aa");
return url.substring(urlReplace.indexOf("/") + 1);
}
public static String getFileName(String headerFileName) {
if (StringUtils.isBlank(headerFileName)) {
return headerFileName;
}
try {
int startIndex = headerFileName.indexOf("fileName");
if (startIndex > 0) {
return URLDecoder.decode(StringUtils.replaceChars(headerFileName.substring(startIndex + 9), "\"", ""), StandardCharsets.UTF_8);
}
return "";
} catch (Exception e) {
return "";
}
}
}
......@@ -21,6 +21,10 @@
<dependencies>
<dependency>
<groupId>com.sxc.etaxincome</groupId>
<artifactId>etax-income-common</artifactId>
</dependency>
<dependency>
<groupId>com.sxc.etaxincome</groupId>
<artifactId>etax-income-domain</artifactId>
</dependency>
<dependency>
......
package com.sxc.etaxincome.domain.business;
import com.sxc.etaxincome.domain.model.report.UserPlain;
import java.util.List;
/**
* @author caosongqing
* @date 2023/11/17
* @description
*/
public interface IIncomeService {
List<UserPlain> queryUserList();
}
package com.sxc.etaxincome.domain.business.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.nacos.api.config.annotation.NacosValue;
import com.alicp.jetcache.anno.CacheType;
import com.alicp.jetcache.anno.Cached;
import com.google.common.collect.Lists;
import com.sxc.etaxincome.common.model.report.RequestConfig;
import com.sxc.etaxincome.domain.business.IIncomeService;
import com.sxc.etaxincome.domain.business.ISysManageManager;
import com.sxc.etaxincome.domain.model.common.CommonResponse;
import com.sxc.etaxincome.domain.model.report.UserPlain;
import com.sxc.etaxincome.domain.model.sysManage.SysAppUserSummary;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.sxc.etaxincome.common.util.ETaxPureNetUtil;
import com.sxc.etaxincome.common.model.report.ResponseCarrier;
import java.nio.charset.StandardCharsets;
import java.util.List;
/**
* @author caosongqing
* @date 2023/11/17
* @description
*/
@Slf4j
@Service
public class IncomeService implements IIncomeService {
@Autowired
private ISysManageManager sysManageManager;
@Cached(name = "gx2022:income:username-list", expire = 36000, cacheType = CacheType.LOCAL)
public List<UserPlain> queryUserList() {
List<UserPlain> userPlainList = Lists.newArrayListWithExpectedSize(10);
try {
List<SysAppUserSummary> sysAppUserList = sysManageManager.queryListByCriteria();
for (int i = 0; i < sysAppUserList.size(); i++) {
SysAppUserSummary userJsonObject = sysAppUserList.get(i);
UserPlain userPlain = UserPlain.builder()
.username(userJsonObject.getUserName())
.nickname(userJsonObject.getNickName())
.status(Integer.parseInt(userJsonObject.getStatus())).build();
userPlainList.add(userPlain);
}
} catch (Exception e) {
log.error("query income user list error:", e);
}
return userPlainList;
}
}
package com.sxc.etaxincome.domain.infrastructure;
import com.sxc.etaxincome.domain.model.report.ETaxWebsite;
import com.sxc.etaxincome.domain.model.report.JxUserUrlConfig;
import java.util.List;
/**
* @author caosongqing
* @date 2023/12/7
* @description
*/
public interface IEtaxConfigRemoteService {
List<ETaxWebsite> getETaxWebsiteRemote();
JxUserUrlConfig getJxUserUrlConfigConfigRemote();
}
package com.sxc.etaxincome.domain.infrastructure;
import com.sxc.etaxincome.domain.model.report.ETaxWebsite;
import com.sxc.etaxincome.domain.model.report.JxUserUrlConfigDetail;
import java.util.List;
/**
* @author caosongqing
* @date 2022/10/28
* @description
*/
public interface IEtaxConfigService {
List<ETaxWebsite> getETaxWebsiteList();
String getArea(String taxno);
String getJxUserUrl(String userCode);
List<JxUserUrlConfigDetail> getJxtaxUserList();
}
package com.sxc.etaxincome.domain.infrastructure.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.nacos.api.annotation.NacosInjected;
import com.alibaba.nacos.api.config.ConfigService;
import com.alibaba.nacos.api.exception.NacosException;
import com.sxc.etaxincome.common.exception.LoadRemoteConfigException;
import com.sxc.etaxincome.domain.infrastructure.IEtaxConfigRemoteService;
import com.sxc.etaxincome.domain.model.report.ETaxWebsite;
import com.sxc.etaxincome.domain.model.report.JxUserUrlConfig;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author caosongqing
* @date 2023/12/7
* @description
*/
@Slf4j
@Service
public class EtaxConfigRemoteService implements IEtaxConfigRemoteService {
private static final Long TIMEOUT_MILLIS = 5000L;
public static final String CONFIG_GROUP = "etax_income_config";
@NacosInjected
private ConfigService configService;
@Override
public List<ETaxWebsite> getETaxWebsiteRemote() {
try {
String etaxWebsiteJson = configService.getConfig("etax_website", CONFIG_GROUP, TIMEOUT_MILLIS);
return JSON.parseArray(etaxWebsiteJson, ETaxWebsite.class);
} catch (NacosException e) {
log.error("load remote etax website error:", e);
throw new LoadRemoteConfigException(e);
}
}
@Override
public JxUserUrlConfig getJxUserUrlConfigConfigRemote() {
try {
String jxUserUrlConfigJson = configService.getConfig("jx-user-config", CONFIG_GROUP, TIMEOUT_MILLIS);
return JSON.parseObject(jxUserUrlConfigJson, JxUserUrlConfig.class);
} catch (NacosException e) {
log.error("load remote jx user url config error:", e);
throw new LoadRemoteConfigException(e);
}
}
}
package com.sxc.etaxincome.domain.infrastructure.impl;
import com.alicp.jetcache.anno.CacheType;
import com.alicp.jetcache.anno.Cached;
import com.sxc.etaxincome.domain.infrastructure.IEtaxConfigRemoteService;
import com.sxc.etaxincome.domain.infrastructure.IEtaxConfigService;
import com.sxc.etaxincome.domain.model.report.ETaxWebsite;
import com.sxc.etaxincome.domain.model.report.JxUserUrlConfig;
import com.sxc.etaxincome.domain.model.report.JxUserUrlConfigDetail;
import com.sxc.framework.common.json.JSONUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* @author caosongqing
* @date 2022/10/28
* @description
*/
@Slf4j
@Service
public class EtaxConfigService implements IEtaxConfigService {
public static final int REMOTE_CACHED_EXPIRE_SECONDS = 10 * 60;
@Autowired
private IEtaxConfigRemoteService etaxConfigRemoteService;
public String getArea(String taxno) {
List<ETaxWebsite> eTaxWebsiteList = getETaxWebsiteList();
Map<String, ETaxWebsite> eTaxWebsiteMap = eTaxWebsiteList.stream().collect(Collectors.toMap(e -> e.getDqdm(), eTaxWebsite -> eTaxWebsite));
String maybeArea = taxno.substring(2, 6);
ETaxWebsite eTaxWebsite = eTaxWebsiteMap.get(maybeArea);
if (eTaxWebsite == null) {
String standardArea = taxno.substring(2, 4) + "00";
eTaxWebsite = eTaxWebsiteMap.get(standardArea);
}
return JSONUtil.toString(eTaxWebsite);
}
@Override
public List<ETaxWebsite> getETaxWebsiteList() {
List<ETaxWebsite> eTaxWebsiteList = etaxConfigRemoteService.getETaxWebsiteRemote();
return eTaxWebsiteList;
}
@Override
@Cached(name = "gx2022:config:jx-user-url-config-item:", key = "#userCode", expire = REMOTE_CACHED_EXPIRE_SECONDS, cacheType = CacheType.LOCAL, cacheNullValue = true)
public String getJxUserUrl(String userCode) {
JxUserUrlConfig jxUserUrlConfig = etaxConfigRemoteService.getJxUserUrlConfigConfigRemote();
if (null!=jxUserUrlConfig && CollectionUtils.isNotEmpty(jxUserUrlConfig.getList())) {
Optional<JxUserUrlConfigDetail> value = jxUserUrlConfig.getList().stream()
.filter(e -> userCode.equals(e.getUserCode())).filter(e -> e.isEffective()).findAny();
if (value.isPresent()) {
return value.get().getUserUrl();
}
}
return "";
}
@Override
@Cached(name = "gx2022:config:jx-user-url-config", expire = REMOTE_CACHED_EXPIRE_SECONDS, cacheType = CacheType.LOCAL)
public List<JxUserUrlConfigDetail> getJxtaxUserList() {
JxUserUrlConfig jxUserUrlConfig = etaxConfigRemoteService.getJxUserUrlConfigConfigRemote();
if (null!=jxUserUrlConfig && CollectionUtils.isNotEmpty(jxUserUrlConfig.getList())) {
return jxUserUrlConfig.getList().stream().filter(e -> e.isEffective()).collect(Collectors.toList());
}
return null;
}
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author caosongqing
* @date 2023/10/25
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class AnalysisAreaGroup {
private String name;
private long count;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author caosongqing
* @date 2023/10/13
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class AnalysisAreaGroupGeo {
private String name;
private String[] value;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @author caosongqing
* @date 2022/10/28
* @description
*/
@NoArgsConstructor
@AllArgsConstructor
@Builder
@Data
public class ETaxWebsite {
private boolean effective;
private String dqdm;
private String dqmc;
private String zoneName;
private String url;
private List<String> friend;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* @author caosongqing
* @date 2024/1/11
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@SuperBuilder
public class IncomeApply {
private Long id;
private String userCode;
private String zoneCode;
private int timeDiff;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @ProjectName: gx2022
* @Package: com.sxc.domain
* @ClassName: JxUserUrlConfig
* @Author: ddx
* @Description:
* @Date: 2024-09-19 18:12
* @Version: 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class JxUserUrlConfig {
private boolean effective;
private List<JxUserUrlConfigDetail> list;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @ProjectName: gx2022
* @Package: com.sxc.domain
* @ClassName: JxUserUrlConfigDetail
* @Author: ddx
* @Description:
* @Date: 2024-09-19 18:13
* @Version: 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class JxUserUrlConfigDetail {
private boolean effective;
private String userCode;
private String userUrl;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Data
public class ManagementQueryIncome {
private Integer pageNumber;
private Integer pageSize;
private String taxno;
private String itype;
private String userCode;
private String reqContext;
private String resCode;
private String resMsg;
private String timeFlag;
private String zoneCode;
private String resContext;
private String reqSign;
private String startDateTime;
private String endDateTime;
private Long startTimeDiff;
private Long endTimeDiff;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Data
public class ManagementQueryIncomeInvoice {
private String userCode;
private Integer pageSize;
private Integer pageNumber;
private String buytaxno;
private String invtype;
private String invkind;
private String invnum;
private String eleInvnum;
private String selectStatus;
private String incomeMonth;
private String confType;
private String infoFrom;
private String sfhc;
private String riskGrade;
private String selectResult;
private String invStatus;
private String expFlag;
private String expConfFlag;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Data
public class ManagementQueryIncomeNumberInvoice {
private String userCode;
private Integer pageSize;
private Integer pageNumber;
private String fulltaxno;
private String invtype;
private String invkind;
private String invnum;
private String eleInvnum;
private String fullFlag;
private String expFlag;
private String fileOverFlag;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@Data
public class ManagementQueryIncomeTaxUser {
private Integer pageNumber;
private Integer pageSize;
private String userCode;
private String areaCode;
private String taxno;
private String userStatus;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
/**
* @author caosongqing
* @date 2024/1/11
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@SuperBuilder
public class PercentResponse {
private String percent;
private int elapsedMillis;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author caosongqing
* @date 2023/11/17
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class UserPlain {
private String username;
private String nickname;
private Integer status;
}
package com.sxc.etaxincome.domain.model.report;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author caosongqing
* @date 2023/11/17
* @description
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class UserSecret {
private String username;
private String nickname;
private Integer status;
}
......@@ -39,6 +39,27 @@
<build>
<finalName>etax-income-api</finalName>
<resources>
<resource>
<!-- 指定resources插件处理哪个目录下的资源文件 -->
<directory>src/main/resources</directory>
<includes>
<include>**/**</include>
</includes>
</resource>
<!-- 打包时将jsp文件拷贝到META-INF目录下 -->
<resource>
<!-- 指定resources插件处理哪个目录下的资源文件 -->
<directory>src/main/webapp</directory>
<!--注意此次必须要放在此目录下才能被访问到 -->
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/**</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
......
......@@ -22,8 +22,8 @@ import org.springframework.scheduling.annotation.EnableAsync;
@EnableAspectJAutoProxy(proxyTargetClass = true)
@MapperScan("com.sxc.etaxincome.mapper")
@EnableMethodCache(basePackages = "com.sxc.etaxincome")
@NacosPropertySource(dataId = "param_config", groupId = "etax_report_config", autoRefreshed = true, type = ConfigType.PROPERTIES)
@NacosPropertySource(dataId = "url_config", groupId = "etax_report_config", autoRefreshed = true, type = ConfigType.PROPERTIES)
@NacosPropertySource(dataId = "param_config", groupId = "etax_income_config", autoRefreshed = true, type = ConfigType.PROPERTIES)
@NacosPropertySource(dataId = "url_config", groupId = "etax_income_config", autoRefreshed = true, type = ConfigType.PROPERTIES)
public class EtaxIncomeApplication {
public static void main(String[] args) {
SpringApplication.run(EtaxIncomeApplication.class, args);
......
[{
"name": "北京",
"value": [116.3979471, 39.9081726, 0]
},
{
"name": "上海",
"value": [121.4692688, 31.2381763, 0]
},
{
"name": "天津",
"value": [117.2523808, 39.1038561, 0]
},
{
"name": "重庆",
"value": [106.548425, 29.5549144, 0]
},
{
"name": "河北",
"value": [114.4897766, 38.0451279, 0]
},
{
"name": "山西",
"value": [112.5223053, 37.8357424, 0]
},
{
"name": "辽宁",
"value": [123.4116821, 41.7966156, 0]
},
{
"name": "吉林",
"value": [125.3154297, 43.8925629, 0]
},
{
"name": "黑龙江",
"value": [126.6433411, 45.7414932, 0]
},
{
"name": "浙江",
"value": [120.1592484, 30.265995, 0]
},
{
"name": "福建",
"value": [119.2978134, 26.0785904, 0]
},
{
"name": "山东",
"value": [117.0056, 36.6670723, 0]
},
{
"name": "河南",
"value": [113.6500473, 34.7570343, 0]
},
{
"name": "湖北",
"value": [114.2919388, 30.5675144, 0]
},
{
"name": "湖南",
"value": [112.9812698, 28.2008247, 0]
},
{
"name": "广东",
"value": [113.2614288, 23.1189117, 0]
},
{
"name": "海南",
"value": [110.3465118, 20.0317936, 0]
},
{
"name": "四川",
"value": [104.0817566, 30.6610565, 0]
},
{
"name": "贵州",
"value": [106.7113724, 26.5768738, 0]
},
{
"name": "云南",
"value": [102.704567, 25.0438442, 0]
},
{
"name": "江西",
"value": [115.8999176, 28.6759911, 0]
},
{
"name": "陕西",
"value": [108.949028, 34.2616844, 0]
},
{
"name": "青海",
"value": [101.7874527, 36.6094475, 0]
},
{
"name": "甘肃",
"value": [103.7500534, 36.0680389, 0]
},
{
"name": "广西",
"value": [108.3117676, 22.8065434, 0]
},
{
"name": "新疆",
"value": [87.6061172, 43.7909393, 0]
},
{
"name": "内蒙古",
"value": [111.6632996, 40.8209419, 0]
},
{
"name": "西藏",
"value": [91.1320496, 29.657589, 0]
},
{
"name": "宁夏",
"value": [106.2719421, 38.4680099, 0]
},
{
"name": "台湾",
"value": [120.9581316, 23.8516062, 0]
},
{
"name": "香港",
"value": [114.139452, 22.391577, 0]
},
{
"name": "澳门",
"value": [113.5678411, 22.167654, 0]
},
{
"name": "安徽",
"value": [117.2757034, 31.8632545, 0]
},
{
"name": "江苏",
"value": [118.7727814, 32.0476151, 0]
},
{
"name": "大连",
"value": [121.621391, 38.919345, 0]
},
{
"name": "宁波",
"value": [121.556686, 29.880177, 0]
},
{
"name": "厦门",
"value": [118.095915, 24.485821, 0]
},
{
"name": "青岛",
"value": [120.389445, 36.072358, 0]
},
{
"name": "深圳",
"value": [114.066112, 22.548515, 0]
}
]
\ No newline at end of file
{
"effective": true,
"configList": [{
"code": "0010",
"version": "v3"
}, {
"code": "0011",
"version": "v3"
}, {
"code": "0152",
"version": "v3"
}, {
"code": "0153",
"version": "v3"
}]
}
\ No newline at end of file
{
"effective": true,
"configList": [{
"dqdm": "8888",
"configList": [{
"code": "0000",
"version": "v99"
}]
}]
}
\ No newline at end of file
{
"effective": true,
"configList": [{
"dqdm": "15000",
"version": ""
}, {
"dqdm": "4400",
"version": ""
}, {
"dqdm": "3100",
"version": ""
}, {
"dqdm": "9999",
"version": "v3"
}]
}
\ No newline at end of file
[
{
"effective": false,
"dqdm": "1100",
"dqmc": "北京"
},
{
"effective": false,
"dqdm": "1200",
"dqmc": "天津"
},
{
"effective": false,
"dqdm": "1300",
"dqmc": "河北"
},
{
"effective": false,
"dqdm": "1400",
"dqmc": "山西"
},
{
"effective": true,
"dqdm": "1500",
"dqmc": "内蒙古",
"url": "https://dppt.neimenggu.chinatax.gov.cn:8443/",
"friend": ["15000", "15150"]
},
{
"effective": false,
"dqdm": "2100",
"dqmc": "辽宁"
},
{
"effective": false,
"dqdm": "2102",
"dqmc": "大连"
},
{
"effective": false,
"dqdm": "2200",
"dqmc": "吉林"
},
{
"effective": false,
"dqdm": "2300",
"dqmc": "黑龙江"
},
{
"effective": true,
"dqdm": "3100",
"dqmc": "上海",
"url": "https://dppt.shanghai.chinatax.gov.cn:8443/"
},
{
"effective": false,
"dqdm": "3200",
"dqmc": "江苏"
},
{
"effective": false,
"dqdm": "3300",
"dqmc": "浙江"
},
{
"effective": false,
"dqdm": "3302",
"dqmc": "宁波"
},
{
"effective": false,
"dqdm": "3400",
"dqmc": "安徽"
},
{
"effective": false,
"dqdm": "3500",
"dqmc": "福建"
},
{
"effective": false,
"dqdm": "3502",
"dqmc": "厦门"
},
{
"effective": false,
"dqdm": "3600",
"dqmc": "江西"
},
{
"effective": false,
"dqdm": "3700",
"dqmc": "山东"
},
{
"effective": false,
"dqdm": "3702",
"dqmc": "青岛"
},
{
"effective": false,
"dqdm": "4100",
"dqmc": "河南"
},
{
"effective": false,
"dqdm": "4200",
"dqmc": "湖北"
},
{
"effective": false,
"dqdm": "4300",
"dqmc": "湖南"
},
{
"effective": true,
"dqdm": "4400",
"dqmc": "广东",
"url": "https://dppt.guangdong.chinatax.gov.cn:8443/"
},
{
"effective": false,
"dqdm": "4403",
"dqmc": "深圳"
},
{
"effective": false,
"dqdm": "4500",
"dqmc": "广西"
},
{
"effective": false,
"dqdm": "4600",
"dqmc": "海南"
},
{
"effective": false,
"dqdm": "5000",
"dqmc": "重庆"
},
{
"effective": true,
"dqdm": "5100",
"dqmc": "四川",
"url": "https://dppt.sichuan.chinatax.gov.cn:8443/",
"friend": ["51510"]
},
{
"effective": false,
"dqdm": "5200",
"dqmc": "贵州"
},
{
"effective": false,
"dqdm": "5300",
"dqmc": "云南"
},
{
"effective": false,
"dqdm": "5400",
"dqmc": "西藏"
},
{
"effective": false,
"dqdm": "6100",
"dqmc": "陕西"
},
{
"effective": false,
"dqdm": "6200",
"dqmc": "甘肃"
},
{
"effective": false,
"dqdm": "6300",
"dqmc": "青海"
},
{
"effective": false,
"dqdm": "6400",
"dqmc": "宁夏"
},
{
"effective": false,
"dqdm": "6500",
"dqmc": "新疆"
},
{
"effective": true,
"dqdm": "8888",
"dqmc": "测试",
"url": "https://dppt99.guangdong.chinatax.gov.cn:8443/"
},
{
"effective": true,
"dqdm": "9999",
"dqmc": "测试",
"url": "https://dppt99.guangdong.chinatax.gov.cn:8443/"
}
]
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign",
"encryptParam": false
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
}
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign",
"encryptParam": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v2",
"encryptParam": false
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
}
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v2",
"encryptParam": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
},{
"type": "embeddedHandler",
"value": "statisticApi",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v3",
"encryptParam": false
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0012",
"valueType": "dynamic",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0012",
"valueType": "dynamic",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v3",
"encryptParam": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v4",
"encryptParam": false
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0011",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0011",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v4",
"encryptParam": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v5",
"encryptParam": false,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0011",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0011",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v5",
"encryptParam": true,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"strategy": {
"type": "etaxCallProxy",
"detail": {
"customer": {
}
}
}
}
\ No newline at end of file
{
"strategy": {
"type": "etaxCallProxy",
"detail": {
"customer": {
}
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v6",
"encryptParam": false,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0011",
"valueType": "dynamic",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0011",
"valueType": "dynamic",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v6",
"encryptParam": true,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v7",
"encryptParam": false,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v7",
"encryptParam": true,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
},{
"type": "embeddedHandler",
"value": "statisticApi",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
},{
"type": "embeddedHandler",
"value": "statisticApi",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v8",
"encryptParam": false,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v8",
"encryptParam": true,
"appendTimestamp": true
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
},{
"type": "embeddedHandler",
"value": "statisticApi",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"beforeReturn": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 1
},{
"type": "embeddedHandler",
"value": "statisticApi",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}]
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v9",
"encryptParam": false,
"appendTimestamp": false
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v9",
"encryptParam": true,
"appendTimestamp": false
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "monitorDingding",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}],
"strategy": {
"detail": {
"customer": {
"testCode": "1"
}
}
}
}
\ No newline at end of file
{
"beforeRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printLog",
"order": 1
}]
},
"afterRequest": {
"happenError": "break",
"handlerList": [{
"type": "embeddedHandler",
"value": "printSimpleLog",
"order": 1
},{
"type": "embeddedHandler",
"value": "makeoutInvoiceCallback",
"order": 2
}]
},
"parseCookieKeys": [{
"source": "dzfp-ssotoken",
"target": "dzfpSsotoken"
},{
"source": "SSO_SECURITY_CHECK_TOKEN",
"target": "sso_security_check_token"
}],
"addHeadProperties": [{
"source": "securityMesKey",
"target": "security-mes-key"
},{
"source": "lzkqow23819",
"target": "lzkqow23819"
}],
"strategy": {
"type": "",
"detail": {
"customer": {
"testCode": "1"
}
}
}
}
\ No newline at end of file
{
"encrypt": {
"url": {
"type": "sign_v_test",
"encryptParam": false,
"appendTimestamp": false
},
"param": {
"type": "dependSignApi",
"paramName": ""
}
},
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
}
}
\ No newline at end of file
{
"dependency": {
"type": "localApi",
"value": "0012",
"responseHandler": "publicKey"
},
"encrypt": {
"url": {
"type": "sign_v_test",
"encryptParam": true,
"appendTimestamp": false
},
"param": {
"type": "dependSignApi",
"paramName": "Jmbw"
}
}
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment