refactor(wms): 优化实体类定义和盘点逻辑

-为多个实体类添加或修正@TableId注解,明确主键字段
- 移除不必要的导入和注解,简化代码结构
- 优化盘点任务创建逻辑,处理空值情况
- 调整入库单生成逻辑,优化代码顺序
master
zangch@mesnac.com 1 day ago
parent 75457dcca0
commit 3ced8e35df

@ -28,7 +28,7 @@ public class WmsCheckTask extends TenantEntity {
/**
*
*/
@TableId(type = IdType.ASSIGN_ID)
@TableId(value = "task_id", type = IdType.ASSIGN_ID)
private Long taskId;
/**
@ -95,5 +95,25 @@ public class WmsCheckTask extends TenantEntity {
@TableField(exist = false)
private Integer executeMonth;
/**
*
*/
@TableField(exist = false)
private String matrialTypeName;
/**
*
*/
@TableField(exist = false)
private String warehouseCode;
/**
*
*/
@TableField(exist = false)
private String warehouseName;
}

@ -24,7 +24,7 @@ public class WmsInstockDetail{
/**
*
*/
@TableId(type = IdType.AUTO)
@TableId(value = "instock_detail_id", type = IdType.AUTO)
private Long instockDetailId;
/**

@ -1,8 +1,6 @@
package org.dromara.wms.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serial;
@ -25,6 +23,7 @@ public class WmsInstockOrder{
/**
*
*/
@TableId(value = "instock_id", type = IdType.AUTO)
private Long instockId;
/**

@ -24,7 +24,7 @@ public class WmsInstockPrint{
/**
*
*/
@TableId(type = IdType.AUTO)
@TableId(value = "instock_print_id", type = IdType.AUTO)
private Long instockPrintId;
/**

@ -23,7 +23,7 @@ public class WmsInventory {
/**
*
*/
@TableId(type = IdType.AUTO)
@TableId(value = "inventory_id", type = IdType.AUTO)
private Long inventoryId;
/**

@ -1,6 +1,8 @@
package org.dromara.wms.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.dromara.common.tenant.core.TenantEntity;
@ -24,6 +26,7 @@ public class WmsInventoryCheck extends TenantEntity {
/**
*
*/
@TableId(value = "inventory_check_id", type = IdType.AUTO)
private Long inventoryCheckId;
/**

@ -1,15 +1,11 @@
package org.dromara.wms.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* wms_inventory_check_record
@ -27,6 +23,7 @@ public class WmsInventoryCheckRecord {
/**
*
*/
@TableId(value = "ic_record_id", type = IdType.AUTO)
private Long icRecordId;
/**

@ -23,7 +23,7 @@ public class WmsOutstockDetail {
/**
*
*/
@TableId(type = IdType.AUTO)
@TableId(value = "outstock_detail_id", type = IdType.AUTO)
private Long outstockDetailId;
/**

@ -1,13 +1,10 @@
package org.dromara.wms.domain;
import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
import java.util.Date;
/**
* wms_outstock_order
@ -25,7 +22,7 @@ public class WmsOutstockOrder {
/**
*
*/
@TableId(type = IdType.AUTO)
@TableId(value = "outstock_id", type = IdType.AUTO)
private Long outstockId;
/**

@ -76,7 +76,7 @@ public class RemoteInventoryCheckServiceImpl implements RemoteInventoryCheckServ
checkBo.setPlanWarehouseId(task.getWarehouseId());
checkBo.setCheckType(task.getWmsCheckTaskType());
checkBo.setCheckStatus("0"); // 盘点状态0计划2盘点中3盘点完成
checkBo.setBeginTime(new Date());
// checkBo.setBeginTime(new Date());// 盘点开始时间
checkBo.setCheckCode(generateOrderCode());// 私有方法根据规则生成盘点单号
wmsInventoryCheckService.insertByBo(checkBo);
String checkCode = checkBo.getCheckCode(); // 已生成

@ -13,6 +13,7 @@ import org.apache.dubbo.config.annotation.DubboReference;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.ObjectUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.Utils.UniqueCodeUtils;
import org.dromara.common.mybatis.core.page.PageQuery;
@ -93,9 +94,10 @@ public class WmsCheckTaskServiceImpl implements IWmsCheckTaskService {
MPJLambdaWrapper<WmsCheckTask> lqw = JoinWrappers.lambda(WmsCheckTask.class)
.selectAll(WmsCheckTask.class)
//获取物料类型名称
.select(BaseMaterialType::getMatrialTypeName)
.leftJoin(BaseMaterialType.class,BaseMaterialType::getMatrialTypeId, WmsCheckTask::getMaterialTypeId)
//获取仓库名称
.select(WmsBaseWarehouse::getWarehouseCode, WmsBaseWarehouse::getWarehouseName)
.leftJoin(WmsBaseWarehouse.class,WmsBaseWarehouse::getWarehouseId, WmsCheckTask::getWarehouseId)
@ -142,12 +144,15 @@ public class WmsCheckTaskServiceImpl implements IWmsCheckTaskService {
R<Long> jobResp = remoteJobService.addClusterJob(job);
Long jobId = jobResp != null ? jobResp.getData() : null;//任务ID
add.setJobId(jobId);
if(ObjectUtils.isNotEmpty(jobId)){
boolean flag = baseMapper.insert(add) > 0;
if (flag) {
bo.setTaskId(add.getTaskId());
}
return flag;
} else {
return false;
}
}
/**

@ -194,28 +194,27 @@ public class WmsInstockOrderServiceImpl implements IWmsInstockOrderService {
bo.setAuditComments("即入即出自动通过");
}
String inStockOrder = order + orderDate + orderLast;
bo.setInstockCode(inStockOrder);
WmsInstockOrder add = MapstructUtils.convert(bo, WmsInstockOrder.class);
validEntityBeforeSave(add);
add.setInstockCode(inStockOrder);
add.setCreateBy(username);
// 保存入库单主表
boolean flag = baseMapper.insert(add) > 0;
if (!flag) {
throw new ServiceException("入库单主表保存失败");
if (flag) {
bo.setInstockId(add.getInstockId());
}
MPJLambdaWrapper<WmsInstockOrder> addOne = buildQueryWrapper(bo);
WmsInstockOrderVo orderVo = baseMapper.selectVoOne(addOne);
// 设置生成的主键ID
bo.setInstockId(orderVo.getInstockId());
bo.setInstockCode(inStockOrder);
// // 设置生成的主键ID
// bo.setInstockId(orderVo.getInstockId());
// 处理入库单子表
if (bo.getDetailListBo() != null && !bo.getDetailListBo().isEmpty()) {
// 为每个明细设置入库单信息
for (WmsInstockDetailBo detail : bo.getDetailListBo()) {
detail.setInstockId(orderVo.getInstockId());
detail.setInstockId(detail.getInstockId());
detail.setInstockCode(inStockOrder);
}

Loading…
Cancel
Save