Browse Source

可视化党员信息样式调整

feature
jiangyy 3 years ago
parent
commit
5ca0a953c5
  1. 286
      src/views/modules/visual/communityParty/crateForm.vue
  2. 306
      src/views/modules/visual/communityParty/party.vue

286
src/views/modules/visual/communityParty/crateForm.vue

@ -1,121 +1,113 @@
<template> <template>
<div class="dialog-h-content scroll-h pd0">
<el-form label-width="120px" :model="form" :inline="true" <div class="m-pop">
:disabled="disabled" :rules="rules" ref="ruleForm" <div class="wrap">
class="form-wr"> <cpt-card>
<div class="flex-div"> <div class="title">
<el-form-item label="所属党组织" prop="sszb" class="wd50"> <img src="@/assets/img/shuju/title-tip.png" />
<el-cascader <span>党员信息</span>
v-model="form.sszb" </div>
:options="partyList"
:props="partyProps" <div class="btn-close"
clearable @click="handleCancle">
class="input-width" <img src="@/assets/img/shuju/people/close.png" />
@change="handlePartyChange"></el-cascader> </div>
</el-form-item> <div class="m-top">
<el-form-item label="党员中心户" prop="isDyzxh" class="wd50">
<el-radio-group v-model="form.isDyzxh"> <div class="m-info-left">
<el-radio label="1"></el-radio> <div class="m-info">
<el-radio label="0"></el-radio> <div class="info-prop">
</el-radio-group> <span>所属党组织</span>
</el-form-item> <span>{{ form.orgName }}</span>
</div> </div>
<div class="flex-div"> <div class="info-prop">
<el-form-item label="姓名" prop="name" class="wd50"> <span>姓名</span>
<el-input v-model="form.name" placeholder="请输入" :disabled="disabled" class="input-width" clearable></el-input> <span>{{ form.name }}</span>
</el-form-item> </div>
<el-form-item label="免学习" prop="isMxx" class="wd50"> <div class="info-prop">
<el-radio-group v-model="form.isMxx"> <span>手机号</span>
<el-radio label="1"></el-radio> <span>{{ form.mobile }}</span>
<el-radio label="0"></el-radio> </div>
</el-radio-group> <div class="info-prop">
</el-form-item> <span>身份证</span>
</div> <span>{{ form.idCard }}</span>
<div class="flex-div"> </div>
<el-form-item label="手机号" prop="mobile" class="wd50"> <div class="info-prop">
<el-input v-model="form.mobile" placeholder="请输入" :disabled="disabled" class="input-width" clearable /> <span>地址</span>
</el-form-item> <span>{{ form.address|| "--" }}</span>
<el-form-item label="职务" prop="partyZw" class="wd50"> </div>
<el-select v-model="form.partyZw" filterable :disabled="disabled" placeholder="请选择" class="input-width" clearable> <div class="info-prop">
<el-option <span>流动党员</span>
v-for="item in zwList" <span>{{ form.isLd==='1'?'是':'否' }}</span>
:key="item.value" </div>
:label="item.label"
:value="item.value"> <div class="info-prop">
</el-option> <span>备注</span>
</el-select> <span>{{ form.remark || "--" }}</span>
</el-form-item> </div>
</div> </div>
<div class="flex-div"> </div>
<el-form-item label="身份证" prop="idCard" class="wd50"> <div class="m-info-right">
<el-input v-model="form.idCard" placeholder="请输入" :disabled="disabled" <div class="m-info">
class="input-width" clearable @blur="handleValidBlur" /> <div class="info-prop">
</el-form-item> <span>党员中心户</span>
<el-form-item label="文化程度" prop="culture" class="wd50"> <span>{{ form.isDyzxh==='1'?'是':'否' }}</span>
<el-select v-model="form.culture" filterable :disabled="disabled" placeholder="请选择" class="input-width" clearable> </div>
<el-option <div class="info-prop">
v-for="item in eduList" <span>免学习</span>
:key="item.value" <span>{{ form.isMxx==='1'?'是':'否' }}</span>
:label="item.label" </div>
:value="item.value">
</el-option> <div class="info-prop">
</el-select> <span>职务</span>
</el-form-item> <span>{{ form.postName|| "--" }}</span>
</div> </div>
<div class="flex-div">
<el-form-item label="地址" prop="address" class="wd50"> <div class="info-prop">
<el-input v-model="form.address" placeholder="请输入" :disabled="disabled || isAuto" class="input-width" clearable></el-input> <span>文化程度</span>
</el-form-item> <span>{{ form.cultureName || "--" }}</span>
<el-form-item label="入党时间" prop="rdsj" class="wd50"> </div>
<el-date-picker <div class="info-prop">
v-model="form.rdsj" <span>入党时间</span>
:disabled="disabled" <span>{{ form.rdsj || "--" }}</span>
type="date" </div>
class="input-width" <div class="info-prop">
clearable <span>党员流动号</span>
placeholder="选择日期" <span>{{ form.ldzh || "--" }}</span>
format="yyyy 年 MM 月 dd 日" </div>
value-format="yyyy-MM-dd">
</el-date-picker> </div>
</el-form-item> </div>
</div>
<div class="flex-div"> </div>
<el-form-item label="流动党员" prop="isLd" class="wd50">
<el-radio-group v-model="form.isLd" class="input-width"> <div class="m-btn">
<el-radio label="1"></el-radio> <div style="margin-top: 20px; text-align: center;">
<el-radio label="0"></el-radio> <el-button size="small"
</el-radio-group> :disabled="false"
</el-form-item> @click="handleCancle">取消</el-button>
<el-form-item label="流动党员号" prop="ldzh" class="wd50"> <el-button v-if="form.icResiUser != null && form.icResiUser != ''"
<el-input v-model="form.ldzh" placeholder="请输入" :disabled="disabled" class="input-width" clearable></el-input> type="primary"
</el-form-item> :disabled="false"
</div> size="small"
<el-form-item label="备注" prop="remark"> @click="jump(form.icResiUser)">查看更多</el-button>
<el-input v-model="form.remark" :autosize="{ minRows: 4, maxRows: 10}" :disabled="disabled" type="textarea" clearable class="input-width-textarea" placeholder="请输入内容"></el-input>
</el-form-item>
<div >
<div style="margin-top: 20px; text-align: center;">
<el-button size="small" :disabled="false" @click="handleCancle">取消</el-button>
<el-button
v-if="form.icResiUser != null && form.icResiUser != ''"
type="primary"
:disabled="false"
size="small"
@click="jump(form.icResiUser)">查看更多</el-button>
</div> </div>
</div> </div>
</el-form> </cpt-card>
</div>
</div> </div>
</template> </template>
<script> <script>
import { isCard, isMobile } from '@/utils/validate' import { isCard, isMobile } from '@/utils/validate'
import { computedCard } from '@/utils/index' import { computedCard } from '@/utils/index'
import cptCard from "@/views/modules/visual/cpts/card";
export default { export default {
components: { components: {
cptCard
}, },
props: { props: {
partyList: { partyList: {
@ -124,14 +116,14 @@ export default {
}, },
info: { info: {
type: Object, type: Object,
default: () => {} default: () => { }
}, },
disabled: { disabled: {
type: Boolean, type: Boolean,
default: false default: false
} }
}, },
data() { data () {
let checkMObile = (rule, value, callback) => { let checkMObile = (rule, value, callback) => {
if (value === '') { if (value === '') {
callback(new Error('请输入手机号')) callback(new Error('请输入手机号'))
@ -208,7 +200,7 @@ export default {
}, },
watch: { watch: {
info: { info: {
handler(val) { handler (val) {
if (Object.keys(val).length > 0) { if (Object.keys(val).length > 0) {
this.form = { ...val } this.form = { ...val }
if (val.icResiUserId || val.icResiUser) this.isAuto = true if (val.icResiUserId || val.icResiUser) this.isAuto = true
@ -222,36 +214,32 @@ export default {
immediate: true immediate: true
} }
}, },
created() { created () {
this.getEduList() this.getEduList()
console.log('partyList', this.partyList) console.log('partyList', this.partyList)
}, },
mounted() { mounted () {
const w = document.getElementsByClassName('dialog-h-content')[0] // const w = document.getElementsByClassName('dialog-h-content')[0]
this.formItemWd = w.clientWidth + 'px' // this.formItemWd = w.clientWidth + 'px'
}, },
destroyed() { destroyed () {
// this.$refs['ruleForm'].resetFields() // this.$refs['ruleForm'].resetFields()
}, },
methods: { methods: {
handleCancle() {
this.$refs['ruleForm'].resetFields()
handleCancle () {
// this.$refs['ruleForm'].resetFields()
this.$emit('cancle') this.$emit('cancle')
}, },
handlePartyChange(val) {
console.log('val------pp', val) handleValidBlur (n) {
// if (val.length > 0) {
// const i = val.length - 1
// this.form.sszb = val[i]
// } else this.form.sszb = ''
},
handleValidBlur(n) {
if (!isCard(this.form.idCard)) return if (!isCard(this.form.idCard)) return
const { age } = computedCard(this.form.idCard) const { age } = computedCard(this.form.idCard)
this.form.isMxx = age >= 70 ? '1' : '0' this.form.isMxx = age >= 70 ? '1' : '0'
this.validateResi() this.validateResi()
}, },
async getEduList() { async getEduList () {
await this.$http await this.$http
.post('/sys/dict/data/education') .post('/sys/dict/data/education')
.then(({ data: res }) => { .then(({ data: res }) => {
@ -259,14 +247,14 @@ export default {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} else { } else {
this.eduList = res.data this.eduList = res.data
} }
}) })
.catch(err => { .catch(err => {
console.log('err', err) console.log('err', err)
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
async validateResi() { async validateResi () {
const params = { const params = {
idCard: this.form.idCard, idCard: this.form.idCard,
agencyId: this.$store.state.user.agencyId agencyId: this.$store.state.user.agencyId
@ -285,15 +273,15 @@ export default {
this.form.address = '' this.form.address = ''
this.isAuto = false this.isAuto = false
} }
} }
}) })
.catch(err => { .catch(err => {
console.log('err', err) console.log('err', err)
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
hadnleSubmitbase() { hadnleSubmitbase () {
this.$refs['ruleForm'].validate((valid) => { this.$refs['ruleForm'].validate((valid) => {
if (valid) { if (valid) {
if (Object.keys(this.info).length > 0) this.editBase() if (Object.keys(this.info).length > 0) this.editBase()
@ -304,7 +292,7 @@ export default {
} }
}); });
}, },
handleSavePoints(data) { handleSavePoints (data) {
const _data = { ...data } const _data = { ...data }
const params = { const params = {
@ -316,10 +304,10 @@ export default {
} }
this.savePoints(params) this.savePoints(params)
}, },
async jump(icResiUserId) { async jump (icResiUserId) {
this.$emit('saveBase', icResiUserId) this.$emit('saveBase', icResiUserId)
}, },
async saveBase() { async saveBase () {
const params = { const params = {
...this.form ...this.form
} }
@ -332,15 +320,15 @@ export default {
this.$message.success('保存成功') this.$message.success('保存成功')
this.partymenberid = res.data this.partymenberid = res.data
this.$emit('saveBase', true) this.$emit('saveBase', true)
} }
}) })
.catch(err => { .catch(err => {
console.log('err', err) console.log('err', err)
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
async editBase() { async editBase () {
const params = { const params = {
...this.form ...this.form
} }
@ -353,15 +341,15 @@ export default {
this.$message.success('保存成功') this.$message.success('保存成功')
this.partymenberid = res.data this.partymenberid = res.data
this.$emit('saveBase', true) this.$emit('saveBase', true)
} }
}) })
.catch(err => { .catch(err => {
console.log('err', err) console.log('err', err)
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
async savePoints(form) { async savePoints (form) {
const params = { const params = {
...form, ...form,
partyMemberId: this.partymenberid partyMemberId: this.partymenberid
@ -376,15 +364,15 @@ export default {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} else { } else {
this.$message.success('保存成功') this.$message.success('保存成功')
} }
}) })
.catch(err => { .catch(err => {
console.log('err', err) console.log('err', err)
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
async saveRecord(form) { async saveRecord (form) {
const params = { const params = {
...form, ...form,
partyMemberId: this.partymenberid partyMemberId: this.partymenberid
@ -396,8 +384,8 @@ export default {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} else { } else {
this.$message.success('保存成功') this.$message.success('保存成功')
} }
}) })
.catch(err => { .catch(err => {
console.log('err', err) console.log('err', err)
@ -428,4 +416,10 @@ export default {
.pd0 { .pd0 {
padding: 0 !important; padding: 0 !important;
} }
</style> </style>
<style
lang="scss"
src="@/assets/scss/modules/visual/incident-info.scss"
scoped
></style>

306
src/views/modules/visual/communityParty/party.vue

@ -2,7 +2,8 @@
<div class="warning-box"> <div class="warning-box">
<cpt-card :min-full-screen="true"> <cpt-card :min-full-screen="true">
<div class="card-title"> <div class="card-title">
<img class="title-icon" src="../../../../assets/img/shuju/title-tip.png" /> <img class="title-icon"
src="../../../../assets/img/shuju/title-tip.png" />
<div class="title-label"> <div class="title-label">
党员信息统计&nbsp;&nbsp; 党员信息统计&nbsp;&nbsp;
<!-- <el-cascader <!-- <el-cascader
@ -13,18 +14,18 @@
:getCheckedNodes="getCheckedNodes" :getCheckedNodes="getCheckedNodes"
clearable @change="handleCascader"> clearable @change="handleCascader">
</el-cascader> --> </el-cascader> -->
<el-cascader <el-cascader v-model="partyOrgs"
v-model="partyOrgs" :options="partyOrgList"
:options="partyOrgList" :props="{
:props="{
label: 'partyOrgName', label: 'partyOrgName',
value: 'id', value: 'id',
checkStrictly: true checkStrictly: true
}" }"
:show-all-levels="false" :show-all-levels="false"
clearable @change="handlePartyCascader"> clearable
@change="handlePartyCascader">
</el-cascader> </el-cascader>
</div> </div>
</div> </div>
<div class="card-echart"> <div class="card-echart">
<div class="card-left"> <div class="card-left">
@ -33,14 +34,17 @@
<div class="echart-wr"> <div class="echart-wr">
<!-- <div class="echart-cicle"></div> --> <!-- <div class="echart-cicle"></div> -->
<screen-echarts-frame class="echart-org" <screen-echarts-frame class="echart-org"
@myChartMethod="pieInitOk" @myChartMethod="pieInitOk"
ref="ageChart"></screen-echarts-frame> ref="ageChart"></screen-echarts-frame>
<!-- <div id="echartOrg" class="echart-org"></div> --> <!-- <div id="echartOrg" class="echart-org"></div> -->
</div> </div>
<div class="echarts-tips echarts-tips-wd50"> <div class="echarts-tips echarts-tips-wd50">
<div class="tips-lists"> <div class="tips-lists">
<div v-for="(item, index) in ageItem" :key="index" class="tips-items"> <div v-for="(item, index) in ageItem"
<div class="tips-items-title" :class="'tips-items-title' + item.code"> :key="index"
class="tips-items">
<div class="tips-items-title"
:class="'tips-items-title' + item.code">
{{ item.name }} {{ item.name }}
</div> </div>
<div class="tips-items-num"> <div class="tips-items-num">
@ -48,34 +52,33 @@
<div class="tips-item-has">{{ item.radio }}</div> <div class="tips-item-has">{{ item.radio }}</div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="ecahrts-button"> <div class="ecahrts-button">
<el-button type="warning" size="small" @click="handleExport('age')">导出</el-button> <el-button type="warning"
size="small"
@click="handleExport('age')">导出</el-button>
</div> </div>
<div class="warning-box-bottom"> <div class="warning-box-bottom">
<screen-table <screen-table :headerList="headerList"
:headerList="headerList" :tableData="ageList"
:tableData="ageList" :headerStyle="headerStyle"
:headerStyle="headerStyle" :tableContentStyle="headerStyle"
:tableContentStyle="headerStyle" :visibleLoading="visibleAgeLoading"
:visibleLoading="visibleAgeLoading" :operate="false"
:operate="false" @row="handleClickRow"></screen-table>
@row="handleClickRow"
></screen-table>
<div class="pagination"> <div class="pagination">
<el-pagination hide-on-single-page <el-pagination hide-on-single-page
:current-page="agePageNo" :current-page="agePageNo"
:page-size="agePageSize" :page-size="agePageSize"
background background
layout="prev, pager, next" layout="prev, pager, next"
@size-change="pageSizeChangeHandleAge" @size-change="pageSizeChangeHandleAge"
@current-change="pageCurrentChangeHandleAge" @current-change="pageCurrentChangeHandleAge"
:total="ageTotal" :total="ageTotal">
>
</el-pagination> </el-pagination>
</div> </div>
</div> </div>
@ -87,51 +90,60 @@
<!-- <div class="echart-cicle echart-cicle0"></div> --> <!-- <div class="echart-cicle echart-cicle0"></div> -->
<!-- <div id="echartType" class="echart-org"></div> --> <!-- <div id="echartType" class="echart-org"></div> -->
<screen-echarts-frame class="echart-org" <screen-echarts-frame class="echart-org"
@myChartMethod="pieInitOks" @myChartMethod="pieInitOks"
ref="eduChart"></screen-echarts-frame> ref="eduChart"></screen-echarts-frame>
</div> </div>
<div v-if="false" class="echarts-tips"> <div v-if="false"
class="echarts-tips">
<div class="tips-list"> <div class="tips-list">
<div v-for="item in eduItem" :key="item.value" class="tips-item"> <div v-for="item in eduItem"
<div class="tips-item-icon" :style="'background:' + item.color"></div> :key="item.value"
class="tips-item">
<div class="tips-item-icon"
:style="'background:' + item.color"></div>
<div class="tips-item-text">{{item.name}}</div> <div class="tips-item-text">{{item.name}}</div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="ecahrts-button"> <div class="ecahrts-button">
<el-button type="warning" size="small" @click="handleExport('edu')">导出</el-button> <el-button type="warning"
size="small"
@click="handleExport('edu')">导出</el-button>
</div> </div>
<div class="warning-box-bottom"> <div class="warning-box-bottom">
<screen-table <screen-table :headerList="headerEduList"
:headerList="headerEduList" :tableData="eduList"
:tableData="eduList" :headerStyle="headerStyle"
:headerStyle="headerStyle" :tableContentStyle="headerStyle"
:tableContentStyle="headerStyle" :visibleLoading="visibleLoading"
:visibleLoading="visibleLoading" :operate="false"
:operate="false" @row="handleClickRow"></screen-table>
@row="handleClickRow"
></screen-table>
<div class="pagination"> <div class="pagination">
<el-pagination hide-on-single-page <el-pagination hide-on-single-page
:current-page="pageNo" :current-page="pageNo"
:page-size="pageSize" :page-size="pageSize"
background background
layout="prev, pager, next" layout="prev, pager, next"
@size-change="pageSizeChangeHandleNew" @size-change="pageSizeChangeHandleNew"
@current-change="pageCurrentChangeHandleNew" @current-change="pageCurrentChangeHandleNew"
:total="total" :total="total">
>
</el-pagination> </el-pagination>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</cpt-card> </cpt-card>
<el-dialog
<crate-form v-if="memberDialog"
:info="memberDetailInfo"
:partyList="optionsG"
:disabled="disabled"
@saveBase="jumpDetail"
@cancle="handlerCancle" />
<!-- <el-dialog
title="党员信息" title="党员信息"
:visible.sync="memberDialog" :visible.sync="memberDialog"
width="60%" width="60%"
@ -142,7 +154,7 @@
:before-close="handlerCancle"> :before-close="handlerCancle">
<crate-form v-if="memberDialog" :info="memberDetailInfo" :partyList="optionsG" :disabled="disabled" <crate-form v-if="memberDialog" :info="memberDetailInfo" :partyList="optionsG" :disabled="disabled"
@saveBase="jumpDetail" @cancle="handlerCancle" /> @saveBase="jumpDetail" @cancle="handlerCancle" />
</el-dialog> </el-dialog> -->
</div> </div>
</template> </template>
@ -164,7 +176,7 @@ export default {
screenEchartsFrame, screenEchartsFrame,
crateForm crateForm
}, },
data() { data () {
return { return {
memberDialog: false, memberDialog: false,
disabled: true, disabled: true,
@ -290,7 +302,7 @@ export default {
pieEduOptions: null pieEduOptions: null
}; };
}, },
async mounted() { async mounted () {
await nextTick(100); await nextTick(100);
// await this.getAgencyList() // await this.getAgencyList()
await this.getPartyOggList() await this.getPartyOggList()
@ -298,16 +310,16 @@ export default {
// this.getEduCount(this.$store.state.user.agencyId, 'agency') // this.getEduCount(this.$store.state.user.agencyId, 'agency')
// this.getAgeList(this.$store.state.user.agencyId, 'agency') // this.getAgeList(this.$store.state.user.agencyId, 'agency')
// this.getEduList(this.$store.state.user.agencyId, 'agency') // this.getEduList(this.$store.state.user.agencyId, 'agency')
this.getAgeCount() this.getAgeCount()
this.getEduCount() this.getEduCount()
this.getAgeList() this.getAgeList()
this.getEduList() this.getEduList()
// this.initAgeCharts() // this.initAgeCharts()
// this.initEduCharts() // this.initEduCharts()
// this.initChartType() // this.initChartType()
}, },
async created() { async created () {
this.getGridList('query') this.getGridList('query')
}, },
methods: { methods: {
@ -317,21 +329,21 @@ export default {
handlerCancle () { handlerCancle () {
this.memberDialog = false this.memberDialog = false
}, },
async getGridList(type, agencyId) { async getGridList (type, agencyId) {
const { user } = await this.$store.state const { user } = await this.$store.state
// addorupdate query // addorupdate query
await this.$http await this.$http
.get('/resi/partymember/icPartyOrg/getSearchTreelist', { params: {agencyId: agencyId || user.agencyId} }) .get('/resi/partymember/icPartyOrg/getSearchTreelist', { params: { agencyId: agencyId || user.agencyId } })
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} else { } else {
this.optionsG = this.deepArrTOnull(res.data) this.optionsG = this.deepArrTOnull(res.data)
} }
}) })
.catch(() => { .catch(() => {
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
pieInitOk (dom) { pieInitOk (dom) {
console.log('pie准备好了', dom) console.log('pie准备好了', dom)
@ -345,11 +357,11 @@ export default {
// this.pieInitState = true // this.pieInitState = true
}, },
initAgeCharts() { initAgeCharts () {
// const eId = document.getElementById('echartOrg') // const eId = document.getElementById('echartOrg')
// let _charts = echarts.init(eId) // let _charts = echarts.init(eId)
let option = { let option = {
} }
this.pieAgeOptions = pieOption(this.pieAgeChartS) this.pieAgeOptions = pieOption(this.pieAgeChartS)
this.clickAgePie(0) this.clickAgePie(0)
@ -375,11 +387,11 @@ export default {
// option && this.$refs.pieChart.setOption(option); // option && this.$refs.pieChart.setOption(option);
}, },
initEduCharts() { initEduCharts () {
// const eId = document.getElementById('echartOrg') // const eId = document.getElementById('echartOrg')
// let _charts = echarts.init(eId) // let _charts = echarts.init(eId)
let option = { let option = {
} }
let legend = { let legend = {
show: true, show: true,
@ -437,7 +449,7 @@ export default {
// option && this.$refs.pieChart.setOption(option); // option && this.$refs.pieChart.setOption(option);
}, },
clickAgePie (seriesIndex) { clickAgePie (seriesIndex) {
let _code = '' let _code = ''
let isClick = false let isClick = false
@ -445,7 +457,7 @@ export default {
this.ageItem.forEach((element, index) => { this.ageItem.forEach((element, index) => {
if (index === seriesIndex) { if (index === seriesIndex) {
_code = element.code _code = element.code
if (!this.noInit) isClick = false if (!this.noInit) isClick = false
else { else {
element.isClick = !element.isClick element.isClick = !element.isClick
@ -557,10 +569,10 @@ export default {
} }
this.noEduInit = true this.noEduInit = true
}, },
async getAgeCount(orgId, orgType) { async getAgeCount (orgId, orgType) {
// const url = "/epmetuser/icresiuser/partymemberagestatistics"; // const url = "/epmetuser/icresiuser/partymemberagestatistics";
const url = '/resi/partymember/icPartyMember/partymemberagestatistics' const url = '/resi/partymember/icPartyMember/partymemberagestatistics'
let params = { let params = {
@ -610,7 +622,7 @@ export default {
} else { } else {
} }
}, },
async getEduCount(orgId, orgType) { async getEduCount (orgId, orgType) {
// const url = "/epmetuser/icresiuser/partymembereducationstatistics"; // const url = "/epmetuser/icresiuser/partymembereducationstatistics";
const url = '/resi/partymember/icPartyMember/partymembereducationstatistics' const url = '/resi/partymember/icPartyMember/partymembereducationstatistics'
let params = { let params = {
@ -634,8 +646,8 @@ export default {
} else { } else {
} }
}, },
async getAgeList(orgId, orgType, _code) { async getAgeList (orgId, orgType, _code) {
this.visibleAgeLoading = true this.visibleAgeLoading = true
// const url = "/epmetuser/icresiuser/partymemberagelist"; // const url = "/epmetuser/icresiuser/partymemberagelist";
const url = '/resi/partymember/icPartyMember/partymemberagelist' const url = '/resi/partymember/icPartyMember/partymemberagelist'
@ -661,7 +673,7 @@ export default {
// if (_code == 0 || _code) this.noInit = true // if (_code == 0 || _code) this.noInit = true
this.visibleAgeLoading = false this.visibleAgeLoading = false
}, },
async getEduList(orgId, orgType, _code) { async getEduList (orgId, orgType, _code) {
this.visibleLoading = true this.visibleLoading = true
// const url = "/epmetuser/icresiuser/partymembereducationlist"; // const url = "/epmetuser/icresiuser/partymembereducationlist";
const url = '/resi/partymember/icPartyMember/partymembereducationlist' const url = '/resi/partymember/icPartyMember/partymembereducationlist'
@ -687,34 +699,34 @@ export default {
} }
this.visibleLoading = false this.visibleLoading = false
}, },
async getPartyOggList(node, resolve) { async getPartyOggList (node, resolve) {
// const url = "/gov/org/customeragency/staffinagencylist"; // const url = "/gov/org/customeragency/staffinagencylist";
// const url = '/gov/org/customeragency/agencygridtree' // const url = '/gov/org/customeragency/agencygridtree'
// const url = '/resi/partymember/icPartyOrg/getTreelist' // const url = '/resi/partymember/icPartyOrg/getTreelist'
const url ='/resi/partymember/icPartyOrg/getSearchTreelist' const url = '/resi/partymember/icPartyOrg/getSearchTreelist'
let params = { let params = {
agencyId: this.$store.state.user.agencyId, agencyId: this.$store.state.user.agencyId,
}; };
const { data, code, msg } = await requestGet(url, params); const { data, code, msg } = await requestGet(url, params);
console.log('data-orgparty----o', data) console.log('data-orgparty----o', data)
if (code === 0) { if (code === 0) {
this.partyOrgList = this.deepArrTOnull(data) this.partyOrgList = this.deepArrTOnull(data)
} else { } else {
} }
}, },
deepArrTOnull(arr) { deepArrTOnull (arr) {
let a = [] let a = []
a = arr.map(item => { a = arr.map(item => {
return { return {
...item, ...item,
children: (item.children.length > 0 && this.deepArrTOnull(item.children) )|| null children: (item.children.length > 0 && this.deepArrTOnull(item.children)) || null
} }
}) })
return a return a
}, },
async getAgencyList(node, resolve) { async getAgencyList (node, resolve) {
// const url = "/gov/org/customeragency/staffinagencylist"; // const url = "/gov/org/customeragency/staffinagencylist";
const url = '/gov/org/customeragency/agencygridtree' const url = '/gov/org/customeragency/agencygridtree'
// let params = { // let params = {
@ -733,25 +745,26 @@ export default {
} else { } else {
} }
}, },
getTreeData(data){ getTreeData (data) {
if (!Array.isArray(data)) return [] if (!Array.isArray(data)) return []
let arr = data.map(item => { let arr = data.map(item => {
let _item = {} let _item = {}
if (item.subAgencyList) { if (item.subAgencyList) {
if (item.subAgencyList.length === 0) { if (item.subAgencyList.length === 0) {
_item = { _item = {
label: item.agencyName, label: item.agencyName,
value: item.agencyId + '-' + item.level, value: item.agencyId + '-' + item.level,
level: item.level, level: item.level,
children: undefined children: undefined
} }
} else _item = { } else _item = {
label: item.agencyName, label: item.agencyName,
value: item.agencyId + '-' + item.level, value: item.agencyId + '-' + item.level,
level: item.level, level: item.level,
children: this.getTreeData(item.subAgencyList)} children: this.getTreeData(item.subAgencyList)
}
} else { } else {
_item = { _item = {
label: item.agencyName, label: item.agencyName,
value: item.agencyId + '-' + item.level, value: item.agencyId + '-' + item.level,
level: item.level, level: item.level,
@ -761,7 +774,7 @@ export default {
}) })
return arr return arr
}, },
handleClickRow(val) { handleClickRow (val) {
this.getDetail(val.userId) this.getDetail(val.userId)
this.memberDialog = true this.memberDialog = true
}, },
@ -771,27 +784,27 @@ export default {
path: `/main-shuju/visual-basicinfo-people/${val}`, path: `/main-shuju/visual-basicinfo-people/${val}`,
}); });
}, },
getDetail(id) { getDetail (id) {
let params = { let params = {
id, id,
} }
this.$http this.$http
.post(`/resi/partymember/icPartyMember/${id}`) .post(`/resi/partymember/icPartyMember/${id}`)
.then(({ data: res }) => { .then(({ data: res }) => {
if (res.code !== 0) { if (res.code !== 0) {
return this.$message.error(res.msg) return this.$message.error(res.msg)
} else { } else {
this.memberDetailInfo = { ...res.data } this.memberDetailInfo = { ...res.data }
} }
}) })
.catch((err) => { .catch((err) => {
return this.$message.error('网络错误') return this.$message.error('网络错误')
}) })
}, },
handleCascader(val) { handleCascader (val) {
console.log('val-vvv', val) console.log('val-vvv', val)
const _arr = val[val.length - 1].split('-') const _arr = val[val.length - 1].split('-')
const orgType = _arr[1] !== 'grid' ? 'agency': 'grid' const orgType = _arr[1] !== 'grid' ? 'agency' : 'grid'
this.agencyId = _arr[0] this.agencyId = _arr[0]
this.orgType = orgType this.orgType = orgType
this.noInit = false this.noInit = false
@ -803,7 +816,7 @@ export default {
this.getAgeList(_arr[0], orgType) this.getAgeList(_arr[0], orgType)
this.getEduList(_arr[0], orgType) this.getEduList(_arr[0], orgType)
}, },
handlePartyCascader(val) { handlePartyCascader (val) {
console.log('val-vvvpppppp', val) console.log('val-vvvpppppp', val)
this.noInit = false this.noInit = false
this.noEduInit = false this.noEduInit = false
@ -823,17 +836,17 @@ export default {
this.getAgeList('') this.getAgeList('')
this.getEduList('') this.getEduList('')
} }
}, },
getCheckedNodes(val) { getCheckedNodes (val) {
console.log('val-nnn', val) console.log('val-nnn', val)
}, },
lazyLoad(node, resolve) { lazyLoad (node, resolve) {
setTimeout(() => { setTimeout(() => {
this.getAgeList(node, resolve) this.getAgeList(node, resolve)
}, 500) }, 500)
}, },
pageSizeChangeHandleAge(val) { pageSizeChangeHandleAge (val) {
this.agePageNo = 1 this.agePageNo = 1
this.agePageSize = val this.agePageSize = val
this.getAgeList(this.agencyId, this.orgType, this.ageCode) this.getAgeList(this.agencyId, this.orgType, this.ageCode)
@ -842,22 +855,22 @@ export default {
this.agePageNo = val this.agePageNo = val
this.getAgeList(this.agencyId, this.orgType, this.ageCode) this.getAgeList(this.agencyId, this.orgType, this.ageCode)
}, },
pageSizeChangeHandleNew(val) { pageSizeChangeHandleNew (val) {
this.pageNo = 1; this.pageNo = 1;
this.pageSize = val; this.pageSize = val;
this.getEduList(this.agencyId, this.orgType, this.eduCode) this.getEduList(this.agencyId, this.orgType, this.eduCode)
}, },
pageCurrentChangeHandleNew(val) { pageCurrentChangeHandleNew (val) {
this.pageNo = val; this.pageNo = val;
this.getEduList(this.agencyId, this.orgType, this.eduCode) this.getEduList(this.agencyId, this.orgType, this.eduCode)
}, },
async handleExport(type) { async handleExport (type) {
const urls = { const urls = {
age: '/epmetuser/icresiuser/partymemberagelist/export', age: '/epmetuser/icresiuser/partymemberagelist/export',
edu: '/epmetuser/icresiuser/partymembereducationlist/export' edu: '/epmetuser/icresiuser/partymembereducationlist/export'
} }
const _arr = this.selectAgency[this.selectAgency.length - 1].split('-') const _arr = this.selectAgency[this.selectAgency.length - 1].split('-')
const orgType = _arr[1] !== 'grid' ? 'agency': 'grid' const orgType = _arr[1] !== 'grid' ? 'agency' : 'grid'
let params = { let params = {
orgId: _arr[0], orgId: _arr[0],
orgType: orgType, orgType: orgType,
@ -939,8 +952,8 @@ export default {
color: #fff; color: #fff;
line-height: 24px; line-height: 24px;
text-align: center; text-align: center;
background: #06186D; background: #06186d;
border: 1px solid #1A64CC; border: 1px solid #1a64cc;
border-radius: 2px; border-radius: 2px;
} }
.el-input__prefix { .el-input__prefix {
@ -952,15 +965,13 @@ export default {
line-height: 24px; line-height: 24px;
} }
} }
} }
} }
.title-label { .title-label {
font-size: 22px; font-size: 22px;
font-family: PingFang SC; font-family: PingFang SC;
font-weight: 800; font-weight: 800;
::v-deep .el-input { ::v-deep .el-input {
width: 180px; width: 180px;
.el-input__inner { .el-input__inner {
font-size: 18px; font-size: 18px;
@ -970,7 +981,7 @@ export default {
border: 1px solid #1a64cc; border: 1px solid #1a64cc;
} }
.el-icon-arrow-down::before { .el-icon-arrow-down::before {
content: "\e790"; content: "\e790";
} }
} }
} }
@ -998,7 +1009,7 @@ export default {
color: #fff; color: #fff;
} }
.card-left-title::after { .card-left-title::after {
content: ''; content: "";
position: absolute; position: absolute;
top: 50%; top: 50%;
left: 20px; left: 20px;
@ -1006,7 +1017,7 @@ export default {
height: 12px; height: 12px;
box-sizing: border-box; box-sizing: border-box;
margin-top: -6px; margin-top: -6px;
background: #2865FA; background: #2865fa;
border-radius: 50%; border-radius: 50%;
} }
.echart-wr { .echart-wr {
@ -1049,7 +1060,10 @@ export default {
.echarts-tips-wd50 { .echarts-tips-wd50 {
width: 320px; width: 320px;
} }
.tips-list, .tips-item, .tips-lists, .tips-items-num { .tips-list,
.tips-item,
.tips-lists,
.tips-items-num {
display: flex; display: flex;
align-items: center; align-items: center;
} }
@ -1069,12 +1083,12 @@ export default {
height: 10px; height: 10px;
box-sizing: border-box; box-sizing: border-box;
margin-right: 8px; margin-right: 8px;
background: #1B51FF; background: #1b51ff;
border-radius: 2px; border-radius: 2px;
} }
.tips-item-text { .tips-item-text {
font-size: 16px; font-size: 16px;
color: #D2E7FF; color: #d2e7ff;
} }
} }
} }
@ -1095,19 +1109,24 @@ export default {
box-sizing: border-box; box-sizing: border-box;
padding-left: 6px; padding-left: 6px;
font-size: 16px; font-size: 16px;
color: #EFF0F1; color: #eff0f1;
background: url('../../../../assets/img/shuju/measure/huang@2x.png') no-repeat left bottom; background: url("../../../../assets/img/shuju/measure/huang@2x.png")
no-repeat left bottom;
&1 { &1 {
background: url('../../../../assets/img/shuju/measure/lv@2x.png') no-repeat left bottom; background: url("../../../../assets/img/shuju/measure/lv@2x.png")
no-repeat left bottom;
} }
&2 { &2 {
background: url('../../../../assets/img/shuju/measure/zi@2x.png') no-repeat left bottom; background: url("../../../../assets/img/shuju/measure/zi@2x.png")
no-repeat left bottom;
} }
&3 { &3 {
background: url('../../../../assets/img/shuju/measure/lan@2x.png') no-repeat left bottom; background: url("../../../../assets/img/shuju/measure/lan@2x.png")
no-repeat left bottom;
} }
&4 { &4 {
background: url('../../../../assets/img/shuju/measure/lanlv@2x.png') no-repeat left bottom; background: url("../../../../assets/img/shuju/measure/lanlv@2x.png")
no-repeat left bottom;
} }
} }
.tips-items-num { .tips-items-num {
@ -1135,8 +1154,7 @@ export default {
padding-right: 30px; padding-right: 30px;
text-align: right; text-align: right;
::v-deep .el-button--warning { ::v-deep .el-button--warning {
background: linear-gradient(90deg, #0863ea, #3b9ffc);
background: linear-gradient(90deg, #0863EA, #3B9FFC);
border: 0; border: 0;
} }
} }

Loading…
Cancel
Save