Commit 7ccbc5f5 authored by hanfeng's avatar hanfeng

Merge branch 'master-background-manager' into dev

parents d83fb531 db7c7d6c
...@@ -17,7 +17,6 @@ ...@@ -17,7 +17,6 @@
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
</dependencies> </dependencies>
<build> <build>
<plugins> <plugins>
......
...@@ -151,6 +151,24 @@ public class Vehicle { ...@@ -151,6 +151,24 @@ public class Vehicle {
@Column(name = "travel_status") @Column(name = "travel_status")
private Integer travelStatus; private Integer travelStatus;
/**
* 终端号
*/
@Column(name = "terminal_number")
private String terminalNumber;
/**
* SIM卡号
*/
@Column(name = "sim_number")
private String simNumber;
/**
* 通讯类型
*/
@Column(name = "communication_type")
private String communicationType;
/** /**
* 是否删除;0-正常;1-删除 * 是否删除;0-正常;1-删除
*/ */
......
...@@ -5,7 +5,7 @@ import lombok.Data; ...@@ -5,7 +5,7 @@ import lombok.Data;
import java.util.Date; import java.util.Date;
@Data @Data
public class ResultVehicleVo { public class ResultVehicleVo {
/** /**
* 主键(uuid) * 主键(uuid)
*/ */
...@@ -26,6 +26,12 @@ public class ResultVehicleVo { ...@@ -26,6 +26,12 @@ public class ResultVehicleVo {
*/ */
private String numberPlate; private String numberPlate;
/**
* 车型
*/
private String vehicleType;
/** /**
* 品牌(编码,对应关系见相关常量),0-未填写 * 品牌(编码,对应关系见相关常量),0-未填写
*/ */
......
package com.xxfc.platform.vehicle.pojo;
import lombok.Data;
import java.util.HashMap;
import java.util.Map;
@Data
public class VehicleExcelVo {
/**
* 车牌号,空字符串-没有
*/
private String numberPlate;
/**
* 车辆编号,0-没有
*/
private Integer code;
/**
* 车型
*/
private String vehicleType;
/**
*
*/
private String useType;
/**
* 停靠分支机构(名)
*/
private String parkBranchCompanyName;
}
package com.xxfc.platform.vehicle.biz;
import com.alibaba.fastjson.JSON;
import com.github.pagehelper.PageHelper;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.google.common.collect.Lists;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.mapper.VehicleMapper;
import com.xxfc.platform.vehicle.pojo.ResultVehicleVo;
import com.xxfc.platform.vehicle.pojo.VehicleExcelVo;
import com.xxfc.platform.vehicle.pojo.VehiclePageQueryVo;
import org.apache.commons.beanutils.BeanUtilsBean;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@Service
public class VehicleInformationDownloadBiz extends BaseBiz<VehicleMapper, Vehicle> {
@Autowired
private VehicleBiz vehicleBiz;
public List<VehicleExcelVo> getByPageNotAllData(VehiclePageQueryVo vehiclePageQueryVo, List<Integer> companyList) throws Exception {
Map<String, Object> params = PropertyUtils.describe(vehiclePageQueryVo);
//处理预定日期相关参数
vehicleBiz.adjustBookedInfoParam(params, vehiclePageQueryVo);
if (companyList != null && companyList.size() > 0) {
params.put("companyList", companyList);
} else {
params.put("companyList", Arrays.asList(-1));
}
return mapper.getVehicleExcelVoNotAllData(params);
}
public List<VehicleExcelVo> getByPage(VehiclePageQueryVo vehiclePageQueryVo) throws Exception {
Map<String, Object> params = PropertyUtils.describe(vehiclePageQueryVo);
//处理预定日期相关参数
vehicleBiz.adjustBookedInfoParam(params, vehiclePageQueryVo);
params.get("yearMonthAndParam");
if (vehiclePageQueryVo.getModelId() == null) {
params.remove("modelId");
}
return mapper.getVehicleExcelVo(params);
}
public List<VehicleExcelVo> getList(String vehiclePageQueryVoJson, UserDTO userDTO) {
VehiclePageQueryVo vehiclePageQueryVo = new VehiclePageQueryVo();
try {
if (StringUtils.isNotBlank(vehiclePageQueryVoJson)){
vehiclePageQueryVo = JSON.parseObject(vehiclePageQueryVoJson, VehiclePageQueryVo.class);
}
if (userDTO.getDataAll() == 2) {
List<Integer> companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
return getByPageNotAllData(vehiclePageQueryVo, companyList);
}
return getByPage(vehiclePageQueryVo);
} catch (Exception e) {
e.printStackTrace();
}
return new ArrayList();
}
}
...@@ -12,9 +12,13 @@ import java.util.Map; ...@@ -12,9 +12,13 @@ import java.util.Map;
public interface VehicleMapper extends Mapper<Vehicle> { public interface VehicleMapper extends Mapper<Vehicle> {
public List<ResultVehicleVo> getByPage(Map<String, Object> params); public List<ResultVehicleVo> getByPage(Map<String, Object> params);
public List<ResultVehicleVo> getByPageNotAllData(Map<String, Object> params); public List<ResultVehicleVo> getByPageNotAllData(Map<String, Object> params);
List<VehicleExcelVo> getVehicleExcelVo(Map<String, Object> params);
List<VehicleExcelVo> getVehicleExcelVoNotAllData(Map<String, Object> params);
public int updateStatusById(Map<String, Object> params); public int updateStatusById(Map<String, Object> params);
......
package com.xxfc.platform.vehicle.rest.admin;
import cn.hutool.core.io.IoUtil;
import cn.hutool.poi.excel.ExcelUtil;
import cn.hutool.poi.excel.ExcelWriter;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.UserDTO;
import com.github.wxiaoqi.security.auth.client.config.UserAuthConfig;
import com.github.wxiaoqi.security.common.exception.BaseException;
import com.xxfc.platform.vehicle.biz.VehicleBiz;
import com.xxfc.platform.vehicle.biz.VehicleInformationDownloadBiz;
import com.xxfc.platform.vehicle.common.BaseController;
import com.xxfc.platform.vehicle.pojo.VehicleExcelVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@RestController
@RequestMapping("VehicleInformationDownload")
@Slf4j
public class VehicleInformationDownloadController extends BaseController<VehicleInformationDownloadBiz> {
@Autowired
UserFeign userFeign;
@Autowired
private UserAuthConfig userAuthConfig;
@Autowired
private VehicleBiz vehicleBiz;
@Autowired
HttpServletResponse response;
@GetMapping("/excel")
public void downloadExcel(@RequestParam(value = "vehiclePageQueryVoJson",required = false) String vehiclePageQueryVoJson) throws Exception {
UserDTO userDTO = userFeign.userinfoByToken(userAuthConfig.getToken(request)).getData();
if (userDTO==null) {
throw new BaseException("token已失效");
}
List<VehicleExcelVo> rows = baseBiz.getList(vehiclePageQueryVoJson, userDTO);
ExcelWriter writer = ExcelUtil.getWriter(true);
writer.addHeaderAlias("numberPlate", "车牌号");
writer.addHeaderAlias("code", "车辆编码");
writer.addHeaderAlias("vehicleType", "车型");
writer.addHeaderAlias("useType", "用途");
writer.addHeaderAlias("parkBranchCompanyName", "停靠分公司");
// 一次性写出内容,使用默认样式,强制输出标题
writer.write(rows, true);
//response为HttpServletResponse对象
response.setContentType("application/vnd.ms-excel;charset=utf-8");
//test.xls是弹出下载对话框的文件名,不能为中文,中文请自行编码
response.setHeader("Content-Disposition", "attachment;filename=clxx.xlsx");
//out为OutputStream,需要写出到的目标流
ServletOutputStream out = response.getOutputStream();
writer.flush(out, true);
// 关闭writer,释放内存
writer.close();
//此处记得关闭输出Servlet流
IoUtil.close(out);
}
}
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