Browse Source

【市北代码迁移至安宁】【党员管理】-王公峰-2020-09-17

redesign
wanggongfeng 5 years ago
parent
commit
81c4688003
  1. 90
      src/views/modules/leader/partycase-add-or-update.vue
  2. 159
      src/views/modules/user/hasAuthenticationpartymembers.vue
  3. 138
      src/views/modules/user/party-wait-authentication.vue
  4. 143
      src/views/modules/user/partyauthenticationfailed.vue
  5. 20
      src/views/modules/user/partymembers-add-or-update.vue
  6. 193
      src/views/modules/user/partymembers.vue

90
src/views/modules/leader/partycase-add-or-update.vue

@ -56,7 +56,7 @@
<span class="line-h-40" style="font-weight: bold">党员年龄分布图表内容</span></div>
</div>
<div style="padding-left: 120px" v-for="(item,i) in dataForm.partyCaseDisrtibutionDTOList"
v-if="item.type==='0'" :key="i">
v-if="item.type==='0'">
<el-form-item :label="item.distributionName" label-width="120px"
:prop="'partyCaseDisrtibutionDTOList.'+i+'.distributionInfoCount'"
:rules="dataRule.countNum">
@ -83,11 +83,12 @@
</div>
</div>
<div style="padding-left: 120px" v-for="(item,i) in dataForm.partyCaseDisrtibutionDTOList"
v-if="item.type==='1'" :key="i">
v-if="item.type==='1'">
<el-form-item :label="item.distributionName" label-width="120px"
:prop="'partyCaseDisrtibutionDTOList.'+i+'.distributionInfoCount'"
:rules="dataRule.countNum">
<el-input class="input-count" @change="disrtibutionNumberChange(i,item.type)"
oninput="value=value.replace(/[^\d]/g,'')"
v-model="dataForm.partyCaseDisrtibutionDTOList[i].distributionInfoCount"></el-input>
</el-form-item>
<el-form-item label="占党员总数" label-width="100px" prop="categoryInfo">
@ -103,23 +104,23 @@
</template>
<script>
import debounce from 'lodash/debounce'
import debounce from 'lodash/debounce'
export default {
data () {
export default {
data() {
return {
dataForm: {
partyCaseCategoryDTOList: [
{
type: '-1',
categoryInfo: '',
parytAmount: 0
parytAmount: 0,
}, {
type: '0',
categoryInfo: ''
categoryInfo: '',
}, {
type: '1',
categoryInfo: ''
categoryInfo: '',
}],
partyCaseDisrtibutionDTOList: [
{
@ -152,98 +153,99 @@ export default {
distributionInfoCount: 0,
distributionInfoPercent: 0,
type: '1'
},
{
}
, {
distributionName: '离退休人员:',
distributionInfoCount: 0,
distributionInfoPercent: 0,
type: '1'
},
{
}
, {
distributionName: '其他职业:',
distributionInfoCount: 0,
distributionInfoPercent: 0,
type: '1'
}],
partyCaseNumberDTOList: []
partyCaseNumberDTOList: [],
},
loading: true
loading: true,
}
},
computed: {
dataRule () {
dataRule() {
return {
categoryInfo0: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{required: true, message: this.$t('validate.required'), trigger: 'blur'}
],
categoryInfo1: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{required: true, message: this.$t('validate.required'), trigger: 'blur'}
],
categoryInfo2: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{required: true, message: this.$t('validate.required'), trigger: 'blur'}
],
parytAmount: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{required: true, message: this.$t('validate.required'), trigger: 'blur'}
],
countNum: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{required: true, message: this.$t('validate.required'), trigger: 'blur'}
],
sort: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
]
{required: true, message: this.$t('validate.required'), trigger: 'blur'}
],
}
}
},
mounted () {
this.init()
mounted() {
this.init();
},
methods: {
init () {
init() {
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
this.$refs['dataForm'].resetFields();
this.getInfo()
})
},
//
getInfo () {
this.$http.get(`/cloudAnalysis/partycasecategory/getDetail`).then(({ data: res }) => {
getInfo() {
this.$http.get(`/cloudAnalysis/partycasecategory/getDetail`).then(({data: res}) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
if (res.data.partyCaseCategoryDTOList.length > 0) {
this.dataForm.partyCaseCategoryDTOList = res.data.partyCaseCategoryDTOList
this.dataForm.partyCaseCategoryDTOList = res.data.partyCaseCategoryDTOList;
}
if (res.data.partyCaseDisrtibutionDTOList.length > 0) {
this.dataForm.partyCaseDisrtibutionDTOList = res.data.partyCaseDisrtibutionDTOList
this.dataForm.partyCaseDisrtibutionDTOList = res.data.partyCaseDisrtibutionDTOList;
}
if (res.data.partyCaseNumberDTOList.length > 0) {
this.dataForm.partyCaseNumberDTOList = res.data.partyCaseNumberDTOList
this.dataForm.partyCaseNumberDTOList = res.data.partyCaseNumberDTOList;
} else {
this.getStreetInfo()
this.getStreetInfo();
}
this.loading = false
this.loading = false;
}).catch(() => {
this.loading = false
})
this.loading = false;
});
},
//
getStreetInfo () {
this.$http.get(`/cloudAnalysis/partycasenumber/getStreet`).then(({ data: res }) => {
getStreetInfo() {
this.$http.get(`/cloudAnalysis/partycasenumber/getStreet`).then(({data: res}) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.dataForm.partyCaseNumberDTOList = res.data
this.dataForm.partyCaseNumberDTOList = res.data;
}).catch(() => {
})
},
//
streetNumberChange (i, streetId) {
streetNumberChange(i, streetId) {
this.dataForm.partyCaseNumberDTOList[i].partyCountPercent = parseInt(Math.round(100 * this.dataForm.partyCaseNumberDTOList[i].partyCount / this.dataForm.partyCaseCategoryDTOList[0].parytAmount))
},
disrtibutionNumberChange (i, type) {
disrtibutionNumberChange(i, type) {
this.dataForm.partyCaseDisrtibutionDTOList[i].distributionInfoPercent = parseFloat((100 * this.dataForm.partyCaseDisrtibutionDTOList[i].distributionInfoCount / this.dataForm.partyCaseCategoryDTOList[0].parytAmount).toFixed(2))
},
parytAmountNumberChange () {
parytAmountNumberChange() {
for (const i of this.dataForm.partyCaseNumberDTOList) {
i.partyCountPercent = parseInt(Math.round(100 * i.partyCount / this.dataForm.partyCaseCategoryDTOList[0].parytAmount))
}
@ -257,7 +259,7 @@ export default {
if (!valid) {
return false
}
this.$http[!this.dataForm.partyCaseCategoryDTOList[0].id ? 'post' : 'put']('/cloudAnalysis/partycasecategory/', this.dataForm).then(({ data: res }) => {
this.$http[!this.dataForm.partyCaseCategoryDTOList[0].id ? 'post' : 'put']('/cloudAnalysis/partycasecategory/', this.dataForm).then(({data: res}) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
@ -272,9 +274,9 @@ export default {
}).catch(() => {
})
})
}, 1000, { 'leading': true, 'trailing': false })
}, 1000, {'leading': true, 'trailing': false})
}
}
}
</script>
<style scoped>
.line-h-40 {

159
src/views/modules/user/hasAuthenticationpartymembers.vue

@ -4,7 +4,7 @@
<div class="mod-__hasAuthenticationpartymembers.vue}">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()">
@keyup.enter.native="getDataListSearch()">
<el-form-item label="所属机构">
<el-cascader v-model="deptIdList"
:options="options"
@ -24,38 +24,51 @@
</el-select>
</el-form-item> -->
<br>
<el-form-item label="姓名">
<el-form-item label="姓名" label-width="68px">
<el-input v-model="dataForm.realName"
placeholder=""
@keyup.native="btKeyUpRealName"
clearable></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="dataForm.mobile"
placeholder=""
@keyup.native="btKeyUpMobile"
clearable></el-input>
</el-form-item>
<el-form-item label="身份证号">
<el-input v-model="dataForm.identityNo"
placeholder=""
@keyup.native="btKeyUpIdentityNo"
clearable></el-input>
</el-form-item>
<br>
<el-form-item label="认证时间">
<el-date-picker v-model="timeRange"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
<el-form-item label="注册时间" prop="startTime" label-width="70px">
<el-date-picker v-model="dataForm.startTime"
type="date"
:picker-options="pickerBeginDateBefore"
value-format="yyyy-MM-dd"
:default-time="['00:00:00', '23:59:59']"
@change="selectedTime">
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item label="至" prop="endTime">
<el-date-picker v-model="dataForm.endTime"
type="date"
:picker-options="pickerBeginDateAfter"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button @click="getDataListSearch()" type="success">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button v-if="$hasPermission('epdc:user:export')"
type="primary"
type="success"
@click="exportHandle()">{{ $t('export') }}</el-button>
</el-form-item>
<br>
@ -66,57 +79,64 @@
border
@selection-change="dataListSelectionChangeHandle"
style="width: 100%;">
<el-table-column type="selection"
header-align="center"
align="center"
width="50"></el-table-column>
<el-table-column label="序号" header-align="center" align="center" width="50px">
<template slot-scope="scope">
{{scope.$index+1}}
</template>
</el-table-column>
<el-table-column prop="realName"
label="姓名"
width="80"
header-align="center"
align="center"></el-table-column>
align="center"
width="120"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
width="110"
header-align="center"
align="center"></el-table-column>
align="center"
width="150"></el-table-column>
<el-table-column prop="identityNo"
label="身份证号"
width="180"
header-align="center"
align="center"></el-table-column>
<!--<el-table-column prop="post"-->
<!--label="职务"-->
<!--header-align="center"-->
<!--align="center"></el-table-column>-->
<!--<el-table-column prop="cadreFlag"-->
<!--label="干部下沉"-->
<!--:formatter="formatCadre"-->
<!--header-align="center"-->
<!--align="center"></el-table-column>-->
<!--<el-table-column prop="tagName"-->
<!--label="角色"-->
<!--header-align="center"-->
<!--align="center"></el-table-column>-->
align="center"
width="200"></el-table-column>
<el-table-column prop="post"
label="职务"
header-align="center"
align="center"
v-if="false"></el-table-column>
<el-table-column prop="cadreFlag"
label="干部下沉"
:formatter="formatCadre"
header-align="center"
align="center"
v-if="false"></el-table-column>
<el-table-column prop="tagName"
label="角色"
header-align="center"
align="center"
v-if="false"></el-table-column>
<el-table-column prop="registFlag"
label="注册状态"
:formatter="formatRegist"
header-align="center"
align="center"></el-table-column>
align="center"
width="120"></el-table-column>
<el-table-column prop="registTime"
label="认证时间"
width="180"
header-align="center"
align="center"></el-table-column>
align="center"
width="180"></el-table-column>
<el-table-column prop="createdTime"
label="注册时间"
width="180"
header-align="center"
align="center"></el-table-column>
align="center"
width="180"></el-table-column>
<el-table-column prop="allDeptNames"
label="街道-社区-网格"
header-align="center"
min-width="200" show-overflow-tooltip> </el-table-column>
align="center"
min-width="350"
show-overflow-tooltip> </el-table-column>
</el-table>
<el-pagination :current-page="page"
:page-sizes="[10, 20, 50, 100]"
@ -154,6 +174,22 @@ export default {
startTime: '',
endTime: ''
},
pickerBeginDateBefore: {
disabledDate: (time) => {
let beginDateVal = this.dataForm.endTime
if (beginDateVal) {
return time.getTime() > new Date(beginDateVal + ' 00:00:00').getTime()
}
}
},
pickerBeginDateAfter: {
disabledDate: (time) => {
let EndDateVal = this.dataForm.startTime
if (EndDateVal) {
return time.getTime() < new Date(EndDateVal + ' 00:00:00').getTime()
}
}
},
// streetOptions: [],
communityOptions: [],
gridOptions: [],
@ -203,14 +239,39 @@ export default {
this.options = res.data.options
})
.catch(() => { })
this.initTime()
// this.getStreetList()
this.getRegistOptions()
// this.getPostOptions()
},
methods: {
selectedTime () {
this.dataForm.startTime = this.timeRange[0]
this.dataForm.endTime = this.timeRange[1]
initTime () {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
this.timeRange = [start, end]
let year = start.getFullYear()
let month = start.getMonth() + 1
if (month < 10) {
month = '0' + month
}
let date = start.getDate()
if (date < 10) {
date = '0' + date
}
let startDate = year + '-' + month + '-' + date
let yearend = end.getFullYear()
let monthend = end.getMonth() + 1
if (monthend < 10) {
monthend = '0' + monthend
}
let dateend = end.getDate()
if (dateend < 10) {
dateend = '0' + dateend
}
let endDate = yearend + '-' + monthend + '-' + dateend
this.dataForm.startTime = startDate
this.dataForm.endTime = endDate
},
// getStreetList () {
// this.$http.get(`/sys/dept/sublist/` + (localStorage.getItem('street') === null ? '1169154711480528897' : localStorage.getItem('street'))).then(({ data: res }) => {
@ -220,6 +281,18 @@ export default {
// this.streetOptions = res.data
// }).catch(() => { })
// },
btKeyUpRealName (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.realName = e.target.value
},
btKeyUpMobile (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.mobile = e.target.value
},
btKeyUpIdentityNo (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.identityNo = e.target.value
},
getCommunityList () {
if (this.dataForm.streetId === '') {
this.communityOptions = []

138
src/views/modules/user/party-wait-authentication.vue

@ -4,8 +4,8 @@
<div class="mod-epdc__user}">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()">
<el-form-item label="所属机构">
@keyup.enter.native="getDataListSearch()">
<el-form-item label="所属机构" label-width="70px">
<el-cascader v-model="deptIdList"
:options="options"
:props="{ checkStrictly: true }"
@ -13,7 +13,7 @@
</el-cascader>
</el-form-item>
<el-form-item label="街道"
v-if="false">
v-if="false" label-width="70px">
<el-select v-model="dataForm.streetId"
clearable
placeholder="请选择"
@ -25,7 +25,7 @@
</el-select>
</el-form-item>
<el-form-item label="社区"
v-if="false">
v-if="false" label-width="70px">
<el-select v-model="dataForm.communityId"
clearable
placeholder="请选择"
@ -37,7 +37,7 @@
</el-select>
</el-form-item>
<el-form-item label="网格"
v-if="false">
v-if="false" label-width="70px">
<el-select v-model="dataForm.gridId"
clearable
placeholder="请选择">
@ -47,31 +47,46 @@
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="姓名">
<el-form-item label="姓名" label-width="70px">
<el-input v-model="dataForm.realName"
placeholder="请输入"
@keyup.native="btKeyUpRealName"
clearable></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-form-item label="手机号" label-width="70px">
<el-input v-model="dataForm.mobile"
placeholder="请输入"
@keyup.native="btKeyUpMobile"
clearable></el-input>
</el-form-item>
<!-- <div class="block"> -->
<span class="demonstration">注册时间</span>&nbsp;&nbsp;
<el-date-picker @change='setRegistTime'
v-model="time"
<br/>
<el-form-item label="注册时间" prop="startTime" label-width="70px">
<el-date-picker v-model="dataForm.startTime"
type="date"
:picker-options="pickerBeginDateBefore"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>&nbsp;
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item label="至" prop="endTime">
<el-date-picker v-model="dataForm.endTime"
type="date"
:picker-options="pickerBeginDateAfter"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button @click="getDataListSearch()" type="success">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button v-if="$hasPermission('epdc:user:export')"
type="primary"
type="success"
@click="exportHandle()">{{ $t('export') }}</el-button>
</el-form-item>
<!-- </div> -->
@ -81,39 +96,43 @@
border
@selection-change="dataListSelectionChangeHandle"
style="width: 100%;">
<el-table-column label="序号"
width="50px"><template slot-scope="scope">{{scope.$index+1}}</template></el-table-column>
<el-table-column label="序号" header-align="center" align="center" width="50px">
<template slot-scope="scope">
{{scope.$index+1}}
</template>
</el-table-column>
<el-table-column prop="realName"
label="姓名"
header-align="center"
align="center"></el-table-column>
align="center"
width="120"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
width="110"
header-align="center"
align="center"></el-table-column>
align="center"
width="150"></el-table-column>
<el-table-column prop="identityNo"
label="身份证号"
width="180"
header-align="center"
align="center"></el-table-column>
align="center"
width="200"></el-table-column>
<el-table-column prop="allDeptNames"
label="认证网格"
min-width="200"
show-overflow-tooltip
header-align="center"
align="left"></el-table-column>
align="center"
min-width="400"
show-overflow-tooltip></el-table-column>
<el-table-column prop="address"
label="居住地址"
min-width="180"
show-overflow-tooltip
header-align="center"
align="left"></el-table-column>
align="center"
min-width="350"
show-overflow-tooltip></el-table-column>
<el-table-column prop="updatedTime"
label="提交时间"
width="160"
header-align="center"
align="center"></el-table-column>
align="center"
width="180"></el-table-column>
<el-table-column :label="$t('handle')"
fixed="right"
header-align="center"
@ -169,6 +188,22 @@ export default {
partyFlag: '0', // (0-1-)
state: '1'
},
pickerBeginDateBefore: {
disabledDate: (time) => {
let beginDateVal = this.dataForm.endTime
if (beginDateVal) {
return time.getTime() > new Date(beginDateVal + ' 00:00:00').getTime()
}
}
},
pickerBeginDateAfter: {
disabledDate: (time) => {
let EndDateVal = this.dataForm.startTime
if (EndDateVal) {
return time.getTime() < new Date(EndDateVal + ' 00:00:00').getTime()
}
}
},
deptIdList: [],
options: [],
partyReviewVisible: false,
@ -191,6 +226,7 @@ export default {
this.options = res.data.options
})
.catch(() => { })
this.initTime()
},
watch: {
'deptIdList': function (val) {
@ -217,6 +253,42 @@ export default {
}
},
methods: {
initTime () {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
this.time = [start, end]
let year = start.getFullYear()
let month = start.getMonth() + 1
if (month < 10) {
month = '0' + month
}
let date = start.getDate()
if (date < 10) {
date = '0' + date
}
let startDate = year + '-' + month + '-' + date
let yearend = end.getFullYear()
let monthend = end.getMonth() + 1
if (monthend < 10) {
monthend = '0' + monthend
}
let dateend = end.getDate()
if (dateend < 10) {
dateend = '0' + dateend
}
let endDate = yearend + '-' + monthend + '-' + dateend
this.dataForm.startTime = startDate
this.dataForm.endTime = endDate
},
btKeyUpRealName (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.realName = e.target.value
},
btKeyUpMobile (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.mobile = e.target.value
},
getStreetList () {
this.$http.get(`/sys/dept/sublist/` + (localStorage.getItem('street') === null ? '1169154711480528897' : localStorage.getItem('street'))).then(({ data: res }) => {
if (res.code !== 0) {
@ -249,10 +321,6 @@ export default {
}).catch(() => { })
}
},
setRegistTime () {
this.dataForm.startTime = this.time[0]
this.dataForm.endTime = this.time[1]
},
formatState: function (row, column) {
let state = row.state
if (state === '1') {

143
src/views/modules/user/partyauthenticationfailed.vue

@ -4,78 +4,97 @@
<div class="mod-user__partyauthenticationfailed}">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()">
<el-form-item label="姓名">
@keyup.enter.native="getDataListSearch()">
<el-form-item label="姓名" label-width="70px">
<el-input v-model="dataForm.realName"
placeholder="请输入"
@keyup.native="btKeyUpRealname"
clearable></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-form-item label="手机号" label-width="70px">
<el-input v-model="dataForm.mobile"
placeholder="请输入"
@keyup.native="btKeyUpMobile"
clearable></el-input>
</el-form-item>
<el-form-item label="身份证号">
<el-form-item label="身份证号" label-width="70px">
<el-input v-model="dataForm.identityNo"
placeholder="请输入"
@keyup.native="btKeyUpIdentityNo"
clearable></el-input>
</el-form-item>
<el-form-item label="认证时间">
<el-date-picker @change='setRegistTime'
v-model="time"
<br>
<el-form-item label="认证时间" prop="startTime" label-width="70px">
<el-date-picker v-model="dataForm.startTime"
type="date"
:picker-options="pickerBeginDateBefore"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>&nbsp;
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item label="至" prop="endTime">
<el-date-picker v-model="dataForm.endTime"
type="date"
:picker-options="pickerBeginDateAfter"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button @click="getDataListSearch()" type="success">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="primary"
<el-button type="success"
@click="exportHandle()">{{ $t('export') }}</el-button>
</el-form-item>
</el-form-item>
</el-form>
<el-table v-loading="dataListLoading"
:data="dataList"
border
@selection-change="dataListSelectionChangeHandle"
style="width: 100%;">
<el-table-column type="selection"
header-align="center"
align="center"
width="50"></el-table-column>
<el-table-column label="序号" header-align="center" align="center" width="50px">
<template slot-scope="scope">
{{scope.$index+1}}
</template>
</el-table-column>
<el-table-column prop="realName"
label="姓名"
width="80"
header-align="center"
align="center"></el-table-column>
align="center"
width="100"></el-table-column>
<el-table-column prop="identityNo"
label="身份证号"
width="180"
header-align="center"
align="center"></el-table-column>
align="center"
width="200"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
width="110"
header-align="center"
align="center"></el-table-column>
align="center"
width="150"></el-table-column>
<el-table-column prop="allDeptNames"
label="所属网格"
min-width="200" show-overflow-tooltip
header-align="center"
align="left"></el-table-column>
align="center"
min-width="350"
show-overflow-tooltip></el-table-column>
<el-table-column prop="createdTime"
label="认证时间"
width="180"
header-align="center"
align="center"></el-table-column>
align="center"
width="180"></el-table-column>
<el-table-column prop="address"
label="居民住址"
min-width="200" show-overflow-tooltip
header-align="center"
align="left"></el-table-column>
align="center"
min-width="350"
show-overflow-tooltip></el-table-column>
<!-- <el-table-column :label="$t('handle')"
fixed="right"
header-align="center"
@ -127,18 +146,68 @@ export default {
startTime: '',
endTime: ''
},
pickerBeginDateBefore: {
disabledDate: (time) => {
let beginDateVal = this.dataForm.endTime
if (beginDateVal) {
return time.getTime() > new Date(beginDateVal + ' 00:00:00').getTime()
}
}
},
pickerBeginDateAfter: {
disabledDate: (time) => {
let EndDateVal = this.dataForm.startTime
if (EndDateVal) {
return time.getTime() < new Date(EndDateVal + ' 00:00:00').getTime()
}
}
},
time: ''
}
},
created () {
this.initTime()
},
methods: {
setRegistTime () {
if (this.time === null) {
this.dataForm.startTime = ''
this.dataForm.endTime = ''
} else {
this.dataForm.startTime = this.time[0]
this.dataForm.endTime = this.time[1]
initTime () {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
this.time = [start, end]
let year = start.getFullYear()
let month = start.getMonth() + 1
if (month < 10) {
month = '0' + month
}
let date = start.getDate()
if (date < 10) {
date = '0' + date
}
let startDate = year + '-' + month + '-' + date
let yearend = end.getFullYear()
let monthend = end.getMonth() + 1
if (monthend < 10) {
monthend = '0' + monthend
}
let dateend = end.getDate()
if (dateend < 10) {
dateend = '0' + dateend
}
let endDate = yearend + '-' + monthend + '-' + dateend
this.dataForm.startTime = startDate
this.dataForm.endTime = endDate
},
btKeyUpRealname (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.realName = e.target.value
},
btKeyUpMobile (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.mobile = e.target.value
},
btKeyUpIdentityNo (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.identityNo = e.target.value
},
// /
addOrUpdateHandle (id) {

20
src/views/modules/user/partymembers-add-or-update.vue

@ -2,7 +2,8 @@
<el-dialog :visible.sync="visible"
:title="!dataForm.id ? $t('add') : $t('update')"
:close-on-click-modal="false"
:close-on-press-escape="false">
:close-on-press-escape="false"
customClass="customWidth">
<el-form :model="dataForm"
:rules="dataRule"
ref="dataForm"
@ -11,17 +12,17 @@
<el-form-item label="姓名"
prop="realName">
<el-input v-model="dataForm.realName"
placeholder="姓名"></el-input>
placeholder="姓名" style="width:90%;" maxlength="10"></el-input>
</el-form-item>
<el-form-item label="手机号"
prop="mobile">
<el-input v-model="dataForm.mobile"
placeholder="手机号"></el-input>
placeholder="手机号" style="width:90%;"></el-input>
</el-form-item>
<el-form-item label="身份证号"
prop="identityNo">
<el-input v-model="dataForm.identityNo"
placeholder="身份证号"></el-input>
placeholder="身份证号" style="width:90%;"></el-input>
</el-form-item>
<!-- <el-form-item label="街道党工委"
label-width='auto'
@ -126,10 +127,12 @@ export default {
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
mobile: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{ required: true, message: this.$t('validate.required'), trigger: 'blur' },
{ pattern: /^[1][1,2,3,4,5,6,7,8,9][0-9]{9}$/, message: '请输入正确号码格式', trigger: 'blur' }
],
identityNo: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
{ required: true, message: this.$t('validate.required'), trigger: 'blur' },
{ pattern: /(^\d{15}$)|bai(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: '请输入正确身份证号', trigger: 'blur' }
],
streetId: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
@ -258,3 +261,8 @@ export default {
}
}
</script>
<style lang="scss">
.customWidth {
width:35%
}
</style>

193
src/views/modules/user/partymembers.vue

@ -4,65 +4,77 @@
<div class="mod-__partymembers}">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()">
<el-form-item label="所属机构">
@keyup.enter.native="getDataListSearch()">
<el-form-item label="所属机构" label-width="70px">
<el-cascader v-model="deptIdList"
:options="options"
:props="{ checkStrictly: true }"
clearable>
</el-cascader>
</el-form-item>
<el-form-item label="注册状态" label-width="70px">
<el-select v-model="dataForm.registFlag"
placeholder="请选择">
<el-option v-for="item in registFlagOptions"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<br>
<el-form-item label="姓名">
<el-form-item label="姓名" label-width="70px">
<el-input v-model="dataForm.realName"
placeholder=""
placeholder="请输入姓名"
@keyup.native="btKeyUpRealName"
clearable></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-form-item label="手机号" label-width="70px">
<el-input v-model="dataForm.mobile"
placeholder=""
placeholder="请输入手机号"
@keyup.native="btKeyUpMobile"
clearable></el-input>
</el-form-item>
<el-form-item label="身份证号">
<el-form-item label="身份证号" label-width="70px">
<el-input v-model="dataForm.identityNo"
placeholder=""
placeholder="请输入身份证号"
@keyup.native="btKeyUpIdentityNo"
clearable></el-input>
</el-form-item>
<!--<el-form-item label="职务">-->
<!--<el-select v-model="dataForm.postId"-->
<!--placeholder="请选择">-->
<!--<el-option v-for="item in postOptions"-->
<!--:key="item.dictValue"-->
<!--:label="item.dictName"-->
<!--:value="item.dictValue">-->
<!--</el-option>-->
<!--</el-select>-->
<!--</el-form-item>-->
<br>
<el-form-item label="注册状态">
<el-select v-model="dataForm.registFlag"
<el-form-item label="职务" v-if="false">
<el-select v-model="dataForm.postId"
placeholder="请选择">
<el-option v-for="item in registFlagOptions"
<el-option v-for="item in postOptions"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="注册时间">
<el-date-picker v-model="timeRange"
type="daterange"
start-placeholder="开始日期"
end-placeholder="结束日期"
<br>
<el-form-item label="认证时间" prop="startTime" label-width="70px">
<el-date-picker v-model="dataForm.startTime"
type="date"
:picker-options="pickerBeginDateBefore"
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item label="至" prop="endTime">
<el-date-picker v-model="dataForm.endTime"
type="date"
:picker-options="pickerBeginDateAfter"
value-format="yyyy-MM-dd"
:default-time="['00:00:00', '23:59:59']"
@change="selectedTime">
format="yyyy-MM-dd"
placeholder="选择日期时间"
style="width:200px" @change="changeTime">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
<el-button @click="getDataListSearch()" type="success">{{ $t('query') }}</el-button>
</el-form-item>
<br>
<el-form-item>
<el-button v-if="$hasPermission('partymembers:save')"
type="primary"
@ -74,11 +86,11 @@
@click="deleteHandle()">{{ $t('deleteBatch') }}</el-button>
</el-form-item> -->
<el-form-item>
<el-button type="info" v-if="$hasPermission('partymembers:export')"
<el-button type="success" v-if="$hasPermission('partymembers:export')"
@click="exportHandle()">{{ $t('export') }}</el-button>
</el-form-item>
<el-form-item>
<el-button type="info" v-if="$hasPermission('partymembers:exporttemplate')"
<el-button type="success" v-if="$hasPermission('partymembers:exporttemplate')"
@click="exportMoudleHandle()">导出模板</el-button>
</el-form-item>
<el-form-item>
@ -104,44 +116,58 @@
header-align="center"
align="center"
width="50"></el-table-column> -->
<el-table-column label="序号" header-align="center" align="center" width="50px">
<template slot-scope="scope">
{{scope.$index+1}}
</template>
</el-table-column>
<el-table-column prop="realName"
label="姓名"
header-align="center"
align="center"></el-table-column>
align="center"
width="150"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
width="110"
header-align="center"
align="center"></el-table-column>
align="center"
width="200"></el-table-column>
<el-table-column prop="identityNo"
label="身份证号"
header-align="center"
align="center"
width="180"></el-table-column>
<!--<el-table-column prop="post"-->
<!--label="职务"-->
<!--header-align="center"-->
<!--align="center"></el-table-column>-->
<!--<el-table-column prop="cadreFlag"-->
<!--label="干部下沉"-->
<!--:formatter="formatCadre"-->
<!--header-align="center"-->
<!--align="center"></el-table-column>-->
<!--<el-table-column prop="partyOrganization"-->
<!--label="所在党委"-->
<!--header-align="center"-->
<!--align="center"></el-table-column>-->
width="200"></el-table-column>
<el-table-column prop="post"
label="职务"
header-align="center"
align="center"
v-if="false"></el-table-column>
<el-table-column prop="cadreFlag"
label="干部下沉"
:formatter="formatCadre"
header-align="center"
align="center"
v-if="false"></el-table-column>
<el-table-column prop="partyOrganization"
label="所在党委"
header-align="center"
align="center"
v-if="false"></el-table-column>
<el-table-column prop="registFlag"
label="注册状态"
header-align="center"
align="center" :formatter="formatregistFlag"></el-table-column>
align="center" :formatter="formatregistFlag"
width="100"></el-table-column>
<el-table-column prop="registTime"
label="认证时间"
width="180"
header-align="center"
align="center"></el-table-column>
align="center"
width="180"></el-table-column>
<el-table-column prop="allDeptNames"
label="街道-社区-网格" min-width="200" show-overflow-tooltip> </el-table-column>
label="街道-社区-网格"
min-width="300"
show-overflow-tooltip
header-align="center"
align="center"> </el-table-column>
<el-table-column :label="$t('handle')"
fixed="right"
header-align="center"
@ -245,6 +271,22 @@ export default {
dictValue: '2'
}
],
pickerBeginDateBefore: {
disabledDate: (time) => {
let beginDateVal = this.dataForm.endTime
if (beginDateVal) {
return time.getTime() > new Date(beginDateVal + ' 00:00:00').getTime()
}
}
},
pickerBeginDateAfter: {
disabledDate: (time) => {
let EndDateVal = this.dataForm.startTime
if (EndDateVal) {
return time.getTime() < new Date(EndDateVal + ' 00:00:00').getTime()
}
}
},
timeRange: [],
upLoadUrl: '',
faultDataVisible: false,
@ -292,13 +334,50 @@ export default {
.catch(() => { })
// this.getStreetList()
this.getRegistOptions()
this.initTime()
// this.getPostOptions()
this.uploadUrl = `${window.SITE_CONFIG['apiURL']}/app-user/partymembers/importExcel?token=${Cookies.get('token')}`
},
methods: {
selectedTime () {
this.dataForm.startTime = this.timeRange[0]
this.dataForm.endTime = this.timeRange[1]
initTime () {
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
this.time = [start, end]
let year = start.getFullYear()
let month = start.getMonth() + 1
if (month < 10) {
month = '0' + month
}
let date = start.getDate()
if (date < 10) {
date = '0' + date
}
let startDate = year + '-' + month + '-' + date
let yearend = end.getFullYear()
let monthend = end.getMonth() + 1
if (monthend < 10) {
monthend = '0' + monthend
}
let dateend = end.getDate()
if (dateend < 10) {
dateend = '0' + dateend
}
let endDate = yearend + '-' + monthend + '-' + dateend
this.dataForm.startTime = startDate
this.dataForm.endTime = endDate
},
btKeyUpRealName (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.realName = e.target.value
},
btKeyUpMobile (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.mobile = e.target.value
},
btKeyUpIdentityNo (e) {
e.target.value = e.target.value.replace(/[`~!#$%^&*()_\+=<>?:"{}|~!#¥%……&*()={}|《》?:“”【】\\[\]、;‘’,。、\s+]/g, '')
this.dataForm.identityNo = e.target.value
},
getCommunityList () {
if (this.dataForm.streetId === '') {

Loading…
Cancel
Save