Shopee hiện đang là sàn thương mại điện tử lớn nhất tại Việt Nam và ngày càng thu hút nhiều người mua sắm. Với hàng triệu sản phẩm và các ưu đãi hấp dẫn, người dùng thường dễ dàng mua sắm mà không chú ý đến tổng số tiền họ đã chi tiêu. Để giải quyết vấn đề này, tác giả NT Tòng đã chia sẻ một đoạn mã JavaScript đơn giản để tự động liệt kê tất cả đơn hàng trên Shopee và tính tổng số tiền đã chi tiêu. Đây là một cách hữu ích để theo dõi và quản lý ngân sách cá nhân khi mua sắm trực tuyến trên Shopee.
Đoạn code này sẽ tự động truy cập vào lịch sử đơn hàng Shopee của bạn, thu thập thông tin về tất cả các đơn hàng và chi tiết của từng đơn hàng. Sau đó, nó sẽ tính tổng số tiền đã chi tiêu và xuất dữ liệu này ra một bảng chứa tất cả các đơn hàng và tổng số tiền đã chi tiêu.
Mục lục bài viết
Ưu điểm của Code thống kê đơn hàng Shopee:
- Tự động liệt kê tất cả đơn hàng mà không cần nhập thủ công
- Tiết kiệm thời gian so với kiểm tra từng đơn hàng
- Cho biết chính xác tổng số tiền đã chi tiêu, giúp quản lý chi tiêu tốt hơn
Code tự động liệt kê tất cả đơn hàng Shopee và tổng số tiền đã chi tiêu
async function getOrders(offset, limit) {
let url = "https://shopee.vn/api/v4/order/get_all_order_and_checkout_list?limit=" + limit + "&offset=" + offset;
var ordersData = (await (await fetch(url)).json()).data.order_data;
var detailList = ordersData.details_list
if (detailList) {
return detailList;
} else {
return [];
}
}
function _VietNamCurrency(number) {
return new Intl.NumberFormat('vi-VN', { style: 'currency', currency: 'VND' }).format(number);
}
async function getAllOrders() {
const limit = 20;
let offset = 0;
let allOrders = [];
allOrders.push(
[
'Tên chung', 'Số lượng', 'Tổng tiền', 'Trạng thái', 'Tên shop', 'Chi tiết', 'Tiền gốc'
].join('\t')
)
let sum = 0;
let count = 0;
while (true) {
let data = await getOrders(offset, limit);
if (data.length == 0)
break;
for (const item of data) {
const infoCard = item.info_card;
const listType = item.list_type;
let strListType;
switch (listType) {
case 3: strListType = "Hoàn thành"; break;
case 4: strListType = "Đã hủy"; break;
case 7: strListType = "Vận chuyển"; break;
case 8: strListType = "Đang giao"; break;
case 9: strListType = "Chờ thanh toán"; break;
case 12: strListType = "Trả hàng"; break;
default: strListType = "Không rõ"; break;
}
const productCount = infoCard.product_count;
let subTotal = infoCard.subtotal / 1e5;
count += productCount;
const orderCard = infoCard.order_list_cards[0];
const shopName = orderCard.shop_info.username + " - " + orderCard.shop_info.shop_name;
const products = orderCard.product_info.item_groups;
const productSumary = products.map(product => product.items.map(item => item.name + "--amount: " + item.amount + "--price: " + _VietNamCurrency(item.item_price)).join(', ')).join('; ');
const name = products[0].items[0].name;
if (listType != 4 && listType != 12)
sum += subTotal;
else
subTotal = 0;
const subTotalNative = _VietNamCurrency(subTotal);
allOrders.push(
[
name, productCount, subTotalNative, strListType, shopName, productSumary, subTotal
].join('\t')
);
}
console.log('Colected: ' + offset);
offset += limit;
}
allOrders.push(
[
'Tổng cộng: ', count, _VietNamCurrency(sum)
].join('\t')
);
var text = allOrders.join('\r\n');
document.write('<textarea>' + text + '</textarea>');
}
getAllOrders();
Sau khi bạn đã chạy mã JavaScript và hiển thị kết quả trên màn hình, bạn có thể thực hiện các bước sau để sao chép dữ liệu vào Excel:
- Bôi đen toàn bộ nội dung trong khung nội dung (số 3) bằng cách nhấn Ctrl + A.
- Sao chép nội dung đã bôi đen bằng cách nhấn Ctrl + C.
- Mở Excel hoặc một ứng dụng tạo bảng tính tương tự.
- Tạo một bảng tính mới hoặc mở một bảng tính hiện có.
- Trong Excel, chọn ô mà bạn muốn dán dữ liệu vào.
- Dán nội dung đã sao chép bằng cách nhấn Ctrl + V.
Shopee đánh giá hạng thành viên theo tiêu chí sau:
- Hạng Bạc: Người mua hàng hoàn thành 3 đơn hàng hoặc chi tiêu 3.000.000 đồng trong vòng 6 tháng.
- Hạng Vàng: Người mua hàng hoàn thành 75 đơn hàng hoặc chi tiêu 5.000.000 đồng trong vòng 6 tháng.
- Hạng Kim Cương: Người mua hàng hoàn thành 75 đơn hàng hoặc chi tiêu 20.000.000 đồng trong vòng 6 tháng.
Facebook: Dịch Vụ Mạng Xã Hội Đà Nẵng
Zalo: Dịch Vụ Đà Nẵng
Phone: 0333.110304
Gmail: mxhdn.xyz@gmail.com
Thanh toán: Ngân hàng, thẻ cào siêu rẻ, Momo, ViettelPay, card + 35% phí,...