管理端注释添加完成
parent
59e1aedbf3
commit
eb4a5e4fdc
|
@ -34,7 +34,6 @@ body {
|
|||
height: 100%;
|
||||
background: #f0f0f0;
|
||||
font-size: 12px;
|
||||
/* overflow: hidden; */
|
||||
}
|
||||
|
||||
.app-main {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
<style lang="scss">
|
||||
@import "./main.scss";
|
||||
</style>
|
||||
|
||||
<template>
|
||||
<div class="main">
|
||||
<!-- 左侧菜单 -->
|
||||
|
@ -94,10 +93,7 @@ export default {
|
|||
},
|
||||
lang() {
|
||||
return this.$store.state.app.lang;
|
||||
},
|
||||
mesCount() {
|
||||
return 0;
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
|
|
@ -59,7 +59,6 @@ import {
|
|||
} from "@/api/index";
|
||||
export default {
|
||||
name: "customWords",
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
loading: true, // 表单加载状态
|
||||
|
@ -83,7 +82,7 @@ export default {
|
|||
name: [
|
||||
{
|
||||
required: true,
|
||||
message: "请输入敏感词",
|
||||
message: "请输入自定义分词",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
|
@ -180,37 +179,23 @@ export default {
|
|||
this.clearSelectAll();
|
||||
},
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = v;
|
||||
this.getDataList();
|
||||
},
|
||||
handleSearch() {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = 10;
|
||||
this.getDataList();
|
||||
},
|
||||
handleReset() {
|
||||
this.$refs.searchForm.resetFields();
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = 10;
|
||||
// 重新加载数据
|
||||
this.getDataList();
|
||||
},
|
||||
changeSort(e) {
|
||||
this.searchForm.sort = e.key;
|
||||
this.searchForm.order = e.order;
|
||||
if (e.order === "normal") {
|
||||
this.searchForm.order = "";
|
||||
}
|
||||
this.getDataList();
|
||||
},
|
||||
clearSelectAll() {
|
||||
this.$refs.table.selectAll(false);
|
||||
},
|
||||
// 选中状态变更
|
||||
changeSelect(e) {
|
||||
this.selectList = e;
|
||||
this.selectCount = e.length;
|
||||
},
|
||||
|
||||
// 获取列表数据
|
||||
getDataList() {
|
||||
this.loading = true;
|
||||
|
||||
|
@ -224,13 +209,13 @@ export default {
|
|||
this.total = this.data.length;
|
||||
this.loading = false;
|
||||
},
|
||||
// 提交数据
|
||||
handleSubmit() {
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
this.submitLoading = true;
|
||||
|
||||
if (this.modalType == 0) {
|
||||
// 添加 避免编辑后传入id等数据 记得删除
|
||||
delete this.form.id;
|
||||
insertCustomWords(this.form).then((res) => {
|
||||
this.submitLoading = false;
|
||||
|
@ -255,6 +240,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 添加
|
||||
add() {
|
||||
this.modalType = 0;
|
||||
this.modalTitle = "添加";
|
||||
|
@ -263,6 +249,7 @@ export default {
|
|||
|
||||
this.modalVisible = true;
|
||||
},
|
||||
// 修改
|
||||
detail(v) {
|
||||
this.modalType = 1;
|
||||
this.id = v.id;
|
||||
|
@ -270,6 +257,7 @@ export default {
|
|||
this.modalVisible = true;
|
||||
this.form.name = v.name;
|
||||
},
|
||||
// 删除
|
||||
remove(v) {
|
||||
this.$Modal.confirm({
|
||||
title: "确认删除",
|
||||
|
@ -288,6 +276,7 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
// 批量删除
|
||||
delAll() {
|
||||
if (this.selectCount <= 0) {
|
||||
this.$Message.warning("您还未选择要删除的数据");
|
||||
|
|
|
@ -45,7 +45,7 @@ export default {
|
|||
LangSwitch,
|
||||
Header,
|
||||
Footer,
|
||||
verify,
|
||||
verify
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
@ -77,7 +77,6 @@ export default {
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
mounted() {},
|
||||
afterLogin(res) {
|
||||
// 登录成功后处理
|
||||
let accessToken = res.result.accessToken;
|
||||
|
|
|
@ -41,9 +41,7 @@
|
|||
</Form>
|
||||
<div slot="footer">
|
||||
<Button type="text" @click="modalVisible = false">取消</Button>
|
||||
<Button type="primary" :loading="submitLoading" @click="handleSubmit"
|
||||
>提交</Button
|
||||
>
|
||||
<Button type="primary" :loading="submitLoading" @click="handleSubmit">提交</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
</div>
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
</Card>
|
||||
</Affix>
|
||||
<Card class="card">
|
||||
|
||||
<Tabs @on-click="handleClickType">
|
||||
<TabPane label="热门商品订单数量" name="NUM">
|
||||
<Table :columns="columns" :data="data"></Table>
|
||||
|
@ -26,9 +25,8 @@ import affixTime from "@/views/lili-components/affix-time";
|
|||
|
||||
export default {
|
||||
components: {
|
||||
|
||||
affixTime,
|
||||
memberLayout,
|
||||
memberLayout
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
@ -63,11 +61,12 @@ export default {
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
// tab切换
|
||||
handleClickType(name) {
|
||||
this.params.type = name;
|
||||
this.getData();
|
||||
},
|
||||
|
||||
// 条件删选
|
||||
clickBreadcrumb(item, index) {
|
||||
let callback = item;
|
||||
let type = this.params.type;
|
||||
|
@ -75,6 +74,7 @@ export default {
|
|||
this.params.type = type;
|
||||
this.getData();
|
||||
},
|
||||
// 获取数据
|
||||
getData() {
|
||||
Promise.all([API_Goods.goodsStatistics(this.params)]).then((res) => {
|
||||
if (res[0].result) {
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<Card class="card">
|
||||
<div>
|
||||
<h4>客户增长报表</h4>
|
||||
<Table style="margin-top:10px;" stripe :columns="columns" :data="data"></Table>
|
||||
<Table class="mt_10" stripe :columns="columns" :data="data"></Table>
|
||||
|
||||
</div>
|
||||
</Card>
|
||||
|
@ -30,7 +30,6 @@ import affixTime from "@/views/lili-components/affix-time";
|
|||
|
||||
export default {
|
||||
components: { affixTime },
|
||||
|
||||
data() {
|
||||
return {
|
||||
columns: [ // 表头
|
||||
|
@ -169,14 +168,14 @@ export default {
|
|||
|
||||
this.orderChart.render();
|
||||
},
|
||||
|
||||
// 条件查询
|
||||
clickBreadcrumb(item, index) {
|
||||
let callback = item;
|
||||
|
||||
console.warn(callback);
|
||||
this.params = {...callback};
|
||||
},
|
||||
|
||||
// 初始化数据
|
||||
init() {
|
||||
API_Member.getMemberStatistics(this.params).then((res) => {
|
||||
if (res.result) {
|
||||
|
|
|
@ -3,9 +3,7 @@
|
|||
<div class="wrapper">
|
||||
<Affix :offset-top="100">
|
||||
<Card class="card fixed-bottom">
|
||||
|
||||
<affixTime @selected="clickBreadcrumb" />
|
||||
|
||||
</Card>
|
||||
</Affix>
|
||||
|
||||
|
@ -68,7 +66,7 @@
|
|||
</div>
|
||||
<div class="card-item">
|
||||
<div class="card-item-label">退单金额</div>
|
||||
<div class="card-item-value">{{overViewList.refundOrderPrice || 0}}</div>
|
||||
<div class="card-item-value">{{overViewList.refundOrderPrice || 0 | unitPrice('¥')}}</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
@ -155,7 +153,7 @@
|
|||
<Table stripe :columns="columns" :data="data"></Table>
|
||||
|
||||
</div>
|
||||
<Page @on-change="(index)=>{refundParams.pageNumber = index}" @on-page-size-change="(size)=>{refundParams.pageSize= size}" class="mt_10" show-total show-elevator :total="total" />
|
||||
<Page size="small" @on-change="(index)=>{refundParams.pageNumber = index}" @on-page-size-change="(size)=>{refundParams.pageSize= size,refundParams.pageNumber = 1}" class="mt_10" show-total show-sizer show-elevator :total="total" />
|
||||
|
||||
</div>
|
||||
|
||||
|
|
|
@ -91,8 +91,7 @@ export default {
|
|||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.wrapper {
|
||||
}
|
||||
|
||||
.shop {
|
||||
padding: 10px 0;
|
||||
background: #fff;
|
||||
|
@ -139,13 +138,14 @@ h3 {
|
|||
}
|
||||
.label-item {
|
||||
margin: 10px 0;
|
||||
width: 20%;
|
||||
width: 33%;
|
||||
padding: 8px;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
> span {
|
||||
padding: 8px;
|
||||
> span:nth-child(1) {
|
||||
width: 70px;
|
||||
color: #999;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
<template>
|
||||
<div class="wrapper">
|
||||
|
||||
<div class="shop">
|
||||
<h3>售后详情</h3>
|
||||
<div class="shop-item">
|
||||
|
@ -15,11 +14,11 @@
|
|||
|
||||
<div class="label-item">
|
||||
<span>退款时间</span>
|
||||
<span>{{res.refundTime || '暂无'}}</span>
|
||||
<span>{{res.refundTime ? (new Date(res.refundTime).getTime()/1000 | unixToDate) : '暂无'}}</span>
|
||||
</div>
|
||||
<div class="label-item">
|
||||
<span>申请退款金额</span>
|
||||
<span>{{res.applyRefundPrice || '0'}}</span>
|
||||
<span>{{res.applyRefundPrice || 0 | unitPrice('¥')}}</span>
|
||||
</div>
|
||||
<div class="label-item">
|
||||
<span>商家备注</span>
|
||||
|
@ -44,7 +43,6 @@
|
|||
<span>创建时间</span>
|
||||
<span>{{res.createTime}}</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<h3>商品详情</h3>
|
||||
<div class="shop-item">
|
||||
|
@ -111,15 +109,12 @@ export default {
|
|||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.wrapper {
|
||||
}
|
||||
.shop {
|
||||
padding: 10px 0;
|
||||
padding: 5px 0;
|
||||
background: #fff;
|
||||
}
|
||||
.shop-item {
|
||||
display: flex;
|
||||
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
h3 {
|
||||
|
@ -158,13 +153,18 @@ h3 {
|
|||
}
|
||||
.label-item {
|
||||
margin: 10px 0;
|
||||
width: 20%;
|
||||
width: 33%;
|
||||
padding: 8px;
|
||||
align-items: center;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
> span {
|
||||
padding: 8px;
|
||||
> span:nth-child(1) {
|
||||
width: 90px;
|
||||
color: #999;
|
||||
}
|
||||
> span:nth-child(2){
|
||||
text-align: left;
|
||||
white-space: wrap;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
|
|
@ -61,11 +61,8 @@ export default {
|
|||
|
||||
data() {
|
||||
return {
|
||||
// 时间
|
||||
|
||||
uvs: 0, // 访客数
|
||||
pvs: 0, // 浏览量
|
||||
|
||||
dateList: [
|
||||
// 选择项
|
||||
{
|
||||
|
@ -89,14 +86,12 @@ export default {
|
|||
value: "LAST_THIRTY",
|
||||
},
|
||||
],
|
||||
|
||||
orderChart: "", // 初始化图表
|
||||
params: {
|
||||
// 请求参数
|
||||
searchType: "LAST_SEVEN",
|
||||
year: "",
|
||||
month: "",
|
||||
// storeId: "",
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
|
@ -113,7 +108,7 @@ export default {
|
|||
},
|
||||
],
|
||||
|
||||
data: [], // 图标数据
|
||||
data: [], // 图表数据
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
|
@ -129,11 +124,6 @@ export default {
|
|||
methods: {
|
||||
// 订单图
|
||||
initChart() {
|
||||
// 默认已经加载 legend-filter 交互
|
||||
/**
|
||||
* 将数据分成三组来进行展示
|
||||
*/
|
||||
|
||||
let uv = [];
|
||||
let pv = [];
|
||||
|
||||
|
@ -186,13 +176,13 @@ export default {
|
|||
|
||||
this.orderChart.render();
|
||||
},
|
||||
|
||||
// 通过时间来筛选
|
||||
clickBreadcrumb(item, index) {
|
||||
let callback = JSON.parse(JSON.stringify(item));
|
||||
|
||||
this.params = callback;
|
||||
},
|
||||
|
||||
// 初始化数据
|
||||
init() {
|
||||
API_Member.getStatisticsList(this.params).then((res) => {
|
||||
if (res.result) {
|
||||
|
@ -224,16 +214,11 @@ export default {
|
|||
.table {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.wrapper {
|
||||
padding-bottom: 200px;
|
||||
}
|
||||
.box-item {
|
||||
display: flex;
|
||||
|
||||
flex-direction: column;
|
||||
width: 25%;
|
||||
font-weight: bold;
|
||||
// align-items: center;
|
||||
justify-content: center;
|
||||
> div {
|
||||
margin: 4px;
|
||||
|
|
|
@ -1,32 +1,22 @@
|
|||
<template>
|
||||
<div class="search">
|
||||
<Row>
|
||||
<Col>
|
||||
<Card>
|
||||
<Row @keydown.enter.native="handleSearch">
|
||||
<Form ref="searchForm" :model="searchForm" inline :label-width="70" class="search-form">
|
||||
<Form-item label="系统类型" prop="orderSn">
|
||||
<Select v-model="searchForm.type" placeholder="请选择系统类型" clearable style="width: 200px">
|
||||
<Option value="IOS">苹果</Option>
|
||||
<Option value="ANDROID">安卓</Option>
|
||||
</Select>
|
||||
</Form-item>
|
||||
<Button @click="handleSearch" type="primary" icon="ios-search">搜索</Button>
|
||||
</Form>
|
||||
</Row>
|
||||
<Row class="operation" style="margin-top: 20px">
|
||||
<Button @click="addAppVersion" type="primary">添加</Button>
|
||||
</Row>
|
||||
<Row class="padding-row">
|
||||
<Table :loading="loading" border :columns="columns" :data="data" ref="table" sortable="custom" @on-sort-change="changeSort" @on-selection-change="changeSelect"></Table>
|
||||
</Row>
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
<Page :current="searchForm.pageNumber" :total="total" :page-size="searchForm.pageSize" @on-change="changePage" @on-page-size-change="changePageSize" :page-size-opts="[10, 20, 50]"
|
||||
size="small" show-total show-elevator show-sizer></Page>
|
||||
</Row>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
<Card>
|
||||
<Form ref="searchForm" :model="searchForm" inline :label-width="70" class="search-form" @keydown.enter.native="handleSearch">
|
||||
<Form-item label="系统类型" prop="orderSn">
|
||||
<Select v-model="searchForm.type" placeholder="请选择系统类型" clearable style="width: 200px">
|
||||
<Option value="IOS">苹果</Option>
|
||||
<Option value="ANDROID">安卓</Option>
|
||||
</Select>
|
||||
</Form-item>
|
||||
<Button @click="handleSearch" type="primary" icon="ios-search">搜索</Button>
|
||||
</Form>
|
||||
<Button class="mt_10 mb_10" @click="addAppVersion" type="primary">添加</Button>
|
||||
<Table :loading="loading" border :columns="columns" :data="data" ref="table" sortable="custom" @on-sort-change="changeSort" @on-selection-change="changeSelect"></Table>
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
<Page :current="searchForm.pageNumber" :total="total" :page-size="searchForm.pageSize" @on-change="changePage" @on-page-size-change="changePageSize" :page-size-opts="[10, 20, 50]"
|
||||
size="small" show-total show-elevator show-sizer></Page>
|
||||
</Row>
|
||||
</Card>
|
||||
<Modal :title="modalTitle" v-model="modalVisible" :mask-closable="false" :width="1000">
|
||||
<Form ref="form" :model="form" :label-width="100" :rules="formValidate">
|
||||
<FormItem label="版本名称" prop="versionName">
|
||||
|
@ -111,10 +101,7 @@
|
|||
import * as API_Setting from "@/api/setting";
|
||||
|
||||
export default {
|
||||
name: "orderList",
|
||||
components: {
|
||||
|
||||
},
|
||||
name: "appVersion",
|
||||
data() {
|
||||
return {
|
||||
queryModalVisible: false, // 版本信息modal
|
||||
|
@ -156,8 +143,6 @@ export default {
|
|||
versionUpdateDate: [{ required: true, message: "更新时间不能为空" }],
|
||||
},
|
||||
submitLoading: false, // 添加或编辑提交状态
|
||||
selectList: [], // 多选数据
|
||||
selectCount: 0, // 多选计数
|
||||
columns: [
|
||||
{
|
||||
title: "版本名称",
|
||||
|
@ -277,34 +262,27 @@ export default {
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
// 获取表格数据
|
||||
init() {
|
||||
this.getData();
|
||||
},
|
||||
// 分页 修改页码
|
||||
changePage(v) {
|
||||
this.searchForm.pageNumber = v;
|
||||
this.getData();
|
||||
},
|
||||
// 分页 修改页数
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = v;
|
||||
this.getData();
|
||||
},
|
||||
// 搜索
|
||||
handleSearch() {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = 10;
|
||||
this.getData();
|
||||
},
|
||||
changeSort(e) {
|
||||
this.searchForm.sort = e.key;
|
||||
this.searchForm.order = e.order;
|
||||
if (e.order === "normal") {
|
||||
this.searchForm.order = "";
|
||||
}
|
||||
this.getData();
|
||||
},
|
||||
changeSelect(e) {
|
||||
this.selectList = e;
|
||||
this.selectCount = e.length;
|
||||
},
|
||||
// 获取数据
|
||||
getData() {
|
||||
this.loading = true;
|
||||
API_Setting.appVersionPage(this.searchForm).then((res) => {
|
||||
|
@ -331,7 +309,7 @@ export default {
|
|||
content: " ",
|
||||
};
|
||||
},
|
||||
//添加app版本信息
|
||||
//编辑app版本信息
|
||||
editAppVersion(v) {
|
||||
this.modalVisible = true;
|
||||
this.modalTitle = "修改APP版本信息";
|
||||
|
@ -373,6 +351,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 删除app版本信息
|
||||
remove(v) {
|
||||
this.$Modal.confirm({
|
||||
title: "确认删除",
|
||||
|
@ -390,6 +369,7 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
// 查看
|
||||
detail(v) {
|
||||
this.queryModalVisible = true;
|
||||
this.form = JSON.parse(JSON.stringify(v));
|
||||
|
|
|
@ -17,17 +17,10 @@
|
|||
<Alert show-icon>
|
||||
当前选择编辑:
|
||||
<span class="select-title">{{ editTitle }}</span>
|
||||
<a class="select-clear" v-if="form.id" @click="cancelEdit"
|
||||
<a class="select-clear" v-if="form.id" @click="cancelSelect"
|
||||
>取消选择</a
|
||||
>
|
||||
</Alert>
|
||||
<!-- <Input
|
||||
v-model="searchKey"
|
||||
suffix="ios-search"
|
||||
@on-change="search"
|
||||
placeholder="输入部门名搜索"
|
||||
clearable
|
||||
/> -->
|
||||
<div class="tree-bar" :style="{ maxHeight: maxHeight }">
|
||||
<Tree
|
||||
ref="tree"
|
||||
|
@ -48,7 +41,7 @@
|
|||
:label-width="100"
|
||||
:rules="formValidate"
|
||||
>
|
||||
<FormItem label="上级部门" prop="parentTitle">
|
||||
<!-- <FormItem label="上级部门" prop="parentTitle">
|
||||
<div style="display: flex">
|
||||
<Input
|
||||
v-model="form.parentTitle"
|
||||
|
@ -76,7 +69,7 @@
|
|||
</div>
|
||||
</Poptip>
|
||||
</div>
|
||||
</FormItem>
|
||||
</FormItem> -->
|
||||
<FormItem label="部门名称" prop="title">
|
||||
<Input v-model="form.title" />
|
||||
</FormItem>
|
||||
|
@ -195,7 +188,7 @@ export default {
|
|||
maxHeight: "500px", // 最大高度
|
||||
strict: true, // 级联还是单选
|
||||
userLoading: false, // 选择角色加载状态
|
||||
loadingEdit: true, // 编辑加载状态
|
||||
loadingEdit: false, // 编辑加载状态
|
||||
modalVisible: false, // modal显隐
|
||||
selectList: [], // 已选列表
|
||||
selectCount: 0, // 已选总数
|
||||
|
@ -235,6 +228,7 @@ export default {
|
|||
init() {
|
||||
this.getParentList();
|
||||
},
|
||||
// 获取部门数据
|
||||
getParentList() {
|
||||
this.loading = true;
|
||||
initDepartment().then((res) => {
|
||||
|
@ -244,33 +238,16 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 动态加载二级数据
|
||||
loadData(item, callback) {
|
||||
loadDepartment(item.id).then((res) => {
|
||||
this.loadingEdit = false;
|
||||
if (res.success) {
|
||||
/* res.result.forEach(function(e) {
|
||||
if (e.isParent) {
|
||||
e.loading = false;
|
||||
e.children = [];
|
||||
}
|
||||
}); */
|
||||
console.log(res.result);
|
||||
callback(res.result);
|
||||
}
|
||||
});
|
||||
},
|
||||
search() {
|
||||
if (this.searchKey) {
|
||||
this.loading = true;
|
||||
searchDepartment({ title: this.searchKey }).then((res) => {
|
||||
this.loading = false;
|
||||
if (res.success) {
|
||||
this.data = res.result;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.getParentList();
|
||||
}
|
||||
},
|
||||
|
||||
// 点击树
|
||||
selectTree(v) {
|
||||
|
@ -311,10 +288,11 @@ export default {
|
|||
}
|
||||
});
|
||||
} else {
|
||||
this.cancelEdit();
|
||||
this.cancelSelect();
|
||||
}
|
||||
},
|
||||
cancelEdit() {
|
||||
// 取消选择
|
||||
cancelSelect() {
|
||||
let data = this.$refs.tree.getSelectedNodes()[0];
|
||||
if (data) {
|
||||
data.selected = false;
|
||||
|
@ -323,6 +301,7 @@ export default {
|
|||
delete this.form.id;
|
||||
this.editTitle = "";
|
||||
},
|
||||
// 选择上级部门
|
||||
selectTreeEdit(v) {
|
||||
|
||||
if (v.length > 0) {
|
||||
|
@ -338,13 +317,16 @@ export default {
|
|||
this.form.parentTitle = data.title;
|
||||
}
|
||||
},
|
||||
// 取消添加部门
|
||||
cancelAdd() {
|
||||
this.modalVisible = false;
|
||||
},
|
||||
// 重置表单
|
||||
handleReset() {
|
||||
this.$refs.form.resetFields();
|
||||
this.form.status = 0;
|
||||
},
|
||||
// 提交表单
|
||||
submitEdit() {
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
|
@ -352,8 +334,6 @@ export default {
|
|||
this.$Message.warning("请先点击选择要修改的部门");
|
||||
return;
|
||||
}
|
||||
|
||||
console.log(this.selectedRole);
|
||||
let roleWay = [];
|
||||
this.selectedRole.forEach((item) => {
|
||||
let role = {
|
||||
|
@ -365,11 +345,7 @@ export default {
|
|||
|
||||
Promise.all([
|
||||
editDepartment(this.form.id, this.form),
|
||||
updateDepartmentRole(
|
||||
this.form.id,
|
||||
roleWay
|
||||
|
||||
),
|
||||
updateDepartmentRole(this.form.id, roleWay)
|
||||
]).then((res) => {
|
||||
this.submitLoading = false;
|
||||
if (res[0].success) {
|
||||
|
@ -377,14 +353,11 @@ export default {
|
|||
this.init();
|
||||
this.modalVisible = false;
|
||||
}
|
||||
|
||||
console.log(res[1]);
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
});
|
||||
},
|
||||
// 确认添加部门
|
||||
submitAdd() {
|
||||
this.$refs.formAdd.validate((valid) => {
|
||||
if (valid) {
|
||||
|
@ -400,6 +373,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 添加子部门
|
||||
add() {
|
||||
if (this.form.id == "" || this.form.id == null) {
|
||||
this.$Message.warning("请先点击选择一个部门");
|
||||
|
@ -415,6 +389,7 @@ export default {
|
|||
};
|
||||
this.modalVisible = true;
|
||||
},
|
||||
// 添加一级部门
|
||||
addRoot() {
|
||||
this.modalTitle = "添加一级部门";
|
||||
this.showParent = false;
|
||||
|
@ -425,11 +400,13 @@ export default {
|
|||
};
|
||||
this.modalVisible = true;
|
||||
},
|
||||
// 选中回调
|
||||
changeSelect(v) {
|
||||
console.log(v);
|
||||
this.selectCount = v.length;
|
||||
this.selectList = v;
|
||||
},
|
||||
// 批量删除部门
|
||||
delAll() {
|
||||
if (this.selectCount <= 0) {
|
||||
this.$Message.warning("您还未勾选要删除的数据");
|
||||
|
@ -452,7 +429,7 @@ export default {
|
|||
this.$Message.success("删除成功");
|
||||
this.selectList = [];
|
||||
this.selectCount = 0;
|
||||
this.cancelEdit();
|
||||
this.cancelSelect();
|
||||
this.init();
|
||||
}
|
||||
});
|
||||
|
|
|
@ -1,229 +0,0 @@
|
|||
<template>
|
||||
<Card class="card">
|
||||
<div v-for="(item,index) in instantDelivery" :key="index">
|
||||
<div class="cardBox">
|
||||
<div class="methodItem">
|
||||
|
||||
<span v-if="item.image = ''">暂无封面</span>
|
||||
<img v-else :src=item.images height="172" width="440"/>
|
||||
<h4>{{item.deliveryName}}</h4></div>
|
||||
<div class="bar">
|
||||
<div v-if="item.deliveryOpen==1" class="status" style="color: rgb(53, 189, 129);">已启用</div>
|
||||
<div v-else class="status" style="color: rgb(53, 189, 129);">
|
||||
<a class="links" style="color: rgb(53, 189, 129);" @click="openDelivery(item)">启用</a> <span
|
||||
style="color: red;">(未启用)</span>
|
||||
</div>
|
||||
<div class="div-edit">
|
||||
<Upload
|
||||
multiple
|
||||
:action=action
|
||||
:show-upload-list="false"
|
||||
:format="['jpg', 'jpeg', 'png', 'gif']"
|
||||
:on-success="uploadSuccess"
|
||||
>
|
||||
<a class="links" @click="deliveryBean = item.deliveryBean">更换封面</a>
|
||||
</Upload>
|
||||
|
||||
</div>
|
||||
<div>
|
||||
<a class="links" @click="edit">编辑</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<Modal
|
||||
:title="modalTitle"
|
||||
v-model="modalVisible"
|
||||
:width="500"
|
||||
>
|
||||
<Form ref="form" :model="form" :label-width="90">
|
||||
<Form-item :label="config.name" v-for="(config,q) in item.configItems" :key="config">
|
||||
<div>
|
||||
<Input
|
||||
type="text"
|
||||
v-model="config.value"
|
||||
clearable
|
||||
placeholder="请输入您的请求参数,均不能为空"
|
||||
style="width: 300px"
|
||||
v-if="config.type == 'text'"
|
||||
/>
|
||||
</div>
|
||||
</Form-item>
|
||||
</Form>
|
||||
<div slot="footer">
|
||||
<Button type="text" @click="modalVisible = false">取消</Button>
|
||||
<Button type="primary" :loading="submitLoading" @click="saveDeliverySubmit(item)">保存</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
</div>
|
||||
|
||||
|
||||
</Card>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import * as API_Setting from "@/api/setting";
|
||||
import editor from "@/views/my-components/lili/editor";
|
||||
import {commonUrl} from '@/libs/axios'
|
||||
|
||||
|
||||
export default {
|
||||
name: "instantDelivery",
|
||||
components: {
|
||||
editor
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
deliveryBean: "", // 封面
|
||||
action: commonUrl + '/common/upload/file', // 上传地址
|
||||
loading: true, // 表单加载状态
|
||||
modalVisible: false, // 修改同城配送模态框
|
||||
modalTitle: "", // 修改同城配送标题
|
||||
instantDelivery: [{ // 列表
|
||||
configItems: []
|
||||
}
|
||||
|
||||
], //同城配送数据
|
||||
searchForm: {
|
||||
// 搜索框初始化对象
|
||||
pageNumber: 1, // 当前页数
|
||||
pageSize: 10, // 页面大小
|
||||
},
|
||||
selectDate: null,
|
||||
form: {},
|
||||
// 表单验证规则
|
||||
formValidate: {},
|
||||
submitLoading: false, // 添加或编辑提交状态
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
init() {
|
||||
this.getData();
|
||||
},
|
||||
//修改同城配送方案
|
||||
edit() {
|
||||
this.modalVisible = true
|
||||
this.modalTitle = "编辑同城配送"
|
||||
},
|
||||
saveDeliverySubmit(item) {
|
||||
const headers = {
|
||||
"Content-Type": "application/json;charset=utf-8"
|
||||
}
|
||||
this.loading = true
|
||||
API_Setting.editInstantDelivery(item.deliveryBean, item.configItems, headers).then((res) => {
|
||||
this.loading = false;
|
||||
if (res.success) {
|
||||
this.instantDelivery = (res.result.records);
|
||||
this.modalVisible = false
|
||||
this.$Message.success("保存成功");
|
||||
this.getData()
|
||||
}
|
||||
});
|
||||
},
|
||||
//开启某个同城配送
|
||||
openDelivery(item) {
|
||||
this.$Modal.confirm({
|
||||
title: "确定开启?",
|
||||
content: "确认开启当前同城配送方案",
|
||||
onOk: () => {
|
||||
API_Setting.openInstantDelivery(item.deliveryBean).then((res) => {
|
||||
if (res.success) {
|
||||
this.$Message.success("开启成功");
|
||||
this.getData();
|
||||
}
|
||||
});
|
||||
},
|
||||
});
|
||||
},
|
||||
//封面上传成功方法
|
||||
uploadSuccess(res) {
|
||||
const params = {
|
||||
images: res.result
|
||||
}
|
||||
this.loading = true
|
||||
API_Setting.editInstantDeliveryImage(this.deliveryBean, params).then((res) => {
|
||||
this.loading = false;
|
||||
if (res.success) {
|
||||
this.$Message.success("更换成功");
|
||||
this.getData()
|
||||
}
|
||||
});
|
||||
},
|
||||
getData() {
|
||||
this.loading = true;
|
||||
API_Setting.getInstantDelivery(this.searchForm).then((res) => {
|
||||
this.loading = false;
|
||||
if (res.success) {
|
||||
this.instantDelivery = res.result.records;
|
||||
}
|
||||
});
|
||||
this.loading = false;
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.init();
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.cardBox {
|
||||
display: inline-block;
|
||||
border-radius: 2px;
|
||||
line-height: 1.5;
|
||||
margin-right: 20px;
|
||||
width: 300px;
|
||||
border: 1px solid #eee;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.methodItem {
|
||||
width: 100%;
|
||||
border: 1px solid #f5f5f5;
|
||||
text-align: center;
|
||||
padding: 20px 0;
|
||||
}
|
||||
|
||||
methodItem img {
|
||||
width: 220px;
|
||||
height: 86px;
|
||||
}
|
||||
|
||||
methodItem h4 {
|
||||
font-size: 14px;
|
||||
color: #333;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.methodItem img {
|
||||
width: 220px;
|
||||
height: 86px;
|
||||
}
|
||||
|
||||
.div-edit {
|
||||
margin-left: 50px
|
||||
}
|
||||
|
||||
.bar {
|
||||
-webkit-flex-direction: row;
|
||||
-ms-flex-direction: row;
|
||||
flex-direction: row;
|
||||
display: -webkit-box;
|
||||
display: -webkit-flex;
|
||||
display: -ms-flexbox;
|
||||
display: flex;
|
||||
-webkit-box-pack: justify;
|
||||
-webkit-justify-content: space-between;
|
||||
-ms-flex-pack: justify;
|
||||
justify-content: space-between;
|
||||
-webkit-align-items: center;
|
||||
-webkit-box-align: center;
|
||||
-ms-flex-align: center;
|
||||
align-items: center;
|
||||
padding: 10px 8px 0;
|
||||
}
|
||||
|
||||
.ivu-upload {
|
||||
height: 21px;
|
||||
margin-left: 15px;
|
||||
}
|
||||
</style>
|
|
@ -2,7 +2,7 @@
|
|||
<template>
|
||||
<div class="search">
|
||||
<Card>
|
||||
<Row v-show="openSearch" @keydown.enter.native="handleSearch">
|
||||
<Row @keydown.enter.native="handleSearch">
|
||||
<Form ref="searchForm" :model="searchForm" inline :label-width="70" class="search-form">
|
||||
<Form-item label="搜索日志" prop="searchKey">
|
||||
<Input
|
||||
|
@ -101,17 +101,14 @@
|
|||
name: "log-manage",
|
||||
data() {
|
||||
return {
|
||||
openSearch: true, // 开启搜索
|
||||
openTip: false, // 开启提示
|
||||
loading: true, // 加载状态
|
||||
selectList: [], // 已选列表
|
||||
selectCount: 0, // 已选数量
|
||||
selectDate: null, // 选择时间段
|
||||
searchKey: "", // 搜索关键字
|
||||
operatorName: "", // 操作人名称
|
||||
showDev: false,//展示进阶日志
|
||||
searchForm: { // 请求参数
|
||||
type: 1,
|
||||
key: '',
|
||||
operatorName: '',
|
||||
pageNumber: 1,
|
||||
pageSize: 10,
|
||||
startDate: "",
|
||||
|
@ -277,38 +274,36 @@
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.getLogList();
|
||||
},
|
||||
changeTab(v) {
|
||||
this.searchForm.type = v;
|
||||
this.getLogList();
|
||||
},
|
||||
// 分页 修改页码
|
||||
changePage(v) {
|
||||
this.searchForm.pageNumber = v;
|
||||
this.getLogList();
|
||||
this.clearSelectAll();
|
||||
},
|
||||
// 分页 修改页数
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = v;
|
||||
this.getLogList();
|
||||
},
|
||||
// 起止时间从新赋值
|
||||
selectDateRange(v) {
|
||||
if (v) {
|
||||
this.searchForm.startDate = v[0];
|
||||
this.searchForm.endDate = v[1];
|
||||
}
|
||||
},
|
||||
// 搜索
|
||||
handleSearch() {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = 10;
|
||||
this.getLogList();
|
||||
},
|
||||
// 获取日志数据
|
||||
getLogList() {
|
||||
this.loading = true;
|
||||
this.searchForm.key = this.searchKey;
|
||||
this.searchForm.operatorName = this.operatorName;
|
||||
|
||||
getLogListData(this.searchForm).then(res => {
|
||||
this.loading = false;
|
||||
if (res.success) {
|
||||
|
|
|
@ -1,11 +1,15 @@
|
|||
<style lang="scss" scoped>
|
||||
@import "@/styles/tree-common.scss";
|
||||
.desc{
|
||||
font-size: 12px;
|
||||
color: #999;
|
||||
}
|
||||
</style>
|
||||
<template>
|
||||
<div class="search">
|
||||
<Card>
|
||||
<!-- 筛选项和操作按钮 -->
|
||||
<Row class="operation">
|
||||
|
||||
<i-switch v-model="strict" class="selectModel" size="large" style="margin-right: 5px">
|
||||
<span slot="open">级联</span>
|
||||
<span slot="close">单选</span>
|
||||
|
@ -27,6 +31,7 @@
|
|||
</DropdownMenu>
|
||||
</Dropdown>
|
||||
</Row>
|
||||
<!-- 页面主体,左侧树结构,右侧表单项 -->
|
||||
<Row type="flex" justify="start">
|
||||
<Col :md="8" :lg="8" :xl="6">
|
||||
<Alert show-icon>
|
||||
|
@ -81,39 +86,42 @@
|
|||
<span>页面菜单</span>
|
||||
</div>
|
||||
</FormItem>
|
||||
<FormItem
|
||||
label="名称"
|
||||
prop="title"
|
||||
>
|
||||
<Input v-model="form.title"/>
|
||||
<FormItem label="菜单名称" prop="title">
|
||||
<Input v-model="form.title" />
|
||||
</FormItem>
|
||||
|
||||
<FormItem label="路径" prop="path" v-if="form.level != 0">
|
||||
<Input v-model="form.path"/>
|
||||
<FormItem label="路由地址" prop="path" v-if="form.level != 0" class="block-tool">
|
||||
<Tooltip placement="right" content="路由地址,英文唯一,跳转页面,路径展示用 ">
|
||||
<Input v-model="form.path"/>
|
||||
</Tooltip>
|
||||
</FormItem>
|
||||
<FormItem
|
||||
label="英文名"
|
||||
label="路由名称"
|
||||
prop="name"
|
||||
v-if="form.level == 0"
|
||||
class="block-tool"
|
||||
>
|
||||
<Tooltip placement="right" content="需唯一">
|
||||
<Tooltip placement="right" content="路由name,需英文唯一,跳转页面用">
|
||||
<Input v-model="form.name"/>
|
||||
</Tooltip>
|
||||
</FormItem>
|
||||
<FormItem
|
||||
label="路由英文名"
|
||||
label="路由名称"
|
||||
prop="name"
|
||||
v-if="form.level != 0"
|
||||
class="block-tool"
|
||||
>
|
||||
<Tooltip placement="right" content="需唯一" transfer>
|
||||
<Tooltip placement="right" content="路由name,需英文唯一,跳转页面用" transfer>
|
||||
<Input v-model="form.name"/>
|
||||
</Tooltip>
|
||||
</FormItem>
|
||||
<FormItem label="前端组件" prop="frontRoute" v-if="form.level != 0">
|
||||
<FormItem label="文件路径" prop="frontRoute" v-if="form.level != 0">
|
||||
<Input v-model="form.frontRoute"/>
|
||||
</FormItem>
|
||||
<FormItem label="权限url" v-if="form.level != 0" class="block-tool">
|
||||
<Tooltip placement="right" content="*号模糊匹配,逗号分割" transfer>
|
||||
<Input v-model="form.permission"/>
|
||||
</Tooltip>
|
||||
</FormItem>
|
||||
<FormItem label="排序值" prop="sortOrder">
|
||||
<Tooltip
|
||||
trigger="hover"
|
||||
|
@ -178,41 +186,45 @@
|
|||
></Icon>
|
||||
<span>页面菜单</span>
|
||||
</div>
|
||||
|
||||
</FormItem>
|
||||
<FormItem
|
||||
label="名称"
|
||||
label="菜单名称"
|
||||
prop="title"
|
||||
>
|
||||
<Input v-model="formAdd.title"/>
|
||||
</FormItem>
|
||||
|
||||
<FormItem label="路径" prop="path" v-if="formAdd.level != 0">
|
||||
<FormItem label="路由地址" prop="path" v-if="formAdd.level != 0">
|
||||
<Input v-model="formAdd.path"/>
|
||||
|
||||
</FormItem>
|
||||
<FormItem
|
||||
label="英文名"
|
||||
label="路由名称"
|
||||
prop="name"
|
||||
v-if="formAdd.level == 0"
|
||||
class="block-tool"
|
||||
>
|
||||
<Tooltip placement="right" content="需唯一">
|
||||
<Tooltip placement="right" content="路由name,需英文唯一,跳转页面用">
|
||||
<Input v-model="formAdd.name"/>
|
||||
</Tooltip>
|
||||
</FormItem>
|
||||
<FormItem
|
||||
label="路由英文名"
|
||||
label="路由名称"
|
||||
prop="name"
|
||||
v-if="formAdd.level != 0"
|
||||
class="block-tool"
|
||||
>
|
||||
<Tooltip placement="right" content="需唯一">
|
||||
<Tooltip placement="right" content="路由name,需英文唯一,跳转页面用">
|
||||
<Input v-model="formAdd.name"/>
|
||||
</Tooltip>
|
||||
</FormItem>
|
||||
<FormItem label="前端组件" prop="frontRoute" v-if="formAdd.level != 0">
|
||||
<FormItem label="文件路径" prop="frontRoute" v-if="formAdd.level != 0">
|
||||
<Input v-model="formAdd.frontRoute"/>
|
||||
</FormItem>
|
||||
<FormItem label="权限url" v-if="formAdd.level != 0">
|
||||
<Input v-model="formAdd.permission"/>
|
||||
<div class="desc">*号模糊匹配,逗号分割</div>
|
||||
</FormItem>
|
||||
<FormItem label="排序值" prop="sortOrder">
|
||||
<Tooltip
|
||||
trigger="hover"
|
||||
|
@ -230,9 +242,7 @@
|
|||
<div slot="footer">
|
||||
<Button type="text" @click="menuModalVisible = false">取消</Button>
|
||||
<Button type="primary" :loading="submitLoading" @click="submitAdd"
|
||||
>提交
|
||||
</Button
|
||||
>
|
||||
>提交</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
</div>
|
||||
|
@ -244,7 +254,6 @@ import {
|
|||
addPermission,
|
||||
editPermission,
|
||||
deletePermission,
|
||||
searchPermission,
|
||||
} from "@/api/index";
|
||||
import util from "@/libs/util.js";
|
||||
|
||||
|
@ -273,18 +282,18 @@ export default {
|
|||
parentId: "",
|
||||
sortOrder: 0,
|
||||
level: 0,
|
||||
showAlways: true,
|
||||
permission: ''
|
||||
},
|
||||
formAdd: { // 添加表单
|
||||
},
|
||||
formValidate: { // 验证规则
|
||||
title: [{required: true, message: "名称不能为空", trigger: "blur"}],
|
||||
title: [{required: true, message: "菜单名称名称不能为空", trigger: "blur"}],
|
||||
name: [
|
||||
{required: true, message: "路由英文名不能为空", trigger: "blur"},
|
||||
{required: true, message: "路由名称不能为空", trigger: "blur"},
|
||||
],
|
||||
path: [{required: true, message: "路径不能为空", trigger: "blur"}],
|
||||
path: [{required: true, message: "路由地址不能为空", trigger: "blur"}],
|
||||
frontRoute: [
|
||||
{required: true, message: "前端组件不能为空", trigger: "blur"},
|
||||
{required: true, message: "文件地址不能为空", trigger: "blur"},
|
||||
],
|
||||
sortOrder: [
|
||||
{
|
||||
|
@ -300,6 +309,7 @@ export default {
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.getAllList();
|
||||
},
|
||||
|
@ -329,8 +339,8 @@ export default {
|
|||
]),
|
||||
]);
|
||||
},
|
||||
// 更多操作
|
||||
handleDropdown(name) {
|
||||
console.log(name)
|
||||
if (name == "expandOne") {
|
||||
this.expandLevel = 1;
|
||||
this.getAllList();
|
||||
|
@ -348,6 +358,7 @@ export default {
|
|||
this.getAllList();
|
||||
}
|
||||
},
|
||||
// 获取所有菜单
|
||||
getAllList() {
|
||||
this.loading = true;
|
||||
getAllPermissionList().then((res) => {
|
||||
|
@ -434,19 +445,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
search() {
|
||||
if (this.searchKey) {
|
||||
this.loading = true;
|
||||
searchPermission({title: this.searchKey}).then((res) => {
|
||||
this.loading = false;
|
||||
if (res.success) {
|
||||
this.data = res.result;
|
||||
}
|
||||
});
|
||||
} else {
|
||||
this.getAllList();
|
||||
}
|
||||
},
|
||||
// 选择菜单
|
||||
selectTree(v) {
|
||||
if (v.length > 0) {
|
||||
// 转换null为""
|
||||
|
@ -459,6 +458,7 @@ export default {
|
|||
this.cancelEdit();
|
||||
}
|
||||
},
|
||||
// 取消选择
|
||||
cancelEdit() {
|
||||
let data = this.$refs.tree.getSelectedNodes()[0];
|
||||
if (data) {
|
||||
|
@ -468,11 +468,12 @@ export default {
|
|||
this.form.id = "";
|
||||
this.editTitle = "";
|
||||
},
|
||||
// 重置表单
|
||||
handleReset() {
|
||||
this.$refs.form.resetFields();
|
||||
this.form.icon = "";
|
||||
this.form.frontRoute = "";
|
||||
},
|
||||
// 保存
|
||||
submitEdit() {
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
|
@ -482,13 +483,16 @@ export default {
|
|||
}
|
||||
this.submitLoading = true;
|
||||
if (this.form.sortOrder == null) {
|
||||
this.form.sortOrder = "";
|
||||
this.form.sortOrder = 0;
|
||||
}
|
||||
if (this.form.buttonType == null) {
|
||||
this.form.buttonType = "";
|
||||
}
|
||||
|
||||
// 删除一些之前添加的无用字段
|
||||
delete this.form.icon;
|
||||
delete this.form.frontComponent;
|
||||
delete this.form.buttonType;
|
||||
delete this.form.updateTime;
|
||||
delete this.form.selected;
|
||||
delete this.form.description;
|
||||
|
||||
editPermission(this.form).then((res) => {
|
||||
this.submitLoading = false;
|
||||
if (res.success) {
|
||||
|
@ -503,6 +507,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 添加
|
||||
submitAdd() {
|
||||
this.$refs.formAdd.validate((valid) => {
|
||||
if (valid) {
|
||||
|
@ -522,18 +527,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
changeEditUrl(e) {
|
||||
let v = e.target.value;
|
||||
if (v.indexOf("http") > -1) {
|
||||
this.form.frontRoute = "sys/monitor/monitor";
|
||||
}
|
||||
},
|
||||
changeAddUrl(e) {
|
||||
let v = e.target.value;
|
||||
if (v.indexOf("http") > -1) {
|
||||
this.formAdd.frontRoute = "sys/monitor/monitor";
|
||||
}
|
||||
},
|
||||
// 添加子菜单
|
||||
addMenu() {
|
||||
if (!this.form.id) {
|
||||
this.$Message.warning("请先点击选择一个菜单权限节点");
|
||||
|
@ -549,14 +543,11 @@ export default {
|
|||
});
|
||||
return;
|
||||
}
|
||||
let frontRoute = "";
|
||||
this.formAdd = {
|
||||
icon: "",
|
||||
parentId: this.form.id,
|
||||
level: Number(this.form.level) + 1,
|
||||
sortOrder: 0,
|
||||
status: 0,
|
||||
showAlways: true,
|
||||
permission:'' // 权限url
|
||||
};
|
||||
if (this.form.level == 0) {
|
||||
this.formAdd.path = "/";
|
||||
|
@ -564,20 +555,22 @@ export default {
|
|||
}
|
||||
this.menuModalVisible = true;
|
||||
},
|
||||
// 添加顶级菜单
|
||||
addRootMenu() {
|
||||
this.modalTitle = "添加顶级菜单";
|
||||
this.showParent = false;
|
||||
this.formAdd = {
|
||||
level: 0,
|
||||
sortOrder: 0,
|
||||
status: 0,
|
||||
sortOrder: 0
|
||||
};
|
||||
this.menuModalVisible = true;
|
||||
},
|
||||
// 选中菜单赋值
|
||||
changeSelect(v) {
|
||||
this.selectCount = v.length;
|
||||
this.selectList = v;
|
||||
},
|
||||
// 批量删除菜单
|
||||
delAll() {
|
||||
if (this.selectCount <= 0) {
|
||||
this.$Message.warning("您还未勾选要删除的数据");
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<Tabs value="MESSAGE" @on-click="paneChange">
|
||||
|
||||
<TabPane label="站内信列表" name="MESSAGE">
|
||||
<Row v-show="openSearch" @keydown.enter.native="handleSearch">
|
||||
<Row @keydown.enter.native="handleSearch">
|
||||
<Form ref="searchForm" :model="searchMessageForm" inline :label-width="70" class="search-form">
|
||||
<Form-item label="消息标题" prop="title">
|
||||
<Input
|
||||
|
@ -47,7 +47,7 @@
|
|||
@on-selection-change="messageChangeSelect"
|
||||
></Table>
|
||||
</Row>
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
<Row type="flex" justify="end" class="mt_10 mb_10">
|
||||
<Page
|
||||
:current="searchMessageForm.pageNumber"
|
||||
:total="messageDataTotal"
|
||||
|
@ -71,9 +71,6 @@
|
|||
:columns="noticeColumns"
|
||||
:data="noticeData"
|
||||
ref="table"
|
||||
sortable="custom"
|
||||
@on-sort-change="changeSort"
|
||||
@on-selection-change="changeSelect"
|
||||
></Table>
|
||||
</Row>
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
|
@ -110,7 +107,7 @@
|
|||
</div>
|
||||
<div class="send-setting">
|
||||
<div class="left-show">
|
||||
<div v-for="(item, index) in form.variables">
|
||||
<div v-for="(item, index) in form.variables" :key="index">
|
||||
#{<span>{{item}}</span>}
|
||||
</div>
|
||||
</div>
|
||||
|
@ -184,7 +181,7 @@
|
|||
v-if="memberShow">
|
||||
<Button type="primary" icon="ios-add" @click="addVip" ghost>选择会员</Button>
|
||||
<div style="margin-top:24px;" v-if="messageSendForm.messageClient == 'member'">
|
||||
<Table border :columns="userColumns" :data="this.selectedMember">
|
||||
<Table border :columns="userColumns" :data="selectedMember">
|
||||
</Table>
|
||||
</div>
|
||||
</FormItem>
|
||||
|
@ -303,16 +300,14 @@
|
|||
import userList from "@/views/member/list/index";
|
||||
|
||||
export default {
|
||||
name: "bill",
|
||||
name: "noticeMessageTemplate",
|
||||
components: {
|
||||
userList
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
openSearch: true, // 显示搜索
|
||||
checkUserList: false, //会员选择器
|
||||
selectedMember: [], //选择的会员
|
||||
openTip: true, // 显示提示
|
||||
loading: true, // 表单加载状态
|
||||
modalVisible: false, // 添加或编辑显示
|
||||
modalTitle: "", // 添加或编辑标题
|
||||
|
@ -380,9 +375,6 @@
|
|||
|
||||
},
|
||||
submitLoading: false, // 添加或编辑提交状态
|
||||
selectList: [], // 多选数据
|
||||
messageSelectList: [], // 消息多选数据
|
||||
messageSelectCount: 0, // 多选计数
|
||||
selectCount: 0, // 多选计数
|
||||
noticeColumns: [
|
||||
{
|
||||
|
@ -688,15 +680,15 @@
|
|||
}
|
||||
},
|
||||
],
|
||||
memberMessageData: [], // 发送给店铺的消息数据
|
||||
memberMessageDataTotal: 0, // 发送给店铺的消息数据总数
|
||||
memberMessageData: [], // 发送给会员的消息数据
|
||||
memberMessageDataTotal: 0, // 发送给会员的消息数据总数
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.getMessage();
|
||||
},
|
||||
|
||||
// 返回已选择的用户
|
||||
callbackSelectUser(val) {
|
||||
// 每次将返回的数据回调判断
|
||||
|
@ -751,6 +743,7 @@
|
|||
this.$refs.memberLayout.selectedMember = true;
|
||||
});
|
||||
},
|
||||
// tab切换
|
||||
paneChange(v) {
|
||||
if (v == "SETTING") {
|
||||
this.getNoticeMessage()
|
||||
|
@ -759,24 +752,27 @@
|
|||
this.getMessage()
|
||||
}
|
||||
},
|
||||
// 分页 修改页码
|
||||
changePage(v) {
|
||||
this.searchForm.pageNumber = v;
|
||||
this.getNoticeMessage();
|
||||
this.clearSelectAll();
|
||||
},
|
||||
// 分页 修改页数
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = v;
|
||||
this.getNoticeMessage();
|
||||
},
|
||||
// 搜索
|
||||
handleSearch() {
|
||||
this.searchMessageForm.pageNumber = 1;
|
||||
this.searchMessageForm.pageSize = 10;
|
||||
this.getMessage();
|
||||
},
|
||||
|
||||
//消息每页条数发生变化
|
||||
messageChangePageSize(v) {
|
||||
this.searchMessageForm.pageSize = v;
|
||||
this.searchMessageForm.pageNumber = 1;
|
||||
this.getMessage();
|
||||
},
|
||||
//消息页数变化
|
||||
|
@ -789,6 +785,7 @@
|
|||
//会员消息每页条数发生变化
|
||||
memberMessageChangePageSize(v) {
|
||||
this.searchMemberMessageForm.pageSize = v;
|
||||
this.searchMemberMessageForm.pageNumber = 1;
|
||||
this.messageDetail();
|
||||
},
|
||||
//会员消息页数变化
|
||||
|
@ -821,38 +818,6 @@
|
|||
this.searchShopMessageForm.order = e.order;
|
||||
this.messageDetail()
|
||||
},
|
||||
//消息
|
||||
messageChangeSort(e) {
|
||||
this.searchMessageForm.sort = e.key;
|
||||
this.searchMessageForm.order = e.order;
|
||||
this.getMessage();
|
||||
},
|
||||
changeSort(e) {
|
||||
this.searchForm.sort = e.key;
|
||||
this.searchForm.order = e.order;
|
||||
if (e.order === "normal") {
|
||||
this.searchForm.order = "";
|
||||
}
|
||||
this.getNoticeMessage();
|
||||
},
|
||||
clearSelectAll() {
|
||||
this.$refs.table.selectAll(false);
|
||||
},
|
||||
//消息
|
||||
messageChangeSelect(e) {
|
||||
this.messageSelectList = e;
|
||||
this.messageSelectCount = e.length;
|
||||
},
|
||||
changeSelect(e) {
|
||||
this.selectList = e;
|
||||
this.selectCount = e.length;
|
||||
},
|
||||
selectDateRange(v) {
|
||||
if (v) {
|
||||
this.searchForm.startDate = v[0];
|
||||
this.searchForm.endDate = v[1];
|
||||
}
|
||||
},
|
||||
//获取发送段铺的名称
|
||||
getName(value) {
|
||||
this.messageSendForm.userNames = new Array()
|
||||
|
@ -965,7 +930,7 @@
|
|||
});
|
||||
this.loading = false;
|
||||
},
|
||||
|
||||
// 获取通知数据
|
||||
getNoticeMessage() {
|
||||
this.loading = true;
|
||||
API_Setting.getNoticeMessageData(this.searchForm).then((res) => {
|
||||
|
@ -1029,6 +994,7 @@
|
|||
this.messageDetailModalVisible = true;
|
||||
this.modalTitle = "消息详情"
|
||||
},
|
||||
// 编辑通知
|
||||
edit(v) {
|
||||
API_Setting.getNoticeMessageDetail(v.id).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<Row class="operation" style="margin-bottom: 10px">
|
||||
<Button @click="sendBatchSmsModal" type="primary">发送短信</Button>
|
||||
</Row>
|
||||
<Table :loading="loading" border :columns="smsColumns" :data="smsData" ref="table" sortable="custom" @on-sort-change="templateChangeSort">
|
||||
<Table :loading="loading" border :columns="smsColumns" :data="smsData" ref="table">
|
||||
</Table>
|
||||
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
|
@ -19,7 +19,7 @@
|
|||
<Button @click="addTemplate" type="primary">添加短信模板</Button>
|
||||
<Button @click="syncTemplate" type="info">同步</Button>
|
||||
</Row>
|
||||
<Table :loading="loading" border :columns="templateColumns" :data="templateData" ref="table" sortable="custom" @on-sort-change="smsChangeSort">
|
||||
<Table :loading="loading" border :columns="templateColumns" :data="templateData" ref="table">
|
||||
</Table>
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
<Page :current="templateSearchForm.pageNumber" :total="templateTotal" :page-size="templateSearchForm.pageSize" @on-change="templateChangePage"
|
||||
|
@ -31,7 +31,7 @@
|
|||
<Button @click="addSign" type="primary">添加短信签名</Button>
|
||||
<Button @click="syncSign" type="info">同步</Button>
|
||||
</Row>
|
||||
<Table :loading="loading" border :columns="signColumns" :data="signData" ref="table" sortable="custom" @on-sort-change="signChangeSort">
|
||||
<Table :loading="loading" border :columns="signColumns" :data="signData" ref="table">
|
||||
<template slot="signStatus" slot-scope="scope">
|
||||
<div v-if="scope.row.signStatus ==2 ">
|
||||
审核拒绝
|
||||
|
@ -45,7 +45,6 @@
|
|||
<div v-if="scope.row.signStatus ==1 ">
|
||||
审核通过
|
||||
</div>
|
||||
|
||||
</template>
|
||||
</Table>
|
||||
<Row type="flex" justify="end" class="mt_10">
|
||||
|
@ -168,7 +167,6 @@ export default {
|
|||
members: [], //所有会员
|
||||
smsTemplateContent: "", //短信模板内容
|
||||
memberNum: 0, //会员总数
|
||||
smsNum: 0, //预计发送短信条数
|
||||
smsContent: "<div class='sms'>效果预览</div>", //短信内容
|
||||
smsTemplates: [], //短信模板
|
||||
smsSigns: [], //短信签名
|
||||
|
@ -179,15 +177,6 @@ export default {
|
|||
templateModalTitle: "", //添加短信模板弹出框标题
|
||||
templateForm: {}, //短信模板添加form
|
||||
submitLoading: false, // 提交加载状态
|
||||
selected: "", // 已选数据
|
||||
settingData: "", // 设置数据
|
||||
modalTitle: "设置", // modal标题
|
||||
modalVisible: false, // modal显隐
|
||||
searchForm: {
|
||||
// 搜索框初始化对象
|
||||
pageNumber: 1, // 当前页数
|
||||
pageSize: 10, // 页面大小
|
||||
},
|
||||
signSearchForm: {
|
||||
// 搜索框初始化对象
|
||||
pageNumber: 1, // 当前页数
|
||||
|
@ -357,8 +346,7 @@ export default {
|
|||
{
|
||||
props: {
|
||||
type: "info",
|
||||
size: "small",
|
||||
icon: "ios-create-outline",
|
||||
size: "small"
|
||||
},
|
||||
style: {
|
||||
marginRight: "5px",
|
||||
|
@ -477,8 +465,8 @@ export default {
|
|||
signTotal: 0, // 表单数据总数
|
||||
};
|
||||
},
|
||||
filters: {},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.getSms();
|
||||
//查询会员总数
|
||||
|
@ -498,16 +486,11 @@ export default {
|
|||
alreadyCheckClose(val,index) {
|
||||
this.alreadyCheck.splice(index, 1);
|
||||
this.alreadyCheckShow.splice(index, 1);
|
||||
|
||||
|
||||
this.members.forEach((item,index)=>{
|
||||
if(item.____selected && item.mobile == val.mobile){
|
||||
item.____selected = false
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
this.smsForm.num--;
|
||||
this.memberNum--;
|
||||
},
|
||||
|
@ -515,7 +498,6 @@ export default {
|
|||
detail(){
|
||||
|
||||
},
|
||||
|
||||
//选择接收人事件
|
||||
smsRangeChange(v) {
|
||||
this.memberNum = 0;
|
||||
|
@ -589,7 +571,6 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
//弹出发送短信模态框
|
||||
sendBatchSmsModal() {
|
||||
this.templateSearchForm.templateStatus = 1;
|
||||
|
@ -604,7 +585,6 @@ export default {
|
|||
this.smsSigns = res.result.records;
|
||||
}
|
||||
});
|
||||
|
||||
this.smsContent = "<div class='sms'>效果预览</div>";
|
||||
//添加的时候将已经选过的手机号码置为空
|
||||
this.alreadyCheck = [];
|
||||
|
@ -623,9 +603,6 @@ export default {
|
|||
this.loading = false;
|
||||
this.sendSmsModal = true;
|
||||
},
|
||||
setting() {
|
||||
this.modalVisible = true;
|
||||
},
|
||||
//pane切换事件
|
||||
paneChange(v) {
|
||||
if (v == "TEMPLATE") {
|
||||
|
@ -673,8 +650,6 @@ export default {
|
|||
}
|
||||
this.smsForm.context = this.smsTemplateContent;
|
||||
},
|
||||
//查询方法
|
||||
handleSearch() {},
|
||||
//删除短信模板
|
||||
deleteSmsTemplate(v) {
|
||||
let params = {
|
||||
|
@ -721,7 +696,7 @@ export default {
|
|||
this.templateModalTitle = "添加短信模板";
|
||||
this.templateForm = {};
|
||||
},
|
||||
//新增短信模板
|
||||
//修改短信模板
|
||||
editTemplate(v) {
|
||||
this.templateModalVisible = true;
|
||||
this.templateModalTitle = "修改短信模板";
|
||||
|
@ -813,6 +788,7 @@ export default {
|
|||
},
|
||||
//短信记录页数变化
|
||||
smsChangePageSize(v) {
|
||||
this.smsSearchForm.pageNumber = 1;
|
||||
this.smsSearchForm.pageSize = v;
|
||||
this.getSms();
|
||||
},
|
||||
|
@ -823,19 +799,10 @@ export default {
|
|||
},
|
||||
//短信模板页数变化
|
||||
templateChangePageSize(v) {
|
||||
this.templateSearchForm.pageNumber =1;
|
||||
this.templateSearchForm.pageSize = v;
|
||||
this.getSmsTemplate();
|
||||
},
|
||||
templateChangeSort(e) {
|
||||
this.templateSearchForm.sort = e.key;
|
||||
this.templateSearchForm.order = e.order;
|
||||
this.getSmsTemplate();
|
||||
},
|
||||
smsChangeSort(e) {
|
||||
this.smsSearchForm.sort = e.key;
|
||||
this.smsSearchForm.order = e.order;
|
||||
this.getSms();
|
||||
},
|
||||
//分页获取短信模板数据
|
||||
getSmsTemplate() {
|
||||
this.loading = true;
|
||||
|
@ -867,14 +834,10 @@ export default {
|
|||
},
|
||||
//短信模板页数变化
|
||||
signChangePageSize(v) {
|
||||
this.signSearchForm.pageNumber = 1;
|
||||
this.signSearchForm.pageSize = v;
|
||||
this.getSmsSign();
|
||||
},
|
||||
signChangeSort(e) {
|
||||
this.signSearchForm.sort = e.key;
|
||||
this.signSearchForm.order = e.order;
|
||||
this.getSmsSign();
|
||||
},
|
||||
//修改短信签名
|
||||
editSign(v) {
|
||||
this.$router.push({ name: "add-sms-sign", query: { id: v.id } });
|
||||
|
@ -894,8 +857,7 @@ export default {
|
|||
},
|
||||
mounted() {
|
||||
this.init();
|
||||
},
|
||||
watch: {},
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
<template>
|
||||
<Card>
|
||||
<div style="margin-top: 0px">
|
||||
<div class="sign-name" v-if="id == undefined">
|
||||
新增签名
|
||||
</div>
|
||||
<div class="sign-name" v-else>
|
||||
修改签名
|
||||
<div class="sign-name">
|
||||
{{id ? '修改签名' : '新增签名'}}
|
||||
</div>
|
||||
<Form ref="form" :model="form" :label-width="100" :rules="formValidate">
|
||||
<FormItem label="签名" prop="signName">
|
||||
|
@ -53,18 +50,14 @@
|
|||
</div>
|
||||
<FormItem label="申请说明" prop="remark">
|
||||
<Input v-model="form.remark" clearable type="textarea" style="width: 50%" maxlength="100"
|
||||
:autosize="{maxRows:4,minRows: 4}" show-word-limit
|
||||
placeholder="请描述您的业务使用场景,不超过100字符;如:验证码、双十一大促营销"/>
|
||||
:autosize="{maxRows:4,minRows: 4}" show-word-limit
|
||||
placeholder="请描述您的业务使用场景,不超过100字符;如:验证码、双十一大促营销"/>
|
||||
</FormItem>
|
||||
</Form>
|
||||
<div class="footer">
|
||||
<Button type="primary" :loading="submitLoading" @click="addSignSubmit">提交
|
||||
</Button
|
||||
>
|
||||
<Button type="primary" :loading="submitLoading" @click="addSignSubmit">提交</Button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</Card>
|
||||
</template>
|
||||
|
||||
|
@ -77,7 +70,6 @@
|
|||
components: {
|
||||
uploadPicThumb
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
id: 0, // 签名id
|
||||
|
@ -96,14 +88,13 @@
|
|||
}
|
||||
|
||||
},
|
||||
filters: {},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.id = this.$route.query.id;
|
||||
if (this.id != undefined) {
|
||||
this.getSmsSignDetail();
|
||||
}
|
||||
|
||||
},
|
||||
//添加短信模板
|
||||
addSignSubmit() {
|
||||
|
@ -159,12 +150,9 @@
|
|||
mounted() {
|
||||
this.init();
|
||||
},
|
||||
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
.sign-name {
|
||||
margin-top: 5px;
|
||||
margin-left: 20px;
|
||||
|
|
|
@ -1,96 +0,0 @@
|
|||
|
||||
|
||||
<template>
|
||||
<div>
|
||||
<Card>
|
||||
<Row>
|
||||
<Form
|
||||
ref="searchForm"
|
||||
inline
|
||||
:label-width="70"
|
||||
|
||||
@keydown.enter.native="handleGo"
|
||||
>
|
||||
<Form-item label="链接地址" prop="url">
|
||||
<Input type="text" v-model="url" placeholder="http://" clearable style="width: 350px" />
|
||||
</Form-item>
|
||||
<Form-item style="margin-left:-50px;">
|
||||
<Button @click="handleGo" type="primary" icon="ios-send" style="margin-right:5px">前往</Button>
|
||||
<Button @click="handleOpen" icon="md-open">新窗口中打开</Button>
|
||||
</Form-item>
|
||||
</Form>
|
||||
</Row>
|
||||
<Divider style="margin-top:-10px;margin-bottom:0px;" />
|
||||
<Row>
|
||||
<div style="position:relative;">
|
||||
<iframe
|
||||
id="iframe"
|
||||
:src="go"
|
||||
frameborder="0"
|
||||
width="100%"
|
||||
:height="height"
|
||||
scrolling="auto"
|
||||
></iframe>
|
||||
<Spin fix size="large" v-if="loading"></Spin>
|
||||
</div>
|
||||
</Row>
|
||||
</Card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "monitor",
|
||||
data() {
|
||||
return {
|
||||
loading: false, // 加载状态
|
||||
go: "", // iframe 地址
|
||||
url: "", // 链接
|
||||
height: "525px" // iframe高度
|
||||
};
|
||||
},
|
||||
computed: {},
|
||||
methods: {
|
||||
initUrl() {
|
||||
let url = this.$route.meta.url;
|
||||
if (url !== null && url !== undefined) {
|
||||
this.url = url;
|
||||
this.go = url;
|
||||
// window.open(this.go);
|
||||
this.loading = true;
|
||||
let that = this;
|
||||
// 判断iframe是否加载完毕
|
||||
let iframe = document.getElementById("iframe");
|
||||
if (iframe.attachEvent) {
|
||||
iframe.attachEvent("onload", function() {
|
||||
//iframe加载完成后你需要进行的操作
|
||||
that.loading = false;
|
||||
});
|
||||
} else {
|
||||
iframe.onload = function() {
|
||||
//iframe加载完成后你需要进行的操作
|
||||
that.loading = false;
|
||||
};
|
||||
}
|
||||
}
|
||||
},
|
||||
handleGo() {
|
||||
this.go = this.url;
|
||||
},
|
||||
handleOpen() {
|
||||
window.open(this.url);
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
$route(to, from) {
|
||||
this.initUrl();
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// 计算高度
|
||||
let height = document.documentElement.clientHeight;
|
||||
this.height = Number(height - 217) + "px";
|
||||
this.initUrl();
|
||||
}
|
||||
};
|
||||
</script>
|
|
@ -1,135 +1,135 @@
|
|||
.search {
|
||||
.oss-operation {
|
||||
margin-bottom: 2vh;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
width: 100%;
|
||||
.oss-operation {
|
||||
margin-bottom: 2vh;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
width: 100%;
|
||||
|
||||
button {
|
||||
margin-right: 5px;
|
||||
}
|
||||
button {
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.none{
|
||||
.none {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.oss-wrapper {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
position: relative;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.oss-card {
|
||||
margin: 10px 20px 10px 0;
|
||||
width: 290px;
|
||||
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 {
|
||||
.content .other .name {
|
||||
color: #1890ff;
|
||||
transition: color .3s;
|
||||
}
|
||||
.play {
|
||||
transition: opacity .3s;
|
||||
opacity: 1 !important;
|
||||
}
|
||||
}
|
||||
|
||||
cursor: pointer;
|
||||
|
||||
.ivu-card-body {
|
||||
padding: 0;
|
||||
.img {
|
||||
height: 135px;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.content {
|
||||
.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;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
width: 33.33%;
|
||||
border-right: 1px solid #e8e8e8;
|
||||
}
|
||||
|
||||
: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%;
|
||||
}
|
||||
}
|
||||
.btn-no {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
width: 33.33%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,6 +26,9 @@
|
|||
style="width: 200px"
|
||||
/>
|
||||
</Form-item>
|
||||
<Button @click="handleSearch" type="primary" icon="ios-search" class="search-btn"
|
||||
>搜索
|
||||
</Button>
|
||||
<Form-item label="上传时间">
|
||||
<DatePicker
|
||||
v-model="selectDate"
|
||||
|
@ -37,10 +40,7 @@
|
|||
style="width: 200px"
|
||||
></DatePicker>
|
||||
</Form-item>
|
||||
<Button @click="handleSearch" type="primary" icon="ios-search" class="search-btn"
|
||||
>搜索
|
||||
</Button
|
||||
>
|
||||
|
||||
</Form>
|
||||
</Row>
|
||||
<div class="oss-operation padding-row">
|
||||
|
@ -558,7 +558,7 @@ export default {
|
|||
selectedParams(val) {
|
||||
this.$emit("callback", val);
|
||||
},
|
||||
|
||||
// 更多操作
|
||||
handleDropdown(name) {
|
||||
if (name == "refresh") {
|
||||
this.getDataList();
|
||||
|
@ -566,12 +566,14 @@ export default {
|
|||
this.removeAll();
|
||||
}
|
||||
},
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.accessToken = {
|
||||
accessToken: this.getStore("accessToken"),
|
||||
};
|
||||
this.getDataList();
|
||||
},
|
||||
// 查看大图
|
||||
showPic(v) {
|
||||
this.file = v;
|
||||
this.file.msize = ((v.fileSize * 1.0) / (1024 * 1024)).toFixed(2) + " MB";
|
||||
|
@ -579,6 +581,7 @@ export default {
|
|||
this.picTitle = v.name + "(" + v.fileKey + ")";
|
||||
this.picVisible = true;
|
||||
},
|
||||
// 查看视频
|
||||
showVideo(v) {
|
||||
dp = new DPlayer({
|
||||
container: document.getElementById("dplayer"),
|
||||
|
@ -596,18 +599,23 @@ export default {
|
|||
this.videoTitle = v.name + "(" + v.fileKey + ")";
|
||||
this.videoVisible = true;
|
||||
},
|
||||
// 关闭视频
|
||||
closeVideo() {
|
||||
dp.destroy();
|
||||
},
|
||||
// 分页 改变页码
|
||||
changePage(v) {
|
||||
this.searchForm.pageNumber = v;
|
||||
this.getDataList();
|
||||
this.clearSelectAll();
|
||||
},
|
||||
// 分页 改变页数
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = v;
|
||||
this.getDataList();
|
||||
},
|
||||
// 排序
|
||||
changeSort(e) {
|
||||
this.searchForm.sort = e.key;
|
||||
this.searchForm.order = e.order;
|
||||
|
@ -616,12 +624,14 @@ export default {
|
|||
}
|
||||
this.getDataList();
|
||||
},
|
||||
// 起止时间从新赋值
|
||||
selectDateRange(v) {
|
||||
if (v) {
|
||||
this.searchForm.startDate = v[0];
|
||||
this.searchForm.endDate = v[1];
|
||||
}
|
||||
},
|
||||
// 改变查看方式
|
||||
changeShowType() {
|
||||
this.searchForm.pageNumber = 1;
|
||||
if (this.showType == "list") {
|
||||
|
@ -631,7 +641,7 @@ export default {
|
|||
}
|
||||
this.getDataList();
|
||||
},
|
||||
|
||||
// 获取列表数据
|
||||
getDataList() {
|
||||
if (this.showType == "list") {
|
||||
this.pageSizeOpts = [10, 20, 50];
|
||||
|
@ -646,6 +656,7 @@ export default {
|
|||
this.total = res.result.total;
|
||||
});
|
||||
},
|
||||
// 搜索
|
||||
handleSearch() {
|
||||
this.searchForm.title = this.searchForm.name;
|
||||
this.searchForm.pageNumber = 1;
|
||||
|
@ -656,6 +667,7 @@ export default {
|
|||
}
|
||||
this.getDataList();
|
||||
},
|
||||
// 文件类型筛选
|
||||
changeFileType() {
|
||||
let name = this.fileType;
|
||||
if (name == "all") {
|
||||
|
@ -667,27 +679,14 @@ export default {
|
|||
}
|
||||
this.handleSearch();
|
||||
},
|
||||
handleReset() {
|
||||
this.$refs.searchForm.resetFields();
|
||||
this.searchForm.pageNumber = 1;
|
||||
if (this.showType == "list") {
|
||||
this.searchForm.pageSize = 5;
|
||||
} else {
|
||||
this.searchForm.pageSize = 12;
|
||||
}
|
||||
this.selectDate = null;
|
||||
this.searchForm.startDate = "";
|
||||
this.searchForm.endDate = "";
|
||||
this.searchForm.fileKey = "";
|
||||
// 重新加载数据
|
||||
this.getDataList();
|
||||
},
|
||||
// 上传文件超过大小限制
|
||||
handleMaxSize(file) {
|
||||
this.$Notice.warning({
|
||||
title: "文件大小过大",
|
||||
desc: "所选文件‘ " + file.name + " ’大小过大, 不得超过 5M.",
|
||||
});
|
||||
},
|
||||
// 上传成功回调
|
||||
handleSuccess(res, file) {
|
||||
if (res.success) {
|
||||
this.$Message.success("上传文件 " + file.name + " 成功");
|
||||
|
@ -696,20 +695,25 @@ export default {
|
|||
this.$Message.error(res.message);
|
||||
}
|
||||
},
|
||||
// 上传失败回调
|
||||
handleError(error, file, fileList) {
|
||||
this.$Message.error(error.toString());
|
||||
},
|
||||
// 清空上传文件
|
||||
clearFiles() {
|
||||
this.$refs.up.clearFiles();
|
||||
},
|
||||
// 取消修改文件名
|
||||
handleCancel() {
|
||||
this.modalVisible = false;
|
||||
},
|
||||
// 下载文件
|
||||
download(v) {
|
||||
window.open(
|
||||
v.url + "?attname=&response-content-type=application/octet-stream"
|
||||
);
|
||||
},
|
||||
// 批量删除文件
|
||||
removeAll() {
|
||||
if (this.selectCount <= 0) {
|
||||
this.$Message.warning("您还未选择要删除的数据");
|
||||
|
@ -736,6 +740,7 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
// 单个删除文件
|
||||
remove(v) {
|
||||
this.$Modal.confirm({
|
||||
title: "确认删除",
|
||||
|
@ -752,6 +757,7 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
// 提交修改文件名
|
||||
handleSubmit() {
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
|
@ -773,6 +779,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 修改文件名modal
|
||||
rename(v) {
|
||||
this.modalTitle = "编辑文件名";
|
||||
// 转换null为""
|
||||
|
@ -787,10 +794,12 @@ export default {
|
|||
this.oldKey = data.fileKey;
|
||||
this.modalVisible = true;
|
||||
},
|
||||
// 清除选中状态
|
||||
clearSelectAll() {
|
||||
this.$refs.table.selectAll(false);
|
||||
this.totalSize = "";
|
||||
},
|
||||
// 选中回调
|
||||
changeSelect(e) {
|
||||
this.selectList = e;
|
||||
this.selectCount = e.length;
|
||||
|
@ -803,7 +812,6 @@ export default {
|
|||
},
|
||||
mounted() {
|
||||
this.init();
|
||||
|
||||
this.baseUrl =
|
||||
process.env.NODE_ENV === "development"
|
||||
? this.config.api_dev.common
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
.permModal {
|
||||
.ivu-modal-body {
|
||||
max-height: 560px;
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.depModal {
|
||||
.ivu-modal-body {
|
||||
max-height: 500px;
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
.tips{
|
||||
font-size: 12px;
|
||||
color: #999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.title{
|
||||
|
||||
font-weight: bold;
|
||||
margin-right: 20px;
|
||||
}
|
|
@ -1,6 +1,3 @@
|
|||
<style lang="scss">
|
||||
@import "./roleManage.scss";
|
||||
</style>
|
||||
<template>
|
||||
<div class="search">
|
||||
<Card>
|
||||
|
@ -26,7 +23,7 @@
|
|||
</FormItem>
|
||||
</Form>
|
||||
<div slot="footer">
|
||||
<Button type="text" @click="cancelRole">取消</Button>
|
||||
<Button type="text" @click="roleModalVisible = false">取消</Button>
|
||||
<Button type="primary" :loading="submitLoading" @click="submitRole">提交
|
||||
</Button>
|
||||
</div>
|
||||
|
@ -39,7 +36,7 @@
|
|||
<Spin size="large" fix v-if="treeLoading"></Spin>
|
||||
</div>
|
||||
<div slot="footer">
|
||||
<Button type="text" @click="cancelPermEdit">取消</Button>
|
||||
<Button type="text" @click="permModalVisible = false">取消</Button>
|
||||
<Select v-model="openLevel" @on-change="changeOpen" style="width: 110px; text-align: left; margin-right: 10px">
|
||||
<Option value="0">展开所有</Option>
|
||||
<Option value="1">收合所有</Option>
|
||||
|
@ -110,7 +107,6 @@ import {
|
|||
editRole,
|
||||
deleteRole,
|
||||
loadDepartment,
|
||||
editRoleDep,
|
||||
selectRoleMenu,
|
||||
saveRoleMenu,
|
||||
} from "@/api/index";
|
||||
|
@ -129,7 +125,6 @@ export default {
|
|||
depTreeLoading: true, // 部门树加载
|
||||
submitPermLoading: false, // 权限提交加载
|
||||
submitDepLoading: false, // 部门提交加载
|
||||
searchKey: "", // 搜索关键字
|
||||
sortColumn: "", // 排序
|
||||
sortType: "desc", // 排序类型
|
||||
modalType: 0, // 0 添加 1 编辑
|
||||
|
@ -265,19 +260,15 @@ export default {
|
|||
};
|
||||
},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.getRoleList();
|
||||
// 获取所有菜单权限树
|
||||
this.getPermList();
|
||||
},
|
||||
|
||||
handleContextMenu(val) {
|
||||
console.log(val);
|
||||
},
|
||||
|
||||
// 渲染部门前icon
|
||||
renderContent(h, { root, node, data }) {
|
||||
let icon = "";
|
||||
|
||||
if (data.level == 0) {
|
||||
icon = "ios-navigate";
|
||||
} else if (data.level == 1) {
|
||||
|
@ -324,15 +315,19 @@ export default {
|
|||
]
|
||||
);
|
||||
},
|
||||
// 分页 修改页码
|
||||
changePage(v) {
|
||||
this.pageNumber = v;
|
||||
this.getRoleList();
|
||||
this.clearSelectAll();
|
||||
},
|
||||
// 分页 修改页数
|
||||
changePageSize(v) {
|
||||
this.pageNumber = 1;
|
||||
this.pageSize = v;
|
||||
this.getRoleList();
|
||||
},
|
||||
// 变更排序方式
|
||||
changeSort(e) {
|
||||
this.sortColumn = e.key;
|
||||
this.sortType = e.order;
|
||||
|
@ -389,9 +384,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
cancelRole() {
|
||||
this.roleModalVisible = false;
|
||||
},
|
||||
// 提交
|
||||
submitRole() {
|
||||
this.$refs.roleForm.validate((valid) => {
|
||||
if (valid) {
|
||||
|
@ -434,6 +427,7 @@ export default {
|
|||
delete this.roleForm.id;
|
||||
this.roleModalVisible = true;
|
||||
},
|
||||
// 编辑
|
||||
edit(v) {
|
||||
this.modalType = 1;
|
||||
this.modalTitle = "编辑角色";
|
||||
|
@ -449,6 +443,7 @@ export default {
|
|||
this.roleForm = roleInfo;
|
||||
this.roleModalVisible = true;
|
||||
},
|
||||
// 删除
|
||||
remove(v) {
|
||||
this.$Modal.confirm({
|
||||
title: "确认删除",
|
||||
|
@ -465,13 +460,16 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
// 清除选中
|
||||
clearSelectAll() {
|
||||
this.$refs.table.selectAll(false);
|
||||
},
|
||||
// 选中回调
|
||||
changeSelect(e) {
|
||||
this.selectList = e;
|
||||
this.selectCount = e.length;
|
||||
},
|
||||
// 批量删除
|
||||
delAll() {
|
||||
if (this.selectCount <= 0) {
|
||||
this.$Message.warning("您还未选择要删除的数据");
|
||||
|
@ -509,15 +507,12 @@ export default {
|
|||
this.modalTitle = "分配 " + v.name + " 的菜单权限";
|
||||
// 匹配勾选
|
||||
let rolePerms;
|
||||
|
||||
// 当前角色的菜单权限
|
||||
|
||||
let res = await selectRoleMenu(v.id);
|
||||
if (res.result) {
|
||||
rolePerms = res.result;
|
||||
this.rolePermsWay = res.result;
|
||||
}
|
||||
|
||||
// 递归判断子节点
|
||||
this.checkPermTree(this.permData, rolePerms);
|
||||
console.warn(this.permData);
|
||||
|
@ -555,7 +550,6 @@ export default {
|
|||
}
|
||||
return false;
|
||||
},
|
||||
|
||||
// 递归全选节点
|
||||
selectedTreeAll(permData, select) {
|
||||
let that = this;
|
||||
|
@ -566,15 +560,11 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
/**分配菜单权限 */
|
||||
submitPermEdit() {
|
||||
this.saveRoleWay = [];
|
||||
|
||||
this.selectIsSuperModel = true; //打开选择权限
|
||||
|
||||
let selectedNodes = this.$refs.tree.getCheckedNodes();
|
||||
|
||||
let way = [];
|
||||
|
||||
selectedNodes.forEach((e) => {
|
||||
|
@ -605,10 +595,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
cancelPermEdit() {
|
||||
this.permModalVisible = false;
|
||||
},
|
||||
// 加载数据
|
||||
loadData(item, callback) {
|
||||
loadDepartment(item.id, { openDataFilter: false }).then((res) => {
|
||||
if (res.success) {
|
||||
|
@ -627,9 +614,8 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 判断展开子节点
|
||||
expandCheckDep(v) {
|
||||
// 判断展开子节点
|
||||
this.checkDepTree(v.children, this.editDepartments);
|
||||
},
|
||||
// 判断子节点
|
||||
|
@ -643,7 +629,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 树结构展开层级
|
||||
changeOpen(v) {
|
||||
if (v == "0") {
|
||||
this.permData.forEach((e) => {
|
||||
|
@ -737,5 +723,28 @@ export default {
|
|||
.btn-item{
|
||||
margin-right: 20px;
|
||||
}
|
||||
.permModal {
|
||||
.ivu-modal-body {
|
||||
max-height: 560px;
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
|
||||
.depModal {
|
||||
.ivu-modal-body {
|
||||
max-height: 500px;
|
||||
overflow: auto;
|
||||
}
|
||||
}
|
||||
.tips{
|
||||
font-size: 12px;
|
||||
color: #999;
|
||||
margin-left: 8px;
|
||||
}
|
||||
.title{
|
||||
|
||||
font-weight: bold;
|
||||
margin-right: 20px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
<div class="layout">
|
||||
|
||||
<div class="row" v-if="client ==item.client" v-for="(item,index) in formValidate" :key="index">
|
||||
<div class="row" v-if="client == item.client" v-for="(item,index) in formValidate" :key="index">
|
||||
<div class="col">
|
||||
<Card :padding="0">
|
||||
<!-- app -->
|
||||
|
@ -51,7 +51,6 @@
|
|||
<script>
|
||||
import { setSetting } from "@/api/index";
|
||||
import { handleSubmit } from "../setting/validate";
|
||||
import { getPaymentSupportForm } from "@/api/setting";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
@ -76,7 +75,7 @@ export default {
|
|||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 保存
|
||||
setupSetting() {
|
||||
this.$Spin.show();
|
||||
setTimeout(() => {
|
||||
|
|
|
@ -74,7 +74,7 @@ export default {
|
|||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
this.$Spin.show();
|
||||
setTimeout(() => {
|
||||
|
|
|
@ -51,7 +51,7 @@ export default {
|
|||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -86,7 +86,7 @@ export default {
|
|||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 修改支付设置
|
||||
handleChangePayType(val) {
|
||||
this.$Modal.confirm({
|
||||
title: "修改支付设置",
|
||||
|
@ -100,7 +100,7 @@ export default {
|
|||
},
|
||||
});
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, { paymentSupportItems: this.formValidate }).then(
|
||||
(res) => {
|
||||
|
|
|
@ -57,7 +57,7 @@ export default {
|
|||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -553,6 +553,7 @@
|
|||
this.initWeibo();
|
||||
this.initAlipay();
|
||||
},
|
||||
// 基础配置
|
||||
initBase() {
|
||||
this.loading = true;
|
||||
getParams('base').then(res => {
|
||||
|
@ -564,6 +565,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 积分设置
|
||||
initPoint() {
|
||||
this.loading = true;
|
||||
getParams('point').then(res => {
|
||||
|
@ -575,6 +577,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 订单设置
|
||||
initOrder() {
|
||||
this.loading = true;
|
||||
getParams('order').then(res => {
|
||||
|
@ -586,6 +589,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 商品设置
|
||||
initGoods() {
|
||||
this.loading = true;
|
||||
getParams('goods').then(res => {
|
||||
|
@ -597,6 +601,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
//
|
||||
initWeibo() {
|
||||
this.loading = true;
|
||||
getParams('weibo').then(res => {
|
||||
|
@ -608,6 +613,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 微信设置
|
||||
initWechat() {
|
||||
this.loading = true;
|
||||
getParams('wechat').then(res => {
|
||||
|
@ -630,6 +636,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 阿里配置
|
||||
initAlipay() {
|
||||
this.loading = true;
|
||||
getParams('alipay').then(res => {
|
||||
|
@ -641,6 +648,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存基础配置
|
||||
saveBase() {
|
||||
this.$refs.baseForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -655,6 +663,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存积分配置
|
||||
savePoint() {
|
||||
this.$refs.pointForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -669,6 +678,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存订单配置
|
||||
saveOrder() {
|
||||
this.$refs.orderForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -683,6 +693,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存商品设置
|
||||
saveGoods() {
|
||||
this.$refs.goodsForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -697,6 +708,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存微信设置
|
||||
saveWechat() {
|
||||
this.$refs.wechatForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -711,6 +723,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存qq设置
|
||||
saveQQ() {
|
||||
this.$refs.qqForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -725,6 +738,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存微博设置
|
||||
saveWeibo() {
|
||||
this.$refs.wechatForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -739,6 +753,7 @@
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存支付宝设置
|
||||
saveAlipay() {
|
||||
this.$refs.alipayForm.validate(valid => {
|
||||
if (valid) {
|
||||
|
|
|
@ -79,7 +79,6 @@ export default {
|
|||
};
|
||||
},
|
||||
created() {
|
||||
console.log(this.type);
|
||||
this.init();
|
||||
},
|
||||
methods: {
|
||||
|
@ -95,12 +94,12 @@ export default {
|
|||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
// 选择回显
|
||||
callbackSelected(val) {
|
||||
this.picModelFlag = false;
|
||||
this.formValidate[this.selected] = val.url;
|
||||
console.log(val);
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
@ -110,8 +109,6 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
/**添加必填项 */
|
||||
init() {
|
||||
this.res = JSON.parse(this.res);
|
||||
|
|
|
@ -80,12 +80,6 @@ export default {
|
|||
ruleValidate: {} // 验证规则
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
res: {
|
||||
handler() {},
|
||||
immediate: true,
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.init();
|
||||
},
|
||||
|
@ -107,6 +101,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -28,23 +28,18 @@ export default {
|
|||
};
|
||||
},
|
||||
props: ["res",'type'],
|
||||
watch: {
|
||||
res: {
|
||||
handler() {},
|
||||
immediate: true,
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.init();
|
||||
},
|
||||
methods: {
|
||||
// 验证
|
||||
submit(name) {
|
||||
let that = this;
|
||||
if( handleSubmit(that, name )){
|
||||
this.setupSetting()
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
@ -56,8 +51,7 @@ export default {
|
|||
},
|
||||
// 实例化数据
|
||||
init() {
|
||||
this.res = JSON.parse(this.res);
|
||||
|
||||
this.res = JSON.parse(this.res);
|
||||
this.$set(this, "formValidate", { ...this.res });
|
||||
Object.keys(this.formValidate).forEach((item) => {
|
||||
this.ruleValidate[item] = [
|
||||
|
@ -68,7 +62,6 @@ export default {
|
|||
},
|
||||
];
|
||||
});
|
||||
|
||||
},
|
||||
},
|
||||
};
|
||||
|
|
|
@ -62,13 +62,14 @@ export default {
|
|||
this.init();
|
||||
},
|
||||
methods: {
|
||||
// 保存
|
||||
submit(name) {
|
||||
let that = this;
|
||||
if (handleSubmit(that, name)) {
|
||||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
@ -81,7 +82,7 @@ export default {
|
|||
// 实例化数据
|
||||
init() {
|
||||
this.res = JSON.parse(this.res);
|
||||
Object.keys(this.res).map((item) => {
|
||||
Object.keys(this.res).map((item) => {
|
||||
this.res[item] += "";
|
||||
});
|
||||
this.$set(this, "formValidate", { ...this.res });
|
||||
|
|
|
@ -44,13 +44,14 @@ export default {
|
|||
this.init();
|
||||
},
|
||||
methods: {
|
||||
// 保存
|
||||
submit(name) {
|
||||
let that = this;
|
||||
if( handleSubmit(that, name )){
|
||||
this.setupSetting()
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -71,13 +71,14 @@ export default {
|
|||
this.init();
|
||||
},
|
||||
methods: {
|
||||
// 保存
|
||||
submit(name) {
|
||||
let that = this;
|
||||
if (handleSubmit(that, name)) {
|
||||
this.setupSetting();
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -41,13 +41,14 @@ export default {
|
|||
this.init();
|
||||
},
|
||||
methods: {
|
||||
// 保存
|
||||
submit(name) {
|
||||
let that = this;
|
||||
if( handleSubmit(that, name )){
|
||||
this.setupSetting()
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -33,13 +33,14 @@ export default {
|
|||
},
|
||||
props: ["res", "type"],
|
||||
methods: {
|
||||
// 保存
|
||||
submit(name) {
|
||||
let that = this;
|
||||
if( handleSubmit(that, name )){
|
||||
this.setupSetting()
|
||||
}
|
||||
},
|
||||
|
||||
// 保存设置
|
||||
setupSetting() {
|
||||
setSetting(this.type, this.formValidate).then((res) => {
|
||||
if (res.success) {
|
||||
|
|
|
@ -88,13 +88,13 @@ export default {
|
|||
this.$nextTick(() => {
|
||||
this.show = true;
|
||||
});
|
||||
// this.$router.go(0)
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.clickTab(this.selected);
|
||||
},
|
||||
methods: {
|
||||
// tab切换
|
||||
clickTab(name) {
|
||||
this.selected = name;
|
||||
this.getSettingData(name);
|
||||
|
|
|
@ -64,12 +64,11 @@
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
settingInfo("SMS_SETTING")
|
||||
},
|
||||
setting() {
|
||||
this.modalVisible = true
|
||||
},
|
||||
// 保存设置
|
||||
saveSetting() {
|
||||
setSetting("SMS_SETTING", this.form).then((res) => {
|
||||
if (res.success) {
|
||||
|
@ -80,6 +79,7 @@
|
|||
this.modalVisible = false
|
||||
});
|
||||
},
|
||||
// 查看
|
||||
settingInfo(v) {
|
||||
alert()
|
||||
this.selected = v
|
||||
|
|
|
@ -118,7 +118,7 @@ import * as API_Setting from "@/api/setting";
|
|||
import uploadPicInput from "@/views/my-components/lili/upload-pic-input";
|
||||
export default {
|
||||
components: {
|
||||
uploadPicInput,
|
||||
uploadPicInput
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
@ -238,12 +238,15 @@ export default {
|
|||
},
|
||||
|
||||
methods: {
|
||||
// 分页 改变页码
|
||||
changePage(v) {
|
||||
this.searchForm.pageNumber = v;
|
||||
this.getDataList();
|
||||
this.clearSelectAll();
|
||||
},
|
||||
// 分页 改变页数
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = v;
|
||||
this.getDataList();
|
||||
},
|
||||
|
|
|
@ -104,7 +104,7 @@
|
|||
</FormItem>
|
||||
</Form>
|
||||
<div slot="footer">
|
||||
<Button type="text" @click="cancelUser">取消</Button>
|
||||
<Button type="text" @click="userModalVisible = false">取消</Button>
|
||||
<Button type="primary" :loading="submitLoading" @click="submitUser">提交</Button>
|
||||
</div>
|
||||
</Modal>
|
||||
|
@ -136,7 +136,6 @@ export default {
|
|||
},
|
||||
data() {
|
||||
return {
|
||||
height: 510, // 高度
|
||||
loading: true, // 加载状态
|
||||
selectCount: 0, // 已选数量
|
||||
selectList: [], // 已选数据列表
|
||||
|
@ -353,13 +352,14 @@ export default {
|
|||
],
|
||||
data: [], // 用户数据
|
||||
total: 0, // 总数
|
||||
departments: [] // 部门
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
// 初始化数据
|
||||
init() {
|
||||
this.getUserList();
|
||||
},
|
||||
// 选择部门回调
|
||||
handleSelectDepTree(v) {
|
||||
if (v) {
|
||||
this.form.departmentId = v.departmentId;
|
||||
|
@ -369,24 +369,22 @@ export default {
|
|||
this.form.departmentTitle = "";
|
||||
}
|
||||
},
|
||||
// 搜索项部门选择
|
||||
handleSelectDep(v) {
|
||||
this.searchForm.departmentId = v;
|
||||
},
|
||||
// 分页 修改页码
|
||||
changePage(v) {
|
||||
this.searchForm.pageNumber = v;
|
||||
this.getUserList();
|
||||
this.clearSelectAll();
|
||||
},
|
||||
// 分页 修改页数
|
||||
changePageSize(v) {
|
||||
this.searchForm.pageSize = v;
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.getUserList();
|
||||
},
|
||||
selectDateRange(v) {
|
||||
if (v) {
|
||||
this.searchForm.startDate = v[0];
|
||||
this.searchForm.endDate = v[1];
|
||||
}
|
||||
},
|
||||
getUserList() {
|
||||
// 多条件搜索用户列表
|
||||
this.loading = true;
|
||||
|
@ -405,11 +403,13 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 搜索
|
||||
handleSearch() {
|
||||
this.searchForm.pageNumber = 1;
|
||||
this.searchForm.pageSize = 10;
|
||||
this.getUserList();
|
||||
},
|
||||
// 排序
|
||||
changeSort(e) {
|
||||
this.searchForm.sort = e.key;
|
||||
this.searchForm.order = e.order;
|
||||
|
@ -418,6 +418,7 @@ export default {
|
|||
}
|
||||
this.getUserList();
|
||||
},
|
||||
// 获取角色列表
|
||||
getRoleList() {
|
||||
let params = {
|
||||
pageSize: 100
|
||||
|
@ -428,6 +429,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 重置密码
|
||||
resetPass() {
|
||||
this.$Modal.confirm({
|
||||
title: "确认重置",
|
||||
|
@ -453,9 +455,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
cancelUser() {
|
||||
this.userModalVisible = false;
|
||||
},
|
||||
// 确认提交
|
||||
submitUser() {
|
||||
this.$refs.form.validate(valid => {
|
||||
if (valid) {
|
||||
|
@ -498,6 +498,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 添加用户
|
||||
add() {
|
||||
this.modalType = 0;
|
||||
this.modalTitle = "添加用户";
|
||||
|
@ -505,20 +506,18 @@ export default {
|
|||
this.$refs.depTree.setData("", "");
|
||||
this.userModalVisible = true;
|
||||
},
|
||||
// 编辑用户
|
||||
edit(v) {
|
||||
this.form = JSON.parse(JSON.stringify(v));
|
||||
this.modalType = 1;
|
||||
this.modalTitle = "编辑用户";
|
||||
this.$refs.form.resetFields();
|
||||
// 转换null为""
|
||||
|
||||
for (let attr in this.form) {
|
||||
if (this.form[attr] == null) {
|
||||
this.form[attr] = "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.$refs.depTree.setData(this.form.departmentId, this.form.departmentTitle);
|
||||
let selectRolesId = [];
|
||||
if (this.form.roles) {
|
||||
|
@ -529,6 +528,7 @@ export default {
|
|||
this.form.roles = selectRolesId;
|
||||
this.userModalVisible = true;
|
||||
},
|
||||
// 启用
|
||||
enable(v) {
|
||||
let params = {
|
||||
status: true
|
||||
|
@ -548,6 +548,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 禁用
|
||||
disable(v) {
|
||||
let params = {
|
||||
status: false
|
||||
|
@ -567,6 +568,7 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 删除用户
|
||||
remove(v) {
|
||||
this.$Modal.confirm({
|
||||
title: "确认删除",
|
||||
|
@ -583,14 +585,17 @@ export default {
|
|||
}
|
||||
});
|
||||
},
|
||||
// 选中状态
|
||||
showSelect(e) {
|
||||
this.exportData = e;
|
||||
this.selectList = e;
|
||||
this.selectCount = e.length;
|
||||
},
|
||||
// 清除选中状态
|
||||
clearSelectAll() {
|
||||
this.$refs.table.selectAll(false);
|
||||
},
|
||||
// 批量删除
|
||||
delAll() {
|
||||
if (this.selectCount <= 0) {
|
||||
this.$Message.warning("您还未选择要删除的数据");
|
||||
|
@ -619,8 +624,6 @@ export default {
|
|||
}
|
||||
},
|
||||
mounted() {
|
||||
// 计算高度
|
||||
this.height = Number(document.documentElement.clientHeight - 230);
|
||||
this.init();
|
||||
this.getRoleList();
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
export const result = [
|
||||
{
|
||||
name: "lili",
|
||||
showAlways: true,
|
||||
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "商品",
|
||||
|
@ -15,7 +15,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "goods-list",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "商品管理",
|
||||
|
@ -28,7 +28,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "goods-operation",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "商品发布",
|
||||
|
@ -42,7 +42,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "goods",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "商品列表",
|
||||
|
@ -56,7 +56,7 @@ export const result = [
|
|||
},
|
||||
// {
|
||||
// name: "daft-goods",
|
||||
// showAlways: true,
|
||||
//
|
||||
// level: 2,
|
||||
// type: 0,
|
||||
// title: "草稿商品",
|
||||
|
@ -72,7 +72,7 @@ export const result = [
|
|||
{
|
||||
path: "template-goods",
|
||||
props: {type: "TEMPLATE"},
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "商品模版",
|
||||
|
@ -86,7 +86,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "category",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "店铺分类",
|
||||
|
@ -105,7 +105,7 @@ export const result = [
|
|||
|
||||
{
|
||||
name: "order",
|
||||
showAlways: true,
|
||||
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "订单",
|
||||
|
@ -119,7 +119,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "order",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "订单管理",
|
||||
|
@ -132,7 +132,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "orderList",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "商品订单",
|
||||
|
@ -146,7 +146,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "virtualOrderList",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "虚拟订单",
|
||||
|
@ -162,7 +162,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "memberComment",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "评价管理",
|
||||
|
@ -175,7 +175,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "memberComment",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "评价管理",
|
||||
|
@ -191,7 +191,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "order",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "售后管理",
|
||||
|
@ -204,7 +204,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "returnGoodsOrder",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "退货管理",
|
||||
|
@ -218,7 +218,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "returnMoneyOrder",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "退款管理",
|
||||
|
@ -232,7 +232,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "orderComplaint",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "投诉管理",
|
||||
|
@ -251,7 +251,7 @@ export const result = [
|
|||
|
||||
{
|
||||
name: "bill",
|
||||
showAlways: true,
|
||||
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "财务",
|
||||
|
@ -265,7 +265,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "bill",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "财务管理",
|
||||
|
@ -278,7 +278,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "accountStatementBill",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "财务对账",
|
||||
|
@ -292,7 +292,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "storeBill",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "店铺结算",
|
||||
|
@ -309,7 +309,7 @@ export const result = [
|
|||
|
||||
{
|
||||
name: "receiptManager",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "发票管理",
|
||||
|
@ -322,7 +322,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "receipt",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "发票管理",
|
||||
|
@ -340,7 +340,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "promotion",
|
||||
showAlways: true,
|
||||
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "营销",
|
||||
|
@ -354,7 +354,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "promotion",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "平台活动",
|
||||
|
@ -367,7 +367,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "pintuan",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "拼团活动",
|
||||
|
@ -381,7 +381,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "seckill",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "秒杀活动",
|
||||
|
@ -397,7 +397,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "lives",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "直播活动",
|
||||
|
@ -410,7 +410,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "live",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "直播管理",
|
||||
|
@ -424,7 +424,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "liveGoods",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "直播商品",
|
||||
|
@ -440,7 +440,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "storePromotion",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "商家活动",
|
||||
|
@ -453,7 +453,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "full-cut",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "满额活动",
|
||||
|
@ -467,7 +467,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "coupon",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "优惠券",
|
||||
|
@ -484,7 +484,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "distribution",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "分销管理",
|
||||
|
@ -497,7 +497,6 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "distributionGoods",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "分销商品",
|
||||
|
@ -511,7 +510,6 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "distributionOrder",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "分销订单",
|
||||
|
@ -530,7 +528,6 @@ export const result = [
|
|||
|
||||
{
|
||||
name: "statistics",
|
||||
showAlways: true,
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "统计",
|
||||
|
@ -544,7 +541,6 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "statistics",
|
||||
showAlways: true,
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "统计管理",
|
||||
|
@ -557,7 +553,6 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "goodsStatistics",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "商品统计",
|
||||
|
@ -571,7 +566,6 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "orderStatistics",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "订单统计",
|
||||
|
@ -585,7 +579,6 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "trafficStatistics",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "流量统计",
|
||||
|
@ -597,7 +590,6 @@ export const result = [
|
|||
permTypes: [],
|
||||
children: null
|
||||
},
|
||||
|
||||
]
|
||||
}
|
||||
]
|
||||
|
@ -605,7 +597,6 @@ export const result = [
|
|||
|
||||
{
|
||||
name: "settings",
|
||||
showAlways: true,
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "设置",
|
||||
|
@ -618,7 +609,6 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "user-manage",
|
||||
showAlways: true,
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "页面设置",
|
||||
|
@ -632,7 +622,6 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "ship",
|
||||
showAlways: true,
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "配送设置",
|
||||
|
@ -645,7 +634,6 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "shipTemplate",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "配送模板",
|
||||
|
@ -659,7 +647,6 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "logistics",
|
||||
showAlways: true,
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "物流公司",
|
||||
|
@ -675,7 +662,6 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "shop",
|
||||
showAlways: false,
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "店铺管理",
|
||||
|
@ -688,7 +674,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "shopSetting",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "店铺设置",
|
||||
|
@ -703,7 +689,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "shopAddress",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "自提管理",
|
||||
|
@ -723,7 +709,7 @@ export const result = [
|
|||
},
|
||||
{
|
||||
name: "messages",
|
||||
showAlways: true,
|
||||
|
||||
level: 0,
|
||||
type: -1,
|
||||
title: "消息",
|
||||
|
@ -736,7 +722,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "user-manage",
|
||||
showAlways: true,
|
||||
|
||||
level: 1,
|
||||
type: 0,
|
||||
title: "系统消息",
|
||||
|
@ -749,7 +735,7 @@ export const result = [
|
|||
children: [
|
||||
{
|
||||
name: "message_index",
|
||||
showAlways: true,
|
||||
|
||||
level: 2,
|
||||
type: 0,
|
||||
title: "系统消息",
|
||||
|
|
Loading…
Reference in New Issue