(1)实时报表reportTime字段修改为字符串格式

(2)实时报表回传结果解析不再使用Gson,gson会将long转为double
This commit is contained in:
wangxin
2018-07-30 14:41:27 +08:00
parent cdd83323c0
commit 235db08afb
12 changed files with 264 additions and 224 deletions

View File

@@ -40,20 +40,18 @@ import com.nis.domain.configuration.AreaIpCfg;
import com.nis.domain.configuration.BaseCfg;
import com.nis.domain.configuration.BaseIpCfg;
import com.nis.domain.configuration.ComplexStringCfgTemplate;
import com.nis.domain.configuration.template.IpCfgTemplate;
import com.nis.domain.configuration.RequestInfo;
import com.nis.domain.configuration.StringCfgTemplate;
import com.nis.domain.configuration.template.IpCfgTemplate;
import com.nis.domain.log.BaseLogEntity;
import com.nis.domain.log.SearchReport;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.Configurations;
//import com.nis.main.ConvertTool;
import com.nis.util.Constants;
import com.nis.util.DateUtil;
import com.nis.util.DateUtils;
import com.nis.util.DictUtils;
import com.nis.util.JsonMapper;
import com.nis.util.StringUtil;
import com.nis.util.excel.ExportExcel;
import com.nis.web.service.ArchiveServcie;
import com.nis.web.service.AreaService;

View File

@@ -1,7 +1,6 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -16,17 +15,18 @@ import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcDestIpReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcDestIpReportController extends BaseController {
@@ -67,29 +67,23 @@ public class NtcDestIpReportController extends BaseController {
List<String> titles=this.getDateTitiles(bean);
model.addAttribute("titles", titles);
try {
ReportResult<NtcDestIpReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_NTC_DESTIP_REPORT);
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcDestIpReport>>() {
}.getType());
Page<NtcDestIpReport> page=result.getData();
List<NtcDestIpReport> list=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
HashMap<String,Long> trimData=new HashMap<>();//数据累加去重
SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcDestIpReport report:list){
// SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcDestIpReport report:getList(json)){
String trimStr="";
if(bean.getReportType()==Constants.REPORT_TYPE_HOUR){
trimStr=report.getDestCountry().trim()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,13);
report.getReportTime().substring(0,13);
}else if(bean.getReportType()==Constants.REPORT_TYPE_DAY){
trimStr=report.getDestCountry().trim()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,10);
report.getReportTime().substring(0,10);
}else if(bean.getReportType()==Constants.REPORT_TYPE_MONTH){
trimStr=report.getDestCountry().trim()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,7);
report.getReportTime().substring(0,7);
}
if(trimData.containsKey(trimStr)){
trimData.put(trimStr, trimData.get(trimStr)+report.getSum().longValue());
@@ -137,4 +131,18 @@ public class NtcDestIpReportController extends BaseController {
// model.addAttribute("datas", showData);
return "/report/destIp";
}
public List<NtcDestIpReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcDestIpReport> result=JSONArray.toList(array, new NtcDestIpReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcDestIpReport>();
}
}

View File

@@ -1,7 +1,6 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -16,17 +15,18 @@ import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcEntranceReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcEntranceReportController extends BaseController {
@@ -67,29 +67,23 @@ public class NtcEntranceReportController extends BaseController {
List<String> titles=this.getDateTitiles(bean);
model.addAttribute("titles", titles);
try {
ReportResult<NtcEntranceReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_NTC_ENTRANCE_REPORT);
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcEntranceReport>>() {
}.getType());
Page<NtcEntranceReport> page=result.getData();
List<NtcEntranceReport> list=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
HashMap<String,Long> trimData=new HashMap<>();//数据累加去重
SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcEntranceReport report:list){
// SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcEntranceReport report:getList(json)){
String trimStr="";
if(bean.getReportType()==Constants.REPORT_TYPE_HOUR){
trimStr=report.getEntranceId().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,13);
report.getReportTime().substring(0,13);
}else if(bean.getReportType()==Constants.REPORT_TYPE_DAY){
trimStr=report.getEntranceId().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,10);
report.getReportTime().substring(0,10);
}else if(bean.getReportType()==Constants.REPORT_TYPE_MONTH){
trimStr=report.getEntranceId().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,7);
report.getReportTime().substring(0,7);
}
if(trimData.containsKey(trimStr)){
trimData.put(trimStr, trimData.get(trimStr)+report.getSum().longValue());
@@ -137,4 +131,18 @@ public class NtcEntranceReportController extends BaseController {
// model.addAttribute("datas", showData);
return "/report/entranceId";
}
public List<NtcEntranceReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcEntranceReport> result=JSONArray.toList(array, new NtcEntranceReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcEntranceReport>();
}
}

View File

@@ -1,7 +1,6 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -15,18 +14,19 @@ import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.configuration.RequestInfo;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcLwhhReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcLwhhReportController extends BaseController {
@@ -64,29 +64,23 @@ public class NtcLwhhReportController extends BaseController {
List<String> titles=this.getDateTitiles(bean);
model.addAttribute("titles", titles);
try {
ReportResult<NtcLwhhReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_NTC_LWHH_REPORT);
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcLwhhReport>>() {
}.getType());
Page<NtcLwhhReport> page=result.getData();
List<NtcLwhhReport> list=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
HashMap<String,Long> trimData=new HashMap<>();//数据累加去重
SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcLwhhReport report:list){
// SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcLwhhReport report:getList(json)){
String trimStr="";
if(bean.getReportType()==Constants.REPORT_TYPE_HOUR){
trimStr=report.getLwhh().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,13);
report.getReportTime().substring(0,13);
}else if(bean.getReportType()==Constants.REPORT_TYPE_DAY){
trimStr=report.getLwhh().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,10);
report.getReportTime().substring(0,10);
}else if(bean.getReportType()==Constants.REPORT_TYPE_MONTH){
trimStr=report.getLwhh().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,7);
report.getReportTime().substring(0,7);
}
if(trimData.containsKey(trimStr)){
trimData.put(trimStr, trimData.get(trimStr)+report.getSum().longValue());
@@ -132,4 +126,18 @@ public class NtcLwhhReportController extends BaseController {
// model.addAttribute("datas", showData);
return "/report/lwhh";
}
public List<NtcLwhhReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcLwhhReport> result=JSONArray.toList(array, new NtcLwhhReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcLwhhReport>();
}
}

View File

@@ -9,6 +9,7 @@
package com.nis.web.controller.report;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -24,19 +25,19 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcPzReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
/**
* @ClassName: NtcPzReportController.java
* @Description: TODO
@@ -64,9 +65,11 @@ public class NtcPzReportController extends BaseController{
}
}
data.put("compileId", compileId.intValue());
ReportResult<NtcPzReport> result=ConfigServiceUtil.getReport(Constants.BUSINESSTYPE_CONFIG, String.valueOf(compileId), String.valueOf(serviceId), sdf.format(startDate), sdf.format(endDate));
if(result.getData()!=null&&result.getData().getList()!=null&&result.getData().getList().size()>0){
data.put("sum", result.getData().getList().get(0).getSum().longValue());
String json=ConfigServiceUtil.getReport(Constants.BUSINESSTYPE_CONFIG, String.valueOf(compileId), String.valueOf(serviceId), sdf.format(startDate), sdf.format(endDate));
List<NtcPzReport> list=getList(json);
System.out.println("list size "+list.size());
if(list!=null&&list.size()>0){
data.put("sum",list.get(0).getSum().longValue());
}else {
data.put("sum", 0);
}
@@ -95,23 +98,31 @@ public class NtcPzReportController extends BaseController{
}
bean.setSearchService(serviceId.toString());
}
ReportResult<NtcPzReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_PZ_REPORT);
List<String> titles=this.getDateTitiles(bean);
model.addAttribute("titles", titles);
try {
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcPzReport>>() {
}.getType());
Page<NtcPzReport> page=result.getData();
List<NtcPzReport> list=page.getList();
model.addAttribute("datas", list);
String json=ConfigServiceUtil.getReport(url.toString(), bean);
model.addAttribute("datas", getList(json));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return "/report/pz";
}
public List<NtcPzReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcPzReport> result=JSONArray.toList(array, new NtcPzReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcPzReport>();
}
}

View File

@@ -1,6 +1,7 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -14,17 +15,18 @@ import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcServiceReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcServiceReportController extends BaseController {
@@ -58,15 +60,10 @@ public class NtcServiceReportController extends BaseController {
// TODO Auto-generated catch block
e1.printStackTrace();
}
ReportResult<NtcServiceReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_SERVICE_REPORT);
try {
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcServiceReport>>() {
}.getType());
Page<NtcServiceReport> page=result.getData();
List<NtcServiceReport> data=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
List<NtcServiceReport> data=getList(json);
for(NtcServiceReport report:data){
if(datas.containsKey(report.getService().toString())){
datas.put(report.getService().toString(), datas.get(report.getService().toString())+report.getSum().longValue());
@@ -83,4 +80,18 @@ public class NtcServiceReportController extends BaseController {
// }
return datas;
}
public List<NtcServiceReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcServiceReport> result=JSONArray.toList(array, new NtcServiceReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcServiceReport>();
}
}

View File

@@ -1,7 +1,6 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -16,16 +15,18 @@ import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcSrcipDomesticReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcSrcipDomesticReportController extends BaseController {
@@ -96,32 +97,28 @@ public class NtcSrcipDomesticReportController extends BaseController {
// e.printStackTrace();
// }
try {
ReportResult<NtcSrcipDomesticReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_NTC_SRCIP_REPORT);
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcSrcipDomesticReport>>() {
}.getType());
Page<NtcSrcipDomesticReport> page=result.getData();
List<NtcSrcipDomesticReport> list=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
List<NtcSrcipDomesticReport> list=getList(json);
HashMap<String,Long> trimData=new HashMap<>();//数据累加去重
SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
// SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcSrcipDomesticReport report:list){
String trimStr="";
if(bean.getReportType()==Constants.REPORT_TYPE_HOUR){
trimStr=report.getSrcProvince().trim()+Constants.REPORT_TRIM_CONNECTOR+
report.getSrcCity().trim()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,13);
report.getReportTime().substring(0,13);
}else if(bean.getReportType()==Constants.REPORT_TYPE_DAY){
trimStr=report.getSrcProvince().trim()+Constants.REPORT_TRIM_CONNECTOR+
report.getSrcCity().trim()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,10);
report.getReportTime().substring(0,10);
}else if(bean.getReportType()==Constants.REPORT_TYPE_MONTH){
trimStr=report.getSrcProvince().trim()+Constants.REPORT_TRIM_CONNECTOR+
report.getSrcCity().trim()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,7);
report.getReportTime().substring(0,7);
}
if(trimData.containsKey(trimStr)){
trimData.put(trimStr, trimData.get(trimStr)+report.getSum().longValue());
@@ -171,4 +168,18 @@ public class NtcSrcipDomesticReportController extends BaseController {
// model.addAttribute("datas", showData);
return "/report/srcIp";
}
public List<NtcSrcipDomesticReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcSrcipDomesticReport> result=JSONArray.toList(array, new NtcSrcipDomesticReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcSrcipDomesticReport>();
}
}

View File

@@ -1,7 +1,6 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -15,18 +14,19 @@ import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcTagReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcTagReportController extends BaseController {
@@ -65,29 +65,24 @@ public class NtcTagReportController extends BaseController {
List<String> titles=this.getDateTitiles(bean);
model.addAttribute("titles", titles);
try {
ReportResult<NtcTagReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_TAG_REPORT);
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcTagReport>>() {
}.getType());
Page<NtcTagReport> page=result.getData();
List<NtcTagReport> list=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
List<NtcTagReport> list=getList(json);
HashMap<String,Long> trimData=new HashMap<>();//数据累加去重
SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
//SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcTagReport report:list){
String trimStr="";
if(bean.getReportType()==Constants.REPORT_TYPE_HOUR){
trimStr=report.getTag().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,13);
report.getReportTime().substring(0,13);
}else if(bean.getReportType()==Constants.REPORT_TYPE_DAY){
trimStr=report.getTag().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,10);
report.getReportTime().substring(0,10);
}else if(bean.getReportType()==Constants.REPORT_TYPE_MONTH){
trimStr=report.getTag().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,7);
report.getReportTime().substring(0,7);
}
if(trimData.containsKey(trimStr)){
trimData.put(trimStr, trimData.get(trimStr)+report.getSum().longValue());
@@ -133,4 +128,18 @@ public class NtcTagReportController extends BaseController {
// model.addAttribute("datas", showData);
return "/report/label";
}
public List<NtcTagReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcTagReport> result=JSONArray.toList(array, new NtcTagReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcTagReport>();
}
}

View File

@@ -1,7 +1,6 @@
package com.nis.web.controller.report;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
@@ -16,17 +15,19 @@ import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.basics.ServiceDictInfo;
import com.nis.domain.log.SearchReport;
import com.nis.domain.report.NtcAttrTypeReport;
import com.nis.domain.report.ReportResult;
import com.nis.util.ConfigServiceUtil;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.web.controller.BaseController;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import net.sf.json.JsonConfig;
@Controller
@RequestMapping("${adminPath}/report")
public class NtcXzReportController extends BaseController {
@@ -67,29 +68,25 @@ public class NtcXzReportController extends BaseController {
List<String> titles=this.getDateTitiles(bean);
model.addAttribute("titles", titles);
try {
ReportResult<NtcAttrTypeReport> result=new ReportResult<>();
StringBuffer url=new StringBuffer(Constants.LOG_BASE_URL+Constants.NTC_ATTRTYPE_REPORT);
Gson gson=Constants.gsonbuilder.create();
String json=result.getReport(url.toString(), bean);
result = gson.fromJson(json, new TypeToken<ReportResult<NtcAttrTypeReport>>() {
}.getType());
Page<NtcAttrTypeReport> page=result.getData();
List<NtcAttrTypeReport> list=page.getList();
String json=ConfigServiceUtil.getReport(url.toString(), bean);
List<NtcAttrTypeReport> list=getList(json);
HashMap<String,Long> trimData=new HashMap<>();//数据累加去重
SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
// SimpleDateFormat sdf=new SimpleDateFormat(Constants.SEARCH_DATEFORMAT);
for(NtcAttrTypeReport report:list){
String trimStr="";
if(bean.getReportType()==Constants.REPORT_TYPE_HOUR){
trimStr=report.getAttrType().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,13);
report.getReportTime().substring(0,13);
}else if(bean.getReportType()==Constants.REPORT_TYPE_DAY){
trimStr=report.getAttrType().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,10);
report.getReportTime().substring(0,10);
}else if(bean.getReportType()==Constants.REPORT_TYPE_MONTH){
trimStr=report.getAttrType().intValue()+Constants.REPORT_TRIM_CONNECTOR+
sdf.format(report.getReportTime()).substring(0,7);
report.getReportTime().substring(0,7);
}
if(trimData.containsKey(trimStr)){
trimData.put(trimStr, trimData.get(trimStr)+report.getSum().longValue());
@@ -135,4 +132,18 @@ public class NtcXzReportController extends BaseController {
// model.addAttribute("datas", showData);
return "/report/attrType";
}
public List<NtcAttrTypeReport> getList(String json){
JSONObject obj=JSONObject.fromObject(json);
if(obj.containsKey("data")) {
JSONObject data= obj.getJSONObject("data");
if(data.containsKey("list")) {
Object list=data.get("list");
JSONArray array=JSONArray.fromObject(list);
List<NtcAttrTypeReport> result=JSONArray.toList(array, new NtcAttrTypeReport(),new JsonConfig());
return result;
}
}
return new ArrayList<NtcAttrTypeReport>();
}
}