Tồn kho
Tồn kho API so với octopart.com
Dữ liệu tồn kho do API trả về có thể khác với những gì bạn thấy trên octopart.com. Có hai lý do cho điều này:
-
Data freshness – API trả về dữ liệu tồn kho từ các luồng dữ liệu của nhà phân phối được nạp định kỳ. octopart.com sử dụng dữ liệu trực tiếp từ nhà phân phối đối với một số nhà phân phối, nên có thể phản ánh các thay đổi tồn kho mới hơn.
-
Country defaulting – octopart.com phát hiện quốc gia của người dùng từ địa chỉ IP của họ và hiển thị các ưu đãi phù hợp theo khu vực. API mặc định là US nếu không chỉ định tham số
country. Nếu bạn đang truy vấn cho khu vực ngoài Hoa Kỳ, hãy luôn truyền rõ ràng tham sốcountry(và tùy chọn làcurrency).
Truy vấn dữ liệu tồn kho
Thông tin tồn kho được phân bố ở hai cấp trong phản hồi:
-
SupPart– các trường tổng hợptotalAvailvàavgAvailtóm tắt tồn kho trên tất cả người bán -
SupOffer– trườnginventoryLevelcho biết số lượng tồn kho của một ưu đãi cụ thể từ một người bán cụ thể
query InventoryCheck {
supSearchMpn(q: "LM358DR", limit: 2) {
results {
part {
mpn
totalAvail
avgAvail
sellers(includeBrokers: false) {
company {
name
}
isAuthorized
offers {
inventoryLevel
updated
}
}
}
}
}
}
Trường updated trên SupOffer cho biết thời điểm dữ liệu tồn kho được nhận lần cuối từ luồng dữ liệu của nhà phân phối, giúp đánh giá độ mới của dữ liệu.
inventoryLevel Mã đặc biệt
inventoryLevel thường trả về một số nguyên không âm biểu thị số đơn vị còn trong kho. Khi nhà phân phối không thể cung cấp số lượng chính xác, một mã đặc biệt âm sẽ được trả về thay thế:
Mã |
Ý nghĩa |
|
Non-Stocked – nhà phân phối không kinh doanh linh kiện này |
|
Yes – có hàng trong kho, nhưng không cung cấp số lượng |
|
Unknown – không có giá trị số lượng được cung cấp, hoặc giá trị đó không phải là số nguyên hợp lệ |
|
RFQ – liên hệ nhà phân phối để nhận báo giá |
totalAvail và avgAvail
totalAvail là tổng lượng tồn kho trên tất cả nhà phân phối; avgAvail là giá trị trung bình trên mỗi nhà phân phối. Cả hai trường đều nằm trên SupPart.
Tồn kho từ broker ảnh hưởng đến các giá trị này theo một cách cụ thể: nếu không có nhà phân phối tiêu chuẩn nào còn hàng nhưng một hoặc nhiều broker có inventoryLevel > 0 hoặc inventoryLevel == -2, thì totalAvail được đặt thành 1. Số lượng thực tế của broker sẽ không bao giờ được cộng theo số học – chỉ có sự hiện diện của tồn kho từ broker được báo hiệu.
Điều này có nghĩa là giá trị totalAvail bằng 1 khi không có tồn kho từ nhà phân phối tiêu chuẩn là dấu hiệu để kiểm tra các ưu đãi từ broker, chứ không phải là số lượng đơn vị theo nghĩa đen.
Để phân biệt nhà phân phối với broker trong ứng dụng của bạn, hãy sử dụng trường isBroker trên SupPartSeller:
sellers(includeBrokers: true) {
company { name }
isAuthorized
isBroker
offers {
inventoryLevel
}
}