1449 MPM同步物料图片及钢构包管理的接口开发
This commit is contained in:
parent
41e30dbc63
commit
ce973f9d6d
|
|
@ -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";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
/**
|
||||
* 重量
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public class WmsMaterial implements Serializable {
|
|||
/**
|
||||
* 当前版本号
|
||||
*/
|
||||
private Integer version;
|
||||
private String version;
|
||||
|
||||
/**
|
||||
* 重量
|
||||
|
|
|
|||
Loading…
Reference in New Issue