kun 19/10/11 17

This commit is contained in:
沈学坤
2019-10-11 16:59:03 +08:00
parent 68f5e4c6bb
commit 03d2d0b61c
45 changed files with 695 additions and 211 deletions

View File

@@ -41,12 +41,16 @@ export default {
watch: {},
methods: {
judge () {
if (sessionStorage.token) {
if (sessionStorage.id) {
this.name = sessionStorage.name
this.enter = false
}
},
quit () {
this.$router.push({
name: 'homePage'
})
this.$message.success('退出成功!')
sessionStorage.clear()
this.enter = true
}

View File

@@ -0,0 +1,109 @@
<template>
<div class="page">
<!-- 分页按钮 -->
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-size="pageSize"
:pager-count="5"
background
layout="prev, pager, next"
:total="totalCount"
></el-pagination>
</div>
</template>
<script>
export default {
components: {},
props: ['pageSize', 'currentPage', 'totalCount'],
data () {
return { }
},
created () {
this.currentPage = Number(localStorage.getItem('pagination')) || 1
this.getType = this.getType || Number(localStorage.getItem('getType'))
this.handleCurrentChange(this.currentPage)
},
mounted () {
console.log(this.$props)
},
beforeUpdate () {
localStorage.setItem('pagination', this.currentPage)
localStorage.setItem('getType', this.getType)
},
beforeDestroy () {
// localStorage.clear()
localStorage.setItem('pagination', this.currentPage)
localStorage.setItem('getType', this.getType)
},
destroyed () {
localStorage.setItem('pagination', 1)
localStorage.setItem('getType', this.getType)
},
methods: {
handleSizeChange (val) {
this.pageSize = val
this.getPackData()
},
handleCurrentChange (val) {
this.currentPage = val
this.getData()
this.getPackData()
},
getPackData () { }
},
computed: {},
watch: {}
}
</script>
<style lang='scss' scoped>
.page {
margin-top: 60px;
height: 36px;
display: flex;
justify-content: flex-end;
align-items: center;
/deep/ .el-pagination.is-background .el-pager li {
color: #333 !important;
}
/deep/ .el-pagination.is-background .el-pager li:not(.disabled).active {
background-color: #e60012;
color: #fff !important;
}
/deep/ .el-icon.el-icon-arrow-left::before {
content: "上一页";
font-family: "MicrosoftYaHei";
font-size: 12px;
font-weight: normal;
font-stretch: normal;
letter-spacing: 1px;
color: #666;
}
/deep/ .el-pagination .btn-prev {
width: 80px;
}
/deep/ .el-pagination .btn-next {
width: 80px;
}
/deep/ .el-icon.el-icon-arrow-right::before {
content: "下一页";
font-family: "MicrosoftYaHei";
font-size: 12px;
font-weight: normal;
font-stretch: normal;
letter-spacing: 1px;
color: #666;
}
}
</style>

View File

@@ -12,9 +12,9 @@ axios.interceptors.request.use(config => {
) {
// 如果是登录和注册操作则不需要携带header里面的token
} else {
if (sessionStorage.token) {
if (sessionStorage.id) {
config.headers = {
Authorization: sessionStorage.token
Authorization: sessionStorage.id
}
}
}
@@ -37,23 +37,25 @@ axios.interceptors.response.use(
router.beforeEach((to, from, next) => {
if (to.meta.requireAuth) {
// 判断该路由是否需要登录权限
if (sessionStorage.token) {
if (sessionStorage.id) {
// 获取当前的token是否存在
console.log('token存在')
if (to.name !== 'application') {
next()
} else {
if (
sessionStorage.party_id !== 'null') {
next()
} else {
alert('请先成为党组织!')
next({
path: '/', // 将跳转的路由path作为参数登录成功后跳转到该路由
query: { redirect: to.fullPath }
})
}
}
next()
// if (to.name !== 'application') {
// next()
// } else {
// if (
// sessionStorage.party_id !== 'null') {
// next()
// } else {
// alert('请先成为党组织!')
// next({
// path: '/', // 将跳转的路由path作为参数登录成功后跳转到该路由
// query: { redirect: to.fullPath }
// })
// }
// }
} else {
alert('请先登录!')
next({

View File

@@ -5,6 +5,8 @@ import Router from 'vue-router'
import HeaderNav from './components/HeaderNav'
/** 尾部导航 */
import FooterNav from './components/FooterNav'
/** 分页器 */
import PagingDevice from './components/PagingDevice'
/** 首页 */
import HomePage from './views/home/HomePage'
@@ -55,13 +57,16 @@ export default new Router({
name: 'footerNav',
component: FooterNav
},
/** 分页器 */
{
path: '/pagingDevice',
name: 'pagingDevice',
component: PagingDevice
},
/** 信息查询 */
{
path: '/informationQuery',
name: 'informationQuery',
meta: {
requireAuth: true
},
component: InformationQuery
},
/** 修改密码 */

View File

@@ -14,25 +14,25 @@
</div>
<!-- 分类搜索 -->
<div class="select-box">
<select name="type" @change="scree()">
<template v-for="(list,index) in society_type">
<option :key="index" :value="index">{{list}}</option>
<select name="type" v-model="type_value" @change="scree()">
<option selected>全部</option>
<template v-for="(type,index) in types">
<option :key="index" :value="index">{{type}}</option>
</template>
</select>
<select name="time" v-model="reg_time0" @change="scree()">
<option value="登记时间" disabled style="display:none;">登记时间</option>
<option value="09-18">09-18</option>
<option value="09-19">09-19</option>
<select name="year" v-model="year_value" @change="scree()">
<option selected>全部</option>
<template v-for="(year,index) in years">
<option :key="index" :value="index">{{year}}</option>
</template>
</select>
<select name="year" v-model="reg_time1" @change="scree()">
<option value="年检年份" disabled style="display:none;">年检年份</option>
<option value="2017">2017</option>
<option value="2019">2019</option>
</select>
<select name="condition" v-model="status" @change="scree()">
<option value="年检情况" disabled style="display:none;">年检情况</option>
<option value="正常">正常</option>
<option value="异常">异常</option>
<select name="condition" v-model="year_status" @change="scree()">
<option selected>全部</option>
<option value="0">不合格</option>
<option value="1">合格</option>
</select>
</div>
<!-- 搜索记录 -->
@@ -76,8 +76,8 @@
<td>{{info.society_type}}</td>
<td>{{info.legal_person}}</td>
<td>{{info.reg_time}}</td>
<td v-if="info.status == '正常'" style="color:#2fd63f">正常</td>
<td v-if="info.status == '异常'" style="color:#e13232">异常</td>
<td v-if="info.status == '白名单'" style="color:#2fd63f">正常</td>
<td v-if="info.status == '黑名单'" style="color:#e13232">异常</td>
</tr>
</template>
<template v-if="searchValue.length > 0">
@@ -92,8 +92,8 @@
<td>{{info.society_type}}</td>
<td>{{info.legal_person}}</td>
<td>{{info.reg_time}}</td>
<td v-if="info.status == '正常'" style="color:#2fd63f">正常</td>
<td v-if="info.status == '异常'" style="color:#e13232">异常</td>
<td v-if="info.status == '白名单'" style="color:#2fd63f">正常</td>
<td v-if="info.status == '黑名单'" style="color:#e13232">异常</td>
</tr>
</template>
</table>
@@ -117,7 +117,7 @@ export default {
data() {
return {
index_num: 1,
text: ["全部", "黑名单", "信用良好名录"],
text: ["全部", "异常名录", "信用良好名录"],
sub: 0,
imgUrl: {
xa: require("../../static/img/xa.png")
@@ -125,10 +125,11 @@ export default {
searchVal: "",
searchValue: [],
record: [],
society_type: [],
reg_time0: [],
reg_time1: [],
status: [],
types: [],
years: '',
year_status: '全部',
type_value:'全部',
year_value:'全部',
bgData: [],
arr1: [],
arr0: [],
@@ -199,12 +200,14 @@ export default {
}
_this.bgData = res.data.data.data.info
_this.conversion = _this.bgData
})
// eslint-disable-next-line handle-callback-err
.catch(err => {
console.log(err)
})
},
/** 获取类型 */
getDataG() {
let _this = this
this.$http({
@@ -215,14 +218,15 @@ export default {
if (res.data.code !== 200) {
return;
}
console.log(res)
_this.society_type = res.data.data
_this.types = res.data.data.type
_this.years = res.data.data.year
})
// eslint-disable-next-line handle-callback-err
.catch(err => {
console.log(err)
})
},
/** 获取异常名单 */
getDataZ() {
let _this = this
this.$http({
@@ -234,6 +238,7 @@ export default {
}).then(res => {
if (res.data.data.code !== 200) {
alert('数据请求失败!')
return
}
_this.bgData = res.data.data.data.info
_this.conversion = _this.bgData
@@ -243,6 +248,7 @@ export default {
console.log(err)
})
},
/** 获取正常名单 */
getDataO() {
let _this = this
this.$http({
@@ -263,7 +269,9 @@ export default {
console.log(err)
})
},
scree() { }
scree() {
console.log(this.type_value,this.year_value,this.year_status)
}
},
created() {
this.getData()

View File

@@ -4,7 +4,8 @@
<!-- :style="{'background-image':'url('+imgUrl.login+')'}" -->
<div class="box">
<div class="box-o">
<h3> </h3>
<!-- <h3> </h3> -->
<h3> </h3>
<div class="input">
<input type="text" v-model="account" name="account" placeholder="组织名称" />
<img class="one" :src="imgUrl.yh" alt />
@@ -56,12 +57,12 @@ export default {
this.$message.success('登陆成功')
this.$router.push('/')
// 全局存储token
window.sessionStorage['token'] = res.data.data.data.id
window.sessionStorage['id'] = res.data.data.data.id
window.sessionStorage['name'] = res.data.data.data.name
window.sessionStorage['party_id'] = res.data.data.data.party_id
window.sessionStorage['party_name'] = res.data.data.data.party_name
} else {
alert('登入失败!')
alert(res.data.data.msg)
}
})
// eslint-disable-next-line handle-callback-err
@@ -199,7 +200,9 @@ export default {
}
h3 {
font-family: "HanWangKaiBold-Gb5";
// font-family: "HanWangKaiBold-Gb5";
font-family: "MicrosoftYaHei";
font-size: 26px;
font-weight: normal;
font-stretch: normal;

View File

@@ -3,11 +3,7 @@
<div class="box">
<div class="boxx">
<h3> </h3>
<form
enctype="multipart/form-data"
action="http://chaoyang.yulongcode.com/api/v1/login/reg"
method="post"
>
<form enctype="multipart/form-data" action method onsubmit="return false">
<!-- 请输入组织名称 pattern
oninvalid="setCustomValidity('不能为空')"
oninput="setCustomValidity('')"
@@ -23,6 +19,7 @@
:type="reg.data_type"
:placeholder="'请输入'+ reg.notes"
:name="reg.name"
v-model="obj[reg.name]"
required
/>
<span v-if="index === 0" class="span1">组织名称将用于用户登录</span>
@@ -148,7 +145,7 @@
<span class="span3">管理平台协议</span>
</span>
</label>-->
<label class="s">
<label class="s" @click="submit()">
<input type="submit" class="sub" value="立即注册" />
</label>
</form>
@@ -168,12 +165,44 @@ export default {
yy: require('../../static/img/yy.png')
},
fieldsName: [],
reg: []
reg: [],
arr: [],
obj: {}
}
},
computed: {},
watch: {},
methods: {
submit () {
for (var key of Object.keys(this.obj)) {
if (this.obj[key] === '') {
alert('以上内容不可为空!')
return
}
}
let _this = this
this.$http({
method: 'post',
url: 'v1/login/reg',
data: {
object: _this.obj
}
}).then(res => {
console.log(res)
if (res.data.code === 200) {
alert(res.data.data.msg)
_this.$router.push({
name: 'login'
})
} else {
_this.$message.error('请求数据有问题!')
}
})
// eslint-disable-next-line handle-callback-err
.catch(err => {
console.log(err)
})
},
getData () {
let _this = this
this.$http({
@@ -183,6 +212,9 @@ export default {
}).then(res => {
if (res.data.code === 200) {
_this.reg = res.data
_this.reg.data.forEach(item => {
_this.obj[item.name] = ''
})
} else {
_this.$message.error('请求数据有问题!')
}

View File

@@ -285,7 +285,7 @@ export default {
) {
alert('以上内容不可为空!')
} else {
let sid = sessionStorage.token
let sid = sessionStorage.id
let _this = this
this.$http({
method: 'post',

View File

@@ -6,7 +6,7 @@
<div class="container">
<!-- 轮播图 -->
<div class="swiperone">
<div class="swiper-container swiper-one">
<div class="swiper-container swiper-one swiper-no-swiping">
<div class="swiper-wrapper">
<template v-for="(banner,index) in bgData.banner">
<div
@@ -19,11 +19,14 @@
</div>
</template>
</div>
<!-- 如果需要分页器 -->
<div class="swiper-pagination"></div>
<!-- 如果需要导航按钮 -->
<div class="swiper-button-prev swiper-button-white"></div>
<div class="swiper-button-next swiper-button-white"></div>
</div>
<!-- 如果需要导航按钮 -->
<div class="swiper-button-prev swiper-button-white"></div>
<div class="swiper-button-next swiper-button-white"></div>
</div>
<!-- 通知公告的box -->
<div class="right">
<!-- 通知公告 -->
@@ -178,7 +181,7 @@ import HeaderNav from '../../components/HeaderNav';
/* eslint-disable */
import FooterNav from "../../components/FooterNav";
import Swiper from 'swiper';
// import swiper from 'swiper/css/swiper.css'
export default {
components: {
HeaderNav,
@@ -215,11 +218,13 @@ export default {
autoplay: {
delay: 3000
},
pagination: '.swiper-pagination',
paginationClickable: true,
navigation: {
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev"
}
});
},
scrollFeeds: function (btn) {
@@ -281,6 +286,7 @@ export default {
<style lang='scss' scoped>
.swiper-wrapper {
height: auto !important;
cursor: pointer;
}
.more {
@@ -788,6 +794,9 @@ li {
}
}
.swiper-pagination {
}
.swiper-button-prev {
position: absolute;
top: 93%;

View File

@@ -1,5 +1,5 @@
<template>
<div class="wrapper">
<div class="wrapper" v-if="bgData">
<header-nav :index_num="index_num"></header-nav>
<div class="box">
<div class="left">
@@ -10,6 +10,7 @@
@click="collection(bgData.id)"
class="iconfont icon-changyongtubiao-mianxing-"
:class="coll ? 'colorTrue' : 'colorFalse'"
v-if="0"
></span>
</dt>
<dd>
@@ -102,7 +103,7 @@ export default {
})
},
collection(article_id) {
if (!sessionStorage.token) {
if (!sessionStorage.id) {
alert('请先登录~')
return;
}
@@ -150,11 +151,15 @@ export default {
}
},
created() {
this.id = this.$route.params.id
// this.id = this.$route.params.id
// let type = this.$route.params.type
// this.getData(this.id)
},
mounted() {
this.id = this.$route.params.id
let type = this.$route.params.type
this.getData(this.id)
},
mounted() { }
}
};
</script>
@@ -170,11 +175,11 @@ export default {
box-sizing: border-box;
display: flex;
justify-content: space-between;
align-items: center;
align-items: flex-start;
.left {
width: 840px;
height: 1283px;
height: auto;
background-color: #ffffff;
padding: 35px 30px 70px;
box-sizing: border-box;
@@ -243,7 +248,7 @@ export default {
margin: 38px auto 0px;
overflow: hidden;
width: 775px;
height: 550px;
height: auto;
font-family: "MicrosoftYaHei";
font-size: 18px;
font-weight: normal;

View File

@@ -25,11 +25,13 @@
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-size="pageSize"
:pager-count="5"
background
layout="prev, pager, next"
:total="totalCount"
></el-pagination>
</div>
</div>
<footer-nav class="footer"></footer-nav>
</div>
@@ -50,9 +52,9 @@ export default {
return {
moren: require('../../../static/img/default.jpg'),
index_num: 0,
pageSize: 1,
currentPage: 0,
totalCount: 1,
pageSize: 1,/** 每页的条数 */
currentPage: 1,/** 当前页数 */
totalCount: 1,/** 总页数 */
bgData: [],
getType: null
};
@@ -72,8 +74,7 @@ export default {
}).then(res => {
if (res.data.data.code === 200) {
_this.bgData = res.data.data.data
_this.totalCount = _this.bgData.allNum
_this.pageSize = _this.bgData.info.length
_this.totalCount = _this.bgData.allPage
} else {
_this.$message.error('请求数据有问题!')
}
@@ -84,7 +85,7 @@ export default {
})
},
handleSizeChange(val) {
this.pageNum = val;
this.pageSize = val;
this.getPackData();
},
handleCurrentChange(val) {
@@ -99,7 +100,7 @@ export default {
this.currentPage = Number(localStorage.getItem("pagination")) || 1;
this.getType = this.getType || Number(localStorage.getItem("getType"));
this.handleCurrentChange(this.currentPage);
this.getData()
},
beforeUpdate() {
localStorage.setItem('pagination', this.currentPage)
@@ -110,9 +111,9 @@ export default {
localStorage.setItem('pagination', this.currentPage)
localStorage.setItem('getType', this.getType)
},
mounted() { },
mounted() { },
destroyed() {
localStorage.setItem('pagination', this.currentPage)
localStorage.setItem('pagination', this.currentPage)
localStorage.setItem('getType', this.getType)
}
};
@@ -241,6 +242,7 @@ export default {
color: #666;
}
}
}
}
</style>

View File

@@ -1,17 +1,17 @@
<template>
<div class="w" :style="{height:num + 'px'}">
<div class="img-box">
<div class="img-box" v-if="is_value">
<img class="img" :src="imgUrl.tg" v-if="bgData.examine == 1" />
<img class="img" :src="imgUrl.btg" v-if="bgData.examine == 2" />
<img class="img" :src="imgUrl.dsh" v-if="bgData.examine == 0" />
</div>
<form>
<form v-if="is_value" action method enctype="multipart/form-data" onsubmit="return false">
<div class="items" v-if="!zhuangtai">
<h3>基本信息</h3>
<!-- start -->
<div class="item">
<label for>社会组织名称:</label>
<input class="input0" type="text" value />
<input class="input0" type="text" :value="name" disabled />
</div>
<!-- end -->
<!-- start -->
@@ -25,25 +25,45 @@
<!-- start -->
<div class="item">
<label for>流动党员数量:</label>
<input class="input0" type="text" disabled :value="bgData.flow_party_person" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.flow_party_person"
/>
</div>
<!-- end -->
<!-- start -->
<div class="item">
<label for>已有党员数量:</label>
<input class="input0" type="text" disabled :value="bgData.party_person" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.party_person"
/>
</div>
<!-- end -->
<!-- start -->
<div class="item">
<label for>从业人员总数:</label>
<input class="input0" type="text" :value="bgData.work_person" disabled />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.work_person"
/>
</div>
<!-- end -->
<!-- start -->
<div class="item">
<label for>党组织名称:</label>
<input class="input0" type="text" :value="bgData.party_name" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.party_name"
/>
</div>
<!-- end -->
<!-- start -->
@@ -51,15 +71,19 @@
<label for>是否建立党组织:</label>
<label class="label" for>
<template v-if="bgData.is_reg_party == 1">
<input type="radio" name="is_reg_party" checked disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="is_reg_party" disabled />&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="is_reg_party" disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="is_reg_party" :disabled="bgData.examine === 0" checked />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_reg_party"
disabled
:disabled="bgData.examine === 0"
/>&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="is_reg_party" :disabled="bgData.examine === 0" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_reg_party"
:disabled="bgData.examine === 0"
checked
/>&nbsp;&nbsp;
</template>
@@ -71,19 +95,19 @@
<label for>是否建立功能型党组织:</label>
<label class="label" for>
<template v-if="bgData.is_reg_fun_party == 1">
<input type="radio" name="is_reg_fun_party" checked disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" :disabled="bgData.examine === 0" name="is_reg_fun_party" checked />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
:disabled="bgData.examine === 0"
name="is_reg_fun_party"
disabled
/>&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="is_reg_fun_party" disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" :disabled="bgData.examine === 0" name="is_reg_fun_party" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_reg_fun_party"
disabled
:disabled="bgData.examine === 0"
checked
/>&nbsp;&nbsp;
</template>
@@ -93,19 +117,34 @@
<!-- start -->
<div class="item">
<label for>登记管理机关:</label>
<input class="input2" type="text" :value="bgData.reg_manage" disabled />
<input
class="input2"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.reg_manage"
/>
</div>
<!-- end -->
<!-- start -->
<div class="item">
<label for>业务主管单位:</label>
<input class="input2" type="text" :value="bgData.supervisor" disabled />
<input
class="input2"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.supervisor"
/>
</div>
<!-- end -->
<!-- start -->
<div class="item">
<label for>隶属的上一级党组织名称:</label>
<input class="input2" type="text" :value="bgData.party_pname" disabled />
<input
class="input2"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.party_pname"
/>
</div>
<!-- end -->
<div class="btn" @click="anNui()">下一页</div>
@@ -116,7 +155,12 @@
<!-- start -->
<div class="it">
<label for>姓名:</label>
<input class="input0" type="text" :value="bgData.sec_name" disabled />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.sec_name"
/>
</div>
<!-- end -->
<!-- start -->
@@ -124,15 +168,19 @@
<label for>性别:</label>
<label class="label" for>
<template v-if="bgData.sec_sex == 1">
<input type="radio" name="sec_sex" checked disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="sec_sex" disabled />&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="sec_sex" disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="sec_sex" :disabled="bgData.examine === 0" checked />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="sec_sex"
disabled
:disabled="bgData.examine === 0"
/>&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="sec_sex" :disabled="bgData.examine === 0" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="sec_sex"
:disabled="bgData.examine === 0"
checked
/>&nbsp;&nbsp;
</template>
@@ -142,19 +190,34 @@
<!-- start -->
<div class="it">
<label for>年龄:</label>
<input class="input0" type="text" :value="bgData.sec_age" disabled />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.sec_age"
/>
</div>
<!-- end -->
<!-- start -->
<div class="it">
<label for>行政职务:</label>
<input class="input0" type="text" :value="bgData.sec_job" disabled />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.sec_job"
/>
</div>
<!-- end -->
<!-- start -->
<div class="it">
<label for>近三年参加上级党组织培训次数:</label>
<input class="input0" type="text" disabled :value="bgData.sec_study" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.sec_study"
/>
</div>
<!-- end -->
</div>
@@ -163,7 +226,12 @@
<!-- start -->
<div class="it">
<label for>近三年发展党员数:</label>
<input class="input0" type="text" disabled :value="bgData.near_party_person" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.near_party_person"
/>
</div>
<!-- end -->
<!-- start -->
@@ -171,19 +239,19 @@
<label for>是否建立群团组织:</label>
<label class="label" for>
<template v-if="bgData.is_reg_group == 1">
<input type="radio" name="is_reg_group" checked disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="is_reg_group" :disabled="bgData.examine === 0" checked />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_reg_group"
disabled
:disabled="bgData.examine === 0"
/>&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="is_reg_group" disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="is_reg_group" :disabled="bgData.examine === 0" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_reg_group"
disabled
:disabled="bgData.examine === 0"
checked
/>&nbsp;&nbsp;
</template>
@@ -193,7 +261,12 @@
<!-- start -->
<div class="it">
<label for>专职党务工作者人数:</label>
<input class="input0" type="text" disabled :value="bgData.major_party_person" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.major_party_person"
/>
</div>
<!-- end -->
<!-- start -->
@@ -201,19 +274,24 @@
<label for>是否选派党建工作指导员:</label>
<label class="label" for>
<template v-if="bgData.is_choice_instructor == 1">
<input type="radio" name="is_choice_instructor" checked disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_choice_instructor"
disabled
:disabled="bgData.examine === 0"
checked
/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_choice_instructor"
:disabled="bgData.examine === 0"
/>&nbsp;&nbsp;
</template>
<template v-else>
<input type="radio" name="is_choice_instructor" disabled />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="is_choice_instructor" :disabled="bgData.examine === 0" />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input
type="radio"
name="is_choice_instructor"
disabled
:disabled="bgData.examine === 0"
checked
/>&nbsp;&nbsp;
</template>
@@ -223,18 +301,40 @@
<!-- start -->
<div class="it">
<label for>党组织年度活动经费(万元):</label>
<input class="input0" type="text" disabled :value="bgData.year_money" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.year_money"
/>
</div>
<!-- end -->
<!-- start -->
<div class="it">
<label for>党组织年度活动场所面积(平米):</label>
<input class="input0" type="text" disabled :value="bgData.active_year" />
<input
class="input0"
type="text"
:disabled="bgData.examine === 0"
:value="bgData.active_year"
/>
</div>
<!-- end -->
<!-- start -->
<div style="outline:none;display:flex;justify-content:center;margin-top:60px;">
<button type="submit" v-if="bgData.examine !== 0" @click="submit()">重新提交</button>
</div>
<!-- end -->
</div>
</div>
</form>
<div class="img-g" v-if="!is_value" @click="$jump('applyFor')">
<!-- <div class="img-bx">
<img :src="imgUrl.wjx" alt />
<span>申请成为党组织</span>
</div>-->
<img :src="imgUrl.apple" alt />
</div>
</div>
</template>
@@ -248,12 +348,16 @@ export default {
tg: require('../../../static/img/tg.png'),
btg: require('../../../static/img/btg.png'),
dsh: require('../../../static/img/dsh.png'),
xa: require('../../../static/img/xa.png')
xa: require('../../../static/img/xa.png'),
wjx: require('../../../static/img/wjx.png'),
apple: require('../../../static/img/apple.png')
},
state: 0,
zhuangtai: false,
num: 1050,
bgData: []
bgData: [],
is_value: Boolean,
name: ''
}
},
computed: {},
@@ -263,6 +367,9 @@ export default {
}
},
methods: {
submit () {
},
getData () {
let sid = sessionStorage.id
let _this = this
@@ -274,6 +381,11 @@ export default {
}
}).then(res => {
if (res.data.code === 200) {
if (res.data.data === null) {
_this.is_value = false
} else {
_this.is_value = true
}
_this.bgData = res.data.data
console.log(_this.bgData)
} else {
@@ -288,13 +400,14 @@ export default {
anNui () {
this.zhuangtai = !this.zhuangtai
this.num = 1073
this.num = 1200
},
sendMsgToParent () {
this.$emit('listenToChildExen', this.num)
}
},
created () {
this.name = sessionStorage.name
this.getData()
},
mounted () {
@@ -311,6 +424,45 @@ export default {
box-sizing: border-box;
position: relative;
.img-g {
width: 100%;
/*
display: flex;
justify-content: flex-end;
*/
cursor: pointer;
text-align: center;
/*
.img-bx {
width: 131px;
height: 27px;
background-image: linear-gradient(35deg, #f82747 0%, #fe5b2c 100%);
border-radius: 25px;
text-align: center;
line-height: 27px;
position: relative;
img {
width: 15px;
height: 15px;
position: absolute;
left: -5%;
top: 24%;
}
span {
font-family: "MicrosoftYaHei";
font-size: 14px;
font-weight: bold;
font-stretch: normal;
letter-spacing: 0px;
color: #fbfffb;
text-shadow: 2px 4px 7px rgba(175, 14, 39, 0.83);
}
}
*/
}
.items {
width: 100%;
@@ -453,6 +605,22 @@ export default {
}
}
button[type="submit"] {
width: 230px;
height: 63px;
background-color: #e60012;
border-radius: 5px;
outline: none;
border: 0;
font-family: "MicrosoftYaHei";
font-size: 26px;
font-weight: normal;
font-stretch: normal;
line-height: 63px;
letter-spacing: 0px;
color: #ffffff;
}
.it {
width: 100%;
display: flex;

View File

@@ -6,8 +6,8 @@
<div class="top">
<img :src="imgUrl.xlb" alt />
<div>
<span>{{bgValue.announcement.name + bgValue.announcement.pro_content}}</span>
<time>{{bgValue.announcement.protime}}</time>
<span>{{bgValue.announcement.name + bgValue.announcement.pro_content}}</span>
<time>{{bgValue.announcement.protime}}</time>
</div>
</div>
<!-- 表格 -->
@@ -51,7 +51,7 @@
<option :key="index" :value="index">{{type}}</option>
</template>
</select>
<select class="two" name="type">
<select class="two" name="type">
<template v-for="(status,index) in bgValue.status">
<option :key="index" :value="index">{{status}}</option>
</template>
@@ -135,7 +135,7 @@ export default {
props: {},
data () {
return {
num: 1165,
num: 1240,
pageSize: 1,
currentPage: 1,
totalCount: 1,
@@ -165,6 +165,7 @@ export default {
}).then(res => {
if (res.data.code === 200) {
_this.bgValue = res.data.data
console.log(_this.bgValue)
} else {
_this.$message.error('请求数据有问题!')
}
@@ -180,14 +181,13 @@ export default {
method: 'get',
url: 'v1/project/list',
params: {
page: _this.currentPage
page: _this.currentPage,
num: 4
}
}).then(res => {
if (res.data.code === 200) {
_this.bgData = res.data.data.data
_this.totalCount = _this.bgData.allNum
_this.pageSize = _this.bgData.info.length
console.log(_this.bgData)
_this.totalCount = _this.bgData.allPage
} else {
_this.$message.error('请求数据有问题!')
}
@@ -267,7 +267,7 @@ export default {
this.$emit('listenToChildExen', this.num)
},
handleSizeChange (val) {
this.pageNum = val
this.pageSize = val
this.getPackData()
},
handleCurrentChange (val) {
@@ -294,7 +294,6 @@ export default {
this.currentPage = Number(localStorage.getItem('pagination')) || 1
this.handleCurrentChange(this.currentPage)
this.getDataOne()
this.getDataTwo()
},
mounted () {
this.sendMsgToParent()
@@ -305,7 +304,7 @@ export default {
<style lang='scss' scoped>
.wra {
width: 934px;
height: auto;
height: 1240px;
background-color: #ffffff;
padding: 35px 30px 100px;
box-sizing: border-box;

View File

@@ -39,9 +39,11 @@ export default {
oBtn () {
if (this.password_new !== this.password_re) {
alert('新密码不相符!')
return
}
if (this.password_old === '' || this.password_new === '' || this.password_re === '') {
alert('不可为空!')
return
}
let _this = this
this.$http({
@@ -55,6 +57,9 @@ export default {
}
}).then(res => {
alert(res.data.data.msg)
_this.$router.push({
name: 'login'
})
})
// eslint-disable-next-line handle-callback-err
.catch(err => {
@@ -66,7 +71,7 @@ export default {
}
},
created () {
this.id = sessionStorage.token
this.id = sessionStorage.id
},
mounted () {
this.sendMsgToParent()

View File

@@ -13,11 +13,11 @@
<div class="right">
<apply v-if="sub == 0"
@listenToChildExen="showMsgFromChild"></apply>
<collection v-if="sub == 1"
<collection v-if="sub == 3"
@listenToChildExen="showMsgFromChild"></collection>
<declare v-if="sub == 2"
<declare v-if="sub == 1"
@listenToChildExen="showMsgFromChild"></declare>
<modify v-if="sub == 3"
<modify v-if="sub == 2"
@listenToChildExen="showMsgFromChild"></modify>
</div>
</div>
@@ -48,7 +48,8 @@ export default {
data() {
return {
index_num: 3,
text: ["党组织申请", "我的收藏", "项目申报", "个人中心-修改密码"],
// text: ["党组织申请", "我的收藏", "项目申报", "个人中心-修改密码"],
text: ["党组织申请", "项目申报", "个人中心-修改密码"],
sub: 0,
heightVal: 1050
};

View File

@@ -179,18 +179,12 @@
<input class="i-i" type="text" name="prespo" v-model="prespo" value required />
</div>
</aside>
<aside>
<div>
<label>通讯地址:</label>
<input class="i-i" type="text" name="respoadd" v-model="respoadd" value required />
</div>
</aside>
<!-- end -->
<!-- start -->
<aside>
<div>
<label>项目名称:</label>
<input type="text" name="name" v-model="name" value required />
<label>通讯地址:</label>
<input type="text" name="respoadd" v-model="respoadd" value required />
</div>
<div>
<label>邮政编码:</label>
@@ -343,12 +337,15 @@
</div>
<div class="xxx">
<h5>项目主责单位意见</h5>
<div class="btnn">
<!-- @change="getFile($event)" -->
<label>
上传文件
<input type="file" @change="getFile($event)" v-show="false" name="file" />
</label>
<div class="xxxx">
<div class="btnn">
<!-- @change="getFile($event)" -->
<label>
上传文件
<input type="file" @change="getFile($event)" v-show="false" name="file" />
</label>
</div>
<span for>只能上传一张图片</span>
</div>
</div>
</div>
@@ -356,6 +353,7 @@
<img class="img-img" :src="file" alt />
</template>
<div class="ll">
<button type="button" @click="btn(0)">上一页</button>
<button type="button" @click="submit(0)">保存</button>
<button type="submit" @click="submit(1)">提交</button>
</div>
@@ -445,14 +443,39 @@ export default {
computed: {},
watch: {},
methods: {
/** 申报单位承诺 */
thf() {
this.thff = !this.thff;
},
/** 下一步 */
btn(index) {
let s = this.sub;
s = index;
this.sub = s;
if (s == 0) {
this.sub = s
}
this.sub = s
// if (s == 1) {
// if (this.name == '' || this.company == '' || this.tid == '' ||
// this.rid == '' || this.first_level == '' || this.secondary == '' ||
// this.fieldeara == '' || this.attribute == '' || this.aterm == '' ||
// this.fterm == '' || this.postaladdress == '' || this.postalcode == '' ||
// this.pmail == '' || this.plegal == '' || this.plcode == '' ||
// this.pname == '' || this.poster == '' || this.poffice_tel == '' ||
// this.aphone == '' || this.cname == '' || this.cpost == '' || this.coffice_tel == '' ||
// this.cphone == ''
// ) {
// alert('以上内容不可为空!')
// return
// } else {
// this.sub = s
// }
// }
},
/** 上传文件 */
getFile(event) {
let file = event.target.files[0];
let param = new FormData(); //创建form对象
@@ -466,8 +489,34 @@ export default {
let url = response.data.data.url
this.file = url
})
console.log(this.file);
},
/** 保存和提交 */
submit(index) {
if (this.sub == 1) {
if (this.prespo == '' || this.respoadd == '' || this.respopcode == '' ||
this.respomail == '' || this.respopname == '' ||
this.respopost == '' || this.respoophone == '' || this.respoptel == '' ||
this.respocname == '' || this.respocpost == '' || this.respocophone == '' ||
this.respoctel == '' || this.decldes == '' || this.prodes == '' ||
this.prodemo == '' || this.prodemojc == '' || this.prodemotj == '' ||
this.prodemojd == '' || this.prodemoxg == '' || this.prodemofg == '' ||
this.prodemotwo == '' || this.funds == ''
) {
alert('以上内容不可为空!')
return
} else if (this.thff == false) {
alert('请同意:申报单位承诺')
return
} else if (this.file == '') {
alert('未上传文件!')
return
}
} else {
alert('数据出错!')
return
}
let s = this.subStatus;
s = index;
this.subStatus = s
@@ -528,12 +577,11 @@ export default {
proimages: _this.proimages
}
}).then(res => {
console.log(res)
if (res.data.code === 200) {
alert(res.data.message)
alert(res.data.data.msg)
_this.file = ''
} else {
_this.$message.error('请求数据有问题!')
alert(res.data.message)
}
})
// eslint-disable-next-line handle-callback-err
@@ -541,6 +589,7 @@ export default {
console.log(err)
})
},
/** 获取下拉框的数据 */
getData() {
let _this = this
this.$http({
@@ -559,17 +608,49 @@ export default {
.catch(err => {
console.log(err)
})
},
/** 判断是否有权限进行项目申报 */
status() {
let id = sessionStorage.id
let _this = this
this.$http({
method: 'post',
url: 'v1/society/get-status',
data: { id: id }
}).then(res => {
if (res.data.code === 200) {
if (res.data.data.status === 0) {
alert('您当前的社会状态为:黑名单!')
_this.$router.push({
name: 'project'
})
} else if (res.data.data.status === 3) {
alert('您当前的社会状态为:待审核!')
_this.$router.push({
name: 'project'
})
} else {
_this.getData()
}
} else {
_this.$message.error('请求数据有问题!')
}
})
// eslint-disable-next-line handle-callback-err
.catch(err => {
console.log(err)
})
}
},
created() {
this.getData()
},
mounted() { }
created() { },
mounted() {
this.status()
}
};
</script>
<style lang='scss' scoped>
.img-img{
.img-img {
margin-top: 25px;
width: 150px;
height: 250px;
@@ -661,6 +742,25 @@ export default {
}
}
.xxxx {
display: flex;
align-items: center;
justify-content: flex-start;
span {
display: inline-block;
height: 32px;
line-height: 32px;
text-align: center;
margin-left: 25px;
font-family: "MicrosoftYaHei";
font-size: 16px;
font-weight: normal;
font-stretch: normal;
letter-spacing: 0px;
color: #000;
}
}
.btnn {
cursor: pointer;
width: 96px;

View File

@@ -5,7 +5,7 @@
<!-- 公告 -->
<div class="top">
<img :src="imgUrl.xlb" alt />
<div>
<div v-if="bgValue.announcement">
<span>{{bgValue.announcement.name + bgValue.announcement.pro_content}}</span>
<time>{{bgValue.announcement.protime}}</time>
</div>
@@ -43,21 +43,33 @@
</div>
<!-- 下拉框 -->
<div class="select">
<select class="one" name="date">
<div class="block">
<el-date-picker
v-model="value_date"
type="daterange"
range-separator=""
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</div>
<!-- <select class="one" name="date">
<option value>2017/10/14 2017/10/15</option>
<option value>2017/10/14 2017/10/15</option>
</select>
<select class="two" name="type">
</select>-->
<select class="two" v-model="type_value" name="type">
<option>全部</option>
<template v-for="(type,index) in bgValue.type">
<option :key="index" :value="index">{{type}}</option>
</template>
</select>
<select class="two" name="type">
<select class="two" v-model="status_value" name="status">
<option>全部</option>
<template v-for="(status,index) in bgValue.status">
<option :key="index" :value="index">{{status}}</option>
</template>
</select>
<select class="three" name="area">
<select class="three" v-model="area_value" name="area">
<option>全部</option>
<template v-for="(area,index) in bgValue.area">
<option :key="index" :value="index">{{area}}</option>
</template>
@@ -117,7 +129,7 @@
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-size="pageSize"
:pager-count="7"
:pager-count="5"
background
layout="prev, pager, next"
:total="totalCount"
@@ -157,12 +169,17 @@ export default {
text: ["全部"],
sub: 0,
bgData: [],
bgValue: []
bgValue: [],
type_value: '全部',
status_value: '全部',
area_value: '全部',
value_date: ''
};
},
computed: {},
watch: {},
methods: {
/** 获取下拉框数据 */
getDataOne() {
let _this = this
this.$http({
@@ -183,20 +200,20 @@ export default {
})
},
/** 获取项目列表 */
getDataTwo() {
let _this = this
this.$http({
method: 'get',
url: 'v1/project/list',
params: {
page: _this.currentPage
page: _this.currentPage,
num: 6
}
}).then(res => {
if (res.data.code === 200) {
_this.bgData = res.data.data.data
_this.totalCount = _this.bgData.allNum
_this.pageSize = _this.bgData.info.length
console.log(_this.bgData)
_this.totalCount = _this.bgData.allPage
} else {
_this.$message.error('请求数据有问题!')
}
@@ -274,7 +291,7 @@ export default {
*/
},
handleSizeChange(val) {
this.pageNum = val;
this.pageSize = val;
this.getPackData();
},
handleCurrentChange(val) {
@@ -298,10 +315,16 @@ export default {
getPackData() { }
},
created() {
this.currentPage = Number(localStorage.getItem("pagination")) || 1;
this.currentPage = Number(localStorage.getItem("page")) || 1;
this.handleCurrentChange(this.currentPage);
this.getDataOne()
this.getDataTwo()
},
beforeUpdate() {
localStorage.setItem('page', this.currentPage)
},
beforeDestroy() {
// localStorage.clear()
localStorage.setItem('page',1)
},
mounted() { }
};
@@ -533,6 +556,43 @@ export default {
margin-top: 50px;
margin-bottom: 50px;
.block {
/deep/.el-range-editor.el-input__inner {
width: 325px;
background: url("../../../static/img/xa.png") 280px center no-repeat;
background-color: #f9f8f8;
}
/deep/.el-date-editor .el-range-input {
background-color: #f9f8f8;
font-family: "MicrosoftYaHei";
font-size: 18px;
font-weight: normal;
font-stretch: normal;
line-height: 33px;
letter-spacing: 0px;
color: #666666;
}
/deep/.el-input__inner {
border: 1px solid #c7c7c7;
}
/deep/.el-date-editor .el-range-separator {
font-family: "MicrosoftYaHei";
font-size: 18px;
font-weight: normal;
font-stretch: normal;
line-height: 33px;
letter-spacing: 0px;
color: #666666;
}
/deep/ .el-input__icon {
width: 0px;
}
}
.one {
padding-left: 30px;
box-sizing: border-box;

BIN
static/img/apple.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 694 B

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 719 B

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.4 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 B

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 712 B

After

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 644 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 303 KiB

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 470 KiB

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 B

After

Width:  |  Height:  |  Size: 367 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 547 KiB

After

Width:  |  Height:  |  Size: 220 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 454 KiB

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 565 KiB

After

Width:  |  Height:  |  Size: 157 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 412 B

After

Width:  |  Height:  |  Size: 329 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 327 B

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 591 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 768 B

After

Width:  |  Height:  |  Size: 489 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 B

After

Width:  |  Height:  |  Size: 197 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 581 B

After

Width:  |  Height:  |  Size: 449 B

View File

@@ -68,34 +68,6 @@ let tool = {
}
})
return [...map.values()]
},
classifier: function (array, val) {
let map = {}
let dest = []
let len = array.length
for (let i = 0; i < len; i++) {
let ai = array[i]
if (!map[ai.val]) {
dest.push({
val: ai.val,
data: [ai]
})
map[ai.val] = ai
} else {
// eslint-disable-next-line camelcase
let dest_len = dest.length
// eslint-disable-next-line camelcase
for (let j = 0; j < dest_len; j++) {
let dj = dest[j]
if (dj.val === ai.val) {
dj.data.push(ai)
break
}
}
}
}
return dest
}
}