Commit 4cdd66c8 authored by 任刚's avatar 任刚

添加部件信息导出功能

parent 7b23c939
......@@ -74,89 +74,4 @@ public class DetailssDTO extends BaseDTO<EquipmentDetail> {
@ApiModelProperty(value = "判断是否导出全部")
private Integer prop;
// @Excel(name = "id",orderNum ="0")
// @ApiModelProperty(value = "id")
// private Long id;
//
// @Excel(name = "部件名称",orderNum ="1")
// @TableField("name")
// @ApiModelProperty(value = "部件名称")
// private String name;
//
// @Excel(name = "部件编码",orderNum ="2")
// @TableField("eq_code")
// @ApiModelProperty(value = "部件编码")
// private String eqcode;
//
// @Excel(name = "部件型号",orderNum ="3")
// @TableField("standard")
// @ApiModelProperty(value = "部件型号")
// private String standard;
//
// @Excel(name = "存放位置",orderNum ="4")
// @TableField("area")
// @ApiModelProperty(value = "存放位置")
// private String area;
//
// @Excel(name = "生产厂家",orderNum ="5")
// @TableField("brand")
// @ApiModelProperty(value = "生产厂家")
// private String brand;
//
// @Excel(name = "出厂时间",orderNum ="6")
// @JsonFormat(pattern = "yyyy-MM-dd")
// @TableField("open_date")
// @ApiModelProperty(value = "出厂时间")
// private Date openDate;
//
// @Excel(name = "工作时间",orderNum ="7")
// @TableField("maintenance_cycle")
// @ApiModelProperty(value = "工作时间")
// private BigDecimal maintenanceCycle;
//
//
// @Excel(name = "所属单位",orderNum ="8")
// @TableField("remark")
// @ApiModelProperty(value = "所属单位")
// private String remark;
//
// @Excel(name = "入库时间",orderNum ="9")
// @JsonFormat(pattern = "yyyy-MM-dd")
// @TableField("join_date")
// @ApiModelProperty(value = "入库时间")
// private Date joinDate;
//
// @ApiModelProperty(value = "装备类型")
// private String type;
//
// @Excel(name = "物联编码",orderNum ="10")
// @ApiModelProperty(value = "物联编码")
// private String iotCode;
//
// @TableField("status")
// @ApiModelProperty(value="状态")
// @Excel(name = "状态",orderNum = "11")
// private String status;
//
// @TableField("reason")
// @ApiModelProperty(value = "原因分析")
// @Excel(name = "原因分析",orderNum = "12")
// private String reason;
//
// @TableField("measure")
// @ApiModelProperty(value = "处置措施")
// @Excel(name = "处置措施",orderNum = "13")
// private String measure;
//
// @Excel(name = "装备定义id",orderNum ="14")
// @TableField("equipment_id")
// @ApiModelProperty(value = "装备定义id")
// private Long equipmentId;
//
//
// @Excel(name = "装备定义名称",orderNum ="15")
// @TableField("equipment_name")
// @ApiModelProperty(value = "装备定义名称")
// private String equipmentName;
}
......@@ -17,55 +17,46 @@ import java.util.Date;
@Data
public class DetailssAmountVO {
@Excel(name = "id",orderNum ="0")
@ApiModelProperty(value = "id")
private Long id;
@Excel(name = "部件名称",orderNum ="1")
@TableField("name")
@ApiModelProperty(value = "部件名称")
private String name;
@Excel(name = "部件编码",orderNum ="2")
@TableField("eq_code")
@ApiModelProperty(value = "部件编码")
private String eqcode;
@Excel(name = "部件型号",orderNum ="3")
@TableField("standard")
@ApiModelProperty(value = "部件型号")
private String standard;
@Excel(name = "存放位置",orderNum ="4")
@TableField("area")
@ApiModelProperty(value = "存放位置")
private String area;
@Excel(name = "生产厂家",orderNum ="5")
@TableField("brand")
@ApiModelProperty(value = "生产厂家")
private String brand;
@Excel(name = "出厂时间",orderNum ="6")
@JsonFormat(pattern = "yyyy-MM-dd")
@TableField("open_date")
@ApiModelProperty(value = "出厂时间")
private Date openDate;
@Excel(name = "工作时间",orderNum ="7")
@TableField("maintenance_cycle")
@ApiModelProperty(value = "工作时间")
private BigDecimal maintenanceCycle;
@Excel(name = "所属单位",orderNum ="8")
@TableField("remark")
@ApiModelProperty(value = "所属单位")
private String remark;
@Excel(name = "入库时间",orderNum ="9")
@JsonFormat(pattern = "yyyy-MM-dd")
@TableField("join_date")
@ApiModelProperty(value = "入库时间")
private Date joinDate;
......@@ -76,29 +67,26 @@ public class DetailssAmountVO {
@ApiModelProperty(value = "物联编码")
private String iotCode;
@TableField("status")
@ApiModelProperty(value="状态")
@Excel(name = "状态",orderNum = "11")
private String status;
@TableField("reason")
@ApiModelProperty(value = "原因分析")
@Excel(name = "原因分析",orderNum = "12")
private String reason;
@TableField("measure")
@ApiModelProperty(value = "处置措施")
@Excel(name = "处置措施",orderNum = "13")
private String measure;
@Excel(name = "装备定义id",orderNum ="14")
@TableField("equipment_id")
@ApiModelProperty(value = "装备定义id")
private Long equipmentId;
@Excel(name = "装备定义名称",orderNum ="15")
@TableField("equipment_name")
@ApiModelProperty(value = "装备定义名称")
private String equipmentName;
......
/**
* @Time: 2022/7/20 17:41
* @Author: 任刚
* @File:EquipmentPar.class
*/
package com.yeejoin.equipmanage.common.vo;
import cn.afterturn.easypoi.excel.annotation.ExcelEntity;
import com.yeejoin.equipmanage.common.entity.Equipment;
import com.yeejoin.equipmanage.common.entity.EquipmentDetail;
import com.yeejoin.equipmanage.common.entity.EquipmentParams;
import com.yeejoin.equipmanage.common.entity.EquipmentSpecific;
import lombok.Data;
@Data
public class EquipmentPar {
@ExcelEntity
private EquipmentDetail equipmentDetail;
@ExcelEntity
private EquipmentParams equipmentParams;
}
......@@ -704,22 +704,5 @@ public class EquipmentController extends AbstractBaseController {
return iEquipmentService.getAll();
}
/**
* 导出隐患清单
*/
// @ApiOperation(value = "导出装备清单", notes = "导出装备清单")
// @PostMapping(value = "/export")
// @TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
// public void exportDangerList(@ApiParam(value = "导出装备的数据") @RequestBody(required = false) List<EquipmentPar> equipmentPars,
// @ApiParam(value = "是否全部导出" ) @RequestParam boolean type,
// HttpServletResponse response) {
// String fileName = "装备清单" + new Date().getTime();
// if(type==true){//全部导出
// List<EquipmentPar> equpar = equipmentDetailMapper.equpar();
// FileHelper.exportExcel(equpar, "装备清单", "装备清单", EquipmentPar.class, fileName + ".xls", response);
// }else {//仅仅导出筛选结果的数据
// FileHelper.exportExcel(equipmentPars, "装备清单", "装备清单", Equipment.class, fileName + ".xls", response);
// }
// }
}
......@@ -4,27 +4,20 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.page.PageParams;
import com.mchange.lang.LongUtils;
import com.yeejoin.equipmanage.common.entity.*;
import com.yeejoin.equipmanage.common.entity.dto.DetailssDTO;
import com.yeejoin.equipmanage.common.entity.dto.TopographyNodeDetailDTO;
import com.yeejoin.equipmanage.common.entity.vo.DetailssAmountVO;
import com.yeejoin.equipmanage.common.entity.vo.EquipmentDetailDownloadVO;
import com.yeejoin.equipmanage.common.enums.ExcelEnums;
import com.yeejoin.equipmanage.common.utils.*;
import com.yeejoin.equipmanage.common.vo.EquipmentDate;
import com.yeejoin.equipmanage.common.vo.EquipmentPar;
import com.yeejoin.equipmanage.dto.ExcelDto;
import com.yeejoin.equipmanage.fegin.JcsFeign;
import com.yeejoin.equipmanage.mapper.*;
import com.yeejoin.equipmanage.service.*;
import com.yeejoin.equipmanage.service.impl.TopographyNodeDetailService;
import com.yeejoin.equipmanage.utils.ExcelUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import net.bytebuddy.asm.Advice;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
......@@ -41,7 +34,6 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.*;
......@@ -128,14 +120,6 @@ public class EquipmentDetailController extends AbstractBaseController {
public EquipmentDate saveEquipmentDetail(@RequestBody EquipmentDate equipmentDate) {
EquipmentSpecific vo = equipmentDate.getEquipmentSpecific();
// String sysCode = vo.getCode();
//
// if (StringUtils.isNotEmpty(sysCode) && StringUtils.isNotEmpty(sysCode.trim())){
// int code = equipmentSpecificSerivce.count(new QueryWrapper<EquipmentSpecific>().eq("code", sysCode.trim()));
// if (code != 0 ) {
// throw new BadRequest("设备编码填写重复,请重新输入!");
// }
// }
EquipmentDetail de = equipmentDate.getEquipmentDetail();
String eqcode = de.getEqcode();
......@@ -166,31 +150,6 @@ public class EquipmentDetailController extends AbstractBaseController {
return equipmentDate;
}
@RequestMapping(value = "/saveEqu", method = RequestMethod.POST)
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public EquipmentPar saveEquipments(@RequestBody EquipmentPar equipmentPar) {
EquipmentDetail vo = equipmentPar.getEquipmentDetail();
EquipmentParams params = equipmentPar.getEquipmentParams();
String sysCode = vo.getCode();
if (StringUtils.isNotEmpty(sysCode) && StringUtils.isNotEmpty(sysCode.trim())){
int code = iEquipmentDetailService.count(new QueryWrapper<EquipmentDetail>().eq("code", sysCode.trim()));
if (code != 0 ) {
// throw new BadRequest("设备编码填写重复,请重新输入!");
equipmentPar.getEquipmentDetail().setEquipmentName("设备编码填写重复,请重新输入!");
return equipmentPar;
}
}
params.setCode(equipmentPar.getEquipmentDetail().getCode());
iEquipmentDetailService.saveOne(vo);
iEquipmentParamsService.saveOne(params);
return equipmentPar;
}
/***
*
......@@ -638,20 +597,14 @@ public class EquipmentDetailController extends AbstractBaseController {
@ApiOperation(value = "导出装备清单", notes = "导出装备清单")
@PostMapping(value = "/export")
@TycloudOperation(ApiLevel = UserType.AGENCY)
public void exportDangerList(@RequestBody DetailssDTO detailssDTO, HttpServletResponse response) {
// DetailssDTO detailssDTO = new DetailssDTO();
// detailssDTO.setType("equipment");
public void exportDangerList(@RequestBody List<DetailssAmountVO> detailssAmountVO,@RequestParam Integer prop, HttpServletResponse response) {
String fileName = "装备清单" + new Date().getTime();
if(detailssDTO.getProp()==1){//全部导出
if(prop==1){//全部导出
List<DetailssAmountVO> getall = iEquipmentDetailService.getall();
// IPage<DetailssAmountVO> detailsssAmountList = fireFightingSystemService.getDetailsssAmountList(0, null, detailssDTO);
// List<DetailssAmountVO> records = detailsssAmountList.getRecords();
FileHelper.exportExcel(getall, "装备清单", "装备清单", EquipmentDate.class, fileName + ".xls", response);
FileHelper.exportExcel(getall, "装备清单", "装备清单", DetailssAmountVO.class, fileName + ".xls", response);
}
else {//仅仅导出筛选结果的数据
IPage<DetailssAmountVO> detailsssAmountList = fireFightingSystemService.getDetailsssAmountList(0, null, detailssDTO);
List<DetailssAmountVO> records = detailsssAmountList.getRecords();
FileHelper.exportExcel(records, "装备清单", "装备清单", EquipmentDate.class, fileName + ".xls", response);
FileHelper.exportExcel(detailssAmountVO, "装备清单", "装备清单", DetailssAmountVO.class, fileName + ".xls", response);
}
}
......
......@@ -3,10 +3,8 @@ package com.yeejoin.equipmanage.mapper;
import java.util.List;
import com.yeejoin.equipmanage.common.entity.EquProperty;
import com.yeejoin.equipmanage.common.entity.dto.DetailssDTO;
import com.yeejoin.equipmanage.common.entity.vo.DetailssAmountVO;
import com.yeejoin.equipmanage.common.vo.EquipmentDate;
import com.yeejoin.equipmanage.common.vo.EquipmentPar;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
......@@ -45,4 +43,6 @@ public interface EquipmentDetailMapper extends BaseMapper<EquipmentDetail> {
List<Long> getWareId(@Param("id") Long id);
List<DetailssAmountVO> getall();
boolean save(EquipmentDetail equipmentDetail);
}
......@@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.equipmanage.common.entity.EquProperty;
import com.yeejoin.equipmanage.common.entity.EquipmentDetail;
import com.yeejoin.equipmanage.common.entity.dto.DetailssDTO;
import com.yeejoin.equipmanage.common.entity.vo.DetailssAmountVO;
import com.yeejoin.equipmanage.common.vo.EquipmentDate;
import com.yeejoin.equipmanage.common.vo.EquipmentPar;
import java.util.List;
......
......@@ -5,16 +5,12 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.equipmanage.common.entity.*;
import com.yeejoin.equipmanage.common.entity.dto.DetailssDTO;
import com.yeejoin.equipmanage.common.entity.vo.DetailssAmountVO;
import com.yeejoin.equipmanage.common.enums.BillContentEnum;
import com.yeejoin.equipmanage.common.enums.FileTypeEnum;
import com.yeejoin.equipmanage.common.vo.EquipmentDate;
import com.yeejoin.equipmanage.common.vo.EquipmentPar;
import com.yeejoin.equipmanage.mapper.*;
import com.yeejoin.equipmanage.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.Bean;
......@@ -80,11 +76,8 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
@Override
public EquipmentDetail saveOne(EquipmentDetail equipmentDetail) {
// EquipmentCategory byId = equipmentCategoryService.getById(equipmentDetail.getCode());
// equipmentDetail.setCode(byId.getCode());
equipmentDetail.setEquipmentId(equipmentDetail.getEquipmentId());
this.save(equipmentDetail);
saveFile(equipmentDetail);
return equipmentDetail;
}
......@@ -120,8 +113,6 @@ public class EquipmentDetailServiceImpl extends ServiceImpl<EquipmentDetailMappe
Map<String, Object> map2 = new HashMap<>();
map2.put("code",equipmentDetail.getCode());
EquipmentCategory equipmentCategory = equipmentCategoryMapper.selectByMap(map2).get(0);
// equipmentDetail.setCountry(equipmentCategory.getId());
// EquipmentCategory equipmentCategory = equipmentCategoryMapper.selectById(equipment.getCategoryId());
equipment.setEquipmentCategory(equipmentCategory);
Unit unit = iUnitService.getById(equipment.getUnitId());
equipment.setUnit(unit);
......
......@@ -44,7 +44,7 @@
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.doc</artifactId>
<version>4.9.0</version>
<version>5.1.9</version>
</dependency>
<dependency>
<groupId>com.amosframework.boot</groupId>
......@@ -53,5 +53,4 @@
<scope>compile</scope>
</dependency>
</dependencies>
</project>
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>amos-boot-module-biz</artifactId>
......@@ -78,7 +78,7 @@
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>4.0.0</version>
<version>3.15</version>
</dependency>
<dependency>
......
......@@ -312,7 +312,7 @@ public class FileHelper {
buffer.append("<meta name=\"keywords\" content=\"\"/>");
buffer.append("<meta name=\"description\" content=\"\"/>");
buffer.append(
"<style type=\"text/css\">body{width:100%;height:auto;position:relative;}img{max-width:100%;height:auto;margin:0 auto;}</style>");
"<style type=\"text/css\">body{width:100%;height:auto;position:relative;}img{max-width:100%;height:auto;margin:0 auto;}</style>");
buffer.append("</head>");
buffer.append("<body>");
......@@ -331,14 +331,14 @@ public class FileHelper {
buffer.append("<!DOCTYPE html><html><head>");
buffer.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>");
buffer.append(
"<meta name=\"viewport\" content=\"width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui\"/>");
"<meta name=\"viewport\" content=\"width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui\"/>");
buffer.append("<meta name=\"format-detection\" content=\"telephone=no\"/>");
buffer.append("<meta http-equiv=\"Access-Control-Allow-Origin\" content=\"*\"/>");
buffer.append("<title>touch</title>");
buffer.append("<meta name=\"keywords\" content=\"\"/>");
buffer.append("<meta name=\"description\" content=\"\"/>");
buffer.append(
"<style type=\"text/css\">body{width:100%;height:auto;position:relative;}img{max-width:100%;height:auto;margin:0 auto;}</style>");
"<style type=\"text/css\">body{width:100%;height:auto;position:relative;}img{max-width:100%;height:auto;margin:0 auto;}</style>");
buffer.append("</head>");
buffer.append("<body>");
......@@ -355,7 +355,7 @@ public class FileHelper {
StringBuffer buffer = new StringBuffer();
buffer.append(
"<html><head><meta http-equiv=\"Access-Control-Allow-Origin\" content=\"*\"></head><body><div align=\"left\">");
"<html><head><meta http-equiv=\"Access-Control-Allow-Origin\" content=\"*\"></head><body><div align=\"left\">");
buffer.append("<p>" + content + "</p>");
buffer.append("</div></body></html>");
// System.out.println(buffer.toString());
......@@ -470,7 +470,7 @@ public class FileHelper {
* metas = children.getElementsByTag("meta"); for(Element meta : metas) { meta.remove(); } }
*/
head.appendElement("meta").attr("name", "viewport").attr("content",
"width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no");
"width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no");
// 获取html节点
Element element = doc.body();
......@@ -537,7 +537,7 @@ public class FileHelper {
} else {
try {
String endTag =
content.substring(content.length() - tagName.length() - 3, content.length());
content.substring(content.length() - tagName.length() - 3, content.length());
if (!("</" + tagName + ">").equals(endTag)) {
element.text("");
}
......@@ -743,13 +743,13 @@ public class FileHelper {
// 复制文件
if (files[i].isFile()) {
flag = FileHelper.copyFile(files[i].getAbsolutePath(), destDirName + files[i].getName(),
overlay);
overlay);
if (!flag) {
break;
}
} else if (files[i].isDirectory()) {
flag = FileHelper.copyDirectory(files[i].getAbsolutePath(),
destDirName + files[i].getName(), overlay);
destDirName + files[i].getName(), overlay);
if (!flag) {
break;
}
......@@ -873,409 +873,409 @@ public class FileHelper {
public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass,String fileName,boolean isCreateHeader, HttpServletResponse response){
ExportParams exportParams = new ExportParams(title, sheetName);
exportParams.setCreateHeadRows(isCreateHeader);
defaultExport(list, pojoClass, fileName, response, exportParams);
ExportParams exportParams = new ExportParams(title, sheetName);
exportParams.setCreateHeadRows(isCreateHeader);
defaultExport(list, pojoClass, fileName, response, exportParams);
}
public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass,String fileName, HttpServletResponse response){
defaultExport(list, pojoClass, fileName, response, new ExportParams(title, sheetName));
defaultExport(list, pojoClass, fileName, response, new ExportParams(title, sheetName));
}
public static void exportExcel(List<Map<String, Object>> list, String fileName, HttpServletResponse response){
defaultExport(list, fileName, response);
public static void exportExcel(List<Map<String, Object>> list, String fileName, HttpServletResponse response){
defaultExport(list, fileName, response);
}
private static void defaultExport(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response, ExportParams exportParams) {
Workbook workbook = ExcelExportUtil.exportExcel(exportParams,pojoClass,list);
if (workbook != null);
downLoadExcel(fileName, response, workbook);
Workbook workbook = ExcelExportUtil.exportExcel(exportParams,pojoClass,list);
if (workbook != null);
downLoadExcel(fileName, response, workbook);
}
private static void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) {
try {
String name = new String(fileName.getBytes("UTF-8"), "ISO8859_1");
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition",
"attachment;filename=" + name);
try {
String name = new String(fileName.getBytes("UTF-8"), "ISO8859_1");
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition",
"attachment;filename=" + name);
workbook.write(response.getOutputStream());
} catch (IOException e) {
throw new YeeException(e.getMessage());
}
workbook.write(response.getOutputStream());
} catch (IOException e) {
throw new YeeException(e.getMessage());
}
}
private static void defaultExport(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
Workbook workbook = ExcelExportUtil.exportExcel(list, ExcelType.HSSF);
if (workbook != null);
downLoadExcel(fileName, response, workbook);
private static void defaultExport(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
Workbook workbook = ExcelExportUtil.exportExcel(list, ExcelType.HSSF);
if (workbook != null);
downLoadExcel(fileName, response, workbook);
}
public static <T> List<T> importExcel(String filePath,Integer titleRows,Integer headerRows, Class<T> pojoClass){
if (ObjectUtils.isEmpty(filePath)){
return null;
}
ImportParams params = new ImportParams();
params.setTitleRows(titleRows);
params.setHeadRows(headerRows);
List<T> list = null;
try {
list = ExcelImportUtil.importExcel(new File(filePath), pojoClass, params);
}catch (NoSuchElementException e){
throw new YeeException("模板不能为空");
} catch (Exception e) {
e.printStackTrace();
throw new YeeException(e.getMessage());
}
return list;
if (ObjectUtils.isEmpty(filePath)){
return null;
}
ImportParams params = new ImportParams();
params.setTitleRows(titleRows);
params.setHeadRows(headerRows);
List<T> list = null;
try {
list = ExcelImportUtil.importExcel(new File(filePath), pojoClass, params);
}catch (NoSuchElementException e){
throw new YeeException("模板不能为空");
} catch (Exception e) {
e.printStackTrace();
throw new YeeException(e.getMessage());
}
return list;
}
public static <T> List<T> importExcel(MultipartFile file, Integer titleRows, Integer headerRows, Class<T> pojoClass){
if (file == null){
return null;
if (file == null){
return null;
}
ImportParams params = new ImportParams();
params.setTitleRows(titleRows);
params.setHeadRows(headerRows);
List<T> list = null;
try {
list = ExcelImportUtil.importExcel(file.getInputStream(), pojoClass, params);
}catch (NoSuchElementException e){
throw new YeeException("excel文件不能为空");
} catch (Exception e) {
e.printStackTrace();
throw new YeeException(e.getMessage());
}
return list;
}
public static void exportZip(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
try {
response.setContentType("multipart/form-data");
response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName, "UTF-8"));
} catch (UnsupportedEncodingException e) {
throw new YeeException("下载文件名编码时出现错误.");
}
OutputStream outputStream = null;
ZipOutputStream zos = null;
try {
outputStream = response.getOutputStream();
zos = new ZipOutputStream(outputStream);
downloadZip(fileName.replace(".zip", ""), zos, list);
} catch (IOException e) {
throw new YeeException("下载文件名编码时出现错误.");
} finally {
if(zos != null) {
try {
zos.close();
} catch (Exception e2) {
throw new YeeException("下载文件名编码时出现错误.");
}
}
ImportParams params = new ImportParams();
params.setTitleRows(titleRows);
params.setHeadRows(headerRows);
List<T> list = null;
try {
list = ExcelImportUtil.importExcel(file.getInputStream(), pojoClass, params);
}catch (NoSuchElementException e){
throw new YeeException("excel文件不能为空");
} catch (Exception e) {
e.printStackTrace();
throw new YeeException(e.getMessage());
if(outputStream != null) {
try {
outputStream.close();
} catch (Exception e2) {
throw new YeeException("下载文件名编码时出现错误.");
}
}
return list;
}
}
public static void exportZip(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
try {
response.setContentType("multipart/form-data");
response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName, "UTF-8"));
} catch (UnsupportedEncodingException e) {
throw new YeeException("下载文件名编码时出现错误.");
}
OutputStream outputStream = null;
ZipOutputStream zos = null;
try {
outputStream = response.getOutputStream();
zos = new ZipOutputStream(outputStream);
downloadZip(fileName.replace(".zip", ""), zos, list);
} catch (IOException e) {
throw new YeeException("下载文件名编码时出现错误.");
} finally {
if(zos != null) {
try {
zos.close();
} catch (Exception e2) {
throw new YeeException("下载文件名编码时出现错误.");
}
}
if(outputStream != null) {
try {
outputStream.close();
} catch (Exception e2) {
throw new YeeException("下载文件名编码时出现错误.");
}
}
}
}
public static void downloadZip(String baseDir, ZipOutputStream zos, List<Map<String, Object>> list) {
for (Map<String, Object> map : list) {
String checkId = map.get("id").toString();
//文件名称(带后缀)
String fileName = map.get("photoData").toString();
InputStream is = null;
BufferedInputStream in = null;
byte[] buffer = new byte[1024];
int len;
//创建zip实体(一个文件对应一个ZipEntry)
ZipEntry entry = new ZipEntry(baseDir + fileName.substring(fileName.lastIndexOf('/'), fileName.length()));
try {
//获取需要下载的文件流
URL url = new URL(fileName);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//下载
is = conn.getInputStream();
public static void downloadZip(String baseDir, ZipOutputStream zos, List<Map<String, Object>> list) {
for (Map<String, Object> map : list) {
String checkId = map.get("id").toString();
//文件名称(带后缀)
String fileName = map.get("photoData").toString();
InputStream is = null;
BufferedInputStream in = null;
byte[] buffer = new byte[1024];
int len;
//创建zip实体(一个文件对应一个ZipEntry)
ZipEntry entry = new ZipEntry(baseDir + fileName.substring(fileName.lastIndexOf('/'), fileName.length()));
try {
//获取需要下载的文件流
URL url = new URL(fileName);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//下载
is = conn.getInputStream();
// File file = new File(fileName);
// is = new FileInputStream(file);
in = new BufferedInputStream(is);
zos.putNextEntry(entry);
//文件流循环写入ZipOutputStream
while ((len = in.read(buffer)) != -1 ) {
zos.write(buffer, 0, len);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
if(entry != null) {
try {
zos.closeEntry();
} catch (Exception e2) {
}
}
if(in != null) {
try {
in.close();
} catch (Exception e2) {
}
}
if(is != null) {
try {
is.close();
}catch (Exception e) {
}
}
}
}
}
/**
* @Title: createExcelTemplate
* @Description: 生成Excel导入模板
* @param @param filePath Excel文件路径
* @param @param handers Excel列标题(数组)
* @param @param downData 下拉框数据(数组)
* @param @param downRows 下拉列的序号(数组,序号从0开始)
* @return void
* @throws
*/
public static void createExcelTemplate(String fileName, String[] handers,
List<String[]> downData, String[] downRows, HttpServletResponse response){
HSSFWorkbook wb = new HSSFWorkbook();//创建工作薄
//表头样式
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
//字体样式
HSSFFont fontStyle = wb.createFont();
fontStyle.setFontName("微软雅黑");
fontStyle.setFontHeightInPoints((short)12);
fontStyle.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
style.setFont(fontStyle);
//新建sheet
HSSFSheet sheet1 = wb.createSheet("Sheet1");
HSSFSheet sheet2 = wb.createSheet("Sheet2");
HSSFSheet sheet3 = wb.createSheet("Sheet3");
//生成sheet1内容
HSSFRow rowFirst = sheet1.createRow(0);//第一个sheet的第一行为标题
//写标题
for(int i=0;i<handers.length;i++){
HSSFCell cell = rowFirst.createCell(i); //获取第一行的每个单元格
sheet1.setColumnWidth(i, 4000); //设置每列的列宽
cell.setCellStyle(style); //加样式
cell.setCellValue(handers[i]); //往单元格里写数据
in = new BufferedInputStream(is);
zos.putNextEntry(entry);
//文件流循环写入ZipOutputStream
while ((len = in.read(buffer)) != -1 ) {
zos.write(buffer, 0, len);
}
} catch (Exception e) {
e.printStackTrace();
}finally {
if(entry != null) {
try {
zos.closeEntry();
} catch (Exception e2) {
//设置下拉框数据
String[] arr = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
int index = 0;
HSSFRow row = null;
for(int r=0;r<downRows.length;r++){
String[] dlData = downData.get(r);//获取下拉对象
int rownum = Integer.parseInt(downRows[r]);
}
}
if(in != null) {
try {
in.close();
} catch (Exception e2) {
if(dlData==null){
continue;
}
if(dlData.length<5){ //255以内的下拉
//255以内的下拉,参数分别是:作用的sheet、下拉内容数组、起始行、终止行、起始列、终止列
sheet1.addValidationData(setDataValidation(sheet1, dlData, 1, 30000, rownum ,rownum)); //超过255个报错
} else { //255以上的下拉,即下拉列表元素很多的情况
//1、设置有效性
//String strFormula = "Sheet2!$A$1:$A$5000" ; //Sheet2第A1到A5000作为下拉列表来源数据
String strFormula = "Sheet2!$"+arr[index]+"$1:$"+arr[index]+"$5000"; //Sheet2第A1到A5000作为下拉列表来源数据
sheet2.setColumnWidth(r, 4000); //设置每列的列宽
//设置数据有效性加载在哪个单元格上,参数分别是:从sheet2获取A1到A5000作为一个下拉的数据、起始行、终止行、起始列、终止列
sheet1.addValidationData(SetDataValidation(strFormula, 1, 30000, rownum, rownum)); //下拉列表元素很多的情况
//2、生成sheet2内容
for(int j=0;j<dlData.length;j++){
if(index==0){ //第1个下拉选项,直接创建行、列
row = sheet2.createRow(j); //创建数据行
sheet2.setColumnWidth(j, 4000); //设置每列的列宽
row.createCell(0).setCellValue(dlData[j]); //设置对应单元格的值
} else { //非第1个下拉选项
int rowCount = sheet2.getLastRowNum();
//System.out.println("========== LastRowNum =========" + rowCount);
if(j<=rowCount){ //前面创建过的行,直接获取行,创建列
//获取行,创建列
sheet2.getRow(j).createCell(index).setCellValue(dlData[j]); //设置对应单元格的值
} else { //未创建过的行,直接创建行、创建列
sheet2.setColumnWidth(j, 4000); //设置每列的列宽
//创建行、创建列
sheet2.createRow(j).createCell(index).setCellValue(dlData[j]); //设置对应单元格的值
}
}
}
index++;
}
}
}
if(is != null) {
try {
is.close();
}catch (Exception e) {
}
}
downLoadExcel(fileName, response, wb);
}
}
/**
*
* @Title: SetDataValidation
* @Description: 下拉列表元素很多的情况 (255以上的下拉)
* @param @param strFormula
* @param @param firstRow 起始行
* @param @param endRow 终止行
* @param @param firstCol 起始列
* @param @param endCol 终止列
* @param @return
* @return HSSFDataValidation
* @throws
*/
private static HSSFDataValidation SetDataValidation(String strFormula,
int firstRow, int endRow, int firstCol, int endCol) {
}
// 设置数据有效性加载在哪个单元格上。四个参数分别是:起始行、终止行、起始列、终止列
CellRangeAddressList regions = new CellRangeAddressList(firstRow, endRow, firstCol, endCol);
DVConstraint constraint = DVConstraint.createFormulaListConstraint(strFormula);
HSSFDataValidation dataValidation = new HSSFDataValidation(regions,constraint);
/**
* @Title: createExcelTemplate
* @Description: 生成Excel导入模板
* @param @param filePath Excel文件路径
* @param @param handers Excel列标题(数组)
* @param @param downData 下拉框数据(数组)
* @param @param downRows 下拉列的序号(数组,序号从0开始)
* @return void
* @throws
*/
public static void createExcelTemplate(String fileName, String[] handers,
List<String[]> downData, String[] downRows, HttpServletResponse response){
HSSFWorkbook wb = new HSSFWorkbook();//创建工作薄
//表头样式
HSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创建一个居中格式
//字体样式
HSSFFont fontStyle = wb.createFont();
fontStyle.setFontName("微软雅黑");
fontStyle.setFontHeightInPoints((short)12);
fontStyle.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
style.setFont(fontStyle);
//新建sheet
HSSFSheet sheet1 = wb.createSheet("Sheet1");
HSSFSheet sheet2 = wb.createSheet("Sheet2");
HSSFSheet sheet3 = wb.createSheet("Sheet3");
//生成sheet1内容
HSSFRow rowFirst = sheet1.createRow(0);//第一个sheet的第一行为标题
//写标题
for(int i=0;i<handers.length;i++){
HSSFCell cell = rowFirst.createCell(i); //获取第一行的每个单元格
sheet1.setColumnWidth(i, 4000); //设置每列的列宽
cell.setCellStyle(style); //加样式
cell.setCellValue(handers[i]); //往单元格里写数据
}
dataValidation.createErrorBox("Error", "Error");
dataValidation.createPromptBox("", null);
//设置下拉框数据
String[] arr = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
int index = 0;
HSSFRow row = null;
for(int r=0;r<downRows.length;r++){
String[] dlData = downData.get(r);//获取下拉对象
int rownum = Integer.parseInt(downRows[r]);
return dataValidation;
if(dlData==null){
continue;
}
if(dlData.length<5){ //255以内的下拉
//255以内的下拉,参数分别是:作用的sheet、下拉内容数组、起始行、终止行、起始列、终止列
sheet1.addValidationData(setDataValidation(sheet1, dlData, 1, 30000, rownum ,rownum)); //超过255个报错
} else { //255以上的下拉,即下拉列表元素很多的情况
//1、设置有效性
//String strFormula = "Sheet2!$A$1:$A$5000" ; //Sheet2第A1到A5000作为下拉列表来源数据
String strFormula = "Sheet2!$"+arr[index]+"$1:$"+arr[index]+"$5000"; //Sheet2第A1到A5000作为下拉列表来源数据
sheet2.setColumnWidth(r, 4000); //设置每列的列宽
//设置数据有效性加载在哪个单元格上,参数分别是:从sheet2获取A1到A5000作为一个下拉的数据、起始行、终止行、起始列、终止列
sheet1.addValidationData(SetDataValidation(strFormula, 1, 30000, rownum, rownum)); //下拉列表元素很多的情况
//2、生成sheet2内容
for(int j=0;j<dlData.length;j++){
if(index==0){ //第1个下拉选项,直接创建行、列
row = sheet2.createRow(j); //创建数据行
sheet2.setColumnWidth(j, 4000); //设置每列的列宽
row.createCell(0).setCellValue(dlData[j]); //设置对应单元格的值
} else { //非第1个下拉选项
int rowCount = sheet2.getLastRowNum();
//System.out.println("========== LastRowNum =========" + rowCount);
if(j<=rowCount){ //前面创建过的行,直接获取行,创建列
//获取行,创建列
sheet2.getRow(j).createCell(index).setCellValue(dlData[j]); //设置对应单元格的值
} else { //未创建过的行,直接创建行、创建列
sheet2.setColumnWidth(j, 4000); //设置每列的列宽
//创建行、创建列
sheet2.createRow(j).createCell(index).setCellValue(dlData[j]); //设置对应单元格的值
}
}
}
index++;
}
}
downLoadExcel(fileName, response, wb);
}
/**
*
* @Title: SetDataValidation
* @Description: 下拉列表元素很多的情况 (255以上的下拉)
* @param @param strFormula
* @param @param firstRow 起始行
* @param @param endRow 终止行
* @param @param firstCol 起始列
* @param @param endCol 终止列
* @param @return
* @return HSSFDataValidation
* @throws
*/
private static HSSFDataValidation SetDataValidation(String strFormula,
int firstRow, int endRow, int firstCol, int endCol) {
/**
*
* @Title: setDataValidation
* @Description: 下拉列表元素不多的情况(255以内的下拉)
* @param @param sheet
* @param @param textList
* @param @param firstRow
* @param @param endRow
* @param @param firstCol
* @param @param endCol
* @param @return
* @return DataValidation
* @throws
*/
private static DataValidation setDataValidation(Sheet sheet, String[] textList, int firstRow, int endRow, int firstCol, int endCol) {
// 设置数据有效性加载在哪个单元格上。四个参数分别是:起始行、终止行、起始列、终止列
CellRangeAddressList regions = new CellRangeAddressList(firstRow, endRow, firstCol, endCol);
DVConstraint constraint = DVConstraint.createFormulaListConstraint(strFormula);
HSSFDataValidation dataValidation = new HSSFDataValidation(regions,constraint);
DataValidationHelper helper = sheet.getDataValidationHelper();
//加载下拉列表内容
DataValidationConstraint constraint = helper.createExplicitListConstraint(textList);
//DVConstraint constraint = new DVConstraint();
constraint.setExplicitListValues(textList);
dataValidation.createErrorBox("Error", "Error");
dataValidation.createPromptBox("", null);
//设置数据有效性加载在哪个单元格上。四个参数分别是:起始行、终止行、起始列、终止列
CellRangeAddressList regions = new CellRangeAddressList((short) firstRow, (short) endRow, (short) firstCol, (short) endCol);
return dataValidation;
}
//数据有效性对象
DataValidation data_validation = helper.createValidation(constraint, regions);
//DataValidation data_validation = new DataValidation(regions, constraint);
return data_validation;
}
/**
*
* @Title: setDataValidation
* @Description: 下拉列表元素不多的情况(255以内的下拉)
* @param @param sheet
* @param @param textList
* @param @param firstRow
* @param @param endRow
* @param @param firstCol
* @param @param endCol
* @param @return
* @return DataValidation
* @throws
*/
private static DataValidation setDataValidation(Sheet sheet, String[] textList, int firstRow, int endRow, int firstCol, int endCol) {
/**
* @Title: getExcel
* @Description: 下载指定路径的Excel文件
* @param @param url 文件路径
* @param @param fileName 文件名
* @param @param response
* @return void
* @throws
*/
public static void getExcel(String url, String fileName, HttpServletResponse response,HttpServletRequest request){
DataValidationHelper helper = sheet.getDataValidationHelper();
//加载下拉列表内容
DataValidationConstraint constraint = helper.createExplicitListConstraint(textList);
//DVConstraint constraint = new DVConstraint();
constraint.setExplicitListValues(textList);
//设置数据有效性加载在哪个单元格上。四个参数分别是:起始行、终止行、起始列、终止列
CellRangeAddressList regions = new CellRangeAddressList((short) firstRow, (short) endRow, (short) firstCol, (short) endCol);
//数据有效性对象
DataValidation data_validation = helper.createValidation(constraint, regions);
//DataValidation data_validation = new DataValidation(regions, constraint);
return data_validation;
}
/**
* @Title: getExcel
* @Description: 下载指定路径的Excel文件
* @param @param url 文件路径
* @param @param fileName 文件名
* @param @param response
* @return void
* @throws
*/
public static void getExcel(String url, String fileName, HttpServletResponse response,HttpServletRequest request){
try {
try {
//1.设置文件ContentType类型,这样设置,会自动判断下载文件类型
response.setContentType("multipart/form-data");
//1.设置文件ContentType类型,这样设置,会自动判断下载文件类型
response.setContentType("multipart/form-data");
//2.设置文件头:最后一个参数是设置下载文件名
response.setHeader("Content-disposition", "attachment; filename=\""
+ encodeChineseDownloadFileName(request, fileName+".xls") +"\"");
//2.设置文件头:最后一个参数是设置下载文件名
response.setHeader("Content-disposition", "attachment; filename=\""
+ encodeChineseDownloadFileName(request, fileName+".xls") +"\"");
// response.setHeader("Content-Disposition", "attachment;filename="
// + new String(fileName.getBytes("UTF-8"), "ISO-8859-1") + ".xls"); //中文文件名
//通过文件路径获得File对象
File file = new File(url);
//通过文件路径获得File对象
File file = new File(url);
FileInputStream in = new FileInputStream(file);
//3.通过response获取OutputStream对象(out)
OutputStream out = new BufferedOutputStream(response.getOutputStream());
FileInputStream in = new FileInputStream(file);
//3.通过response获取OutputStream对象(out)
OutputStream out = new BufferedOutputStream(response.getOutputStream());
int b = 0;
byte[] buffer = new byte[2048];
while ((b=in.read(buffer)) != -1){
out.write(buffer,0,b); //4.写到输出流(out)中
}
int b = 0;
byte[] buffer = new byte[2048];
while ((b=in.read(buffer)) != -1){
out.write(buffer,0,b); //4.写到输出流(out)中
}
in.close();
out.flush();
out.close();
in.close();
out.flush();
out.close();
} catch (IOException e) {
log.error("下载Excel模板异常", e);
}
} catch (IOException e) {
log.error("下载Excel模板异常", e);
}
}
/**
*
* @Title: encodeChineseDownloadFileName
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @param request
* @param @param pFileName
* @param @return
* @param @throws UnsupportedEncodingException
* @return String
* @throws
*/
private static String encodeChineseDownloadFileName(HttpServletRequest request, String pFileName)
throws UnsupportedEncodingException {
String filename = null;
String agent = request.getHeader("USER-AGENT");
//System.out.println("agent==========》"+agent);
if (null != agent) {
if (-1 != agent.indexOf("Firefox")) {//Firefox
filename = "=?UTF-8?B?" + (new String(org.apache.commons.codec.binary.Base64.encodeBase64(pFileName.getBytes("UTF-8")))) + "?=";
} else if (-1 != agent.indexOf("Chrome")) {//Chrome
filename = new String(pFileName.getBytes(), "ISO8859-1");
} else {//IE7+
filename = java.net.URLEncoder.encode(pFileName, "UTF-8");
filename = StringUtils.replace(filename, "+", "%20");//替换空格
}
} else {
filename = pFileName;
}
return filename;
/**
*
* @Title: encodeChineseDownloadFileName
* @Description: TODO(这里用一句话描述这个方法的作用)
* @param @param request
* @param @param pFileName
* @param @return
* @param @throws UnsupportedEncodingException
* @return String
* @throws
*/
private static String encodeChineseDownloadFileName(HttpServletRequest request, String pFileName)
throws UnsupportedEncodingException {
String filename = null;
String agent = request.getHeader("USER-AGENT");
//System.out.println("agent==========》"+agent);
if (null != agent) {
if (-1 != agent.indexOf("Firefox")) {//Firefox
filename = "=?UTF-8?B?" + (new String(org.apache.commons.codec.binary.Base64.encodeBase64(pFileName.getBytes("UTF-8")))) + "?=";
} else if (-1 != agent.indexOf("Chrome")) {//Chrome
filename = new String(pFileName.getBytes(), "ISO8859-1");
} else {//IE7+
filename = java.net.URLEncoder.encode(pFileName, "UTF-8");
filename = StringUtils.replace(filename, "+", "%20");//替换空格
}
} else {
filename = pFileName;
}
/**
* @Title: delFile
* @Description: 删除文件
* @param @param filePath 文件路径
* @return void
* @throws
*/
public static void delFile(String filePath) {
java.io.File delFile = new java.io.File(filePath);
delFile.delete();
}
return filename;
}
/**
* @Title: delFile
* @Description: 删除文件
* @param @param filePath 文件路径
* @return void
* @throws
*/
public static void delFile(String filePath) {
java.io.File delFile = new java.io.File(filePath);
delFile.delete();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.equipmanage.mapper.EquipmentDetailMapper">
<resultMap id="EquipmentDateMap" type="com.yeejoin.equipmanage.common.vo.EquipmentDate">
<association property="equipmentDetail" javaType="com.yeejoin.equipmanage.common.entity.EquipmentDetail">
<result column="name" property="name" />
<result column="eq_code" property="eqcode" />
<result column="remark" property="remark" />
<result column="manufacturer_cycle" property="manufacturerCycle"/>
<result column="standard" property="standard" />
<result column="brand" property="brand" />
<result column="join_date" property="joinDate" />
<result column="open_date" property="openDate" />
<result column="area" property="area" />
<result column="equipment_id" property="equipmentId" />
<result column="equipment_name" property="equipmentName" />
</association>
<association property="equipmentParams" javaType="com.yeejoin.equipmanage.common.entity.EquipmentParams">
<result column="status" property="status"/>
<result column="reason" property="reason"/>
<result column="measure" property="measure"/>
</association>
<association property="equipmentSpecific" javaType="com.yeejoin.equipmanage.common.entity.EquipmentSpecific">
<result column="iot_code" property="iotCode"/>
</association>
<resultMap id="DetailssAmountList" type="com.yeejoin.equipmanage.common.entity.vo.DetailssAmountVO">
<result column="id" property="id"></result>
<result column="standard" property="standard"></result>
<result column="brand" property="brand"></result>
<result column="name" property="name"></result>
<result column="area" property="area"></result>
<result property="type" column="type"></result>
<result column="remark" property="remark"></result>
<result column="eq_code" property="eqcode"></result>
<result column="maintenance_cycle" property="maintenanceCycle"></result>
<result column="join_date" property="joinDate"></result>
<result column="open_date" property="openDate"></result>
<result column="reason" property="reason"></result>
<result column="STATUS" property="status"></result>
<result column="measure" property="measure"></result>
<result column="iot_code" property="iotCode"></result>
<result column="equipment_id" property="equipmentId" />
<result column="equipment_name" property="equipmentName" />
</resultMap>
<select id="page"
resultType="com.yeejoin.equipmanage.common.entity.EquipmentDetail">
SELECT
......@@ -137,7 +134,7 @@
LIMIT #{offset},#{size}
</select>
<select id="getall" resultMap="EquipmentDateMap">
<select id="getall" resultMap="DetailssAmountList">
SELECT
wles.id,
wled.standard,
......
......@@ -7,7 +7,6 @@
<result property="code" column="code"></result>
<result property="categoryName" column="category_name"></result>
</resultMap>
<resultMap id="EquipCountBySystemId" type="com.yeejoin.equipmanage.common.entity.vo.EquipCountBySystemVO">
<result property="equipmentId" column="equipment_id"></result>
<result property="equipmentName" column="equipment_name"></result>
......@@ -48,7 +47,7 @@
<result column="reason" property="reason"></result>
<result column="STATUS" property="status"></result>
<result column="measure" property="measure"></result>
<result property="iotCode" column="iotCode"></result>
<result column="iot_code" property="iotCode"></result>
</resultMap>
<select id="getEquiplistBySystemId" resultMap="EquiplistBySystemId">
SELECT
......
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