代码更新

This commit is contained in:
梁州 2024-07-13 16:58:08 +08:00
parent 54e6bdff63
commit 0863752ec6
6 changed files with 124 additions and 13 deletions

View File

@ -1,13 +1,20 @@
package com.wms.controller;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson2.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.wms.constants.enums.*;
import com.wms.entity.app.ResponseEntity;
import com.wms.entity.app.dto.StockDto;
import com.wms.entity.app.dto.TaskDto;
import com.wms.entity.app.dto.TaskRecordDto;
import com.wms.entity.app.dto.VehicleDto;
import com.wms.entity.app.request.StockQuery;
import com.wms.entity.app.request.TaskRecordQuery;
import com.wms.entity.app.request.VehicleQuery;
import com.wms.entity.table.Vehicle;
import com.wms.service.*;
import com.wms.utils.StringUtils;
import com.wms.utils.excel.ExcelUtils;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
@ -23,6 +30,9 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import static com.wms.utils.HttpUtils.getIpAddr;
@ -36,10 +46,11 @@ import static com.wms.utils.StringUtils.convertJsonString;
@RequiredArgsConstructor(onConstructor = @__(@Autowired))
@RequestMapping(value = "/wms/excel")
public class ExcelController {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
private final Logger logger = LoggerFactory.getLogger(this.getClass());// 日志
private final StockService stockService;// 库存服务
private final HttpServletRequest servletRequest;// 请求服务
private final TaskRecordService taskRecordService;// 任务记录服务
private final VehicleService vehicleService;// 载具服务
/**
* 导入库存信息
@ -118,4 +129,25 @@ public class ExcelController {
List<TaskRecordDto> inventoryRecord = taskRecordService.selectInventoryTaskRecord(query.toTaskRecordPO());
ExcelUtils.export(response, "盘点记录报表", inventoryRecord, TaskRecordDto.class);
}
/**
* 导出入库记录
*
* @param response 请求
*/
@GetMapping("/downloadVehicleExcel")
@ResponseBody
public void downloadVehicleExcel(@RequestParam("vehicleQuery") VehicleQuery vehicleQuery, HttpServletResponse response) {
logger.info("导出载具记录,查询参数:{}请求ip{}",convertJsonString(vehicleQuery), getIpAddr(servletRequest));
List<Vehicle> vehicles = vehicleService.list(new LambdaQueryWrapper<Vehicle>()
.like(StringUtils.isNotEmpty(vehicleQuery.getVehicleId()), Vehicle::getVehicleId, vehicleQuery.getVehicleId())
.like(StringUtils.isNotEmpty(vehicleQuery.getCurrentLocation()), Vehicle::getCurrentLocation, vehicleQuery.getCurrentLocation())
.eq(vehicleQuery.getIsEmpty() != null, Vehicle::getIsEmpty, vehicleQuery.getIsEmpty())
.eq(vehicleQuery.getVehicleStatus() != null, Vehicle::getVehicleStatus, vehicleQuery.getVehicleStatus()));
if (vehicles == null || vehicles.isEmpty()) {
ExcelUtils.export(response, "载具报表", Collections.emptyList(), VehicleDto.class);
} else {
ExcelUtils.export(response, "载具报表", BeanUtil.copyToList(vehicles, VehicleDto.class), VehicleDto.class);
}
}
}

View File

@ -188,8 +188,8 @@ public class LocationController {
Page<Vehicle> page = vehicleQuery.toMpPage();
Page<Vehicle> vehiclePage = vehicleService.page(page, new LambdaQueryWrapper<Vehicle>()
.like(StringUtils.isNotEmpty(vehicleQuery.getVehicleId()), Vehicle::getVehicleId, vehicleQuery.getVehicleId())
.eq(vehicleQuery.getVehicleStatus() == null, Vehicle::getVehicleStatus, vehicleQuery.getVehicleStatus())
.eq(vehicleQuery.getIsEmpty() == null, Vehicle::getIsEmpty, vehicleQuery.getIsEmpty()));
.eq(vehicleQuery.getVehicleStatus() != null, Vehicle::getVehicleStatus, vehicleQuery.getVehicleStatus())
.eq(vehicleQuery.getIsEmpty() != null, Vehicle::getIsEmpty, vehicleQuery.getIsEmpty()));
PageDto<VehicleVO> pageDto = PageDto.of(vehiclePage, vehicle -> BeanUtil.copyProperties(vehicle, VehicleVO.class));
response.setCode(ResponseCode.OK.getCode());

View File

@ -13,7 +13,6 @@ import com.wms.entity.app.dto.TaskDto;
import com.wms.entity.app.dto.extend.StockDetailInfo;
import com.wms.entity.app.dto.extend.TaskDetailInfo;
import com.wms.entity.app.request.*;
import com.wms.entity.app.vo.TaskRecordVO;
import com.wms.entity.app.vo.TaskVO;
import com.wms.entity.table.*;
import com.wms.service.*;
@ -21,7 +20,6 @@ import com.wms.utils.HttpUtils;
import com.wms.utils.StringUtils;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;

View File

@ -1,23 +1,39 @@
package com.wms.entity.app.request;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* 入库请求
*/
@Data
public class TaskInRequest {
/**
* 载具号
*/
@JsonProperty("vehicleId")
private String vehicleId;
/**
* 起点
*/
@JsonProperty("originPoint")
private String originPoint;
/**
* 总重量
*/
@JsonProperty("totalWeight")
private BigDecimal totalWeight;
/**
* 用户名
*/
@JsonProperty("userName")
private String userName;
/**
* 物料列表
*/
@JsonProperty("goodsList")
private List<GoodsInRequest> goodsList;
}

View File

@ -1,14 +1,79 @@
package com.wms.entity.app.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.wms.entity.app.dto.extend.StockDetailInfo;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDateTime;
@Data
public class StockVo {
/**
* 库存编号
*/
@JsonProperty("stockId")
private String stockId;
/**
* 库位ID
*/
@JsonProperty("locationId")
private String locationId;
/**
* 托盘号
*/
@JsonProperty("vehicleId")
private String vehicleId;
/**
* 重量
*/
@JsonProperty("weight")
private BigDecimal weight;
/**
* 库存状态
* 正常出库中锁定
*/
@JsonProperty("stockStatus")
private Integer stockStatus;
/**
* 创建时间
*/
@JsonProperty("createTime")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 最后更新时间
*/
@JsonProperty("lastUpdateTime")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime lastUpdateTime;
/**
* 最后更新用户
*/
@JsonProperty("lastUpdateUser")
private String lastUpdateUser;
/**
* 是否盘点
*/
@JsonProperty("isInventory")
private Integer isInventory;
/**
* 盘点任务号 盘点出库和盘点入库同样
*/
@JsonProperty("inventoryTaskId")
private String inventoryTaskId;
/**
* 呆滞天数
*/
@JsonProperty("noUseDays")
private Integer noUseDays;
/**
* 物料相关信息
*/
@JsonProperty("goodsRelated")
private StockDetailInfo goodsRelated;
}

View File

@ -13,15 +13,15 @@ spring:
# password: coder
# driver-class-name: com.mysql.cj.jdbc.Driver
# 宝开服务器--内网
# url: jdbc:mysql://192.168.3.254:3306/wms_miniload_bk7?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true
# username: coder
# password: coder
# driver-class-name: com.mysql.cj.jdbc.Driver
# 上线环境
url: jdbc:mysql://192.168.3.254:3306/wms_miniload_bk7_test?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true
url: jdbc:mysql://192.168.3.254:3306/wms_miniload_bk7?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true
username: coder
password: coder
driver-class-name: com.mysql.cj.jdbc.Driver
# 测试环境
# url: jdbc:mysql://192.168.3.254:3306/wms_miniload_bk7_test?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true
# username: coder
# password: coder
# driver-class-name: com.mysql.cj.jdbc.Driver
# 从库
# slave_1:
# url: jdbc:mysql://localhost:3306/wms_miniload_bk7?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true