diff --git a/src/api/product/firmware.js b/src/api/product/firmware.js
new file mode 100644
index 0000000..d018258
--- /dev/null
+++ b/src/api/product/firmware.js
@@ -0,0 +1,44 @@
+import request from "@/utils/request";
+
+// 查询产品固件列表
+export function listFirmware(query) {
+ return request({
+ url: "/product/firmware/list",
+ method: "get",
+ params: query,
+ });
+}
+
+// 查询产品固件详细
+export function getFirmware(firmwareId) {
+ return request({
+ url: "/product/firmware/" + firmwareId,
+ method: "get",
+ });
+}
+
+// 新增产品固件
+export function addFirmware(data) {
+ return request({
+ url: "/product/firmware",
+ method: "post",
+ data: data,
+ });
+}
+
+// 修改产品固件
+export function updateFirmware(data) {
+ return request({
+ url: "/product/firmware",
+ method: "put",
+ data: data,
+ });
+}
+
+// 删除产品固件
+export function delFirmware(firmwareId) {
+ return request({
+ url: "/product/firmware/" + firmwareId,
+ method: "delete",
+ });
+}
diff --git a/src/constant/dict.js b/src/constant/dict.js
index 06f9245..00cbb7f 100644
--- a/src/constant/dict.js
+++ b/src/constant/dict.js
@@ -32,3 +32,18 @@ export const isMonitor = new Map([
[0, "是"],
[1, "否"],
]);
+
+export const productStatusMap = [[1, ""]];
+
+export const firmwareLatestTypeOptions = [
+ {
+ label: "否",
+ value: 0,
+ tag: "danger",
+ },
+ {
+ label: "是",
+ value: 1,
+ tag: "success",
+ },
+];
diff --git a/src/views/product/firmware/index.vue b/src/views/product/firmware/index.vue
new file mode 100644
index 0000000..2ebdf49
--- /dev/null
+++ b/src/views/product/firmware/index.vue
@@ -0,0 +1,502 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+
+ 修改
+
+
+
+ 删除
+
+
+
+ 导出
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{
+ productOptions.find((el) => el.productId === row.productId)
+ ?.productName ?? "暂无"
+ }}
+
+
+
+
+ {{
+ tenantOptions.find((el) => el.tenantId === row.tenantId)
+ ?.tenantName ?? "暂无"
+ }}
+
+
+
+
+
+ {{
+ firmwareLatestTypeOptions.find(
+ (el) => el.value === row.latestVersionFlag
+ )?.label ?? "未知"
+ }}
+
+
+
+
+
+
+
+
+ 修改
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/product/product/components/edit.vue b/src/views/product/product/components/edit.vue
index a632425..5b22f43 100644
--- a/src/views/product/product/components/edit.vue
+++ b/src/views/product/product/components/edit.vue
@@ -36,6 +36,8 @@
v-model="form.tenantId"
:remote-method="getTenantList"
filterable
+ remote
+ remote-show-suffix
>
@@ -123,8 +124,8 @@
v-if="form.status !== 2"
type="primary"
@click="submitForm"
- >提交
+ >提交
+
@@ -137,7 +138,9 @@
@model-updated="getData"
/>
-
+
+
+
@@ -146,6 +149,7 @@