Merge branch 'main' of https://dd3skj.picp.vip/zhaoxinyu/zhgh_njnu
# Conflicts: # src/main/resources/views/platform/zhgh/activity/sports/applyUser/applyUser.js # src/main/resources/views/platform/zhgh/activity/sports/applyUser/index.html
This commit is contained in:
@@ -261,12 +261,7 @@
|
||||
|
||||
<!--vuex-->
|
||||
<script type="text/javascript">
|
||||
$.get('/platform/auth/userInfo').then(res=>{
|
||||
if(res.code===0){
|
||||
// window.sessionStorage.setItem("user",JSON.stringify(${json(@auth.getLogonUser())}))
|
||||
window.sessionStorage.setItem("user",JSON.stringify(res.data))
|
||||
}
|
||||
})
|
||||
window.sessionStorage.setItem("user",JSON.stringify(${json(@auth.getLogonUser())}))
|
||||
window.store = new Vuex.Store({
|
||||
plugins: [
|
||||
createPersistedState({
|
||||
|
||||
@@ -53,7 +53,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table-column>
|
||||
</el-table-column>
|
||||
<el-table-column label="流程节点" prop="processInstanceNodeName"></el-table-column>
|
||||
<el-table-column label="操作" width="150px" fixed="right">
|
||||
<el-table-column label="操作" width="200px" fixed="right">
|
||||
<template scope="{row}">
|
||||
<el-button size="mini" type="primary"
|
||||
@click="onOpen(row.id)">
|
||||
@@ -144,10 +144,14 @@ layout("/layouts/platform.html"){
|
||||
cancelButtonText: "取消",
|
||||
type: "warning"
|
||||
}).then(() => {
|
||||
$.post("/platform/branchUnionUser/authorization/apply/cancel", row).then((res) => {
|
||||
this.$message.success(res.msg)
|
||||
this.pageForm.mode = "EXIT"
|
||||
this.doSearch()
|
||||
this.$axios.post("/platform/branchUnionUser/authorization/apply/cancel", row).then((res) => {
|
||||
if(res.code === 0){
|
||||
this.$message.success(res.msg)
|
||||
this.pageForm.mode = "EXIT"
|
||||
this.doSearch()
|
||||
}else{
|
||||
this.$message.error(res.msg)
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
@@ -5,9 +5,19 @@ layout("/layouts/platform.html"){
|
||||
<div id="app" v-cloak>
|
||||
<el-row type="flex" :gutter="20" style="height: calc(100vh - 126px)">
|
||||
<el-col :span="5">
|
||||
<el-card shadow="never" style="height: 100%" body-style="{ height: '100%' }">
|
||||
<el-input placeholder="输入关键字进行查找" v-model="filterText" clearable></el-input>
|
||||
<div style="max-height: calc(100vh - 200px); overflow-y: auto">
|
||||
<el-card
|
||||
shadow="never"
|
||||
style="height: 100%"
|
||||
:body-style="{ height: '100%', padding: '20px', display: 'flex', flexDirection: 'column',boxSizing: 'border-box' }"
|
||||
>
|
||||
<el-input
|
||||
placeholder="输入关键字进行查找"
|
||||
v-model="filterText"
|
||||
clearable
|
||||
style="margin-bottom: 16px"
|
||||
prefix-icon="el-icon-search"
|
||||
></el-input>
|
||||
<div style="flex: 1; overflow-y: auto; border-radius: 6px; border: 1px solid #e8e8e8; background: #ffffff; padding: 8px">
|
||||
<el-tree
|
||||
:data="treeData"
|
||||
ref="treeRef"
|
||||
@@ -20,7 +30,60 @@ layout("/layouts/platform.html"){
|
||||
@node-click="treeNodeClick"
|
||||
:filter-node-method="filterNode"
|
||||
highlight-current
|
||||
></el-tree>
|
||||
style="background: transparent"
|
||||
node-key="id"
|
||||
class="custom-tree"
|
||||
>
|
||||
<span
|
||||
class="custom-tree-node"
|
||||
slot-scope="{ node, data }"
|
||||
:style="{
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
padding: '8px 12px',
|
||||
margin: '2px 0',
|
||||
borderRadius: '6px',
|
||||
transition: 'all 0.3s ease',
|
||||
cursor: 'pointer',
|
||||
background: node.isCurrent ? '#e6f7ff' : 'transparent',
|
||||
border: node.isCurrent ? '1px solid #91d5ff' : '1px solid transparent'
|
||||
}"
|
||||
@mouseenter="$event.target.style.background = node.isCurrent ? '#e6f7ff' : '#f5f5f5'"
|
||||
@mouseleave="$event.target.style.background = node.isCurrent ? '#e6f7ff' : 'transparent'"
|
||||
>
|
||||
<i
|
||||
:class="node.level === 1 ? 'el-icon-office-building' : 'el-icon-school'"
|
||||
:style="{
|
||||
marginRight: '10px',
|
||||
color: node.level === 1 ? 'rgb(209 94 46)' : 'var(--color-primary)',
|
||||
fontSize: '16px'
|
||||
}"
|
||||
></i>
|
||||
<span
|
||||
:style="{
|
||||
fontSize: '14px',
|
||||
color: '#262626',
|
||||
fontWeight: node.level === 1 ? '600' : '400',
|
||||
flex: 1
|
||||
}"
|
||||
>
|
||||
{{ node.label }}
|
||||
</span>
|
||||
<span
|
||||
v-if="node.childNodes && node.childNodes.length > 0"
|
||||
:style="{
|
||||
fontSize: '12px',
|
||||
color: '#8c8c8c',
|
||||
background: '#f0f0f0',
|
||||
padding: '2px 6px',
|
||||
borderRadius: '10px',
|
||||
marginLeft: '8px'
|
||||
}"
|
||||
>
|
||||
{{ node.childNodes.length }}
|
||||
</span>
|
||||
</span>
|
||||
</el-tree>
|
||||
</div>
|
||||
</el-card>
|
||||
</el-col>
|
||||
|
||||
@@ -20,18 +20,18 @@ layout("/layouts/platform.html"){
|
||||
}
|
||||
</style>
|
||||
<div id="app" v-cloak>
|
||||
<guava ref="guava">
|
||||
<guava ref="guava" edit_scroll>
|
||||
<template>
|
||||
<el-card shadow="never">
|
||||
<search @search="activityInfoData">
|
||||
<search-item label="">
|
||||
<el-date-picker
|
||||
@change="activityInfoData"
|
||||
placeholder="选择年"
|
||||
style="width: 100%"
|
||||
type="year"
|
||||
v-model="pageForm.year"
|
||||
value-format="yyyy"
|
||||
@change="activityInfoData"
|
||||
placeholder="选择年"
|
||||
style="width: 100%"
|
||||
type="year"
|
||||
v-model="pageForm.year"
|
||||
value-format="yyyy"
|
||||
></el-date-picker>
|
||||
</search-item>
|
||||
|
||||
@@ -42,18 +42,16 @@ layout("/layouts/platform.html"){
|
||||
<el-radio-button :label="3">已结束</el-radio-button>
|
||||
</el-radio-group>
|
||||
</search-item>
|
||||
<search-item label=""
|
||||
v-if="$auth.hasRole('SYSADMIN')||$auth.hasRole('SCHOOL_UNION_ADMIN')">
|
||||
<search-item label="" v-if="$auth.hasRole('SYSADMIN')||$auth.hasRole('SCHOOL_UNION_ADMIN')">
|
||||
<el-select
|
||||
@change="doSearch"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="报名所属分工会"
|
||||
style="width: 100%"
|
||||
v-model="pageForm.unionId"
|
||||
@change="doSearch"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="报名所属分工会"
|
||||
style="width: 100%"
|
||||
v-model="pageForm.unionId"
|
||||
>
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
||||
v-for="item in unionOptions"></el-option>
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unionOptions"></el-option>
|
||||
</el-select>
|
||||
</search-item>
|
||||
</search>
|
||||
@@ -61,23 +59,16 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<el-row class="el-table-container">
|
||||
<el-carousel :interval="5000" arrow="always" style="margin: 10px auto">
|
||||
<el-carousel-item :key="index"
|
||||
v-for="index in Math.ceil(activityList.length/4)">
|
||||
<el-carousel-item :key="index" v-for="index in Math.ceil(activityList.length/4)">
|
||||
<el-row :gutter="20">
|
||||
<el-col :key="item.id" :span="6"
|
||||
v-for="item in activityList.slice((index-1)*4,index*4)">
|
||||
<el-card
|
||||
:class="'box-card '+(item.id===pageForm.activityId?'activeCard':'')"
|
||||
style="border-radius: 10px">
|
||||
<div @click="openApply(item)" class="clearfix" slot="header"
|
||||
style="font-size: 16px; padding: 5px 0">
|
||||
<el-tooltip :content="item.NAME" class="item" effect="dark"
|
||||
placement="top-start">
|
||||
<el-col :key="item.id" :span="6" v-for="item in activityList.slice((index-1)*4,index*4)">
|
||||
<el-card :class="'box-card '+(item.id===pageForm.activityId?'activeCard':'')" style="border-radius: 10px">
|
||||
<div @click="openApply(item)" class="clearfix" slot="header" style="font-size: 16px; padding: 5px 0">
|
||||
<el-tooltip :content="item.NAME" class="item" effect="dark" placement="top-start">
|
||||
<span v-if="item.NAME.length<=10">{{item.NAME}}</span>
|
||||
<span v-else>{{item.NAME.substr(0,10)}}...</span>
|
||||
</el-tooltip>
|
||||
<el-button @click="openApply(item)"
|
||||
style="float: right; padding: 3px 0" type="text">
|
||||
<el-button @click="openApply(item)" style="float: right; padding: 3px 0" type="text">
|
||||
请选择活动报名
|
||||
</el-button>
|
||||
</div>
|
||||
@@ -87,27 +78,26 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<span v-if="item.gameStyle===1">{{item.activityLevelName}}</span>
|
||||
<el-tag
|
||||
effect="dark"
|
||||
style="border-radius: 50%; float: right"
|
||||
type="danger"
|
||||
v-if="$moment(item.applyEndTime).valueOf() <$moment().valueOf()"
|
||||
effect="dark"
|
||||
style="border-radius: 50%; float: right"
|
||||
type="danger"
|
||||
v-if="$moment(item.applyEndTime).valueOf() <$moment().valueOf()"
|
||||
>
|
||||
报名结束
|
||||
</el-tag>
|
||||
<el-tag
|
||||
effect="dark"
|
||||
style="border-radius: 50%; float: right"
|
||||
type="success"
|
||||
v-else-if="$moment().valueOf()>$moment(item.applyStartTime).valueOf()
|
||||
&&$moment().valueOf()<$moment(item.applyEndTime).valueOf()"
|
||||
effect="dark"
|
||||
style="border-radius: 50%; float: right"
|
||||
type="success"
|
||||
v-else-if="$moment().valueOf()>$moment(item.applyStartTime).valueOf() && $moment().valueOf()<$moment(item.applyEndTime).valueOf()"
|
||||
>
|
||||
报名中
|
||||
</el-tag>
|
||||
<el-tag
|
||||
effect="dark"
|
||||
style="border-radius: 50%; float: right"
|
||||
type="danger"
|
||||
v-else-if="$moment().valueOf()<$moment(item.applyEndTime).valueOf()"
|
||||
effect="dark"
|
||||
style="border-radius: 50%; float: right"
|
||||
type="danger"
|
||||
v-else-if="$moment().valueOf()<$moment(item.applyEndTime).valueOf()"
|
||||
>
|
||||
报名未开始
|
||||
</el-tag>
|
||||
@@ -118,13 +108,12 @@ layout("/layouts/platform.html"){
|
||||
</div>
|
||||
<div class="text e-item">
|
||||
<span style="color: gray">报名时间:</span>
|
||||
{{$moment(item.applyStartTime).format('YYYY/MM/DD HH:mm')}}
|
||||
至 {{$moment(item.applyEndTime).format('YYYY/MM/DD HH:mm')}}
|
||||
{{$moment(item.applyStartTime).format('YYYY/MM/DD HH:mm')}} 至
|
||||
{{$moment(item.applyEndTime).format('YYYY/MM/DD HH:mm')}}
|
||||
</div>
|
||||
<div class="text item">
|
||||
<span style="color: gray">活动时间:</span>
|
||||
{{$moment(item.startTime).format('YYYY/MM/DD HH:mm')}}
|
||||
至 {{$moment(item.endTime).format('YYYY/MM/DD HH:mm')}}
|
||||
{{$moment(item.startTime).format('YYYY/MM/DD HH:mm')}} 至 {{$moment(item.endTime).format('YYYY/MM/DD')}}
|
||||
</div>
|
||||
</div>
|
||||
</el-card>
|
||||
@@ -138,73 +127,68 @@ layout("/layouts/platform.html"){
|
||||
<table-tool label="活动项目信息">
|
||||
<div class="search-item-option">
|
||||
<el-select
|
||||
@change="doSearch"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择组别"
|
||||
style="width: 100%; margin-bottom: 5px; margin-left: 10px"
|
||||
v-if="unionLeaderCoach"
|
||||
v-model="pageForm.groupName"
|
||||
@change="doSearch"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择组别"
|
||||
style="width: 100%; margin-bottom: 5px; margin-left: 10px"
|
||||
v-if="unionLeaderCoach"
|
||||
v-model="pageForm.groupName"
|
||||
>
|
||||
<el-option :key="item.id" :label="item.name" :value="item.name"
|
||||
v-for="item in groupList"></el-option>
|
||||
<el-option :key="item.id" :label="item.name" :value="item.name" v-for="item in groupList"></el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
|
||||
<div class="search-item-option">
|
||||
<el-select
|
||||
@change="doSearch"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择活动项目"
|
||||
style="width: 100%; margin-bottom: 5px; margin-left: 10px"
|
||||
v-if="unionLeaderCoach"
|
||||
v-model="pageForm.eventId"
|
||||
@change="doSearch"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择活动项目"
|
||||
style="width: 100%; margin-bottom: 5px; margin-left: 10px"
|
||||
v-if="unionLeaderCoach"
|
||||
v-model="pageForm.eventId"
|
||||
>
|
||||
<el-option :key="item.eventId" :label="item.allName"
|
||||
:value="item.eventId" v-for="item in eventList"></el-option>
|
||||
<el-option :key="item.eventId" :label="item.allName" :value="item.eventId" v-for="item in eventList"></el-option>
|
||||
</el-select>
|
||||
</div>
|
||||
<div class="mr10 ml20" v-if="unionLeaderCoach">
|
||||
领队:
|
||||
<span style="color: #419bf8">{{leaderData.username?leaderData.username:'暂无'}}</span>
|
||||
  教练:
|
||||
<span
|
||||
style="color: #419bf8">{{coachData.username ?coachData.username:'暂无'}}</span>
|
||||
<span style="color: #419bf8">{{coachData.username ?coachData.username:'暂无'}}</span>
|
||||
</div>
|
||||
<div>
|
||||
<el-button @click="openLeaderCoach" size="medium" type="primary"
|
||||
v-if="unionLeaderCoach">设置领队/教练
|
||||
</el-button>
|
||||
<el-button @click="openLeaderCoach" size="medium" type="primary" v-if="unionLeaderCoach">设置领队/教练</el-button>
|
||||
</div>
|
||||
</table-tool>
|
||||
<el-table
|
||||
:data="tableData"
|
||||
:size="tableSize"
|
||||
@sort-change="pageOrder"
|
||||
class="vi-table"
|
||||
row-key="id"
|
||||
style="width: 100%; margin-bottom: 20px"
|
||||
v-loading="tableLoading"
|
||||
:data="tableData"
|
||||
:size="tableSize"
|
||||
@sort-change="pageOrder"
|
||||
class="vi-table"
|
||||
row-key="id"
|
||||
style="width: 100%; margin-bottom: 20px"
|
||||
v-loading="tableLoading"
|
||||
>
|
||||
<el-table-column
|
||||
:index="indexMethod"
|
||||
align="center"
|
||||
header-align="center"
|
||||
label="序号"
|
||||
type="index"
|
||||
width="80px"
|
||||
:index="indexMethod"
|
||||
align="center"
|
||||
header-align="center"
|
||||
label="序号"
|
||||
type="index"
|
||||
width="80px"
|
||||
></el-table-column>
|
||||
|
||||
<el-table-column
|
||||
:key="column.prop"
|
||||
:label="column.label"
|
||||
:prop="column.prop"
|
||||
:sortable="column.sortable"
|
||||
align="center"
|
||||
header-align="center"
|
||||
show-overflow-tooltip
|
||||
v-for="column in tableColumns"
|
||||
:key="column.prop"
|
||||
:label="column.label"
|
||||
:prop="column.prop"
|
||||
:sortable="column.sortable"
|
||||
align="center"
|
||||
header-align="center"
|
||||
show-overflow-tooltip
|
||||
v-for="column in tableColumns"
|
||||
>
|
||||
<template scope="{row}" v-if="column.prop=='projectType'">
|
||||
<span v-if="row.eveProjectType==1">单项</span>
|
||||
@@ -213,9 +197,7 @@ layout("/layouts/platform.html"){
|
||||
|
||||
<template scope="{row}" v-else-if="column.prop=='applyNum'">
|
||||
<span v-if="row.successUserApply>0&&row.applyType!==3">{{ row.successUserApply }}人</span>
|
||||
<span
|
||||
v-else-if="JSON.parse(row.applyWay).length===2&&row.applyWay.includes(1)">
|
||||
{{row.totalApplyNum}}人</span>
|
||||
<span v-else-if="JSON.parse(row.applyWay).length===2&&row.applyWay.includes(1)">{{row.totalApplyNum}}人</span>
|
||||
<span v-else-if="row.totalApplyNum>0&&row.applyType===3">{{ row.totalApplyNum }}人</span>
|
||||
<span v-else>0人</span>
|
||||
</template>
|
||||
@@ -226,98 +208,84 @@ layout("/layouts/platform.html"){
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
<el-table-column align="center" header-align="center" label="报名操作"
|
||||
width="300px">
|
||||
<el-table-column align="center" header-align="center" label="报名操作" width="300px">
|
||||
<template scope="{row}">
|
||||
<el-button :loading="row.loading" @click="openUniteApply(row)"
|
||||
size="mini" type="primary"
|
||||
v-if="row.applyWay.includes(2)">
|
||||
<el-button :loading="row.loading" @click="openUniteApply(row)" size="mini" type="primary" v-if="row.applyWay.includes(2)">
|
||||
项目报名
|
||||
</el-button>
|
||||
<el-button
|
||||
:loading="row.loading"
|
||||
@click="doDelete(row)"
|
||||
size="mini"
|
||||
type="danger"
|
||||
>
|
||||
删除报名人员
|
||||
</el-button>
|
||||
<el-button :loading="row.loading" @click="doDelete(row)" size="mini" type="danger">删除报名人员</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<!--#include("/layouts/pagination.html"){}#-->
|
||||
</el-card>
|
||||
|
||||
</template>
|
||||
|
||||
<template #edit_func>
|
||||
<el-button @click="doApplied(false)" type="primary">保 存</el-button>
|
||||
<el-button @click="doApplied(true)" type="primary">提 交</el-button>
|
||||
<!-- <el-button @click="doApplied(false)" type="primary">保 存</el-button>-->
|
||||
<!-- <el-button @click="doApplied(true)" type="primary">提 交</el-button>-->
|
||||
</template>
|
||||
<template #edit>
|
||||
<activity-sports-apply-user @flip="flip"
|
||||
ref="activityApplyUser"></activity-sports-apply-user>
|
||||
<activity-sports-apply-user @flip="flip" ref="activityApplyUser"></activity-sports-apply-user>
|
||||
</template>
|
||||
<template #edit-footer>
|
||||
<el-row type="flex" justify="end">
|
||||
<el-button @click="doApplied(false)" type="primary">保 存</el-button>
|
||||
<el-button @click="doApplied(true)" type="primary">提 交</el-button>
|
||||
</el-row>
|
||||
</template>
|
||||
|
||||
<template #public>
|
||||
<activity-sports-delete-user @flush="doSearch"
|
||||
ref="activityDeleteUser"></activity-sports-delete-user>
|
||||
<activity-sports-delete-user @flip="flip" ref="activityDeleteUser"></activity-sports-delete-user>
|
||||
</template>
|
||||
</guava>
|
||||
|
||||
<el-dialog :visible.sync="dialogLeaderCoach" title="添加领队/教练" width="60%">
|
||||
<el-form :model="headData" :rules="formRules" label-width="100px" ref="form"
|
||||
v-loading="formLoading">
|
||||
<el-form :model="headData" :rules="formRules" label-width="100px" ref="form" v-loading="formLoading">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<table-tool label="填写领队信息"></table-tool>
|
||||
<el-form-item label="姓  名" prop="userId">
|
||||
<user-select
|
||||
:option_label_func="(item)=>{return item.username + item.loginname}"
|
||||
@change="changeLeader"
|
||||
api="/platform/activity/apply/getUserUnion"
|
||||
api_input_key_name="query"
|
||||
ref="userData"
|
||||
style="width: 100%"
|
||||
v-model="leaderData.userId"
|
||||
:option_label_func="(item)=>{return item.username + item.loginname}"
|
||||
@change="changeLeader"
|
||||
api="/platform/activity/apply/getUserUnion"
|
||||
api_input_key_name="query"
|
||||
ref="userData"
|
||||
style="width: 100%"
|
||||
v-model="leaderData.userId"
|
||||
></user-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="所在单位" prop="unitId">
|
||||
<el-select clearable filterable placeholder="请选择所在单位" style="width: 100%"
|
||||
v-model="leaderData.unitId">
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
||||
v-for="item in unitOptions"></el-option>
|
||||
<el-select clearable filterable placeholder="请选择所在单位" style="width: 100%" v-model="leaderData.unitId">
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitOptions"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="电  话" prop="mobile">
|
||||
<el-input maxlength="50" placeholder="请填写电话" type="text"
|
||||
v-model="leaderData.mobile"></el-input>
|
||||
<el-input maxlength="50" placeholder="请填写电话" type="text" v-model="leaderData.mobile"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<table-tool label="填写教练信息"></table-tool>
|
||||
<el-form-item label="姓  名" prop="userId">
|
||||
<user-select
|
||||
:option_label_func="(item)=>{return item.username + item.loginname}"
|
||||
@change="changeCoach"
|
||||
api="/platform/activity/apply/getUserUnion"
|
||||
api_input_key_name="query"
|
||||
style="width: 100%"
|
||||
ref="userData2"
|
||||
v-model="coachData.userId"
|
||||
:option_label_func="(item)=>{return item.username + item.loginname}"
|
||||
@change="changeCoach"
|
||||
api="/platform/activity/apply/getUserUnion"
|
||||
api_input_key_name="query"
|
||||
style="width: 100%"
|
||||
ref="userData2"
|
||||
v-model="coachData.userId"
|
||||
></user-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="所在单位" prop="unitId">
|
||||
<el-select clearable filterable placeholder="请选择所在单位" style="width: 100%"
|
||||
v-model="coachData.unitId">
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
||||
v-for="item in unitOptions"></el-option>
|
||||
<el-select clearable filterable placeholder="请选择所在单位" style="width: 100%" v-model="coachData.unitId">
|
||||
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in unitOptions"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="电  话" prop="mobile">
|
||||
<el-input maxlength="50" placeholder="请填写电话" type="text"
|
||||
v-model="coachData.mobile"></el-input>
|
||||
<el-input maxlength="50" placeholder="请填写电话" type="text" v-model="coachData.mobile"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -328,18 +296,13 @@ layout("/layouts/platform.html"){
|
||||
</span>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
title="活动通知"
|
||||
:visible.sync="activityNoticeDialog"
|
||||
width="50%"
|
||||
>
|
||||
<div style="margin: 10px; ">
|
||||
<div style="height: 500px; overflow: auto;"
|
||||
v-html="activityData.eventNotification"></div>
|
||||
<el-dialog title="活动通知" :visible.sync="activityNoticeDialog" width="50%">
|
||||
<div style="margin: 10px">
|
||||
<div style="height: 500px; overflow: auto" v-html="activityData.eventNotification"></div>
|
||||
</div>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="activityNoticeDialog = false">关 闭</el-button>
|
||||
</span>
|
||||
<el-button type="primary" @click="activityNoticeDialog = false">关 闭</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
|
||||
@@ -367,10 +330,10 @@ layout("/layouts/platform.html"){
|
||||
groupList: [],
|
||||
eventList: [],
|
||||
tableColumns: [
|
||||
{prop: "allName", label: "项目名称"},
|
||||
{prop: "projectType", label: "项目类型"},
|
||||
{prop: "applyNum", label: "已报名人数"},
|
||||
{prop: "apply_num_bc", label: "暂保存人数"}
|
||||
{ prop: "allName", label: "项目名称" },
|
||||
{ prop: "projectType", label: "项目类型" },
|
||||
{ prop: "applyNum", label: "已报名人数" },
|
||||
{ prop: "apply_num_bc", label: "暂保存人数" }
|
||||
],
|
||||
unionOptions: [],
|
||||
|
||||
@@ -450,7 +413,6 @@ layout("/layouts/platform.html"){
|
||||
this.coachData = {}
|
||||
if (this.leaderData || this.coachData) {
|
||||
await this.getUnionCoachLeaderHead()
|
||||
|
||||
}
|
||||
this.dialogLeaderCoach = true
|
||||
setTimeout(async () => {
|
||||
@@ -500,8 +462,8 @@ layout("/layouts/platform.html"){
|
||||
this.coachData = {}
|
||||
this.headData = {}
|
||||
this.staffData = {}
|
||||
const resp = await this.$axios.post(loc() + "/getUnionCoachLeaderHead", {activityId: this.pageForm.activityId})
|
||||
const {unionCoach, unionLeader, unionHead, unionStaff, userOptions} = resp.data
|
||||
const resp = await this.$axios.post(loc() + "/getUnionCoachLeaderHead", { activityId: this.pageForm.activityId })
|
||||
const { unionCoach, unionLeader, unionHead, unionStaff, userOptions } = resp.data
|
||||
if (unionCoach) {
|
||||
this.coachData = unionCoach
|
||||
}
|
||||
@@ -518,14 +480,14 @@ layout("/layouts/platform.html"){
|
||||
this.userOptions = userOptions
|
||||
},
|
||||
async changeActivity() {
|
||||
const resp = await this.$axios.post("/platform/activity/apply/getEvents", {activityId: this.pageForm.activityId})
|
||||
const resp = await this.$axios.post("/platform/activity/apply/getEvents", { activityId: this.pageForm.activityId })
|
||||
this.eventList = resp.data
|
||||
},
|
||||
pageData() {
|
||||
this.tabLoading = true
|
||||
const pageForm = clone(this.pageForm)
|
||||
pageForm.isMenWomen = JSON.stringify(pageForm.isMenWomen)
|
||||
this.$axios.post("/platform/activity/apply/pageData", {data: JSON.stringify(pageForm)}).then((res) => {
|
||||
this.$axios.post("/platform/activity/apply/pageData", { data: JSON.stringify(pageForm) }).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.tableData = res.data.list
|
||||
this.pageForm.totalCount = res.data.totalCount
|
||||
|
||||
@@ -117,15 +117,14 @@ const CLUB_INFO_MANAGE_TEMPLATE = {
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog title="授权身份" :visible.sync="authDialogVisible" width="50%">
|
||||
<el-form :model="authFormData" ref="authForm" label-width="80px">
|
||||
<el-form :model="authFormData" ref="authForm" label-width="60px">
|
||||
<el-form-item label="姓名">
|
||||
<el-input placeholder="请输入姓名" v-model="authFormData.userName" disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="工号">
|
||||
<el-input placeholder="请输入工号" v-model="authFormData.loginName" disabled></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份" prop="roleCode"
|
||||
:rules="[{required: true, message: '请选择身份', trigger: 'blur'}]">
|
||||
<el-form-item label="身份" prop="roleCode">
|
||||
<el-checkbox-group v-model="authFormData.roleCode">
|
||||
<el-checkbox label="CLUB_PRESIDENT">协会会长</el-checkbox>
|
||||
<el-checkbox label="CLUB_VICE_PRESIDENT">协会副会长</el-checkbox>
|
||||
|
||||
@@ -15,15 +15,18 @@ layout("/layouts/platform.html"){
|
||||
<table-tool label="数据列表">
|
||||
<el-button type="primary" size="small" icon="el-icon-plus" @click="onOpen">新增</el-button>
|
||||
</table-tool>
|
||||
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder" ref="table" row-key="id" style="width: 100%">
|
||||
<el-table-column :index="indexMethod" align="center" header-align="center" label="序号" type="index" width="80px"></el-table-column>
|
||||
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder" ref="table" row-key="id"
|
||||
style="width: 100%">
|
||||
<el-table-column :index="indexMethod" align="center" header-align="center" label="序号" type="index"
|
||||
width="80px"></el-table-column>
|
||||
<el-table-column label="名称" prop="name" sortable></el-table-column>
|
||||
<el-table-column label="年份" prop="year" sortable width="150px"></el-table-column>
|
||||
<el-table-column label="开始时间" prop="startTime" sortable width="300px"></el-table-column>
|
||||
<el-table-column label="结束时间" prop="endTime" sortable width="300px"></el-table-column>
|
||||
<el-table-column label="是否启用" prop="enabled" sortable width="150px">
|
||||
<template scope="{row}">
|
||||
<el-tag :type="row.enabled ? 'success' : 'danger'" size="mini">{{row.enabled ? '是' : '否'}}</el-tag>
|
||||
<el-tag :type="row.enabled ? 'success' : 'danger'" size="mini">{{row.enabled ? '是' : '否'}}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" fixed="right" width="200px">
|
||||
@@ -37,10 +40,12 @@ layout("/layouts/platform.html"){
|
||||
</el-card>
|
||||
</guava>
|
||||
|
||||
<el-dialog :title="formData.id ? '编辑' : '新增'" :visible.sync="dialogVisible" :close-on-click-modal="false" width="60%">
|
||||
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="80px">
|
||||
<el-dialog :title="formData.id ? '编辑' : '新增'" :visible.sync="dialogVisible" :close-on-click-modal="false"
|
||||
width="60%">
|
||||
<el-form ref="formRef" :model="formData" :rules="formRules" label-width="100px">
|
||||
<el-form-item label="考核年份" prop="year">
|
||||
<el-date-picker v-model="formData.year" type="year" value-format="yyyy" placeholder="考核年份" style="width: 100%"></el-date-picker>
|
||||
<el-date-picker v-model="formData.year" type="year" value-format="yyyy" placeholder="考核年份"
|
||||
style="width: 100%"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="名称" prop="name">
|
||||
<el-input v-model="formData.name" placeholder="名称"></el-input>
|
||||
@@ -49,22 +54,22 @@ layout("/layouts/platform.html"){
|
||||
<el-col :span="12">
|
||||
<el-form-item label="开始时间" prop="startTime">
|
||||
<el-date-picker
|
||||
v-model="formData.startTime"
|
||||
style="width: 100%"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="开始时间"
|
||||
v-model="formData.startTime"
|
||||
style="width: 100%"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="开始时间"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="结束时间" prop="endTime">
|
||||
<el-date-picker
|
||||
v-model="formData.endTime"
|
||||
style="width: 100%"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="结束时间"
|
||||
v-model="formData.endTime"
|
||||
style="width: 100%"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="结束时间"
|
||||
></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -72,6 +77,17 @@ layout("/layouts/platform.html"){
|
||||
<el-form-item label="通知内容" prop="content">
|
||||
<text-editor v-model="formData.content"></text-editor>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="自定义表单">
|
||||
<div style="display: flex;align-items: center;height: 40px">
|
||||
<el-switch v-model="formData.isCustomForm" style="margin-right: 10px"></el-switch>
|
||||
<custom-form-field v-model="formData.formConfig" v-if="formData.isCustomForm"></custom-form-field>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
<!-- <el-form-item label="报名表单" prop="formConfig" v-if="formData.isCustomForm">-->
|
||||
<!-- <custom-form-field v-model="formData.formConfig"></custom-form-field>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="是否启用" prop="enabled">
|
||||
<el-switch v-model="formData.enabled"></el-switch>
|
||||
</el-form-item>
|
||||
@@ -91,12 +107,12 @@ layout("/layouts/platform.html"){
|
||||
return {
|
||||
dialogVisible: false,
|
||||
formRules: {
|
||||
name: [{ required: true, message: "名称不能为空", trigger: ["blur", "change"] }],
|
||||
content: [{ required: true, message: "通知内容不能为空", trigger: ["blur", "change"] }],
|
||||
year: [{ required: true, message: "考核年份不能为空", trigger: ["blur", "change"] }],
|
||||
startTime: [{ required: true, message: "开始时间不能为空", trigger: ["blur", "change"] }],
|
||||
endTime: [{ required: true, message: "结束时间不能为空", trigger: ["blur", "change"] }],
|
||||
enabled: [{ required: true, message: "是否启用不能为空", trigger: ["blur", "change"] }]
|
||||
name: [{required: true, message: "名称不能为空", trigger: ["blur", "change"]}],
|
||||
content: [{required: true, message: "通知内容不能为空", trigger: ["blur", "change"]}],
|
||||
year: [{required: true, message: "考核年份不能为空", trigger: ["blur", "change"]}],
|
||||
startTime: [{required: true, message: "开始时间不能为空", trigger: ["blur", "change"]}],
|
||||
endTime: [{required: true, message: "结束时间不能为空", trigger: ["blur", "change"]}],
|
||||
enabled: [{required: true, message: "是否启用不能为空", trigger: ["blur", "change"]}]
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -111,13 +127,15 @@ layout("/layouts/platform.html"){
|
||||
onEdit(row) {
|
||||
this.dialogVisible = true
|
||||
this.$nextTick(() => {
|
||||
this.formData = { ...row }
|
||||
this.formData = {...row}
|
||||
})
|
||||
},
|
||||
onSubmit() {
|
||||
this.$refs.formRef.validate((valid) => {
|
||||
if (valid) {
|
||||
this.$axios.post("/platform/buildHome/act/save", this.formData).then((res) => {
|
||||
this.$axios.post("/platform/buildHome/act/save", {
|
||||
act: JSON.stringify(this.formData)
|
||||
}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success(res.msg)
|
||||
this.dialogVisible = false
|
||||
|
||||
+59
-32
@@ -7,22 +7,33 @@ const kpiForm = {
|
||||
<el-form-item label="考核名称" prop="name">
|
||||
<el-input v-model="formData.name" placeholder="请输入考核名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-row :gutter="20" type="flex">
|
||||
<el-form-item label="考核年度" prop="year">
|
||||
<el-date-picker v-model="formData.year" type="year" placeholder="选择年"
|
||||
value-format="yyyy"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="开始时间" prop="startTime">
|
||||
<el-date-picker v-model="formData.startTime" type="date" value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="结束时间" prop="endTime">
|
||||
<el-date-picker v-model="formData.endTime" type="date" value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
<el-row>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="考核年度" prop="year">
|
||||
<el-date-picker v-model="formData.year" type="year" placeholder="选择年"
|
||||
value-format="yyyy"></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="开始时间" prop="startTime">
|
||||
<el-date-picker v-model="formData.startTime" type="date" value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="结束时间" prop="endTime">
|
||||
<el-date-picker v-model="formData.endTime" type="date" value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="选择日期"></el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-form-item label="是否开启" prop="enable">
|
||||
<el-switch v-model="formData.enable" :active-value="1" :inactive-value="0"></el-switch>
|
||||
<el-form-item label="关联事项" prop="actId">
|
||||
<el-select v-model="formData.actId">
|
||||
<el-option v-for="item in actOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否开启" prop="enabled">
|
||||
<el-switch v-model="formData.enabled"></el-switch>
|
||||
</el-form-item>
|
||||
|
||||
<div class="process-title">考核内容</div>
|
||||
@@ -48,7 +59,8 @@ const kpiForm = {
|
||||
<template v-for="(category,categoryIndex) in formData.categoryList">
|
||||
<tr v-for="(item,itemIndex) in category.items"
|
||||
:class="{'category-split':itemIndex+1===category.items.length}">
|
||||
<td v-if="itemIndex===0" :rowspan="category.items.length" class="text-center" style="width: 10%">
|
||||
<td v-if="itemIndex===0" :rowspan="category.items.length" class="text-center"
|
||||
style="width: 10%">
|
||||
<div>{{categoryIndex+1}}</div>
|
||||
</td>
|
||||
<td v-if="itemIndex===0" :rowspan="category.items.length" style="width: 10%">
|
||||
@@ -194,28 +206,31 @@ const kpiForm = {
|
||||
dialogVisible: false,
|
||||
formData: {
|
||||
categoryList: [],
|
||||
scoreLevels:[]
|
||||
scoreLevels: []
|
||||
},
|
||||
formRules: {
|
||||
name: [{ required: true, message: "请输入考核名称", trigger: ["change", "blur"] }],
|
||||
code: [{ required: true, message: "请输入考核代码", trigger: ["change", "blur"] }],
|
||||
year: [{ required: true, message: "请输入考核年份", trigger: ["change", "blur"] }],
|
||||
startTime: [{ required: true, message: "请输入考核时间", trigger: ["change", "blur"] }],
|
||||
endTime: [{ required: true, message: "请输入考核时间", trigger: ["change", "blur"] }]
|
||||
name: [{required: true, message: "请输入考核名称", trigger: ["change", "blur"]}],
|
||||
code: [{required: true, message: "请输入考核代码", trigger: ["change", "blur"]}],
|
||||
year: [{required: true, message: "请输入考核年份", trigger: ["change", "blur"]}],
|
||||
startTime: [{required: true, message: "请输入考核时间", trigger: ["change", "blur"]}],
|
||||
endTime: [{required: true, message: "请输入考核时间", trigger: ["change", "blur"]}],
|
||||
actId: [{required: true, message: "请选择活动事项", trigger: ["change", "blur"]}]
|
||||
},
|
||||
newCategory: {
|
||||
name: "",
|
||||
code: "",
|
||||
sortOrder: 1,
|
||||
items: []
|
||||
}
|
||||
},
|
||||
actOptions: []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onOpen(id = null) {
|
||||
this.visible = true
|
||||
this.listAct()
|
||||
if (id) {
|
||||
$.post("/platform/buildHome/kpi/plan/get", { id }).then((res) => {
|
||||
$.post("/platform/buildHome/kpi/plan/get", {id}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
res.data.year = res.data.year.toString()
|
||||
|
||||
@@ -228,11 +243,19 @@ const kpiForm = {
|
||||
} else {
|
||||
this.formData = {
|
||||
categoryList: [],
|
||||
scoreLevels:[]
|
||||
scoreLevels: []
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
listAct() {
|
||||
this.$axios.get("/platform/buildHome/material/query/listAct").then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.actOptions = res.data
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
onSubmit() {
|
||||
this.$refs.formRef.validate((valid) => {
|
||||
if (valid) {
|
||||
@@ -323,6 +346,7 @@ const kpiForm = {
|
||||
}
|
||||
},
|
||||
|
||||
// 添加考核分类
|
||||
addCategory() {
|
||||
if (!this.newCategory.name || !this.newCategory.code) {
|
||||
this.$message.warning("请填写完整信息")
|
||||
@@ -348,7 +372,7 @@ const kpiForm = {
|
||||
}
|
||||
}
|
||||
],
|
||||
$edit_status: { name: false }
|
||||
$edit_status: {name: false}
|
||||
}
|
||||
|
||||
this.formData.categoryList.push(category)
|
||||
@@ -356,6 +380,7 @@ const kpiForm = {
|
||||
this.$message.success("添加成功")
|
||||
},
|
||||
|
||||
// 添加考核项目
|
||||
addNewItem(categoryIndex) {
|
||||
const category = this.formData.categoryList[categoryIndex]
|
||||
const newItem = {
|
||||
@@ -383,7 +408,8 @@ const kpiForm = {
|
||||
this.formData.categoryList.splice(cateGoryIndex, 1)
|
||||
this.$message.success("删除成功")
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => {
|
||||
})
|
||||
},
|
||||
|
||||
// 删除考核内容
|
||||
@@ -397,7 +423,8 @@ const kpiForm = {
|
||||
this.formData.categoryList[cateGoryIndex].items.splice(itemIndex, 1)
|
||||
this.$message.success("删除成功")
|
||||
})
|
||||
.catch(() => {})
|
||||
.catch(() => {
|
||||
})
|
||||
}
|
||||
},
|
||||
style: /*language=CSS*/ `
|
||||
@@ -442,7 +469,7 @@ const kpiForm = {
|
||||
bottom: 0;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
|
||||
.kpi-plus table tbody tr td {
|
||||
padding: 14px 20px;
|
||||
color: rgb(17 24 39);
|
||||
@@ -473,10 +500,10 @@ const kpiForm = {
|
||||
border-bottom: 1px solid rgb(33 40 53);
|
||||
}
|
||||
|
||||
.kpi-plus .score-levels-table .el-input-number{
|
||||
width: unset!important;
|
||||
.kpi-plus .score-levels-table .el-input-number {
|
||||
width: unset !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.td-extra {
|
||||
/*display: none;*/
|
||||
|
||||
@@ -9,7 +9,7 @@ layout("/layouts/platform.html"){
|
||||
.alert {
|
||||
padding: 15px;
|
||||
background-color: #e8f4ff;
|
||||
border-left: 4px solid var(--color-primary);
|
||||
border-left: 4px solid #1890ff;
|
||||
margin-bottom: 25px;
|
||||
border-radius: 4px;
|
||||
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
|
||||
@@ -29,7 +29,7 @@ layout("/layouts/platform.html"){
|
||||
}
|
||||
|
||||
.alert i {
|
||||
color: var(--color-primary);
|
||||
color: #1890ff;
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ layout("/layouts/platform.html"){
|
||||
}
|
||||
|
||||
.book-header {
|
||||
background: linear-gradient(120deg, var(--color-primary), var(--color-primary-8));
|
||||
background: linear-gradient(120deg, #1e3c72, #2a5298);
|
||||
color: white;
|
||||
padding: 30px;
|
||||
text-align: center;
|
||||
@@ -107,7 +107,7 @@ layout("/layouts/platform.html"){
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
margin-bottom: 20px;
|
||||
color: var(--color-primary);
|
||||
color: #1867b0;
|
||||
position: relative;
|
||||
padding-left: 15px;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ layout("/layouts/platform.html"){
|
||||
</el-table>
|
||||
<!--#include("/layouts/pagination.html"){}#-->
|
||||
</el-card>
|
||||
<material-write ref="materialWriteRef"></material-write>
|
||||
<material-write ref="materialWriteRef" @refresh="doSearch"></material-write>
|
||||
<material-info ref="materialInfoRef"></material-info>
|
||||
</div>
|
||||
|
||||
|
||||
+23
-9
@@ -7,22 +7,29 @@ layout("/layouts/platform.html"){
|
||||
<search @search="doSearch">
|
||||
<search-item label="评比事项">
|
||||
<el-select v-model="pageForm.actId" placeholder="考核活动" clearable>
|
||||
<el-option v-for="item in actOptions" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
||||
<el-option v-for="item in actOptions" :key="item.id" :label="item.name"
|
||||
:value="item.id"></el-option>
|
||||
</el-select>
|
||||
</search-item>
|
||||
</search>
|
||||
</el-card>
|
||||
<el-card shadow="never" class="mt10">
|
||||
<table-tool label="数据列表">
|
||||
<el-button size="small" type="primary" icon="el-icon-download" @click="exportZip">导出汇总表</el-button>
|
||||
<el-button size="small" type="primary" icon="el-icon-download" @click="exportZip">导出材料汇总表</el-button>
|
||||
<el-button size="small" type="primary" icon="el-icon-download" @click="exportScore">导出自评分汇总表
|
||||
</el-button>
|
||||
</table-tool>
|
||||
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder" ref="table" row-key="id" style="width: 100%">
|
||||
<el-table-column :index="indexMethod" align="center" header-align="center" label="序号" type="index" width="80px"></el-table-column>
|
||||
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder" ref="table" row-key="id"
|
||||
style="width: 100%">
|
||||
<el-table-column :index="indexMethod" align="center" header-align="center" label="序号" type="index"
|
||||
width="80px"></el-table-column>
|
||||
<el-table-column label="分工会名称" prop="unionName" sortable></el-table-column>
|
||||
<el-table-column label="分工会编码" prop="unionCode" sortable></el-table-column>
|
||||
<el-table-column label="填写状态" prop="isWrite">
|
||||
<template scope="{row}">
|
||||
<el-tag :type="row.isWrite ? 'success' : 'danger'" size="mini">{{row.isWrite ? '已填写' : '未填写'}}</el-tag>
|
||||
<el-tag :type="row.isWrite ? 'success' : 'danger'" size="mini">{{row.isWrite ? '已填写' :
|
||||
'未填写'}}
|
||||
</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column label="建家记录册" prop="logBookFiles">-->
|
||||
@@ -33,7 +40,8 @@ layout("/layouts/platform.html"){
|
||||
<!-- <el-table-column label="年度工作总结和工作大事记录" prop="annualWorkSummaryFiles"></el-table-column>-->
|
||||
<el-table-column label="操作" fixed="right" width="200px">
|
||||
<template scope="{row}">
|
||||
<el-button size="mini" type="primary" @click="$refs.infoRef.onOpen(pageForm.actId,row.id)">查看</el-button>
|
||||
<el-button size="mini" type="primary" @click="$refs.infoRef.onOpen(pageForm.actId,row.id)">查看
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -49,7 +57,7 @@ layout("/layouts/platform.html"){
|
||||
new Vue({
|
||||
el: "#app",
|
||||
mixins: [initTableMixins],
|
||||
components: { info },
|
||||
components: {info},
|
||||
data() {
|
||||
return {
|
||||
actOptions: [],
|
||||
@@ -57,6 +65,9 @@ layout("/layouts/platform.html"){
|
||||
actId: null
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
||||
},
|
||||
methods: {
|
||||
listAct() {
|
||||
@@ -70,8 +81,11 @@ layout("/layouts/platform.html"){
|
||||
}
|
||||
})
|
||||
},
|
||||
exportZip(){
|
||||
this.$downLoad('/platform/buildHome/material/query/exportZip', this.pageForm)
|
||||
exportZip() {
|
||||
this.$downLoad('/platform/buildHome/material/query/exportZip', this.pageForm)
|
||||
},
|
||||
exportScore() {
|
||||
this.$downLoad('/platform/buildHome/material/query/exportScore', this.pageForm)
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
+35
-4
@@ -1,7 +1,7 @@
|
||||
const info = {
|
||||
template: /*language=HTML*/ `
|
||||
<el-dialog title="查看详情" :visible.sync="visible" width="50%">
|
||||
<div class="upload-list">
|
||||
<div class="upload-list" v-if="!isCustomForm">
|
||||
<div class="upload-item">
|
||||
<div class="upload-item-title">
|
||||
<i class="fa fa-book"></i>
|
||||
@@ -34,17 +34,48 @@ const info = {
|
||||
<file-preview :files="viewData.annualWorkSummaryFiles" complete_result></file-preview>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else>
|
||||
<form-create
|
||||
v-if="visible"
|
||||
:key="actId+unionId"
|
||||
:value.sync="viewData.dynamicFormData"
|
||||
:rule="formCreateRule"
|
||||
:option="formCreateOption"
|
||||
disabled
|
||||
></form-create>
|
||||
</div>
|
||||
</el-dialog>
|
||||
`,
|
||||
data() {
|
||||
return {
|
||||
activity: {},
|
||||
viewData: {},
|
||||
visible: false
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
isCustomForm() {
|
||||
if(this.activity){
|
||||
return this.activity.isCustomForm
|
||||
}
|
||||
return false
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
onOpen(actId, unionId) {
|
||||
async onOpen(actId, unionId) {
|
||||
this.viewData = {}
|
||||
|
||||
this.visible = true
|
||||
|
||||
const {code,data,msg} = await this.$axios.post("/platform/buildHome/material/act", {actId})
|
||||
if (code === 0) {
|
||||
this.activity = data
|
||||
if (this.activity.isCustomForm) {
|
||||
this.formCreateRule = formCreate.parseJson(this.activity.formConfig.rule)
|
||||
this.formCreateOption = formCreate.parseJson(this.activity.formConfig.options)
|
||||
}
|
||||
}
|
||||
|
||||
this.$axios
|
||||
.post("/platform/buildHome/material/query/infoByUnionId", {
|
||||
actId,
|
||||
@@ -52,9 +83,9 @@ const info = {
|
||||
})
|
||||
.then((res) => {
|
||||
if (res.code === 0) {
|
||||
if(res.data){
|
||||
if (res.data) {
|
||||
this.viewData = res.data
|
||||
}else{
|
||||
} else {
|
||||
this.viewData = {}
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -6,8 +6,9 @@ const write = {
|
||||
当前时间不在提交时间范围内,无法提交材料。提交时间:
|
||||
{{ activity.startTime }} 至 {{ activity.endTime }}
|
||||
</div>
|
||||
|
||||
<div class="upload-list">
|
||||
|
||||
<!--非自定义表单-->
|
||||
<div class="upload-list" v-if="!isCustomForm">
|
||||
<div class="upload-item">
|
||||
<div class="upload-item-title">
|
||||
<i class="fa fa-book"></i>
|
||||
@@ -19,13 +20,13 @@ const write = {
|
||||
,导出签字盖章后上传扫描件
|
||||
</div>
|
||||
<file-upload
|
||||
:value.sync="formData.logBookFiles"
|
||||
:upload_number="1"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
:value.sync="formData.logBookFiles"
|
||||
:upload_number="1"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
></file-upload>
|
||||
</div>
|
||||
|
||||
@@ -40,13 +41,13 @@ const write = {
|
||||
,填写完导出后签字盖章后上传扫描件
|
||||
</div>
|
||||
<file-upload
|
||||
:value.sync="formData.selfEvaluationFiles"
|
||||
:upload_number="1"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
:value.sync="formData.selfEvaluationFiles"
|
||||
:upload_number="1"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
></file-upload>
|
||||
</div>
|
||||
|
||||
@@ -61,13 +62,13 @@ const write = {
|
||||
,填写完导出后签字盖章后上传扫描件
|
||||
</div>
|
||||
<file-upload
|
||||
:value.sync="formData.summaryFiles"
|
||||
:upload_number="1"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
:value.sync="formData.summaryFiles"
|
||||
:upload_number="1"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
></file-upload>
|
||||
</div>
|
||||
|
||||
@@ -78,23 +79,34 @@ const write = {
|
||||
</div>
|
||||
<div class="upload-hint">请上传年度工作总结和工作大事记电子版</div>
|
||||
<file-upload
|
||||
:value.sync="formData.annualWorkSummaryFiles"
|
||||
:upload_number="5"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
:value.sync="formData.annualWorkSummaryFiles"
|
||||
:upload_number="5"
|
||||
upload_result_category="array"
|
||||
complete_result
|
||||
upload_text="选择文件"
|
||||
upload_button_size="medium"
|
||||
:disabled="!isWithinTimeRange"
|
||||
></file-upload>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="notice-box">
|
||||
<!--自定义表单-->
|
||||
<div v-if="isCustomForm">
|
||||
<!-- <div class="process-title">填写报名信息</div>-->
|
||||
<form-create
|
||||
:value.sync="formData.dynamicFormData"
|
||||
v-model="fapi"
|
||||
:rule="formCreateRule"
|
||||
:option="formCreateOption"
|
||||
></form-create>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="notice-box" v-if="!isCustomForm">
|
||||
<i class="fa fa-exclamation-triangle"></i>
|
||||
<strong>重要提示:</strong>
|
||||
建家记录册、教职工之家建设考核评议自评表需由党委主要负责人签字盖章后扫描件上传
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取 消</el-button>
|
||||
@@ -113,7 +125,12 @@ const write = {
|
||||
selfEvaluationFiles: [],
|
||||
summaryFiles: [],
|
||||
annualWorkSummaryFiles: []
|
||||
}
|
||||
},
|
||||
|
||||
formCreateRule: [],
|
||||
formCreateOption: {},
|
||||
fapi: null,
|
||||
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@@ -126,20 +143,27 @@ const write = {
|
||||
const endTime = new Date(this.activity.endTime).getTime()
|
||||
|
||||
return now >= startTime && now <= endTime
|
||||
}
|
||||
},
|
||||
isCustomForm() {
|
||||
return this.activity && this.activity.isCustomForm
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
onOpen(id) {
|
||||
this.visible = true
|
||||
this.actId = id
|
||||
this.$axios.post("/platform/buildHome/material/act", { actId: id }).then((res) => {
|
||||
this.$axios.post("/platform/buildHome/material/act", {actId: id}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.activity = res.data
|
||||
if (this.activity.formConfig) {
|
||||
this.formCreateRule = formCreate.parseJson(this.activity.formConfig.rule)
|
||||
this.formCreateOption = formCreate.parseJson(this.activity.formConfig.options)
|
||||
}
|
||||
} else {
|
||||
this.$message.error(res.msg)
|
||||
}
|
||||
})
|
||||
this.$axios.post("/platform/buildHome/material/info", { actId: id }).then((res) => {
|
||||
this.$axios.post("/platform/buildHome/material/info", {actId: id}).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.formData = res.data
|
||||
} else {
|
||||
@@ -148,29 +172,42 @@ const write = {
|
||||
})
|
||||
},
|
||||
|
||||
onSubmit() {
|
||||
async onSubmit() {
|
||||
if (!this.isWithinTimeRange) {
|
||||
this.$message.error("当前时间不在活动时间范围内,无法提交材料")
|
||||
return
|
||||
}
|
||||
|
||||
if (this.formData.logBookFiles.length === 0) {
|
||||
this.$message.warning("请上传建家记录册")
|
||||
return false
|
||||
if(!this.isCustomForm){
|
||||
if (this.formData.logBookFiles.length === 0) {
|
||||
this.$message.warning("请上传建家记录册")
|
||||
return false
|
||||
}
|
||||
|
||||
if (this.formData.selfEvaluationFiles.length === 0) {
|
||||
this.$message.warning("请上传自评表")
|
||||
return false
|
||||
}
|
||||
|
||||
if (this.formData.summaryFiles.length === 0) {
|
||||
this.$message.warning("请上传职工小家建设情况汇总")
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
if (this.formData.selfEvaluationFiles.length === 0) {
|
||||
this.$message.warning("请上传自评表")
|
||||
return false
|
||||
}
|
||||
|
||||
if (this.formData.summaryFiles.length === 0) {
|
||||
this.$message.warning("请上传职工小家建设情况汇总")
|
||||
return false
|
||||
if (this.isCustomForm && this.fapi) {
|
||||
let formValid = false
|
||||
try {
|
||||
await this.fapi.validate()
|
||||
formValid = true
|
||||
} catch (e) {
|
||||
formValid = false
|
||||
}
|
||||
if (!formValid) return
|
||||
}
|
||||
|
||||
this.$axios
|
||||
.post("/platform/buildHome/material/submit", { material: JSON.stringify(this.formData) })
|
||||
.post("/platform/buildHome/material/submit", {material: JSON.stringify(this.formData)})
|
||||
.then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.$message.success("提交成功")
|
||||
|
||||
@@ -2,7 +2,7 @@ const apply_component = {
|
||||
template: /*language=HTML*/ `
|
||||
<el-dialog title="填写申请" :visible.sync="dialogVisible" width="70%" top="50px" class="ele-dialog-form">
|
||||
<el-form :model="formData" ref="formRef" :rules="formRules" label-width="120px">
|
||||
<template v-if="this.formData.honorType == '个人荣誉'">
|
||||
<template v-if="this.formData.honorTypeName == '个人荣誉'">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item prop="userName" label="姓名">
|
||||
@@ -175,9 +175,10 @@ const apply_component = {
|
||||
this.$set(this.formData, "evaluateId", activity.id)
|
||||
this.$set(this.formData, "honorTypeId", activity.honorTypeId)
|
||||
this.$set(this.formData, "honorType", activity.honorType)
|
||||
this.$set(this.formData, "honorTypeName", activity.honorTypeName)
|
||||
this.$set(this.formData, "honorId", activity.honorId)
|
||||
|
||||
if (activity.honorType.includes('集体')) {
|
||||
if (activity.honorTypeName.includes('集体')) {
|
||||
this.getCollectiveInfo()
|
||||
}
|
||||
})
|
||||
|
||||
@@ -24,7 +24,7 @@ layout("/layouts/platform.html"){
|
||||
<el-table-column prop="honorTypeName" label="荣誉类型"></el-table-column>
|
||||
<el-table-column label="操作" width="200px">
|
||||
<template slot-scope="{row}">
|
||||
<el-button size="mini" type="primary" @click="openView(row)">查看</el-button>
|
||||
<!-- <el-button size="mini" type="primary" @click="openView(row)">查看</el-button>-->
|
||||
<el-button size="mini" type="primary" @click="openApply(row)">申请</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
|
||||
+6
-2
@@ -17,12 +17,16 @@ const MEMBER_AUDIT_CHANGE_INFO = {
|
||||
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
||||
<template v-if="viewData.retireDate">
|
||||
<el-descriptions-item label="退休时间">{{ $moment(viewData.retireDate).format('YYYY-MM-DD') }}</el-descriptions-item>
|
||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||
</template>
|
||||
<template>
|
||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
</template>
|
||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||
<el-descriptions-item label="学历">{{ viewData.education }}</el-descriptions-item>
|
||||
<el-descriptions-item label="政治面貌">{{ viewData.political }}</el-descriptions-item>
|
||||
<el-descriptions-item label="婚姻状况">{{ viewData.marriage || '' }}</el-descriptions-item>
|
||||
<el-descriptions-item label="证件号码" span="2">{{ viewData.idCard }}</el-descriptions-item>
|
||||
<el-descriptions-item label="证件号码">{{ viewData.idCard }}</el-descriptions-item>
|
||||
<el-descriptions-item label="联系电话">{{ viewData.mobile }}</el-descriptions-item>
|
||||
<el-descriptions-item label="电子邮箱">{{ viewData.email }}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否会员">{{ viewData.member ? '是' : '否' }}</el-descriptions-item>
|
||||
|
||||
+7
-6
@@ -48,28 +48,29 @@ const MEMBER_AUDIT_TABLE = {
|
||||
<el-table :data="tableData" :size="tableSize" @sort-change="pageOrder" ref="table" row-key="id" style="width: 100%">
|
||||
<el-table-column :index="indexMethod" align="center" header-align="center"
|
||||
label="序号" type="index" width="80px"></el-table-column>
|
||||
<el-table-column :label="column.label" :prop="column.prop"
|
||||
<el-table-column v-for="column in tableColumns" :label="column.label"
|
||||
:prop="column.prop" :key="column.prop"
|
||||
:sortable="column.sortable" :width="column.width"
|
||||
align="center" header-align="center" min-width="100px"
|
||||
show-overflow-tooltip v-for="column in tableColumns">
|
||||
<template scope="{row}" v-if="column.prop=='loginname'">
|
||||
show-overflow-tooltip>
|
||||
<template slot-scope="{row}" v-if="column.prop=='loginname'">
|
||||
<el-link @click="openView(row.userId)" type="primary">{{row.loginname}}</el-link>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column header-align="center" label="变更类型" prop="changeType" show-overflow-tooltip sortable>
|
||||
<template scope="{row}">
|
||||
<template slot-scope="{row}">
|
||||
<span style="color: #0e78c5;cursor: pointer" @click="openChangeView(row)">
|
||||
{{getChangeTypes(row.changeTypes)}}
|
||||
</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column header-align="center" label="变更时间" prop="applyDateTime" show-overflow-tooltip sortable>
|
||||
<template scope="{row}">
|
||||
<template slot-scope="{row}">
|
||||
<span>{{ row.applyDateTime }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" fixed="right" width="200px">
|
||||
<template scope="{row}">
|
||||
<template slot-scope="{row}">
|
||||
<el-button size="mini" type="primary" @click="openChangeView(row)">查看</el-button>
|
||||
<el-button v-if="row.processInstanceTaskStatus==='ACTIVE'
|
||||
&& !(row.processInstanceNodeCode == 10 && row.changeOrigin == 'BRANCH_UNION')"
|
||||
|
||||
+8
-4
@@ -10,10 +10,14 @@ const MEMBER_CHANGE_INFO = {
|
||||
<el-descriptions-item label="性别">{{ viewData.sex }}</el-descriptions-item>
|
||||
<el-descriptions-item label="民族">{{ viewData.nation }}</el-descriptions-item>
|
||||
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
||||
<template v-if="viewData.retireDate">
|
||||
<el-descriptions-item label="退休时间">{{ $moment(viewData.retireDate).format('YYYY-MM-DD') }}</el-descriptions-item>
|
||||
</template>
|
||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||
<template v-if="viewData.retireDate">
|
||||
<el-descriptions-item label="退休时间">{{ $moment(viewData.retireDate).format('YYYY-MM-DD') }}</el-descriptions-item>
|
||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||
</template>
|
||||
<template>
|
||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||
<el-descriptions-item></el-descriptions-item>
|
||||
</template>
|
||||
<el-descriptions-item label="学历">{{ viewData.education }}</el-descriptions-item>
|
||||
<el-descriptions-item label="政治面貌">{{ viewData.political }}</el-descriptions-item>
|
||||
<el-descriptions-item label="婚姻状况">{{ viewData.marriage || '' }}</el-descriptions-item>
|
||||
|
||||
+37
-8
@@ -1,11 +1,10 @@
|
||||
<!--#
|
||||
layout("/layouts/platform.html"){
|
||||
#-->
|
||||
<style></style>
|
||||
<div id="app">
|
||||
<guava ref="guava">
|
||||
<template>
|
||||
<query-form @query="assignmentTableData" ref="queryFormRef"></query-form>
|
||||
<query-form @search="search" ref="queryFormRef"></query-form>
|
||||
<el-card shadow="never">
|
||||
<table-tool label="会员列表">
|
||||
<el-select
|
||||
@@ -151,14 +150,44 @@ layout("/layouts/platform.html"){
|
||||
pageForm.userStates = JSON.stringify(this.pageForm.userStates)
|
||||
this.$downLoad("/platform/member/statistics/comprehensive/doExport", pageForm)
|
||||
},
|
||||
assignmentTableData(data) {
|
||||
this.tableData = data.list
|
||||
this.pageForm = this.$refs.queryFormRef.pageForm
|
||||
this.pageForm.totalCount = data.totalCount
|
||||
search(pageForm) {
|
||||
this.pageForm = {
|
||||
...this.pageForm,
|
||||
...pageForm,
|
||||
}
|
||||
this.pageData()
|
||||
},
|
||||
pageData() {
|
||||
this.$refs.queryFormRef.pageForm = this.pageForm
|
||||
this.$refs.queryFormRef.pageData()
|
||||
const pageForm = clone(this.pageForm)
|
||||
pageForm.age = JSON.stringify(this.pageForm.age)
|
||||
pageForm.unionId = JSON.stringify(this.pageForm.unionId)
|
||||
pageForm.unitId = JSON.stringify(this.pageForm.unitId)
|
||||
pageForm.sexTypes = JSON.stringify(this.pageForm.sexTypes)
|
||||
pageForm.memberTypes = JSON.stringify(this.pageForm.memberTypes)
|
||||
pageForm.personTypes = JSON.stringify(this.pageForm.personTypes)
|
||||
pageForm.preparedBys = JSON.stringify(this.pageForm.preparedBys)
|
||||
pageForm.memberStatus = JSON.stringify(this.pageForm.memberStatus)
|
||||
pageForm.userStates = JSON.stringify(this.pageForm.userStates)
|
||||
if (pageForm.birthdayRange && pageForm.birthdayRange.length > 0) {
|
||||
pageForm.startDate = pageForm.birthdayRange[0]
|
||||
pageForm.endDate = pageForm.birthdayRange[1]
|
||||
}
|
||||
if (pageForm.joinMemberRange && pageForm.joinMemberRange.length > 0) {
|
||||
pageForm.startJoinDate = pageForm.joinMemberRange[0]
|
||||
pageForm.endJoinDate = pageForm.joinMemberRange[1]
|
||||
}
|
||||
if (pageForm.leaveMemberRange && pageForm.leaveMemberRange.length > 0) {
|
||||
pageForm.startLeaveDate = pageForm.leaveMemberRange[0]
|
||||
pageForm.endLeaveDate = pageForm.leaveMemberRange[1]
|
||||
}
|
||||
this.$axios.post("/platform/member/statistics/comprehensive/pageData", pageForm).then((res) => {
|
||||
if (res.code === 0) {
|
||||
this.tableData = res.data.list
|
||||
this.pageForm.totalCount = res.data.totalCount
|
||||
} else {
|
||||
this.$message.error(res.msg)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
+59
-48
@@ -12,6 +12,16 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
placeholder="选择年" :clearable="false">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
<search-item label="入校月份">
|
||||
<el-date-picker
|
||||
type="month"
|
||||
style="width: 100%"
|
||||
v-model="pageForm.month"
|
||||
placeholder="请选择入校月份搜索">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
<search-item label="姓名工号">
|
||||
<el-input placeholder="请输入姓名或者工号" clearable v-model="pageForm.searchKeyword"></el-input>
|
||||
</search-item>
|
||||
@@ -77,22 +87,37 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
</search-item>
|
||||
<search-item label="出生日期">
|
||||
<el-date-picker
|
||||
v-model="pageForm.startDate"
|
||||
type="date"
|
||||
@change="determineStartDate"
|
||||
v-model="pageForm.birthdayRange"
|
||||
type="daterange"
|
||||
style="width: 100%"
|
||||
placeholder="选择开始出生日期">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
<search-item label="出生日期">
|
||||
<el-date-picker
|
||||
v-model="pageForm.endDate"
|
||||
type="date"
|
||||
@change="determineEndDate"
|
||||
style="width: 100%"
|
||||
placeholder="选择结束出生日期">
|
||||
value-format="yyyy-MM-dd"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
<search-item label="入会日期">
|
||||
<el-date-picker
|
||||
v-model="pageForm.joinMemberRange"
|
||||
type="daterange"
|
||||
style="width: 100%"
|
||||
value-format="yyyy-MM-dd"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
<search-item label="离会日期">
|
||||
<el-date-picker
|
||||
v-model="pageForm.leaveMemberRange"
|
||||
type="daterange"
|
||||
style="width: 100%"
|
||||
value-format="yyyy-MM-dd"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</search-item>
|
||||
|
||||
<search-item label="年龄区间">
|
||||
<div style="display: flex;align-items: center">
|
||||
<el-slider
|
||||
@@ -145,6 +170,7 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
userStates: [],
|
||||
memberStatus: [],
|
||||
year: moment().format("YYYY"),
|
||||
month: "",
|
||||
roleIds: [],
|
||||
age: [0, 0],
|
||||
minAge: 0,
|
||||
@@ -153,8 +179,10 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
sexTypes: [],
|
||||
reverseSelection: false,
|
||||
activityUserCnd: "",
|
||||
startDate: "",
|
||||
endDate: ""
|
||||
// 出生年月日期范围
|
||||
birthdayRange: [],
|
||||
joinMemberRange: [],
|
||||
leaveMemberRange: [],
|
||||
},
|
||||
personTypeOptions: [],
|
||||
preparedByOptions: [],
|
||||
@@ -176,6 +204,16 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
components: {
|
||||
"member-cnd": httpVueLoader("/components/module/member/MemberCnd.vue?v=" + new Date().getTime())
|
||||
},
|
||||
computed: {
|
||||
monthPickerOptions() {
|
||||
return {
|
||||
disabledDate(time) {
|
||||
// 只能选择与 `year` 相同的年份
|
||||
return time.getFullYear() !== parseInt(this.pageForm.year);
|
||||
}
|
||||
};
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
determineEndDate() {
|
||||
if (this.pageForm.startDate) {
|
||||
@@ -186,15 +224,6 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
}
|
||||
this.pageForm.endDate = this.pageForm.endDate.toLocaleDateString().replaceAll("/", "-")
|
||||
},
|
||||
determineStartDate() {
|
||||
if (this.pageForm.endDate) {
|
||||
if (Date.parse(this.pageForm.startDate) > Date.parse(this.pageForm.endDate)) {
|
||||
this.pageForm.startDate = ""
|
||||
this.$notify.warning("开始时间不能大于结束时间")
|
||||
}
|
||||
}
|
||||
this.pageForm.startDate = this.pageForm.startDate.toLocaleDateString().replaceAll("/", "-")
|
||||
},
|
||||
tagClick(key, val) {
|
||||
let idx = this.pageForm[key].indexOf(val)
|
||||
if (idx !== -1) {
|
||||
@@ -259,8 +288,9 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
this.pageForm.activityUserCnd = ""
|
||||
this.pageForm.age = [0, 0]
|
||||
this.pageForm.reverseSelection = false
|
||||
this.pageForm.startDate = ""
|
||||
this.pageForm.endDate = ""
|
||||
this.pageForm.birthdayRange = []
|
||||
this.pageForm.joinMemberRange = []
|
||||
this.pageForm.leaveMemberRange = []
|
||||
this.doSearch()
|
||||
},
|
||||
getMenuOptions() {
|
||||
@@ -270,9 +300,6 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
}
|
||||
})
|
||||
},
|
||||
setNowYear() {
|
||||
this.$set(this.pageForm, "year", moment().format("YYYY"))
|
||||
},
|
||||
async initData() {
|
||||
if (this.$auth.hasRoleOr(["SYSADMIN", "SCHOOL_UNION_ADMIN"])) {
|
||||
this.unions = await this.$businessTool.listUnion(this.pageForm.unionId)
|
||||
@@ -308,28 +335,12 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
|
||||
this.pageForm.isUnion = params.isUnion
|
||||
this.pageData()
|
||||
},
|
||||
pageData() {
|
||||
const pageForm = clone(this.pageForm)
|
||||
pageForm.age = JSON.stringify(this.pageForm.age)
|
||||
pageForm.unionId = JSON.stringify(this.pageForm.unionId)
|
||||
pageForm.unitId = JSON.stringify(this.pageForm.unitId)
|
||||
pageForm.sexTypes = JSON.stringify(this.pageForm.sexTypes)
|
||||
pageForm.memberTypes = JSON.stringify(this.pageForm.memberTypes)
|
||||
pageForm.personTypes = JSON.stringify(this.pageForm.personTypes)
|
||||
pageForm.preparedBys = JSON.stringify(this.pageForm.preparedBys)
|
||||
pageForm.memberStatus = JSON.stringify(this.pageForm.memberStatus)
|
||||
pageForm.userStates = JSON.stringify(this.pageForm.userStates)
|
||||
this.$axios.post("/platform/member/statistics/comprehensive/pageData", pageForm).then((data) => {
|
||||
if (data.code === 0) {
|
||||
this.$emit("query", data.data)
|
||||
} else {
|
||||
this.$message.error(data.msg)
|
||||
}
|
||||
})
|
||||
doSearch() {
|
||||
this.$emit('search', this.pageForm)
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.initData()
|
||||
this.pageData()
|
||||
this.doSearch()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -138,16 +138,24 @@ const optionSelect = {
|
||||
<!-- 联系电话输入 -->
|
||||
<div class="confirm-mobile-section">
|
||||
<div class="confirm-section-title">联系信息</div>
|
||||
<el-form :model="contactForm" ref="contactForm" :rules="contactRules">
|
||||
<el-form-item prop="mobile">
|
||||
<el-form :model="contactForm" ref="contactForm" :rules="contactRules" label-width="80px">
|
||||
<el-form-item prop="mobile" label="联系电话">
|
||||
<el-input
|
||||
v-model="contactForm.mobile"
|
||||
placeholder="请输入手机号码"
|
||||
maxlength="11"
|
||||
clearable>
|
||||
<template slot="prepend">联系电话</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="projectInfo.provideMode == 3" prop="receiveAddress" label="收货地址" :rules="[{ required: true, message: '请选择收货地址', trigger: 'change' }]">
|
||||
<el-select v-model="contactForm.receiveAddress" placeholder="请选择收货地址" style="width: 100%">
|
||||
<el-option v-for="item in addressOptions"
|
||||
:key="item.id"
|
||||
:label="item.userName + ' ' + item.tel + ' ' + item.province + ' ' + item.city + ' ' + item.county + ' ' + item.addressDetail"
|
||||
:value="item.userName + ' ' + item.tel + ' ' + item.province + ' ' + item.city + ' ' + item.county + ' ' + item.addressDetail">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
|
||||
@@ -222,7 +230,8 @@ const optionSelect = {
|
||||
showOptionDetailDialog: false, // 选项详情弹窗
|
||||
selectedOption: null, // 当前选中的选项
|
||||
contactForm: {
|
||||
mobile: "" // 联系电话
|
||||
mobile: "", // 联系电话,
|
||||
receiveAddress: ""
|
||||
},
|
||||
contactRules: {
|
||||
mobile: [
|
||||
@@ -316,7 +325,8 @@ const optionSelect = {
|
||||
|
||||
this.selectedRadioId = null
|
||||
this.contactForm = {
|
||||
mobile: ""
|
||||
mobile: "",
|
||||
receiveAddress: ""
|
||||
}
|
||||
|
||||
this.getProjectInfo()
|
||||
@@ -329,6 +339,11 @@ const optionSelect = {
|
||||
this.projectInfo = res.data
|
||||
this.deadlineTime = this.projectInfo.choiceTimeEnd
|
||||
|
||||
// 获取收货地址
|
||||
if (this.projectInfo.provideMode === 3) {
|
||||
this.getAddress()
|
||||
}
|
||||
|
||||
// 初始化选项的selectNum为0
|
||||
if (this.projectInfo.options) {
|
||||
this.projectInfo.options.forEach((option) => {
|
||||
@@ -365,6 +380,13 @@ const optionSelect = {
|
||||
this.contactForm.mobile = this.userSelection[0]?.mobile
|
||||
}
|
||||
|
||||
// 地址回显
|
||||
if (this.projectInfo.provideMode === 3) {
|
||||
if (this.userSelection && this.userSelection[0].receiveAddress) {
|
||||
this.contactForm.receiveAddress = this.userSelection[0].receiveAddress
|
||||
}
|
||||
}
|
||||
|
||||
// 设置已选择的选项
|
||||
if (this.projectInfo.options && this.userSelection.length > 0) {
|
||||
// 单选模式
|
||||
@@ -411,7 +433,8 @@ const optionSelect = {
|
||||
{
|
||||
selectOptionId: this.selectedRadioId,
|
||||
selectNum: 1,
|
||||
mobile: this.contactForm.mobile
|
||||
mobile: this.contactForm.mobile,
|
||||
receiveAddress: this.contactForm.receiveAddress
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -421,7 +444,8 @@ const optionSelect = {
|
||||
selections = this.selectedOptions.map((option) => ({
|
||||
selectOptionId: option.id,
|
||||
selectNum: option.selectNum,
|
||||
mobile: this.contactForm.mobile
|
||||
mobile: this.contactForm.mobile,
|
||||
receiveAddress: this.contactForm.receiveAddress
|
||||
}))
|
||||
}
|
||||
|
||||
@@ -501,6 +525,14 @@ const optionSelect = {
|
||||
event.stopPropagation()
|
||||
this.selectedOption = option
|
||||
this.showOptionDetailDialog = true
|
||||
},
|
||||
|
||||
// 获取收货地址
|
||||
async getAddress() {
|
||||
const resp = await this.$axios.post("/platform/welfare/addressManage/selectUserAddress")
|
||||
if (resp.code === 0) {
|
||||
this.addressOptions = resp.data
|
||||
}
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
|
||||
@@ -99,6 +99,9 @@ layout("/layouts/platform.html"){
|
||||
show-overflow-tooltip
|
||||
v-for="column in tableColumns"
|
||||
></el-table-column>
|
||||
|
||||
<el-table-column label="收货地址" prop="receiveAddress" v-if="provideMode===3"></el-table-column>
|
||||
|
||||
<el-table-column align="center" fixed="right" header-align="center" label="操作" width="100px">
|
||||
<template slot-scope="{row}">
|
||||
<el-button size="mini" type="primary" @click="proxySelect(row)">代选</el-button>
|
||||
@@ -152,6 +155,9 @@ layout("/layouts/platform.html"){
|
||||
return this.projectOptions.find((item) => item.id === this.pageForm.projectId).options
|
||||
}
|
||||
return []
|
||||
},
|
||||
provideMode() {
|
||||
return this.projectOptions.find((item) => item.id === this.pageForm.projectId).provideMode
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
||||
+1
-6
@@ -47,12 +47,7 @@ layout("/layouts/platform_h5.html"){
|
||||
}
|
||||
</style>
|
||||
<div id="app" v-cloak>
|
||||
<van-nav-bar
|
||||
title="活动详情"
|
||||
left-text="返回"
|
||||
left-arrow
|
||||
@click-left="$pjaxReplace('/platform/mobile/trainSignUpActivity/trainList')"
|
||||
></van-nav-bar>
|
||||
<van-nav-bar title="活动详情" @click-left="historyBack" left-arrow left-text="返回" placeholder fixed></van-nav-bar>
|
||||
|
||||
<van-image height="186" src="/assets/mobile/img/trainSignUp/3quhtakfd4heeqsk6irqhft60p.png"></van-image>
|
||||
<div class="title">{{activity.activityName}}</div>
|
||||
|
||||
@@ -147,12 +147,7 @@ layout("/layouts/platform_h5.html"){
|
||||
}
|
||||
</style>
|
||||
<div id="app" v-cloak>
|
||||
<van-nav-bar
|
||||
:title="trainType + '列表'"
|
||||
left-text="返回"
|
||||
left-arrow
|
||||
@click-left="$pjaxReplace('/platform/mobile/trainSignUpActivity/trainList?isMySign=' + isMySign)"
|
||||
></van-nav-bar>
|
||||
<van-nav-bar :title="trainType + '列表'" @click-left="historyBack" left-arrow left-text="返回" placeholder fixed></van-nav-bar>
|
||||
|
||||
<van-sticky>
|
||||
<van-dropdown-menu>
|
||||
@@ -727,7 +722,8 @@ layout("/layouts/platform_h5.html"){
|
||||
async pageData() {
|
||||
const resp = await this.$axios.post("/platform/mobile/trainSignUpActivity/findOne", {
|
||||
id: this.activityId,
|
||||
tabIndex: this.activityStatus
|
||||
tabIndex: this.activityStatus,
|
||||
fromMode: 'mobile',
|
||||
})
|
||||
if (resp.code === 0) {
|
||||
this.tableData = resp.data
|
||||
|
||||
@@ -147,7 +147,7 @@ layout("/layouts/platform_h5.html"){
|
||||
|
||||
<van-tabbar v-model="pageForm.activityType" @change="doSearch">
|
||||
<van-tabbar-item icon="wap-home-o">活动列表</van-tabbar-item>
|
||||
<van-tabbar-item icon="user-o">我报名的</van-tabbar-item>
|
||||
<van-tabbar-item icon="user-o">我的报名</van-tabbar-item>
|
||||
</van-tabbar>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -74,11 +74,7 @@ layout("/layouts/platform_h5.html"){
|
||||
}, 500)
|
||||
},
|
||||
back() {
|
||||
if (this.projectId) {
|
||||
this.$pjaxReplace("/platform/h5/welfare/userChoose/index?id=" + this.projectId)
|
||||
} else {
|
||||
this.$pjaxReplace("/platform/h5/home")
|
||||
}
|
||||
this.historyBack()
|
||||
},
|
||||
onEdit(row) {
|
||||
this.title = "编辑地址"
|
||||
|
||||
@@ -56,6 +56,10 @@ const selectView = {
|
||||
<div class="info-row__label">联系电话</div>
|
||||
<div class="info-row__value">{{ mergedSelections[0]?.mobile || '暂无' }}</div>
|
||||
</div>
|
||||
<div class="info-row">
|
||||
<div class="info-row__label">收货地址</div>
|
||||
<div class="info-row__value">{{ mergedSelections[0]?.receiveAddress || '暂无' }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -73,7 +77,7 @@ const selectView = {
|
||||
:key="item.id"
|
||||
@click="showOptionDetail(item)">
|
||||
<div class="selection-item__image">
|
||||
<img :src="item.imgUrl || '/static/images/default-welfare.png'"
|
||||
<img :src="item.imgUrl"
|
||||
alt="福利图片"
|
||||
@error="handleImageError">
|
||||
</div>
|
||||
|
||||
@@ -678,18 +678,17 @@ layout("/layouts/platform_h5.html"){
|
||||
maxlength="11"
|
||||
required
|
||||
></van-field>
|
||||
<!--
|
||||
收货地址字段预留位置
|
||||
<!--收货地址-->
|
||||
<van-field
|
||||
v-if="projectInfo.needAddress"
|
||||
v-model="formData.address"
|
||||
v-if="projectInfo.provideMode == 3"
|
||||
v-model="formData.receiveAddress"
|
||||
label="收货地址"
|
||||
placeholder="请输入收货地址"
|
||||
type="textarea"
|
||||
rows="2"
|
||||
placeholder="请选择收货地址"
|
||||
readonly
|
||||
is-link
|
||||
@click="showAddressSheet = true"
|
||||
required
|
||||
></van-field>
|
||||
-->
|
||||
></van-field>
|
||||
</div>
|
||||
|
||||
<!-- 选择内容 -->
|
||||
@@ -733,6 +732,35 @@ layout("/layouts/platform_h5.html"){
|
||||
<div class="welfare-detail-content" v-html="selectedOption.description"></div>
|
||||
</div>
|
||||
</van-popup>
|
||||
|
||||
<!-- 收货地址选择弹窗 -->
|
||||
<van-action-sheet v-model="showAddressSheet" title="选择收货地址" :round="true">
|
||||
<div style="padding: 16px 0 0">
|
||||
<div
|
||||
v-for="address in addressOptions"
|
||||
:key="address.id"
|
||||
class="address-item"
|
||||
@click="selectAddress(address)"
|
||||
style="padding: 12px 16px; border-bottom: 1px solid #f0f0f0; cursor: pointer"
|
||||
>
|
||||
<div style="display: flex; justify-content: space-between; align-items: flex-start">
|
||||
<div style="flex: 1">
|
||||
<div style="font-size: 16px; font-weight: 500; color: #323233; margin-bottom: 4px">
|
||||
{{ address.userName }} {{ address.tel }}
|
||||
</div>
|
||||
<div style="font-size: 14px; color: #646566; line-height: 1.4">
|
||||
{{ address.province }}{{ address.city }}{{ address.county }}{{ address.addressDetail }}
|
||||
</div>
|
||||
</div>
|
||||
<van-tag v-if="address.isDefault" type="primary" size="mini" style="margin-left: 8px">默认</van-tag>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="addressOptions.length === 0" style="text-align: center; padding: 40px 16px; color: #969799">暂无收货地址</div>
|
||||
</div>
|
||||
<div style="padding: 16px; border-top: 1px solid #f0f0f0; background: #fafafa">
|
||||
<van-button type="info" block round @click="goToAddressManage">收货地址管理</van-button>
|
||||
</div>
|
||||
</van-action-sheet>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -757,8 +785,12 @@ layout("/layouts/platform_h5.html"){
|
||||
formData: {
|
||||
userSign: "", // 用户签名
|
||||
mobile: "", // 手机号码
|
||||
address: "" // 收货地址(预留)
|
||||
}
|
||||
address: "" // 收货地址
|
||||
},
|
||||
|
||||
addressOptions: [],
|
||||
showAddressSheet: false, // 收货地址选择弹窗
|
||||
selectedAddressText: "" // 选中的收货地址显示文本
|
||||
}
|
||||
},
|
||||
|
||||
@@ -815,6 +847,11 @@ layout("/layouts/platform_h5.html"){
|
||||
if (res.code === 0) {
|
||||
this.projectInfo = res.data
|
||||
|
||||
// 获取收货地址
|
||||
if (this.projectInfo.provideMode === 3) {
|
||||
this.getAddress()
|
||||
}
|
||||
|
||||
// 初始化选项的selectNum为0
|
||||
if (this.projectInfo.options) {
|
||||
this.projectInfo.options.forEach((option) => {
|
||||
@@ -846,10 +883,16 @@ layout("/layouts/platform_h5.html"){
|
||||
}
|
||||
} else if (this.$store.user && this.$store.user.mobile) {
|
||||
// 如果没有选择过,使用store中的默认手机号
|
||||
debugger
|
||||
this.formData.mobile = this.$store.user.mobile
|
||||
}
|
||||
|
||||
// 地址回显
|
||||
if (this.projectInfo.provideMode === 3) {
|
||||
if (this.userSelection && this.userSelection[0].receiveAddress) {
|
||||
this.formData.receiveAddress = this.userSelection[0].receiveAddress
|
||||
}
|
||||
}
|
||||
|
||||
// 设置已选择的选项
|
||||
if (this.projectInfo.options && this.userSelection.length > 0) {
|
||||
// 单选模式
|
||||
@@ -898,6 +941,12 @@ layout("/layouts/platform_h5.html"){
|
||||
return
|
||||
}
|
||||
|
||||
// 如果需要邮寄
|
||||
if (this.projectInfo.provideMode === 3 && !this.formData.receiveAddress) {
|
||||
this.$toast.fail("请填写邮寄地址")
|
||||
return
|
||||
}
|
||||
|
||||
if (this.isSubmitting) return
|
||||
this.isSubmitting = true
|
||||
|
||||
@@ -937,10 +986,10 @@ layout("/layouts/platform_h5.html"){
|
||||
})
|
||||
}
|
||||
|
||||
// 未来可扩展添加收货地址
|
||||
if (this.formData.address) {
|
||||
// 收货地址
|
||||
if (this.projectInfo.provideMode === 3 && this.formData.receiveAddress) {
|
||||
selections.forEach((selection) => {
|
||||
selection.address = this.formData.address
|
||||
selection.receiveAddress = this.formData.receiveAddress
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1082,6 +1131,18 @@ layout("/layouts/platform_h5.html"){
|
||||
}
|
||||
},
|
||||
|
||||
// 选择收货地址
|
||||
selectAddress(address) {
|
||||
this.formData.receiveAddress =
|
||||
address.userName + " " + address.tel + " " + address.province + address.city + address.county + address.addressDetail
|
||||
this.showAddressSheet = false
|
||||
},
|
||||
|
||||
// 跳转到地址管理页面
|
||||
goToAddressManage() {
|
||||
this.$pjaxReplace("/platform/h5/welfare/address/list")
|
||||
},
|
||||
|
||||
// 切换选项选中状态
|
||||
toggleOption(option) {
|
||||
if (this.projectInfo.isCheckBox === "radio") {
|
||||
@@ -1120,6 +1181,14 @@ layout("/layouts/platform_h5.html"){
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
// 获取收货地址
|
||||
async getAddress() {
|
||||
const resp = await this.$axios.post("/platform/welfare/addressManage/selectUserAddress")
|
||||
if (resp.code === 0) {
|
||||
this.addressOptions = resp.data
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user