Browse Source

pda领料退料添加模糊查询新接口

master
shenzhouyu 3 months ago
parent
commit
937845aff9
  1. 2
      src/main/java/com/gaotao/modules/api/service/IfsApiIssueAndReturnService.java
  2. 23
      src/main/java/com/gaotao/modules/api/service/impl/IfsApiIssueAndReturnServiceImpl.java
  3. 2
      src/main/java/com/gaotao/modules/notify/entity/vo/ShopOrderVo.java
  4. 16
      src/main/java/com/gaotao/modules/production/controller/ProductionIssueController.java
  5. 1
      src/main/java/com/gaotao/modules/production/service/ProductionIssueService.java
  6. 11
      src/main/java/com/gaotao/modules/production/service/impl/ProductionIssueServiceImpl.java

2
src/main/java/com/gaotao/modules/api/service/IfsApiIssueAndReturnService.java

@ -18,6 +18,8 @@ public interface IfsApiIssueAndReturnService {
List<ShopOrderVo> getWorkOrderInfo(String workOrderNo, String site,String releaseNo,String sequenceNo);
List<ShopOrderVo> getShopOrderLine(String workOrderNo, String site);
List<ShopOrderMaterialVo> getShopOrderMaterial(String workOrderNo, String site,String releaseNo,String sequenceNo);
List<IssueForShopOrderVo> getIssueForShopOrder(String workOrderNo, String site,String releaseNo,String sequenceNo);

23
src/main/java/com/gaotao/modules/api/service/impl/IfsApiIssueAndReturnServiceImpl.java

@ -115,6 +115,29 @@ public class IfsApiIssueAndReturnServiceImpl implements IfsApiIssueAndReturnServ
}
}
@Override
public List<ShopOrderVo> getShopOrderLine(String workOrderNo, String site){
try {
Map<String, Object> params = Map.of(
"ifsDBName", ifsDBName,
"domainUserID", domainUserID,
"ifsSiteID", site,
"ifsOrderNo", workOrderNo
);
ObjectMapper objectMapper = new ObjectMapper();
String jsonBody = objectMapper.writeValueAsString(params);
String ifsResponse = HttpUtils.doGetWithBody(ifsUrl+"ShopOrderLine",jsonBody,null);
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
List<ShopOrderVo> shopOrders = mapper.readValue(ifsResponse, new TypeReference<List<ShopOrderVo>>() {
});
return shopOrders;
} catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("获取工单失败");
}
}
@Override
public List<ShopOrderMaterialVo> getShopOrderMaterial(String workOrderNo, String site,String releaseNo,String sequenceNo){
try {

2
src/main/java/com/gaotao/modules/notify/entity/vo/ShopOrderVo.java

@ -37,4 +37,6 @@ public class ShopOrderVo {
private String objstate;
@JsonProperty("close_code_db")
private String closeCodeDb;
private String engChgLevel;
}

16
src/main/java/com/gaotao/modules/production/controller/ProductionIssueController.java

@ -65,6 +65,22 @@ public class ProductionIssueController {
}
}
/**
* 模糊搜索工单列表直接发料
*/
@PostMapping("/getShopOrderLine")
public R getShopOrderLine(@RequestBody DirectIssueDto dto){
try {
List<ShopOrderVo> workOrders = productionIssueService.getShopOrderLine(dto.getWorkOrderNo(), dto.getSite());
if(workOrders != null && workOrders.size() > 0){
return R.ok().put("workOrders", workOrders);
}
return R.error("工单不存在");
} catch (Exception e) {
return R.error(e.getMessage());
}
}
/**
* 获取工单BOM物料列表直接发料
*/

1
src/main/java/com/gaotao/modules/production/service/ProductionIssueService.java

@ -22,6 +22,7 @@ public interface ProductionIssueService {
List<ShopOrderVo> getWorkOrderInfo(String workOrderNo, String site,String releaseNo,String sequenceNo)throws Exception;
List<ShopOrderVo> getShopOrderLine(String workOrderNo, String site)throws Exception;
/**
* 获取工单BOM物料列表直接发料
*/

11
src/main/java/com/gaotao/modules/production/service/impl/ProductionIssueServiceImpl.java

@ -98,6 +98,17 @@ public class ProductionIssueServiceImpl implements ProductionIssueService {
return shopOrderVos;
}
@Override
public List<ShopOrderVo> getShopOrderLine(String workOrderNo, String site) throws Exception{
List<ShopOrderVo> orderInfo = ifsApiIssueAndReturnService.getShopOrderLine(workOrderNo, site);
Set<String> allowedStatuses = new HashSet<>(Arrays.asList("Released", "Reserved", "Started"));
List<ShopOrderVo> shopOrderVos = orderInfo.stream().filter(item -> allowedStatuses.contains(item.getObjstate())).collect(Collectors.toList());
if(orderInfo.size() >0 && shopOrderVos.size() == 0){
throw new XJException("工单"+workOrderNo+"状态不允许发料");
}
return shopOrderVos;
}
@Override
public List<ShopOrderMaterialVo> getWorkOrderMaterials(String workOrderNo, String site,String releaseNo,String sequenceNo)throws Exception{
// 验证工单状态

Loading…
Cancel
Save