Commit 842a3b07 LN

1053:1.料仓显示名称修改,日志类型全部用大写。2.增加eventLog接口。3.增加errorReport报表接口。

1 个父辈 264be864
package com.neotel.smfcore.core.message.rest; package com.neotel.smfcore.core.message.rest;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.google.common.collect.Lists;
import com.neotel.smfcore.common.base.IExcelDownLoad;
import com.neotel.smfcore.common.bean.PageData; import com.neotel.smfcore.common.bean.PageData;
import com.neotel.smfcore.common.utils.FileUtil;
import com.neotel.smfcore.common.utils.QueryHelp; import com.neotel.smfcore.common.utils.QueryHelp;
import com.neotel.smfcore.core.language.util.MessageUtils; import com.neotel.smfcore.core.language.util.MessageUtils;
import com.neotel.smfcore.core.message.rest.bean.dto.MessageDto; import com.neotel.smfcore.core.message.rest.bean.dto.MessageDto;
...@@ -26,7 +29,12 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -26,7 +29,12 @@ import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Locale;
@Slf4j @Slf4j
@RestController @RestController
...@@ -73,12 +81,15 @@ public class MessageController { ...@@ -73,12 +81,15 @@ public class MessageController {
return typeList; return typeList;
} }
@ApiOperation("消息统计,根据模块名统计") @ApiOperation("msgReport消息统计,根据模块名统计")
@GetMapping(value = "/msgCount") @GetMapping(value = "/msgReportCount")
@AnonymousAccess @AnonymousAccess
public List<MsgCountDto> msgCount(MessageCriteria criteria, HttpServletRequest request) { public List<MsgCountDto> msgReportCount(MessageCriteria criteria, HttpServletRequest request) {
// Query query = QueryHelp.getQuery(criteria); return getMsgReportList(criteria, request.getLocale());
}
private List<MsgCountDto> getMsgReportList(MessageCriteria criteria,Locale locale) {
Criteria c = Criteria.where("type").is("ERROR"); Criteria c = Criteria.where("type").is("ERROR");
if (ObjectUtil.isNotEmpty(criteria.getDeviceName())) { if (ObjectUtil.isNotEmpty(criteria.getDeviceName())) {
c.and("deviceName").is(criteria.getDeviceName()); c.and("deviceName").is(criteria.getDeviceName());
...@@ -93,7 +104,7 @@ public class MessageController { ...@@ -93,7 +104,7 @@ public class MessageController {
// List<MessageDto> dtos=messageMapper.toDto(list); // List<MessageDto> dtos=messageMapper.toDto(list);
for (int i = 0; i < list.size(); i++) { for (int i = 0; i < list.size(); i++) {
if (ObjectUtil.isNotEmpty(list.get(i).getMsgCode())) { if (ObjectUtil.isNotEmpty(list.get(i).getMsgCode())) {
list.get(i).setMsg(MessageUtils.getText(list.get(i).getMsgCode(), list.get(i).getMsgParams(), request.getLocale(), list.get(i).getId())); list.get(i).setMsg(MessageUtils.getText(list.get(i).getMsgCode(), list.get(i).getMsgParams(), locale, list.get(i).getId()));
} else { } else {
list.get(i).setMsg(list.get(i).getId()); list.get(i).setMsg(list.get(i).getId());
} }
...@@ -101,4 +112,40 @@ public class MessageController { ...@@ -101,4 +112,40 @@ public class MessageController {
return list; return list;
} }
@ApiOperation("msgReport消息统计下载")
@GetMapping(value = "/msgReportCount/download")
@AnonymousAccess
public void msgReportCountDownload(MessageCriteria criteria, HttpServletRequest servletRequest,HttpServletResponse response) throws IOException {
Locale locale=servletRequest.getLocale() ;
List<MsgCountDto> list=getMsgReportList(criteria,locale);
//导出
log.info("开始导出 msgReportCount ");
FileUtil.downloadExcel(null, null, response, new IExcelDownLoad() {
@Override
public List<List<String>> getHeader() {
List<List<String>> header = new ArrayList<>();
header.add(Lists.newArrayList(MessageUtils.getSmfClientMsg("smfclient.msgReportCount.msg",locale,"错误类型")));
header.add(Lists.newArrayList(MessageUtils.getSmfClientMsg("smfclient.msgReportCount.count",locale,"数量")));
return header;
}
@Override
public List<List<Object>> getPageData(Query query, Pageable pageable) {
List<List<Object>> dataList = new ArrayList<>();
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for (MsgCountDto dto : list) {
List<Object> data = new ArrayList<>();
data.add(dto.getMsg());
data.add(dto.getCount());
dataList.add(data);
}
return dataList;
}
});
log.info("msgReportCount 导出完成");
}
} }
...@@ -23,12 +23,12 @@ public class MicronEquipStatus implements Serializable { ...@@ -23,12 +23,12 @@ public class MicronEquipStatus implements Serializable {
/** /**
* 左边代表l1,l2,1=正常运行,2=报警。3=入库中,4=出库中,5=满料待取出 * 左边代表l1,l2,1=正常运行,2=报警。3=入库中,4=出库中,5=满料待取出
*/ */
private int P1status; private int p1status;
/** /**
* 右边代表R1R21,1=正常运行,2=报警。3=入库中,4=出库中,5=满料待取出 * 右边代表R1R21,1=正常运行,2=报警。3=入库中,4=出库中,5=满料待取出
*/ */
private int P2status; private int p2status;
/** /**
* 当name为ML5-R1对应右侧的ng,ML5-L1对应左侧的ng * 当name为ML5-R1对应右侧的ng,ML5-L1对应左侧的ng
*/ */
......
...@@ -204,7 +204,6 @@ public class MicronReportController { ...@@ -204,7 +204,6 @@ public class MicronReportController {
@GetMapping("/eventLog") @GetMapping("/eventLog")
@AnonymousAccess @AnonymousAccess
public PageData<MessageDto> eventLog(MessageCriteria criteria, Pageable pageable, HttpServletRequest request){ public PageData<MessageDto> eventLog(MessageCriteria criteria, Pageable pageable, HttpServletRequest request){
criteria.setType("INFO"); criteria.setType("INFO");
Query query = QueryHelp.getQuery(criteria); Query query = QueryHelp.getQuery(criteria);
PageData<Message> messagePageData=messageManager.findByPage(query,pageable); PageData<Message> messagePageData=messageManager.findByPage(query,pageable);
...@@ -216,4 +215,44 @@ public class MicronReportController { ...@@ -216,4 +215,44 @@ public class MicronReportController {
} }
return new PageData(dtos,messagePageData.getTotalElements()); return new PageData(dtos,messagePageData.getTotalElements());
} }
@ApiOperation("eventLog:导出")
@RequestMapping("/eventLog/download")
@AnonymousAccess
public void eventLogDownload( MessageCriteria criteria, Pageable pageable,HttpServletRequest servletRequest,HttpServletResponse response) throws IOException {
Locale locale=servletRequest.getLocale();
log.info("开始导出 eventLog ");
criteria.setType("INFO");
Query query = QueryHelp.getQuery(criteria);
FileUtil.downloadExcel(query, pageable, response, new IExcelDownLoad() {
@Override
public List<List<String>> getHeader() {
List<List<String>> header = new ArrayList<>();
header.add(Lists.newArrayList(MessageUtils.getSmfClientMsg("smfclient.utilization.deviceName",locale,"设备名称")));
header.add(Lists.newArrayList(MessageUtils.getSmfClientMsg("smfclient.infoFind.mess",locale,"消息")));
header.add(Lists.newArrayList(MessageUtils.getSmfClientMsg("smfclient.NeoLight.createDate",locale,"创建时间")));
return header;
}
@Override
public List<List<Object>> getPageData(Query query, Pageable pageable) {
List<List<Object>> dataList = new ArrayList<>();
PageData<Message> messagePageData=messageManager.findByPage(query,pageable);
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for (Message msg : messagePageData.getContent()) {
String createDate = dateFormat.format(msg.getCreateDate());
List<Object> data = new ArrayList<>();
data.add(msg.getDeviceName());
data.add(msg.getShowMsg(locale));
data.add(createDate);
dataList.add(data);
}
return dataList;
}
});
log.info("eventLog 导出完成");
}
} }
...@@ -192,6 +192,15 @@ public class MicronStatusController { ...@@ -192,6 +192,15 @@ public class MicronStatusController {
if (s.timeOut()) { if (s.timeOut()) {
} else { } else {
//更改名称
String cid=s.getCid().replaceFirst("AMH-","");
if(cid.endsWith("-1")){
cid= cid.replace("-1","-B");
}else if(cid.endsWith("-2")){
cid= cid.replace("-1","-A");
}
if (s.getStatus() == 2||s.getStatus()==3) { if (s.getStatus() == 2||s.getStatus()==3) {
dto.setStatus(2); dto.setStatus(2);
} }
...@@ -204,7 +213,7 @@ public class MicronStatusController { ...@@ -204,7 +213,7 @@ public class MicronStatusController {
for (String msg : for (String msg :
msgMap.keySet()) { msgMap.keySet()) {
String type= msgMap.getOrDefault(msg, ""); String type= msgMap.getOrDefault(msg, "");
dto.getMsgList().add(new EquipMsg(s.getCid(), s.getStatus(), msg, new Date(s.getTime()), type, "", "", new String[]{})); dto.getMsgList().add(new EquipMsg(cid, s.getStatus(), msg, new Date(s.getTime()), type.toUpperCase(), "", "", new String[]{}));
} }
} }
// String msg=s.getErrorMsg(locale); // String msg=s.getErrorMsg(locale);
......
...@@ -47,6 +47,10 @@ public class MicronDataCache { ...@@ -47,6 +47,10 @@ public class MicronDataCache {
if(msg.getTime()==null){ if(msg.getTime()==null){
msg.setTime(new Date()); msg.setTime(new Date());
} }
if(ObjectUtil.isNotEmpty(msg.getType())){
String type=msg.getType().toUpperCase();
msg.setType(type);
}
//判断是否需要保存到数据 //判断是否需要保存到数据
if(!oldMsgs.contains(msg.getMsg())){ if(!oldMsgs.contains(msg.getMsg())){
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!