Browse Source

Merge remote-tracking branch 'origin/release/partyAuthentication'

master partyAuthenticate
liuchuang 5 years ago
parent
commit
8ac6a5e6e7
  1. 6
      src/views/modules/user/hasAuthenticationpartymembers.vue
  2. 152
      src/views/modules/user/identityno-repeat.vue
  3. 290
      src/views/modules/user/party-review.vue
  4. 312
      src/views/modules/user/party-wait-authentication.vue
  5. 111
      src/views/modules/user/partymembers.vue
  6. 181
      src/views/modules/user/real-name-repeat.vue
  7. 9
      src/views/modules/user/user-add-or-update.vue

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

@ -265,13 +265,13 @@ export default {
},
formatRegist: function (row, column) {
if (row.registFlag === '1') {
return ''
return '自动认证'
} else if (row.registFlag === '0') {
return ''
return '未认证'
} else if (row.registFlag === '2') {
return '手动认证'
} else {
return '未'
return '未认证'
}
},
importData () {

152
src/views/modules/user/identityno-repeat.vue

@ -0,0 +1,152 @@
<template>
<el-dialog :visible="visible"
append-to-body
@close="visible = false"
title="提示-身份证号重复">
<el-form :model="dataForm"
:rules="dataRule"
ref="dataForm"
@keyup.enter.native="dataFormSubmitHandle()"
:label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<p>
党员库中存在与该用户相同身份证号的用户用户信息如下
</p>
<el-table v-loading="dataListLoading"
:data="partyMembers"
border
@row-click.native="detail"
style="width: 100%;">
<el-table-column label="选择"
align="center"
width="50px">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.checked"
@change="changeCurrentRow($event, scope.$index, scope.row.id)" >
</el-checkbox>
</template>
</el-table-column>
<el-table-column label="序号"
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>
<el-table-column prop="identityNo"
label="身份证号"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
header-align="center"
align="center"></el-table-column>
</el-table>
<p style="font-size: 13px;color: red;">
注意通过并更新党员库信息会将党员库中的原始数据更新并将用户认证通过为党员请谨慎操作
</p>
</el-form>
<template slot="footer">
<el-button type="primary"
:disabled="isAble"
@click="passAndUpdatePartyMemberInfo()">{{ '通过并更新党员库信息' }}</el-button>
<el-button @click="visible = false">{{ $t('cancel') }}</el-button>
</template>
</el-dialog>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
export default {
mixins: [mixinViewModule],
data () {
return {
visible: false,
isAble: false,
dataForm: {
id: '',
partyFlag: '',
state: '',
remark: '',
realName: '',
mobile: '',
identityNo: '',
partyMemberId: ''
},
partyMembers: []
}
},
computed: {
dataRule () {
return {
}
}
},
methods: {
init () {
this.visible = true
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
this.dataForm.partyMemberId = ''
for (let index in this.partyMembers) {
this.partyMembers[index].checked = false
}
})
},
changeCurrentRow (val, rowIndex, id) {
const data = this.partyMembers
for (let index in data) {
let index1 = parseInt(index)
if (index1 === rowIndex) {
data[index1].checked = val
if (val) {
this.dataForm.partyMemberId = id
} else {
this.dataForm.partyMemberId = ''
}
} else {
data[index1].checked = false
}
}
this.partyMembers = data
},
detail (row, column) {
if (column.property === 'checked') {
}
},
passAndUpdatePartyMemberInfo () {
if (this.dataForm.partyMemberId === '') {
return this.$message.error('请选择一条更新记录')
}
this.isAble = true
let postData = {
userId: this.dataForm.id,
state: this.dataForm.state,
partyFlag: this.dataForm.partyFlag,
remark: this.dataForm.remark,
realName: this.dataForm.realName,
mobile: this.dataForm.mobile,
identityNo: this.dataForm.identityNo,
partyMemberId: this.dataForm.partyMemberId
}
this.$http[!this.dataForm.id ? 'post' : 'post']('/app-user/user/updatePartyInfo/', postData).then(({ data: res }) => {
this.isAble = false
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.visible = false
this.$emit('secondDialogCallBack', true)
}
})
}).catch(() => { })
}
},
components: {
}
}
</script>

290
src/views/modules/user/party-review.vue

@ -0,0 +1,290 @@
<template>
<el-dialog :visible.sync="visible"
title="审核"
:modal-append-to-body="false"
:close-on-click-modal="false"
:close-on-press-escape="false">
<el-form :model="dataForm"
:rules="dataRule"
ref="dataForm"
@keyup.enter.native="dataFormSubmitHandle()"
:label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<el-form-item label="姓名"
prop="realName">
<el-input v-model="dataForm.realName"
placeholder="请输入"
clearable></el-input>
</el-form-item>
<el-form-item label="手机号"
prop="mobile">
<el-input v-model="dataForm.mobile"
placeholder="请输入"
clearable></el-input>
</el-form-item>
<el-form-item label="身份证号"
prop="identityNo">
<el-input v-model="dataForm.identityNo"
placeholder="请输入"
clearable></el-input>
</el-form-item>
<el-form-item label="认证网格"
prop="allDeptNames">
<span>{{dataForm.allDeptNames}}</span>
</el-form-item>
<el-form-item label="居民住址"
prop="address">
<span>{{dataForm.address}}</span>
</el-form-item>
<el-form-item label="认证历史"
prop="realName"
v-if="true">
<span>累计提交认证{{dataForm.totalSubmitNum}}&nbsp;&nbsp;&nbsp;通过{{dataForm.totalPassSubmitNum}},&nbsp;不通过{{dataForm.totalFailNum}}</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<el-button type="text" size="small" @click="userAuthenticateHistoryListHandle(dataForm.id)">查看详情</el-button>
</el-form-item>
<el-form-item label="是否党员"
prop="partyFlag">
<template>
<el-radio v-model="dataForm.partyFlag"
label="1"></el-radio>
<el-radio v-model="dataForm.partyFlag"
label="0"></el-radio>
</template>
<p style="font-size: 13px;color: red;line-height: 30px">
该用户会认证为党员并加入到已认证党列表<br>
该用户会认证为居民并加入已认证居民列表
</p>
</el-form-item>
<el-form-item label="扫码网格">
<el-table :data="userGridList"
style="width: 100%">
<el-table-column prop="allDeptNames"
label="街道-社区-网格">
</el-table-column>
<el-table-column prop="grid"
label="网格名称" v-if="false">
</el-table-column>
<el-table-column prop="leaderFlag"
label="是否为网格长"
:formatter="showLeaderFlagFormatter">
</el-table-column>
</el-table>
</el-form-item>
<el-form-item label="认证备注"
prop="remark">
<el-input v-model="dataForm.remark"
maxlength="50"
show-word-limit
placeholder="审核备注"></el-input>
</el-form-item>
</el-form>
<template slot="footer">
<el-button @click="visible = false">{{ $t('cancel') }}</el-button>
<el-button type="primary"
:disabled="isAble"
@click="dataFormSubmitHandle()">{{ $t('confirm') }}</el-button>
</template>
<!-- 身份证号重复 -->
<identityno-repeat v-if="identityNoRepeatVisible"
@secondDialogCallBack="secondDialogCallBack"
ref="identitynoRepeat"></identityno-repeat>
<!-- 姓名重复 -->
<real-name-repeat v-if="realNameRepeatVisible"
@secondDialogCallBack="secondDialogCallBack"
ref="realNameRepeat"></real-name-repeat>
<authenticate-history v-if="authenticateHistoryVisible"
ref="authenticateHistory"></authenticate-history>
</el-dialog>
</template>
<script>
import debounce from 'lodash/debounce'
import IdentitynoRepeat from './identityno-repeat'
import RealNameRepeat from './real-name-repeat'
import AuthenticateHistory from './authenticate-history'
export default {
data () {
return {
visible: false,
identityNoRepeatVisible: false,
realNameRepeatVisible: false,
isAble: false,
dataForm: {
id: '',
partyFlag: '',
cadreFlag: '',
state: '',
tagIds: [],
remark: '',
totalSubmitNum: '',
totalPassSubmitNum: '',
totalFailNum: '',
realName: '',
mobile: '',
identityNo: ''
},
authenticateHistoryVisible: false,
cadreOptions: [{ cadreFlag: '1', cadreTitle: '是' }, { cadreFlag: '0', cadreTitle: '否' }],
tagOptions: [],
userGridList: []
}
},
computed: {
dataRule () {
return {
realName: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
mobile: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
identityNo: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
partyFlag: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
]
}
}
},
methods: {
init () {
this.visible = true
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
if (this.dataForm.id) {
this.getInfo()
}
})
this.getTagOptions()
},
getTagOptions () {
this.$http.get(`/app-user/usertag/list`).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.tagOptions = res.data
}).catch(() => { })
},
//
getInfo () {
this.$http.get(`/app-user/user/${this.dataForm.id}`).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.dataForm = {
...this.dataForm,
...res.data
}
this.dataForm.partyFlag = ''
this.dataForm.tagIds = []
}).catch(() => { })
this.$http.get(`/app-user/usergrid/listUserGrid/${this.dataForm.id}`).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.userGridList = res.data
}).catch(() => { })
},
//
dataFormSubmitHandle: debounce(function () {
this.$refs['dataForm'].validate((valid) => {
if (!valid) {
return false
}
this.isAble = true
let postData = {
tagIds: this.dataForm.tagIds,
id: this.dataForm.id,
state: this.dataForm.state,
partyFlag: this.dataForm.partyFlag,
cadreFlag: this.dataForm.cadreFlag,
remark: this.dataForm.remark,
realName: this.dataForm.realName,
mobile: this.dataForm.mobile,
identityNo: this.dataForm.identityNo
}
this.$http[!this.dataForm.id ? 'post' : 'post']('/app-user/user/partyReview/', postData).then(({ data: res }) => {
this.isAble = false
if (res.code === 1) {
//
this.identityNoRepeatVisible = true
this.$nextTick(() => {
this.$refs.identitynoRepeat.dataForm.id = this.dataForm.id
this.$refs.identitynoRepeat.dataForm.partyFlag = this.dataForm.partyFlag
this.$refs.identitynoRepeat.dataForm.remark = this.dataForm.remark
this.$refs.identitynoRepeat.dataForm.realName = this.dataForm.realName
this.$refs.identitynoRepeat.dataForm.mobile = this.dataForm.mobile
this.$refs.identitynoRepeat.dataForm.identityNo = this.dataForm.identityNo
this.$refs.identitynoRepeat.partyMembers = res.data
this.$refs.identitynoRepeat.init()
})
} else if (res.code === 2) {
//
this.realNameRepeatVisible = true
this.$nextTick(() => {
this.$refs.realNameRepeat.dataForm.id = this.dataForm.id
this.$refs.realNameRepeat.dataForm.partyFlag = this.dataForm.partyFlag
this.$refs.realNameRepeat.dataForm.remark = this.dataForm.remark
this.$refs.realNameRepeat.dataForm.realName = this.dataForm.realName
this.$refs.realNameRepeat.dataForm.mobile = this.dataForm.mobile
this.$refs.realNameRepeat.dataForm.identityNo = this.dataForm.identityNo
this.$refs.realNameRepeat.partyMembers = res.data
this.$refs.realNameRepeat.init()
})
} else if (res.code !== 0) {
return this.$message.error(res.msg)
} else {
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.visible = false
this.$emit('refreshDataList')
}
})
}
}).catch(() => { })
})
}, 1000, { 'leading': true, 'trailing': false }),
registerResult (userId) {
this.$http.get(`api/message/sms/registerResult?userId=` + userId).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
}).catch(() => { })
},
//
userAuthenticateHistoryListHandle (userId) {
if (!this.dataForm.totalSubmitNum > 0) {
return this.$message.error('累计提交' + this.dataForm.totalSubmitNum + '次,没有认证历史记录')
}
this.authenticateHistoryVisible = true
this.$nextTick(() => {
this.$refs.authenticateHistory.dataForm.userId = userId
this.$refs.authenticateHistory.init()
})
},
showLeaderFlagFormatter (row, column, cellValue, index) {
if (cellValue === '1') {
return '是'
} else {
return '否'
}
},
secondDialogCallBack (value) {
if (value) {
this.visible = false
this.$emit('firstDialogCallBack', true)
}
}
},
components: {
IdentitynoRepeat,
RealNameRepeat,
AuthenticateHistory
}
}
</script>

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

@ -0,0 +1,312 @@
<template>
<el-card shadow="never"
class="aui-card--fill">
<div class="mod-epdc__user}">
<el-form :inline="true"
:model="dataForm"
@keyup.enter.native="getDataList()">
<el-form-item label="所属机构">
<el-cascader v-model="deptIdList"
:options="options"
:props="{ checkStrictly: true }"
clearable>
</el-cascader>
</el-form-item>
<el-form-item label="街道"
v-if="false">
<el-select v-model="dataForm.streetId"
clearable
placeholder="请选择"
@change="getCommunityList">
<el-option v-for="(item,index) in streetOptions"
:key="index"
:label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="社区"
v-if="false">
<el-select v-model="dataForm.communityId"
clearable
placeholder="请选择"
@change="getGridList">
<el-option v-for="(item,index) in communityOptions"
:key="index"
:label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="网格"
v-if="false">
<el-select v-model="dataForm.gridId"
clearable
placeholder="请选择">
<el-option v-for="(item,index) in gridOptions"
:key="index"
:label="item.name"
:value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="姓名">
<el-input v-model="dataForm.realName"
placeholder="请输入"
clearable></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="dataForm.mobile"
placeholder="请输入"
clearable></el-input>
</el-form-item>
<!-- <div class="block"> -->
<span class="demonstration">注册时间</span>&nbsp;&nbsp;
<el-date-picker @change='setRegistTime'
v-model="time"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>&nbsp;
<el-form-item>
<el-button @click="getDataList()">{{ $t('query') }}</el-button>
</el-form-item>
<el-form-item>
<el-button v-if="$hasPermission('epdc:user:export')"
type="primary"
@click="exportHandle()">{{ $t('export') }}</el-button>
</el-form-item>
<!-- </div> -->
</el-form>
<el-table v-loading="dataListLoading"
:data="dataList"
border
@selection-change="dataListSelectionChangeHandle"
style="width: 100%;">
<el-table-column label="序号"
width="70px"><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>
<el-table-column prop="mobile"
label="手机号"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="identityNo"
label="身份证号"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="allDeptNames"
label="认证网格"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="address"
label="居住地址"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="updatedTime"
label="提交时间"
header-align="center"
align="center"></el-table-column>
<el-table-column :label="$t('handle')"
fixed="right"
header-align="center"
align="center"
width="150">
<template slot-scope="scope">
<el-button type="text"
size="small"
@click="partyReview(scope.row.id)">手动审核</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination :current-page="page"
:page-sizes="[10, 20, 50, 100]"
:page-size="limit"
:total="total"
layout="total, sizes, prev, pager, next, jumper"
@size-change="pageSizeChangeHandle"
@current-change="pageCurrentChangeHandle"></el-pagination>
<!-- 党员认证 -->
<party-review v-if="partyReviewVisible"
@firstDialogCallBack="firstDialogCallBack"
ref="partyReview"
@refreshDataList="getDataList"></party-review>
</div>
</el-card>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
import PartyReview from './party-review'
export default {
mixins: [mixinViewModule],
data () {
return {
mixinViewModuleOptions: {
getDataListURL: 'app-user/user/waitPartyPage',
getDataListIsPage: true,
deleteURL: '/app-use/user',
deleteIsBatch: true,
exportURL: '/app-user/user/exportWaitParty'
},
dataForm: {
id: '',
streetId: '',
communityId: '',
gridId: '',
realName: '',
mobile: '',
identityNo: '',
startTime: '',
endTime: '',
partyFlag: '0', // (0-1-)
state: '1'
},
deptIdList: [],
options: [],
partyReviewVisible: false,
streetOptions: [],
communityOptions: [],
gridOptions: [],
time: '',
tabFlag: '1', //
state: '未认证用户',
partyFlagOptions: [{ id: '1', name: '是' }, { id: '0', name: '否' }]
}
},
created () {
this.$http
.get(`/sys/user/deptOptions/getByLoginUser`)
.then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.options = res.data.options
})
.catch(() => { })
},
watch: {
'deptIdList': function (val) {
if (val.length === 0) {
this.dataForm.streetId = ''
this.dataForm.communityId = ''
this.dataForm.gridId = ''
}
if (val.length === 1) {
this.dataForm.streetId = this.deptIdList[0]
this.dataForm.communityId = ''
this.dataForm.gridId = ''
}
if (val.length === 2) {
this.dataForm.streetId = this.deptIdList[0]
this.dataForm.communityId = this.deptIdList[1]
this.dataForm.gridId = ''
}
if (val.length === 3) {
this.dataForm.streetId = this.deptIdList[0]
this.dataForm.communityId = this.deptIdList[1]
this.dataForm.gridId = this.deptIdList[2]
}
}
},
methods: {
getStreetList () {
this.$http.get(`/sys/dept/sublist/` + (localStorage.getItem('street') === null ? '1169154711480528897' : localStorage.getItem('street'))).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.streetOptions = res.data
}).catch(() => { })
},
getCommunityList () {
this.communityOptions = this.gridOptions = []
this.dataForm.communityId = this.dataForm.gridId = null
if (this.dataForm.streetId) {
this.$http.get(`/sys/dept/sublist/` + this.dataForm.streetId).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.communityOptions = res.data
}).catch(() => { })
}
},
getGridList () {
this.gridOptions = []
this.dataForm.gridId = null
if (this.dataForm.communityId) {
this.$http.get(`/sys/dept/sublist/` + this.dataForm.communityId).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.gridOptions = res.data
}).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') {
return '待审核'
} else if (state === '2') {
return '审核不通过'
} else if (state === '3') {
return '审核通过'
} else if (state === '0') {
return '已注册'
}
},
formatPartyFlag: function (row, column) {
return row.partyFlag === '1' ? '是' : row.state === '0' ? '未知' : '否'
},
//
getDataList () {
if (this.time === null) {
this.dataForm.startTime = ''
this.dataForm.endTime = ''
}
this.dataListLoading = true
this.$http.get(
this.mixinViewModuleOptions.getDataListURL,
{
params: {
order: this.order,
orderField: this.orderField,
page: this.mixinViewModuleOptions.getDataListIsPage ? this.page : null,
limit: this.mixinViewModuleOptions.getDataListIsPage ? this.limit : null,
...this.dataForm
}
}
).then(({ data: res }) => {
this.dataListLoading = false
if (res.code !== 0) {
this.dataList = []
this.total = 0
return this.$message.error(res.msg)
}
this.dataList = this.mixinViewModuleOptions.getDataListIsPage ? res.data.list : res.data
this.total = this.mixinViewModuleOptions.getDataListIsPage ? res.data.total : 0
}).catch(() => {
this.dataListLoading = false
})
},
partyReview (userId) {
this.partyReviewVisible = true
this.$nextTick(() => {
this.$refs.partyReview.dataForm.id = userId
this.$refs.partyReview.init()
})
},
firstDialogCallBack (value) {
if (value) {
this.getDataList()
}
}
},
components: {
PartyReview
}
}
</script>

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

@ -12,52 +12,6 @@
clearable>
</el-cascader>
</el-form-item>
<!-- <el-form-item label="街道">
<el-select v-model="dataForm.streetId"
clearable
placeholder="请选择"
@change="getCommunityList">
<el-option v-for="item in streetOptions"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="社区">
<el-select v-model="dataForm.communityId"
clearable
placeholder="请选择"
@change="getGridList">
<el-option v-for="item in communityOptions"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="网格">
<el-select v-model="dataForm.gridId"
clearable
placeholder="请选择">
<el-option v-for="item in gridOptions"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item> -->
<!-- <el-form-item label="注册状态">
<el-select v-model="dataForm.registFlag"
clearable
placeholder="请选择">
<el-option v-for="item in registOptions"
:key="item.dictValue"
:label="item.dictName"
:value="item.dictValue">
</el-option>
</el-select>
</el-form-item> -->
<br>
<el-form-item label="姓名">
<el-input v-model="dataForm.realName"
@ -85,6 +39,16 @@
</el-select>
</el-form-item>
<br>
<el-form-item label="注册状态">
<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>
<el-form-item label="注册时间">
<el-date-picker v-model="timeRange"
type="daterange"
@ -161,14 +125,14 @@
:formatter="formatCadre"
header-align="center"
align="center"></el-table-column>
<!-- <el-table-column prop="tagName"
label="角色"
header-align="center"
align="center"></el-table-column> -->
<el-table-column prop="partyOrganization"
label="所在党委"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="registFlag"
label="注册状态"
header-align="center"
align="center" :formatter="formatregistFlag"></el-table-column>
<el-table-column prop="registTime"
label="认证时间"
header-align="center"
@ -257,11 +221,27 @@ export default {
startTime: '',
endTime: ''
},
// streetOptions: [],
communityOptions: [],
gridOptions: [],
registOptions: [],
// postOptions: [],
registFlagOptions: [
{
dictName: '全部',
dictValue: ''
},
{
dictName: '未认证',
dictValue: '0'
},
{
dictName: '自动认证',
dictValue: '1'
},
{
dictName: '手动认证',
dictValue: '2'
}
],
timeRange: [],
upLoadUrl: '',
faultDataVisible: false,
@ -317,14 +297,6 @@ export default {
this.dataForm.startTime = this.timeRange[0]
this.dataForm.endTime = this.timeRange[1]
},
// getStreetList () {
// this.$http.get(`/sys/dept/sublist/` + (localStorage.getItem('street') === null ? '1169154711480528897' : localStorage.getItem('street'))).then(({ data: res }) => {
// if (res.code !== 0) {
// return this.$message.error(res.msg)
// }
// this.streetOptions = res.data
// }).catch(() => { })
// },
getCommunityList () {
if (this.dataForm.streetId === '') {
this.communityOptions = []
@ -364,20 +336,22 @@ export default {
this.registOptions = res.data
}).catch(() => { })
},
// getPostOptions () {
// this.$http.get(`/sys/dict/sublist/1168770417290366977`).then(({ data: res }) => {
// if (res.code !== 0) {
// return this.$message.error(res.msg)
// }
// this.postOptions = res.data
// }).catch(() => { })
// },
formatCadre: function (row, column) {
return row.cadreFlag === '1' ? '是' : row.cadreFlag === '0' ? '否' : '未知'
},
formatRegist: function (row, column) {
return row.registFlag === '1' ? '是' : row.registFlag === '0' ? '否' : '未知'
},
formatregistFlag (row, column) {
let registFlag = row.registFlag
if (registFlag === '0') {
return '未认证'
} else if (registFlag === '1') {
return '自动认证'
} else if (registFlag === '2') {
return '手动认证'
}
},
importData () {
},
//
@ -387,6 +361,7 @@ export default {
this.dataForm.endTime = ''
}
this.dataListLoading = true
console.log(JSON.stringify(this.dataForm))
this.$http.get(
this.mixinViewModuleOptions.getDataListURL,
{

181
src/views/modules/user/real-name-repeat.vue

@ -0,0 +1,181 @@
<template>
<el-dialog :visible="visible"
append-to-body
@close="visible = false"
title="提示-姓名重复">
<el-form :model="dataForm"
:rules="dataRule"
ref="dataForm"
@keyup.enter.native="dataFormSubmitHandle()"
:label-width="$i18n.locale === 'en-US' ? '120px' : '80px'">
<p>
党员库中存在与该用户相同姓名的用户用户信息如下
</p>
<el-table v-loading="dataListLoading"
:data="partyMembers"
border
@row-click.native="detail"
style="width: 100%;">
<el-table-column label="选择"
align="center"
width="50px">
<template slot-scope="scope">
<el-checkbox v-model="scope.row.checked"
@change="changeCurrentRow($event, scope.$index, scope.row.id)" >
</el-checkbox>
</template>
</el-table-column>
<el-table-column label="序号"
width="70px"><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>
<el-table-column prop="identityNo"
label="身份证号"
header-align="center"
align="center"></el-table-column>
<el-table-column prop="mobile"
label="手机号"
header-align="center"
align="center"></el-table-column>
</el-table>
<p style="font-size: 13px;color: red;">
注意通过则将该用户作为新党员认证通过并加入到已认证党员列表通过并更新党员库会将党员库中的原始数据更新并将用户认证通过为党员同时加入已认证党员列表请确认用户信息后谨慎操作
</p>
</el-form>
<template slot="footer">
<el-button type="primary"
:disabled="isAble"
@click="passPartyReview()">{{ '通过' }}</el-button>
<el-button type="primary"
:disabled="isAble"
@click="passAndUpdatePartyMemberInfo()">{{ '通过并更新党员库信息' }}</el-button>
<el-button @click="visible = false">{{ $t('cancel') }}</el-button>
</template>
</el-dialog>
</template>
<script>
import mixinViewModule from '@/mixins/view-module'
export default {
mixins: [mixinViewModule],
data () {
return {
visible: false,
isAble: false,
dataForm: {
id: '',
partyFlag: '',
state: '',
remark: '',
realName: '',
mobile: '',
identityNo: '',
partyMemberId: ''
},
partyMembers: []
}
},
computed: {
dataRule () {
return {
}
}
},
methods: {
init () {
this.visible = true
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
this.dataForm.partyMemberId = ''
for (let index in this.partyMembers) {
this.partyMembers[index].checked = false
}
})
},
changeCurrentRow (val, rowIndex, id) {
const data = this.partyMembers
for (let index in data) {
let index1 = parseInt(index)
if (index1 === rowIndex) {
data[index1].checked = val
if (val) {
this.dataForm.partyMemberId = id
} else {
this.dataForm.partyMemberId = ''
}
} else {
data[index1].checked = false
}
}
this.partyMembers = data
},
detail (row, column) {
if (column.property === 'checked') {
}
},
passPartyReview () {
this.isAble = true
let postData = {
userId: this.dataForm.id,
state: this.dataForm.state,
partyFlag: this.dataForm.partyFlag,
remark: this.dataForm.remark,
realName: this.dataForm.realName,
mobile: this.dataForm.mobile,
identityNo: this.dataForm.identityNo
}
this.$http[!this.dataForm.id ? 'post' : 'post']('/app-user/user/insertPartyInfo/', postData).then(({ data: res }) => {
this.isAble = false
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.visible = false
this.$emit('secondDialogCallBack', true)
}
})
}).catch(() => { })
},
passAndUpdatePartyMemberInfo () {
if (this.dataForm.partyMemberId === '') {
return this.$message.error('请选择一条更新记录')
}
this.isAble = true
let postData = {
userId: this.dataForm.id,
state: this.dataForm.state,
partyFlag: this.dataForm.partyFlag,
remark: this.dataForm.remark,
realName: this.dataForm.realName,
mobile: this.dataForm.mobile,
identityNo: this.dataForm.identityNo,
partyMemberId: this.dataForm.partyMemberId
}
this.$http[!this.dataForm.id ? 'post' : 'post']('/app-user/user/updatePartyInfo/', postData).then(({ data: res }) => {
this.isAble = false
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.visible = false
this.$emit('secondDialogCallBack', true)
}
})
}).catch(() => { })
}
},
components: {
}
}
</script>

9
src/views/modules/user/user-add-or-update.vue

@ -38,7 +38,7 @@
prop="address">
<span>{{dataForm.address}}</span>
</el-form-item>
<el-form-item label="是否党员"
<!--<el-form-item label="是否党员"
prop="partyFlag">
<template>
<el-radio v-model="dataForm.partyFlag"
@ -46,7 +46,7 @@
<el-radio v-model="dataForm.partyFlag"
label="0"></el-radio>
</template>
</el-form-item>
</el-form-item>-->
<!-- <el-form-item label="干部下沉">
<el-select v-model="dataForm.cadreFlag"
clearable
@ -134,7 +134,7 @@ export default {
visible: false,
dataForm: {
id: '',
partyFlag: '',
partyFlag: '0',
cadreFlag: '',
state: '',
tagIds: [],
@ -152,9 +152,6 @@ export default {
computed: {
dataRule () {
return {
partyFlag: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],
state: [
{ required: true, message: this.$t('validate.required'), trigger: 'blur' }
],

Loading…
Cancel
Save