refactor: 统一组件导入与消息提示方式

- 将多个组件中的 require 替换为 import,提升代码一致性。
- 更新消息提示方式,使用统一的 Message 和 Modal 组件,增强用户体验。
- 调整部分组件的样式和逻辑,确保界面一致性与可读性。
This commit is contained in:
田香琪
2026-07-08 18:36:06 +08:00
parent f6ddcf4f99
commit 106e059d1a
63 changed files with 429 additions and 314 deletions

View File

@@ -48,11 +48,7 @@
v-model="bindModalVisible"
title="绑定第三方账户"
:close-on-click-modal="false"
:footer-hide="bindForm.type === 'WECHAT'"
:ok-text="bindModalOkText"
:loading="bindSubmitLoading"
@ok="submitBind"
@cancel="resetBindForm"
@closed="resetBindForm"
>
<el-form label-width="110px">
<el-form-item label="类型">
@@ -67,8 +63,8 @@
<div v-else class="wechatQrEmpty">二维码获取失败请刷新重试</div>
</div>
<div class="wechatQrActions">
<el-button @click="fetchWechatQrCode">刷新二维码</el-button>
<el-button type="primary" @click="submitBind">我已完成绑定</el-button>
<el-button :loading="qrCodeLoading" @click="fetchWechatQrCode">刷新二维码</el-button>
<el-button type="primary" :loading="bindSubmitLoading" @click="submitBind">我已完成绑定</el-button>
</div>
<div class="wechatQrTip">请使用微信扫码关注/授权完成后点击我已完成绑定检测绑定状态</div>
</div>
@@ -78,11 +74,19 @@
<el-input v-model="bindForm.unionID" placeholder="请输入 OpenID/UnionID" />
</el-form-item>
</el-form>
<template v-if="bindForm.type !== 'WECHAT'" #footer>
<el-button @click="bindModalVisible = false">取消</el-button>
<el-button type="primary" :loading="bindSubmitLoading" @click="submitBind">
{{ bindModalOkText }}
</el-button>
</template>
</el-dialog>
</div>
</template>
<script>
import { Message, Modal } from "@/utils/message";
import { Key, Link } from '@element-plus/icons-vue';
// import { getPwdStatus } from '@/api/account';
import storage from '@/plugins/storage'
@@ -186,7 +190,7 @@ export default {
const userId = userInfo && userInfo.id ? String(userInfo.id) : ''
if (!userId) {
this.qrCodeBase64 = ''
this.$Message.error('未获取到当前用户ID请重新登录后重试')
Message.error('未获取到当前用户ID请重新登录后重试')
return
}
this.qrCodeLoading = true
@@ -197,7 +201,7 @@ export default {
return
}
this.qrCodeBase64 = ''
this.$Message.error((res && res.message) || '二维码获取失败')
Message.error((res && res.message) || '二维码获取失败')
})
.catch(() => {
this.qrCodeBase64 = ''
@@ -213,12 +217,12 @@ export default {
this.refreshConnectBinds()
.then(() => {
if (this.isBound(this.bindForm.type)) {
this.$Message.success('绑定成功')
Message.success('绑定成功')
this.bindModalVisible = false
this.resetBindForm()
return
}
this.$Message.warning('暂未检测到绑定,请扫码后重试')
Message.warning('暂未检测到绑定,请扫码后重试')
this.$nextTick(() => {
this.bindModalVisible = true
})
@@ -229,11 +233,11 @@ export default {
return
}
if (!this.bindForm.type) {
this.$Message.error('绑定类型不能为空')
Message.error('绑定类型不能为空')
return
}
if (!this.bindForm.unionID) {
this.$Message.error('OpenID/UnionID 不能为空')
Message.error('OpenID/UnionID 不能为空')
this.$nextTick(() => {
this.bindModalVisible = true
})
@@ -243,7 +247,7 @@ export default {
this.bindSubmitLoading = true
bindThirdAccount({ unionID: this.bindForm.unionID, type: this.bindForm.type })
.then(() => {
this.$Message.success('绑定成功')
Message.success('绑定成功')
this.bindModalVisible = false
this.resetBindForm()
this.refreshConnectBinds()
@@ -253,12 +257,12 @@ export default {
})
},
confirmUnbind (item) {
this.$Modal.confirm({
Modal.confirm({
title: '解绑确认',
content: `<p>确定解绑 ${item.label} 吗?</p>`,
onOk: () => {
unbindThirdAccount({ type: item.type }).then(() => {
this.$Message.success('解绑成功')
Message.success('解绑成功')
this.refreshConnectBinds()
})
}

View File

@@ -5,11 +5,11 @@
<div class="order">
<div class="order-title">
<div class="order-row title">
<div span="10" class="order-detail-title">订单详情</div>
<div span="4">收货人</div>
<div span="4">评价等级</div>
<div span="4">评价内容</div>
<div span="2"></div>
<div class="order-detail-title col-10">订单详情</div>
<div class="col-4">收货人</div>
<div class="col-4">评价等级</div>
<div class="col-4">评价内容</div>
<div class="col-2"></div>
</div>
</div>
<empty v-if="list.length === 0" />
@@ -22,7 +22,7 @@
<span class="hover-pointer fontsize_12 eval-detail" @click="evaluateDetail(item.id)">评价详情</span>
</div>
<div class="order-item-view">
<div span="10" class="item-view-name">
<div class="item-view-name col-10">
<div class="order-img hover-color" @click="linkTo(`/goodsDetail?goodsId=${item.goodsId}&skuId=${item.skuId}`)">
<img :src="item.goodsImage" alt="" />
</div>
@@ -30,11 +30,11 @@
{{item.goodsName}}
</div>
</div>
<div span="4">{{ $filters.secrecyMobile(item.createBy ) }}</div>
<div span="4">
<div class="col-4">{{ $filters.secrecyMobile(item.createBy ) }}</div>
<div class="col-4">
{{item.grade==='GOOD'?'好评' : item.grade === 'WORSE'?'差评' : '中评'}}
</div>
<div span="4">
<div class="col-4">
<el-tooltip>
<div class="content">{{item.content}}</div>
<template #content>
@@ -44,7 +44,7 @@
</template>
</el-tooltip>
</div>
<div span="2"></div>
<div class="col-2"></div>
</div>
</div>
</div>
@@ -52,9 +52,9 @@
</div>
<!-- 分页 -->
<div class="page-size">
<el-pagination :total="total" @current-change="changePageNum"
@size-change="changePageSize"
:page-size="params.pageSize" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
<el-pagination v-model:current-page="params.pageNumber" v-model:page-size="params.pageSize"
:total="total" @current-change="changePageNum"
@size-change="changePageSize" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</div>
</UserCenterLayout>
</div>
@@ -151,32 +151,32 @@ export default {
display: flex;
align-items: center;
> [span] {
> [class*='col-'] {
box-sizing: border-box;
padding: 0 8px;
}
> [span='12'] {
> .col-12 {
flex: 0 0 50%;
max-width: 50%;
}
> [span='10'] {
> .col-10 {
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
> [span='4'] {
> .col-4 {
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
> [span='2'] {
> .col-2 {
flex: 0 0 8.333333%;
max-width: 8.333333%;
}
> [span='6'] {
> .col-6 {
flex: 0 0 25%;
max-width: 25%;
}

View File

@@ -122,6 +122,7 @@
</div>
</template>
<script>
import { Message } from "@/utils/message";
import { View } from '@element-plus/icons-vue';
import {getComplainDetail} from '@/api/member.js';
import {communication} from '@/api/order';
@@ -170,7 +171,7 @@ export default {
// 回复消息
handleSubmit () {
if (this.params.content === '') {
this.$Message.error('请填写对话内容');
Message.error('请填写对话内容');
return;
}
this.submitLoading = true;
@@ -178,7 +179,7 @@ export default {
communication(this.params).then((res) => {
this.submitLoading = false;
if (res.success) {
this.$Message.success('对话成功');
Message.success('对话成功');
this.params.content = '';
this.getDetail();
}

View File

@@ -5,11 +5,11 @@
<div class="order">
<div class="order-title">
<div class="order-row title">
<div span="10" class="order-detail-title">商品信息</div>
<div span="4">投诉状态</div>
<div span="4">投诉主题</div>
<div span="4">投诉内容</div>
<div span="2"></div>
<div class="order-detail-title col-10">商品信息</div>
<div class="col-4">投诉状态</div>
<div class="col-4">投诉主题</div>
<div class="col-4">投诉内容</div>
<div class="col-2"></div>
</div>
</div>
<empty v-if="list.length === 0" />
@@ -23,7 +23,7 @@
<span class="hover-pointer fontsize_12 eval-detail" style="right: 90px" v-if="item.complainStatus === 'APPLYING' || item.complainStatus === 'NEW'" @click="cancel(item.id)">取消投诉</span>
</div>
<div class="order-item-view">
<div span="10" class="item-view-name">
<div class="item-view-name col-10">
<div class="order-img hover-color" @click="linkTo(`/goodsDetail?goodsId=${item.goodsId}&skuId=${item.skuId}`)">
<img :src="item.goodsImage" alt="" />
</div>
@@ -31,11 +31,11 @@
{{item.goodsName}}
</div>
</div>
<div span="4">{{statusLabel[item.complainStatus]}}</div>
<div span="4">
<div class="col-4">{{statusLabel[item.complainStatus]}}</div>
<div class="col-4">
<div class="content">{{item.complainTopic}}</div>
</div>
<div span="4">
<div class="col-4">
<el-tooltip>
<div class="content">{{item.content}}</div>
<template #content>
@@ -45,7 +45,7 @@
</template>
</el-tooltip>
</div>
<div span="2"></div>
<div class="col-2"></div>
</div>
</div>
</div>
@@ -53,15 +53,16 @@
</div>
<!-- 分页 -->
<div class="page-size">
<el-pagination :total="total" @current-change="changePageNum"
@size-change="changePageSize"
:page-size="params.pageSize" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
<el-pagination v-model:current-page="params.pageNumber" v-model:page-size="params.pageSize"
:total="total" @current-change="changePageNum"
@size-change="changePageSize" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</div>
</UserCenterLayout>
</div>
</template>
<script>
import { Message, Modal } from "@/utils/message";
import {complainList, clearComplain} from '@/api/member.js';
export default {
name: 'ComplainList',
@@ -107,13 +108,13 @@ export default {
this.getList()
},
cancel (id) { // 取消投诉
this.$Modal.confirm({
Modal.confirm({
title: '取消投诉',
content: '确定取消投诉吗?',
onOk: () => {
clearComplain(id).then((res) => {
if (res.success) {
this.$Message.success('取消投诉成功');
Message.success('取消投诉成功');
this.getList();
}
});
@@ -167,22 +168,22 @@ export default {
display: flex;
align-items: center;
> [span] {
> [class*='col-'] {
box-sizing: border-box;
padding: 0 8px;
}
> [span='10'] {
> .col-10 {
flex: 0 0 41.666667%;
max-width: 41.666667%;
}
> [span='4'] {
> .col-4 {
flex: 0 0 16.666667%;
max-width: 16.666667%;
}
> [span='2'] {
> .col-2 {
flex: 0 0 8.333333%;
max-width: 8.333333%;
}

View File

@@ -99,11 +99,13 @@
</el-table-column>
</el-table>
<div class="page-size">
<el-pagination :current-page="params.pageNumber"
<el-pagination v-model:current-page="params.pageNumber"
:total="goodsData.total"
:page-size="params.pageSize"
v-model:page-size="params.pageSize"
:page-sizes="[10, 20, 50]"
@current-change="changePage"
layout="total, prev, pager, next, jumper"></el-pagination>
@size-change="changePageSize"
layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</div>
</el-tab-pane>
<el-tab-pane label="未选商品" name="goodsUncheck">
@@ -136,11 +138,13 @@
</el-table-column>
</el-table>
<div class="page-size">
<el-pagination :current-page="params.pageNumber"
<el-pagination v-model:current-page="params.pageNumber"
:total="goodsData.total"
:page-size="params.pageSize"
v-model:page-size="params.pageSize"
:page-sizes="[10, 20, 50]"
@current-change="changePage"
layout="total, prev, pager, next, jumper"></el-pagination>
@size-change="changePageSize"
layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</div>
</el-tab-pane>
<el-tab-pane label="提现记录" name="log">
@@ -172,11 +176,13 @@
</el-table-column>
</el-table>
<div class="page-size">
<el-pagination :current-page="logParams.pageNumber"
<el-pagination v-model:current-page="logParams.pageNumber"
:total="logData.total"
:page-size="logParams.pageSize"
v-model:page-size="logParams.pageSize"
:page-sizes="[10, 20, 50]"
@current-change="changePageLog"
layout="total, prev, pager, next, jumper"></el-pagination>
@size-change="changePageSizeLog"
layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</div>
</el-tab-pane>
</el-tabs>
@@ -256,6 +262,7 @@
</template>
<script>
import { Message } from "@/utils/message";
import { Edit } from '@element-plus/icons-vue';
import {
distribution,
@@ -268,12 +275,13 @@ import {
import { IDCard } from "@/plugins/RegExp.js";
import { checkBankno } from "@/plugins/Foundation";
import vueQr from "vue-qr";
import config from "@/config";
export default {
name: "Distribution",
components: { vueQr, Edit },
data() {
return {
config:require('@/config'),
config,
status: 0, // 申请状态0为未申请 1 申请中 2 申请完成 3 功能暂未开启
applyForm: {}, // 申请表单
rules: {
@@ -320,18 +328,18 @@ export default {
params: {
// 商品请求参数
pageNumber: 1,
pageSize: 20,
pageSize: 10,
checked: true,
},
orderParams: {
// 订单商品请求参数
pageNumber: 1,
pageSize: 20,
pageSize: 10,
},
logParams: {
// 日志参数
pageNumber: 1,
pageSize: 20,
pageSize: 10,
sort: "createTime",
order: "desc",
},
@@ -355,7 +363,7 @@ export default {
applyDistribution(this.applyForm).then((res) => {
this.applyLoading = false;
if (res.success) {
this.$Message.success("申请已提交,请等待管理员审核");
Message.success("申请已提交,请等待管理员审核");
this.status = 1;
}
});
@@ -377,21 +385,21 @@ export default {
withdraw() {
const price = Number(this.withdrawPrice);
if (!price || price < 1) {
this.$Message.error('提现金额单次最少提现金额为1元');
Message.error('提现金额单次最少提现金额为1元');
return;
}
distCash({ price: this.withdrawPrice }).then((res) => {
if (res.success) {
this.withdrawApplyModal = false;
this.withdrawPrice = 0;
this.$Message.success('申请已提交,请等待审核');
Message.success('申请已提交,请等待审核');
this.distribution();
this.getLog();
} else {
this.$Message.error(this.normalizeWithdrawError(res.message));
Message.error(this.normalizeWithdrawError(res.message));
}
}).catch((err) => {
this.$Message.error(this.normalizeWithdrawError(err?.message || err?.data?.message));
Message.error(this.normalizeWithdrawError(err?.message || err?.data?.message));
});
},
qrcodeData(data64) {
@@ -437,11 +445,23 @@ export default {
this.params.pageNumber = val;
this.getGoodsData();
},
changePageSize(val) {
// 修改每页条数
this.params.pageNumber = 1;
this.params.pageSize = val;
this.getGoodsData();
},
changePageLog(val) {
// 修改页码 日志
this.logParams.pageNumber = val;
this.getLog();
},
changePageSizeLog(val) {
// 修改每页条数 日志
this.logParams.pageNumber = 1;
this.logParams.pageSize = val;
this.getLog();
},
selectGoods(id, checked) {
// 选择商品
let params = {
@@ -450,7 +470,7 @@ export default {
};
selectDistGoods(params).then((res) => {
if (res.success) {
this.$Message.success("操作成功!");
Message.success("操作成功!");
this.getGoodsData();
}
});
@@ -479,7 +499,7 @@ export default {
applyDistribution().then((res) => {
this.applyLoading = false;
if (res.success) {
this.$Message.success("申诉已提交,请等待管理员审核");
Message.success("申诉已提交,请等待管理员审核");
// this.status = 1;
}
});

View File

@@ -79,6 +79,7 @@
</template>
<script>
import { Modal } from "@/utils/message";
import { collectList, cancelCollect, storeCollectList, cancelStoreCollect } from '@/api/member.js'
export default {
name: 'Favorites',
@@ -145,7 +146,7 @@ export default {
},
cancel(id) { // 取消收藏
let typeName = this.params.type === 'GOODS' ? '商品' : '店铺'
this.$Modal.confirm({
Modal.confirm({
title: '取消收藏',
content: `确定取消收藏该${typeName}吗?`,
onOk: () => {
@@ -159,7 +160,7 @@ export default {
},
cancelStore(id) { // 取消收藏
let typeName = this.params.type === 'GOODS' ? '商品' : '店铺'
this.$Modal.confirm({
Modal.confirm({
title: '取消收藏',
content: `确定取消收藏该${typeName}吗?`,
onOk: () => {

View File

@@ -67,9 +67,9 @@
</el-table>
<div class="grade-pagination">
<el-pagination
:current-page="params.pageNumber"
v-model:current-page="params.pageNumber"
v-model:page-size="params.pageSize"
:total="experienceLogs.total || 0"
:page-size="params.pageSize"
@current-change="changePage"
@size-change="changePageSize"
:page-sizes="[10, 20, 50]"

View File

@@ -74,6 +74,7 @@
</template>
<script>
import { Message } from "@/utils/message";
import { Lock } from '@element-plus/icons-vue';
import {
setPwd,
@@ -152,7 +153,7 @@ export default {
if (valid) {
const {newPassword, againPassword, password} = this.formRegister
if (newPassword !== againPassword) {
this.$Message.error({
Message.error({
content: '新密码和确认密码不一致'
});
return
@@ -162,13 +163,13 @@ export default {
params.password = md5(password)
editPwd(params).then(res => {
if (res.success && res.result) {
this.$Message.success('修改密码成功');
Message.success('修改密码成功');
this.$router.push('/home')
} else {
this.$Message.error(this.normalizePwdError(res.message));
Message.error(this.normalizePwdError(res.message));
}
}).catch((err) => {
this.$Message.error(this.normalizePwdError(err?.message || err?.data?.message));
Message.error(this.normalizePwdError(err?.message || err?.data?.message));
});
}
})
@@ -187,13 +188,13 @@ export default {
if (valid) {
const {newPassword, againPassword} = this.formDataUpdate
if (newPassword === '') {
this.$Message.error({
Message.error({
content: '请输入密码'
});
return
}
if (newPassword !== againPassword) {
this.$Message.error({
Message.error({
content: '新密码和确认密码不一致'
});
return
@@ -202,7 +203,7 @@ export default {
params.password = md5(newPassword)
setPwd(params).then(res => {
if (res.message === 'success' && res.result) {
this.$Message.success('支付密码设置成功');
Message.success('支付密码设置成功');
this.$router.push('/home')
}
});

View File

@@ -20,9 +20,9 @@
<!-- 分页 -->
<div class="point-pagination">
<el-pagination
:current-page="params.pageNumber"
v-model:current-page="params.pageNumber"
v-model:page-size="params.pageSize"
:total="logData.total"
:page-size="params.pageSize"
@current-change="changePage"
@size-change="changePageSize"
:page-sizes="[10, 20, 50]"

View File

@@ -45,6 +45,7 @@
</template>
<script>
import { Message } from "@/utils/message";
import { editMemberInfo } from '@/api/account.js';
import { commonUrl } from '@/plugins/request.js';
import storage from '@/plugins/storage.js';
@@ -104,7 +105,7 @@ export default {
}
editMemberInfo(params).then(res => {
if (res.success) {
this.$Message.success('修改个人资料成功')
Message.success('修改个人资料成功')
storage.setItem('userInfo', res.result)
this.$router.go(0)
}

View File

@@ -75,6 +75,7 @@
</div>
</template>
<script>
import { Message, Notice } from "@/utils/message";
import { Camera, Delete, View } from '@element-plus/icons-vue';
import { orderDetail } from '@/api/order.js';
import { addEvaluation } from '@/api/member.js';
@@ -109,17 +110,17 @@ export default {
},
save () { // 保存评价
if (!this.form.serviceScore || !this.form.deliveryScore) {
this.$Message.warning('物流服务评价不能为空')
Message.warning('物流服务评价不能为空')
return false;
}
if (!this.form.descriptionScore) {
this.$Message.warning('描述评价不能为空')
Message.warning('描述评价不能为空')
return false;
}
if (!this.orderGoods.content || !String(this.orderGoods.content).trim()) {
this.$Message.warning('评论内容不能为空')
Message.warning('评论内容不能为空')
return false;
}
@@ -139,14 +140,14 @@ export default {
addEvaluation(params).then(res => {
this.loading = false
if (res.success) {
this.$Message.success('评价成功')
Message.success('评价成功')
this.$router.push('/home/CommentList')
} else {
this.$Message.error(res.message || '评价失败,请稍后重试')
Message.error(res.message || '评价失败,请稍后重试')
}
}).catch((err) => {
this.loading = false;
this.$Message.error(err?.message || '评价失败,请稍后重试')
Message.error(err?.message || '评价失败,请稍后重试')
})
},
goGoodsDetail (skuId, goodsId) { // 跳转商品详情
@@ -171,7 +172,7 @@ export default {
handleBeforeUpload () { // 上传之前钩子
const check = this.orderGoods.uploadList.length < 9;
if (!check) {
this.$Notice.warning({
Notice.warning({
title: '最多可以上传九张图片'
});
return check;

View File

@@ -31,9 +31,9 @@
</el-table>
<div class="msg-pagination">
<el-pagination
:current-page="params.pageNumber"
v-model:current-page="params.pageNumber"
v-model:page-size="params.pageSize"
:total="messageData.total"
:page-size="params.pageSize"
@current-change="changePage"
@size-change="changePageSize"
:page-sizes="[10, 20, 50]"
@@ -44,6 +44,7 @@
</div>
</template>
<script>
import { Message, Modal } from "@/utils/message";
import {memberMsgList, readMemberMsg, delMemberMsg} from '@/api/member.js'
export default {
data() {
@@ -94,19 +95,17 @@ export default {
})
},
removeMessage (id) {
this.$Modal.confirm({
Modal.confirm({
title: '确认删除',
content: '确认要删除此消息?',
loading: true,
onOk: () => {
onOk: () =>
delMemberMsg(id).then((res) => {
this.$Modal.remove();
if (res.success) {
this.$Message.success('消息已成功放入回收站');
Message.success('消息已成功放入回收站');
this.getList();
}
});
},
}),
});
}
},

View File

@@ -70,9 +70,9 @@
</div>
<!-- 分页 -->
<div class="page-size">
<el-pagination :total="total" @current-change="changePageNum"
@size-change="changePageSize"
:page-size="params.pageSize" layout="sizes, prev, pager, next, jumper"></el-pagination>
<el-pagination v-model:current-page="params.pageNumber" v-model:page-size="params.pageSize"
:total="total" @current-change="changePageNum"
@size-change="changePageSize" layout="sizes, prev, pager, next, jumper"></el-pagination>
</div>
</UserCenterLayout>
<el-dialog v-model="logisticsShow" width="530">
@@ -123,6 +123,7 @@
</template>
<script>
import { Message, Modal } from "@/utils/message";
import {afterSaleList, cancelAfterSale} from '@/api/member.js';
import {afterSaleDelivery, getLogisticsCompany} from '@/api/order.js';
import {afterSaleStatusList} from '../enumeration.js'
@@ -171,13 +172,13 @@ export default {
})
},
cancel(sn) { // 取消售后申请
this.$Modal.confirm({
Modal.confirm({
title: '取消',
content: '确定取消此次售后申请吗?',
onOk: () => {
cancelAfterSale(sn).then(res => {
if (res.success) {
this.$Message.success('取消售后申请成功')
Message.success('取消售后申请成功')
this.getList()
}
})
@@ -244,7 +245,7 @@ export default {
afterSaleDelivery(this.form).then(res => {
if (res.success) {
this.logisticsShow = false;
this.$Message.success('提交成功');
Message.success('提交成功');
this.getList();
}
this.submitLoading = false;

View File

@@ -114,6 +114,7 @@
</div>
</template>
<script>
import { Message, Modal } from "@/utils/message";
import { afterSaleDetail, afterSaleLog, afterSaleReason, cancelAfterSale } from '@/api/member.js';
import { afterSaleDelivery, getLogisticsCompany } from '@/api/order.js';
import { afterSaleStatusList } from '../enumeration.js'
@@ -182,13 +183,13 @@ export default {
window.open(img, '_blank')
},
cancel (sn) { // 取消售后申请
this.$Modal.confirm({
Modal.confirm({
title: '取消',
content: '<p>确定取消此次售后申请吗?</p>',
onOk: () => {
cancelAfterSale(sn).then(res => {
if (res.success) {
this.$Message.success('取消售后申请成功')
Message.success('取消售后申请成功')
this.getDetail()
}
})
@@ -210,7 +211,7 @@ export default {
afterSaleDelivery(this.form).then(res => {
if (res.success) {
this.logisticsShow = false;
this.$Message.success('提交成功')
Message.success('提交成功')
this.getDetail()
}
this.submitLoading = false

View File

@@ -102,6 +102,7 @@
</div>
</template>
<script>
import { Message, Notice } from "@/utils/message";
import { Camera, Delete, View } from '@element-plus/icons-vue';
import { afterSaleReason, afterSaleInfo, applyAfterSale } from '@/api/member.js'
import { commonUrl } from '@/plugins/request.js';
@@ -186,7 +187,7 @@ export default {
params.reason = this.reasonList.find(item => item.id == params.reason).reason
applyAfterSale(params).then(res => {
if (res.success) {
this.$Message.success('售后申请提交成功,请到售后订单查看!')
Message.success('售后申请提交成功,请到售后订单查看!')
this.$router.push({name: 'AfterSale'})
}
})
@@ -208,7 +209,7 @@ export default {
handleBeforeUpload () { // 上传之前钩子函数
const check = this.uploadList.length < 6;
if (!check) {
this.$Notice.warning({
Notice.warning({
title: '最多可以上传5张图片'
});
return check;

View File

@@ -62,6 +62,7 @@
</div>
</template>
<script>
import { Message, Notice } from "@/utils/message";
import { Camera, Delete, View } from '@element-plus/icons-vue';
import { orderDetail } from '@/api/order.js';
import { afterSaleReason, handleComplain } from '@/api/member.js';
@@ -111,7 +112,7 @@ export default {
}
handleComplain(params).then(res => {
if (res.success) {
this.$Message.success('投诉申请已提交,感谢您的反馈')
Message.success('投诉申请已提交,感谢您的反馈')
this.$router.push({name: 'ComplainList'})
}
})
@@ -138,7 +139,7 @@ export default {
handleBeforeUpload () { // 上传之前钩子函数
const check = this.orderGoods.uploadList.length < 6;
if (!check) {
this.$Notice.warning({
Notice.warning({
title: '最多可以上传五张图片'
});
return check;

View File

@@ -36,6 +36,7 @@
</template>
<script>
import { Message, Modal } from "@/utils/message";
import { Delete, Edit } from '@element-plus/icons-vue';
import { memberAddress, delMemberAddress } from '@/api/address.js';
@@ -58,19 +59,19 @@ export default {
},
del (id) {
// 删除地址
this.$Modal.confirm({
Modal.confirm({
title: '提示',
content: '你确定删除这个收货地址',
onOk: () => {
delMemberAddress(id).then((res) => {
if (res.success) {
this.$Message.success('删除成功');
Message.success('删除成功');
this.getAddrList();
}
});
},
onCancel: () => {
this.$Message.info('取消删除');
Message.info('取消删除');
}
});
},

View File

@@ -83,9 +83,9 @@
<!-- 分页 -->
<div class="page-size">
<el-pagination :total="total" @current-change="changePageNum"
@size-change="changePageSize"
:page-size="params.pageSize" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
<el-pagination v-model:current-page="params.pageNumber" v-model:page-size="params.pageSize"
:total="total" @current-change="changePageNum"
@size-change="changePageSize" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
</div>
</UserCenterLayout>
@@ -176,6 +176,7 @@
</template>
<script>
import { Message, Modal } from "@/utils/message";
import { getOrderList, sureReceived, cancelOrder, delOrder } from '@/api/order';
import { afterSaleReason } from '@/api/member';
import { orderStatusList } from '../enumeration.js'
@@ -276,7 +277,7 @@ export default {
received (sn) { // 确认收货
sureReceived(sn).then(res => {
if (res.success) {
this.$Message.success('确认收货成功')
Message.success('确认收货成功')
this.getList()
}
})
@@ -309,13 +310,13 @@ export default {
this.$router.push({name: 'Complain', query: {sn, index: goodsIndex}})
},
delOrder (sn) { // 删除订单
this.$Modal.confirm({
Modal.confirm({
title: '删除订单',
content: '<p>确认删除当前订单吗?</p>',
onOk: () => {
delOrder(sn).then(res => {
if (res.success) {
this.$Message.success('删除成功');
Message.success('删除成功');
this.getList()
}
})
@@ -360,7 +361,7 @@ export default {
sureCancel () { // 确定取消
cancelOrder(this.cancelParams).then(res => {
if (res.success) {
this.$Message.success('取消订单成功')
Message.success('取消订单成功')
this.getList()
this.cancelAvail = false
}

View File

@@ -264,7 +264,8 @@
<dd><div class="text-box">{{ order.order.sn }}</div></dd>
</dl>
</div>
<div v-if="orderPackage.length > 0" v-for="(packageItem, packageIndex) in orderPackage" :key="packageIndex">
<template v-if="orderPackage.length > 0">
<div v-for="(packageItem, packageIndex) in orderPackage" :key="packageIndex">
<div class="layui-layer-wrap">
<dl><dt>物流公司:</dt>
<dd><div class="text-box">{{ packageItem.logisticsName }}</div></dd>
@@ -292,6 +293,7 @@
</div>
</div>
</div>
</template>
<div v-if = "orderPackage.length == 0 && logistics">
<div class="layui-layer-wrap">
<dl>
@@ -322,6 +324,7 @@
</div>
</template>
<script>
import { Message } from "@/utils/message";
import {
orderDetail,
getTraces,
@@ -390,7 +393,7 @@ export default {
viewReceiptInvoice (receipt) {
const invoiceAddress = this.getInvoiceAddress(receipt);
if (!invoiceAddress) {
this.$Message.warning("暂无发票附件");
Message.warning("暂无发票附件");
return;
}
window.open(invoiceAddress, "_blank");
@@ -477,7 +480,7 @@ export default {
// 确认收货
sureReceived(sn).then((res) => {
if (res.success) {
this.$Message.success("确认收货成功");
Message.success("确认收货成功");
this.getDetail();
}
});
@@ -519,7 +522,7 @@ export default {
// 确定取消
cancelOrder(this.cancelParams).then((res) => {
if (res.success) {
this.$Message.success("取消订单成功");
Message.success("取消订单成功");
this.getDetail();
this.cancelAvail = false;
}
@@ -695,15 +698,15 @@ table {
.layui-layer-wrap > .div-express-log {
max-height: 300px;
}
:deep .layui-layer-wrap > .div-express-log::-webkit-scrollbar{
:deep(.layui-layer-wrap > .div-express-log::-webkit-scrollbar){
width: 1px;
height: 5px;
}
:deep .layui-layer-wrap > .div-express-log::-webkit-scrollbar-thumb{
:deep(.layui-layer-wrap > .div-express-log::-webkit-scrollbar-thumb){
border-radius: 1em;
background-color: rgba(50,50,50,.3);
}
:deep .layui-layer-wrap > .div-express-log::-webkit-scrollbar-track{
:deep(.layui-layer-wrap > .div-express-log::-webkit-scrollbar-track){
border-radius: 1em;
background-color: rgba(50,50,50,.1);
}
@@ -727,7 +730,6 @@ table {
.time {
width: 30%;
display: inline-block;
float: left;
}

View File

@@ -37,10 +37,11 @@
</ul>
<div class="pageration">
<el-pagination
v-model:current-page="params.pageNumber"
v-model:page-size="params.pageSize"
:total="total"
@current-change="changePageNum"
@size-change="changePageSize"
:page-size="params.pageSize"
layout="total, sizes, prev, pager, next, jumper"
/>
</div>

View File

@@ -102,8 +102,8 @@
</el-table>
<!-- 分页 -->
<div class="page-size">
<el-pagination :current-page="walletForm.pageNumber"
:page-size="walletForm.pageSize"
<el-pagination v-model:current-page="walletForm.pageNumber"
v-model:page-size="walletForm.pageSize"
:page-sizes="[10, 20, 50]"
:total="logColumnsData.total"
@current-change="changePage"
@@ -140,8 +140,8 @@
</el-table>
<!-- 分页 -->
<div class="page-size">
<el-pagination :current-page="rechargeForm.pageNumber"
:page-size="rechargeForm.pageSize"
<el-pagination v-model:current-page="rechargeForm.pageNumber"
v-model:page-size="rechargeForm.pageSize"
:page-sizes="[10, 20, 50]"
:total="rechargeListData.total"
@current-change="rechargeChangePage"
@@ -174,8 +174,8 @@
</el-table>
<!-- 分页 -->
<div class="page-size">
<el-pagination :current-page="withdrawApplyForm.pageNumber"
:page-size="withdrawApplyForm.pageSize"
<el-pagination v-model:current-page="withdrawApplyForm.pageNumber"
v-model:page-size="withdrawApplyForm.pageSize"
:page-sizes="[10, 20, 50]"
:total="withdrawApplyColumnsListData.total"
@current-change="withdrawChangePage"
@@ -189,6 +189,7 @@
</template>
<script>
import { Message } from "@/utils/message";
import {getDepositLog, getMembersWallet, getRecharge, getWithdrawApply, recharge, withdrawalApply} from '@/api/member';
import {withdrawalSettingVO} from "@/api/pay";
import { Edit } from '@element-plus/icons-vue';
@@ -398,7 +399,7 @@ export default {
if (valid) {
withdrawalApply(this.withdrawApplyFormData).then((res) => {
if (res && res.success) {
this.$Message.success('提现申请成功,关注提现状态');
Message.success('提现申请成功,关注提现状态');
this.withdrawApplyModal = false;
this.init(); // 余额查询
this.getWithdrawApplyData(); // 提现记录

View File

@@ -73,8 +73,8 @@
</div>
<div class="page-size">
<el-pagination :current-page="params.pageNumber"
:page-size="params.pageSize"
<el-pagination v-model:current-page="params.pageNumber"
v-model:page-size="params.pageSize"
:page-sizes="[10, 20, 50]"
:total="total"
@current-change="changePage"
@@ -82,7 +82,7 @@
layout="total, sizes, prev, pager, next, jumper" />
</div>
<el-dialog v-model="noticeModal" title="使用须知" footer-hide width="520">
<el-dialog v-model="noticeModal" title="使用须知" width="520">
<p class="gcc-notice-text">
请在有效期内使用本礼品卡消费时将优先使用卡内余额具体使用范围以活动规则为准如有疑问请联系客服
</p>
@@ -94,6 +94,7 @@
</template>
<script>
import { Message } from "@/utils/message";
import {
getGiftCardCashMemberCardPage,
bindGiftCardCashMemberCard,
@@ -231,7 +232,7 @@ export default {
.then((res) => {
this.bindSubmitting = false;
if (res.success) {
this.$Message.success(res.message || "兑换成功");
Message.success(res.message || "兑换成功");
this.resetBindForm();
this.params.pageNumber = 1;
this.getList();
@@ -249,14 +250,14 @@ export default {
if (this.statusTab === "PENDING_ACTIVATION") {
const memberCardId = this.resolveMemberCardId(item);
if (!memberCardId) {
this.$Message.error("卡片信息异常,无法激活");
Message.error("卡片信息异常,无法激活");
return;
}
this.activatingId = memberCardId;
activateGiftCardCashMemberCard(memberCardId)
.then((res) => {
if (res.success) {
this.$Message.success(res.message || "激活成功");
Message.success(res.message || "激活成功");
this.getList();
}
})

View File

@@ -23,9 +23,9 @@
<!-- 分页 -->
<div class="page-size">
<el-pagination
v-model:current-page="params.pageNumber"
v-model:page-size="params.pageSize"
:total="total"
:current-page="params.pageNumber"
:page-size="params.pageSize"
:page-sizes="[10, 20, 30, 40, 50, 100]"
layout="sizes, prev, pager, next, jumper"
@current-change="changePageNum"
@@ -37,6 +37,7 @@
</template>
<script>
import { Message, Modal } from "@/utils/message";
import { Delete } from '@element-plus/icons-vue';
import { tracksList, clearTracks, clearTracksById } from "@/api/member";
export default {
@@ -77,13 +78,13 @@ export default {
},
clearAll() {
// 清除全部足迹
this.$Modal.confirm({
Modal.confirm({
title: "删除",
content: "<p>确定要删除全部足迹吗?</p>",
onOk: () => {
clearTracks().then((res) => {
if (res.success) {
this.$Message.success("删除成功");
Message.success("删除成功");
this.getList();
}
});
@@ -95,7 +96,7 @@ export default {
// 清除全部足迹
clearTracksById(id).then((res) => {
if (res.success) {
this.$Message.success("删除成功");
Message.success("删除成功");
this.getList();
}
});