Merge remote-tracking branch 'origin/develop-hlq20260421mpm' into develop
This commit is contained in:
commit
e285bef578
|
|
@ -86,7 +86,16 @@ public class MaterialControllerService {
|
|||
VUtil.trueThrowBusinessError(Objects.nonNull(old) && !old.getComplete())
|
||||
.throwMessage("该物料存在草稿版本");
|
||||
WmsMaterial wmsMaterial = Convert.convert(WmsMaterial.class, request);
|
||||
wmsMaterial.setVersion(1);
|
||||
// 根据fromMpm字段决定版本号设置逻辑
|
||||
if (Boolean.TRUE.equals(wmsMaterial.getFromMpm())) {
|
||||
// 来自MPM,使用传入的版本号,如果未传则默认为"1"
|
||||
if (StrUtil.isBlank(wmsMaterial.getVersion())) {
|
||||
wmsMaterial.setVersion("1");
|
||||
}
|
||||
} else {
|
||||
// 非MPM来源,版本号初始化为"1"
|
||||
wmsMaterial.setVersion("1");
|
||||
}
|
||||
wmsMaterial.setCreateBy(UserUtil.getUserName());
|
||||
wmsMaterial.setCreateTime(LocalDateTime.now());
|
||||
materialService.add(wmsMaterial);
|
||||
|
|
@ -97,7 +106,16 @@ public class MaterialControllerService {
|
|||
VUtil.trueThrowBusinessError(Objects.isNull(old)).throwMessage("数据不存在!");
|
||||
WmsMaterial wmsMaterial = Convert.convert(WmsMaterial.class, request);
|
||||
if (old.getComplete()) {
|
||||
wmsMaterial.setVersion(old.getVersion() + 1);
|
||||
// 根据fromMpm字段决定版本号设置逻辑
|
||||
if (Boolean.TRUE.equals(wmsMaterial.getFromMpm())) {
|
||||
// 来自MPM,使用传入的版本号,如果未传则递增
|
||||
if (StrUtil.isBlank(wmsMaterial.getVersion())) {
|
||||
wmsMaterial.setVersion(incrementVersion(old.getVersion()));
|
||||
}
|
||||
} else {
|
||||
// 非MPM来源,版本号递增
|
||||
wmsMaterial.setVersion(incrementVersion(old.getVersion()));
|
||||
}
|
||||
wmsMaterial.setCreateBy(UserUtil.getUserName());
|
||||
wmsMaterial.setCreateTime(LocalDateTime.now());
|
||||
wmsMaterial.setId(null);
|
||||
|
|
@ -180,7 +198,7 @@ public class MaterialControllerService {
|
|||
} else {
|
||||
if (Objects.isNull(old) || StrUtil.isNotBlank(old.getImage())) {
|
||||
WmsMaterial material = new WmsMaterial()
|
||||
.setVersion(Objects.isNull(old) ? 1 : old.getVersion() + 1)
|
||||
.setVersion(Objects.isNull(old) ? "1" : incrementVersion(old.getVersion()))
|
||||
.setNo(bomMaterialDTO.getMaterialNo())
|
||||
.setDescribe(bomMaterialDTO.getMaterialDesc())
|
||||
.setDrawingNo(bomMaterialDTO.getDrawingNo())
|
||||
|
|
@ -300,14 +318,14 @@ public class MaterialControllerService {
|
|||
material.setCreateBy(UserUtil.getUserName());
|
||||
material.setCreateTime(LocalDateTime.now());
|
||||
if (Objects.isNull(currentMaterial)) {
|
||||
material.setVersion(1);
|
||||
material.setVersion("1");
|
||||
forAdd.add(material);
|
||||
} else {
|
||||
if (Objects.equals(UserUtil.getType(), UserType.Supplier)
|
||||
&& !Objects.equals(currentMaterial.getSupplierId(), UserUtil.getUserId())) {
|
||||
sb.append("无权限修改此物料;");
|
||||
} else {
|
||||
material.setVersion(currentMaterial.getVersion() + 1);
|
||||
material.setVersion(incrementVersion(String.valueOf(currentMaterial.getVersion())));
|
||||
forAdd.add(material);
|
||||
}
|
||||
}
|
||||
|
|
@ -425,4 +443,23 @@ public class MaterialControllerService {
|
|||
|
||||
log.info("批量从MPM系统同步图纸数据完成");
|
||||
}
|
||||
|
||||
/**
|
||||
* 递增版本号
|
||||
* @param currentVersion 当前版本号
|
||||
* @return 递增后的版本号
|
||||
*/
|
||||
private String incrementVersion(String currentVersion) {
|
||||
if (currentVersion == null || currentVersion.isEmpty()) {
|
||||
return "1";
|
||||
}
|
||||
try {
|
||||
// 尝试将版本号解析为整数并递增
|
||||
int versionNum = Integer.parseInt(currentVersion);
|
||||
return String.valueOf(versionNum + 1);
|
||||
} catch (NumberFormatException e) {
|
||||
// 如果不是纯数字,直接在末尾追加.1
|
||||
return currentVersion + ".1";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -276,10 +276,8 @@ public class StructuralPackageControllerService {
|
|||
}
|
||||
if (StrUtil.isBlank(dto.getVersion())) {
|
||||
sb.append("图纸版本不能为空;");
|
||||
} else if (!NumberUtils.isCreatable(dto.getVersion())) {
|
||||
sb.append("图纸版本无效;");
|
||||
} else {
|
||||
materialDTO.setVersion(Integer.valueOf(dto.getVersion()));
|
||||
materialDTO.setVersion(dto.getVersion());
|
||||
}
|
||||
dto.setError(sb.toString());
|
||||
materialDTO.setCreateBy(UserUtil.getUserName());
|
||||
|
|
@ -374,7 +372,7 @@ public class StructuralPackageControllerService {
|
|||
dto.setImage(material1.getImage());
|
||||
String v = row.getString(6);
|
||||
if (StrUtil.isNotBlank(v)) {
|
||||
dto.setVersion(Integer.valueOf(v));
|
||||
dto.setVersion(v);
|
||||
} else {
|
||||
dto.setVersion(material1.getVersion());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ public class PackageMaterialDTO {
|
|||
* 版本
|
||||
*/
|
||||
@NotNull
|
||||
private Integer version;
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 图片
|
||||
|
|
|
|||
|
|
@ -75,5 +75,5 @@ public class MaterialAddQO {
|
|||
/**
|
||||
* 版本号
|
||||
*/
|
||||
private Integer version;
|
||||
private String version;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public class MaterialVO {
|
|||
/**
|
||||
* 当前版本号
|
||||
*/
|
||||
private Integer version;
|
||||
private String version;
|
||||
/**
|
||||
* 重量
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public class TrayItemVO {
|
|||
/**
|
||||
* 版本
|
||||
*/
|
||||
private Integer version;
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 单重
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public class WmsMaterial implements Serializable {
|
|||
/**
|
||||
* 当前版本号
|
||||
*/
|
||||
private Integer version;
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 重量
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public class WmsMaterialServiceImpl extends ServiceImpl<WmsMaterialMapper, WmsMa
|
|||
|
||||
@Override
|
||||
public void add(WmsMaterial wmsMaterial) {
|
||||
VUtil.trueThrowBusinessError(wmsMaterial.getVersion()==1
|
||||
VUtil.trueThrowBusinessError("1".equals(wmsMaterial.getVersion())
|
||||
&& lambdaQuery().eq(WmsMaterial::getNo, wmsMaterial.getNo()).exists())
|
||||
.throwMessage("SAP料号已存在");
|
||||
save(wmsMaterial);
|
||||
|
|
|
|||
Loading…
Reference in New Issue