petstore-frontend/dist/dev/mp-weixin/api/index.js
2026-04-12 22:57:48 +08:00

68 lines
3.3 KiB
JavaScript

"use strict";
const common_vendor = require("../common/vendor.js");
const API_ORIGIN = "http://localhost:8080".replace(/\/$/, "");
const BASE_URL = `${API_ORIGIN}/api`;
const request = (options) => new Promise((resolve, reject) => {
common_vendor.index.request({
url: BASE_URL + options.url,
method: options.method || "GET",
data: options.data || {},
header: options.header || {},
success: (res) => resolve(res.data),
fail: (err) => reject(err)
});
});
const get = (url, params = {}) => {
const qs = Object.entries(params).filter(([, v]) => v != null).map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`).join("&");
return request({ url: `${url}${qs ? "?" + qs : ""}`, method: "GET" });
};
const post = (url, body = {}) => request({ url, method: "POST", data: body, header: { "Content-Type": "application/json" } });
const put = (url, body = {}) => request({ url, method: "PUT", data: body, header: { "Content-Type": "application/json" } });
const del = (url) => request({ url, method: "DELETE" });
const imgUrl = (path) => {
if (!path) return "";
if (path.startsWith("http")) return path;
return `${API_ORIGIN}${path}`;
};
const sendSms = (phone) => post("/sms/send", { phone });
const login = (phone, code) => post("/user/login", { phone, code });
const registerBoss = (data) => post("/user/register-boss", data);
const registerStaff = (data) => post("/user/register-staff", data);
const getAppointmentList = (userId, storeId) => get("/appointment/list", { userId, storeId });
const createAppointment = (data) => post("/appointment/create", data);
const startAppointment = (appointmentId, staffUserId) => post("/appointment/start", { appointmentId, staffUserId });
const cancelAppointment = (id) => put(`/appointment/status?id=${id}&status=cancel`);
const createReport = (data) => post("/report/create", data);
const getReportByToken = (token) => get("/report/get", { token });
const getReportList = (params) => get("/report/list", params);
const getServiceTypeList = (storeId) => get("/service-type/list", { storeId });
const createServiceType = (storeId, name) => post("/service-type/create", { storeId, name });
const deleteServiceType = (id) => del(`/service-type/delete?id=${id}`);
const getStaffList = (storeId) => get("/user/staff-list", { storeId });
const createStaff = (data) => post("/user/create-staff", data);
const deleteStaff = (staffId) => del(`/user/staff?staffId=${staffId}`);
const updateUser = (data) => put("/user/update", data);
const updateStore = (data) => put("/store/update", data);
exports.API_ORIGIN = API_ORIGIN;
exports.BASE_URL = BASE_URL;
exports.cancelAppointment = cancelAppointment;
exports.createAppointment = createAppointment;
exports.createReport = createReport;
exports.createServiceType = createServiceType;
exports.createStaff = createStaff;
exports.deleteServiceType = deleteServiceType;
exports.deleteStaff = deleteStaff;
exports.getAppointmentList = getAppointmentList;
exports.getReportByToken = getReportByToken;
exports.getReportList = getReportList;
exports.getServiceTypeList = getServiceTypeList;
exports.getStaffList = getStaffList;
exports.imgUrl = imgUrl;
exports.login = login;
exports.registerBoss = registerBoss;
exports.registerStaff = registerStaff;
exports.sendSms = sendSms;
exports.startAppointment = startAppointment;
exports.updateStore = updateStore;
exports.updateUser = updateUser;