From c7b4b9a2f4c0f05aeb60a9e3f5fba5d9a3676f3f Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 18 八月 2025 16:22:42 +0800
Subject: [PATCH] 中强恒兴设备管理页面添加

---
 src/api/equipmentManagement/brand.js |   92 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 92 insertions(+), 0 deletions(-)

diff --git a/src/api/equipmentManagement/brand.js b/src/api/equipmentManagement/brand.js
new file mode 100644
index 0000000..fd46a80
--- /dev/null
+++ b/src/api/equipmentManagement/brand.js
@@ -0,0 +1,92 @@
+// 璁惧鍝佺墝绠$悊 - 鏈湴鍋囨暟鎹� API锛堜娇鐢� localStorage 鎸佷箙鍖栵級
+
+const STORAGE_KEY = 'EQUIPMENT_BRANDS';
+
+function readStore() {
+  try {
+    const raw = localStorage.getItem(STORAGE_KEY);
+    if (raw) {
+      const parsed = JSON.parse(raw);
+      if (Array.isArray(parsed)) return parsed;
+    }
+  } catch (e) {
+    // ignore
+  }
+  // 鍒濆鍖栦竴浜涚ず渚嬫暟鎹�
+  const initial = [
+    { id: 1, name: '瑗块棬瀛�', country: '寰峰浗', description: '宸ヤ笟鑷姩鍖栦笌鐢垫皵宸ョ▼鍝佺墝', createdAt: Date.now() - 86400000 * 10 },
+    { id: 2, name: '鏂借�愬痉', country: '娉曞浗', description: '鑳芥簮绠$悊涓庤嚜鍔ㄥ寲', createdAt: Date.now() - 86400000 * 7 },
+    { id: 3, name: '涓夎彵鐢垫満', country: '鏃ユ湰', description: '鐢垫皵涓庤嚜鍔ㄥ寲璁惧', createdAt: Date.now() - 86400000 * 3 },
+  ];
+  localStorage.setItem(STORAGE_KEY, JSON.stringify(initial));
+  return initial;
+}
+
+function writeStore(list) {
+  localStorage.setItem(STORAGE_KEY, JSON.stringify(list));
+}
+
+function nextId(list) {
+  const maxId = list.reduce((max, item) => Math.max(max, Number(item.id) || 0), 0);
+  return maxId + 1;
+}
+
+export function getBrandPage(params = {}) {
+  const { current = 1, size = 10, name } = params;
+  const list = readStore();
+  let filtered = list;
+  if (name) {
+    const kw = String(name).trim();
+    filtered = filtered.filter((b) =>
+      (b.name && b.name.includes(kw)) || (b.country && b.country.includes(kw))
+    );
+  }
+  const start = (current - 1) * size;
+  const end = start + Number(size);
+  const records = filtered.slice(start, end);
+  return Promise.resolve({
+    code: 200,
+    data: {
+      total: filtered.length,
+      records,
+    },
+    msg: 'ok',
+  });
+}
+
+export function getBrandById(id) {
+  const list = readStore();
+  const item = list.find((i) => String(i.id) === String(id));
+  return Promise.resolve({ code: 200, data: item || null, msg: 'ok' });
+}
+
+export function addBrand(data) {
+  const list = readStore();
+  const item = { ...data };
+  item.id = nextId(list);
+  item.createdAt = Date.now();
+  list.unshift(item);
+  writeStore(list);
+  return Promise.resolve({ code: 200, data: item, msg: '鏂板鎴愬姛' });
+}
+
+export function editBrand(data) {
+  const list = readStore();
+  const index = list.findIndex((i) => String(i.id) === String(data.id));
+  if (index !== -1) {
+    list[index] = { ...list[index], ...data };
+    writeStore(list);
+    return Promise.resolve({ code: 200, data: list[index], msg: '淇敼鎴愬姛' });
+  }
+  return Promise.resolve({ code: 404, data: null, msg: '鏈壘鍒拌鍝佺墝' });
+}
+
+export function delBrand(idOrIds) {
+  const list = readStore();
+  const ids = Array.isArray(idOrIds) ? idOrIds.map(String) : [String(idOrIds)];
+  const newList = list.filter((i) => !ids.includes(String(i.id)));
+  writeStore(newList);
+  return Promise.resolve({ code: 200, data: null, msg: '鍒犻櫎鎴愬姛' });
+}
+
+

--
Gitblit v1.9.3