Commit 61a1cd6e by 284718418@qq.com

Merge remote-tracking branch 'origin/feature_20220317_policy' into develop

# Conflicts:
#	src/main/java/cn/timer/api/utils/HttpUtils.java
parents bc3319a7 64ec8190
...@@ -13,6 +13,7 @@ import cn.timer.api.dao.insure.InsureUserMapper; ...@@ -13,6 +13,7 @@ import cn.timer.api.dao.insure.InsureUserMapper;
import cn.timer.api.dto.insure.InsureDto; import cn.timer.api.dto.insure.InsureDto;
import cn.timer.api.dto.insure.InsureUserDto; import cn.timer.api.dto.insure.InsureUserDto;
import cn.timer.api.dto.insure.PolicyDto; import cn.timer.api.dto.insure.PolicyDto;
import cn.timer.api.utils.ExcelUtils;
import cn.timer.api.utils.Page; import cn.timer.api.utils.Page;
import cn.timer.api.utils.Result; import cn.timer.api.utils.Result;
import cn.timer.api.utils.ResultUtil; import cn.timer.api.utils.ResultUtil;
...@@ -22,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; ...@@ -22,6 +23,7 @@ import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -91,4 +93,23 @@ public class InsureUserController{ ...@@ -91,4 +93,23 @@ public class InsureUserController{
return ResultUtil.data(userList); return ResultUtil.data(userList);
} }
@PostMapping(value = "/exportUserList")
@ApiOperation(value = "导出列表", httpMethod = "GET", notes = "导出列表")
public void exportUserList(@RequestParam("policyId") String policyId,
@RequestParam("status") String status,
@RequestParam("name") String name,
@RequestParam("policyDateStart") String policyDateStart,
@RequestParam("planId") String planId,
@RequestParam("categoryId") String categoryId){
PolicyDto policyDto = new PolicyDto();
policyDto.setId(Integer.parseInt(policyId));
policyDto.setStatus(status);
policyDto.setName(name);
policyDto.setPolicyDateStart(policyDateStart);
policyDto.setPlanId(planId);
policyDto.setCategoryId(categoryId);
List<PolicyDto> list = insureUserMapper.selectPolicyList(policyDto);
String[] rowName = new String[]{"ID", "name", "ID_type", "ID_number", "Scheme_name", "Date_start", "Branch", "Tricycle_frame_number", "benefit_occupation_category"};
/*XSSFWorkbook xssfWorkbook = ExcelUtils.exportExcel("导出人员清单.xlsx", rowName, list);*/
}
} }
package cn.timer.api.controller.insure.enums; package cn.timer.api.controller.insure.enums;
import io.swagger.models.auth.In; import cn.timer.api.utils.ExcelUtils;
import lombok.Data;
/** /**
* @Description TODO * @Description TODO
* @Author wgd * @Author wgd
* @Date 2022/3/24 17:20 * @Date 2022/3/24 17:20
*/ */
public enum InsuranceEnum { public enum PlanEnum {
A_30(12,"30万意外/3万医疗/扩展24小时(A类)","A类","36968","63119"), A_30(12,"30万意外/3万医疗/扩展24小时(A类)","A类","36968","63119"),
A_50(15,"50万意外/5万医疗/扩展24小时(A类)","A类","36969","63119"), A_50(15,"50万意外/5万医疗/扩展24小时(A类)","A类","36969","63119"),
A_80(18,"80万意外/10万医疗/扩展24小时(A类)","A类","36970","63119"), A_80(18,"80万意外/10万医疗/扩展24小时(A类)","A类","36970","63119"),
...@@ -27,7 +26,7 @@ public enum InsuranceEnum { ...@@ -27,7 +26,7 @@ public enum InsuranceEnum {
private String plan; private String plan;
private String category; private String category;
InsuranceEnum(Integer price, String name,String type,String plan,String category) { PlanEnum(Integer price, String name, String type, String plan, String category) {
this.price = price; this.price = price;
this.name = name; this.name = name;
this.type=type; this.type=type;
...@@ -75,11 +74,14 @@ public enum InsuranceEnum { ...@@ -75,11 +74,14 @@ public enum InsuranceEnum {
this.category = category; this.category = category;
} }
public static InsuranceEnum getEnum(String plan,String category) { public static PlanEnum getEnum(String plan, String category) {
for(InsuranceEnum v : values()) for(PlanEnum v : values())
if(v.getPlan().equals(plan)&&v.getCategory().equals(category)) return v; if(v.getPlan().equals(plan)&&v.getCategory().equals(category)) return v;
throw new IllegalArgumentException(); throw new IllegalArgumentException();
} }
public static PlanEnum getEnumOfName(String name){
for(PlanEnum v : values())
if(v.getName().equals(name)) return v;
throw new IllegalArgumentException();
}
} }
package cn.timer.api.utils; package cn.timer.api.utils;
import java.io.*; import java.io.*;
import java.net.ConnectException; import java.net.*;
import java.net.SocketTimeoutException;
import java.net.URL;
import java.net.URLConnection;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.security.cert.X509Certificate; import java.security.cert.X509Certificate;
import java.util.Map; import java.util.Map;
...@@ -14,6 +11,15 @@ import javax.net.ssl.SSLContext; ...@@ -14,6 +11,15 @@ import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession; import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager; import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager; import javax.net.ssl.X509TrustManager;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -35,59 +41,44 @@ public class HttpUtils ...@@ -35,59 +41,44 @@ public class HttpUtils
* @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。 * @param param 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
* @return 所代表远程资源的响应结果 * @return 所代表远程资源的响应结果
*/ */
public static String sendGet(String url, String param) public static String sendGet(String url, Map<String, String> param)
{ { // 创建Httpclient对象
StringBuilder result = new StringBuilder(); CloseableHttpClient httpclient = HttpClients.createDefault();
BufferedReader in = null;
try String resultString = "";
{ CloseableHttpResponse response = null;
String urlNameString = url + "?" + param; try {
log.info("sendGet - {}", urlNameString); // 创建uri
URL realUrl = new URL(urlNameString); URIBuilder builder = new URIBuilder(url);
HttpsURLConnection connection = (HttpsURLConnection)realUrl.openConnection(); if (param != null) {
connection.setRequestProperty("accept", "*/*"); for (String key : param.keySet()) {
connection.setRequestProperty("connection", "Keep-Alive"); builder.addParameter(key, param.get(key));
connection.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36)");
connection.connect();
in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
while ((line = in.readLine()) != null)
{
result.append(line);
}
log.info("recv - {}", result);
}
catch (ConnectException e)
{
log.error("调用HttpUtils.sendGet ConnectException, url=" + url + ",param=" + param, e);
}
catch (SocketTimeoutException e)
{
log.error("调用HttpUtils.sendGet SocketTimeoutException, url=" + url + ",param=" + param, e);
}
catch (IOException e)
{
log.error("调用HttpUtils.sendGet IOException, url=" + url + ",param=" + param, e);
}
catch (Exception e)
{
log.error("调用HttpsUtil.sendGet Exception, url=" + url + ",param=" + param, e);
}
finally
{
try
{
if (in != null)
{
in.close();
} }
} }
catch (Exception ex) URI uri = builder.build();
{
log.error("调用in.close Exception, url=" + url + ",param=" + param, ex); // 创建http GET请求
HttpGet httpGet = new HttpGet(uri);
// 执行请求
response = httpclient.execute(httpGet);
// 判断返回状态是否为200
if (response.getStatusLine().getStatusCode() == 200) {
resultString = EntityUtils.toString(response.getEntity(), "UTF-8");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (response != null) {
response.close();
}
httpclient.close();
} catch (IOException e) {
e.printStackTrace();
} }
} }
return result.toString(); return resultString;
} }
/** /**
......
...@@ -244,6 +244,9 @@ insure: ...@@ -244,6 +244,9 @@ insure:
secret: 'acb329868c31d5b3ba03de40dac13dd9' secret: 'acb329868c31d5b3ba03de40dac13dd9'
uploadUrl: 'http://sandbox.portal.unistar-ins.com/service/Home/Index/fileUpload' uploadUrl: 'http://sandbox.portal.unistar-ins.com/service/Home/Index/fileUpload'
insuredUrl: 'http://sandbox.portal.unistar-ins.com/mall/Home/Index/createQuotePolicy' insuredUrl: 'http://sandbox.portal.unistar-ins.com/mall/Home/Index/createQuotePolicy'
#查询保单信息
policyDetail: 'http://sandbox.portal.unistar-ins.com/issuing/Home/Index/policy'
#保全 #保全
appidq: '1000115041006006938' appidq: '1000115041006006938'
secretq: '6ba1bf4aa0bd14368c95ff0b9934a17b' secretq: '6ba1bf4aa0bd14368c95ff0b9934a17b'
...@@ -252,3 +255,19 @@ insure: ...@@ -252,3 +255,19 @@ insure:
# base_api_url # base_api_url
BASE_API_URL: 'http://test-8timer-api.youlingrc.com' BASE_API_URL: 'http://test-8timer-api.youlingrc.com'
#sftp 配置
sftp:
client:
protocol: 'sftp'
host: '120.78.162.177'
port: '22'
username: 'root'
password: 'fksdlfjs(*&&%HGgjfkdjsfhksh9781283KFHFFGHghhndbv##2@'
root: '/home'
sessionStrictHostKeyChecking: 'no'
sessionConnectTimeout: '15000'
channelConnectedTimeout: '15000'
serverUrl: 'https://test-img.8timer.cn'
targetPath: '/disk'
reservedName: false
...@@ -245,6 +245,8 @@ insure: ...@@ -245,6 +245,8 @@ insure:
secret: '1ef7b79471be7f6b5489832c65109f81' secret: '1ef7b79471be7f6b5489832c65109f81'
uploadUrl: 'https://portal-unistar-ins.com /service/Home/Index/fileUpload' uploadUrl: 'https://portal-unistar-ins.com /service/Home/Index/fileUpload'
insuredUrl: 'https://portal.unistar-ins.com/mall/Home/Index/createQuotePolicy' insuredUrl: 'https://portal.unistar-ins.com/mall/Home/Index/createQuotePolicy'
#查询保单信息
policyDetail: 'https://portal.unistar-ins.com/issuing/Home/Index/policy'
#保全 #保全
appidq: '1000711000604326196' appidq: '1000711000604326196'
secretq: 'a2da17a2797c63dff9172df50af9da65' secretq: 'a2da17a2797c63dff9172df50af9da65'
......
...@@ -244,6 +244,9 @@ insure: ...@@ -244,6 +244,9 @@ insure:
secret: 'acb329868c31d5b3ba03de40dac13dd9' secret: 'acb329868c31d5b3ba03de40dac13dd9'
uploadUrl: 'http://sandbox.portal.unistar-ins.com/service/Home/Index/fileUpload' uploadUrl: 'http://sandbox.portal.unistar-ins.com/service/Home/Index/fileUpload'
insuredUrl: 'http://sandbox.portal.unistar-ins.com/mall/Home/Index/createQuotePolicy' insuredUrl: 'http://sandbox.portal.unistar-ins.com/mall/Home/Index/createQuotePolicy'
#查询保单信息
policyDetail: 'http://sandbox.portal.unistar-ins.com/issuing/Home/Index/policy'
#保全 #保全
appidq: '1000115041006006938' appidq: '1000115041006006938'
secretq: '6ba1bf4aa0bd14368c95ff0b9934a17b' secretq: '6ba1bf4aa0bd14368c95ff0b9934a17b'
......
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