新增openVPN的日志导出
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.nis.web.controller.log.ntc;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -8,12 +9,14 @@ import java.util.Map;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.http.client.ClientProtocolException;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
@@ -21,7 +24,9 @@ import com.google.gson.reflect.TypeToken;
|
||||
import com.nis.domain.FunctionServiceDict;
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.PageLog;
|
||||
import com.nis.domain.SysUser;
|
||||
import com.nis.domain.log.MmVoipLog;
|
||||
import com.nis.domain.log.NtcCollectRadiusLog;
|
||||
import com.nis.domain.log.NtcOpenVpnLog;
|
||||
import com.nis.domain.log.NtcOpenVpnLog;
|
||||
import com.nis.domain.maat.LogRecvData;
|
||||
@@ -29,6 +34,7 @@ import com.nis.util.Constants;
|
||||
import com.nis.util.DictUtils;
|
||||
import com.nis.util.httpclient.HttpClientUtil;
|
||||
import com.nis.web.controller.BaseController;
|
||||
import com.nis.web.security.UserUtils;
|
||||
|
||||
@Controller
|
||||
@RequestMapping(value = "${adminPath}/log/ntc/ntcOpenvpnLogs")
|
||||
@@ -60,6 +66,7 @@ public class OpenVpnLogController extends BaseController{
|
||||
|
||||
String url = "";
|
||||
url = Constants.LOG_BASE_URL+Constants.NTC_OPENVPN_LOG;
|
||||
//url = Constants.LOG_BASE_URL+Constants.NTC_IP_LOG;
|
||||
String jsonString = HttpClientUtil.getMsg(url,params,request);
|
||||
|
||||
Gson gson = new GsonBuilder().create();
|
||||
@@ -86,4 +93,56 @@ public class OpenVpnLogController extends BaseController{
|
||||
return "/log/ntc/openVpnList";
|
||||
}
|
||||
|
||||
//radius配置导出
|
||||
@RequestMapping(value = "exportNtcOpenvpnLogs")
|
||||
public void exportRadius(@ModelAttribute("log") NtcOpenVpnLog log, Model model,String hColumns,String type, HttpServletRequest request, HttpServletResponse response,RedirectAttributes redirectAttributes){
|
||||
try {
|
||||
//export data info
|
||||
List<String> titleList=new ArrayList<String>();
|
||||
Map<String, Class<?>> classMap=new HashMap<String, Class<?>>();
|
||||
Map<String, List> dataMap=new HashMap<String, List>();
|
||||
Map<String, String> noExportMap=new HashMap<String, String>();
|
||||
//---------------------------
|
||||
PageLog<NtcOpenVpnLog> page = new PageLog<NtcOpenVpnLog>(request, response);
|
||||
page.setPageNo(1);
|
||||
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
|
||||
Map<String, Object> params = new HashMap<String, Object>();
|
||||
params.put("pageSize", page.getPageSize());
|
||||
params.put("pageNo", page.getPageNo());
|
||||
initLogSearchValue(log, params);
|
||||
List<NtcOpenVpnLog> list=new ArrayList<NtcOpenVpnLog>();
|
||||
String url =Constants.LOG_BASE_URL + Constants.NTC_OPENVPN_LOG;
|
||||
//String url =Constants.LOG_BASE_URL + Constants.NTC_IP_LOG;
|
||||
String recv = HttpClientUtil.getMsg(url, params, request);
|
||||
if (StringUtils.isNotBlank(recv)) {
|
||||
Gson gson = new GsonBuilder().create();
|
||||
LogRecvData<NtcOpenVpnLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcOpenVpnLog>>(){}.getType());
|
||||
if (fromJson.getStatus().intValue() == 200) {
|
||||
Page<NtcOpenVpnLog> data = fromJson.getData();
|
||||
list= data.getList();
|
||||
}
|
||||
}
|
||||
titleList.add("openVpn_log");
|
||||
classMap.put("openVpn_log", NtcOpenVpnLog.class);
|
||||
SysUser user =UserUtils.getUser();
|
||||
if (!user.isAdmin()){
|
||||
hColumns+=",scene_file,";
|
||||
}else{
|
||||
hColumns+=",";
|
||||
}
|
||||
String cfgIndexInfoNoExport=",cfg_id,action,"+hColumns;
|
||||
noExportMap.put("openVpn_log",cfgIndexInfoNoExport);
|
||||
dataMap.put("openVpn_log",list);
|
||||
/*}*/
|
||||
if("csv".equals(type)){
|
||||
this._exportCsv(model, request, response, redirectAttributes,"openVpn_log",titleList,classMap,dataMap,noExportMap);
|
||||
}else{
|
||||
this._export(model, request, response, redirectAttributes,"openVpn_log",titleList,classMap,dataMap,noExportMap);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.error("openVpn export failed",e);
|
||||
addMessage(redirectAttributes,"error","export_failed");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user