master
lion 1 year ago
parent 3d219520fc
commit 1e86382124

@ -90,7 +90,7 @@ const install = (Vue, vm) => {
uni.showToast({
icon: "none",
title: res.data.errmsg,
duration: 1500
duration: 2000
})
}
return false;
@ -102,7 +102,7 @@ const install = (Vue, vm) => {
uni.showToast({
icon: "none",
title: '' + res.statusCode,
duration: 1500
duration: 2000
})
return false;

@ -179,20 +179,24 @@
},
//
submit() {
console.log("course_forms", this.course_forms)
// return
this.$emit("backForm",this.course_forms)
// this.$refs.submitForms.validate(valid => {
// if (valid) {
// console.log('');
// // this.$emit("backForm", this.course_forms)
// return
// } else {
// console.log('');
// this.base.toast("")
// }
// });
console.log("course_forms", this.course_forms)
let errorCount = 0
this.course_forms.map(item=>{
if(item.rule){
if (item.rule.indexOf('required') !== -1) {
if(this.base.isNull(item.value)){
this.base.toast(`${item.name}不能为空`)
errorCount++
return
}
}
}
})
if(errorCount>0){
return
}else{
this.$emit("backForm",this.course_forms)
}
},
},
watch: {
@ -214,7 +218,7 @@
if (item.rule.indexOf('required') !== -1) {
_rule[item.field].push({
required: true,
message: `请输入${item.name}123`,
message: `请输入${item.name}`,
trigger: ['blur'],
})
}

@ -34,7 +34,7 @@
<view>{{mess['company_position']||''}}</view>
</view>
</view>
<view class="wrap-item">
<!-- <view class="wrap-item">
<view class="wrap-item-name" v-for="(mess,inx) in item" @click.stop="chooseItem(mess)">
<text>{{mess.username}}</text>
<text class="courseName"
@ -42,7 +42,7 @@
</view>
<view>{{mess.company_name}}</view>
<view>{{mess.company_position}}</view>
</view>
</view> -->
</view>
<view class="no-data" v-if="!hasData">
<image class="no-data-img" :src="noDataImgSrc"></image>

@ -56,7 +56,19 @@ export default {
default: () => {
return "选择时间段";
}
},
},
min:{
type: Number,
default: () => {
return 8;
}
},
max:{
type: Number,
default: () => {
return 18;
}
}
},
data() {
return {
@ -64,19 +76,37 @@ export default {
isShow:false,//
typeList:["开始时间","结束时间"],
typeIndex:0,//
startvalue:[14,0],//14 00
endvalue:[15,0],//15 00
startvalue:[0,0],//14 00
endvalue:[17,0],//15 00
indicatorStyle: 'height: 50px;',
// timeList:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],
timeHour:[],
timeMin:[],//
};
},
},
watch:{
min(val){
console.log("val",val)
if(val){
//
let timeHour = []
let timeMin = []
for (let i = this.min; i < this.max+1; i++) {
timeHour.push(this.formatNumber(i))
}
for (let i = 0; i < 60; i++) {
timeMin.push(this.formatNumber(i))
}
this.timeHour = timeHour
this.timeMin = timeMin
}
}
},
mounted() {
//
let timeHour = []
let timeMin = []
for (let i = 0; i < 24; i++) {
for (let i = 8; i < 18; i++) {
timeHour.push(this.formatNumber(i))
}
for (let i = 0; i < 60; i++) {

@ -53,7 +53,8 @@
course_id: '',
showPosition: false,
positionList: [],
dateShow: false,
dateShow: false,
is_fee:0, //
dateParams: {
year: true,
month: true,
@ -162,7 +163,9 @@
})
if (res.course_forms && res.course_forms.length > 0) {
this.course_forms = res.course_forms
}
}
this.is_fee = res.is_fee
},
backForm(e) {
console.log("e", e)
@ -171,7 +174,7 @@
_arr.push({
name: item.name,
field: item.field,
value: item.value
value: item.value?item.value:''
})
//
if(item.belong_user===1){
@ -210,11 +213,41 @@
course_id: this.course_id,
data: this.apply_form
}).then(res => {
this.base.toast("报名成功")
uni.redirectTo({
url: '/packages/mycourse/index'
})
this.base.toast("报名成功")
if(this.is_fee){
this.newsSubscription()
}else{
uni.redirectTo({
url: '/packages/mycourse/index'
})
}
})
},
//
newsSubscription() {
let that = this
uni.getSetting({
withSubscriptions: true, //false
success(res) {
if (res.authSetting['scope.subscribeMessage']) {
uni.redirectTo({
url: '/packages/mycourse/index'
})
} else {
//
uni.requestSubscribeMessage({
tmplIds: ['6bkRNahvR88pG4Tpk0c2aY81kszvFpdaIV-CdC_ENTM'],
success(res) {
that.base.toast("订阅成功",1500,function(){
uni.redirectTo({
url: '/packages/mycourse/index'
})
})
}
})
}
}
});
},
}
}

@ -3,15 +3,16 @@
<image class="cbg" :src="base.imgHost('common_bg.png')"></image>
<view class="wrap">
<u-form :model="form" ref="uForm" :label-width="140" :label-align="'left'" :error-type="['message']">
<u-form-item label="预约场地" prop="siteName" required>
<u-input :placeholder="'请选择'" v-model="form.siteName" type="select" @click="siteShow = true" />
</u-form-item>
<u-form-item label="预约日期" prop="date" required>
<u-input :placeholder="'请选择'" v-model="form.date" :type="'select'" @click="dateShow = true" />
</u-form-item>
<u-form-item label="预约时间" prop="timeRange" required>
<u-input :placeholder="'请选择'" v-model="form.timeRange" :type="'select'" @click="openTime" />
</u-form-item>
<u-form-item label="预约场地" prop="siteName" required>
<u-input :placeholder="'请选择'" v-model="form.siteName" type="select" @click="siteShow = true" />
</u-form-item>
<u-form-item label="预约事项" prop="content" required>
<u-input :placeholder="'请输入预约事项'" v-model="form.content" type="textarea" />
</u-form-item>
@ -50,7 +51,9 @@
<u-picker @confirm="dateConfirm" mode="time" v-model="dateShow" :params="dateParams"></u-picker>
<timeSlot ref="timeslot" :title="'选择时间段'" @confirm="confirmTime"></timeSlot>
<timeSlot ref="timeslot" :title="'选择时间段'"
:min="hMin" :max="hMax"
@confirm="confirmTime"></timeSlot>
<u-picker @confirm="siteConfirm" v-model="siteShow" :range="siteList" range-key="name"
mode="selector"></u-picker>
@ -99,7 +102,9 @@
},
data() {
return {
dateShow: false,
dateShow: false,
hMin:0,
hMax:24,
dateParams: {
year: true,
month: true,
@ -193,7 +198,14 @@
console.log("e", e)
this.form.site = this.siteList[e[0]].id
this.form.siteName = this.siteList[e[0]].name
this.siteTotal = this.siteList[e[0]].total
this.siteTotal = this.siteList[e[0]].total
if(this.siteList[e[0]].start_time){
let _arr = this.siteList[e[0]].start_time.split(":")
this.hMin = parseInt(_arr[0])
let _arr1 = this.siteList[e[0]].end_time.split(":")
this.hMax = parseInt(_arr1[0])
console.log(this.hMin,this.hMax)
}
},
plateChange(val,index) {
console.log(val,this.plateIndex)
@ -275,10 +287,14 @@
if (valid) {
start_time = this.form.date + ' ' + this.form.start_time + ':00'
end_time = this.form.date + ' ' + this.form.end_time + ':00'
this.form.accompany_total = this.form.accompany.length
console.log("this.form", this.form)
this.form.accompany_total = this.form.accompany.length
let _plate = ''
if(this.plateList.length>0){
if(this.plateList.length>this.form.accompany_total+1){
this.base.toast("车辆数量已经大于预约人数了")
return
}
this.plateList.map(item=>{
_plate+=item.plate+','
})

@ -4,22 +4,27 @@
<view class="wrap">
<view>{{courseInfo.name}}</view>
<view v-if="fee_status==1">
<view v-if="info.fee_status==1">
您已缴费成功
</view>
<view v-else>
</view>
<view v-else-if="info.fee_status==2">
您上传的缴费图片有误请重新上传
</view>
<view v-else-if="info.fee_status==3">
您已上传成功请等待确认
</view>
<view v-if="info.fee_status!=1">
上传缴费图片
<u-button type="primary" size="mini" @click="uploadFile"></u-button>
<!-- <u-upload :header='header'
@on-success="uploadSuccess"
:action="action" :file-list="fileList" max-count="1"></u-upload> -->
</view>
<view v-if="hasFeeFiles">
<image :src="info.fee_files[0].url"></image>
<view v-if="hasFeeFiles" style="width:100%;">
<image mode="widthFix" style="width:80%;margin:0 auto;display: block;" :src="info.fee_files[0].url"></image>
</view>
</view>
<view class="modal">
<u-popup v-model="showPark" mode="bottom">
<view class="modal-tip">绑定车牌号</view>
@ -119,7 +124,8 @@
let files_id = [this.fileList.id]
this.$u.api.courseUpdateSign({
id:this.info.id,
fee_file_ids:files_id
fee_file_ids:files_id,
fee_status:3
}).then(res=>{
this.base.toast("上传成功")
//

@ -2,28 +2,32 @@
<view class="container">
<image class="cbg" :src="base.imgHost('common_bg.png')"></image>
<view class="wrap">
<topBanner :banner_list="banner_list"></topBanner>
<view class="wrap-status">
<view v-if="info.status===0">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content">欢迎您报名{{courseInfo.name}}我们将在1-3个工作日内审核并通知您报名结果.</view>
</view>
<view v-else-if="info.status===1">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content">您已被{{courseInfo.name}}录取<span
v-if="courseInfo.start_date">请于{{courseInfo.start_date}}到学院报到</span></view>
</view>
<view v-else-if="info.status===2">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content"> 很遗憾您未被{{courseInfo.name}}录取</view>
</view>
<view v-else-if="info.status===3">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content"> 您未被{{courseInfo.name}}纳入备选人才</view>
</view>
</view>
<view class="wrap-img">
<image :src="base.imgHost('mycourse-status.png')"></image>
<topBanner :banner_list="banner_list"></topBanner>
<view class="wrap-status">
<view v-if="info.status===0">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content">{{wait_tip}}</view>
</view>
<view v-else-if="info.status===1">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content">{{pass_tip}}</view>
<!-- v-if="courseInfo.is_fee===1 && info.fee_status!=1" -->
<view class="wrap-status-btn">
<view @click="toPay" v-if="courseInfo.is_fee===1 && info.fee_status!=1"></view>
<view v-if="info.files && info.files.length>0" @click="openFiles(info.files)"></view>
</view>
</view>
<view v-else-if="info.status===2">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content">{{fault_tip}}</view>
</view>
<view v-else-if="info.status===3">
<view class="wrap-status-name">{{userInfo.username}}:</view>
<view class="wrap-status-content">{{back_tip}}</view>
</view>
</view>
<view class="wrap-img">
<image :src="base.imgHost('mycourse-status.png')"></image>
</view>
</view>
@ -38,13 +42,19 @@
},
data() {
return {
course_id: '',
banner_list: [],
info: {},
userInfo: {},
courseInfo: {}
courseInfo: {},
wait_tip: "我们将在1-3个工作日内审核并通知您报名结果….",
pass_tip: "恭喜您,您已被录取",
fault_tip: '很遗憾,您未通过审核。',
back_tip: "很遗憾,您未通过审核。",
}
},
onLoad(options) {
this.course_id = options.id
this.getCourseDetail(options.id)
this.getBannerList()
},
@ -57,13 +67,69 @@
this.info = res.detail
this.userInfo = res.detail.user
this.courseInfo = res.detail.course
},
async getBannerList(){
const res = await this.$u.api.otherBanner({
position:1,
})
this.banner_list = res
this.courseInfo_type_detail = this.courseInfo.type_detail
this.wait_tip = this.courseInfo_type_detail.wait_tip ? this.courseInfo_type_detail.wait_tip :
"我们将在1-3个工作日内审核并通知您报名结果…."
this.pass_tip = this.courseInfo_type_detail.pass_tip ? this.courseInfo_type_detail.pass_tip :
"恭喜您,您已被录取!"
this.fault_tip = this.courseInfo_type_detail.fault_tip ? this.courseInfo_type_detail.fault_tip :
'很遗憾,您未通过审核。'
this.back_tip = this.courseInfo_type_detail.back_tip ? this.courseInfo_type_detail.back_tip :
"很遗憾,您未通过审核。"
},
async getBannerList() {
const res = await this.$u.api.otherBanner({
position: 1,
})
this.banner_list = res
},
toPay() {
uni.navigateTo({
url: '/packages/mycourse/coursePay?id=' + this.course_id
})
},
openFiles(files) {
console.log("files", files)
let that = this
uni.downloadFile({
url: files[0].url,
success: function(res) {
if (res.statusCode === 200) {
console.log("临时路径", res.tempFilePath)
let filePath = res.tempFilePath
//uni.openDocument
uni.openDocument({
filePath: filePath,
success: function(res) {
console.log("打开文档成功");
},
fail: function(res) {
console.log("uni.openDocument,fail");
console.log(res)
},
complete: function(res) {
console.log("uni.openDocument,complete");
console.log(res)
}
});
}
},
fail: function(err) {
console.log('文件下载失败', err)
}
})
// uni.openDocument({
// filePath: files[0].url,
// success: function(res) {
// console.log('');
// },
// fail: function(err) {
// that.base.toast("")
// console.log('', err);
// }
// });
}
}
}
@ -84,27 +150,51 @@
}
.wrap {
position: relative;
height:100%;
&-status{
margin:120rpx 20rpx;
&-name{
color:#000;
font-size: 32rpx;
padding-bottom:20rpx;
}
&-content{
line-height: 2;
text-indent: 2em;
}
}
&-img{
image{
width:260rpx;
height:314rpx;
display: block;
margin:0 auto;
}
position: relative;
height: 100%;
&-status {
margin: 120rpx 20rpx;
&-name {
color: #000;
font-size: 32rpx;
padding-bottom: 20rpx;
}
&-content {
line-height: 2;
text-indent: 2em;
}
&-btn {
text-align: right;
text-align: center;
margin-top: 30rpx;
display: flex;
justify-content: space-between;
align-items: center;
&>view {
width: 45%;
display: inline-block;
text-align: center;
margin: 0 auto;
color: #fff;
background: linear-gradient(to right, #e4cdb4, #c69c6d);
border-radius: 30rpx;
padding: 10rpx 20rpx;
}
}
}
&-img {
image {
width: 260rpx;
height: 314rpx;
display: block;
margin: 0 auto;
}
}
}

@ -30,6 +30,8 @@
this.course_id = options.id
this.getCourseDetail(options.id)
},
onShow() {
},
methods:{
toUrl(type){
if(type===1){
@ -41,9 +43,17 @@
this.base.toast("请等待审核通过")
return
}
if(this.info.status>1){
this.base.toast("您没有权限查看本班通讯录")
return
//
if(this.info.course.is_fee===1){
if(this.info.status>1 || this.info.fee_status!=1){
this.base.toast("您还没有权限查看本班通讯录")
return
}
}else{
if(this.info.status>1){
this.base.toast("您还没有权限查看本班通讯录")
return
}
}
uni.navigateTo({
url:'/packages/mycourse/courseTxl?id='+this.course_id
@ -53,6 +63,22 @@
this.base.toast("当前课程没有课表")
return
}
if(this.info.status===0){
this.base.toast("请等待审核通过")
return
}
//
if(this.info.course.is_fee===1){
if(this.info.status>1 || this.info.fee_status!=1){
this.base.toast("您还没有权限查看本班课表")
return
}
}else{
if(this.info.status>1){
this.base.toast("您还没有权限查看本班课表")
return
}
}
uni.navigateTo({
url:'/packages/mycourse/courseContents?id='+this.course_id
})
@ -61,6 +87,14 @@
this.base.toast("当前课程无需缴费")
return
}
if(this.info.status===0){
this.base.toast("请等待审核通过")
return
}
if(this.info.status>1){
this.base.toast("您无需上传缴费信息")
return
}
uni.navigateTo({
url:'/packages/mycourse/coursePay?id='+this.course_id
})

@ -22,7 +22,7 @@
</view>
</view>
<view>
<view v-if="historyList.length>0">
<view class="list-title">历史课程</view>
<view v-if="historyList.length>0">
<view class="list-item" @click="toUrl(item.id)" v-for="item in historyList">

@ -49,9 +49,12 @@
can_appointment: false,
is_schoolmate: 0,
}
},
onShow(){
this.getUser()
},
onLoad() {
this.getUser()
},
methods: {
getUser() {

@ -25,13 +25,13 @@
</view>
<view class="list-item-wrap-status-title">{{item.name}}</view>
<view class="list-item-wrap-status-label">
<text></text>报名{{item.sign_date_status}}
报名{{item.sign_date_status}}
</view>
</view>
</view>
<view class="list-item-btn">
<view @click="toDetail(item.id)"></view>
<view @click="toDetail(item)"></view>
</view>
</view>
@ -49,17 +49,23 @@
<view class="modal-tip">提示</view>
<view class="modal-content">
<view>如您已是我方校友请先绑定账号</view>
<view @click="goBind" class="modal-bind">
去绑定
</view>
<view>如您还不是我方校友请先注册</view>
<view @click="toRegister" class="modal-register">
去注册
</view>
</view>
<view class="modal-btn">
<!-- <view class="modal-btn">
<view @click="goBind" class="modal-btn-bind">
去绑定
</view>
<view @click="toRegister" class="modal-btn-register">
去注册
</view>
</view>
</view> -->
</view>
</u-popup>
@ -99,11 +105,12 @@
}
},
onLoad() {
this.getCourseList()
this.getBannerList()
},
onShow() {
this.getCourseList()
this.showRegister = false
let user = uni.getStorageSync("stbc_lifeData") ? uni.getStorageSync("stbc_lifeData").vuex_user : {}
if(!this.base.isNull(user.mobile)){
@ -145,7 +152,7 @@
convertToChineseMonth(dateString,dateStatus) {
if (this.base.isNull(dateString) || dateStatus==='待定') {
return {
month:'',
month:'',
year:"定"
}
}else{
@ -170,8 +177,19 @@
},
//
toDetail(id) {
this.go_course_id = id
toDetail(item) {
this.go_course_id = item.id
// total
//
if(!item.is_fee && (item.total && item.total>0)){
//
if(item.sign_total>=item.total){
this.base.toast("当前报名人数已满")
return
}
}
if(!this.hasMobile){
this.showRegister = true
return
@ -333,7 +351,8 @@
color: #fff;
padding: 10rpx 20rpx;
border-radius: 30rpx;
margin: 20rpx;
margin: 20rpx;
text-align: center;
}
}
//
@ -403,14 +422,33 @@
font-size: 32rpx;
}
&-content{
height:300rpx;
height:450rpx;
padding:0 30rpx;
font-size: 32rpx;
text-align: center;
&>view{
margin:30rpx 0;
margin:30rpx auto;
}
}
&-bind {
width: 45%;
text-align: center;
margin: 0 auto;
color: #fff;
border-radius: 30rpx;
padding: 20rpx;
background: linear-gradient(to right, #e4cdb4, #c69c6d);
}
&-register {
width: 45%;
text-align: center;
margin: 0 auto;
color: #fff;
border-radius: 30rpx;
padding: 20rpx;
background: linear-gradient(to right, #5e5fbc, #0d0398);
}
&-btn{
display: flex;
justify-content: space-between;

@ -39,16 +39,21 @@
<u-icon name="arrow-right" size="32" color="#666" style="margin-left:40rpx"></u-icon>
</view>
</view>
</view>
<!-- 校友卡 -->
<view class="modal-wrap" @click="showCard = false" v-if="showCard">
<image mode="heightFix" :src="base.imgHost('me-xyk.png')"></image>
<view class="modal-wrap" v-if="showCard">
<view class="modal-image">
<view class="modal-close" @click="showCard = false">X</view>
<image mode="heightFix" :src="base.imgHost('me-xyk.png')"></image>
</view>
<view class="modal-xyk">
<view>
<view class="modal-xyk-item">
<view style="margin-bottom:60rpx">电子校园卡</view>
<view style="display: flex;justify-content: center;">
<uqrcode ref="uqrcodes" canvas-id="qrcode" value="123" :sizeUnit="'rpx'" :size="200"
<uqrcode ref="uqrcode" canvas-id="qrcode" value="123" :sizeUnit="'rpx'" :size="200"
:options="{
margin: 10,
foregroundImageSrc: '/static/index_icon1.png',
@ -59,7 +64,7 @@
<view class="modal-xyk-item modal-xyk-name">
<view>
<text>姓名</text>
<text>{{userInfo.name}}</text>
<text>{{userInfo.username}}</text>
</view>
<view>
<text>学籍</text>
@ -71,8 +76,11 @@
</view>
</view>
<!-- 公众号 -->
<view class="modal-wrap" @click="showGzh = false" v-if="showGzh">
<image mode="heightFix" :show-menu-by-longpress="true" :src="base.imgHost('me-gzh.png')"></image>
<view class="modal-wrap" v-if="showGzh">
<view class="modal-image">
<view class="modal-close" @click="showGzh = false">X</view>
<image mode="heightFix" :show-menu-by-longpress="true" :src="base.imgHost('me-gzh.png')"></image>
</view>
</view>
<!-- 进入后没有手机号的话 绑定 或者 注册 -->
<view class="modal">
@ -81,17 +89,23 @@
<view class="modal-tip">提示</view>
<view class="modal-content">
<view>如您已是我方校友请先绑定账号</view>
<view @click="goBind" class="modal-bind">
去绑定
</view>
<view>如您还不是我方校友请先注册</view>
<view @click="toRegister" class="modal-register">
去注册
</view>
</view>
<view class="modal-btn">
<!-- <view class="modal-btn">
<view @click="goBind" class="modal-btn-bind">
去绑定
</view>
<view @click="toRegister" class="modal-btn-register">
去注册
</view>
</view>
</view> -->
</view>
</u-popup>
@ -126,7 +140,7 @@
methods: {
refreshCode() {
this.showCard = true
this.$refs.uqrcodes.make({
this.$refs.uqrcode.make({
success: () => {
console.log('生成成功');
},
@ -134,6 +148,7 @@
console.log(err)
}
});
},
tourl(type) {
if (type === 1) {
@ -267,16 +282,36 @@
}
&-content {
height: 300rpx;
height: 450rpx;
padding: 0 30rpx;
font-size: 32rpx;
text-align: center;
&>view {
margin: 30rpx 0;
margin: 30rpx auto;
}
}
&-bind {
width: 45%;
text-align: center;
margin: 0 auto;
color: #fff;
border-radius: 30rpx;
padding: 20rpx;
background: linear-gradient(to right, #e4cdb4, #c69c6d);
}
&-register {
width: 45%;
text-align: center;
margin: 0 auto;
color: #fff;
border-radius: 30rpx;
padding: 20rpx;
background: linear-gradient(to right, #5e5fbc, #0d0398);
}
&-btn {
display: flex;
justify-content: space-between;
@ -292,10 +327,22 @@
}
&-bind {
width: 45%;
text-align: center;
margin: 0 auto;
color: #fff;
border-radius: 30rpx;
padding: 20rpx;
background: linear-gradient(to right, #e4cdb4, #c69c6d);
}
&-register {
width: 45%;
text-align: center;
margin: 0 auto;
color: #fff;
border-radius: 30rpx;
padding: 20rpx;
background: linear-gradient(to right, #5e5fbc, #0d0398);
}
}
@ -309,13 +356,32 @@
height: 100vh;
background-color: rgba(0, 0, 0, 0.6);
&>image {
.modal-close {
width: 80rpx;
height: 80rpx;
text-align: center;
line-height: 80rpx;
color: #fff;
background: rgba(0, 0, 0, 0.5);
border-radius: 80rpx;
position: absolute;
top: 0rpx;
right: 0rpx;
}
.modal-image {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
height: 70%;
&>image {
width: 100%;
height: 100%;
}
}
}
.modal-xyk {

Loading…
Cancel
Save