first commit

This commit is contained in:
2026-09-09 09:14:28 +08:00
commit 5343198112
5199 changed files with 1052895 additions and 0 deletions
@@ -0,0 +1,230 @@
<!--#
layout("/mobile/platform.html"){
#-->
<style>
.van-doc-card {
margin: 14px;
padding: 12px 12px 12px 12px;
background-color: #fff;
border-radius: 10px;
box-shadow: 0 8px 12px #ebedf0;
line-height: 20px;
font-size: 12px;
position: relative;
}
.van-divider {
margin: 12px 0 12px 0px;
border-color: lightgray;
}
.van-button--small {
border-top-right-radius: 16px;
border-bottom-left-radius: 16px;
height: 26px;
}
.van-col {
line-height: 25px;
}
.title_span {
font-size: 16px;
font-weight: bold;
position: absolute;
left: -1px;
top: 11px;
}
</style>
<div id="app" v-cloak>
<m-page-loading v-if="mLoading"></m-page-loading>
<van-nav-bar
@click-left="location.href='/mobile/index/toHome?type=民主管理'"
fixed
left-arrow
placeholder
title="团长审议"
></van-nav-bar>
<div class="search-fixed">
<van-search
@search="doSearch"
maxlength="10"
placeholder="请输入提案名称或者提案编号进行查询"
shape="round"
v-model="pageForm.searchKeyWord"
>
</van-search>
<van-dropdown-menu>
<van-dropdown-item :options="sessionList" @change="doSearch"
v-model="pageForm.meetingId"></van-dropdown-item>
<van-dropdown-item :options="proposalTypeList" @change="doSearch"
v-model="pageForm.proposalTypeId"></van-dropdown-item>
<van-dropdown-item :options="resultList" @change="doSearch"
v-model="pageForm.proposalResultCode"></van-dropdown-item>
</van-dropdown-menu>
<van-tabs @click="doSearch" v-model="pageForm.isAudit">
<van-tab :name="false" title="未审核"></van-tab>
<van-tab :name="true" title="已审核"></van-tab>
</van-tabs>
</div>
<div style="margin: 170px auto 0">
<van-list
:finished="finished"
:finished-text="tableData.length>0?'没有更多了':''"
@load="onLoad"
v-model="mLoading">
<div @click="openView(o.id)" class="van-doc-card" v-for="o in tableData">
<div @click="openView(o.id)">
<div>
<div class="van-ellipsis"
style="font-size: 13px;font-weight: bold;flex: 1;width:80%;overflow: hidden;white-space: nowrap">
<span :style="'color:'+o.stateColor" class="title_span">|</span>提案名称:{{o.proposalName}}
</div>
<div style="position: absolute; right: 14px;top: 12.3px;text-align: right">
<van-tag :style="'color:'+o.stateColor" plain round size="medium" type="primary">{{
o.stateName }}
</van-tag>
</div>
</div>
<van-divider></van-divider>
<div>
<van-row>
<van-col span="12"><span style="color: grey">提案编号:</span>{{o.proposalCode}}</van-col>
<van-col span="12"><span style="color: grey">提案类型:</span>{{o.typeName}}</van-col>
</van-row>
<van-row>
<van-col span="12" style="overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">
<span style="color: grey">&ensp;&ensp;团:</span>{{o.delegationName}}
</van-col>
<van-col span="12"><span style="color: grey">提案届次:</span>{{o.meetingName}}</van-col>
</van-row>
<van-divider></van-divider>
</div>
<div class="train-title" style="margin-top: 11px">
<span style="color: grey">立案结果:</span>{{o.resultName ? o.resultName : '暂无'}}
</div>
</div>
</div>
</van-list>
<van-empty
class="custom-image"
description="暂无数据"
image="/none.svg"
v-if="mLoading==false&&tableData.length==0"
></van-empty>
</div>
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [mobileMixins],
data() {
return {
pageForm: {
isAudit: false
},
list: [],
state: '0',
loading: false,
finished: false,
refreshing: false,
sessionList: [],
delegationList: [],
proposalTypeList: [],
resultList: []
}
},
methods: {
doSearch() {
this.pageForm.pageNumber = 1
this.tableData = []
this.finished = false
this.onLoad()
},
async onLoad() {
this.mLoading = true
$.post('/platform/proposal/transact/delegation/pageData', this.pageForm).then(res => {
if (res.code === 0) {
this.tableData = this.tableData.concat(res.data.list)
if (this.tableData.length === res.data.totalCount) {
this.finished = true
} else {
this.pageForm.pageNumber++
}
}
this.mLoading = false
})
},
openAudit(id) {
this.formData = {
proposalId: id,
username: "${@shiro.getPrincipalProperty('username')}",
loginName: "${@shiro.getPrincipalProperty('loginname')}",
auditTime: moment().format('YYYY-MM-DD'),
opinion: '',
sign: '',
}
this.state = '0'
this.show = true
},
validateForm(action, done) {
done(false)
},
async doHandle() {
this.$refs['handleForm'].validate().then(valid => {
$.post('/platform/proposal/transact/audit/doAudit', {
audit: JSON.stringify(this.formData),
flag: this.state === 0
}).then((res) => {
console.log(res)
if (res.code === 0) {
this.show = false
this.pageForm = {
pageNumber: 1,
pageSize: 5,
totalCount: 0
}
this.tableData = []
this.onLoad()
vant.Toast.success('审核成功!')
} else {
vant.Toast.error('审核失败!')
}
})
})
},
openView(id) {
// window.location.href = '/platform/mobile/proposal/compose/detail?id=' + id
window.location.href = '/platform/mobile/proposal/delegation/view?biz_key=' + id + '&proposal_id=' + id + '&mobile=' + true
}
},
async created() {
this.sessionList = await mProposal.getAllSession()
this.proposalTypeList = await mProposal.getProposalType()
this.resultList = await mProposal.getProposalDict()
if (this.sessionList && this.sessionList.length > 0) {
this.$set(this.pageForm, "meetingId", this.sessionList[0].value)
}
if (this.proposalTypeList && this.proposalTypeList.length > 0) {
this.$set(this.pageForm, "proposalTypeId", this.proposalTypeList[0].value)
}
if (this.resultList && this.resultList.length > 0) {
this.$set(this.pageForm, "proposalResultCode", this.resultList[0].value)
}
}
})
</script>
<!--#
}
#-->