|
@@ -231,7 +231,7 @@ public class DeviceServiceImpl implements DeviceService {
|
|
|
}
|
|
|
}else {
|
|
|
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
- String[] rowsName = new String[]{"序号", "设备状态", "设备编号", "水表档案编号", "水表电子号", "集中器编码", "采集器编码", "水表厂商", "客户", "小区", "建筑", "安装地址", "故障类型", "连续故障天数", "水表当前读数", "最后一次更新时间","阀门控制","出厂时间","安装时间","验收时间"};
|
|
|
+ String[] rowsName = new String[]{"序号", "设备状态", "设备编号", "水表档案编号", "水表电子号", "集中器编码", "采集器编码", "设备型号", "客户", "小区", "建筑", "安装地址", "告警类型", "连续故障天数", "当前读数", "最后上报时间","阀门控制","出厂时间","创建时间","验收时间"};
|
|
|
List<Object[]> dataList = newArrayList();
|
|
|
Object[] objs = null;
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
@@ -244,7 +244,7 @@ public class DeviceServiceImpl implements DeviceService {
|
|
|
objs[4] = deviceDto.getWaterMeterNo();
|
|
|
objs[5] = deviceDto.getConcentratorName();
|
|
|
objs[6] = deviceDto.getCollectorName();
|
|
|
- objs[7] = deviceDto.getManufacturerName();
|
|
|
+ objs[7] = deviceDto.getManufacturerName()+"/"+deviceDto.getEquipmentType()+"/"+deviceDto.getManufacturerName();
|
|
|
objs[8] = deviceDto.getCustomerName();
|
|
|
objs[9] = deviceDto.getCommunityName();
|
|
|
objs[10] = deviceDto.getBuildingName();
|
|
@@ -293,6 +293,70 @@ public class DeviceServiceImpl implements DeviceService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void getDeviceListExcelV2(Integer sysId, Integer buildingId, String deviceNo, Integer status, Integer manufacturerId, String equipmentType, String model, Integer isTag, Integer floor, String locDesc, Integer province, Integer city, Integer region, Integer community, String concentratorNo, String collectorNo, String errorType, Integer customerId, Integer days, Integer startDays, Integer endDays, Integer deviceTypeId, Integer valveStatus, Integer registerStatus, Integer issueStatus, Integer syncStatus, Double startReading, Double endReading, String sortColumn, String sortOrder, HttpServletResponse httpServletResponse) {
|
|
|
+ LoginUser loginUser = UserUtil.getCurrentUser();
|
|
|
+
|
|
|
+ List<DeviceDto> list = deviceMapper.getList(sysId, buildingId, loginUser.getSiteId(), UserUtil.getCurrentSiteProgramItems(loginUser), deviceNo, status, manufacturerId,
|
|
|
+ equipmentType, model, isTag, floor, locDesc, province, city, region, community, concentratorNo, collectorNo, errorType, customerId,
|
|
|
+ days, startDays, endDays, deviceTypeId, valveStatus, registerStatus, issueStatus, syncStatus, startReading, endReading, sortColumn, sortOrder);
|
|
|
+ String title = "设备列表";
|
|
|
+ //判断是否是水表场景
|
|
|
+ WMeterType wMeterType = wMeterTypeMapper.getChannelIdAndLevel(sysId, 2);
|
|
|
+ Channel channel = channelMapper.findById(sysId);
|
|
|
+ if (wMeterType != null || sysId == -99) {
|
|
|
+ DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
+ String[] rowsName = new String[]{"序号", "设备编号", "水表电子号", "设备型号", "建筑", "安装地址", "设备状态", "当前读数", "最后上报时间"};
|
|
|
+ List<Object[]> dataList = newArrayList();
|
|
|
+ Object[] objs = null;
|
|
|
+ for (int i = 0; i < list.size(); i++) {
|
|
|
+ DeviceDto deviceDto = list.get(i);
|
|
|
+ objs = new Object[rowsName.length];
|
|
|
+ objs[0] = i;
|
|
|
+ objs[1] = deviceDto.getDeviceNo();
|
|
|
+ objs[2] = deviceDto.getWaterMeterNo();
|
|
|
+ objs[3] = deviceDto.getManufacturerName()+"/"+deviceDto.getEquipmentType()+"/"+deviceDto.getManufacturerName();
|
|
|
+ objs[4] = deviceDto.getBuildingName();
|
|
|
+ objs[5] = deviceDto.getLocDesc();
|
|
|
+ objs[6] = this.getDeviceStatusName(deviceDto.getDeviceStatus());
|
|
|
+ objs[7] = deviceDto.getMeterReading();
|
|
|
+ objs[8] = deviceDto.getLastReceiveTime()!=null?deviceDto.getLastReceiveTime().format(df):null;
|
|
|
+ dataList.add(objs);
|
|
|
+ }
|
|
|
+ ExcelUtil excelUtil = new ExcelUtil(title, rowsName, dataList);
|
|
|
+ try {
|
|
|
+ excelUtil.export(httpServletResponse);
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new ServiceException(-900, "导出异常");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ String[] rowsName = new String[]{"序号", "状态", "编号", "系列", "型号", "厂商", "所属建筑", "楼层", "位置"};
|
|
|
+ List<Object[]> dataList = newArrayList();
|
|
|
+ Object[] objs = null;
|
|
|
+ for (int i = 0; i < list.size(); i++) {
|
|
|
+ DeviceDto deviceDto = list.get(i);
|
|
|
+ objs = new Object[rowsName.length];
|
|
|
+ objs[0] = i;
|
|
|
+ objs[1] = this.getDeviceStatusName(deviceDto.getDeviceStatus());
|
|
|
+ objs[2] = deviceDto.getDeviceNo();
|
|
|
+ objs[3] = deviceDto.getEquipmentType();
|
|
|
+ objs[4] = deviceDto.getModel();
|
|
|
+ objs[5] = deviceDto.getManufacturerName();
|
|
|
+ objs[6] = deviceDto.getBuildingName();
|
|
|
+ objs[7] = deviceDto.getFloor();
|
|
|
+ objs[8] = deviceDto.getLocDesc();
|
|
|
+ dataList.add(objs);
|
|
|
+ }
|
|
|
+ ExcelUtil excelUtil = new ExcelUtil(title, rowsName, dataList);
|
|
|
+ try {
|
|
|
+ excelUtil.export(httpServletResponse);
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new ServiceException(-900, "导出异常");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
protected String getIssueStatusName(Integer issueStatus){
|
|
|
String issueStatusName = "未下发";
|
|
|
if (issueStatus != null) {
|