Lấy thông tin Shopee
unknown
javascript
4 years ago
2.5 kB
10
Indexable
var tongPhiVanChuyen = 0;
var tongTienHang = 0;
var conDon = true;
var tongChi = 0;
var tongSP = 0;
var offset = 0;
var soDon = 0;
var lim = 10;
function showThongKe() {
var orders = []; // tạo mảng rỗng, tí dồn vô bằng JSON
var xhttp = new XMLHttpRequest(); // cái này đi cop, chắc là để tạo đối tượng xin API
xhttp.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) { // cái if này cũng ko hiểu
orders = JSON.parse(this.responseText)['orders']; // này là parse JSON
soDon += orders.length; // cộng dồn số đơn vô length của cái JSON
conDon = orders.length >= lim; // trả về true nếu lim chưa vượt length của orders, true thì tí đệ quy nữa
orders.forEach(order => { // for trong JSON rồi get data ra
let t1 = order["merchandise_subtotal"] / 100000; // làm tròn số chứ ko có gì á
tongTienHang += t1;
let t2 = order["actual_price"] / 100000;
tongChi += t2;
let t3 = order["shipping_fee"] / 100000;
tongPhiVanChuyen += t3;
order["items"].forEach(item => { // JSON trong JSON nên phải for để lấy thông tin sp
let t4 = item["amount"];
tongSP += t4; // đếm sp thôi
});
});
offset += lim; // tăng offset lên sau mỗi lần đệ quy
if (conDon) {
showThongKe(); // nếu còn đơn chưa lấy hết thì đệ quy
console.log("Đợi tí má, còn load");
}
else {
// hết đơn thì show hàng
tongTienHang = tongTienHang;
console.log("Tiền đã dùng: " + "" + tongChi + " vnđ");
console.log("Tổng đơn: " + "" + soDon + " đơn hàng");
console.log("Tổng sản phẩm: " + "" + tongSP + " sản phẩm");
console.log("Tổng tiền vận chuyển: " + "" + tongPhiVanChuyen + " vnđ");
}
}
};
// lim define trên kia, đổi tuỳ ý nếu mạng mạnh
xhttp.open("GET", "https://shopee.vn/api/v1/orders/?order_type=3&offset=" + offset + "&limit=" + lim, true);
xhttp.send(); // send request lên server
}
showThongKe();Editor is loading...