refactor: 统一组件导入方式与样式调整

- 将多个组件中的 require 替换为 import,提升代码一致性。
- 更新上传组件中的回调函数,简化图片选择逻辑。
- 调整样式以适配 Element Plus 组件,确保界面一致性。
- 删除不再使用的样式,优化项目结构。
This commit is contained in:
田香琪
2026-07-08 16:22:44 +08:00
parent cf92d9d939
commit a4659ed1a2
84 changed files with 1038 additions and 1468 deletions

View File

@@ -151,7 +151,7 @@
</el-table-column>
<el-table-column label="价格" width="200">
<template #default="{ row }">
<span :style="{ color: $mainColor }">{{ $filters.unitPrice(row.price, '¥') }}</span>
<span :style="{ color: $mainColor }">{{ unitPrice(row.price, '¥') }}</span>
</template>
</el-table-column>
<el-table-column prop="buyCount" label="销量" width="150" />
@@ -305,6 +305,8 @@ import {
getGoodsGroupByPage,
addGoodsGroupItems
} from "@/api/goods";
import { ElMessage, ElMessageBox } from "element-plus";
import { unitPrice, customRouterPush } from "@/utils/filters";
export default {
name: "goods",
data() {
@@ -367,6 +369,7 @@ export default {
}
},
methods: {
unitPrice,
clearTableSelection() {
this.$refs.table?.clearSelection?.();
},
@@ -452,7 +455,7 @@ export default {
lower() {
const reason = this.underForm.reason ? this.underForm.reason.trim() : "";
if (!reason) {
this.$Message.error("下架原因不能为空");
ElMessage.error("下架原因不能为空");
return;
}
let params = {
@@ -460,9 +463,8 @@ export default {
reason
};
lowGoods(params).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.modalVisible = false;
this.getDataList();
this.getNumberData(); // 添加这行
@@ -471,29 +473,23 @@ export default {
},
// 上架
upper(v) {
this.$Modal.confirm({
title: "确认上架",
content: "您确认要上架 " + v.goodsName + " ?",
loading: true,
onOk: () => {
let params = {
goodsId: v.id
};
upGoods(params).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("上架成功");
this.getDataList();
this.getNumberData(); // 添加这行
}
});
},
});
ElMessageBox.confirm("您确认要上架 " + v.goodsName + " ?", "确认上架", { type: "warning" }).then(() => {
let params = {
goodsId: v.id
};
return upGoods(params).then((res) => {
if (res.success) {
ElMessage.success("上架成功");
this.getDataList();
this.getNumberData(); // 添加这行
}
});
}).catch(() => {});
},
//查看商品详情
showDetail(v) {
this.$filters.customRouterPush({
customRouterPush({
name: "goods-detail",
query: { id: v.id },
});
@@ -521,26 +517,20 @@ export default {
this.goodsAuditForm.authFlag = "REFUSE";
}
this.$Modal.confirm({
title: "确认审核",
content: "您确认要审核" + examine + " " + v.goodsName + " ?",
loading: true,
onOk: () => {
this.goodsAuditForm.goodsIds=v.id;
let formData = new FormData();
formData.append('goodsIds', v.id);
formData.append('authFlag', this.goodsAuditForm.authFlag);
ElMessageBox.confirm("您确认要审核" + examine + " " + v.goodsName + " ?", "确认审核", { type: "warning" }).then(() => {
this.goodsAuditForm.goodsIds=v.id;
let formData = new FormData();
formData.append('goodsIds', v.id);
formData.append('authFlag', this.goodsAuditForm.authFlag);
authGoods(formData).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("审核成功");
this.getDataList();
this.getNumberData();
}
});
},
});
return authGoods(formData).then((res) => {
if (res.success) {
ElMessage.success("审核成功");
this.getDataList();
this.getNumberData();
}
});
}).catch(() => {});
},
// 打开审核弹框
@@ -563,7 +553,7 @@ export default {
formData.append('authFlag', this.goodsAuditForm.auth_flag === 1 ? 'PASS' : 'REFUSE');
authGoods(formData).then((res) => {
if (res.success) {
this.$Message.success('审核成功');
ElMessage.success('审核成功');
this.auditModalVisible = false;
this.getDataList();
this.getNumberData();
@@ -580,78 +570,60 @@ export default {
// 批量上架
batchUpper() {
if (this.selectedRows.length === 0) {
this.$Message.warning('请先选择要上架的商品');
ElMessage.warning('请先选择要上架的商品');
return;
}
const goodsNames = this.selectedRows.map(item => item.goodsName).join('、');
this.$Modal.confirm({
title: '确认批量上架',
content: `您确认要上架以下商品吗?\n${goodsNames}`,
loading: true,
onOk: () => {
// 提取所有选中商品的ID
const goodsIds = this.selectedRows.map(item => item.id);
const params = {
goodsId: goodsIds // 传递ID数组
};
ElMessageBox.confirm(`您确认要上架以下商品吗?\n${goodsNames}`, "确认批量上架", { type: "warning" }).then(() => {
const goodsIds = this.selectedRows.map(item => item.id);
const params = {
goodsId: goodsIds
};
upGoods(params).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success('批量上架成功');
this.selectedRows = [];
this.selectAll = false;
this.getDataList();
this.getNumberData();
}
}).catch(() => {
this.$Modal.remove();
});
}
});
return upGoods(params).then((res) => {
if (res.success) {
ElMessage.success('批量上架成功');
this.selectedRows = [];
this.selectAll = false;
this.getDataList();
this.getNumberData();
}
});
}).catch(() => {});
},
// 批量下架
batchLower() {
if (this.selectedRows.length === 0) {
this.$Message.warning('请先选择要下架的商品');
ElMessage.warning('请先选择要下架的商品');
return;
}
const goodsNames = this.selectedRows.map(item => item.goodsName).join('、');
this.$Modal.confirm({
title: '确认批量下架',
content: `您确认要下架以下商品吗?\n${goodsNames}`,
loading: true,
onOk: () => {
// 提取所有选中商品的ID
const goodsIds = this.selectedRows.map(item => item.id);
const params = {
goodsId: goodsIds, // 传递ID数组
reason: '批量下架操作' // 可以设置默认下架原因
};
ElMessageBox.confirm(`您确认要下架以下商品吗?\n${goodsNames}`, "确认批量下架", { type: "warning" }).then(() => {
const goodsIds = this.selectedRows.map(item => item.id);
const params = {
goodsId: goodsIds,
reason: '批量下架操作'
};
lowGoods(params).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success('批量下架成功');
this.selectedRows = [];
this.selectAll = false;
this.getDataList();
this.getNumberData();
}
}).catch(() => {
this.$Modal.remove();
});
}
});
return lowGoods(params).then((res) => {
if (res.success) {
ElMessage.success('批量下架成功');
this.selectedRows = [];
this.selectAll = false;
this.getDataList();
this.getNumberData();
}
});
}).catch(() => {});
},
// 批量审核
batchAudit() {
if (this.selectedRows.length === 0) {
this.$Message.warning('请先选择要审核的商品');
ElMessage.warning('请先选择要审核的商品');
return;
}
@@ -666,13 +638,13 @@ export default {
// 提交批量审核
submitBatchAudit() {
if (this.selectedRows.length === 0) {
this.$Message.warning('请先选择要审核的商品');
ElMessage.warning('请先选择要审核的商品');
return;
}
// 如果是拒绝审核,必须填写原因
if (this.batchAuditForm.auth_flag === 2 && !this.batchAuditForm.reason.trim()) {
this.$Message.warning('审核拒绝时必须填写拒绝原因');
ElMessage.warning('审核拒绝时必须填写拒绝原因');
return;
}
@@ -688,7 +660,7 @@ export default {
this.batchAuditSubmitLoading = true;
authGoods(formData).then((res) => {
if (res.success) {
this.$Message.success(`批量审核${actionText}成功`);
ElMessage.success(`批量审核${actionText}成功`);
this.selectedRows = [];
this.selectAll = false;
this.batchAuditModalVisible = false;
@@ -709,7 +681,7 @@ export default {
},
openSetGoodsGroup() {
if (this.selectedRows.length === 0) {
this.$Message.warning("请先选择商品");
ElMessage.warning("请先选择商品");
return;
}
this.goodsGroupFlag = true;
@@ -728,18 +700,18 @@ export default {
addGoodsGroupItems(this.goodsGroupForm.groupId, goodsIds).then((res) => {
this.goodsGroupLoading = false;
if (res && res.success) {
this.$Message.success("设置成功");
ElMessage.success("设置成功");
this.goodsGroupFlag = false;
this.selectedRows = [];
this.selectAll = false;
this.clearTableSelection();
this.getDataList();
} else if (res && res.message) {
this.$Message.error(res.message);
ElMessage.error(res.message);
}
}).catch(() => {
this.goodsGroupLoading = false;
this.$Message.error("设置失败,请检查权限或后端接口");
ElMessage.error("设置失败,请检查权限或后端接口");
});
});
}

View File

@@ -53,7 +53,7 @@
<el-table-column prop="id" label="商品编号" min-width="120" show-overflow-tooltip />
<el-table-column label="价格" min-width="120">
<template #default="{ row }">
<span v-if="row" :style="{ color: $mainColor }">{{ $filters.unitPrice(row.price, "") }}</span>
<span v-if="row" :style="{ color: $mainColor }">{{ unitPrice(row.price, "") }}</span>
</template>
</el-table-column>
<el-table-column label="审核状态" min-width="120">
@@ -93,6 +93,8 @@
<script>
import { authGoods, getAuthGoodsListData } from "@/api/goods";
import { ElMessage, ElMessageBox } from "element-plus";
import { unitPrice, customRouterPush } from "@/utils/filters";
export default {
name: "goodsApply",
@@ -113,6 +115,7 @@ export default {
};
},
methods: {
unitPrice,
authFlagText(v) {
const map = {
TOBEAUDITED: "待审核",
@@ -163,24 +166,20 @@ export default {
examine(v, authFlag) {
const examine = authFlag === 1 ? "通过" : "拒绝";
this.goodsAuditForm.authFlag = authFlag === 1 ? "PASS" : "REFUSE";
this.$Modal.confirm({
title: "确认审核",
content: `您确认要审核${examine} ${v.goodsName} ?`,
onOk: () => {
const formData = new FormData();
formData.append("goodsIds", v.id);
formData.append("authFlag", this.goodsAuditForm.authFlag);
return authGoods(formData).then((res) => {
if (res.success) {
this.$Message.success("审核成功");
this.getDataList();
}
});
},
});
ElMessageBox.confirm(`您确认要审核${examine} ${v.goodsName} ?`, "确认审核", { type: "warning" }).then(() => {
const formData = new FormData();
formData.append("goodsIds", v.id);
formData.append("authFlag", this.goodsAuditForm.authFlag);
return authGoods(formData).then((res) => {
if (res.success) {
ElMessage.success("审核成功");
this.getDataList();
}
});
}).catch(() => {});
},
showDetail(v) {
this.$filters.customRouterPush({
customRouterPush({
name: "goods-detail",
query: { id: v.id },
});

View File

@@ -159,6 +159,8 @@ import {
} from "@/api/goods";
import ossManage from "@/views/sys/oss-manage/ossManage";
import { regular } from "@/utils";
import { ElMessage, ElMessageBox } from "element-plus";
import defaultPic from "@/assets/default.png";
export default {
name: "brand",
@@ -167,7 +169,7 @@ export default {
},
data() {
return {
defaultPic: require("@/assets/default.png"),
defaultPic,
loading: true,
modalType: 0,
modalVisible: false,
@@ -262,7 +264,7 @@ export default {
.then((res) => {
this.categorySubmitLoading = false;
if (res && res.success) {
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.categoryModalVisible = false;
}
})
@@ -272,28 +274,25 @@ export default {
},
handleStatusSwitchChange(row, checked) {
const disable = !checked;
this.$Modal.confirm({
title: disable ? "确认禁用" : "确认启用",
content: "您确认要" + (disable ? "禁用" : "启用") + "品牌 " + row.name + " ?",
loading: true,
onOk: () => {
disableBrand(row.id, { disable }).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("操作成功");
}
this.getDataList();
});
},
onCancel: () => {
this.$nextTick(() => this.$forceUpdate());
},
ElMessageBox.confirm(
"您确认要" + (disable ? "禁用" : "启用") + "品牌 " + row.name + " ?",
disable ? "确认禁用" : "确认启用",
{ type: "warning" }
).then(() => {
return disableBrand(row.id, { disable }).then((res) => {
if (res.success) {
ElMessage.success("操作成功");
}
this.getDataList();
});
}).catch(() => {
this.$nextTick(() => this.$forceUpdate());
});
},
async delBrand(id) {
const res = await delBrand(id);
if (res.success) {
this.$Message.success("品牌删除成功!");
ElMessage.success("品牌删除成功!");
this.getDataList();
}
},
@@ -332,7 +331,7 @@ export default {
addBrand(this.form).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.getDataList();
this.modalVisible = false;
}
@@ -341,7 +340,7 @@ export default {
updateBrand(this.form).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.getDataList();
this.modalVisible = false;
}

View File

@@ -158,6 +158,7 @@ import {
} from "@/api/goods";
import uploadPicInput from "@/components/lili/upload-pic-input";
import { regular } from "@/utils";
import { ElMessage, ElMessageBox } from "element-plus";
export default {
name: "goods-category",
@@ -222,28 +223,23 @@ export default {
onStatusSwitchChange(row, nextDeleteFlag) {
const previousDeleteFlag = !nextDeleteFlag;
const isClosing = nextDeleteFlag === true;
this.$Modal.confirm({
title: isClosing ? "确认关闭" : "确认开启",
content: `您是否要${isClosing ? "关闭" : "开启"}当前分类 ${row.name} 及其子分类?`,
loading: true,
okText: "是",
cancelText: "否",
onOk: () => {
row._statusLoading = true;
disableCategory(row.id, { enableOperations: isClosing ? true : 0 }).then((res) => {
this.$Modal.remove();
row._statusLoading = false;
if (res && res.success) {
this.$Message.success("操作成功");
this.getAllList();
return;
}
row.deleteFlag = previousDeleteFlag;
});
},
onCancel: () => {
ElMessageBox.confirm(
`您是否要${isClosing ? "关闭" : "开启"}当前分类 ${row.name} 及其子分类?`,
isClosing ? "确认关闭" : "确认开启",
{ type: "warning", confirmButtonText: "是", cancelButtonText: "否" }
).then(() => {
row._statusLoading = true;
return disableCategory(row.id, { enableOperations: isClosing ? true : 0 }).then((res) => {
row._statusLoading = false;
if (res && res.success) {
ElMessage.success("操作成功");
this.getAllList();
return;
}
row.deleteFlag = previousDeleteFlag;
},
});
}).catch(() => {
row.deleteFlag = previousDeleteFlag;
});
},
init() {
@@ -283,7 +279,7 @@ export default {
saveCategorySpec(this.categoryId, this.specForm).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.modalSpecVisible = false;
}
});
@@ -292,7 +288,7 @@ export default {
saveCategoryBrand(this.categoryId, this.brandForm).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.modalBrandVisible = false;
}
});
@@ -342,7 +338,7 @@ export default {
insertCategory(this.formAdd).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("添加成功");
ElMessage.success("添加成功");
this.getAllList();
this.modalVisible = false;
this.$refs.form.resetFields();
@@ -352,7 +348,7 @@ export default {
updateCategory(this.formAdd).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success("修改成功");
ElMessage.success("修改成功");
this.getAllList();
this.modalVisible = false;
this.$refs.form.resetFields();
@@ -362,20 +358,14 @@ export default {
});
},
remove(v) {
this.$Modal.confirm({
title: "确认删除",
content: "您确认要删除 " + v.name + " ?",
loading: true,
onOk: () => {
delCategory(v.id).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("操作成功");
this.getAllList();
}
});
},
});
ElMessageBox.confirm("您确认要删除 " + v.name + " ?", "确认删除", { type: "warning" }).then(() => {
return delCategory(v.id).then((res) => {
if (res.success) {
ElMessage.success("操作成功");
this.getAllList();
}
});
}).catch(() => {});
},
getAllList() {
this.loading = true;
@@ -394,45 +384,35 @@ export default {
});
},
enable(v) {
this.$Modal.confirm({
title: "确认启用",
content: "您是否要启用当前分类 " + v.name + " 及其子分类?",
loading: true,
okText: "是",
cancelText: "否",
onOk: () => {
disableCategory(v.id, { enableOperations: 0 }).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("操作成功");
this.getAllList();
}
});
},
onCancel: () => {
this.getAllList();
},
ElMessageBox.confirm(
"您是否要启用当前分类 " + v.name + " 及其子分类?",
"确认启用",
{ type: "warning", confirmButtonText: "是", cancelButtonText: "否" }
).then(() => {
return disableCategory(v.id, { enableOperations: 0 }).then((res) => {
if (res.success) {
ElMessage.success("操作成功");
this.getAllList();
}
});
}).catch(() => {
this.getAllList();
});
},
disable(v) {
this.$Modal.confirm({
title: "确认禁用",
content: "您是否要禁用当前分类 " + v.name + " 及其子分类?",
loading: true,
okText: "是",
cancelText: "否",
onOk: () => {
disableCategory(v.id, { enableOperations: true }).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success("操作成功");
this.getAllList();
}
});
},
onCancel: () => {
this.getAllList();
},
ElMessageBox.confirm(
"您是否要禁用当前分类 " + v.name + " 及其子分类?",
"确认禁用",
{ type: "warning", confirmButtonText: "是", cancelButtonText: "否" }
).then(() => {
return disableCategory(v.id, { enableOperations: true }).then((res) => {
if (res.success) {
ElMessage.success("操作成功");
this.getAllList();
}
});
}).catch(() => {
this.getAllList();
});
},
},

View File

@@ -98,6 +98,7 @@ import {
updateGoodsParams,
} from "@/api/goods";
import { regular } from "@/utils";
import { ElMessage } from "element-plus";
const getOptionText = (value) => {
if (value && typeof value === "object") return value.value;
@@ -369,7 +370,7 @@ export default {
insertGoodsParams(buildSpringFormPayload(payload))
.then((res) => {
if (!(res && res.success)) return;
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.back();
})
.finally(() => {
@@ -379,7 +380,7 @@ export default {
updateGoodsParams(buildSpringFormPayload(payload))
.then((res) => {
if (!(res && res.success)) return;
this.$Message.success("操作成功");
ElMessage.success("操作成功");
this.back();
})
.finally(() => {

View File

@@ -67,6 +67,7 @@
</template>
<script>
import { deleteParams, getGoodsParamsPage } from "@/api/goods";
import { ElMessage, ElMessageBox } from "element-plus";
export default {
name: "categoryParams",
@@ -127,20 +128,14 @@ export default {
this.$router.push({ name: "goods-parameter-edit", query: { id: row.id } });
},
remove(row) {
this.$Modal.confirm({
title: "确认删除",
content: "您确认要删除 " + (row.paramName || "") + " ?",
loading: true,
onOk: () => {
deleteParams(row.id).then((res) => {
this.$Modal.remove();
if (res && res.success) {
this.$Message.success("删除成功");
this.getDataList();
}
});
},
});
ElMessageBox.confirm("您确认要删除 " + (row.paramName || "") + " ?", "确认删除", { type: "warning" }).then(() => {
return deleteParams(row.id).then((res) => {
if (res && res.success) {
ElMessage.success("删除成功");
this.getDataList();
}
});
}).catch(() => {});
},
},
mounted() {

View File

@@ -172,6 +172,7 @@
<script>
import * as API_Member from "@/api/member";
import { ElMessage, ElMessageBox } from "element-plus";
export default {
name: "goods-review",
@@ -213,7 +214,7 @@ export default {
}
API_Member.updateMemberReview(this.currentReviewId, { status }).then((res) => {
if (res.success) {
this.$Message.success("修改成功!");
ElMessage.success("修改成功!");
this.getDataList();
}
});
@@ -257,7 +258,7 @@ export default {
top: item.id === v.id ? top : false,
};
});
this.$Message.success(top ? "置顶成功!" : "取消置顶成功!");
ElMessage.success(top ? "置顶成功!" : "取消置顶成功!");
this.init();
}
});
@@ -296,18 +297,12 @@ export default {
this.infoData = {};
},
remove(v) {
this.$Modal.confirm({
title: "确认删除",
content: "您确认要删除会员" + v.memberName + "的评论?",
loading: true,
onOk: () => {
API_Member.delMemberReview(v.id).then(() => {
this.$Modal.remove();
this.$Message.success("修改成功");
this.init();
});
},
});
ElMessageBox.confirm("您确认要删除会员" + v.memberName + "的评论?", "确认删除", { type: "warning" }).then(() => {
return API_Member.delMemberReview(v.id).then(() => {
ElMessage.success("修改成功");
this.init();
});
}).catch(() => {});
},
},
mounted() {

View File

@@ -70,6 +70,7 @@
<script>
import * as API_Goods from "@/api/goods.js";
import { ElMessage, ElMessageBox } from "element-plus";
export default {
name: "goodsGroup",
@@ -125,12 +126,12 @@ export default {
this.data = res.result.records || [];
this.total = res.result.total || 0;
} else if (res && res.message) {
this.$Message.error(res.message);
ElMessage.error(res.message);
}
})
.catch(() => {
this.loading = false;
this.$Message.error("加载商品分组失败");
ElMessage.error("加载商品分组失败");
});
},
openAdd() {
@@ -148,16 +149,16 @@ export default {
.then((res) => {
this.submitAddLoading = false;
if (res && res.success) {
this.$Message.success("添加成功");
ElMessage.success("添加成功");
this.addFlag = false;
this.getData();
} else if (res && res.message) {
this.$Message.error(res.message);
ElMessage.error(res.message);
}
})
.catch(() => {
this.submitAddLoading = false;
this.$Message.error("添加失败,请检查权限或后端接口");
ElMessage.error("添加失败,请检查权限或后端接口");
});
});
},
@@ -181,7 +182,7 @@ export default {
}
})
.catch(() => {
this.$Message.error("获取分组详情失败");
ElMessage.error("获取分组详情失败");
});
},
submitEdit() {
@@ -193,38 +194,34 @@ export default {
.then((res) => {
this.submitEditLoading = false;
if (res && res.success) {
this.$Message.success("修改成功");
ElMessage.success("修改成功");
this.editFlag = false;
this.getData();
} else if (res && res.message) {
this.$Message.error(res.message);
ElMessage.error(res.message);
}
})
.catch(() => {
this.submitEditLoading = false;
this.$Message.error("修改失败,请检查权限或后端接口");
ElMessage.error("修改失败,请检查权限或后端接口");
});
});
},
remove(row) {
this.$Modal.confirm({
title: "提示",
content: "确定删除该分组?",
onOk: () => {
API_Goods.deleteGoodsGroup(row.id)
.then((res) => {
if (res && res.success) {
this.$Message.success("删除成功");
this.getData();
} else if (res && res.message) {
this.$Message.error(res.message);
}
})
.catch(() => {
this.$Message.error("删除失败,请检查权限或后端接口");
});
},
});
ElMessageBox.confirm("确定删除该分组?", "提示", { type: "warning" }).then(() => {
return API_Goods.deleteGoodsGroup(row.id)
.then((res) => {
if (res && res.success) {
ElMessage.success("删除成功");
this.getData();
} else if (res && res.message) {
ElMessage.error(res.message);
}
})
.catch(() => {
ElMessage.error("删除失败,请检查权限或后端接口");
});
}).catch(() => {});
},
},
mounted() {

View File

@@ -214,6 +214,7 @@ import {
getGoodsSkuData,
updateGoodsSkuVirtualSales,
} from "@/api/goods";
import { ElMessage } from "element-plus";
const VIRTUAL_SALES_FIELDS = [
"virtualSales",
@@ -311,14 +312,14 @@ export default {
this.data = [];
this.total = 0;
this.selectedRows = [];
this.$Message.error((res && res.message) || "加载规格列表失败");
ElMessage.error((res && res.message) || "加载规格列表失败");
}
})
.catch(() => {
this.data = [];
this.total = 0;
this.selectedRows = [];
this.$Message.error("加载规格列表失败");
ElMessage.error("加载规格列表失败");
})
.finally(() => {
this.loading = false;
@@ -339,7 +340,7 @@ export default {
},
openBatchVirtualSalesModal() {
if (!this.selectedRows.length) {
this.$Message.warning("请先选择要设置的商品规格");
ElMessage.warning("请先选择要设置的商品规格");
return;
}
this.modalMode = "batch";
@@ -362,7 +363,7 @@ export default {
handleSubmitVirtualSales() {
const virtualSales = Number(this.editForm.virtualSales);
if (!Number.isInteger(virtualSales) || virtualSales < 0) {
this.$Message.warning("请输入大于等于 0 的整数虚拟销量");
ElMessage.warning("请输入大于等于 0 的整数虚拟销量");
return;
}
if (this.modalMode === "batch") {
@@ -384,14 +385,14 @@ export default {
this.data[currentIndex].virtualSales = virtualSales;
this.data[currentIndex].virtualSalesInput = virtualSales;
}
this.$Message.success("虚拟销量设置成功");
ElMessage.success("虚拟销量设置成功");
this.resetVirtualSalesModal();
} else {
this.$Message.error((res && res.message) || "规格虚拟销量设置失败");
ElMessage.error((res && res.message) || "规格虚拟销量设置失败");
}
})
.catch(() => {
this.$Message.error("规格虚拟销量设置失败");
ElMessage.error("规格虚拟销量设置失败");
})
.finally(() => {
if (this.data[currentIndex]) {
@@ -403,7 +404,7 @@ export default {
handleBatchSubmitVirtualSales(virtualSales) {
const skuIds = this.selectedRows.map((item) => item.id).filter(Boolean);
if (!skuIds.length) {
this.$Message.warning("请先选择要设置的商品规格");
ElMessage.warning("请先选择要设置的商品规格");
return;
}
this.modalSubmitting = true;
@@ -420,14 +421,14 @@ export default {
});
this.selectedRows = [];
this.$refs.table?.clearSelection();
this.$Message.success("虚拟销量设置成功");
ElMessage.success("虚拟销量设置成功");
this.resetVirtualSalesModal();
} else {
this.$Message.error((res && res.message) || "虚拟销量设置失败");
ElMessage.error((res && res.message) || "虚拟销量设置失败");
}
})
.catch(() => {
this.$Message.error("虚拟销量设置失败");
ElMessage.error("虚拟销量设置失败");
})
.finally(() => {
this.modalSubmitting = false;