会议修改

This commit is contained in:
fengachen
2021-09-29 18:08:15 +08:00
parent 8feaf92849
commit 838fda2f01
2 changed files with 123 additions and 84 deletions
@@ -12,7 +12,7 @@
<a-row :gutter="24">
<a-col :span="12">
<label>会议名称</label>
<span>{{model.meetingName}}</span>
<span>{{ meetingName || model.meetingName }}</span>
</a-col>
</a-row>
<section class="base-info">
@@ -71,7 +71,15 @@
<a-row :gutter="24">
<a-col :xl="12" :sm="24">
<a-form-item label="付款凭证" :labelCol="labelCol" :wrapperCol="wrapperCol">
<j-image-upload v-decorator="['paymentRecord',validatorRules.paymentRecord]" :return-id="true"></j-image-upload>
<j-image-upload v-decorator="['paymentRecord',validatorRules.paymentRecord]"
:return-id="true"></j-image-upload>
</a-form-item>
</a-col>
<!-- 缴费方式线上缴费的需要订单后四位-->
<a-col :xl="12" :sm="24" v-show="payModeOnlineBool">
<a-form-item label="订单后四位" :labelCol="labelCol" :wrapperCol="wrapperCol">
<a-input placeholder="请输入订单后四位" :maxLength="4" v-decorator="['orderCode',validatorRules.orderCode]"
@change="(e) => {e.target.value = e.target.value.replace(/[^0-9A-Za-z]/g,'')}"></a-input>
</a-form-item>
</a-col>
</a-row>
@@ -87,16 +95,16 @@
<script>
import {httpAction} from '@api/manage'
import JImageUpload from '@comp/jero/JImageUpload'
import { getSingUpUserInfo} from '@api/incomePaymentsApi'
import {getSingUpUserInfo} from '@api/incomePaymentsApi'
export default {
name: 'UploadMeetingCertificateModal',
data() {
return {
title:'上传凭证',
width:800,
visible:false,
confirmLoading:false,
title: '上传凭证',
width: 800,
visible: false,
confirmLoading: false,
form: this.$form.createForm(this),
model: {},
labelCol: {
@@ -112,67 +120,81 @@ export default {
rules: [{required: false, message: '请上传汇款凭证'}],
validateTrigger: 'change'
},
orderCode: {
rules: [{required: true, message: '请输入订单后四位'}],
validateTrigger: 'blur'
},
},
url: {
edit:'/meeting/payMeetingSituation/edit'
}
edit: '/meeting/payMeetingSituation/edit'
},
// 会议名称
meetingName: '',
// 是否是线上缴费方式
payModeOnlineBool: false
}
},
components:{
components: {
JImageUpload
},
methods:{
open(param){
methods: {
open(param) {
this.visible = true
if(param.id){
this.meetingName = param.meetingName
// 是否是线上缴费
this.payModeOnlineBool = param.payMode === 2 || false
if (param.id) {
this.querySingUpUserInfo(param.id).then(res => {
this.model = res
this.model = {}
if (res.success) {
this.model = res
}
})
}
},
close(){
close() {
this.visible = false
},
handleOk(){
const that = this
handleOk() {
const that = this
this.form.validateFields((err, values) => {
if(!err){
if (!err) {
that.confirmLoading = true
let method = 'post'
let url = this.url.edit
const formData = Object.assign({},values)
httpAction(url,formData,method).then(res => {
if(res.success){
const formData = Object.assign({}, values)
httpAction(url, formData, method).then(res => {
if (res.success) {
that.$message.success(res.message)
that.$emit('ok')
that.handleCancel()
that.confirmLoading = false
}else {
} else {
this.$message.warn(res.message)
}
}).finally( () => {
}).finally(() => {
that.confirmLoading = false
})
}else {
} else {
this.confirmLoading = false
}
})
},
handleCancel(){
handleCancel() {
this.close()
},
/*
* 获取参会人信息
* */
querySingUpUserInfo(id){
querySingUpUserInfo(id) {
return new Promise(resolve => {
let result = {}
getSingUpUserInfo({id}).then(res => {
if(res.success){
if (res.success) {
result = res.result
}
}).finally( () => {
}).finally(() => {
resolve(result)
})
})
+73 -56
View File
@@ -3,7 +3,6 @@
<div class="title">
<a-icon type="user"/>
<span class="my-meeting">我的会议</span>
<span class="download"><a-button icon="cloud-download" type="primary">资料下载</a-button></span>
</div>
<div class="content">
<section class="meeting—status">
@@ -64,39 +63,45 @@
<!--查询区域end-->
<!--列表区域begin-->
<a-spin :spinning="loading">
<div class="list" v-if="tableData.length > 0">
<div class="item-meeting" v-for="(item,index) of tableData" :key="index">
<p class="item-meeting-meetingName">会议名称</p>
<p class="item-meeting-meetingCost"><span></span>199.9</p>
<p class="item-meeting-img item-meeting-meetingDirector">
<img src="../../assets/meetingImgs/meeting-user.png"/>
张益达
</p>
<p class="item-meeting-img item-meeting-meetingAddress">
<img src="../../assets/meetingImgs/meeting-address.png"/>
天津是河西区花店给值过的高房价和
</p>
<p class="item-meeting-img item-meeting-meetingTime">
<img src="../../assets/meetingImgs/meeting-time.png"/>
2021124545454247
</p>
<p class="item-meeting-img item-meeting-meetingPaymode">
<img src="../../assets/meetingImgs/meeting_paymode.png"/>
缴费方式
<a-button type="primary" @click="uploadPaymentRecord">上传凭证</a-button>
</p>
<img class="meeting-img-status" src="../../assets/meetingImgs/no-start.png"/>
<!-- <img class="meeting-img-status" src="../../assets/meetingImgs/ing.png" />-->
<!-- <img class="meeting-img-status" src="../../assets/meetingImgs/end.png.png" />-->
</div>
<i></i>
<i></i>
<i></i>
<i></i>
<i></i>
</div>
<section v-else class="list">
<a-empty/>
<div class="list" v-if="tableData.length > 0">
<div class="item-meeting" v-for="(item,index) of tableData" :key="index">
<p class="item-meeting-meetingName">
<j-ellipsis :value="item.meetingName" :length="20"></j-ellipsis>
</p>
<!--这里需要修改 会议费用分人显示不同的会议费用 2021-09-29 跟需求沟通说是不显示-->
<!-- <p class="item-meeting-meetingCost"><span></span>{{ item.meetingCosts }}</p>-->
<p class="item-meeting-img item-meeting-meetingDirector">
<img src="../../assets/meetingImgs/meeting-user.png"/>
负责人{{ item.directorName }}
</p>
<p class="item-meeting-img item-meeting-meetingAddress">
<img src="../../assets/meetingImgs/meeting-address.png"/>
召开地点
<j-ellipsis :value="item.venue + '/' + item.address " :length="20"></j-ellipsis>
</p>
<p class="item-meeting-img item-meeting-meetingTime">
<img src="../../assets/meetingImgs/meeting-time.png"/>
召开时间
<j-ellipsis :value="item.startTime + '~' + item.endTime" :length="30"></j-ellipsis>
</p>
<p class="item-meeting-img item-meeting-meetingPaymode">
<img src="../../assets/meetingImgs/meeting_paymode.png"/>
缴费方式{{ item.payMode_dictText }}
<!-- 缴费方式为线上缴费的只有在会议召开时间期间才显示上传凭证按钮 "-->
<a-button v-show="item.payMode === 2" type="primary" @click="uploadPaymentRecord(item)">上传凭证</a-button>
</p>
<img class="meeting-img-status" src="../../assets/meetingImgs/no-start.png"/>
<!-- <img class="meeting-img-status" src="../../assets/meetingImgs/ing.png" />-->
<!-- <img class="meeting-img-status" src="../../assets/meetingImgs/end.png.png" />-->
</div>
<i></i>
<i></i>
<i></i>
<i></i>
<i></i>
</div>
<section v-else class="list-empty">
<a-list :data-source="[]"/>
</section>
</a-spin>
<!--列表区域end-->
@@ -126,6 +131,7 @@ import {RangeDateMixin} from '@/mixins/RangeDateMixin'
import JDate from '@comp/tools/JDate'
import UploadMeetingCertificateModal from '@views/MessagePage/UploadMeetingCertificateModal'
import {getAction} from '@api/manage'
import JEllipsis from '@comp/jero/JEllipsis'
export default {
name: 'MeetingActivity',
@@ -133,11 +139,12 @@ export default {
components: {
JDictSelectTag,
JDate,
UploadMeetingCertificateModal
UploadMeetingCertificateModal,
JEllipsis
},
data() {
return {
// 会议分类 全部 1 未开始 2 进行中 3 已结束 4
// 会议分类 全部 1 未开始 2 可报名 3 已报名
meetingStatusArr: [
{
key: '1',
@@ -145,15 +152,11 @@ export default {
},
{
key: '2',
value: '未开始'
value: '可报名'
},
{
key: '3',
value: '进行中'
},
{
key: '4',
value: '已结束'
value: '已报名'
}
],
// 会议的key值 默认是全部
@@ -170,6 +173,7 @@ export default {
// 查询参数
queryParam: {},
lastQueryParam: {},
filter: {},
// 分页参数
pageNo: 1,
pageSize: 10,
@@ -178,15 +182,28 @@ export default {
current: 1,
// 加载状态
loading: false,
// 会议类型
meetingType:''
}
},
created() {
// 默认查询所有的会议
this.filter.meetingStatus = this.meetingKey
// 会议类型
if(this.$route.query.meetingType){
this.meetingType = this.$route.query.meetingType
this.filter.meetingType = this.$route.query.meetingType
}
this.initData(1)
},
methods: {
/*
* 会议分类筛选
* */
filterMeeting(key) {
this.meetingKey = key
this.initData(1,key)
this.filter.meetingStatus = this.meetingKey
this.initData(1)
},
/*
* 分页
@@ -208,7 +225,7 @@ export default {
/*
* 初始化加载数据
* */
initData(arg,key) {
initData(arg) {
if (!this.url.list) {
this.$message.error('请设置url.list属性!')
return
@@ -217,11 +234,7 @@ export default {
if (arg === 1) {
this.pageNo = 1
}
// 修改会议状态参数
if(key){
this.queryParam.meetingStatus = key
}
var params = Object.assign({}, this.lastQueryParam)
var params = Object.assign({}, this.lastQueryParam, this.filter)
params.pageNo = this.pageNo
params.pageSize = this.pageSize
this.loading = true
@@ -263,11 +276,11 @@ export default {
/*
* 上传凭证
* */
uploadPaymentRecord(item){
if(item){
uploadPaymentRecord(item) {
if (item) {
this.$refs.upload.open(item)
}
}
},
}
}
</script>
@@ -291,10 +304,6 @@ export default {
}
}
.download {
float: right;
}
/*内容begin*/
.content {
padding: 0 20px 20px 20px;
@@ -319,14 +328,17 @@ export default {
border-radius: 4px;
color: white;
}
.list {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
& > i {
width: 323px;
}
}
.item-meeting {
position: relative;
margin-bottom: 20px;
@@ -351,6 +363,7 @@ export default {
&-img > img {
margin-right: 4px;
margin-bottom: 2px;
user-select: none;
}
&-meetingName {
@@ -394,4 +407,8 @@ export default {
float: right;
margin-right: 20px;
}
.list-empty {
margin: 20px auto !important;
}
</style>