feat: 验证零部件是否可以新增接口使用PDM返回的提示信息

This commit is contained in:
2024-05-07 13:37:50 +08:00
parent 243a4ee8b1
commit fb3a31be9a
4 changed files with 230 additions and 218 deletions
@@ -59,8 +59,10 @@ public class LawsBindPartController {
@AutoLog(value = "绑定零部件-是否显示使用绑定关系") @AutoLog(value = "绑定零部件-是否显示使用绑定关系")
@ApiOperation(value="绑定零部件-是否显示使用绑定关系", notes="绑定零部件-是否显示使用绑定关系") @ApiOperation(value="绑定零部件-是否显示使用绑定关系", notes="绑定零部件-是否显示使用绑定关系")
@GetMapping(value = "/isShowUseBindRelation") @GetMapping(value = "/isShowUseBindRelation")
public Result<LawsBindPart> isShowUseBindRelation(LawsBindPart lawsBindPart) { public Result<?> isShowUseBindRelation(LawsBindPart lawsBindPart) {
return Result.OK(lawsBindPartService.isShowUseBindRelation(lawsBindPart)); LawsBindPart showUseBindRelation = lawsBindPartService.isShowUseBindRelation(lawsBindPart);
return Result.OK();
} }
@AutoLog(value = "绑定零部件-使用绑定关系") @AutoLog(value = "绑定零部件-使用绑定关系")
@@ -95,11 +95,12 @@ public class LawsBindPartServiceImpl extends ServiceImpl<LawsBindPartMapper, Law
@Override @Override
public void add(LawsBindPart lawsBindPart) { public void add(LawsBindPart lawsBindPart) {
// 访问PDM校验该零部件号是否可以修改 // 访问PDM校验该零部件号是否可以修改
boolean canEdit = srmsApiService.validPartNoEdit(lawsBindPart.getPartNo(), try {
srmsApiService.validPartNoEdit(lawsBindPart.getPartNo(),
lawsBindPart.getPartName(), lawsBindPart.getPartName(),
getBindUsernameAndRealName(lawsBindPart.getBindUser())); getBindUsernameAndRealName(lawsBindPart.getBindUser()));
if (!canEdit) { } catch (Exception e) {
throw new JeroBootException("零部件号" + lawsBindPart.getPartNo() + "不可新增"); throw new JeroBootException(e.getMessage());
} }
lawsBindPart.setBindTime(new Date()); lawsBindPart.setBindTime(new Date());
save(lawsBindPart); save(lawsBindPart);
@@ -144,10 +145,11 @@ public class LawsBindPartServiceImpl extends ServiceImpl<LawsBindPartMapper, Law
// 访问PDM校验该零部件号是否可以修改 // 访问PDM校验该零部件号是否可以修改
for (String id : ids) { for (String id : ids) {
LawsBindPart existBindPart = lawsBindPartMap.get(id); LawsBindPart existBindPart = lawsBindPartMap.get(id);
boolean canEdit = srmsApiService.validPartNoEdit(existBindPart.getPartNo(), try {
srmsApiService.validPartNoEdit(existBindPart.getPartNo(),
existBindPart.getPartName(), existBindPart.getPartName(),
getBindUsernameAndRealName(existBindPart.getBindUser())); getBindUsernameAndRealName(existBindPart.getBindUser()));
if (!canEdit) { } catch (Exception e) {
errPartSet.add(existBindPart.getPartNo()); errPartSet.add(existBindPart.getPartNo());
} }
} }
@@ -118,7 +118,7 @@ public interface SrmsApiService {
* @author CHH * @author CHH
* @date 2024/4/28 15:08 * @date 2024/4/28 15:08
*/ */
boolean validPartNoEdit(String partNo, String partName, String bindUserInfo); void validPartNoEdit(String partNo, String partName, String bindUserInfo);
/** /**
* PDM校验某个零部件是否所属于某个零部件分类 * PDM校验某个零部件是否所属于某个零部件分类
@@ -157,8 +157,6 @@ public class SrmsApiServiceImpl implements SrmsApiService {
private static final String PRINT_TOKEN = "token============================"; private static final String PRINT_TOKEN = "token============================";
@Override @Override
public Result<JSONObject> getByToken(JSONObject json) { public Result<JSONObject> getByToken(JSONObject json) {
try { try {
@@ -806,8 +804,7 @@ public class SrmsApiServiceImpl implements SrmsApiService {
} }
@Override @Override
public boolean validPartNoEdit(@NotNull String partNo, String partName, @NotNull String bindUserInfo) { public void validPartNoEdit(@NotNull String partNo, String partName, @NotNull String bindUserInfo) {
try {
JSONObject all = new JSONObject(); JSONObject all = new JSONObject();
all.put(MESSAGE_HANDLER, getMessageHandler("CNHTC_PO1000495", null)); all.put(MESSAGE_HANDLER, getMessageHandler("CNHTC_PO1000495", null));
JSONObject requests = new JSONObject(); JSONObject requests = new JSONObject();
@@ -830,22 +827,28 @@ public class SrmsApiServiceImpl implements SrmsApiService {
JSONObject reData = restTemplate.postForObject(pdmIp + editValidUrl, entity, JSONObject.class); JSONObject reData = restTemplate.postForObject(pdmIp + editValidUrl, entity, JSONObject.class);
log.info("接收验证零部件是否可修改请求返回"); log.info("接收验证零部件是否可修改请求返回");
log.info("Response: " + JSON.toJSONString(reData)); log.info("返回报文: " + JSON.toJSONString(reData));
if (!Objects.isNull(reData) && reData.containsKey("Success")) { JSONObject response = null;
String success = reData.getString("Success"); if (!Objects.isNull(reData) && reData.containsKey("Responses")) {
response = reData.getJSONObject("Responses");
}
if (!Objects.isNull(response) && response.containsKey("Success")) {
String success = response.getString("Success");
String message = "";
if (response.containsKey("Message")) {
message = response.getString("Message");
}
if ("true".equals(success)) { if ("true".equals(success)) {
log.info("验证零部件号是否可修改接口成功"); log.info("验证零部件号是否可修改接口成功");
return true; return;
} }
if ("false".equals(success)) { if ("false".equals(success)) {
log.error("验证零部件号是否可修改接口失败"); log.error("验证零部件号是否可修改接口失败");
return false; log.error("验证零部件号是否可修改接口失败原因: " + message);
throw new JeroBootException(message);
} }
} }
} catch (Exception e) { throw new JeroBootException("零部件号" + partNo + "不可新增");
log.error("验证零部件号是否可修改异常", e);
}
return false;
} }
@Override @Override
@@ -877,12 +880,17 @@ public class SrmsApiServiceImpl implements SrmsApiService {
log.info("Response: " + JSON.toJSONString(reData)); log.info("Response: " + JSON.toJSONString(reData));
if (!Objects.isNull(reData) && reData.containsKey("Success")) { if (!Objects.isNull(reData) && reData.containsKey("Success")) {
String success = reData.getString("Success"); String success = reData.getString("Success");
String message = "";
if (reData.containsKey("Message")) {
message = reData.getString("Message");
}
if ("true".equals(success)) { if ("true".equals(success)) {
log.info("校验某个零部件是否所属于某个零部件分类接口成功"); log.info("校验某个零部件是否所属于某个零部件分类接口成功");
return true; return true;
} }
if ("false".equals(success)) { if ("false".equals(success)) {
log.error("校验某个零部件是否所属于某个零部件分类接口失败"); log.error("校验某个零部件是否所属于某个零部件分类接口失败");
log.error("失败原因: " + message);
return false; return false;
} }
} }