Initial commit - full huishou project

This commit is contained in:
jiapengyu
2026-07-27 14:07:26 +08:00
commit 60790ad1b3
39127 changed files with 5989265 additions and 0 deletions
+70
View File
@@ -0,0 +1,70 @@
"use strict";
const common_vendor = require("../common/vendor.js");
const utils_bluetooth = require("../utils/bluetooth.js");
const useBluetoothStore = common_vendor.defineStore("bluetooth", () => {
const isConnected = common_vendor.ref(false);
const isDiscovering = common_vendor.ref(false);
const deviceList = common_vendor.ref([]);
const connectedDevice = common_vendor.ref(null);
const currentWeight = common_vendor.ref(0);
const init = async () => {
try {
await utils_bluetooth.initBluetooth();
} catch (error) {
console.error("Bluetooth init failed:", error);
}
};
const startScan = async () => {
isDiscovering.value = true;
deviceList.value = [];
await utils_bluetooth.startDiscovery((devices) => {
deviceList.value = devices;
});
};
const stopScan = () => {
isDiscovering.value = false;
utils_bluetooth.stopDiscovery();
};
const connect = async (deviceId) => {
try {
await utils_bluetooth.connectDevice(deviceId);
const device = deviceList.value.find((d) => d.deviceId === deviceId);
if (device) {
connectedDevice.value = device;
isConnected.value = true;
}
utils_bluetooth.listenWeightData((weight) => {
currentWeight.value = weight;
});
} catch (error) {
console.error("Connect failed:", error);
}
};
const disconnect = async () => {
try {
await utils_bluetooth.disconnectDevice();
isConnected.value = false;
connectedDevice.value = null;
currentWeight.value = 0;
} catch (error) {
console.error("Disconnect failed:", error);
}
};
const resetWeight = () => {
currentWeight.value = 0;
};
return {
isConnected,
isDiscovering,
deviceList,
connectedDevice,
currentWeight,
init,
startScan,
stopScan,
connect,
disconnect,
resetWeight
};
});
exports.useBluetoothStore = useBluetoothStore;
+82
View File
@@ -0,0 +1,82 @@
"use strict";
const common_vendor = require("../common/vendor.js");
const api_index = require("../api/index.js");
const useOrderStore = common_vendor.defineStore("order", () => {
const orders = common_vendor.ref([]);
const currentOrderItems = common_vendor.ref([]);
const loadOrders = async () => {
try {
orders.value = await api_index.orderApi.getOrders();
} catch (error) {
console.error("Failed to load orders:", error);
}
};
const addOrderItem = (item) => {
currentOrderItems.value.push(item);
};
const clearCurrentItems = () => {
currentOrderItems.value = [];
};
const createOrder = async (items, region) => {
try {
const totalAmount = items.reduce((sum, item) => sum + (item.amount || 0), 0);
const order = {
id: "",
items,
totalAmount,
createTime: (/* @__PURE__ */ new Date()).toISOString(),
status: "pending",
city: region == null ? void 0 : region.city,
district: region == null ? void 0 : region.district,
community: region == null ? void 0 : region.community
};
const createdOrder = await api_index.orderApi.addOrder(order);
if (createdOrder) {
await loadOrders();
return createdOrder;
}
return null;
} catch (error) {
console.error("Failed to create order:", error);
return null;
}
};
const updateOrder = async (order) => {
try {
await api_index.orderApi.updateOrder(order);
await loadOrders();
} catch (error) {
console.error("Failed to update order:", error);
}
};
const deleteOrder = async (id) => {
try {
await api_index.orderApi.deleteOrder(id);
await loadOrders();
} catch (error) {
console.error("Failed to delete order:", error);
}
};
const getOrder = async (orderId) => {
await loadOrders();
return orders.value.find((o) => o.id === orderId) || null;
};
const getTotalAmount = () => {
return currentOrderItems.value.reduce((sum, item) => {
return sum + (item.amount || 0);
}, 0);
};
return {
orders,
currentOrderItems,
loadOrders,
addOrderItem,
clearCurrentItems,
createOrder,
updateOrder,
deleteOrder,
getOrder,
getTotalAmount
};
});
exports.useOrderStore = useOrderStore;
+59
View File
@@ -0,0 +1,59 @@
"use strict";
const common_vendor = require("../common/vendor.js");
const api_index = require("../api/index.js");
const usePriceStore = common_vendor.defineStore("price", () => {
const prices = common_vendor.ref([]);
const date = common_vendor.ref("");
const isLoading = common_vendor.ref(false);
const loadPrices = async () => {
isLoading.value = true;
try {
const data = await api_index.priceApi.getPrices();
if (data) {
prices.value = data.prices;
date.value = data.date;
}
} catch (error) {
console.error("Failed to load prices:", error);
}
isLoading.value = false;
};
const getPriceByCategory = (category) => {
return prices.value.find((p) => p.category === category);
};
const addPrice = async (priceItem) => {
try {
await api_index.priceApi.addPrice(priceItem);
await loadPrices();
} catch (error) {
console.error("Failed to add price:", error);
}
};
const updatePrice = async (priceItem, originalCategory) => {
try {
await api_index.priceApi.updatePrice(priceItem, originalCategory);
await loadPrices();
} catch (error) {
console.error("Failed to update price:", error);
}
};
const deletePrice = async (category) => {
try {
await api_index.priceApi.deletePrice(category);
await loadPrices();
} catch (error) {
console.error("Failed to delete price:", error);
}
};
return {
prices,
date,
isLoading,
loadPrices,
getPriceByCategory,
addPrice,
updatePrice,
deletePrice
};
});
exports.usePriceStore = usePriceStore;
+80
View File
@@ -0,0 +1,80 @@
"use strict";
const common_vendor = require("../common/vendor.js");
const useRegionStore = common_vendor.defineStore("region", () => {
const selectedCity = common_vendor.ref("天津市");
const selectedDistrict = common_vendor.ref("");
const selectedCommunity = common_vendor.ref("");
const selectedUser = common_vendor.ref("");
const customDistrict = common_vendor.ref("");
const customCommunity = common_vendor.ref("");
const customUser = common_vendor.ref("");
const setCity = (city) => {
selectedCity.value = city;
selectedDistrict.value = "";
selectedCommunity.value = "";
selectedUser.value = "";
customDistrict.value = "";
customCommunity.value = "";
customUser.value = "";
};
const setDistrict = (district) => {
selectedDistrict.value = district;
selectedCommunity.value = "";
selectedUser.value = "";
customCommunity.value = "";
customUser.value = "";
};
const setCommunity = (community) => {
selectedCommunity.value = community;
selectedUser.value = "";
customUser.value = "";
};
const setUser = (user) => {
selectedUser.value = user;
};
const setCustomDistrict = (district) => {
customDistrict.value = district;
};
const setCustomCommunity = (community) => {
customCommunity.value = community;
};
const setCustomUser = (user) => {
customUser.value = user;
};
const getRegion = () => {
return {
city: selectedCity.value || void 0,
district: selectedDistrict.value === "其他" ? customDistrict.value || void 0 : selectedDistrict.value || void 0,
community: selectedCommunity.value === "其他" ? customCommunity.value || void 0 : selectedCommunity.value || void 0,
user: selectedUser.value === "其他" ? customUser.value || void 0 : selectedUser.value || void 0
};
};
const clearRegion = () => {
selectedCity.value = "天津市";
selectedDistrict.value = "";
selectedCommunity.value = "";
selectedUser.value = "";
customDistrict.value = "";
customCommunity.value = "";
customUser.value = "";
};
return {
selectedCity,
selectedDistrict,
selectedCommunity,
selectedUser,
customDistrict,
customCommunity,
customUser,
setCity,
setDistrict,
setCommunity,
setUser,
setCustomDistrict,
setCustomCommunity,
setCustomUser,
getRegion,
clearRegion
};
});
exports.useRegionStore = useRegionStore;
+54
View File
@@ -0,0 +1,54 @@
"use strict";
const common_vendor = require("../common/vendor.js");
const api_index = require("../api/index.js");
const useUserStore = common_vendor.defineStore("user", () => {
const users = common_vendor.ref([]);
const isLoading = common_vendor.ref(false);
const loadUsers = async () => {
isLoading.value = true;
try {
const data = await api_index.userApi.getUsers();
users.value = data;
} catch (error) {
console.error("Failed to load users:", error);
}
isLoading.value = false;
};
const addUser = async (user) => {
try {
await api_index.userApi.addUser(user);
await loadUsers();
} catch (error) {
console.error("Failed to add user:", error);
}
};
const updateUser = async (user) => {
try {
await api_index.userApi.updateUser(user);
await loadUsers();
} catch (error) {
console.error("Failed to update user:", error);
}
};
const deleteUser = async (id) => {
try {
await api_index.userApi.deleteUser(id);
await loadUsers();
} catch (error) {
console.error("Failed to delete user:", error);
}
};
const getUserById = (id) => {
return users.value.find((u) => u.id === id);
};
return {
users,
isLoading,
loadUsers,
addUser,
updateUser,
deleteUser,
getUserById
};
});
exports.useUserStore = useUserStore;