Commit 1af06660 authored by hanfeng's avatar hanfeng

Merge branch 'master-bug-vehiclemodel-hf' into master2

# Conflicts:
#	xx-uccn/xx-uccn-server/src/main/java/com/xxfc/platform/uccn/rest/VehicleModelController.java
parents 04e72e83 098f6cb7
......@@ -18,6 +18,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......
......@@ -5,7 +5,7 @@ import lombok.Data;
import java.util.Date;
@Data
public class ResultVehicleVo {
public class ResultVehicleVo {
/**
* 主键(uuid)
*/
......@@ -92,27 +92,44 @@ public class ResultVehicleVo {
*/
private String vin;
/**
* 险公司,见常量表
* 商业险公司,见常量表
*/
private Integer insuranceCompany;
/**
* 险单号
* 商业险单号
*/
private String insuranceNo;
/**
* 险开始时间
* 商业险开始时间
*/
private Date insuranceStartDate;
/**
* 险结束时间
* 商业险结束时间
*/
private Date insuranceEndDate;
/**
* 交强险公司
*/
private Integer strongInsuranceCompany;
/**
* 交强险单号
*/
private String strongInsuranceNo;
/**
* 交强险时间
*/
private Date strongInsuranceEndDate;
/**
* 年审时间
*/
......
package com.xxfc.platform.vehicle.pojo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@Data
public class VehicleExcelVo {
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class VehicleExcelVo {
private static Map<Integer, String> map = new HashMap();
static {
map.put(1, "正常运行");
map.put(3, "报废");
map.put(4, "出车");
map.put(6, "维修");
map.put(7, "保养");
map.put(8, "上牌");
}
/**
* 车牌号,空字符串-没有
......@@ -34,7 +52,66 @@ public class VehicleExcelVo {
/**
* 停靠分支机构(名)
*/
private String parkBranchCompanyName;
/**
* 车辆状态: 1-正常运行 2-维修 3-报废
*/
private Integer status;
/**
* 所属人 名称
*/
private String belongToName;
/**
* 车架号
*/
private String vin;
/**
* 发动机号
*/
private String engineNum;
/**
* 商业险公司,见常量表
*/
private String insuranceCompany;
/**
* 商业险单号
*/
private String insuranceNo;
/**
* 商业险结束时间
*/
private Date insuranceEndDate;
/**
* 交强险公司
*/
private String strongInsuranceCompany;
/**
* 交强险单号
*/
private String strongInsuranceNo;
/**
* 交强险时间
*/
private Date strongInsuranceEndDate;
public String getStatus() {
return map.get(status);
}
}
package com.xxfc.platform.vehicle.pojo;
import com.sun.org.apache.xpath.internal.operations.Bool;
import lombok.Data;
import java.util.Date;
......@@ -138,6 +139,9 @@ public class VehiclePageQueryVo {
*/
private Integer modelId;
/**
* 判断是否需要下载
*/
private boolean download;
}
package com.xxfc.platform.vehicle.biz;
import com.alibaba.fastjson.JSON;
import com.github.wxiaoqi.security.admin.entity.Group;
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.Constant;
import com.xxfc.platform.vehicle.entity.Vehicle;
import com.xxfc.platform.vehicle.mapper.VehicleMapper;
import com.xxfc.platform.vehicle.pojo.ResultVehicleVo;
......@@ -22,6 +24,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
@Slf4j
......@@ -29,7 +32,8 @@ public class VehicleInformationDownloadBiz extends BaseBiz<VehicleMapper, Vehicl
@Autowired
private VehicleBiz vehicleBiz;
@Autowired
private ConstantBiz constantBiz;
@Autowired
private BranchCompanyVehicleCountBiz branchCompanyVehicleCountBiz;
......@@ -67,8 +71,8 @@ public class VehicleInformationDownloadBiz extends BaseBiz<VehicleMapper, Vehicl
try {
if (StringUtils.isNotBlank(vehiclePageQueryVoJson)){
vehiclePageQueryVo = JSON.parseObject(vehiclePageQueryVoJson, VehiclePageQueryVo.class);
vehiclePageQueryVo.setDownload(true);
}
if (userDTO.getDataAll() == 2) {
List<Integer> companyList = vehicleBiz.dataCompany(userDTO.getDataZone(), userDTO.getDataCompany());
return getByPageNotAllData(vehiclePageQueryVo, companyList);
......@@ -83,13 +87,33 @@ public class VehicleInformationDownloadBiz extends BaseBiz<VehicleMapper, Vehicl
public List<VehicleExcelVo> getList(String vehiclePageQueryVoJson, UserDTO userDTO) throws Exception {
List<Constant> constants = constantBiz.selectList(new Constant() {{
setType(3);
}});
Map<Integer, List<Constant>> map = constants.parallelStream().collect(Collectors.groupingBy(Constant::getCode));
List<ResultVehicleVo> resultVehicleVoList = getResultVehicleVoList(vehiclePageQueryVoJson, userDTO);
ArrayList<VehicleExcelVo> arrayList = Lists.newArrayList();
resultVehicleVoList.parallelStream().forEach(result->{
resultVehicleVoList.stream().forEach(result->{
try {
VehicleExcelVo vehicleExcelVo = new VehicleExcelVo();
BeanUtilsBean.getInstance().copyProperties(vehicleExcelVo,result);
arrayList.add(vehicleExcelVo);
VehicleExcelVo build = VehicleExcelVo.builder()
.code(result.getCode())
.numberPlate(result.getNumberPlate())
.parkBranchCompanyName(result.getParkBranchCompanyName())
.status(result.getStatus())
.useTypeName(result.getUseTypeName())
.vehicleType(result.getVehicleType())
.belongToName(result.getBelongTo()!=null&&result.getBelongTo()==1?"欣新房车有限公司":result.getBelongToName())
.vin(result.getVin())
.engineNum(result.getEngineNum())
.insuranceCompany(result.getInsuranceCompany()!=null?map.get(result.getInsuranceCompany()).get(0).getVal():null)
.insuranceNo(result.getInsuranceNo())
.insuranceEndDate(result.getInsuranceEndDate())
.strongInsuranceCompany(result.getStrongInsuranceCompany()!=null?map.get(result.getStrongInsuranceCompany()).get(0).getVal():null)
.strongInsuranceNo(result.getInsuranceNo())
.strongInsuranceEndDate(result.getStrongInsuranceEndDate())
.build();
arrayList.add(build);
} catch (Exception e) {
log.error(e.getMessage());
log.error(e.getMessage(), e);
......
......@@ -50,13 +50,27 @@ public class VehicleInformationDownloadController extends BaseController<Vehicle
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("useTypeName", "用途");
writer.addHeaderAlias("numberPlate", "车牌号");
writer.addHeaderAlias("status", "车辆状态");
writer.addHeaderAlias("vehicleType", "车辆品牌");
writer.addHeaderAlias("parkBranchCompanyName", "停靠分公司");
writer.addHeaderAlias("useTypeName", "用途");
writer.addHeaderAlias("belongToName", "托管人");
writer.addHeaderAlias("vin", "车架号");
writer.addHeaderAlias("engineNum", "发动机号");
writer.addHeaderAlias("insuranceCompany", "商业险公司");
writer.addHeaderAlias("insuranceNo", "商业险单号");
writer.addHeaderAlias("insuranceEndDate", "商业险结束时间");
writer.addHeaderAlias("strongInsuranceCompany", "交强险公司");
writer.addHeaderAlias("strongInsuranceNo", "交强险单号");
writer.addHeaderAlias("strongInsuranceEndDate", "交强险时间");
// 一次性写出内容,使用默认样式,强制输出标题
writer.write(rows, true);
//response为HttpServletResponse对象
......
......@@ -207,6 +207,9 @@
v.insurance_no,
v.insurance_start_date,
v.insurance_end_date,
v.strong_insurance_company,
v.strong_insurance_no,
v.strong_insurance_end_date,
v.annual_verification_date,
v.maintenance_date,
v.maintenance_mileage,
......
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