Commit c04e8917 LN

bug修改 Order修改

1 个父辈 04d57262
...@@ -50,6 +50,8 @@ public class Micron20031Api { ...@@ -50,6 +50,8 @@ public class Micron20031Api {
private static String api_ChkAuthoriseToDispatch="ChkAuthoriseToDispatch"; private static String api_ChkAuthoriseToDispatch="ChkAuthoriseToDispatch";
private static String api_ReturnMaterial="ReturnMaterial"; private static String api_ReturnMaterial="ReturnMaterial";
private static boolean Debug=false;
@Value("${micron.api_CheckUserRights:}") @Value("${micron.api_CheckUserRights:}")
public void setApi_CheckUserRights(String api_config) { public void setApi_CheckUserRights(String api_config) {
if(ObjectUtil.isEmpty(api_config)){ if(ObjectUtil.isEmpty(api_config)){
...@@ -292,6 +294,16 @@ public class Micron20031Api { ...@@ -292,6 +294,16 @@ public class Micron20031Api {
// String resultStr="{\"materials\":[{\"materialType\":\"SOLDER_PASTE\",\"systemId\":\"\",\"typeOfReturn\":\"\",\"sapLocationMovementType\":\"\",\"matReqNo\":\"\",\"micronPn\":\"507-10187\",\"lotNo\":\"\",\"batchNo\":\"\",\"micronLotId\":\"\",\"location\":\"\",\"unitOfMeasures\":\"BOT\",\"equipId\":\"\",\"message\":\"\",\"status\":\"\",\"spoolStatus\":\"\",\"expiredDate\":\"\",\"stepId\":\"\",\"materialDocumentNo\":\"\",\"username\":\"\",\"mode\":\"\",\"quantity\":155.0,\"remainingQuantity\":0,\"expiredDate2\":\"\",\"stabilizationEndDate\":\"\",\"isQualLot\":\"\",\"exposureStartDateTime\":\"\",\"lotNo2\":\"\",\"targetSystemId\":\"\",\"transferMode\":\"\",\"adjustedQuantity\":0,\"manufacturerLotNo\":\"\",\"lotList\":{\"lots\":null},\"newMergeLotId\":\"\",\"inHouseMark\":\"\",\"leadFrameCount\":0,\"modSolderPaste\":\"\",\"supplier\":\"\",\"supplierPN\":\"\",\"printerName\":\"\"},{\"materialType\":\"SOLDER_PASTE\",\"systemId\":\"\",\"typeOfReturn\":\"\",\"sapLocationMovementType\":\"\",\"matReqNo\":\"\",\"micronPn\":\"507-10363\",\"lotNo\":\"\",\"batchNo\":\"\",\"micronLotId\":\"\",\"location\":\"\",\"unitOfMeasures\":\"BOT\",\"equipId\":\"\",\"message\":\"\",\"status\":\"\",\"spoolStatus\":\"\",\"expiredDate\":\"\",\"stepId\":\"\",\"materialDocumentNo\":\"\",\"username\":\"\",\"mode\":\"\",\"quantity\":504.0,\"remainingQuantity\":0,\"expiredDate2\":\"\",\"stabilizationEndDate\":\"\",\"isQualLot\":\"\",\"exposureStartDateTime\":\"\",\"lotNo2\":\"\",\"targetSystemId\":\"\",\"transferMode\":\"\",\"adjustedQuantity\":0,\"manufacturerLotNo\":\"\",\"lotList\":{\"lots\":null},\"newMergeLotId\":\"\",\"inHouseMark\":\"\",\"leadFrameCount\":0,\"modSolderPaste\":\"\",\"supplier\":\"\",\"supplierPN\":\"\",\"printerName\":\"\"}],\"status\":\"PASS\",\"message\":\"\"}"; // String resultStr="{\"materials\":[{\"materialType\":\"SOLDER_PASTE\",\"systemId\":\"\",\"typeOfReturn\":\"\",\"sapLocationMovementType\":\"\",\"matReqNo\":\"\",\"micronPn\":\"507-10187\",\"lotNo\":\"\",\"batchNo\":\"\",\"micronLotId\":\"\",\"location\":\"\",\"unitOfMeasures\":\"BOT\",\"equipId\":\"\",\"message\":\"\",\"status\":\"\",\"spoolStatus\":\"\",\"expiredDate\":\"\",\"stepId\":\"\",\"materialDocumentNo\":\"\",\"username\":\"\",\"mode\":\"\",\"quantity\":155.0,\"remainingQuantity\":0,\"expiredDate2\":\"\",\"stabilizationEndDate\":\"\",\"isQualLot\":\"\",\"exposureStartDateTime\":\"\",\"lotNo2\":\"\",\"targetSystemId\":\"\",\"transferMode\":\"\",\"adjustedQuantity\":0,\"manufacturerLotNo\":\"\",\"lotList\":{\"lots\":null},\"newMergeLotId\":\"\",\"inHouseMark\":\"\",\"leadFrameCount\":0,\"modSolderPaste\":\"\",\"supplier\":\"\",\"supplierPN\":\"\",\"printerName\":\"\"},{\"materialType\":\"SOLDER_PASTE\",\"systemId\":\"\",\"typeOfReturn\":\"\",\"sapLocationMovementType\":\"\",\"matReqNo\":\"\",\"micronPn\":\"507-10363\",\"lotNo\":\"\",\"batchNo\":\"\",\"micronLotId\":\"\",\"location\":\"\",\"unitOfMeasures\":\"BOT\",\"equipId\":\"\",\"message\":\"\",\"status\":\"\",\"spoolStatus\":\"\",\"expiredDate\":\"\",\"stepId\":\"\",\"materialDocumentNo\":\"\",\"username\":\"\",\"mode\":\"\",\"quantity\":504.0,\"remainingQuantity\":0,\"expiredDate2\":\"\",\"stabilizationEndDate\":\"\",\"isQualLot\":\"\",\"exposureStartDateTime\":\"\",\"lotNo2\":\"\",\"targetSystemId\":\"\",\"transferMode\":\"\",\"adjustedQuantity\":0,\"manufacturerLotNo\":\"\",\"lotList\":{\"lots\":null},\"newMergeLotId\":\"\",\"inHouseMark\":\"\",\"leadFrameCount\":0,\"modSolderPaste\":\"\",\"supplier\":\"\",\"supplierPN\":\"\",\"printerName\":\"\"}],\"status\":\"PASS\",\"message\":\"\"}";
// log.info("调用MES接口 checkStockAvailable 返回:" + resultStr); // log.info("调用MES接口 checkStockAvailable 返回:" + resultStr);
if(Debug){
List<MatOrderBean> list=new ArrayList<>();
for (String key :
pnMap.keySet()) {
Integer value = pnMap.get(key);
MatOrderBean bean=new MatOrderBean(key,"",999,"",999,"","","" );
list.add(bean );
}
return list;
}
//pnMap的key为pn, value为库存数量 //pnMap的key为pn, value为库存数量
String checkStockAvailableUrl = getUrl(api_CheckStockAvailable); String checkStockAvailableUrl = getUrl(api_CheckStockAvailable);
......
...@@ -6,8 +6,10 @@ import com.neotel.smfcore.common.bean.ResultBean; ...@@ -6,8 +6,10 @@ import com.neotel.smfcore.common.bean.ResultBean;
import com.neotel.smfcore.common.exception.ApiException; import com.neotel.smfcore.common.exception.ApiException;
import com.neotel.smfcore.core.device.util.DataCache; import com.neotel.smfcore.core.device.util.DataCache;
import com.neotel.smfcore.core.storage.bean.InventoryItem; import com.neotel.smfcore.core.storage.bean.InventoryItem;
import com.neotel.smfcore.core.storage.bean.UsageItem;
import com.neotel.smfcore.core.storage.rest.dto.InventoryItemDto; import com.neotel.smfcore.core.storage.rest.dto.InventoryItemDto;
import com.neotel.smfcore.core.storage.rest.mapstruct.InventoryItemMapper; import com.neotel.smfcore.core.storage.rest.mapstruct.InventoryItemMapper;
import com.neotel.smfcore.core.storage.service.po.Storage;
import com.neotel.smfcore.custom.micron20031.bean.MatOrderBean; import com.neotel.smfcore.custom.micron20031.bean.MatOrderBean;
import com.neotel.smfcore.custom.micron20031.bean.dto.OrderInfoDto; import com.neotel.smfcore.custom.micron20031.bean.dto.OrderInfoDto;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -43,6 +45,7 @@ public class MicronSpOrderController { ...@@ -43,6 +45,7 @@ public class MicronSpOrderController {
@RequestMapping(value = "/stockAvailable") @RequestMapping(value = "/stockAvailable")
public ResultBean checkStockAvailable(@RequestBody List<String> pnList) throws ApiException { public ResultBean checkStockAvailable(@RequestBody List<String> pnList) throws ApiException {
List<OrderInfoDto> resultList = new ArrayList<>(); List<OrderInfoDto> resultList = new ArrayList<>();
Map<String, InventoryItem> inventoryItemDtoMap = dataCache.getAllInventory(null, ""); Map<String, InventoryItem> inventoryItemDtoMap = dataCache.getAllInventory(null, "");
Map<String, Integer> pnVMap = new HashMap<>(); Map<String, Integer> pnVMap = new HashMap<>();
for (String pn : for (String pn :
...@@ -56,12 +59,25 @@ public class MicronSpOrderController { ...@@ -56,12 +59,25 @@ public class MicronSpOrderController {
} }
try { try {
List<MatOrderBean> stockResults = Micron20031Api.checkStockAvailable(pnVMap); List<MatOrderBean> stockResults = Micron20031Api.checkStockAvailable(pnVMap);
if(stockResults==null|| stockResults.size()<=0){ if (stockResults == null || stockResults.size() <= 0) {
return ResultBean.newErrorResult(1,"smfcore.api.nodata","Failed to get data"); return ResultBean.newErrorResult(1, "smfcore.api.nodata", "Failed to get data");
}
int slotsCount = 0;
Map<String, Storage> allStorageMap = dataCache.getAllStorage();
for (Storage storage :
allStorageMap.values()) {
// if (storage.isSolderPaste()) {
Map<String, UsageItem> userItemMap = storage.getUsageMap();
for (UsageItem item :
userItemMap.values()) {
slotsCount += item.getTotalCount() - item.getUsedCount();
}
// }
} }
for (MatOrderBean bean : for (MatOrderBean bean :
stockResults) { stockResults) {
OrderInfoDto orderInfoDto = new OrderInfoDto(bean.getMicronPN(), 0, bean.getQuantity(), bean.getUnitOfMeasures()); OrderInfoDto orderInfoDto = new OrderInfoDto(bean.getMicronPN(), 0, slotsCount, bean.getQuantity(), bean.getUnitOfMeasures());
if (inventoryItemDtoMap.containsKey(bean.getMicronPN())) { if (inventoryItemDtoMap.containsKey(bean.getMicronPN())) {
InventoryItem item = inventoryItemDtoMap.get(bean.getMicronPN()); InventoryItem item = inventoryItemDtoMap.get(bean.getMicronPN());
...@@ -69,7 +85,7 @@ public class MicronSpOrderController { ...@@ -69,7 +85,7 @@ public class MicronSpOrderController {
} }
resultList.add(orderInfoDto); resultList.add(orderInfoDto);
} }
}catch (ApiException e){ } catch (ApiException e) {
return ResultBean.newErrorResult(1, e.getMessage(), e.getMessage()); return ResultBean.newErrorResult(1, e.getMessage(), e.getMessage());
} }
......
package com.neotel.smfcore.custom.micron20031.bean; package com.neotel.smfcore.custom.micron20031.bean;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor;
/** /**
* @author sunke * @author sunke
* @date 2022/12/21 9:33 AM * @date 2022/12/21 9:33 AM
*/ */
@Data @Data
@AllArgsConstructor
@NoArgsConstructor
public class MatOrderBean{ public class MatOrderBean{
@JsonProperty("micronPn") @JsonProperty("micronPn")
......
...@@ -17,6 +17,8 @@ public class OrderInfoDto implements Serializable { ...@@ -17,6 +17,8 @@ public class OrderInfoDto implements Serializable {
@ApiModelProperty("库存数量") @ApiModelProperty("库存数量")
private int stockCount = 0; private int stockCount = 0;
@ApiModelProperty("空位数量")
private int slotsCount = 0;
@JsonProperty("Quantity") @JsonProperty("Quantity")
private Integer quantity; private Integer quantity;
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!