Commit a001c733 authored by Mac's avatar Mac

新增学员列表

parent ad565a10
......@@ -123,12 +123,13 @@
})
},
goUrl() {
this.$router.push({
name: 'usersList',
query: {
blank: "y"
}
});
// this.$router.push({
// name: 'usersList',
// query: {
// blank: "y"
// }
// });
this.$router.go(-1);//返回上一层
},
generateUUID(){
var d = new Date().getTime();
......
<template>
<div class="usersList">
<div class="head-title">
用户管理
<el-button
@click="dialogVisible = true"
style="float: right; margin-top: -5px"
size="small"
type="primary"
>批量导出
</el-button>
<el-button
@click="addusers"
style="float: right; margin-top: -5px; margin-right: 10px"
size="small"
type="primary"
>新增
</el-button>
</div>
<div class="content">
<div>
<el-select
class="w100"
@change="(msg.pageIndex = 1), getList()"
style="margin-right: 10px"
v-model="msg.MemberGrade"
size="small"
placeholder="请选择"
>
<el-option label="全部会员" :value="0"></el-option>
<el-option
v-for="item in memberGradeList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
>
</el-option>
</el-select>
<el-select
class="w100"
@change="(msg.pageIndex = 1), getList()"
style="margin-right: 10px"
v-model="msg.Source"
size="small"
placeholder="请选择"
>
<el-option label="全部平台" :value="0"></el-option>
<el-option
v-for="item in platList"
:key="item.Id"
:label="item.Name"
:value="item.Id"
>
</el-option>
</el-select>
<div class="searchInput" style="width: 150px">
<el-input
@keyup.enter.native="(msg.pageIndex = 1), getList()"
@clear="(msg.pageIndex = 1), getList()"
style="display: inline-block; width: 125px; height: 30px"
placeholder="请输入ID"
v-model="msg.Id"
size="small"
clearable
>
</el-input>
<span
@click="(msg.pageIndex = 1), getList()"
class="el-icon-search"
style="
color: #979dad;
font-size: 14px;
position: relative;
top: 1px;
"
></span>
</div>
<div class="searchInput" style="width: 150px">
<el-input
@keyup.enter.native="(msg.pageIndex = 1), getList()"
@clear="(msg.pageIndex = 1), getList()"
style="display: inline-block; width: 125px; height: 30px"
placeholder="请输入昵称"
v-model="msg.Name"
size="small"
clearable
>
</el-input>
<span
@click="(msg.pageIndex = 1), getList()"
class="el-icon-search"
style="
color: #979dad;
font-size: 14px;
position: relative;
top: 1px;
"
></span>
</div>
<div class="searchInput" style="width: 150px">
<el-input
@keyup.enter.native="(msg.pageIndex = 1), getList()"
@clear="(msg.pageIndex = 1), getList()"
style="display: inline-block; width: 125px; height: 30px"
placeholder="请输入手机号"
v-model="msg.Moblie"
size="small"
clearable
>
</el-input>
<span
@click="(msg.pageIndex = 1), getList()"
class="el-icon-search"
style="
color: #979dad;
font-size: 14px;
position: relative;
top: 1px;
"
></span>
</div>
<el-date-picker
v-model="dateList"
@change="(msg.pageIndex = 1), getList()"
size="small"
type="datetimerange"
range-separator="至"
value-format="yyyy-MM-dd HH:mm:ss"
start-placeholder="开始日期"
end-placeholder="结束日期"
>
</el-date-picker>
</div>
<el-table
:data="tableData"
v-loading="loading"
border
style="width: 100%; margin: 20px 0"
>
<el-table-column prop="Id" label="ID" width="100"> </el-table-column>
<el-table-column prop="address" width="280" label="头像">
<template slot-scope="scope">
<div
class="app-image"
:style="{
backgroundImage: 'url(' + scope.row.Photo + ')',
backgroundSize: 'cover',
}"
></div>
<div flex="dir:left cross:center">
{{ scope.row.Name }}
<span
v-if="scope.row.AliasName && scope.row.AliasName != ''"
class="remark_name"
>备注名:{{ scope.row.AliasName }}</span
>
</div>
<img
v-if="scope.row.Source == 1"
style="width: 24px; height: 24px"
src="../../assets/img/userman/wx.png"
alt=""
class="platform-img"
/>
<button
type="button"
class="el-button el-button--success"
style="float: right; padding: 5px !important"
>
<span @click="ChangeOpenidState(scope.$index, scope.row)"
>显示OpenId</span
>
</button>
<div v-show="scope.row.OpenIdState">{{ scope.row.OpenId }}</div>
</template>
</el-table-column>
<el-table-column prop="PostName" label="职位"> </el-table-column>
<el-table-column label="会员类型">
<template slot-scope="scope">
<span
>{{ scope.row.MemberGradeName }}
<span>
<el-tag
v-if="scope.row.UserPageTypeStr == '全部'"
size="mini"
>{{ scope.row.UserPageTypeStr }}</el-tag
>
<el-tag
v-if="scope.row.UserPageTypeStr == '商城'"
type="success"
size="mini"
>{{ scope.row.UserPageTypeStr }}</el-tag
>
<el-tag
v-if="scope.row.UserPageTypeStr == '校园'"
type="danger"
size="mini"
>{{ scope.row.UserPageTypeStr }}</el-tag
>
</span>
</span>
</template>
</el-table-column>
<el-table-column prop="name" label="订单数">
<template slot-scope="scope">
<span
@click="
CommonJump('orderList', { TypeId: 4, UserId: scope.row.Id })
"
class="blue point"
>{{ scope.row.OrderNum }}</span
>
</template>
</el-table-column>
<el-table-column prop="name" label="优惠券数量">
<template slot-scope="scope">
<span
@click="CommonJump('usersCoupon', { UserId: scope.row.Id })"
class="blue point"
>{{ scope.row.CouponsNum }}</span
>
</template>
</el-table-column>
<el-table-column prop="name" label="卡券数量">
<template slot-scope="scope">
<span class="blue point">{{ scope.row.CardVolumeNum }}</span>
</template>
</el-table-column>
<el-table-column prop="name" label="余额">
<template slot-scope="scope">
<span @click="CommonJump('balanceBudget')" class="blue point">{{
scope.row.Balance
}}</span>
</template>
</el-table-column>
<el-table-column prop="name" label="是否认证">
<template slot-scope="scope">
</template>
</el-table-column>
<el-table-column prop="CreateDate" width="150" label="加入时间">
</el-table-column>
<el-table-column prop="address" width="200" label="操作">
<template slot-scope="scope">
<el-tooltip
class="item"
effect="dark"
content="编辑"
placement="top"
>
<img
@click="EditgoUrl(scope.row)"
style="width: 32px; height: 32px"
src="../../assets/img/userman/edit.png"
alt=""
/>
</el-tooltip>
<el-tooltip
class="item"
effect="dark"
content="充值积分"
placement="top"
>
<img
@click="OpenczjfDig(scope.row, 1)"
style="width: 32px; height: 32px; margin: 0 10px"
src="../../assets/img/userman/integral.png"
alt=""
/>
</el-tooltip>
<el-tooltip
class="item"
effect="dark"
content="充值余额"
placement="top"
>
<img
@click="OpenczjfDig(scope.row, 2)"
style="width: 32px; height: 32px"
src="../../assets/img/userman/balance.png"
alt=""
/>
</el-tooltip>
<el-tooltip
class="item"
effect="dark"
content="二维码"
placement="top"
>
<img
@click="showQRcode(scope.row)"
style="width: 32px; height: 32px"
src="../../assets/img/userman/QRcode.png"
alt=""
/>
</el-tooltip>
<el-tooltip
class="item"
effect="dark"
content="查看详情"
placement="top"
>
<img
@click="showDetail(scope.row)"
style="width: 32px; height: 32px"
src="../../assets/img/userman/icon-show.png"
alt=""
/>
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination
style="text-align: right"
background
@current-change="handleCurrentChange"
:page-size="msg.pageSize"
:current-page.sync="msg.pageIndex"
layout="total,prev, pager, next"
:total="total"
>
</el-pagination>
</div>
<!-- 选择导出信息 -->
<el-dialog title="选择导出信息" :visible.sync="dialogVisible" width="960px">
<el-form
style="border: 1px solid #f0f2f7"
:model="addMsg"
ref="addMsg"
label-width="100px"
>
<div
style="
box-sizing: border-box;
background-color: #f3f5f6;
width: 100%;
padding-left: 20px;
height: 50px;
line-height: 50px;
"
>
<el-checkbox
:indeterminate="isIndeterminate"
v-model="checkAll"
@change="handleCheckAllChange"
>全选
</el-checkbox>
</div>
<div style="margin: 15px 0"></div>
<div style="padding: 10px 25px 20px">
<el-checkbox-group
v-model="checkedCities"
@change="handleCheckedCitiesChange"
>
<el-checkbox
style="margin-bottom: 10px; width: 135px"
v-for="city in cities"
:label="city.Id"
:key="city.Name"
>
{{ city.Name }}</el-checkbox
>
</el-checkbox-group>
</div>
</el-form>
<div style="text-align: right; margin-top: 20px">
<el-button size="small" type="primary" @click="Export">导出</el-button>
</div>
</el-dialog>
<!-- 选择文件 -->
<el-dialog title="选择文件" :visible.sync="changeState" width="1240px">
<ChooseImg @SelectId="SelectId" ref="mychild"></ChooseImg>
</el-dialog>
<!-- 充值积分 -->
<el-dialog title="充值" :visible.sync="czjfDig" width="600px">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px">
<el-form-item label="操作" prop="Type">
<el-radio v-model="addMsg.Type" :label="1">充值</el-radio>
<el-radio v-model="addMsg.Type" :label="2">扣除</el-radio>
</el-form-item>
<el-form-item v-if="czType == 1" label="积分数" prop="Integral">
<el-input
@keyup.native="checkInteger(addMsg, 'Integral')"
size="small"
v-model="addMsg.Integral"
></el-input>
</el-form-item>
<el-form-item v-if="czType == 2" label="充值金额" prop="Balance">
<el-input
@keyup.native="checkInteger(addMsg, 'Balance')"
size="small"
v-model="addMsg.Balance"
></el-input>
</el-form-item>
<el-form-item label="充值图片">
<el-button @click="openChangeDig" size="small">选择文件</el-button>
<div>
<img
v-if="imgurl == ''"
style="width: 80px; height: 80px"
src="../../assets/img/default.png"
alt=""
/>
<img
v-else
style="width: 80px; height: 80px"
:src="imgurl"
alt=""
/>
</div>
</el-form-item>
<el-form-item label="备注">
<el-input size="small" v-model="addMsg.Description"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="czjfDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="czsubmitForm('addMsg')"
>确 定</el-button
>
</span>
</el-dialog>
<!-- 充值积分 -->
<el-dialog title="二维码" :visible.sync="qrshow" width="600px">
<div style="display: flex; align-items: center; justify-content: center">
<el-image
style="width: 200px; height: 200px"
:src="qrcodeImg"
></el-image>
</div>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="qrshow = false">关 闭</el-button>
</span>
</el-dialog>
<el-dialog title="查看详情" :visible.sync="detailShow" width="600px">
<detail :data="detailData" />
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="detailShow = false">关 闭</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import ChooseImg from "@/components/global/ChooseImg.vue";
import detail from "./components/seeDetail";
export default {
components: {
ChooseImg,
detail,
},
data() {
return {
czType: 1,
czjfDig: false,
changeState: false,
loading: false,
checkAll: false,
checkedCities: [],
cities: [],
cityOptions: [],
isIndeterminate: false,
addMsg: {},
dialogVisible: false,
value: "",
options: [],
tableData: [],
msg: {
pageIndex: 1,
pageSize: 15,
Name: "",
Source: 0,
MemberGrade: 0,
Id: "",
Moblie: "",
StartTime: "",
EndTime: "",
},
total: 0,
platList: [],
memberGradeList: [],
rules: {
Type: [
{
required: true,
message: "请选择类型",
trigger: "change",
},
],
Integral: [
{
required: true,
message: "请输入积分",
trigger: "blur",
},
],
},
addMsg: {
MallBaseId: 0,
Type: 1,
UserId: 0,
Integral: 0,
Image: "",
Description: "",
},
imgurl: "",
dateList: [],
qrcodeImg: "",
qrshow: false,
//查看详情
detailData: {},
detailShow:false,
};
},
created() {
this.getList();
this.getplat();
this.getDown();
this.GetMemberGradeList();
this.addMsg.MallBaseId = this.getLocalStorage().MallBaseId;
},
methods: {
SelectId(msg) {
this.changeState = false;
this.addMsg.Image = msg.id;
this.imgurl = this.getIconLink(msg.url);
},
EditgoUrl(row) {
this.$router.push({
name: "studentListEdit",
query: {
UserId: row.Id,
blank: "y",
},
});
},
addusers() {
this.$router.push({
name: "addUsers",
query: {
blank: "y",
},
});
},
czsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
let cmd = "";
if (this.czType == 1) {
cmd = "/api/user/SetMemberIntegralInfo";
} else {
cmd = "/api/user/SetMemberBalanceInfo";
}
this.apipost(
cmd,
this.addMsg,
(res) => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message);
this.czjfDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
OpenczjfDig(row, index) {
this.czType = index;
this.czjfDig = true;
this.addMsg = {
MallBaseId: this.getLocalStorage().MallBaseId,
Type: 1,
UserId: row.Id,
Integral: "",
Image: "",
Description: "",
Balance: "",
};
this.imgurl = "";
},
showQRcode(row) {
this.apipost(
"/api/user/GetWeiXinQRCodeForHT",
{ Path: "/pages/index/index?user_id=" + row.Id, With: 212 },
(res) => {
if (res.data.resultCode == 1) {
if (res.data.data) {
this.qrcodeImg = this.domainManager().DomainUrl + res.data.data;
this.qrshow = true;
}
} else {
this.Error(res.data.message);
}
}
);
},
openChangeDig() {
this.changeState = true;
setTimeout(() => {
this.$refs.mychild.InitData(this.czType);
}, 10);
},
Export() {
this.msg.ExcelEnumIds = this.checkedCities;
let msg = JSON.parse(JSON.stringify(this.msg));
if (!msg.Id || msg.Id == "") {
msg.Id = 0;
}
this.GetLocalFile(
"/api/user/GetMemberUserListToExcel",
msg,
"用户管理.xls"
);
},
ChangeOpenidState(index, row) {
this.tableData[index].OpenIdState = !this.tableData[index].OpenIdState;
},
getList() {
this.loading = true;
let msg = JSON.parse(JSON.stringify(this.msg));
if (!msg.Id || msg.Id == "") {
msg.Id = 0;
}
if (this.dateList && this.dateList.length > 0) {
msg.StartTime = this.dateList[0];
msg.EndTime = this.dateList[1];
this.msg.StartTime = this.dateList[0];
this.msg.EndTime = this.dateList[1];
} else {
msg.StartTime = "";
msg.EndTime = "";
this.msg.StartTime = "";
this.msg.EndTime = "";
}
this.apipost("/api/user/GetMemberUserPageList", msg, (res) => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
pageData.forEach((item) => {
item.OpenIdState = false;
});
this.tableData = pageData;
}
});
},
getDown() {
this.cityOptions = [];
this.apipost("/api/user/GetMemberUserExcelEnumList", {}, (res) => {
this.cities = res.data.data;
let data = res.data.data;
data.forEach((item) => {
this.cityOptions.push(item.Id);
});
});
},
GetMemberGradeList() {
let msg = {
Grade: 0,
Name: "",
Enabled: 1,
};
this.apipost("/api/user/GetMemberGradeList", msg, (res) => {
this.memberGradeList = res.data.data;
});
},
getplat() {
this.apipost("/api/user/GetMemberUserSourceEnumList", {}, (res) => {
this.platList = res.data.data;
});
},
handleCheckAllChange(val) {
this.checkedCities = val ? this.cityOptions : [];
this.isIndeterminate = false;
},
handleCheckedCitiesChange(value) {
let checkedCount = value.length;
this.checkAll = checkedCount === this.cities.length;
this.isIndeterminate =
checkedCount > 0 && checkedCount < this.cities.length;
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//详情页
showDetail(row) {
let msg = {
UserId: row.Id,
};
this.apipost("/api/Miai/GetMiAiBaseIfo", msg, (res) => {
if (res.data.resultCode == 1) {
this.detailData = res.data.data;
this.detailData.RealName = row.Name
this.detailShow=true
} else {
this.$message({
message: res.data.message,
type: "warning",
});
}
});
},
},
mounted() {},
};
</script>
<style>
.usersList .remark_name {
color: #888888;
font-size: 12px;
margin-left: 10px;
float: right;
}
.usersList .app-image {
background-position: center center;
width: 50px;
height: 50px;
border-radius: 0%;
float: left;
margin-right: 8px;
}
.usersList .blue {
color: #409eff;
}
.usersList .content .searchInput {
border: 1px solid #dcdfe6;
border-radius: 4px;
}
.usersList .content .searchInput .el-input__inner {
border: none;
outline: none;
height: 30px;
line-height: 30px;
}
.usersList .content .searchInput {
line-height: normal;
display: inline-table;
width: 100%;
border-collapse: separate;
border-spacing: 0;
width: 250px;
margin-right: 20px;
}
.usersList .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
</style>
<template>
<div class="setMember studentList usersListEdit">
<div class="head-title">
<span @click="goUrl" class="blue point">用户管理</span> / 用户编辑
</div>
<div class="content">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="150px">
<el-form-item label="用户">
<div class="app-image" :style="{backgroundImage:'url(' + userInfo.Photo + ')',backgroundSize:'cover'}"></div>
</el-form-item>
<el-form-item label="昵称">
<el-input v-model="userInfo.Name" style="width:478px" size="small" :disabled="true"></el-input>
</el-form-item>
<el-form-item label="会员等级">
<el-select style="width:293px;" size="small" v-model="userInfo.MemberGrade" placeholder="请选择活动区域">
<el-option label="普通用户" :value="0"></el-option>
<el-option v-for="(item,index) in options" :key="index" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="上级">
<el-select size="small" v-model="userInfo.SuperiorId" :filter-method="ChangeListName" filterable
placeholder="请选择">
<el-option label="总部" :value="0"></el-option>
<el-option v-for="item in tableData" :key="item.Id" :label="item.Name" :value="item.Id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="职位" v-if="mall_userInfo.TenantId==1 && mall_userInfo.MallBaseId==1">
<el-select size="small" v-model="userInfo.PostId" placeholder="请选择">
<el-option label="无" :value="0"></el-option>
<el-option label="领队导游" :value="1"></el-option>
</el-select>
</el-form-item>
<el-form-item label="加入黑名单">
<el-switch v-model="userInfo.Blacklist" active-color="#409EFF" :active-value="1" :inactive-value="0">
</el-switch>
<span class="tip">加入黑名单后,用户将无法下单</span>
</el-form-item>
<el-form-item label="联系方式">
<el-input v-model="userInfo.ContactWay" style="width:478px" size="small"></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="userInfo.Moblie" style="width:478px" size="small"></el-input>
</el-form-item>
<el-form-item label="备注">
<el-input v-model="userInfo.Remark" style="width:478px" size="small"></el-input>
</el-form-item>
<el-form-item label="修改备注名">
<el-input v-model="userInfo.AliasName" style="width:478px" size="small"></el-input>
</el-form-item>
<el-form-item label="注册时间">
<span>{{userInfo.CreateDate}}</span>
</el-form-item>
</el-form>
</div>
<div style="margin-top:20px">
<el-button size="small" type="primary" @click="Save">保存</el-button>
</div>
</div>
</template>
<script>
export default {
data() {
return {
addMsg: {
Id: '',
SuperiorId: '',
MemberGrade: '',
ContactWay: '',
Remark: '',
AliasName: '',
PostId: 0, //职位
},
val: '',
value: '',
total: 0,
rules: {
name: [{
required: true,
message: '新手机号',
trigger: 'blur'
}],
},
restaurants: [],
UserId: '',
userInfo: {},
msg: {
pageIndex: 1,
pageSize: 20,
Name: '',
Source: 0,
MemberGrade: 0,
Id: 0,
Moblie: ''
},
mall_userInfo: {}, //用户信息
tableData: [],
options: [],
};
},
created() {
this.mall_userInfo = JSON.parse(localStorage.mall_userInfo)
if (this.$route.query.UserId) {
this.UserId = this.$route.query.UserId;
this.getData()
this.getList();
this.getMemberGradeList()
}
},
methods: {
Save() {
let userInfo = this.userInfo;
this.addMsg = {
Id: userInfo.Id,
SuperiorId: userInfo.SuperiorId,
MemberGrade: userInfo.MemberGrade,
ContactWay: userInfo.ContactWay,
Remark: userInfo.Remark,
AliasName: userInfo.AliasName,
PostId: userInfo.PostId,
Blacklist:userInfo.Blacklist,
Moblie:userInfo.Moblie,
}
this.apipost("/api/user/SetMemberUserInfoForHT", this.addMsg, res => {
if (res.data.resultCode == 1) {
this.goUrl();
} else {
this.Error(res.data.message);
}
})
},
handleSelect(item) {},
ChangeListName(val) {
this.msg.Name = val;
this.getList();
},
getList() {
this.loading = true;
this.apipost("/api/user/GetMemberUserDropDownList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
this.tableData = pageData;
}
})
},
getMemberGradeList() {
this.loading = true;
this.apipost("/api/user/GetMemberGradeList", {
Grade: 0,
Name: '',
Enabled: 1
}, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.options = res.data.data
}
})
},
querySearch(queryString, cb) {
},
openChangeDig() {
this.changeState = true;
},
goUrl() {
this.$router.push({
name: 'studentList',
query: {
blank: "y"
}
});
},
getData() {
this.apipost("/api/user/GetMemberUserInfo", {
UserId: this.UserId
}, res => {
this.userInfo = res.data.data;
this.msg.Name = this.userInfo.SuperiorName;
this.getList();
})
},
},
mounted() {
}
};
</script>
<style>
.usersListEdit .tip {
margin-left: 10px;
display: inline-block;
height: 30px;
line-height: 30px;
color: #ff4544;
background-color: #FEF0F0;
padding: 0 20px;
border-radius: 5px;
}
.usersListEdit .app-image {
background-size: cover;
background-position: center center;
width: 80px;
height: 80px;
border-radius: 0%;
}
.setMember .setTable .el-table__body .cell {
display: flex;
align-items: center;
}
.setMember .commonLabel .el-form-item__label {
margin-top: -4px;
}
.setMember .discount .el-form-item__label {
padding-right: 30px;
margin-top: -4px;
}
.setMember .el-form-item .elzk {
position: absolute;
left: -25px;
top: 8px;
}
.setMember .el-form-item {
position: relative;
}
.studentList .blue {
color: #409EFF;
}
.studentList .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
</style>
......@@ -105,12 +105,12 @@
<el-input type="text" class="w400" v-model="addMsg.ActivityName" size="small"></el-input>
</el-form-item>
<el-form-item label="开始时间" class="is-required" prop="StartTime">
<el-date-picker class="w300" value-format="yyyy-MM-dd" v-model="addMsg.StartTime" type="date" size="small"
<el-date-picker class="w300" value-format="yyyy-MM-dd HH:mm:ss" v-model="addMsg.StartTime" type="datetime" size="small"
placeholder="开始时间">
</el-date-picker>
</el-form-item>
<el-form-item label="结束时间" class="is-required" prop="EndTime">
<el-date-picker class="w300" v-model="addMsg.EndTime" type="date" size="small" placeholder="结束时间">
<el-date-picker class="w300" value-format="yyyy-MM-dd HH:mm:ss" v-model="addMsg.EndTime" type="datetime" size="small" placeholder="结束时间">
</el-date-picker>
</el-form-item>
<el-form-item label="报名开始时间" class="is-required" prop="SignStartTime">
......
......@@ -786,6 +786,18 @@ export default new Router({
name: 'usersListEdit',
component: resolve => require(['@/components/UserMan/usersListEdit'], resolve),
},
// 用户管理 学员列表
{
path: '/studentList',
name: 'studentList',
component: resolve => require(['@/components/UserMan/studentList'], resolve),
},// 用户管理 学员列表编辑
{
path: '/studentListEdit',
name: 'studentListEdit',
component: resolve => require(['@/components/UserMan/studentListEdit'], resolve),
},
// 用户管理 相亲用户列表
{
path: '/blindDateUsersList',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment