【admin】新增# 1.新增维修单报表导出功能(已完成前四张表格,但是还差图片)

dev1.0
JaxCen 2024-10-17 15:33:26 +08:00
parent 575cee7125
commit 5a2b04c8fe
11 changed files with 438 additions and 35 deletions

View File

@ -113,6 +113,7 @@ public class ParentRepairOrderController {
@ApiOperation(value = "模块管理 - 导出Excel报表") @ApiOperation(value = "模块管理 - 导出Excel报表")
@PostMapping(value="/exportExcel") @PostMapping(value="/exportExcel")
@ResponseBody
public void exportExcel(@Validated @RequestBody ParentRepairOrderParam params, HttpServletResponse response) { public void exportExcel(@Validated @RequestBody ParentRepairOrderParam params, HttpServletResponse response) {
iParentRepairOrderService.exportExcel(params,response); iParentRepairOrderService.exportExcel(params,response);
} }

View File

@ -13,21 +13,32 @@ import com.hcy.admin.service.order.IParentRepairOrderService;
import com.hcy.admin.validate.common.PageParam; import com.hcy.admin.validate.common.PageParam;
import com.hcy.admin.validate.order.ParentRepairOrderParam; import com.hcy.admin.validate.order.ParentRepairOrderParam;
import com.hcy.admin.vo.excel.OfferDetailEntity; import com.hcy.admin.vo.excel.OfferDetailEntity;
import com.hcy.admin.vo.excel.order.ExcelRepairOrder;
import com.hcy.admin.vo.excel.order.GetMaterialsOrder; import com.hcy.admin.vo.excel.order.GetMaterialsOrder;
import com.hcy.admin.vo.excel.order.ScrapForm;
import com.hcy.admin.vo.excel.order.WarehouseReceipt;
import com.hcy.admin.vo.order.*; import com.hcy.admin.vo.order.*;
import com.hcy.common.constant.GlobalConstant; import com.hcy.common.constant.GlobalConstant;
import com.hcy.common.constant.TimeConstant;
import com.hcy.common.core.PageResult; import com.hcy.common.core.PageResult;
import com.hcy.common.dto.order.*; import com.hcy.common.dto.order.*;
import com.hcy.common.entity.client.Client; import com.hcy.common.entity.client.Client;
import com.hcy.common.entity.fault.Fault;
import com.hcy.common.entity.order.ParentRepairOrder; import com.hcy.common.entity.order.ParentRepairOrder;
import com.hcy.common.entity.order.RepairOrder; import com.hcy.common.entity.order.RepairOrder;
import com.hcy.common.entity.order.RepairOrderAudit;
import com.hcy.common.entity.setting.DictData;
import com.hcy.common.entity.system.SystemAuthAdmin; import com.hcy.common.entity.system.SystemAuthAdmin;
import com.hcy.common.entity.user.User; import com.hcy.common.entity.user.User;
import com.hcy.common.enums.order.RepairOrderStatusEnum; import com.hcy.common.enums.order.RepairOrderStatusEnum;
import com.hcy.common.exception.OperateException; import com.hcy.common.exception.OperateException;
import com.hcy.common.mapper.client.ClientMapper;
import com.hcy.common.mapper.fault.FaultMapper;
import com.hcy.common.mapper.order.OrderSparePartMapper; import com.hcy.common.mapper.order.OrderSparePartMapper;
import com.hcy.common.mapper.order.ParentRepairOrderMapper; import com.hcy.common.mapper.order.ParentRepairOrderMapper;
import com.hcy.common.mapper.order.RepairOrderAuditMapper;
import com.hcy.common.mapper.order.RepairOrderMapper; import com.hcy.common.mapper.order.RepairOrderMapper;
import com.hcy.common.mapper.setting.DictDataMapper;
import com.hcy.common.mapper.system.SystemAuthAdminMapper; import com.hcy.common.mapper.system.SystemAuthAdminMapper;
import com.hcy.common.mapper.user.UserMapper; import com.hcy.common.mapper.user.UserMapper;
import com.hcy.common.utils.ArrayUtil; import com.hcy.common.utils.ArrayUtil;
@ -36,6 +47,7 @@ import com.hcy.common.utils.TimeUtil;
import com.hcy.common.utils.UrlUtil; import com.hcy.common.utils.UrlUtil;
import com.hcy.common.config.GlobalConfig; import com.hcy.common.config.GlobalConfig;
import com.hcy.common.utils.excel.EasyExcelUtil; import com.hcy.common.utils.excel.EasyExcelUtil;
import org.apache.poi.ss.formula.functions.T;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.ClassPathResource;
@ -45,7 +57,10 @@ import org.springframework.util.Assert;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.ServletOutputStream; import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.InputStream; import java.io.InputStream;
import java.net.URL;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -70,6 +85,18 @@ public class ParentRepairOrderServiceImpl implements IParentRepairOrderService {
@Resource @Resource
OrderSparePartMapper orderSparePartMapper; OrderSparePartMapper orderSparePartMapper;
@Resource
ClientMapper clientMapper;
@Resource
RepairOrderAuditMapper repairOrderAuditMapper;
@Resource
FaultMapper faultMapper;
@Resource
DictDataMapper dictDataMapper;
/** /**
* *
* *
@ -319,60 +346,108 @@ public class ParentRepairOrderServiceImpl implements IParentRepairOrderService {
public void exportExcel(ParentRepairOrderParam params, HttpServletResponse response) { public void exportExcel(ParentRepairOrderParam params, HttpServletResponse response) {
try { try {
Assert.notNull(params.getClientId(),"客户id不可为空"); Assert.notNull(params.getClientId(),"客户id不可为空");
ServletOutputStream out = response.getOutputStream();
LambdaQueryWrapper<ParentRepairOrder> lambdaQueryWrapper = new LambdaQueryWrapper<ParentRepairOrder>() LambdaQueryWrapper<ParentRepairOrder> lambdaQueryWrapper = new LambdaQueryWrapper<ParentRepairOrder>()
.eq(ParentRepairOrder::getIsDelete, GlobalConstant.NOT_DELETE) .eq(ParentRepairOrder::getIsDelete, GlobalConstant.NOT_DELETE)
.eq(ParentRepairOrder::getClientId, params.getClientId()) .eq(ParentRepairOrder::getClientId, params.getClientId())
.between(ParentRepairOrder::getCreateTime, params.getStartTime(), params.getEndTime()); .between(params.getStartTime() != null && params.getEndTime() != null
FillConfig fillConfig = FillConfig.builder().forceNewRow(true).build(); ,ParentRepairOrder::getCreateTime, params.getStartTime(), params.getEndTime());
//查询待导出的维修单
List<ParentRepairOrder> parentRepairOrders = parentRepairOrderMapper.selectList(lambdaQueryWrapper); List<ParentRepairOrder> parentRepairOrders = parentRepairOrderMapper.selectList(lambdaQueryWrapper);
//获取前端传的类型
String[] typeIdList = params.getTypeIds().split(","); String[] typeIdList = params.getTypeIds().split(",");
EasyExcelUtil.initResponse(response, "领料单");
// 文件模板输入流,将 excel 模板放到 resources 目录下 // 文件模板输入流,将 excel 模板放到 resources 目录下
InputStream templateFile = new ClassPathResource("templates/excel/materialRequisition.xlsx").getInputStream(); InputStream templateFile = new ClassPathResource("templates/excel/materialRequisition.xlsx").getInputStream();
int index1 = 0; //优化查询用户数据
Map<Long,SystemAuthAdmin> adminMap = new HashMap<>(); Map<Long,SystemAuthAdmin> adminMap = new HashMap<>();
// XSSFWorkbook workbook = new XSSFWorkbook(templateFile);
// for (int i = 0; i < parentRepairOrders.size(); i++) { //动态模板
// if(i == 0){ /*ByteArrayOutputStream bos = new ByteArrayOutputStream();
// workbook.setSheetName(0, parentRepairOrders.get(i).getOrderNo() + "领料单"); //原模板只有一个sheet通过poi复制出需要的sheet个数的模板
// }else{ XSSFWorkbook workbook = new XSSFWorkbook(templateFile);
// workbook.cloneSheet(0,parentRepairOrders.get(i).getOrderNo() + "领料单"); //设置模板的第一个sheet的名称
// } workbook.setSheetName(0, parentRepairOrders.get(0).getOrderNo());
// } for (int i = 1; i < parentRepairOrders.size(); i++) {
// workbook.write(out); //复制模板得到第i个sheet
workbook.cloneSheet(0, parentRepairOrders.get(i).getOrderNo());
}
//写到流里
workbook.write(bos);
byte[] bArray = bos.toByteArray();
//获取设置多个sheet的输出流
InputStream templateInputStream = new ByteArrayInputStream(bArray);*/
//功率字典
Map<String, String> distMap = dictDataMapper.selectList(new LambdaQueryWrapper<DictData>()
.eq(DictData::getIsDelete, GlobalConstant.NOT_DELETE)
.eq(DictData::getTypeId, 46))
.stream()
.collect(Collectors.toMap(DictData::getValue, DictData::getName));
ServletOutputStream out = response.getOutputStream();
FillConfig fillConfig = FillConfig.builder().forceNewRow(true).build();
//设置多sheet输出流
ExcelWriter writer = EasyExcel ExcelWriter writer = EasyExcel
.write(out) .write(out)
.withTemplate(templateFile) .withTemplate(templateFile)
.build(); .build();
//公共数据
OfferDetailEntity offerDetail = new OfferDetailEntity();
//入仓单
List<WarehouseReceipt> warehouseReceiptList = new ArrayList<>();
int index0 = 1;
//领料单
List<GetMaterialsOrder> getMaterialsOrderList = new ArrayList<>();
int index1 = 1;
//维修单
List<ExcelRepairOrder> excelRepairOrderList = new ArrayList<>();
int index2 = 1;
//报废单
List<ScrapForm> scrapFormList = new ArrayList<>();
int index3 = 1;
for (ParentRepairOrder parentRepairOrder : parentRepairOrders) { for (ParentRepairOrder parentRepairOrder : parentRepairOrders) {
List<RepairOrder> repairOrderList = repairOrderMapper.findRepairOrderByParentId(parentRepairOrder.getId()); List<RepairOrder> repairOrderList = repairOrderMapper.findRepairOrderByParentId(parentRepairOrder.getId());
int totalQuantity = 0;
int index = 1;
OfferDetailEntity offerDetail = new OfferDetailEntity();
offerDetail.setDeliveryTime(TimeUtil.timestampToDate(System.currentTimeMillis() / 1000,"yyyy-MM-dd"));
offerDetail.setOrderNo(parentRepairOrder.getOrderNo());
//获取创建者信息 //获取创建者信息
SystemAuthAdmin contentAdmin= systemAuthAdminMapper.findSystemAuthAdminByUserId(Math.toIntExact(parentRepairOrder.getCreatorId())); SystemAuthAdmin contentAdmin = systemAuthAdminMapper.findSystemAuthAdminByUserId(Math.toIntExact(parentRepairOrder.getCreatorId()));
if(contentAdmin != null){ if(contentAdmin != null){
offerDetail.setCreator(contentAdmin.getUsername()); offerDetail.setCreator(contentAdmin.getUsername());
} }
offerDetail.setTotalQty(totalQuantity); //设置客户信息
Client client = clientMapper.findClientById(parentRepairOrder.getClientId());
if(client != null){
offerDetail.setClientName(client.getClientName());
}
WriteSheet sheet = EasyExcel.writerSheet(0,parentRepairOrder.getOrderNo() + "领料单").build();
//填充内容占位符
writer.fill(offerDetail, sheet);
List<GetMaterialsOrder> getMaterialsOrderList = new ArrayList<>();
for (RepairOrder item : repairOrderList) { for (RepairOrder item : repairOrderList) {
for (String ids : typeIdList) { for (String ids : typeIdList) {
if(ids.equals("0")){
WarehouseReceipt warehouseReceipt = new WarehouseReceipt();
warehouseReceipt.setOrderNo(parentRepairOrder.getOrderNo());
warehouseReceipt.setIndex(index0);
warehouseReceipt.setSpecificationsModel(item.getModuleNumber());
warehouseReceipt.setModelCode(item.getModuleCode());
warehouseReceipt.setPower(distMap.get(item.getModulePower().toString()));
if(item.getRepairOrNot() != null){
warehouseReceipt.setIsRepair(item.getRepairOrNot() == 0 ? "是" : "否");
}
if(item.getMaintenanceResult() != null){
warehouseReceipt.setResult(item.getMaintenanceResult() == 0 ? "报废" : "OK");
}
if(item.getReceiverId() != null){
SystemAuthAdmin maintenanceMan = systemAuthAdminMapper.findSystemAuthAdminById(Math.toIntExact(item.getReceiverId()));
if(maintenanceMan != null){
warehouseReceipt.setMaintenanceMan(maintenanceMan.getUsername());
}
}
warehouseReceipt.setCreator(offerDetail.getCreator());
warehouseReceipt.setDeliveryTime(TimeUtil.dateToString(parentRepairOrder.getCreateTime(), TimeConstant.DATE_FORMAT));
warehouseReceiptList.add(warehouseReceipt);
index0++;
}
if(ids.equals("1")){ if(ids.equals("1")){
List<OrderSparePartDto> orderSparePartList = orderSparePartMapper.findOrderSparePartByModuleId(item.getId()); List<OrderSparePartDto> orderSparePartList = orderSparePartMapper.findOrderSparePartByModuleId(item.getId());
if(orderSparePartList.isEmpty()){ if(orderSparePartList.isEmpty()){
@ -380,7 +455,8 @@ public class ParentRepairOrderServiceImpl implements IParentRepairOrderService {
} }
for (OrderSparePartDto orderSparePartDto : orderSparePartList) { for (OrderSparePartDto orderSparePartDto : orderSparePartList) {
GetMaterialsOrder getMaterialsOrder = new GetMaterialsOrder(); GetMaterialsOrder getMaterialsOrder = new GetMaterialsOrder();
getMaterialsOrder.setIndex(index); getMaterialsOrder.setOrderNo(parentRepairOrder.getOrderNo());
getMaterialsOrder.setIndex(index1);
getMaterialsOrder.setModelType(item.getModuleNumber()); getMaterialsOrder.setModelType(item.getModuleNumber());
getMaterialsOrder.setModelCode(item.getModuleCode()); getMaterialsOrder.setModelCode(item.getModuleCode());
getMaterialsOrder.setSparePartsCode(orderSparePartDto.getSparePartsCode()); getMaterialsOrder.setSparePartsCode(orderSparePartDto.getSparePartsCode());
@ -389,6 +465,8 @@ public class ParentRepairOrderServiceImpl implements IParentRepairOrderService {
getMaterialsOrder.setUnit(orderSparePartDto.getUnit()); getMaterialsOrder.setUnit(orderSparePartDto.getUnit());
getMaterialsOrder.setQuantityClaimed(orderSparePartDto.getCount().toString()); getMaterialsOrder.setQuantityClaimed(orderSparePartDto.getCount().toString());
getMaterialsOrder.setActualQuantity(orderSparePartDto.getCount().toString()); getMaterialsOrder.setActualQuantity(orderSparePartDto.getCount().toString());
getMaterialsOrder.setDeliveryTime(TimeUtil.dateToString(parentRepairOrder.getCreateTime(), TimeConstant.DATE_FORMAT));
getMaterialsOrder.setCreator(offerDetail.getCreator());
SystemAuthAdmin systemAuthAdmin; SystemAuthAdmin systemAuthAdmin;
if(adminMap.get(orderSparePartDto.getApplicantId()) != null){ if(adminMap.get(orderSparePartDto.getApplicantId()) != null){
systemAuthAdmin = adminMap.get(orderSparePartDto.getApplicantId()); systemAuthAdmin = adminMap.get(orderSparePartDto.getApplicantId());
@ -399,19 +477,129 @@ public class ParentRepairOrderServiceImpl implements IParentRepairOrderService {
if(systemAuthAdmin != null){ if(systemAuthAdmin != null){
getMaterialsOrder.setRecipient(systemAuthAdmin.getUsername()); getMaterialsOrder.setRecipient(systemAuthAdmin.getUsername());
} }
index1++;
getMaterialsOrderList.add(getMaterialsOrder); getMaterialsOrderList.add(getMaterialsOrder);
index++; offerDetail.setTotalQty(offerDetail.getTotalQty() + orderSparePartDto.getCount());
totalQuantity += orderSparePartDto.getCount(); }
}
if(ids.equals("2")){
ExcelRepairOrder excelRepairOrder = new ExcelRepairOrder();
excelRepairOrder.setOrderNo(parentRepairOrder.getOrderNo());
excelRepairOrder.setIndex(index2);
excelRepairOrder.setSpecificationsModel(item.getModuleNumber());
excelRepairOrder.setModelCode(item.getModuleCode());
excelRepairOrder.setPower(distMap.get(item.getModulePower().toString()));
if(item.getRepairOrNot() != null){
excelRepairOrder.setIsRepair(item.getRepairOrNot() == 0 ? "是" : "否");
}
if(item.getMaintenanceResult() != null){
excelRepairOrder.setResult(item.getMaintenanceResult() == 0 ? "报废" : "OK");
}
if(item.getReceiverId() != null){
SystemAuthAdmin maintenanceMan = systemAuthAdminMapper.findSystemAuthAdminById(Math.toIntExact(item.getReceiverId()));
if(maintenanceMan != null){
excelRepairOrder.setMaintenanceMan(maintenanceMan.getUsername());
}
} }
RepairOrderAudit repairOrderAudit = repairOrderAuditMapper.findRepairOrderAuditByRepairOrderIdAndReviewRequest(item.getId(), 3L);
if(repairOrderAudit != null){
Fault faultPhenomenon = faultMapper.findFaultById(repairOrderAudit.getFaultPhenomenonId());
if(faultPhenomenon != null){
excelRepairOrder.setFaultPhenomenon(faultPhenomenon.getName());
}
Fault faultCause = faultMapper.findFaultById(repairOrderAudit.getFaultCauseId());
if(faultCause != null){
excelRepairOrder.setFaultCause(faultCause.getName());
}
Fault sourceOfDamage = faultMapper.findFaultById(repairOrderAudit.getSourceOfDamageId());
if(sourceOfDamage != null){
excelRepairOrder.setSourceOfDamage(sourceOfDamage.getName());
}
Fault operationsSuggest = faultMapper.findFaultById(repairOrderAudit.getOperationsSuggestId());
if(operationsSuggest != null){
excelRepairOrder.setOperationsSuggest(operationsSuggest.getName());
}
}
excelRepairOrder.setCreator(offerDetail.getCreator());
excelRepairOrder.setDeliveryTime(TimeUtil.dateToString(parentRepairOrder.getCreateTime(), TimeConstant.DATE_FORMAT));
excelRepairOrderList.add(excelRepairOrder);
index2++;
}
if(ids.equals("3")){
RepairOrderAudit repairOrderAudit = repairOrderAuditMapper.findRepairOrderAuditByRepairOrderIdAndReviewRequest(item.getId(), 3L);
if(repairOrderAudit == null){
continue;
}
ScrapForm scrapForm = new ScrapForm();
scrapForm.setOrderNo(parentRepairOrder.getOrderNo());
scrapForm.setIndex(index3);
scrapForm.setSpecificationsModel(item.getModuleNumber());
scrapForm.setModelCode(item.getModuleCode());
scrapForm.setPower(distMap.get(item.getModulePower().toString()));
//scrapForm.setScrapImg(new URL(repairOrderAudit.getScrapImg()));
scrapForm.setScrapImg(repairOrderAudit.getScrapImg());
if(item.getRepairOrNot() != null){
scrapForm.setIsRepair(item.getRepairOrNot() == 0 ? "是" : "否");
}
if(item.getMaintenanceResult() != null){
scrapForm.setResult(item.getMaintenanceResult() == 0 ? "报废" : "OK");
}
if(item.getReceiverId() != null){
SystemAuthAdmin maintenanceMan = systemAuthAdminMapper.findSystemAuthAdminById(Math.toIntExact(item.getReceiverId()));
if(maintenanceMan != null){
scrapForm.setMaintenanceMan(maintenanceMan.getUsername());
}
}
Fault faultPhenomenon = faultMapper.findFaultById(repairOrderAudit.getFaultPhenomenonId());
if(faultPhenomenon != null){
scrapForm.setFaultPhenomenon(faultPhenomenon.getName());
}
Fault faultCause = faultMapper.findFaultById(repairOrderAudit.getFaultCauseId());
if(faultCause != null){
scrapForm.setFaultCause(faultCause.getName());
}
Fault sourceOfDamage = faultMapper.findFaultById(repairOrderAudit.getSourceOfDamageId());
if(sourceOfDamage != null){
scrapForm.setSourceOfDamage(sourceOfDamage.getName());
}
Fault operationsSuggest = faultMapper.findFaultById(repairOrderAudit.getOperationsSuggestId());
if(operationsSuggest != null){
scrapForm.setOperationsSuggest(operationsSuggest.getName());
}
scrapForm.setCreator(offerDetail.getCreator());
scrapForm.setDeliveryTime(TimeUtil.dateToString(parentRepairOrder.getCreateTime(), TimeConstant.DATE_FORMAT));
scrapFormList.add(scrapForm);
index3++;
} }
} }
} }
// 填充列表占位符
writer.fill(getMaterialsOrderList, fillConfig, sheet);
index1++;
} }
for (int i = 0; i < 5; i++) {
WriteSheet sheet = EasyExcel.writerSheet(i).build();
writer.fill(offerDetail, sheet);
switch (i){
case 0:
writer.fill(warehouseReceiptList, fillConfig, sheet);
break;
case 1:
writer.fill(getMaterialsOrderList, fillConfig, sheet);
break;
case 2:
writer.fill(excelRepairOrderList,fillConfig,sheet);
break;
case 3:
writer.fill(scrapFormList, fillConfig, sheet);
break;
case 4:
break;
case 5:
break;
}
}
writer.finish(); writer.finish();
out.close(); out.close();
templateFile.close(); templateFile.close();

View File

@ -27,4 +27,10 @@ public class OfferDetailEntity {
@ApiModelProperty(value = "合计数量") @ApiModelProperty(value = "合计数量")
private Integer totalQty; private Integer totalQty;
public Integer getTotalQty() {
if(totalQty == null){
return 0;
}
return totalQty;
}
} }

View File

@ -0,0 +1,71 @@
package com.hcy.admin.vo.excel.order;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.net.URL;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ExcelRepairOrder {
@ApiModelProperty(value = "单据编号")
private String orderNo;
@ApiModelProperty(value = "序号")
private Integer index;
@ApiModelProperty(value = "型号/规格")
private String specificationsModel;
@ApiModelProperty(value = "模块代码")
private String modelCode;
@ApiModelProperty(value = "功率")
private String power;
@ApiModelProperty(value = "是否返修")
private String isRepair;
@ApiModelProperty(value = "维修人员")
private String maintenanceMan;
@ApiModelProperty(value = "故障现象")
private String faultPhenomenon;
@ApiModelProperty(value = "故障原因")
private String faultCause;
@ApiModelProperty(value = "维修前图片")
private URL repairFront;
@ApiModelProperty(value = "维修中图片")
private URL repairIng;
@ApiModelProperty(value = "维修后图片")
private URL repairBack;
@ApiModelProperty(value = "更换明细")
private String replacementDetail;
@ApiModelProperty(value = "维修结论")
private String result;
@ApiModelProperty(value = "损坏原因")
private String sourceOfDamage;
@ApiModelProperty(value = "运维建议")
private String operationsSuggest;
@ApiModelProperty(value = "制单及经手人")
private String creator;
@ApiModelProperty(value = "制单日期")
private String deliveryTime;
}

View File

@ -12,6 +12,9 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor @AllArgsConstructor
public class GetMaterialsOrder { public class GetMaterialsOrder {
@ApiModelProperty(value = "单据编号")
private String orderNo;
@ApiModelProperty(value = "序号") @ApiModelProperty(value = "序号")
private Integer index; private Integer index;
@ -41,4 +44,10 @@ public class GetMaterialsOrder {
@ApiModelProperty(value = "领取人员") @ApiModelProperty(value = "领取人员")
private String recipient; private String recipient;
@ApiModelProperty(value = "制单人")
private String creator;
@ApiModelProperty(value = "制单日期")
private String deliveryTime;
} }

View File

@ -0,0 +1,61 @@
package com.hcy.admin.vo.excel.order;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.net.URL;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ScrapForm {
@ApiModelProperty(value = "单据编号")
private String orderNo;
@ApiModelProperty(value = "序号")
private Integer index;
@ApiModelProperty(value = "型号/规格")
private String specificationsModel;
@ApiModelProperty(value = "模块代码")
private String modelCode;
@ApiModelProperty(value = "功率")
private String power;
@ApiModelProperty(value = "是否返修")
private String isRepair;
@ApiModelProperty(value = "维修人员")
private String maintenanceMan;
@ApiModelProperty(value = "故障现象")
private String faultPhenomenon;
@ApiModelProperty(value = "故障原因")
private String faultCause;
@ApiModelProperty(value = "报废图片")
private String scrapImg;
@ApiModelProperty(value = "维修结论")
private String result;
@ApiModelProperty(value = "损坏原因")
private String sourceOfDamage;
@ApiModelProperty(value = "运维建议")
private String operationsSuggest;
@ApiModelProperty(value = "制单及经手人")
private String creator;
@ApiModelProperty(value = "制单日期")
private String deliveryTime;
}

View File

@ -0,0 +1,44 @@
package com.hcy.admin.vo.excel.order;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class WarehouseReceipt {
@ApiModelProperty(value = "单据编号")
private String orderNo;
@ApiModelProperty(value = "序号")
private Integer index;
@ApiModelProperty(value = "型号/规格")
private String specificationsModel;
@ApiModelProperty(value = "模块代码")
private String modelCode;
@ApiModelProperty(value = "功率")
private String power;
@ApiModelProperty(value = "是否返修")
private String isRepair;
@ApiModelProperty(value = "维修结果")
private String result;
@ApiModelProperty(value = "维修人员")
private String maintenanceMan;
@ApiModelProperty(value = "制单人")
private String creator;
@ApiModelProperty(value = "制单日期")
private String deliveryTime;
}

View File

@ -0,0 +1,9 @@
package com.hcy.common.constant;
public class TimeConstant {
public final static String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
public final static String DATETIME_NO_SS_FORMAT = "yyyy-MM-dd HH:mm";
public final static String DATE_FORMAT = "yyyy-MM-dd";
public final static String MONTH_DAY_HOUR_MINUTE = "MM-dd HH:mm";
}

View File

@ -9,6 +9,7 @@ import com.hcy.common.dto.order.RepairOrderDto;
import com.hcy.common.entity.order.RepairOrderAudit; import com.hcy.common.entity.order.RepairOrderAudit;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/** /**
* Mapper * Mapper
@ -23,4 +24,7 @@ public interface RepairOrderAuditMapper extends IBaseMapper<RepairOrderAudit> {
* @return * @return
*/ */
IPage<RepairOrderAuditDto> auditMattersList(@Param("page") Page page, @Param("param")RepairOrderAuditDto repairOrderAuditDto); IPage<RepairOrderAuditDto> auditMattersList(@Param("page") Page page, @Param("param")RepairOrderAuditDto repairOrderAuditDto);
@Select("select * from la_repair_order_audit where repair_order_id = #{repairOrderId} and review_request = #{reviewRequest}")
RepairOrderAudit findRepairOrderAuditByRepairOrderIdAndReviewRequest(@Param("repairOrderId") Long repairOrderId,@Param("reviewRequest") Long ReviewRequest);
} }

View File

@ -37,6 +37,16 @@ public class TimeUtil {
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(time * 1000)); return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(time * 1000));
} }
/**
*
* @param date
* @param format
* @return string
*/
public static String dateToString(Date date, String format) {
return new SimpleDateFormat(format).format(date);
}
/** /**
* Date * Date
* @param time * @param time