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

@@ -1,7 +1,7 @@
import hotzone from './index.vue' import hotzone from './index.vue'
hotzone.install = (Vue) => { hotzone.install = (app) => {
Vue.component(hotzone.name, hotzone) app.component(hotzone.name, hotzone)
} }
export default hotzone export default hotzone

View File

@@ -42,17 +42,6 @@
} }
} }
:deep(.ivu-scroll-container){
width: 100% !important;
height: 400px !important;
}
:deep(.ivu-scroll-content){
/* */
display: flex;
flex-wrap: wrap;
}
.wap-content-list { .wap-content-list {
overflow-y: auto; overflow-y: auto;
} }

View File

@@ -33,13 +33,10 @@ export default {
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
:deep(.ivu-card-body){ :deep(.el-card__body) {
height: 414px; height: 414px;
overflow: auto; overflow: auto;
} }
.ivu-table-wrapper ivu-table-wrapper-with-border {
height: 300px !important;
}
.list { .list {
margin: 0 1.5%; margin: 0 1.5%;
height: 400px; height: 400px;
@@ -69,11 +66,11 @@ export default {
height: 416px; height: 416px;
overflow: hidden; overflow: hidden;
} }
:deep(.ivu-table){ :deep(.el-table) {
height: 300px !important; height: 300px !important;
overflow: auto; overflow: auto;
} }
:deep(.ivu-card-body){ :deep(.el-card__body) {
padding: 0; padding: 0;
height: auto; height: auto;
} }

View File

@@ -63,12 +63,8 @@
ref="ossManage" ref="ossManage"
:is-component="true" :is-component="true"
:initialize="picModalFlag" :initialize="picModalFlag"
@selected="handleOssSelected" @callback="handleOssCallback"
/> />
<template #footer>
<el-button @click="cancelPicModal">取消</el-button>
<el-button type="primary" @click="confirmPicModal">确认</el-button>
</template>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@@ -117,14 +113,12 @@ export default {
viewImage: false, viewImage: false,
uploadFileUrl: uploadFile, uploadFileUrl: uploadFile,
picModalFlag: false, picModalFlag: false,
pendingSelection: [],
selectedFormBtnName: "", selectedFormBtnName: "",
picIndex: "", picIndex: "",
}; };
}, },
methods: { methods: {
handleCLickImg(val, index) { handleCLickImg(val, index) {
this.pendingSelection = [];
this.picModalFlag = true; this.picModalFlag = true;
this.selectedFormBtnName = val; this.selectedFormBtnName = val;
this.picIndex = index; this.picIndex = index;
@@ -134,41 +128,16 @@ export default {
} }
}); });
}, },
handleOssSelected(list) { handleOssCallback(item) {
this.pendingSelection = Array.isArray(list) ? list : [];
},
parseOssSelectionUrl(item) {
if (!item) {
return "";
}
if (typeof item === "string") {
const index = item.indexOf(",");
return index >= 0 ? item.slice(index + 1) : item;
}
return item.url || "";
},
confirmPicModal() {
const list = this.pendingSelection || [];
if (!list.length) {
this.$Message.warning("请先选择图片");
return;
}
const url = this.parseOssSelectionUrl(list[list.length - 1]);
if (!url) {
this.$Message.warning("请选择有效图片");
return;
}
this.picModalFlag = false; this.picModalFlag = false;
this.currentValue = url; if (!item?.url) return;
this.currentValue = item.url;
this.picIndex = ""; this.picIndex = "";
this.emitValue(this.currentValue); this.emitValue(this.currentValue);
this.pendingSelection = [];
},
cancelPicModal() {
this.picModalFlag = false;
}, },
resetPicModal() { resetPicModal() {
this.pendingSelection = []; this.selectedFormBtnName = "";
this.picIndex = "";
}, },
init() { init() {
this.accessToken = { this.accessToken = {

View File

@@ -22,8 +22,8 @@
<script> <script>
import AMapLoader from "@amap/amap-jsapi-loader"; import AMapLoader from "@amap/amap-jsapi-loader";
import { getRegion } from "@/api/common.js"; import { getRegion } from "@/api/common.js";
import config from "@/config/index";
const config = require('@/config/index')
export default { export default {
name: "map", name: "map",
data() { data() {

View File

@@ -22,8 +22,9 @@ import { setStore, getStore, removeStore } from "@/libs/storage";
import util from "@/libs/util"; import util from "@/libs/util";
import { md5 } from "@/utils/md5.js"; import { md5 } from "@/utils/md5.js";
import * as filters from "@/utils/filters"; import * as filters from "@/utils/filters";
import config from "@/config";
const { aMapSecurityJsCode, mainColor } = require("@/config"); const { aMapSecurityJsCode, mainColor } = config;
if (aMapSecurityJsCode) { if (aMapSecurityJsCode) {
window._AMapSecurityConfig = { window._AMapSecurityConfig = {

View File

@@ -1,6 +1,6 @@
import Main from "@/views/Main.vue"; import Main from "@/views/Main.vue";
import config from "@/config/index";
const config = require('@/config/index')
// 不作为Main组件的子页面展示的页面单独写如下 // 不作为Main组件的子页面展示的页面单独写如下
export const loginRouter = { export const loginRouter = {
path: "/login", path: "/login",

View File

@@ -1,4 +1,6 @@
const { setting } = require("@/config"); import config from "@/config";
const { setting } = config;
const localSetting = window.localStorage.getItem('admin-setting') const localSetting = window.localStorage.getItem('admin-setting')
const settingData = { const settingData = {

View File

@@ -13,8 +13,8 @@
border-radius: 1em; border-radius: 1em;
background-color: rgba(50,50,50,.1); background-color: rgba(50,50,50,.1);
} }
.ivu-table table{ .el-table table {
width: 100%!important; width: 100% !important;
} }
.flex{ .flex{
@@ -151,7 +151,6 @@ $bg_color: #f1f6fa;
border-radius: 0.4em; border-radius: 0.4em;
flex-wrap: wrap; flex-wrap: wrap;
> .ivu-form-item,
> .el-form-item { > .el-form-item {
margin: 8px 10px !important; margin: 8px 10px !important;
} }
@@ -174,7 +173,3 @@ $bg_color: #f1f6fa;
margin-top: 10px; margin-top: 10px;
} }
// 兼容遗留 iView 结构
.ivu-card + .ivu-card {
margin-top: 10px;
}

View File

@@ -23,7 +23,6 @@
border-radius: 0.4em; border-radius: 0.4em;
flex-wrap: wrap; flex-wrap: wrap;
> .ivu-form-item,
> .el-form-item { > .el-form-item {
margin: 8px 10px !important; margin: 8px 10px !important;
} }
@@ -48,7 +47,3 @@
margin-top: 10px; margin-top: 10px;
} }
// 兼容遗留 iView
.ivu-card + .ivu-card {
margin-top: 10px;
}

View File

@@ -32,7 +32,3 @@
display: block; display: block;
} }
.block-pop .ivu-poptip,
.block-pop .ivu-poptip-rel {
display: block;
}

View File

@@ -85,8 +85,8 @@ import circleLoading from "@/components/lili/circle-loading.vue";
import Cookies from "js-cookie"; import Cookies from "js-cookie";
import util from "@/libs/util.js"; import util from "@/libs/util.js";
import { getNoticePage, logout } from "@/api/index"; import { getNoticePage, logout } from "@/api/index";
import config from "@/config/index.js";
const config = require("@/config/index.js"); import defaultLogo from "@/assets/logo.png";
export default { export default {
components: { components: {
@@ -102,7 +102,7 @@ export default {
sliceNum: 5, sliceNum: 5,
userInfo: "", userInfo: "",
tipsMessage: "", tipsMessage: "",
defaultLogo: require("@/assets/logo.png"), defaultLogo,
domainLogo: "", domainLogo: "",
}; };
}, },

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -10,7 +10,7 @@ h4 {
margin: 20px 0; margin: 20px 0;
font-size: 18px; font-size: 18px;
} }
:deep(.ivu-icon){ .icon {
margin-left: 40px; margin-left: 40px;
margin-right: 40px; margin-right: 40px;
} }

View File

@@ -13,7 +13,8 @@
</template> </template>
<script> <script>
const config = require("@/config/index"); import config from "@/config/index";
export default { export default {
data() { data() {
return { return {

View File

@@ -183,17 +183,6 @@
height: 100%; height: 100%;
.options {
.ivu-select-dropdown {
transform-origin: center top 0px;
position: absolute;
top: 45px !important;
left: -2px;
will-change: top, left;
}
}
.message-con { .message-con {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;

View File

@@ -171,6 +171,7 @@
<script> <script>
import { getUserWithdrawApply, withdrawApply } from "@/api/member"; import { getUserWithdrawApply, withdrawApply } from "@/api/member";
import { ElMessage } from "element-plus";
export default { export default {
name: "withdrawApply", name: "withdrawApply",
@@ -242,7 +243,7 @@ export default {
params.result = res; params.result = res;
params.remark = this.audit; params.remark = this.audit;
if (res === false && params.remark === "") { if (res === false && params.remark === "") {
this.$Message.error("审核备注不能为空"); ElMessage.error("审核备注不能为空");
return; return;
} }
this.submitLoading = true; this.submitLoading = true;
@@ -250,7 +251,7 @@ export default {
.then((result) => { .then((result) => {
const success = result === true || (result && result.success === true); const success = result === true || (result && result.success === true);
if (success) { if (success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.roleModalVisible = false; this.roleModalVisible = false;
this.queryModalVisible = false; this.queryModalVisible = false;
this.audit = ""; this.audit = "";

View File

@@ -349,6 +349,7 @@ import { getPlatformCoupon } from "@/api/promotion";
import { formatPromotionCouponValidityHtml } from "@/utils/promotions"; import { formatPromotionCouponValidityHtml } from "@/utils/promotions";
import couponTemplate from "@/views/promotions/coupon/coupon.vue"; import couponTemplate from "@/views/promotions/coupon/coupon.vue";
import uploadPicInput from "@/components/lili/upload-pic-input.vue"; import uploadPicInput from "@/components/lili/upload-pic-input.vue";
import { ElMessage, ElMessageBox } from "element-plus";
const GIFT_POINT = "GIFT_POINT"; const GIFT_POINT = "GIFT_POINT";
const COUPON_PACKAGE = "COUPON_PACKAGE"; const COUPON_PACKAGE = "COUPON_PACKAGE";
@@ -641,7 +642,7 @@ export default {
confirmCouponPicker() { confirmCouponPicker() {
const list = this.$refs.couponPicker?.getSelection?.() || []; const list = this.$refs.couponPicker?.getSelection?.() || [];
if (!list.length) { if (!list.length) {
this.$Message.warning("请至少选择一张优惠券"); ElMessage.warning("请至少选择一张优惠券");
return; return;
} }
this.onCouponTemplateSelected(list); this.onCouponTemplateSelected(list);
@@ -712,7 +713,7 @@ export default {
}, },
submitAdd() { submitAdd() {
if (!this.$refs.addForm) { if (!this.$refs.addForm) {
this.$Message.warning("表单未就绪,请稍后重试"); ElMessage.warning("表单未就绪,请稍后重试");
return; return;
} }
this.$refs.addForm.validate((valid) => { this.$refs.addForm.validate((valid) => {
@@ -730,17 +731,17 @@ export default {
API_Member.addMemberBenefit(payload).then((res) => { API_Member.addMemberBenefit(payload).then((res) => {
this.submitAddLoading = false; this.submitAddLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.addFlag = false; this.addFlag = false;
this.getData(); this.getData();
} else if (res && res.message) { } else if (res && res.message) {
this.$Message.error(res.message); ElMessage.error(res.message);
} else { } else {
this.$Message.error("添加失败"); ElMessage.error("添加失败");
} }
}).catch(() => { }).catch(() => {
this.submitAddLoading = false; this.submitAddLoading = false;
this.$Message.error("网络异常,请稍后重试"); ElMessage.error("网络异常,请稍后重试");
}); });
}); });
}, },
@@ -786,7 +787,7 @@ export default {
}, },
submitEdit() { submitEdit() {
if (!this.$refs.editForm) { if (!this.$refs.editForm) {
this.$Message.warning("表单未就绪,请稍后重试"); ElMessage.warning("表单未就绪,请稍后重试");
return; return;
} }
this.$refs.editForm.validate((valid) => { this.$refs.editForm.validate((valid) => {
@@ -804,17 +805,17 @@ export default {
API_Member.updateMemberBenefit(id, payload).then((res) => { API_Member.updateMemberBenefit(id, payload).then((res) => {
this.submitEditLoading = false; this.submitEditLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.editFlag = false; this.editFlag = false;
this.getData(); this.getData();
} else if (res && res.message) { } else if (res && res.message) {
this.$Message.error(res.message); ElMessage.error(res.message);
} else { } else {
this.$Message.error("修改失败"); ElMessage.error("修改失败");
} }
}).catch(() => { }).catch(() => {
this.submitEditLoading = false; this.submitEditLoading = false;
this.$Message.error("网络异常,请稍后重试"); ElMessage.error("网络异常,请稍后重试");
}); });
}); });
}, },
@@ -823,42 +824,34 @@ export default {
const prevState = row.benefitState; const prevState = row.benefitState;
if (nextState === prevState) return; if (nextState === prevState) return;
const text = checked ? "开启" : "关闭"; const text = checked ? "开启" : "关闭";
this.$Modal.confirm({ ElMessageBox.confirm(`确定${text}该客户权益?`, "提示", { type: "warning" }).then(() => {
title: "提示", row._benefitStateLoading = true;
content: `确定${text}该客户权益?`, return API_Member.updateMemberBenefitState(row.id, nextState)
onOk: () => { .then((res) => {
row._benefitStateLoading = true; row._benefitStateLoading = false;
return API_Member.updateMemberBenefitState(row.id, nextState) if (res && res.success) {
.then((res) => { ElMessage.success(`${text}成功`);
row._benefitStateLoading = false; row.benefitState = nextState;
if (res && res.success) { } else {
this.$Message.success(`${text}成功`); this.getData();
row.benefitState = nextState; }
} else { })
this.getData(); .catch(() => {
} row._benefitStateLoading = false;
}) });
.catch(() => { }).catch(() => {});
row._benefitStateLoading = false;
});
},
});
}, },
remove(row) { remove(row) {
this.$Modal.confirm({ ElMessageBox.confirm("确定删除该客户权益?", "提示", { type: "warning" }).then(() => {
title: "提示", API_Member.deleteMemberBenefit(row.id).then((res) => {
content: "确定删除该客户权益?", if (res && res.success) {
onOk: () => { ElMessage.success("删除成功");
API_Member.deleteMemberBenefit(row.id).then((res) => { this.getData();
if (res && res.success) { } else if (res && res.message) {
this.$Message.success("删除成功"); ElMessage.error(res.message);
this.getData(); }
} else if (res && res.message) { });
this.$Message.error(res.message); }).catch(() => {});
}
});
},
});
}, },
}, },
mounted() { mounted() {

View File

@@ -239,6 +239,7 @@
<script> <script>
import { getSetting, setSetting } from "@/api/index"; import { getSetting, setSetting } from "@/api/index";
import { ElMessage } from "element-plus";
const RULE_OPTIONS = [ const RULE_OPTIONS = [
{ ruleKey: "CONSUME", ruleName: "消费" }, { ruleKey: "CONSUME", ruleName: "消费" },
@@ -407,7 +408,7 @@ export default {
return false; return false;
}); });
if (invalid) { if (invalid) {
this.$Message.error("请检查经验值配置经验值范围为1-100限额需为正整数"); ElMessage.error("请检查经验值配置经验值范围为1-100限额需为正整数");
return false; return false;
} }
return true; return true;
@@ -428,7 +429,7 @@ export default {
setSetting("EXPERIENCE_SETTING", payload) setSetting("EXPERIENCE_SETTING", payload)
.then((res) => { .then((res) => {
if (res && res.success) { if (res && res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}) })
.finally(() => { .finally(() => {

View File

@@ -181,6 +181,7 @@
<script> <script>
import * as API_Member from "@/api/member.js"; import * as API_Member from "@/api/member.js";
import uploadPicInput from "@/components/lili/upload-pic-input"; import uploadPicInput from "@/components/lili/upload-pic-input";
import { ElMessage, ElMessageBox } from "element-plus";
const buildDefaultForm = () => ({ const buildDefaultForm = () => ({
id: "", id: "",
@@ -358,7 +359,7 @@ export default {
API_Member.addMemberGrade(payload).then((res) => { API_Member.addMemberGrade(payload).then((res) => {
this.submitAddLoading = false; this.submitAddLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.addFlag = false; this.addFlag = false;
this.getData(); this.getData();
} }
@@ -410,7 +411,7 @@ export default {
API_Member.updateMemberGrade(id, payload).then((res) => { API_Member.updateMemberGrade(id, payload).then((res) => {
this.submitEditLoading = false; this.submitEditLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.editFlag = false; this.editFlag = false;
this.getData(); this.getData();
} }
@@ -422,42 +423,34 @@ export default {
const prevState = row.gradeState; const prevState = row.gradeState;
if (nextState === prevState) return; if (nextState === prevState) return;
const text = checked ? "开启" : "关闭"; const text = checked ? "开启" : "关闭";
this.$Modal.confirm({ ElMessageBox.confirm(`确定${text}该客户等级?`, "提示", { type: "warning" }).then(() => {
title: "提示", row._gradeStateLoading = true;
content: `<p>确定${text}该客户等级?</p>`, return API_Member.updateMemberGradeState(row.id, nextState)
onOk: () => { .then((res) => {
row._gradeStateLoading = true; row._gradeStateLoading = false;
return API_Member.updateMemberGradeState(row.id, nextState) if (res && res.success) {
.then((res) => { ElMessage.success(`${text}成功`);
row._gradeStateLoading = false; row.gradeState = nextState;
if (res && res.success) { } else {
this.$Message.success(`${text}成功`); this.getData();
row.gradeState = nextState; }
} else { })
this.getData(); .catch(() => {
} row._gradeStateLoading = false;
}) });
.catch(() => { }).catch(() => {});
row._gradeStateLoading = false;
});
},
});
}, },
remove(row) { remove(row) {
this.$Modal.confirm({ ElMessageBox.confirm("确定删除该客户等级?", "提示", { type: "warning" }).then(() => {
title: "提示", API_Member.deleteMemberGrade(row.id).then((res) => {
content: "<p>确定删除该客户等级?</p>", if (res && res.success) {
onOk: () => { ElMessage.success("删除成功");
API_Member.deleteMemberGrade(row.id).then((res) => { this.getData();
if (res && res.success) { } else if (res && res.message) {
this.$Message.success("删除成功"); ElMessage.error(res.message);
this.getData(); }
} else if (res && res.message) { });
this.$Message.error(res.message); }).catch(() => {});
}
});
},
});
}, },
}, },
mounted() { mounted() {

View File

@@ -72,6 +72,7 @@
<script> <script>
import * as API_Member from "@/api/member.js"; import * as API_Member from "@/api/member.js";
import { ElMessage, ElMessageBox } from "element-plus";
export default { export default {
name: "memberGroup", name: "memberGroup",
@@ -142,7 +143,7 @@ export default {
API_Member.addMemberGroup(this.formAdd).then((res) => { API_Member.addMemberGroup(this.formAdd).then((res) => {
this.submitAddLoading = false; this.submitAddLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.addFlag = false; this.addFlag = false;
this.getData(); this.getData();
} }
@@ -176,7 +177,7 @@ export default {
API_Member.updateMemberGroup(id, { groupName, description }).then((res) => { API_Member.updateMemberGroup(id, { groupName, description }).then((res) => {
this.submitEditLoading = false; this.submitEditLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.editFlag = false; this.editFlag = false;
this.getData(); this.getData();
} }
@@ -184,20 +185,16 @@ export default {
}); });
}, },
remove(row) { remove(row) {
this.$Modal.confirm({ ElMessageBox.confirm("确定删除该分组?", "提示", { type: "warning" }).then(() => {
title: "提示", API_Member.deleteMemberGroup(row.id).then((res) => {
content: "确定删除该分组?", if (res && res.success) {
onOk: () => { ElMessage.success("删除成功");
API_Member.deleteMemberGroup(row.id).then((res) => { this.getData();
if (res && res.success) { } else if (res && res.message) {
this.$Message.success("删除成功"); ElMessage.error(res.message);
this.getData(); }
} else if (res && res.message) { });
this.$Message.error(res.message); }).catch(() => {});
}
});
},
});
}, },
}, },
mounted() { mounted() {

View File

@@ -300,6 +300,9 @@ import multipleMap from "@/components/map/multiple-map";
import * as API_Member from "@/api/member.js"; import * as API_Member from "@/api/member.js";
import ossManage from "@/views/sys/oss-manage/ossManage"; import ossManage from "@/views/sys/oss-manage/ossManage";
import * as RegExp from "@/libs/RegExp.js"; import * as RegExp from "@/libs/RegExp.js";
import { ElMessage, ElMessageBox } from "element-plus";
import { customRouterPush } from "@/utils/filters";
import defaultPic from "@/assets/default.png";
export default { export default {
name: "member", name: "member",
@@ -320,7 +323,7 @@ export default {
}, },
data() { data() {
return { return {
defaultPic: require("@/assets/default.png"), defaultPic,
descTitle: "", descTitle: "",
descFlag: false, descFlag: false,
loading: true, loading: true,
@@ -459,7 +462,7 @@ export default {
}, },
submitSetMemberGroup() { submitSetMemberGroup() {
if (this.selectedRows.length === 0) { if (this.selectedRows.length === 0) {
this.$Message.warning("请先选择会员"); ElMessage.warning("请先选择会员");
return; return;
} }
this.$refs.memberGroupForm.validate((valid) => { this.$refs.memberGroupForm.validate((valid) => {
@@ -469,12 +472,12 @@ export default {
API_Member.addMemberGroupUsers(this.memberGroupForm.groupId, memberIds).then((res) => { API_Member.addMemberGroupUsers(this.memberGroupForm.groupId, memberIds).then((res) => {
this.memberGroupLoading = false; this.memberGroupLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("设置成功"); ElMessage.success("设置成功");
this.memberGroupFlag = false; this.memberGroupFlag = false;
this.selectedRows = []; this.selectedRows = [];
this.clearSelection(); this.clearSelection();
} else if (res && res.message) { } else if (res && res.message) {
this.$Message.error(res.message); ElMessage.error(res.message);
} }
}); });
}); });
@@ -579,7 +582,7 @@ export default {
if (res.result) { if (res.result) {
this.$refs.addMemberForm.resetFields(); this.$refs.addMemberForm.resetFields();
this.getData(); this.getData();
this.$Message.success("添加成功!"); ElMessage.success("添加成功!");
this.addFlag = false; this.addFlag = false;
} }
}); });
@@ -598,25 +601,21 @@ export default {
} }
}, },
detail(row) { detail(row) {
this.$filters.customRouterPush({ name: "member-detail", query: { id: row.id } }); customRouterPush({ name: "member-detail", query: { id: row.id } });
}, },
disabled(v) { disabled(v) {
let params = { let params = {
memberIds: [v.id], memberIds: [v.id],
disabled: false, disabled: false,
}; };
this.$Modal.confirm({ ElMessageBox.confirm("确认禁用此会员?", "提示", { type: "warning" }).then(() => {
title: "提示", API_Member.updateMemberStatus(params).then((res) => {
content: "<p>确认禁用此会员?</p>", if (res.success) {
onOk: () => { ElMessage.success("禁用成功");
API_Member.updateMemberStatus(params).then((res) => { this.getData();
if (res.success) { }
this.$Message.success("禁用成功"); });
this.getData(); }).catch(() => {});
}
});
},
});
}, },
openWalletIncrease(row) { openWalletIncrease(row) {
this.walletIncreaseLoading = false; this.walletIncreaseLoading = false;
@@ -636,11 +635,11 @@ export default {
}) })
.then((res) => { .then((res) => {
if (res && res.success) { if (res && res.success) {
this.$Message.success("充值成功"); ElMessage.success("充值成功");
this.walletIncreaseFlag = false; this.walletIncreaseFlag = false;
this.getData(); this.getData();
} else { } else {
this.$Message.error((res && res.message) || "充值失败"); ElMessage.error((res && res.message) || "充值失败");
} }
}) })
.finally(() => { .finally(() => {
@@ -667,11 +666,11 @@ export default {
}) })
.then((res) => { .then((res) => {
if (res && res.success) { if (res && res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.memberPointFlag = false; this.memberPointFlag = false;
this.getData(); this.getData();
} else { } else {
this.$Message.error((res && res.message) || "修改失败"); ElMessage.error((res && res.message) || "修改失败");
} }
}) })
.finally(() => { .finally(() => {
@@ -700,7 +699,7 @@ export default {
} }
API_Member.updateMember(submit).then((res) => { API_Member.updateMember(submit).then((res) => {
if (res.result) { if (res.result) {
this.$Message.success("修改成功!"); ElMessage.success("修改成功!");
this.descFlag = false; this.descFlag = false;
this.getData(); this.getData();
} }

View File

@@ -418,6 +418,7 @@ import ossManage from "@/views/sys/oss-manage/ossManage";
import multipleMap from "@/components/map/multiple-map"; import multipleMap from "@/components/map/multiple-map";
import * as RegExp from "@/libs/RegExp.js"; import * as RegExp from "@/libs/RegExp.js";
import * as API_Order from "@/api/order.js"; import * as API_Order from "@/api/order.js";
import { ElMessage, ElMessageBox } from "element-plus";
export default { export default {
name: "memberDetail", name: "memberDetail",
@@ -677,7 +678,7 @@ export default {
API_Member.editMemberAddress(submit).then((res) => { API_Member.editMemberAddress(submit).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.addressModalVisible = false; this.addressModalVisible = false;
this.getAddressData(); this.getAddressData();
} }
@@ -686,7 +687,7 @@ export default {
API_Member.addMemberAddress(submit).then((res) => { API_Member.addMemberAddress(submit).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.addressModalVisible = false; this.addressModalVisible = false;
this.getAddressData(); this.getAddressData();
} }
@@ -714,18 +715,14 @@ export default {
} }
}, },
memberAddressRemove(v) { memberAddressRemove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("确定要删除此收货地址?", "删除", { type: "warning" }).then(() => {
title: "删除", API_Member.removeMemberAddress(v.id).then((res) => {
content: "<p>确定要删除此收货地址?</p>", if (res.success) {
onOk: () => { ElMessage.success("删除成功");
API_Member.removeMemberAddress(v.id).then((res) => { this.getAddressData();
if (res.success) { }
this.$Message.success("删除成功"); });
this.getAddressData(); }).catch(() => {});
}
});
},
});
}, },
getAddressData() { getAddressData() {
this.addressLoading = true; this.addressLoading = true;

View File

@@ -148,6 +148,8 @@
import * as API_Member from "@/api/member.js"; import * as API_Member from "@/api/member.js";
import ossManage from "@/views/sys/oss-manage/ossManage"; import ossManage from "@/views/sys/oss-manage/ossManage";
import multipleMap from "@/components/map/multiple-map"; import multipleMap from "@/components/map/multiple-map";
import { ElMessage, ElMessageBox } from "element-plus";
import { customRouterPush } from "@/utils/filters";
export default { export default {
name: "memberRecycle", name: "memberRecycle",
@@ -242,25 +244,21 @@ export default {
} }
}, },
detail(row) { detail(row) {
this.$filters.customRouterPush({ name: "member-detail", query: { id: row.id } }); customRouterPush({ name: "member-detail", query: { id: row.id } });
}, },
enable(v) { enable(v) {
let params = { let params = {
memberIds: [v.id], memberIds: [v.id],
disabled: true, disabled: true,
}; };
this.$Modal.confirm({ ElMessageBox.confirm("确定启用此会员?", "提示", { type: "warning" }).then(() => {
title: "提示", API_Member.updateMemberStatus(params).then((res) => {
content: "<p>确定启用此会员?</p>", if (res.success) {
onOk: () => { ElMessage.success("启用成功");
API_Member.updateMemberStatus(params).then((res) => { this.getData();
if (res.success) { }
this.$Message.success("启用成功"); });
this.getData(); }).catch(() => {});
}
});
},
});
}, },
handleSubmitModal() { handleSubmitModal() {
const { nickName, sex, username, face, newPassword, id, regionId, region } = this.formValidate; const { nickName, sex, username, face, newPassword, id, regionId, region } = this.formValidate;
@@ -280,7 +278,7 @@ export default {
} }
API_Member.updateMember(submit).then((res) => { API_Member.updateMember(submit).then((res) => {
if (res.result) { if (res.result) {
this.$Message.success("修改成功!"); ElMessage.success("修改成功!");
this.descFlag = false; this.descFlag = false;
this.init(); this.init();
} }

View File

@@ -116,6 +116,7 @@ import {
editWechatMPMessageTemplate, editWechatMPMessageTemplate,
delWechatMPMessageTemplate, delWechatMPMessageTemplate,
} from "@/api/setting"; } from "@/api/setting";
import { ElMessage, ElMessageBox } from "element-plus";
export default { export default {
title: "wechat-message-manage", title: "wechat-message-manage",
@@ -166,30 +167,23 @@ export default {
this.wechatModal = true; this.wechatModal = true;
}, },
weChatSync(mp) { weChatSync(mp) {
this.$Modal.confirm({ ElMessageBox.confirm("确认要初始化微信小程序消息订阅?", "提示", { type: "warning" }).then(() => {
title: "提示", if (mp === "mp") {
content: "确认要初始化微信小程序消息订阅?", wechatMPMessageSync().then((res) => {
loading: true, if (res.success) {
onOk: () => { ElMessage.success("微信小程序消息订阅初始化");
if (mp === "mp") { this.getWechatMPMessagePage();
wechatMPMessageSync().then((res) => { }
this.$Modal.remove(); });
if (res.success) { } else {
this.$Message.success("微信小程序消息订阅初始化"); wechatMessageSync().then((res) => {
this.getWechatMPMessagePage(); if (res.success) {
} ElMessage.success("微信消息模板初始化成功");
}); this.getWechatMessagePage();
} else { }
wechatMessageSync().then((res) => { });
this.$Modal.remove(); }
if (res.success) { }).catch(() => {});
this.$Message.success("微信消息模板初始化成功");
this.getWechatMessagePage();
}
});
}
},
});
}, },
wechatFormDataEdit() { wechatFormDataEdit() {
this.$refs.wechatFormData.validate((valid) => { this.$refs.wechatFormData.validate((valid) => {
@@ -199,7 +193,7 @@ export default {
} }
editWechatMessageTemplate(this.id, this.wechatFormData).then((res) => { editWechatMessageTemplate(this.id, this.wechatFormData).then((res) => {
if (res.message === "success") { if (res.message === "success") {
this.$Message.success("微信模板修改成功"); ElMessage.success("微信模板修改成功");
this.wechatModal = false; this.wechatModal = false;
this.getWechatMessagePage(); this.getWechatMessagePage();
} }
@@ -212,7 +206,7 @@ export default {
if (valid) { if (valid) {
editWechatMPMessageTemplate(this.id, this.wechatMPFormData).then((res) => { editWechatMPMessageTemplate(this.id, this.wechatMPFormData).then((res) => {
if (res.message === "success") { if (res.message === "success") {
this.$Message.success("微信消息订阅模板修改成功"); ElMessage.success("微信消息订阅模板修改成功");
this.wechatModal = false; this.wechatModal = false;
this.getWechatMPMessagePage(); this.getWechatMPMessagePage();
} }
@@ -221,30 +215,23 @@ export default {
}); });
}, },
delWeChat(v) { delWeChat(v) {
this.$Modal.confirm({ ElMessageBox.confirm("确定删除此模板?", "提示", { type: "warning" }).then(() => {
title: "提示", if (this.tab === "WECHAT") {
content: "确定删除此模板?", delWechatMessageTemplate(v.id).then((res) => {
loading: true, if (res.success) {
onOk: () => { ElMessage.success("微信模板删除成功");
if (this.tab === "WECHAT") { this.getWechatMessagePage();
delWechatMessageTemplate(v.id).then((res) => { }
if (res.success) { });
this.$Modal.remove(); } else {
this.$Message.success("微信模板删除成功"); delWechatMPMessageTemplate(v.id).then((res) => {
this.getWechatMessagePage(); if (res.success) {
} ElMessage.success("微信消息订阅删除成功");
}); this.getWechatMPMessagePage();
} else { }
delWechatMPMessageTemplate(v.id).then((res) => { });
if (res.success) { }
this.$Modal.remove(); }).catch(() => {});
this.$Message.success("微信消息订阅删除成功");
this.getWechatMPMessagePage();
}
});
}
},
});
}, },
getDataList() { getDataList() {
this.getWechatMessagePage(); this.getWechatMessagePage();

View File

@@ -205,6 +205,7 @@
<script> <script>
import * as API_Member from "@/api/member.js"; import * as API_Member from "@/api/member.js";
import { customRouterPush } from "@/utils/filters";
export default { export default {
name: "point", name: "point",
@@ -241,7 +242,7 @@ export default {
this.$emit("callback", val); this.$emit("callback", val);
}, },
detail(row) { detail(row) {
this.$filters.customRouterPush({ name: "member-detail", query: { id: row.id } }); customRouterPush({ name: "member-detail", query: { id: row.id } });
}, },
init() { init() {
this.getStatistics(); this.getStatistics();

View File

@@ -69,6 +69,7 @@
</template> </template>
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import { ElMessage, ElMessageBox } from "element-plus";
export default { export default {
data() { data() {
@@ -143,7 +144,7 @@ export default {
API_Order.addAfterSaleReason(this.form).then((res) => { API_Order.addAfterSaleReason(this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.getDataList(); this.getDataList();
this.modalVisible = false; this.modalVisible = false;
} }
@@ -152,7 +153,7 @@ export default {
API_Order.editAfterSaleReason(this.form.id, this.form).then((res) => { API_Order.editAfterSaleReason(this.form.id, this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.getDataList(); this.getDataList();
this.modalVisible = false; this.modalVisible = false;
} }
@@ -162,20 +163,14 @@ export default {
}); });
}, },
remove(v) { remove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("确认要删除此售后原因?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除", API_Order.delAfterSaleReason(v.id).then((res) => {
content: "确认要删除此售后原因?", if (res.success) {
loading: true, ElMessage.success("售后原因已删除");
onOk: () => { this.getDataList();
API_Order.delAfterSaleReason(v.id).then((res) => { }
this.$Modal.remove(); });
if (res.success) { }).catch(() => {});
this.$Message.success("售后原因已删除");
this.getDataList();
}
});
},
});
}, },
}, },
mounted() { mounted() {

View File

@@ -126,7 +126,7 @@
<el-table-column label="售后金额" width="110"> <el-table-column label="售后金额" width="110">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row" :style="{ color: $mainColor }"> <span v-if="row" :style="{ color: $mainColor }">
{{ $filters.unitPrice(row.applyRefundPrice, "") }}</span> {{ unitPrice(row.applyRefundPrice, "") }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="售后类型" width="100"> <el-table-column label="售后类型" width="100">
@@ -169,6 +169,7 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import { unitPrice, customRouterPush } from "@/utils/filters";
export default { export default {
name: "after-sale-order", name: "after-sale-order",
@@ -240,6 +241,7 @@ export default {
}, },
}, },
methods: { methods: {
unitPrice,
serviceTypeText(type) { serviceTypeText(type) {
const map = { const map = {
RETURN_MONEY: "退款", RETURN_MONEY: "退款",
@@ -330,7 +332,7 @@ export default {
}, },
detail(v) { detail(v) {
const sn = v.sn; const sn = v.sn;
this.$filters.customRouterPush({ customRouterPush({
name: "after-order-detail", name: "after-order-detail",
query: { sn: sn }, query: { sn: sn },
}); });

View File

@@ -335,6 +335,7 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import vueQr from "vue-qr"; import vueQr from "vue-qr";
import { ElMessage, ElMessageBox } from "element-plus";
export default { export default {
components: { components: {
"vue-qr": vueQr, "vue-qr": vueQr,
@@ -442,23 +443,17 @@ export default {
//平台退款 //平台退款
refundPriceSubmit() { refundPriceSubmit() {
if (this.refundPriceForm.remark == "") { if (this.refundPriceForm.remark == "") {
this.$Message.error("请输入退款备注"); ElMessage.error("请输入退款备注");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("请确认退款?", "确认退款", { type: "warning" }).then(() => {
title: "确认退款", API_Order.refundPrice(this.sn, this.refundPriceForm).then((res) => {
content: "请确认退款?", if (res.success) {
loading: true, ElMessage.success("收款成功");
onOk: () => { this.getDetail();
API_Order.refundPrice(this.sn, this.refundPriceForm).then((res) => { }
this.$Modal.remove(); });
if (res.success) { }).catch(() => {});
this.$Message.success("收款成功");
this.getDetail();
}
});
},
});
}, },
//查询物流 //查询物流
logisticsSeller() { logisticsSeller() {
@@ -476,17 +471,17 @@ export default {
//回复 //回复
handleSubmit() { handleSubmit() {
if (this.params.remark == "") { if (this.params.remark == "") {
this.$Message.error("请输入备注信息"); ElMessage.error("请输入备注信息");
return; return;
} }
if (this.params.actualRefundPrice == "") { if (this.params.actualRefundPrice == "") {
this.$Message.error("请输入退款金额"); ElMessage.error("请输入退款金额");
return; return;
} }
API_Order.afterSaleSellerReview(this.sn, this.params).then((res) => { API_Order.afterSaleSellerReview(this.sn, this.params).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("审核成功"); ElMessage.success("审核成功");
this.params.remark = ""; this.params.remark = "";
this.getDetail(); this.getDetail();
} }
@@ -518,9 +513,6 @@ export default {
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.ivu-col {
width: 100% !important;
}
.main-content { .main-content {
min-height: 600px; min-height: 600px;
padding: 10px; padding: 10px;

View File

@@ -107,6 +107,7 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import vueQr from "vue-qr"; import vueQr from "vue-qr";
import { customRouterPush } from "@/utils/filters";
export default { export default {
name: "orderComplaint", name: "orderComplaint",
@@ -184,7 +185,7 @@ export default {
}); });
}, },
detail(v) { detail(v) {
this.$filters.customRouterPush({ customRouterPush({
name: "order-complaint-detail", name: "order-complaint-detail",
query: { id: v.id }, query: { id: v.id },
}); });

View File

@@ -178,7 +178,7 @@
<dl> <dl>
<dt>订单金额</dt> <dt>订单金额</dt>
<dd> <dd>
<span class="price-text">{{ $filters.unitPrice(complaintInfo.orderPrice, "¥") }}</span> <span class="price-text">{{ unitPrice(complaintInfo.orderPrice, "¥") }}</span>
</dd> </dd>
</dl> </dl>
</div> </div>
@@ -205,6 +205,8 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import { ElMessage } from "element-plus";
import { unitPrice } from "@/utils/filters";
const emptyComplaint = () => ({ const emptyComplaint = () => ({
id: "", id: "",
@@ -232,6 +234,7 @@ export default {
}; };
}, },
methods: { methods: {
unitPrice,
complainStatusText(v) { complainStatusText(v) {
const map = { const map = {
NEW: "新投诉", NEW: "新投诉",
@@ -249,7 +252,7 @@ export default {
complainId: this.complaintInfo.id, complainId: this.complaintInfo.id,
}).then((res) => { }).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getDetail(); this.getDetail();
} }
}); });
@@ -284,7 +287,7 @@ export default {
}, },
arbitrationHandleSubmit() { arbitrationHandleSubmit() {
if (!this.arbitrationParams.arbitrationResult) { if (!this.arbitrationParams.arbitrationResult) {
this.$Message.error("请填写仲裁内容"); ElMessage.error("请填写仲裁内容");
return; return;
} }
this.submitLoading = true; this.submitLoading = true;
@@ -292,7 +295,7 @@ export default {
.then((res) => { .then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("仲裁成功"); ElMessage.success("仲裁成功");
this.arbitrationParams.arbitrationResult = ""; this.arbitrationParams.arbitrationResult = "";
this.arbitrationResultShow = false; this.arbitrationResultShow = false;
this.getDetail(); this.getDetail();
@@ -304,7 +307,7 @@ export default {
}, },
handleSubmit() { handleSubmit() {
if (!this.params.content) { if (!this.params.content) {
this.$Message.error("请填写对话内容"); ElMessage.error("请填写对话内容");
return; return;
} }
this.submitLoading = true; this.submitLoading = true;
@@ -313,7 +316,7 @@ export default {
.then((res) => { .then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("对话成功"); ElMessage.success("对话成功");
this.params.content = ""; this.params.content = "";
this.getDetail(); this.getDetail();
} }

View File

@@ -60,7 +60,7 @@
<el-table-column label="退款金额" min-width="120"> <el-table-column label="退款金额" min-width="120">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row" :style="{ color: $mainColor }"> <span v-if="row" :style="{ color: $mainColor }">
{{ $filters.unitPrice(row.totalAmount, "") }}</span> {{ unitPrice(row.totalAmount, "") }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="createTime" label="申请时间" min-width="120" show-overflow-tooltip /> <el-table-column prop="createTime" label="申请时间" min-width="120" show-overflow-tooltip />
@@ -110,6 +110,7 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import { unitPrice } from "@/utils/filters";
export default { export default {
name: "refundLog", name: "refundLog",
@@ -132,6 +133,7 @@ export default {
}; };
}, },
methods: { methods: {
unitPrice,
init() { init() {
this.getDataList(); this.getDataList();
}, },

View File

@@ -128,6 +128,8 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import { ElMessage, ElMessageBox } from "element-plus";
import { customRouterPush } from "@/utils/filters";
export default { export default {
name: "fictitiousOrderList", name: "fictitiousOrderList",
@@ -198,24 +200,18 @@ export default {
}); });
}, },
confirmPrice(v) { confirmPrice(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确定要收款吗?", "确认收款", { type: "warning" }).then(() => {
title: "确认收款", API_Order.orderPay(v.sn).then((res) => {
content: "您确定要收款吗?", if (res.success) {
loading: true, ElMessage.success("收款成功");
onOk: () => { this.getDataList();
API_Order.orderPay(v.sn).then((res) => { }
if (res.success) { });
this.$Message.success("收款成功"); }).catch(() => {});
this.getDataList();
}
this.$Modal.remove();
});
},
});
}, },
detail(v) { detail(v) {
let sn = v.sn; let sn = v.sn;
this.$filters.customRouterPush({ customRouterPush({
name: "order-detail", name: "order-detail",
query: { sn: sn, orderType: v.orderType }, query: { sn: sn, orderType: v.orderType },
}); });

View File

@@ -20,7 +20,7 @@
<div class="div-item"> <div class="div-item">
<div class="div-item-left">订单来源</div> <div class="div-item-left">订单来源</div>
<div class="div-item-right"> <div class="div-item-right">
{{ $filters.clientTypeWay(orderInfo.order.clientType) }} {{ clientTypeWay(orderInfo.order.clientType) }}
</div> </div>
</div> </div>
@@ -148,7 +148,7 @@
<div class="div-item-left">发票金额</div> <div class="div-item-left">发票金额</div>
<div class="div-item-right"> <div class="div-item-right">
{{ {{
$filters.unitPrice( unitPrice(
orderInfo.receipt && orderInfo.receipt.receiptPrice orderInfo.receipt && orderInfo.receipt.receiptPrice
? orderInfo.receipt.receiptPrice ? orderInfo.receipt.receiptPrice
: "暂无", : "暂无",
@@ -206,14 +206,14 @@
</el-table-column> </el-table-column>
<el-table-column label="单价" min-width="100"> <el-table-column label="单价" min-width="100">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row">{{ $filters.unitPrice(row.unitPrice || 0, "") }}</span> <span v-if="row">{{ unitPrice(row.unitPrice || 0, "") }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="num" label="数量" min-width="80" /> <el-table-column prop="num" label="数量" min-width="80" />
<el-table-column prop="returnGoodsNumber" label="退款数量" min-width="80" /> <el-table-column prop="returnGoodsNumber" label="退款数量" min-width="80" />
<el-table-column label="小计" min-width="100"> <el-table-column label="小计" min-width="100">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row">{{ $filters.unitPrice(row.flowPrice, "") }}</span> <span v-if="row">{{ unitPrice(row.flowPrice, "") }}</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -222,7 +222,7 @@
<li> <li>
<span class="label">商品总额</span> <span class="label">商品总额</span>
<span class="txt">{{ <span class="txt">{{
$filters.unitPrice(orderInfo.order.priceDetailDTO.goodsPrice, "¥") unitPrice(orderInfo.order.priceDetailDTO.goodsPrice, "¥")
}}</span> }}</span>
</li> </li>
<li v-if=" <li v-if="
@@ -231,7 +231,7 @@
"> ">
<span class="label">优惠金额:</span> <span class="label">优惠金额:</span>
<span class="txt"> <span class="txt">
{{ $filters.unitPrice(orderInfo.order.priceDetailDTO.discountPrice, "¥") }}</span> {{ unitPrice(orderInfo.order.priceDetailDTO.discountPrice, "¥") }}</span>
</li> </li>
<li v-if=" <li v-if="
@@ -260,7 +260,7 @@
<tbody> <tbody>
<tr v-for="(item, index) in typeList" :key="index"> <tr v-for="(item, index) in typeList" :key="index">
<td>{{ item.promotionName }}</td> <td>{{ item.promotionName }}</td>
<td>¥{{ $filters.unitPrice(item.discountPrice) }}</td> <td>¥{{ unitPrice(item.discountPrice) }}</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -274,21 +274,21 @@
</li> --> </li> -->
<!-- <li v-if="showPrices" v-for="(item,index) in typeList" :key="index"> <!-- <li v-if="showPrices" v-for="(item,index) in typeList" :key="index">
<span class="label" v-if="index == 1 && typeList.length > 1" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-bottom: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a><span class="op-split">|</span> <span class="label" v-if="index == 1 && typeList.length > 1" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-bottom: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a><span class="op-split">|</span>
<span class="txt" style="border-bottom: 1px dashed;font-size:10px !important;" v-if="index == 1 && typeList.length > 1">¥{{ $filters.unitPrice(item.discountPrice) }}</span> <span class="txt" style="border-bottom: 1px dashed;font-size:10px !important;" v-if="index == 1 && typeList.length > 1">¥{{ unitPrice(item.discountPrice) }}</span>
<span class="label" v-if="index == 0 && typeList.length > 1" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-top: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a><span class="op-split">|</span> <span class="label" v-if="index == 0 && typeList.length > 1" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-top: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a><span class="op-split">|</span>
<span class="txt" style="border-top: 1px dashed;font-size:10px !important;" v-if="index == 0 && typeList.length > 1">¥{{ $filters.unitPrice(item.discountPrice) }}</span> <span class="txt" style="border-top: 1px dashed;font-size:10px !important;" v-if="index == 0 && typeList.length > 1">¥{{ unitPrice(item.discountPrice) }}</span>
<span class="label" v-if="typeList.length == 1 && index == 0" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-top: 1px dashed;border-bottom: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a><span class="op-split">|</span> <span class="label" v-if="typeList.length == 1 && index == 0" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-top: 1px dashed;border-bottom: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a><span class="op-split">|</span>
<span class="txt" v-if="typeList.length == 1 && index == 0" style="border-top: 1px dashed;border-bottom: 1px dashed;font-size:10px !important;">¥{{ $filters.unitPrice(item.discountPrice) }}</span> <span class="txt" v-if="typeList.length == 1 && index == 0" style="border-top: 1px dashed;border-bottom: 1px dashed;font-size:10px !important;">¥{{ unitPrice(item.discountPrice) }}</span>
</li> --> </li> -->
<li> <li>
<span class="label">运费:</span> <span class="label">运费:</span>
<span class="txt">{{ <span class="txt">{{
$filters.unitPrice(orderInfo.order.freightPrice, "¥") unitPrice(orderInfo.order.freightPrice, "¥")
}}</span> }}</span>
</li> </li>
<li v-if="orderInfo.order.priceDetailDTO.updatePrice"> <li v-if="orderInfo.order.priceDetailDTO.updatePrice">
<span class="label">修改金额:</span> <span class="label">修改金额:</span>
<span class="txt theme_color">¥{{ $filters.unitPrice(orderInfo.order.priceDetailDTO.updatePrice) }}</span> <span class="txt theme_color">¥{{ unitPrice(orderInfo.order.priceDetailDTO.updatePrice) }}</span>
</li> </li>
<li v-if="orderInfo.order.priceDetailDTO.payPoint != 0"> <li v-if="orderInfo.order.priceDetailDTO.payPoint != 0">
<span class="label">使用积分:</span> <span class="label">使用积分:</span>
@@ -298,7 +298,7 @@
</li> </li>
<li> <li>
<span class="label">应付金额:</span> <span class="label">应付金额:</span>
<span class="txt flowPrice">¥{{ $filters.unitPrice(orderInfo.order.priceDetailDTO.flowPrice) }}</span> <span class="txt flowPrice">¥{{ unitPrice(orderInfo.order.priceDetailDTO.flowPrice) }}</span>
</li> </li>
</ul> </ul>
</div> </div>
@@ -438,6 +438,8 @@ import * as RegExp from "@/libs/RegExp.js";
import multipleMap from "@/components/map/multiple-map"; import multipleMap from "@/components/map/multiple-map";
import vueQr from "vue-qr"; import vueQr from "vue-qr";
import { printElement } from "@/utils/print"; import { printElement } from "@/utils/print";
import { ElMessage, ElMessageBox } from "element-plus";
import { unitPrice, clientTypeWay } from "@/utils/filters";
export default { export default {
name: "orderList", name: "orderList",
components: { components: {
@@ -542,6 +544,8 @@ export default {
}, },
}, },
methods: { methods: {
unitPrice,
clientTypeWay,
getPromotionText(row) { getPromotionText(row) {
let resultText = ""; let resultText = "";
if (row && row.promotionType) { if (row && row.promotionType) {
@@ -560,21 +564,18 @@ export default {
//确认收款 //确认收款
confirmPrice () { confirmPrice () {
this.$Modal.confirm({ ElMessageBox.confirm(
title: "提示", "您确定要收款吗?线下收款涉及库存变更,需异步进行,等待约一分钟刷新列表查看",
content: "提示",
"<p>您确定要收款吗?线下收款涉及库存变更,需异步进行,等待约一分钟刷新列表查看</p>", { type: "warning" }
onOk: () => { ).then(() => {
API_Order.orderPay(this.sn).then((res) => { API_Order.orderPay(this.sn).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("收款成功"); ElMessage.success("收款成功");
this.getDataList(); this.getDataList();
} else { }
// this.$Message.error(res.message); });
} }).catch(() => {});
});
},
});
}, },
getOrderPrice () { getOrderPrice () {
if (this.showPrices) { if (this.showPrices) {
@@ -624,7 +625,7 @@ export default {
if (valid) { if (valid) {
API_Order.updateOrderPrice(this.sn, this.modifyPriceForm).then((res) => { API_Order.updateOrderPrice(this.sn, this.modifyPriceForm).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("修改订单金额成功"); ElMessage.success("修改订单金额成功");
this.modal = false; this.modal = false;
this.getDataList(); this.getDataList();
} }
@@ -656,7 +657,7 @@ export default {
if (valid) { if (valid) {
API_Order.orderCancel(this.sn, this.orderCancelForm).then((res) => { API_Order.orderCancel(this.sn, this.orderCancelForm).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("取消成功"); ElMessage.success("取消成功");
this.getDataList(); this.getDataList();
} }
this.orderCancelModal = false; this.orderCancelModal = false;
@@ -699,7 +700,7 @@ export default {
//修改收货地址 //修改收货地址
editAddressSubmit () { editAddressSubmit () {
if (this.regionId == "") { if (this.regionId == "") {
this.$Message.error("请选择地址"); ElMessage.error("请选择地址");
return; return;
} }
this.addressForm.consigneeAddressPath = this.addr; this.addressForm.consigneeAddressPath = this.addr;
@@ -708,7 +709,7 @@ export default {
if (valid) { if (valid) {
API_Order.editOrderConsignee(this.sn, this.addressForm).then((res) => { API_Order.editOrderConsignee(this.sn, this.addressForm).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("收货地址修改成功"); ElMessage.success("收货地址修改成功");
this.addressModal = false; this.addressModal = false;
this.getDataList(); this.getDataList();
} }

View File

@@ -96,7 +96,7 @@
<el-table-column prop="storeName" label="店铺名称" min-width="150" show-overflow-tooltip /> <el-table-column prop="storeName" label="店铺名称" min-width="150" show-overflow-tooltip />
<el-table-column label="订单金额" min-width="100"> <el-table-column label="订单金额" min-width="100">
<template #default="{ row }"> <template #default="{ row }">
<span :style="{ color: $mainColor }">{{ $filters.unitPrice(row.flowPrice, '¥') }}</span> <span :style="{ color: $mainColor }">{{ unitPrice(row.flowPrice, '¥') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="支付方式" width="120"> <el-table-column label="支付方式" width="120">
@@ -133,6 +133,8 @@
<script> <script>
import * as API_Order from "@/api/order"; import * as API_Order from "@/api/order";
import { ElMessage } from "element-plus";
import { unitPrice, customRouterPush } from "@/utils/filters";
export default { export default {
name: "orderList", name: "orderList",
@@ -229,6 +231,7 @@ export default {
}, },
}, },
methods: { methods: {
unitPrice,
onStatusTabClick(tab) { onStatusTabClick(tab) {
this.orderStatusClick(tab.paneName); this.orderStatusClick(tab.paneName);
}, },
@@ -337,14 +340,14 @@ export default {
}); });
}, },
detail(v) { detail(v) {
this.$filters.customRouterPush({ customRouterPush({
name: "order-detail", name: "order-detail",
query: { sn: v.sn }, query: { sn: v.sn },
}); });
}, },
async exportOrder() { async exportOrder() {
if (!this.searchForm.startDate || !this.searchForm.endDate) { if (!this.searchForm.startDate || !this.searchForm.endDate) {
this.$Message.error("必须选择时间范围,搜索后进行导出!"); ElMessage.error("必须选择时间范围,搜索后进行导出!");
return; return;
} }
API_Order.exportOrder(this.searchForm) API_Order.exportOrder(this.searchForm)

View File

@@ -1,3 +1,21 @@
import nav1Img from '@/assets/nav/1.jpg';
import nav2Img from '@/assets/nav/2.jpg';
import nav3Img from '@/assets/nav/3.jpg';
import nav4Img from '@/assets/nav/4.jpg';
import nav5Img from '@/assets/nav/5.jpg';
import decorate1Img from '@/assets/nav/decorate1.png';
import decorateImg from '@/assets/nav/decorate.png';
import decorate2Img from '@/assets/nav/decorate2.jpeg';
import decorate11Img from '@/assets/nav/decorate11.jpeg';
import decorate3Img from '@/assets/nav/decorate3.jpeg';
import decorate4Img from '@/assets/nav/decorate4.jpeg';
import decorate5Img from '@/assets/nav/decorate5.jpeg';
import decorate6Img from '@/assets/nav/decorate6.jpeg';
import decorate7Img from '@/assets/nav/decorate7.jpeg';
import decorate8Img from '@/assets/nav/decorate8.png';
import decorate9Img from '@/assets/nav/decorate9.png';
import decorate10Img from '@/assets/nav/decorate10.jpeg';
export const modelData = [{ export const modelData = [{
type: 'carousel', type: 'carousel',
name: '图片轮播', name: '图片轮播',
@@ -6,15 +24,15 @@ export const modelData = [{
size: "790*340", size: "790*340",
options: { options: {
list: [{ list: [{
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/2.jpg'), img: nav2Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/3.jpg'), img: nav3Img,
url: '' url: ''
} }
], ],
@@ -27,17 +45,17 @@ export const modelData = [{
// size: "1200*470", // size: "1200*470",
// options: { // options: {
// list: [{ // list: [{
// img: require('@/assets/nav/1.jpg'), // img: nav1Img,
// url: '', // url: '',
// bgColor: 'yellow' // bgColor: 'yellow'
// }, // },
// { // {
// img: require('@/assets/nav/2.jpg'), // img: nav2Img,
// url: '', // url: '',
// bgColor: 'purple' // bgColor: 'purple'
// }, // },
// { // {
// img: require('@/assets/nav/3.jpg'), // img: nav3Img,
// url: '', // url: '',
// bgColor: 'blue' // bgColor: 'blue'
// } // }
@@ -51,42 +69,42 @@ export const modelData = [{
// size: "590*470", // size: "590*470",
// options: { // options: {
// list: [{ // list: [{
// img: require('@/assets/nav/1.jpg'), // img: nav1Img,
// url: '' // url: ''
// }, // },
// { // {
// img: require('@/assets/nav/2.jpg'), // img: nav2Img,
// url: '' // url: ''
// }, // },
// { // {
// img: require('@/assets/nav/3.jpg'), // img: nav3Img,
// url: '' // url: ''
// } // }
// ], // ],
// listRight: [ // listRight: [
// [{ // [{
// img: require('@/assets/nav/1.jpg'), // img: nav1Img,
// url: '' // url: ''
// }, // },
// { // {
// img: require('@/assets/nav/2.jpg'), // img: nav2Img,
// url: '' // url: ''
// }, // },
// { // {
// img: require('@/assets/nav/3.jpg'), // img: nav3Img,
// url: '' // url: ''
// } // }
// ], // ],
// [{ // [{
// img: require('@/assets/nav/1.jpg'), // img: nav1Img,
// url: '' // url: ''
// }, // },
// { // {
// img: require('@/assets/nav/2.jpg'), // img: nav2Img,
// url: '' // url: ''
// }, // },
// { // {
// img: require('@/assets/nav/3.jpg'), // img: nav3Img,
// url: '' // url: ''
// } // }
// ], // ],
@@ -100,32 +118,32 @@ export const modelData = [{
showName: '', showName: '',
options: { options: {
list: [{ list: [{
img: require('@/assets/nav/decorate1.png'), img: decorate1Img,
url: '', url: '',
size: '1200*自定义' size: '1200*自定义'
}, },
{ {
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '', url: '',
size: '230*190' size: '230*190'
}, },
{ {
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '', url: '',
size: '230*190' size: '230*190'
}, },
{ {
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '', url: '',
size: '230*190' size: '230*190'
}, },
{ {
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '', url: '',
size: '230*190' size: '230*190'
}, },
{ {
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '', url: '',
size: '230*190' size: '230*190'
} }
@@ -141,70 +159,70 @@ export const modelData = [{
list: [{ list: [{
time: 6, time: 6,
goodsList: [{ goodsList: [{
img: require('@/assets/nav/1.jpg'), img: nav1Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafads123213a', name: '阿迪达斯三叶草asdasdafads123213a',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/2.jpg'), img: nav2Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/3.jpg'), img: nav3Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/4.jpg'), img: nav4Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/5.jpg'), img: nav5Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/1.jpg'), img: nav1Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/2.jpg'), img: nav2Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/3.jpg'), img: nav3Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/4.jpg'), img: nav4Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/5.jpg'), img: nav5Img,
price: 20, price: 20,
originalPrice: 30, originalPrice: 30,
name: '阿迪达斯三叶草asdasdafadsa', name: '阿迪达斯三叶草asdasdafadsa',
@@ -215,23 +233,23 @@ export const modelData = [{
{ {
time: 8, time: 8,
goodsList: [{ goodsList: [{
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/2.jpg'), img: nav2Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/3.jpg'), img: nav3Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/4.jpg'), img: nav4Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/5.jpg'), img: nav5Img,
url: '' url: ''
}, },
] ]
@@ -239,23 +257,23 @@ export const modelData = [{
{ {
time: 10, time: 10,
goodsList: [{ goodsList: [{
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/2.jpg'), img: nav2Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/3.jpg'), img: nav3Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/4.jpg'), img: nav4Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/5.jpg'), img: nav5Img,
url: '' url: ''
}, },
] ]
@@ -263,23 +281,23 @@ export const modelData = [{
{ {
time: 12, time: 12,
goodsList: [{ goodsList: [{
img: require('@/assets/nav/1.jpg'), img: nav1Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/2.jpg'), img: nav2Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/3.jpg'), img: nav3Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/4.jpg'), img: nav4Img,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/5.jpg'), img: nav5Img,
url: '' url: ''
}, },
] ]
@@ -306,65 +324,65 @@ export const modelData = [{
icon: 'md-image', icon: 'md-image',
options: { options: {
bgImg: { bgImg: {
img: require('@/assets/nav/decorate.png'), img: decorateImg,
url: '', url: '',
size: "1300*596" size: "1300*596"
}, },
classification: [{ classification: [{
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, { }, {
img: require('@/assets/nav/decorate2.jpeg'), img: decorate2Img,
url: '', url: '',
size: '190*210' size: '190*210'
}, ], }, ],
brandList: [{ brandList: [{
img: require('@/assets/nav/decorate11.jpeg'), img: decorate11Img,
url: '', url: '',
size: '240*105' size: '240*105'
}, { }, {
img: require('@/assets/nav/decorate11.jpeg'), img: decorate11Img,
url: '', url: '',
size: '240*105' size: '240*105'
}, { }, {
img: require('@/assets/nav/decorate11.jpeg'), img: decorate11Img,
url: '', url: '',
size: '240*105' size: '240*105'
}, { }, {
img: require('@/assets/nav/decorate11.jpeg'), img: decorate11Img,
url: '', url: '',
size: '240*105' size: '240*105'
}, ] }, ]
@@ -381,49 +399,49 @@ export const modelData = [{
bgColor: '#449dae', bgColor: '#449dae',
url: '', url: '',
list: [{ list: [{
img: require('@/assets/nav/decorate3.jpeg'), img: decorate3Img,
name: '阿迪达斯三叶草', name: '阿迪达斯三叶草',
describe: '也许是每一款经典系列都应该有一个独特的故事吧', describe: '也许是每一款经典系列都应该有一个独特的故事吧',
url: '', url: '',
size: '160*160' size: '160*160'
}, },
{ {
img: require('@/assets/nav/decorate4.jpeg'), img: decorate4Img,
name: '360行车记录', name: '360行车记录',
describe: '夜行 监控 电子狗 蓝牙', describe: '夜行 监控 电子狗 蓝牙',
url: '', url: '',
size: '80*80' size: '80*80'
}, },
{ {
img: require('@/assets/nav/decorate4.jpeg'), img: decorate4Img,
name: '360行车记录', name: '360行车记录',
describe: '夜行 监控 电子狗 蓝牙', describe: '夜行 监控 电子狗 蓝牙',
url: '', url: '',
size: '80*80' size: '80*80'
}, },
{ {
img: require('@/assets/nav/decorate4.jpeg'), img: decorate4Img,
name: '360行车记录', name: '360行车记录',
describe: '夜行 监控 电子狗 蓝牙', describe: '夜行 监控 电子狗 蓝牙',
url: '', url: '',
size: '80*80' size: '80*80'
}, },
{ {
img: require('@/assets/nav/decorate4.jpeg'), img: decorate4Img,
name: '360行车记录', name: '360行车记录',
describe: '夜行 监控 电子狗 蓝牙', describe: '夜行 监控 电子狗 蓝牙',
url: '', url: '',
size: '80*80' size: '80*80'
}, },
{ {
img: require('@/assets/nav/decorate4.jpeg'), img: decorate4Img,
name: '360行车记录', name: '360行车记录',
describe: '夜行 监控 电子狗 蓝牙', describe: '夜行 监控 电子狗 蓝牙',
url: '', url: '',
size: '80*80' size: '80*80'
}, },
{ {
img: require('@/assets/nav/decorate4.jpeg'), img: decorate4Img,
name: '360行车记录', name: '360行车记录',
describe: '夜行 监控 电子狗 蓝牙', describe: '夜行 监控 电子狗 蓝牙',
url: '', url: '',
@@ -437,28 +455,28 @@ export const modelData = [{
bgColor: '#a25684', bgColor: '#a25684',
url: '', url: '',
list: [{ list: [{
img: require('@/assets/nav/decorate5.jpeg'), img: decorate5Img,
name: '好心情喝出来', name: '好心情喝出来',
describe: '遇见懂你的饮品', describe: '遇见懂你的饮品',
url: '', url: '',
size: '100*100' size: '100*100'
}, },
{ {
img: require('@/assets/nav/decorate5.jpeg'), img: decorate5Img,
name: '好心情喝出来', name: '好心情喝出来',
describe: '遇见懂你的饮品', describe: '遇见懂你的饮品',
url: '', url: '',
size: '100*100' size: '100*100'
}, },
{ {
img: require('@/assets/nav/decorate5.jpeg'), img: decorate5Img,
name: '好心情喝出来', name: '好心情喝出来',
describe: '遇见懂你的饮品', describe: '遇见懂你的饮品',
url: '', url: '',
size: '100*100' size: '100*100'
}, },
{ {
img: require('@/assets/nav/decorate5.jpeg'), img: decorate5Img,
name: '好心情喝出来', name: '好心情喝出来',
describe: '遇见懂你的饮品', describe: '遇见懂你的饮品',
url: '', url: '',
@@ -481,35 +499,35 @@ export const modelData = [{
list: [{ list: [{
name: '新年心愿单', name: '新年心愿单',
describe: '满269减50,满999减100', describe: '满269减50,满999减100',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "160*160" size: "160*160"
}, },
{ {
name: 'Ms.Maggie 冬季时尚', name: 'Ms.Maggie 冬季时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: 'Ms.Maggie 冬季时尚', name: 'Ms.Maggie 冬季时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: 'Ms.Maggie 冬季时尚', name: 'Ms.Maggie 冬季时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
@@ -523,42 +541,42 @@ export const modelData = [{
list: [{ list: [{
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
{ {
name: '阿迪达斯 领跑时尚', name: '阿迪达斯 领跑时尚',
describe: '满269减50', describe: '满269减50',
img: require('@/assets/nav/decorate6.jpeg'), img: decorate6Img,
url: '', url: '',
size: "90*90" size: "90*90"
}, },
@@ -572,37 +590,37 @@ export const modelData = [{
list: [{ list: [{
name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包', name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包',
price: 14.9, price: 14.9,
img: require('@/assets/nav/decorate7.jpeg'), img: decorate7Img,
url: '' url: ''
}, },
{ {
name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包', name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包',
price: 14.9, price: 14.9,
img: require('@/assets/nav/decorate7.jpeg'), img: decorate7Img,
url: '' url: ''
}, },
{ {
name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包', name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包',
price: 14.9, price: 14.9,
img: require('@/assets/nav/decorate7.jpeg'), img: decorate7Img,
url: '' url: ''
}, },
{ {
name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包', name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包',
price: 14.9, price: 14.9,
img: require('@/assets/nav/decorate7.jpeg'), img: decorate7Img,
url: '' url: ''
}, },
{ {
name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包', name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包',
price: 14.9, price: 14.9,
img: require('@/assets/nav/decorate7.jpeg'), img: decorate7Img,
url: '' url: ''
}, },
{ {
name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包', name: '小米红米3s手机壳保护套红米3高配版指纹男女款潮版磨砂硬壳防摔 收藏截图 送大礼包',
price: 14.9, price: 14.9,
img: require('@/assets/nav/decorate7.jpeg'), img: decorate7Img,
url: '' url: ''
}, },
] ]
@@ -617,7 +635,7 @@ export const modelData = [{
list: [{ list: [{
name: '生鲜', name: '生鲜',
describe: "年货带回家 满199减60", describe: "年货带回家 满199减60",
img: require('@/assets/nav/decorate8.png'), img: decorate8Img,
url: '', url: '',
fromColor: '#e89621', fromColor: '#e89621',
toColor: "#f5c568", toColor: "#f5c568",
@@ -626,7 +644,7 @@ export const modelData = [{
{ {
name: '众筹', name: '众筹',
describe: "年货带回家", describe: "年货带回家",
img: require('@/assets/nav/decorate9.png'), img: decorate9Img,
url: '', url: '',
fromColor: "#325bb4", fromColor: "#325bb4",
toColor: '#4c9afe', toColor: '#4c9afe',
@@ -635,7 +653,7 @@ export const modelData = [{
{ {
name: '生鲜', name: '生鲜',
describe: "年货带回家 满199减60", describe: "年货带回家 满199减60",
img: require('@/assets/nav/decorate8.png'), img: decorate8Img,
url: '', url: '',
fromColor: "#1c9daf", fromColor: "#1c9daf",
toColor: '#40cda7', toColor: '#40cda7',
@@ -644,7 +662,7 @@ export const modelData = [{
{ {
name: '众筹', name: '众筹',
describe: "备孕有孕检测仪", describe: "备孕有孕检测仪",
img: require('@/assets/nav/decorate9.png'), img: decorate9Img,
url: '', url: '',
fromColor: "#d13837", fromColor: "#d13837",
toColor: '#df6d4f', toColor: '#df6d4f',
@@ -653,7 +671,7 @@ export const modelData = [{
{ {
name: '生鲜', name: '生鲜',
describe: "年货带回家 满199减60", describe: "年货带回家 满199减60",
img: require('@/assets/nav/decorate8.png'), img: decorate8Img,
url: '', url: '',
fromColor: "#ca4283", fromColor: "#ca4283",
toColor: '#eb75cf', toColor: '#eb75cf',
@@ -662,7 +680,7 @@ export const modelData = [{
{ {
name: '众筹', name: '众筹',
describe: "备孕有孕检测仪", describe: "备孕有孕检测仪",
img: require('@/assets/nav/decorate9.png'), img: decorate9Img,
url: '', url: '',
fromColor: "#5d40c1", fromColor: "#5d40c1",
toColor: '#8c5fdb', toColor: '#8c5fdb',
@@ -688,17 +706,17 @@ export const modelData = [{
options: { options: {
list:[ list:[
{ {
img: require('@/assets/nav/decorate8.png'), img: decorate8Img,
url:"", url:"",
size:"385*165" size:"385*165"
}, },
{ {
img: require('@/assets/nav/decorate8.png'), img: decorate8Img,
url:"", url:"",
size:"385*165" size:"385*165"
}, },
{ {
img: require('@/assets/nav/decorate8.png'), img: decorate8Img,
url:"", url:"",
size:"385*165" size:"385*165"
}, },
@@ -935,244 +953,244 @@ export const modelData = [{
options: { options: {
list: [ list: [
[{ [{
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
], ],
[{ [{
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
], ],
[{ [{
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
], ],
[{ [{
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''
}, },
{ {
img: require('@/assets/nav/decorate10.jpeg'), img: decorate10Img,
name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量', name: 'Apple/苹果 13 英寸MacBook Pro Multi-Touch Bar 和 Touch ID 2.9GHz 处理器 512GB 存储容量',
price: 6666, price: 6666,
url: '' url: ''

View File

@@ -25,7 +25,7 @@
</ul> </ul>
</div> </div>
<div class="search-con"> <div class="search-con">
<img :src="require('@/assets/logo.png')" class="logo" alt="" /> <img :src="logoImg" class="logo" alt="" />
<div class="search"> <div class="search">
<el-input <el-input
size="large" size="large"
@@ -158,6 +158,7 @@ import { ShoppingCart } from "@element-plus/icons-vue";
import Draggable from "vuedraggable"; import Draggable from "vuedraggable";
import ModelFormItem from "./modelFormItem.vue"; import ModelFormItem from "./modelFormItem.vue";
import ossManage from "@/views/sys/oss-manage/ossManage"; import ossManage from "@/views/sys/oss-manage/ossManage";
import logoImg from "@/assets/logo.png";
export default { export default {
name: "modelForm", name: "modelForm",
components: { components: {
@@ -169,6 +170,7 @@ export default {
props: ["data"], props: ["data"],
data() { data() {
return { return {
logoImg,
picModelFlag: false, picModelFlag: false,
showModal: false, showModal: false,
showModalNav: false, showModalNav: false,

View File

@@ -69,7 +69,7 @@
class="discountAdvert" class="discountAdvert"
:style="{ :style="{
'background-image': 'background-image':
'url(' + require('@/assets/nav/decorate.png') + ')', 'url(' + discountAdvertBg + ')',
}" }"
> >
<div> <div>
@@ -282,6 +282,7 @@ import onlyGoodsModel from "./modelList/onlyGoodsModel.vue";
import oneRowThreeColumns from "./modelList/oneRowThreeColumns.vue"; import oneRowThreeColumns from "./modelList/oneRowThreeColumns.vue";
import seckillOnlyAlbum from "./modelList/seckill-only-album.vue"; import seckillOnlyAlbum from "./modelList/seckill-only-album.vue";
import discountAdvertBg from "@/assets/nav/decorate.png";
export default { export default {
name: "modelFormItem", name: "modelFormItem",
props: ["element", "select", "index", "data"], props: ["element", "select", "index", "data"],
@@ -304,6 +305,7 @@ export default {
}, },
data() { data() {
return { return {
discountAdvertBg,
showModal: false, // modal显隐 showModal: false, // modal显隐
selected: {}, // 弹窗编辑草稿 selected: {}, // 弹窗编辑草稿
editTarget: null, // 确认后写回的原数据 editTarget: null, // 确认后写回的原数据

View File

@@ -16,8 +16,7 @@
z-index: 99; z-index: 99;
width: 100%; width: 100%;
height: 100%; height: 100%;
.ivu-btn, .el-button {
.el-button{
float: right; float: right;
margin-right: 5px; margin-right: 5px;
margin-top: 5px; margin-top: 5px;

View File

@@ -1,5 +1,3 @@
:deep(.ivu-modal-mask),
:deep(.ivu-modal-wrap),
:deep(.el-overlay) { :deep(.el-overlay) {
z-index: 2000; z-index: 2000;
} }

View File

@@ -247,7 +247,7 @@
@click="changeTextAlign('left')" @click="changeTextAlign('left')"
> >
<img <img
:src="require('@/assets/align-text-left.png')" :src="alignTextLeft"
class="align-text" class="align-text"
alt="" alt=""
/> />
@@ -258,7 +258,7 @@
@click="changeTextAlign('center')" @click="changeTextAlign('center')"
> >
<img <img
:src="require('@/assets/align-text-center.png')" :src="alignTextCenter"
class="align-text" class="align-text"
alt="" alt=""
/> />
@@ -269,7 +269,7 @@
@click="changeTextAlign('right')" @click="changeTextAlign('right')"
> >
<img <img
:src="require('@/assets/align-text-right.png')" :src="alignTextRight"
class="align-text" class="align-text"
alt="" alt=""
/> />
@@ -527,7 +527,13 @@
<hotzone ref="hotzone" @changeZone="changeZone"></hotzone> <hotzone ref="hotzone" @changeZone="changeZone"></hotzone>
<el-dialog v-model="picModelFlag" width="1200px" append-to-body destroy-on-close> <el-dialog v-model="picModelFlag" width="1200px" append-to-body destroy-on-close>
<ossManage @callback="callbackSelected" :is-component="true" :initialize="picModelFlag" ref="ossManage" /> <ossManage
@callback="callbackSelected"
:is-component="true"
:initialize="picModelFlag"
:max-select="1"
ref="ossManage"
/>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
@@ -539,6 +545,9 @@ import hotzone from "@/components/hotzone";
import ways from "@/components/lili-dialog/wap.js"; import ways from "@/components/lili-dialog/wap.js";
import categoryTemplate from "@/components/lili-dialog/template/category"; import categoryTemplate from "@/components/lili-dialog/template/category";
import VideoConfig from "./video-config"; import VideoConfig from "./video-config";
import alignTextLeft from "@/assets/align-text-left.png";
import alignTextCenter from "@/assets/align-text-center.png";
import alignTextRight from "@/assets/align-text-right.png";
export default { export default {
components: { components: {
ossManage, ossManage,
@@ -549,6 +558,9 @@ export default {
}, },
data() { data() {
return { return {
alignTextLeft,
alignTextCenter,
alignTextRight,
ways, // 选择链接的类型 ways, // 选择链接的类型
picModelFlag: false, //图片选择器 picModelFlag: false, //图片选择器
linkType: "goods", // dialog弹窗口类型 linkType: "goods", // dialog弹窗口类型

View File

@@ -1,22 +1,16 @@
:deep(.ivu-input){ :deep(.el-input) {
width: 200px !important; width: 200px !important;
} }
.label-btns{ .label-btns {
margin-left: 150px; margin-left: 150px;
} }
.ivu-form-item{ .el-form-item {
padding: 10px 0; padding: 10px 0;
} }
:deep(.el-form-item__content) {
.ivu-input-wrapper {
width: 150px;
margin-right: 10px;
}
:deep(.ivu-form-item-content){
margin-left: 0 !important; margin-left: 0 !important;
display: flex; display: flex;
} }

View File

@@ -164,6 +164,8 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { unixToDate } from "@/utils/filters";
import * as API_Setting from "@/api/setting"; import * as API_Setting from "@/api/setting";
export default { export default {
@@ -233,7 +235,7 @@ export default {
this.modalVisible = true; this.modalVisible = true;
this.modalTitle = "添加APP版本信息"; this.modalTitle = "添加APP版本信息";
this.modalType = 0; this.modalType = 0;
const versionUpdateDate = this.$filters.unixToDate(new Date() / 1000); const versionUpdateDate = unixToDate(new Date() / 1000);
this.form = { this.form = {
forceUpdate: 0, forceUpdate: 0,
type: "IOS", type: "IOS",
@@ -253,7 +255,7 @@ export default {
if (valid) { if (valid) {
this.submitLoading = true; this.submitLoading = true;
if (JSON.stringify(this.form.versionUpdateDate).includes("T")) { if (JSON.stringify(this.form.versionUpdateDate).includes("T")) {
const versionUpdateDate = this.$filters.unixToDate( const versionUpdateDate = unixToDate(
this.form.versionUpdateDate / 1000 this.form.versionUpdateDate / 1000
); );
this.form.versionUpdateDate = versionUpdateDate; this.form.versionUpdateDate = versionUpdateDate;
@@ -264,7 +266,7 @@ export default {
API_Setting.addVersion(this.form).then((res) => { API_Setting.addVersion(this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.modalVisible = false; this.modalVisible = false;
this.getData(); this.getData();
} }
@@ -273,7 +275,7 @@ export default {
API_Setting.editVersion(this.form, this.form.id).then((res) => { API_Setting.editVersion(this.form, this.form.id).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res && res.success) { if (res && res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.modalVisible = false; this.modalVisible = false;
this.getData(); this.getData();
} }
@@ -283,20 +285,14 @@ export default {
}); });
}, },
remove(v) { remove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除么?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除么?",
loading: true,
onOk: () => {
API_Setting.deleteVersion(v.id).then((res) => { API_Setting.deleteVersion(v.id).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.getData(); this.getData();
} }
}); });
}, }).catch(() => {});
});
}, },
detail(v) { detail(v) {
this.queryModalVisible = true; this.queryModalVisible = true;

View File

@@ -106,6 +106,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { import {
initDepartment, initDepartment,
addDepartment, addDepartment,
@@ -275,7 +276,7 @@ export default {
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
if (valid) { if (valid) {
if (!this.form.id) { if (!this.form.id) {
this.$Message.warning("请先点击选择要修改的部门"); ElMessage.warning("请先点击选择要修改的部门");
return; return;
} }
const roleWay = []; const roleWay = [];
@@ -292,7 +293,7 @@ export default {
]).then((res) => { ]).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res[0].success) { if (res[0].success) {
this.$Message.success("编辑成功"); ElMessage.success("编辑成功");
this.init(); this.init();
this.modalVisible = false; this.modalVisible = false;
} }
@@ -307,7 +308,7 @@ export default {
addDepartment(this.formAdd).then((res) => { addDepartment(this.formAdd).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.init(); this.init();
this.modalVisible = false; this.modalVisible = false;
} }
@@ -317,7 +318,7 @@ export default {
}, },
add() { add() {
if (this.form.id == "" || this.form.id == null) { if (this.form.id == "" || this.form.id == null) {
this.$Message.warning("请先点击选择一个部门"); ElMessage.warning("请先点击选择一个部门");
return; return;
} }
this.modalTitle = "添加子部门"; this.modalTitle = "添加子部门";
@@ -341,32 +342,25 @@ export default {
}, },
delAll() { delAll() {
if (this.selectCount <= 0) { if (this.selectCount <= 0) {
this.$Message.warning("您还未勾选要删除的数据"); ElMessage.warning("您还未勾选要删除的数据");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除所选的 " + this.selectCount + " 条数据及其下级所有数据?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content:
"您确认要删除所选的 " + this.selectCount + " 条数据及其下级所有数据?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
deleteDepartment(ids).then((res) => { deleteDepartment(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.selectList = []; this.selectList = [];
this.selectCount = 0; this.selectCount = 0;
this.cancelSelect(); this.cancelSelect();
this.init(); this.init();
} }
}); });
}, }).catch(() => {});
});
}, },
}, },
mounted() { mounted() {

View File

@@ -45,7 +45,7 @@
<el-table-column prop="costTime" label="耗时-毫秒" width="140" align="center" /> <el-table-column prop="costTime" label="耗时-毫秒" width="140" align="center" />
<el-table-column label="操作时间" width="170" align="center"> <el-table-column label="操作时间" width="170" align="center">
<template #default="{ row }"> <template #default="{ row }">
<span v-if="row">{{ $filters.unixToDate(row.createTime / 1000) }}</span> <span v-if="row">{{ unixToDate(row.createTime / 1000) }}</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@@ -67,6 +67,8 @@
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { unixToDate } from "@/utils/filters";
import { getLogListData } from "@/api/index"; import { getLogListData } from "@/api/index";
export default { export default {
@@ -91,6 +93,7 @@ export default {
}; };
}, },
methods: { methods: {
unixToDate,
init() { init() {
this.getLogList(); this.getLogList();
}, },
@@ -130,7 +133,7 @@ export default {
} else { } else {
this.data = []; this.data = [];
this.total = 0; this.total = 0;
this.$Message.error((res && res.message) || "日志查询失败"); ElMessage.error((res && res.message) || "日志查询失败");
} }
}); });
}, },

View File

@@ -187,6 +187,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { Menu, List, ArrowDown } from "@element-plus/icons-vue"; import { Menu, List, ArrowDown } from "@element-plus/icons-vue";
import { import {
getAllPermissionList, getAllPermissionList,
@@ -420,7 +421,7 @@ export default {
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
if (valid) { if (valid) {
if (!this.form.id) { if (!this.form.id) {
this.$Message.warning("请先点击选择要修改的菜单节点"); ElMessage.warning("请先点击选择要修改的菜单节点");
return; return;
} }
this.submitLoading = true; this.submitLoading = true;
@@ -438,7 +439,7 @@ export default {
editPermission(this.form).then((res) => { editPermission(this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("编辑成功"); ElMessage.success("编辑成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.init(); this.init();
@@ -456,7 +457,7 @@ export default {
addPermission(this.formAdd).then((res) => { addPermission(this.formAdd).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.init(); this.init();
@@ -468,17 +469,14 @@ export default {
}, },
addMenu() { addMenu() {
if (!this.form.id) { if (!this.form.id) {
this.$Message.warning("请先点击选择一个菜单权限节点"); ElMessage.warning("请先点击选择一个菜单权限节点");
return; return;
} }
this.parentTitle = this.form.title; this.parentTitle = this.form.title;
this.modalTitle = "添加子节点"; this.modalTitle = "添加子节点";
this.showParent = true; this.showParent = true;
if (this.form.level == 2) { if (this.form.level == 2) {
this.$Modal.warning({ ElMessageBox.alert("仅支持2级菜单目录", "抱歉,不能添加啦", { type: "warning" });
title: "抱歉,不能添加啦",
content: "仅支持2级菜单目录",
});
return; return;
} }
this.formAdd = { this.formAdd = {
@@ -504,23 +502,18 @@ export default {
}, },
delAll() { delAll() {
if (this.selectCount <= 0) { if (this.selectCount <= 0) {
this.$Message.warning("您还未勾选要删除的数据"); ElMessage.warning("您还未勾选要删除的数据");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除所选的 " + this.selectCount + " 条数据?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除所选的 " + this.selectCount + " 条数据?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
deletePermission(ids).then((res) => { deletePermission(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.selectList = []; this.selectList = [];
@@ -529,8 +522,7 @@ export default {
this.init(); this.init();
} }
}); });
}, }).catch(() => {});
});
}, },
}, },
mounted() { mounted() {

View File

@@ -187,6 +187,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { Menu, List, ArrowDown } from "@element-plus/icons-vue"; import { Menu, List, ArrowDown } from "@element-plus/icons-vue";
import { import {
getStoreAllPermissionList, getStoreAllPermissionList,
@@ -420,7 +421,7 @@ export default {
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
if (valid) { if (valid) {
if (!this.form.id) { if (!this.form.id) {
this.$Message.warning("请先点击选择要修改的菜单节点"); ElMessage.warning("请先点击选择要修改的菜单节点");
return; return;
} }
this.submitLoading = true; this.submitLoading = true;
@@ -438,7 +439,7 @@ export default {
editStorePermission(this.form).then((res) => { editStorePermission(this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("编辑成功"); ElMessage.success("编辑成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.init(); this.init();
@@ -456,7 +457,7 @@ export default {
addStorePermission(this.formAdd).then((res) => { addStorePermission(this.formAdd).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.init(); this.init();
@@ -468,17 +469,14 @@ export default {
}, },
addMenu() { addMenu() {
if (!this.form.id) { if (!this.form.id) {
this.$Message.warning("请先点击选择一个菜单权限节点"); ElMessage.warning("请先点击选择一个菜单权限节点");
return; return;
} }
this.parentTitle = this.form.title; this.parentTitle = this.form.title;
this.modalTitle = "添加子节点"; this.modalTitle = "添加子节点";
this.showParent = true; this.showParent = true;
if (this.form.level == 2) { if (this.form.level == 2) {
this.$Modal.warning({ ElMessageBox.alert("仅支持2级菜单目录", "抱歉,不能添加啦", { type: "warning" });
title: "抱歉,不能添加啦",
content: "仅支持2级菜单目录",
});
return; return;
} }
this.formAdd = { this.formAdd = {
@@ -504,23 +502,18 @@ export default {
}, },
delAll() { delAll() {
if (this.selectCount <= 0) { if (this.selectCount <= 0) {
this.$Message.warning("您还未勾选要删除的数据"); ElMessage.warning("您还未勾选要删除的数据");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除所选的 " + this.selectCount + " 条数据?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除所选的 " + this.selectCount + " 条数据?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
deleteStorePermission(ids).then((res) => { deleteStorePermission(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.selectList = []; this.selectList = [];
@@ -529,8 +522,7 @@ export default {
this.init(); this.init();
} }
}); });
}, }).catch(() => {});
});
}, },
}, },
mounted() { mounted() {

View File

@@ -219,6 +219,7 @@
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import * as API_Setting from "@/api/setting.js"; import * as API_Setting from "@/api/setting.js";
export default { export default {
@@ -290,7 +291,7 @@ export default {
if (!(res && res.success && res.result)) { if (!(res && res.success && res.result)) {
this.memberRows = []; this.memberRows = [];
this.total = 0; this.total = 0;
this.$Message.error((res && res.message) || "加载消息模板失败"); ElMessage.error((res && res.message) || "加载消息模板失败");
return; return;
} }
const records = res.result.records || []; const records = res.result.records || [];
@@ -332,9 +333,9 @@ export default {
const res = await API_Setting.wechatMessageSync(); const res = await API_Setting.wechatMessageSync();
if (res && res.success) { if (res && res.success) {
await this.loadMemberPage(); await this.loadMemberPage();
this.$Message.success("服务号模板同步成功"); ElMessage.success("服务号模板同步成功");
} else { } else {
this.$Message.error((res && res.message) || "服务号模板同步失败"); ElMessage.error((res && res.message) || "服务号模板同步失败");
} }
} finally { } finally {
this.syncOaLoading = false; this.syncOaLoading = false;
@@ -346,9 +347,9 @@ export default {
const res = await API_Setting.wechatMPMessageSync(); const res = await API_Setting.wechatMPMessageSync();
if (res && res.success) { if (res && res.success) {
await this.loadMemberPage(); await this.loadMemberPage();
this.$Message.success("小程序模板同步成功"); ElMessage.success("小程序模板同步成功");
} else { } else {
this.$Message.error((res && res.message) || "小程序模板同步失败"); ElMessage.error((res && res.message) || "小程序模板同步失败");
} }
} finally { } finally {
this.syncMpLoading = false; this.syncMpLoading = false;
@@ -402,9 +403,9 @@ export default {
const res = await API_Setting.updateMessageStatus(row.id, this.toOpenClose(v)); const res = await API_Setting.updateMessageStatus(row.id, this.toOpenClose(v));
if (!(res && res.success)) { if (!(res && res.success)) {
this.updateRowStatus(row, "noticeStatus", old); this.updateRowStatus(row, "noticeStatus", old);
this.$Message.error((res && res.message) || "站内信开关更新失败"); ElMessage.error((res && res.message) || "站内信开关更新失败");
} else { } else {
this.$Message.success("站内信开关更新成功"); ElMessage.success("站内信开关更新成功");
} }
}, },
async toggleOaChannel(v, row) { async toggleOaChannel(v, row) {
@@ -416,13 +417,13 @@ export default {
const res = await API_Setting.editWechatMessageTemplate(row.oaId, params); const res = await API_Setting.editWechatMessageTemplate(row.oaId, params);
if (!(res && res.success)) { if (!(res && res.success)) {
this.updateRowStatus(row, "oaStatus", old); this.updateRowStatus(row, "oaStatus", old);
this.$Message.error((res && res.message) || "服务号开关更新失败"); ElMessage.error((res && res.message) || "服务号开关更新失败");
} else { } else {
this.$Message.success("服务号开关更新成功"); ElMessage.success("服务号开关更新成功");
} }
} catch (e) { } catch (e) {
this.updateRowStatus(row, "oaStatus", old); this.updateRowStatus(row, "oaStatus", old);
this.$Message.error((e && e.message) || "服务号开关更新失败"); ElMessage.error((e && e.message) || "服务号开关更新失败");
} }
}, },
async toggleMpChannel(v, row) { async toggleMpChannel(v, row) {
@@ -433,9 +434,9 @@ export default {
const res = await API_Setting.editWechatMPMessageTemplate(row.mpId, params); const res = await API_Setting.editWechatMPMessageTemplate(row.mpId, params);
if (!(res && res.success)) { if (!(res && res.success)) {
this.updateRowStatus(row, "mpStatus", old); this.updateRowStatus(row, "mpStatus", old);
this.$Message.error((res && res.message) || "小程序开关更新失败"); ElMessage.error((res && res.message) || "小程序开关更新失败");
} else { } else {
this.$Message.success("小程序开关更新成功"); ElMessage.success("小程序开关更新成功");
} }
}, },
async toggleEmailChannel(v, row) { async toggleEmailChannel(v, row) {
@@ -444,9 +445,9 @@ export default {
const res = await API_Setting.updateNoticeMessageEmailStatus(row.id, this.toOpenClose(v)); const res = await API_Setting.updateNoticeMessageEmailStatus(row.id, this.toOpenClose(v));
if (!(res && res.success)) { if (!(res && res.success)) {
this.updateRowStatus(row, "emailStatus", old); this.updateRowStatus(row, "emailStatus", old);
this.$Message.error((res && res.message) || "邮箱开关更新失败"); ElMessage.error((res && res.message) || "邮箱开关更新失败");
} else { } else {
this.$Message.success("邮箱开关更新成功"); ElMessage.success("邮箱开关更新成功");
} }
}, },
}, },

View File

@@ -354,6 +354,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import * as API_Setting from "@/api/setting.js"; import * as API_Setting from "@/api/setting.js";
import * as API_Other from "@/api/other.js"; import * as API_Other from "@/api/other.js";
import * as API_Shop from "@/api/shops.js"; import * as API_Shop from "@/api/shops.js";
@@ -545,18 +546,14 @@ export default {
}); });
}, },
removeMessage(id) { removeMessage(id) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认删除此站内信 ?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认删除此站内信 ?",
onOk: () => {
API_Setting.deleteMessage(id).then((res) => { API_Setting.deleteMessage(id).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
} }
this.getMessage(); this.getMessage();
}); });
}, }).catch(() => {});
});
}, },
sendMessage() { sendMessage() {
this.messageModalVisible = true; this.messageModalVisible = true;
@@ -586,7 +583,7 @@ export default {
} }
if (this.messageSendForm.userIds.length <= 0 && this.messageSendForm.messageRange == "APPOINT") { if (this.messageSendForm.userIds.length <= 0 && this.messageSendForm.messageRange == "APPOINT") {
this.$Message.error("请选择发送对象"); ElMessage.error("请选择发送对象");
return; return;
} }
this.$refs["messageSendForm"].validate((valid) => { this.$refs["messageSendForm"].validate((valid) => {
@@ -594,7 +591,7 @@ export default {
API_Other.sendMessage(this.messageSendForm).then((res) => { API_Other.sendMessage(this.messageSendForm).then((res) => {
this.loading = false; this.loading = false;
if (res.success) { if (res.success) {
this.$Message.success("发送成功"); ElMessage.success("发送成功");
this.messageModalVisible = false; this.messageModalVisible = false;
this.getMessage(); this.getMessage();
} }
@@ -656,7 +653,7 @@ export default {
API_Setting.editNoticeMessage(this.form.id, params).then((res) => { API_Setting.editNoticeMessage(this.form.id, params).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.modalVisible = false; this.modalVisible = false;
this.getNoticeMessage(); this.getNoticeMessage();
} }
@@ -704,7 +701,7 @@ export default {
disable(v) { disable(v) {
API_Setting.updateMessageStatus(v.id, "CLOSE").then((res) => { API_Setting.updateMessageStatus(v.id, "CLOSE").then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("禁用成功"); ElMessage.success("禁用成功");
this.getNoticeMessage(); this.getNoticeMessage();
} }
}); });
@@ -712,7 +709,7 @@ export default {
enable(v) { enable(v) {
API_Setting.updateMessageStatus(v.id, "OPEN").then((res) => { API_Setting.updateMessageStatus(v.id, "OPEN").then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("启用成功"); ElMessage.success("启用成功");
this.getNoticeMessage(); this.getNoticeMessage();
} }
}); });

View File

@@ -129,19 +129,10 @@ methodItem h4 {
.scroll-card { .scroll-card {
margin: 5px 0; margin: 5px 0;
} }
.ivu-card-body {
padding: 1px;
margin-left: 7px;
}
.checkbox-tag { .checkbox-tag {
height: 35px; height: 35px;
width: 100%; width: 100%;
} }
.ivu-tag-border.ivu-tag-closable .ivu-icon-ios-close {
margin-right: 68px !important;
left: 7px;
top: 0px;
}
.message-title{ .message-title{
background-color: #fff5eb; background-color: #fff5eb;

View File

@@ -287,6 +287,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import * as API_Setting from "@/api/setting.js"; import * as API_Setting from "@/api/setting.js";
import * as API_Member from "@/api/member.js"; import * as API_Member from "@/api/member.js";
@@ -405,7 +406,7 @@ export default {
}, },
moveMember(index, item) { moveMember(index, item) {
if (!item.mobile) { if (!item.mobile) {
this.$Message.error("当前用户暂无手机号绑定"); ElMessage.error("当前用户暂无手机号绑定");
return false; return false;
} }
item.____selected = true; item.____selected = true;
@@ -505,20 +506,14 @@ export default {
this.smsForm.context = this.smsTemplateContent; this.smsForm.context = this.smsTemplateContent;
}, },
deleteSmsTemplate(v) { deleteSmsTemplate(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除此短信模板?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除此短信模板?",
loading: true,
onOk: () => {
API_Setting.deleteSmsTemplatePage({ templateCode: v.templateCode }).then((res) => { API_Setting.deleteSmsTemplatePage({ templateCode: v.templateCode }).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.getSmsTemplate(); this.getSmsTemplate();
} }
}); });
}, }).catch(() => {});
});
}, },
sendSms() { sendSms() {
this.$refs.smsForm.validate((valid) => { this.$refs.smsForm.validate((valid) => {
@@ -526,7 +521,7 @@ export default {
this.smsForm.mobile = this.alreadyCheck; this.smsForm.mobile = this.alreadyCheck;
API_Setting.sendSms(this.smsForm).then((res) => { API_Setting.sendSms(this.smsForm).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("发送成功"); ElMessage.success("发送成功");
this.getSms(); this.getSms();
this.sendSmsModal = false; this.sendSmsModal = false;
} }
@@ -553,7 +548,7 @@ export default {
API_Setting.syncSign().then((res) => { API_Setting.syncSign().then((res) => {
this.loading = false; this.loading = false;
if (res.success) { if (res.success) {
this.$Message.success("同步成功"); ElMessage.success("同步成功");
this.getSmsSign(); this.getSmsSign();
} }
}); });
@@ -570,7 +565,7 @@ export default {
.then((res) => { .then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success(this.modalType == 0 ? "添加成功" : "修改成功"); ElMessage.success(this.modalType == 0 ? "添加成功" : "修改成功");
this.templateModalVisible = false; this.templateModalVisible = false;
this.getSmsTemplate(); this.getSmsTemplate();
} }
@@ -581,27 +576,21 @@ export default {
}); });
}, },
deleteSmsSign(v) { deleteSmsSign(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除此短信签名?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除此短信签名?",
loading: true,
onOk: () => {
API_Setting.deleteSign(v.id).then((res) => { API_Setting.deleteSign(v.id).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.getSmsSign(); this.getSmsSign();
} }
}); });
}, }).catch(() => {});
});
}, },
syncTemplate() { syncTemplate() {
this.loading = true; this.loading = true;
API_Setting.syncTemplate().then((res) => { API_Setting.syncTemplate().then((res) => {
this.loading = false; this.loading = false;
if (res.success) { if (res.success) {
this.$Message.success("同步成功"); ElMessage.success("同步成功");
this.getSmsTemplate(); this.getSmsTemplate();
} }
}); });

View File

@@ -61,6 +61,7 @@
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import * as API_Setting from "@/api/setting.js"; import * as API_Setting from "@/api/setting.js";
import uploadPicThumb from "@/components/lili/upload-pic-thumb"; import uploadPicThumb from "@/components/lili/upload-pic-thumb";
@@ -97,11 +98,11 @@ export default {
}, },
addSignSubmit() { addSignSubmit() {
if (this.form.businessLicense == "" || this.form.license == "") { if (this.form.businessLicense == "" || this.form.license == "") {
this.$Message.error("请完善证件信息"); ElMessage.error("请完善证件信息");
return; return;
} }
if (this.form.signSource === "" || this.form.signSource === null || this.form.signSource === undefined) { if (this.form.signSource === "" || this.form.signSource === null || this.form.signSource === undefined) {
this.$Message.error("请选择签名来源"); ElMessage.error("请选择签名来源");
return; return;
} }
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
@@ -112,7 +113,7 @@ export default {
.then((res) => { .then((res) => {
this.loading = false; this.loading = false;
if (res.success) { if (res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.$router.back(); this.$router.back();
} }
}) })
@@ -124,7 +125,7 @@ export default {
.then((res) => { .then((res) => {
this.loading = false; this.loading = false;
if (res.success) { if (res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.$router.back(); this.$router.back();
} }
}) })

View File

@@ -16,125 +16,6 @@
display: none; display: none;
} }
.oss-wrapper {
display: flex;
flex-wrap: wrap;
position: relative;
}
.oss-card {
margin: 10px 20px 10px 0;
width: 290px;
:hover {
.content .other .name {
color: #1890ff;
transition: color .3s;
}
}
cursor: pointer;
.ivu-card-body {
padding: 0;
}
.content {
display: flex;
flex-direction: column;
:hover {
.play {
transition: opacity .3s;
opacity: 1 !important;
}
}
.img {
height: 135px;
object-fit: cover;
}
.video {
height: 135px;
position: relative;
.cover {
height: 100%;
width: 100%;
object-fit: fill;
}
.play {
position: absolute;
top: 43px;
left: 117px;
height: 50px;
width: 50px;
opacity: 0.8;
}
}
.other {
padding: 16px;
height: 135px;
.name {
font-size: 16px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
color: rgba(0, 0, 0, .85);
font-weight: 500;
margin-bottom: 4px;
}
.key {
overflow: hidden;
text-overflow: ellipsis;
height: 45px;
word-break: break-all;
color: rgba(0, 0, 0, .45);
}
.info {
font-size: 12px;
color: rgba(0, 0, 0, .45);
overflow: hidden;
text-overflow: ellipsis;
height: 36px;
word-break: break-all;
}
}
.actions {
display: flex;
align-items: center;
height: 50px;
background: #f7f9fa;
border-top: 1px solid #e8e8e8;
i:hover {
color: #1890ff;
}
.btn {
display: flex;
justify-content: center;
width: 33.33%;
border-right: 1px solid #e8e8e8;
}
.btn-no {
display: flex;
justify-content: center;
width: 33.33%;
}
}
}
}
.oss-manage-box { .oss-manage-box {
.file-list { .file-list {
height: 100%; height: 100%;
@@ -254,7 +135,7 @@
flex-direction: row-reverse; flex-direction: row-reverse;
} }
.demo-tree-render .ivu-tree-title{ .demo-tree-render .el-tree-node__label {
width: 94%; width: 94%;
} }
} }

View File

@@ -100,8 +100,26 @@
font-size: 16px; font-size: 16px;
} }
.category-tabs-card { .file-preview-fallback {
margin-bottom: 0; display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 48px 16px;
color: #606266;
.file-preview-name {
margin: 16px 0 8px;
font-size: 16px;
font-weight: 500;
word-break: break-all;
text-align: center;
}
.file-preview-tip {
margin: 0 0 20px;
color: #909399;
}
} }
</style> </style>
@@ -182,7 +200,7 @@
multiple multiple
style="display: inline-block" style="display: inline-block"
> >
<el-button>上传图片</el-button> <el-button>{{ uploadButtonText }}</el-button>
</el-upload> </el-upload>
<el-button v-if="!isComponent && showType == 'list'" @click="removeAll">批量删除</el-button> <el-button v-if="!isComponent && showType == 'list'" @click="removeAll">批量删除</el-button>
</div> </div>
@@ -229,9 +247,7 @@
</el-tooltip> </el-tooltip>
</div> </div>
<div <div
@click.prevent=" @click.prevent="previewFile(item)"
isVideoFile(item) ? showVideo(item) : showPic(item)
"
> >
<el-tooltip content="预览" placement="top"> <el-tooltip content="预览" placement="top">
<el-icon :size="22"><View /></el-icon> <el-icon :size="22"><View /></el-icon>
@@ -264,166 +280,7 @@
</el-col> </el-col>
</el-row> </el-row>
<!--<div class="oss-operation padding-row">-->
<!--<div>-->
<!--<Upload-->
<!--ref="up"-->
<!--:action="commonUrl + '/common/common/upload/file'"-->
<!--:data="{-->
<!--directoryPath: searchForm.fileDirectoryId,-->
<!--}"-->
<!--:headers="accessToken"-->
<!--:max-size="20480"-->
<!--:on-error="handleError"-->
<!--:on-exceeded-size="handleMaxSize"-->
<!--:on-success="handleSuccess"-->
<!--:show-upload-list="false"-->
<!--multiple-->
<!--style="display: inline-block"-->
<!--&gt;-->
<!--<Button>上传图片</Button>-->
<!--</Upload>-->
<!--<Dropdown @on-click="handleDropdown" v-if="!isComponent">-->
<!--<Button>-->
<!--更多操作-->
<!--<Icon type="md-arrow-dropdown"/>-->
<!--</Button>-->
<!--<DropdownMenu slot="list">-->
<!--<DropdownItem name="refresh">刷新</DropdownItem>-->
<!--<DropdownItem v-show="showType == 'list'" name="removeAll"-->
<!--&gt;批量删除-->
<!--</DropdownItem>-->
<!--</DropdownMenu>-->
<!--</Dropdown>-->
<!--</div>-->
<!--</div>-->
</div> </div>
<!--<Alert show-icon v-if="!isComponent">-->
<!--已选择-->
<!--<span>{{ selectCount }}</span> -->
<!--<a class="select-clear" @click="clearSelectAll">清空</a>-->
<!--<span v-if="selectCount > 0" style="margin-left: 15px"-->
<!--&gt;共计 {{ totalSize }} 存储量</span-->
<!--&gt;-->
<!--</Alert>-->
<!--<div v-show="showType === 'list'" >-->
<!--<div class="flex">-->
<!--<div class="article-category mr_10">-->
<!--<Tree-->
<!--:data="treeData"-->
<!--@on-contextmenu="handleContextMenu"-->
<!--@on-select-change="handleCateChange"-->
<!--&gt;-->
<!--<template slot="contextMenu" v-if="!isComponent">-->
<!--<DropdownItem @click.native="handleContextMenuEdit"-->
<!--&gt;编辑-->
<!--</DropdownItem-->
<!--&gt;-->
<!--<DropdownItem-->
<!--style="color: #ed4014"-->
<!--@click.native="handleContextMenuDelete"-->
<!--&gt;删除-->
<!--</DropdownItem-->
<!--&gt;-->
<!--</template>-->
<!--</Tree>-->
<!--<Alert v-if="!isComponent">鼠标右键编辑/删除分组</Alert>-->
<!--<div class="group-row flex" v-if="!isComponent">-->
<!--<Button @click="handleClickAddGroup">添加分组</Button>-->
<!--</div>-->
<!--</div>-->
<!--<Table-->
<!--ref="table"-->
<!--:columns="isComponent ? viewColumns : columns"-->
<!--:data="data"-->
<!--:loading="loading"-->
<!--border-->
<!--class="table"-->
<!--sortable="custom"-->
<!--@on-sort-change="changeSort"-->
<!--@on-selection-change="changeSelect"-->
<!--&gt;-->
<!--<template slot="fileKey" slot-scope="{ row }">-->
<!--<a @click="copyFileUrl(row)">{{ row.fileKey }}</a>-->
<!--</template>-->
<!--</Table>-->
<!--</div>-->
<!--</div>-->
<!--<div v-show="showType === 'thumb'">-->
<!--<div class="oss-wrapper">-->
<!--<Card v-for="(item, i) in data" :key="i" class="oss-card">-->
<!--<div class="content">-->
<!--<img-->
<!--v-if="item.fileType.indexOf('image') >= 0"-->
<!--:src="item.url"-->
<!--class="img"-->
<!--@click="showPic(item)"-->
<!--/>-->
<!--<div-->
<!--v-else-if="item.fileType.indexOf('video') >= 0"-->
<!--class="video"-->
<!--@click="showVideo(item)"-->
<!--&gt;-->
<!--&lt;!&ndash; 文件小于5MB显示video &ndash;&gt;-->
<!--<video v-if="item.fileSize < 1024 * 1024 * 5" class="cover">-->
<!--<source :src="item.url"/>-->
<!--</video>-->
<!--<img class="play" src="@/assets/play.png"/>-->
<!--</div>-->
<!--<div v-else class="other">-->
<!--<div class="name">{{ item.name }}</div>-->
<!--<div class="key">{{ item.fileKey }}</div>-->
<!--<div class="info">-->
<!--文件类型{{ item.fileType }} 文件大小{{-->
<!--((item.fileSize * 1.0) / (1024 * 1024)).toFixed(2)-->
<!--}}-->
<!--MB 创建时间{{ item.createTime }}-->
<!--</div>-->
<!--</div>-->
<!--<div class="actions">-->
<!--<div class="btn">-->
<!--<Tooltip content="下载" placement="top">-->
<!--<Icon-->
<!--size="16"-->
<!--type="md-download"-->
<!--@click="download(item)"-->
<!--/>-->
<!--</Tooltip>-->
<!--</div>-->
<!--<div class="btn">-->
<!--<Tooltip content="重命名" placement="top">-->
<!--<Icon size="16" type="md-create" @click="rename(item)"/>-->
<!--</Tooltip>-->
<!--</div>-->
<!--<div class="btn-no">-->
<!--<Tooltip content="删除" placement="top">-->
<!--<Icon size="16" type="md-trash" @click="remove(item)"/>-->
<!--</Tooltip>-->
<!--</div>-->
<!--</div>-->
<!--</div>-->
<!--</Card>-->
<!--</div>-->
<!--</div>-->
<!--<Row class="mt_10" justify="end" type="flex">-->
<!--<Page-->
<!--:current="searchForm.pageNumber"-->
<!--:page-size="searchForm.pageSize"-->
<!--:page-size-opts="pageSizeOpts"-->
<!--:total="total"-->
<!--show-elevator-->
<!--show-sizer-->
<!--show-total-->
<!--size="small"-->
<!--@on-change="changePage"-->
<!--@on-page-size-change="changePageSize"-->
<!--&gt;</Page>-->
<!--</Row>-->
</el-card> </el-card>
</el-row> </el-row>
<el-dialog <el-dialog
@@ -450,7 +307,7 @@
<el-dialog v-model="picVisible" :title="picTitle" width="600px"> <el-dialog v-model="picVisible" :title="picTitle" width="600px">
<img <img
:src="file.url" :src="file.url"
alt="无效的图片链接" alt="图片加载失败"
style="width: 100%; margin: 0 auto; display: block" style="width: 100%; margin: 0 auto; display: block"
/> />
<template #footer> <template #footer>
@@ -458,14 +315,33 @@
</template> </template>
</el-dialog> </el-dialog>
<el-dialog v-model="fileVisible" :title="fileTitle" width="800px" destroy-on-close>
<iframe
v-if="isPdfFile(file)"
:src="file.url"
style="width: 100%; height: 70vh; border: none"
title="文件预览"
/>
<div v-else class="file-preview-fallback">
<el-icon :size="64"><Document /></el-icon>
<p class="file-preview-name">{{ file.name }}</p>
<p class="file-preview-tip">该文件类型暂不支持在线预览</p>
<el-button type="primary" @click="download(file)">下载文件</el-button>
</div>
<template #footer>
<span>文件类型{{ file.fileType }} 文件大小{{ file.msize }} 创建时间{{ file.createTime }}</span>
</template>
</el-dialog>
<el-dialog <el-dialog
v-model="videoVisible" v-model="videoVisible"
:title="videoTitle" :title="videoTitle"
width="800px" width="800px"
destroy-on-close destroy-on-close
@close="closeVideo" @close="closeVideo"
@opened="initDPlayer"
> >
<div id="dplayer"></div> <div ref="dplayerRef"></div>
<template #footer> <template #footer>
<span>文件类型{{ file.fileType }} 文件大小{{ file.msize }} 创建时间{{ file.createTime }}</span> <span>文件类型{{ file.fileType }} 文件大小{{ file.msize }} 创建时间{{ file.createTime }}</span>
</template> </template>
@@ -497,6 +373,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { Delete, Download, View, Document } from "@element-plus/icons-vue"; import { Delete, Download, View, Document } from "@element-plus/icons-vue";
import { import {
addFileDirectory, addFileDirectory,
@@ -509,8 +386,8 @@ import {
} from "@/api/index"; } from "@/api/index";
import DPlayer from "dplayer"; import DPlayer from "dplayer";
import {commonUrl} from "@/libs/axios"; import {commonUrl} from "@/libs/axios";
import config from "@/config/index";
const config = require("@/config/index"); import playIcon from "@/assets/play.png";
let dp; let dp;
export default { export default {
@@ -562,10 +439,13 @@ export default {
showType: "list", // 展示类型 showType: "list", // 展示类型
modalVisible: false, // 添加或编辑显示 modalVisible: false, // 添加或编辑显示
uploadVisible: false, // 上传展示 uploadVisible: false, // 上传展示
videoVisible: false, // 文件modal videoVisible: false, // 视频预览
picVisible: false, // 图片modal picVisible: false, // 图片预览
picTitle: "", // 图片title fileVisible: false, // 文件预览
videoTitle: "", // 视频title picTitle: "", // 图片 title
videoTitle: "", // 视频 title
fileTitle: "", // 文件 title
pendingVideoUrl: "", // 待播放视频地址
modalTitle: "", // 添加或编辑标题 modalTitle: "", // 添加或编辑标题
activeRoleTab: "MANAGER", activeRoleTab: "MANAGER",
activeCategoryTab: "IMAGE", activeCategoryTab: "IMAGE",
@@ -659,7 +539,7 @@ export default {
} else { } else {
return h("img", { return h("img", {
attrs: { attrs: {
src: require("@/assets/play.png"), src: playIcon,
}, },
style: { style: {
cursor: "pointer", cursor: "pointer",
@@ -860,7 +740,7 @@ export default {
} else { } else {
return h("img", { return h("img", {
attrs: { attrs: {
src: require("@/assets/play.png"), src: playIcon,
}, },
style: { style: {
cursor: "pointer", cursor: "pointer",
@@ -1021,19 +901,31 @@ export default {
canUploadImages() { canUploadImages() {
return this.activeRoleTab === "MANAGER"; return this.activeRoleTab === "MANAGER";
}, },
uploadButtonText() {
const textMap = {
IMAGE: "上传图片",
VIDEO: "上传视频",
FILE: "上传文件",
};
return textMap[this.activeCategoryTab] || "上传图片";
},
uploadData() { uploadData() {
return { const data = {
directoryPath: this.searchForm.fileDirectoryId,
userEnums: this.activeRoleTab, userEnums: this.activeRoleTab,
directoryType: this.activeRoleTab, directoryType: this.activeRoleTab,
}; };
const directoryId = this.searchForm.fileDirectoryId;
if (directoryId && directoryId !== "0") {
data.directoryPath = directoryId;
}
return data;
}, },
}, },
methods: { methods: {
beforeUpload(file) { beforeUpload(file) {
if (!this.canUploadImages) { if (!this.canUploadImages) {
this.$Message.warning("仅管理员模块支持上传图片"); ElMessage.warning("仅管理员模块支持上传图片");
return false; return false;
} }
const maxSize = 20480 * 1024; const maxSize = 20480 * 1024;
@@ -1221,18 +1113,14 @@ export default {
}, },
// 删除分组 // 删除分组
async handleContextMenuDelete(val) { async handleContextMenuDelete(val) {
this.$Modal.confirm({ ElMessageBox.confirm("是否删除该分组", "提示", { type: "warning" }).then(async () => {
title: "提示",
content: "是否删除该分组",
onOk: async () => {
const res = await delFileDirectory(this.selectedGroupData.value); const res = await delFileDirectory(this.selectedGroupData.value);
if (res.success) { if (res.success) {
this.$Message.success("删除成功!"); ElMessage.success("删除成功!");
this.getDataList(); this.getDataList();
this.getAllList(); this.getAllList();
} }
}, }).catch(() => {});
});
}, },
async submitAddGroup() { async submitAddGroup() {
this.$refs["formValidate"].validate(async (valid) => { this.$refs["formValidate"].validate(async (valid) => {
@@ -1252,13 +1140,12 @@ export default {
} }
if (res.success) { if (res.success) {
this.$Message.success("操作成功!"); ElMessage.success("操作成功!");
this.enableGroup = false; this.enableGroup = false;
this.getAllList(); this.getAllList();
} }
this.$Modal.remove(); } else {
} else { ElMessage.error("请填写完整信息!");
this.$Message.error("请填写完整信息!");
} }
}); });
}, },
@@ -1280,7 +1167,7 @@ export default {
textArea.select(); textArea.select();
try { try {
document.execCommand("copy"); document.execCommand("copy");
this.$Message.success("复制成功"); ElMessage.success("复制成功");
} catch (err) { } catch (err) {
console.error("Unable to copy to clipboard", err); console.error("Unable to copy to clipboard", err);
} }
@@ -1348,7 +1235,7 @@ export default {
}, },
handleSelectConfirm() { handleSelectConfirm() {
if (!this.selectedOss.length) { if (!this.selectedOss.length) {
this.$Message.warning("请选择图片"); ElMessage.warning("请选择图片");
return; return;
} }
const last = this.selectedOss[this.selectedOss.length - 1]; const last = this.selectedOss[this.selectedOss.length - 1];
@@ -1370,29 +1257,45 @@ export default {
}, },
// 查看大图 // 查看大图
showPic(v) { showPic(v) {
this.file = v; this.prepareFileMeta(v);
this.file.msize = ((v.fileSize * 1.0) / (1024 * 1024)).toFixed(2) + " MB"; this.picTitle = v.name || "图片预览";
this.picTitle = v.name + "(" + v.fileKey + ")";
this.picVisible = true; this.picVisible = true;
}, },
// 查看文件PDF 等)
showFile(v) {
this.prepareFileMeta(v);
this.fileTitle = v.name || "文件预览";
this.fileVisible = true;
},
// 查看视频 // 查看视频
showVideo(v) { showVideo(v) {
this.prepareFileMeta(v);
this.videoTitle = v.name || "视频预览";
this.pendingVideoUrl = v.url;
this.videoVisible = true;
},
initDPlayer() {
const container = this.$refs.dplayerRef;
if (!container || !this.pendingVideoUrl) return;
if (dp) {
dp.destroy();
dp = null;
}
dp = new DPlayer({ dp = new DPlayer({
container: document.getElementById("dplayer"), container,
screenshot: true, screenshot: true,
video: { video: {
url: v.url, url: this.pendingVideoUrl,
}, },
}); });
this.file = v;
this.file.msize = ((v.fileSize * 1.0) / (1024 * 1024)).toFixed(2) + " MB";
this.videoTitle = v.name + "(" + v.fileKey + ")";
this.videoVisible = true;
}, },
// 关闭视频 // 关闭视频
closeVideo() { closeVideo() {
dp.destroy(); if (dp) {
dp.destroy();
dp = null;
}
this.pendingVideoUrl = "";
}, },
// 分页 改变页码 // 分页 改变页码
changePage(v) { changePage(v) {
@@ -1470,26 +1373,45 @@ export default {
isVideoFile(row) { isVideoFile(row) {
return row?.fileCategory === "VIDEO" || (row?.fileType && row.fileType.includes("video")); return row?.fileCategory === "VIDEO" || (row?.fileType && row.fileType.includes("video"));
}, },
isPdfFile(row) {
return (
row?.fileType === "application/pdf" ||
(row?.name && row.name.toLowerCase().endsWith(".pdf"))
);
},
previewFile(item) {
if (this.isVideoFile(item)) {
this.showVideo(item);
} else if (this.isImageFile(item)) {
this.showPic(item);
} else {
this.showFile(item);
}
},
prepareFileMeta(v) {
this.file = v;
this.file.msize = ((v.fileSize * 1.0) / (1024 * 1024)).toFixed(2) + " MB";
},
// 上传文件超过大小限制 // 上传文件超过大小限制
handleMaxSize() { handleMaxSize() {
this.$Message.warning("所选文件大小过大,不得超过 20MB"); ElMessage.warning("所选文件大小过大,不得超过 20MB");
}, },
// 上传成功回调 // 上传成功回调
handleSuccess(res, file) { handleSuccess(res, file) {
if (!this.canUploadImages) { if (!this.canUploadImages) {
this.$Message.warning("仅管理员模块支持上传图片"); ElMessage.warning("仅管理员模块支持上传图片");
return; return;
} }
if (res.success) { if (res.success) {
this.$Message.success("上传文件 " + file.name + " 成功"); ElMessage.success("上传文件 " + file.name + " 成功");
this.getDataList(); this.getDataList();
} else { } else {
this.$Message.error(res.message); ElMessage.error(res.message);
} }
}, },
// 上传失败回调 // 上传失败回调
handleError(error, file, fileList) { handleError(error, file, fileList) {
this.$Message.error(error.toString()); ElMessage.error(error.toString());
}, },
// 清空上传文件 // 清空上传文件
clearFiles() { clearFiles() {
@@ -1508,50 +1430,38 @@ export default {
// 批量删除文件 // 批量删除文件
removeAll() { removeAll() {
if (this.selectCount <= 0) { if (this.selectCount <= 0) {
this.$Message.warning("您还未选择要删除的数据"); ElMessage.warning("您还未选择要删除的数据");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除所选的 " + this.selectCount + " 个文件?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除所选的 " + this.selectCount + " 个文件?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
deleteFile(ids).then((res) => { deleteFile(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.selectedOss = []; this.selectedOss = [];
// this.clearSelectAll(); // this.clearSelectAll();
this.init(); this.init();
this.$Message.success("批量删除文件成功"); ElMessage.success("批量删除文件成功");
} }
}) })
.catch((err) => { .catch((err) => {
console.log("失败", err); console.log("失败", err);
}); });
}, }).catch(() => {});
});
}, },
// 单个删除文件 // 单个删除文件
remove(v) { remove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除文件 " + v.name + " ?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除文件 " + v.name + " ?",
loading: true,
onOk: () => {
deleteFile(v.id).then((res) => { deleteFile(v.id).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除文件 " + v.name + " 成功"); ElMessage.success("删除文件 " + v.name + " 成功");
this.getDataList(); this.getDataList();
} }
}) })
}, }).catch(() => {});
});
}, },
// 提交修改文件名 // 提交修改文件名
handleSubmit() { handleSubmit() {
@@ -1567,7 +1477,7 @@ export default {
renameFile(params).then((res) => { renameFile(params).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getDataList(); this.getDataList();
this.modalVisible = false; this.modalVisible = false;
} }

View File

@@ -105,13 +105,13 @@
</el-tree> </el-tree>
</div> </div>
<template #footer> <template #footer>
<el-button @click="permModalVisible = false">取消</el-button>
<el-select v-model="openLevel" style="width: 110px; margin-right: 10px" @change="changeOpen"> <el-select v-model="openLevel" style="width: 110px; margin-right: 10px" @change="changeOpen">
<el-option value="0" label="展开所有" /> <el-option value="0" label="展开所有" />
<el-option value="1" label="收合所有" /> <el-option value="1" label="收合所有" />
<el-option value="2" label="仅展开一级" /> <el-option value="2" label="仅展开一级" />
<el-option value="3" label="仅展开两级" /> <el-option value="3" label="仅展开两级" />
</el-select> </el-select>
<el-button @click="permModalVisible = false">取消</el-button>
<el-button type="primary" :loading="submitPermLoading" @click="submitPermEdit()">编辑</el-button> <el-button type="primary" :loading="submitPermLoading" @click="submitPermEdit()">编辑</el-button>
</template> </template>
</el-dialog> </el-dialog>
@@ -148,6 +148,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { import {
getRoleList, getRoleList,
getAllPermissionList, getAllPermissionList,
@@ -280,7 +281,7 @@ export default {
addRole(this.roleForm).then((res) => { addRole(this.roleForm).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getRoleList(); this.getRoleList();
this.roleModalVisible = false; this.roleModalVisible = false;
} }
@@ -291,7 +292,7 @@ export default {
editRole(this.roleForm).then((res) => { editRole(this.roleForm).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getRoleList(); this.getRoleList();
this.roleModalVisible = false; this.roleModalVisible = false;
} }
@@ -329,20 +330,14 @@ export default {
}); });
}, },
remove(v) { remove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除角色 " + v.name + " ?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除角色 " + v.name + " ?",
loading: true,
onOk: () => {
deleteRole(v.id).then((res) => { deleteRole(v.id).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.getRoleList(); this.getRoleList();
} }
}); });
}, }).catch(() => {});
});
}, },
clearSelectAll() { clearSelectAll() {
this.$refs.table?.clearSelection(); this.$refs.table?.clearSelection();
@@ -353,29 +348,23 @@ export default {
}, },
delAll() { delAll() {
if (this.selectCount <= 0) { if (this.selectCount <= 0) {
this.$Message.warning("您还未选择要删除的数据"); ElMessage.warning("您还未选择要删除的数据");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除所选的 " + this.selectCount + " 条数据?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除所选的 " + this.selectCount + " 条数据?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
deleteRole(ids).then((res) => { deleteRole(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.clearSelectAll(); this.clearSelectAll();
this.getRoleList(); this.getRoleList();
} }
}); });
}, }).catch(() => {});
});
}, },
async editPerm(v) { async editPerm(v) {
this.permData.map((item) => { this.permData.map((item) => {
@@ -393,7 +382,7 @@ export default {
}); });
if (this.treeLoading) { if (this.treeLoading) {
this.$Message.warning("菜单权限数据加载中,请稍后点击查看"); ElMessage.warning("菜单权限数据加载中,请稍后点击查看");
return; return;
} }
this.editRolePermId = v.id; this.editRolePermId = v.id;
@@ -462,7 +451,7 @@ export default {
saveRoleMenu(this.editRolePermId, this.saveRoleWay).then((res) => { saveRoleMenu(this.editRolePermId, this.saveRoleWay).then((res) => {
this.superModelLoading = false; this.superModelLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.$store.commit("setAdded", false); this.$store.commit("setAdded", false);
util.initRouter(this); util.initRouter(this);
this.getRoleList(); this.getRoleList();

View File

@@ -32,6 +32,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "../setting/validate"; import { handleSubmit } from "../setting/validate";
@@ -61,9 +62,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -42,6 +42,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "../setting/validate"; import { handleSubmit } from "../setting/validate";
@@ -80,12 +81,10 @@ export default {
qqConnectSettingItemList: this.formValidate, qqConnectSettingItemList: this.formValidate,
}).then((res) => { }).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
this.$Modal.remove(); } else {
} else { ElMessage.error("保存失败!");
this.$Message.error("保存失败!"); }
this.$Modal.remove();
}
}); });
}, },
init() { init() {

View File

@@ -42,6 +42,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "../setting/validate"; import { handleSubmit } from "../setting/validate";
@@ -82,12 +83,10 @@ export default {
wechatConnectSettingItems: this.formValidate, wechatConnectSettingItems: this.formValidate,
}).then((res) => { }).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
this.$Modal.remove(); } else {
} else { ElMessage.error("保存失败!");
this.$Message.error("保存失败!"); }
this.$Modal.remove();
}
}); });
}, },
init() { init() {

View File

@@ -27,6 +27,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "../setting/validate"; import { handleSubmit } from "../setting/validate";
export default { export default {
@@ -59,9 +60,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -38,6 +38,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "../setting/validate"; import { handleSubmit } from "../setting/validate";
import { getPaymentSupportForm } from "@/api/setting"; import { getPaymentSupportForm } from "@/api/setting";
@@ -82,27 +83,19 @@ export default {
.catch(() => {}); .catch(() => {});
}, },
handleChangePayType(val) { handleChangePayType(val) {
this.$Modal.confirm({ ElMessageBox.confirm("您是否修改此项?", "修改支付设置", { type: "warning" }).then(() => {
title: "修改支付设置", this.setupSetting();
content: "您是否修改此项?", }).catch(() => {
loading: true, this.formValidate = JSON.parse(JSON.stringify(this.checkSupport));
onOk: () => {
this.setupSetting();
},
onCancel: () => {
this.formValidate = JSON.parse(JSON.stringify(this.checkSupport));
},
}); });
}, },
setupSetting() { setupSetting() {
setSetting(this.type, { paymentSupportItems: this.formValidate }).then((res) => { setSetting(this.type, { paymentSupportItems: this.formValidate }).then((res) => {
if (res.success) { if (res.success) {
this.checkSupport = JSON.parse(JSON.stringify(this.formValidate)); this.checkSupport = JSON.parse(JSON.stringify(this.formValidate));
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
this.$Modal.remove();
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
this.$Modal.remove();
} }
}); });
}, },

View File

@@ -58,6 +58,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "../setting/validate"; import { handleSubmit } from "../setting/validate";
@@ -84,9 +85,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -130,6 +130,7 @@
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { getParams, editParams } from "@/api/platform.js"; import { getParams, editParams } from "@/api/platform.js";
import uploadPicInput from "@/components/lili/upload-pic-input"; import uploadPicInput from "@/components/lili/upload-pic-input";
import { regular } from "@/utils"; import { regular } from "@/utils";
@@ -446,7 +447,7 @@ export default {
editParams(this.base, "base").then((res) => { editParams(this.base, "base").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -460,7 +461,7 @@ export default {
editParams(this.point, "point").then((res) => { editParams(this.point, "point").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -474,7 +475,7 @@ export default {
editParams(this.order, "order").then((res) => { editParams(this.order, "order").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -488,7 +489,7 @@ export default {
editParams(this.goods, "goods").then((res) => { editParams(this.goods, "goods").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -502,7 +503,7 @@ export default {
editParams(this.wechat, "wechat").then((res) => { editParams(this.wechat, "wechat").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -516,7 +517,7 @@ export default {
editParams(this.qq, "qq").then((res) => { editParams(this.qq, "qq").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -530,7 +531,7 @@ export default {
editParams(this.weibo, "weibo").then((res) => { editParams(this.weibo, "weibo").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }
@@ -544,7 +545,7 @@ export default {
editParams(this.alipay, "alipay").then((res) => { editParams(this.alipay, "alipay").then((res) => {
this.saveLoading = false; this.saveLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("保存成功"); ElMessage.success("保存成功");
} }
}); });
} }

View File

@@ -79,6 +79,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "./validate"; import { handleSubmit } from "./validate";
import ossManage from "@/views/sys/oss-manage/ossManage"; import ossManage from "@/views/sys/oss-manage/ossManage";
@@ -138,12 +139,12 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
localStorage.setItem("icon", this.formValidate.domainLogo); localStorage.setItem("icon", this.formValidate.domainLogo);
window.document.title = this.formValidate.siteName + " - 运营后台"; window.document.title = this.formValidate.siteName + " - 运营后台";
this.setStore("title", this.formValidate.siteName); this.setStore("title", this.formValidate.siteName);
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -68,6 +68,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting, createIndex, getProgress, deleteGoodsDown, generateGoodsCache, delSkuIndex } from "@/api/index"; import { setSetting, createIndex, getProgress, deleteGoodsDown, generateGoodsCache, delSkuIndex } from "@/api/index";
export default { export default {
props: ["res", "type"], props: ["res", "type"],
@@ -98,14 +99,14 @@ export default {
if (valid) { if (valid) {
this.setupSetting(); this.setupSetting();
} else { } else {
this.$Message.error("请正确填写内容!"); ElMessage.error("请正确填写内容!");
} }
}); });
}, },
createIndex() { createIndex() {
createIndex().then((res) => { createIndex().then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("开始生成!"); ElMessage.success("开始生成!");
this.showProgress = true; this.showProgress = true;
setTimeout(() => { setTimeout(() => {
this.intervalProgress = setInterval(() => { this.intervalProgress = setInterval(() => {
@@ -114,7 +115,7 @@ export default {
if (progressResult != null && progressResult.flag === 0) { if (progressResult != null && progressResult.flag === 0) {
clearInterval(this.intervalProgress); clearInterval(this.intervalProgress);
this.showProgress = false; this.showProgress = false;
this.$Message.success("生成成功!"); ElMessage.success("生成成功!");
} else { } else {
this.progressVal = Math.floor((progressResult.processed / progressResult.total) * 100); this.progressVal = Math.floor((progressResult.processed / progressResult.total) * 100);
} }
@@ -129,7 +130,7 @@ export default {
if (progressResult != null && progressResult.flag === 0) { if (progressResult != null && progressResult.flag === 0) {
clearInterval(this.intervalProgress); clearInterval(this.intervalProgress);
this.showProgress = false; this.showProgress = false;
this.$Message.success("生成成功!"); ElMessage.success("生成成功!");
} else { } else {
this.progressVal = Math.floor((progressResult.processed / progressResult.total) * 100); this.progressVal = Math.floor((progressResult.processed / progressResult.total) * 100);
} }
@@ -141,36 +142,36 @@ export default {
deleteDownGoods() { deleteDownGoods() {
deleteGoodsDown().then((res) => { deleteGoodsDown().then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("删除成功!"); ElMessage.success("删除成功!");
} else { } else {
this.$Message.error("删除失败!"); ElMessage.error("删除失败!");
} }
}); });
}, },
generateCache() { generateCache() {
generateGoodsCache().then((res) => { generateGoodsCache().then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("生成成功!"); ElMessage.success("生成成功!");
} else { } else {
this.$Message.error("生成失败!"); ElMessage.error("生成失败!");
} }
}); });
}, },
deleteNotExistIndex() { deleteNotExistIndex() {
delSkuIndex().then((res) => { delSkuIndex().then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("删除成功!"); ElMessage.success("删除成功!");
} else { } else {
this.$Message.error("删除失败!"); ElMessage.error("删除失败!");
} }
}); });
}, },
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -13,6 +13,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import {setSetting} from "@/api/index"; import {setSetting} from "@/api/index";
import {handleSubmit} from "./validate"; import {handleSubmit} from "./validate";
@@ -43,9 +44,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -58,6 +58,7 @@
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
const DEFAULT_FORM = { const DEFAULT_FORM = {
@@ -113,7 +114,7 @@ export default {
if (valid) { if (valid) {
this.setupSetting(); this.setupSetting();
} else { } else {
this.$Message.error("请正确填写内容!"); ElMessage.error("请正确填写内容!");
} }
}); });
}, },
@@ -124,9 +125,9 @@ export default {
}); });
setSetting(this.type, payload).then((res) => { setSetting(this.type, payload).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -48,6 +48,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "./validate"; import { handleSubmit } from "./validate";
export default { export default {
@@ -80,9 +81,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -41,6 +41,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "./validate"; import { handleSubmit } from "./validate";
export default { export default {
@@ -72,9 +73,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -82,6 +82,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import {setSetting} from "@/api/index"; import {setSetting} from "@/api/index";
import {handleSubmit} from "./validate"; import {handleSubmit} from "./validate";
@@ -130,9 +131,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -52,6 +52,7 @@
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "./validate"; import { handleSubmit } from "./validate";
@@ -78,9 +79,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },
@@ -89,9 +90,8 @@ export default {
}, },
addSign() { addSign() {
if (this.formValidate.pointSettingItems.length >= 4) { if (this.formValidate.pointSettingItems.length >= 4) {
this.$Message.error({ ElMessage.error("最多设置4项签到设置",
content: "最多设置4项签到设置", );
});
return false; return false;
} }
this.formValidate.pointSettingItems.push({ this.formValidate.pointSettingItems.push({

View File

@@ -78,6 +78,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import {setSetting} from "@/api/index"; import {setSetting} from "@/api/index";
import {handleSubmit} from "./validate"; import {handleSubmit} from "./validate";
@@ -125,9 +126,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -27,6 +27,7 @@
</div> </div>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { setSetting } from "@/api/index"; import { setSetting } from "@/api/index";
import { handleSubmit } from "./validate"; import { handleSubmit } from "./validate";
export default { export default {
@@ -53,9 +54,9 @@ export default {
setupSetting() { setupSetting() {
setSetting(this.type, this.formValidate).then((res) => { setSetting(this.type, this.formValidate).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
}); });
}, },

View File

@@ -1,3 +1,4 @@
import { ElMessage } from "element-plus";
//表单中必填 //表单中必填
export function validateRequired(rule, value, callback) { export function validateRequired(rule, value, callback) {
if (value !== undefined && value !== null && value !== "") { if (value !== undefined && value !== null && value !== "") {
@@ -12,7 +13,7 @@ export function handleSubmit(that, name) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const form = that.$refs[name]; const form = that.$refs[name];
if (!form) { if (!form) {
that.$Message.error("表单未就绪,请稍后重试"); ElMessage.error("表单未就绪,请稍后重试");
reject(new Error("form ref missing")); reject(new Error("form ref missing"));
return; return;
} }
@@ -20,7 +21,7 @@ export function handleSubmit(that, name) {
if (valid) { if (valid) {
resolve(true); resolve(true);
} else { } else {
that.$Message.error("请正确填写内容!"); ElMessage.error("请正确填写内容!");
reject(new Error("validation failed")); reject(new Error("validation failed"));
} }
}); });

View File

@@ -31,6 +31,7 @@
</el-card> </el-card>
</template> </template>
<script> <script>
import { ElMessage } from "element-plus";
import { getSetting, setSetting } from "@/api/index.js"; import { getSetting, setSetting } from "@/api/index.js";
import template from "./template"; import template from "./template";
export default { export default {
@@ -57,9 +58,9 @@ export default {
saveSetting() { saveSetting() {
setSetting("SMS_SETTING", this.form).then((res) => { setSetting("SMS_SETTING", this.form).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("保存成功!"); ElMessage.success("保存成功!");
} else { } else {
this.$Message.error("保存失败!"); ElMessage.error("保存失败!");
} }
this.modalVisible = false; this.modalVisible = false;
}); });

View File

@@ -102,6 +102,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import * as API_Setting from "@/api/setting"; import * as API_Setting from "@/api/setting";
import uploadPicInput from "@/components/lili/upload-pic-input"; import uploadPicInput from "@/components/lili/upload-pic-input";
@@ -206,7 +207,7 @@ export default {
API_Setting.addVerification(payload).then((res) => { API_Setting.addVerification(payload).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("添加成功"); ElMessage.success("添加成功");
this.getDataList(); this.getDataList();
this.modalVisible = false; this.modalVisible = false;
} }
@@ -215,7 +216,7 @@ export default {
API_Setting.editVerification(this.form.id, this.form).then((res) => { API_Setting.editVerification(this.form.id, this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("修改成功"); ElMessage.success("修改成功");
this.getDataList(); this.getDataList();
this.modalVisible = false; this.modalVisible = false;
} }
@@ -224,18 +225,14 @@ export default {
}); });
}, },
remove(v) { remove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("确认要删除此验证码源?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "确认要删除此验证码源?",
onOk: () => {
return API_Setting.delVerification(v.id).then((res) => { return API_Setting.delVerification(v.id).then((res) => {
if (res.success) { if (res.success) {
this.$Message.success("验证码源已删除"); ElMessage.success("验证码源已删除");
this.getDataList(); this.getDataList();
} }
}); });
}, }).catch(() => {});
});
}, },
}, },
mounted() { mounted() {

View File

@@ -137,6 +137,7 @@
</template> </template>
<script> <script>
import { ElMessage, ElMessageBox } from "element-plus";
import { import {
getUserListData, getUserListData,
getAllRoleList, getAllRoleList,
@@ -262,29 +263,23 @@ export default {
}, },
resetPass() { resetPass() {
if (this.selectCount == 0) { if (this.selectCount == 0) {
this.$Message.warning("请选中数据后重试!"); ElMessage.warning("请选中数据后重试!");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要重置所选的 " + this.selectCount + " 条用户数据密码为【123456】?", "确认重置", { type: "warning" }).then(() => {
title: "确认重置",
content: "您确认要重置所选的 " + this.selectCount + " 条用户数据密码为【123456】?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
resetPassword(ids).then((res) => { resetPassword(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.clearSelectAll(); this.clearSelectAll();
this.getUserList(); this.getUserList();
} }
}); });
}, }).catch(() => {});
});
}, },
submitUser() { submitUser() {
this.$refs.form.validate((valid) => { this.$refs.form.validate((valid) => {
@@ -306,7 +301,7 @@ export default {
addUser(params).then((res) => { addUser(params).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getUserList(); this.getUserList();
this.userModalVisible = false; this.userModalVisible = false;
} }
@@ -316,7 +311,7 @@ export default {
editOtherUser(this.form).then((res) => { editOtherUser(this.form).then((res) => {
this.submitLoading = false; this.submitLoading = false;
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getUserList(); this.getUserList();
this.userModalVisible = false; this.userModalVisible = false;
} }
@@ -369,53 +364,35 @@ export default {
}, },
enable(v) { enable(v) {
let params = { status: true }; let params = { status: true };
this.$Modal.confirm({ ElMessageBox.confirm("您确认要启用用户 " + v.username + " ?", "确认启用", { type: "warning" }).then(() => {
title: "确认启用",
content: "您确认要启用用户 " + v.username + " ?",
loading: true,
onOk: () => {
enableUser(v.id, params).then((res) => { enableUser(v.id, params).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getUserList(); this.getUserList();
} }
}); });
}, }).catch(() => {});
});
}, },
disable(v) { disable(v) {
let params = { status: false }; let params = { status: false };
this.$Modal.confirm({ ElMessageBox.confirm("您确认要禁用用户 " + v.username + " ?", "确认禁用", { type: "warning" }).then(() => {
title: "确认禁用",
content: "您确认要禁用用户 " + v.username + " ?",
loading: true,
onOk: () => {
enableUser(v.id, params).then((res) => { enableUser(v.id, params).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("操作成功"); ElMessage.success("操作成功");
this.getUserList(); this.getUserList();
} }
}); });
}, }).catch(() => {});
});
}, },
remove(v) { remove(v) {
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除用户 " + v.username + " ?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除用户 " + v.username + " ?",
loading: true,
onOk: () => {
deleteUser(v.id).then((res) => { deleteUser(v.id).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.getUserList(); this.getUserList();
} }
}); });
}, }).catch(() => {});
});
}, },
showSelect(e) { showSelect(e) {
this.exportData = e; this.exportData = e;
@@ -427,29 +404,23 @@ export default {
}, },
delAll() { delAll() {
if (this.selectCount <= 0) { if (this.selectCount <= 0) {
this.$Message.warning("您还未选择要删除的数据"); ElMessage.warning("您还未选择要删除的数据");
return; return;
} }
this.$Modal.confirm({ ElMessageBox.confirm("您确认要删除所选的 " + this.selectCount + " 条数据?", "确认删除", { type: "warning" }).then(() => {
title: "确认删除",
content: "您确认要删除所选的 " + this.selectCount + " 条数据?",
loading: true,
onOk: () => {
let ids = ""; let ids = "";
this.selectList.forEach(function (e) { this.selectList.forEach(function (e) {
ids += e.id + ","; ids += e.id + ",";
}); });
ids = ids.substring(0, ids.length - 1); ids = ids.substring(0, ids.length - 1);
deleteUser(ids).then((res) => { deleteUser(ids).then((res) => {
this.$Modal.remove();
if (res.success) { if (res.success) {
this.$Message.success("删除成功"); ElMessage.success("删除成功");
this.clearSelectAll(); this.clearSelectAll();
this.getUserList(); this.getUserList();
} }
}); });
}, }).catch(() => {});
});
}, },
}, },
mounted() { mounted() {