调整走访对象跨应用跳转特殊人群
This commit is contained in:
@@ -10,23 +10,18 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Detail from './detail'
|
||||
import Add from './add'
|
||||
import Detail from './components/detail'
|
||||
|
||||
export default {
|
||||
name: 'AppSpecialPeople',
|
||||
appName: '特殊人群',
|
||||
|
||||
data() {
|
||||
return {
|
||||
component: 'Detail',
|
||||
component: Detail,
|
||||
params: {},
|
||||
refresh: true
|
||||
}
|
||||
},
|
||||
|
||||
components: {Detail, Add},
|
||||
|
||||
methods: {
|
||||
onChange(e) {
|
||||
this.params = e.params
|
||||
|
||||
@@ -208,7 +208,6 @@ export default {
|
||||
computed: {...mapState(['user'])},
|
||||
created() {
|
||||
this.getType()
|
||||
this.typeConfirm([{value: "1adc7c0963e14b06bce444ab6ed49fc5", label: "测试居民档案选择器"}])
|
||||
},
|
||||
onShow() {
|
||||
document.title = '新增人员'
|
||||
@@ -445,7 +444,7 @@ export default {
|
||||
this.$u.toast('提交成功')
|
||||
uni.$emit('specialPeopleList')
|
||||
setTimeout(() => {
|
||||
uni.navigateBack()
|
||||
uni.navigateBack({})
|
||||
}, 600)
|
||||
}
|
||||
})
|
||||
|
||||
@@ -1,22 +1,24 @@
|
||||
<template>
|
||||
<div class="detail">
|
||||
<div class="tab-select">
|
||||
<div class="item" :class="tabIndex == index ? 'active' : ''" v-for="(item, index) in tabs" :key="index" @click="tabClick(index)">{{ item }}<span></span></div>
|
||||
<div class="item" :class="tabIndex == index ? 'active' : ''" v-for="(item, index) in tabs" :key="index"
|
||||
@click="tabClick(index)">{{ item }}<span></span></div>
|
||||
</div>
|
||||
|
||||
<div class="area-select">
|
||||
<div class="select-content">
|
||||
<div class="area-content">
|
||||
<AiAreaPicker :areaId="user.areaId" v-model="areaId" @select="areaSelect" :name.sync="areaName">
|
||||
<img src="./img/local-icon.png" alt="" />
|
||||
<img src="../img/local-icon.png" alt=""/>
|
||||
<span class="label" v-if="areaName">{{ areaName }}</span>
|
||||
<span v-else>请选择</span>
|
||||
<u-icon name="arrow-down" color="#666" size="24" />
|
||||
<u-icon name="arrow-down" color="#666" size="24"/>
|
||||
</AiAreaPicker>
|
||||
</div>
|
||||
<div class="search-input" v-if="tabIndex">
|
||||
<img src="./img/search-icon.png" alt="" />
|
||||
<u-input type="text" placeholder="请输入姓名" placeholder-style="color:#999;font-size:13px;" height="18" v-model="name" @confirm="getUserList" :clearable="false" maxlength="6" />
|
||||
<img src="../img/search-icon.png" alt=""/>
|
||||
<u-input type="text" placeholder="请输入姓名" placeholder-style="color:#999;font-size:13px;" height="18"
|
||||
v-model="name" @confirm="getUserList" :clearable="false" maxlength="6"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -29,7 +31,7 @@
|
||||
<h3>{{ item.value }}</h3>
|
||||
<p>{{ item.label }}</p>
|
||||
</div>
|
||||
<AiEmpty v-if="!statisticsList.length" />
|
||||
<AiEmpty v-if="!statisticsList.length"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="info-content">
|
||||
@@ -47,12 +49,12 @@
|
||||
<div class="item-content" v-for="(item, index) in userList" :key="index">
|
||||
<div class="title" @click="showUserType(index)">
|
||||
<h2>{{ item.label }}</h2>
|
||||
<img src="./img/down-icon.png" alt="" :class="item.check ? 'img-active' : ''" />
|
||||
<img src="../img/down-icon.png" alt="" :class="item.check ? 'img-active' : ''"/>
|
||||
</div>
|
||||
<div class="user-list" v-if="item.check">
|
||||
<div class="user-item" v-for="(e, indexs) in item.value" :key="indexs" v-if="item.value && item.value.length">
|
||||
<div class="user-img">
|
||||
<img src="./img/user-img.png" alt="" />
|
||||
<img src="../img/user-img.png" alt=""/>
|
||||
</div>
|
||||
<div class="user-info">
|
||||
<p class="name">{{ e.name }}</p>
|
||||
@@ -73,7 +75,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { mapState } from 'vuex'
|
||||
import {mapState} from 'vuex'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
@@ -88,7 +91,7 @@ export default {
|
||||
name: '',
|
||||
}
|
||||
},
|
||||
computed: { ...mapState(['user']) },
|
||||
computed: {...mapState(['user'])},
|
||||
created() {
|
||||
this.$dict.load('appSpecialTypeFive').then(() => {
|
||||
this.areaId = this.user.areaId
|
||||
@@ -168,7 +171,7 @@ export default {
|
||||
// this.$emit('change', {
|
||||
// type: 'Add',
|
||||
// })
|
||||
uni.navigateTo({ url: './add' })
|
||||
uni.navigateTo({url: './add'})
|
||||
},
|
||||
idNumberInit(idNumber) {
|
||||
if (!idNumber) {
|
||||
@@ -200,6 +203,7 @@ export default {
|
||||
line-height: 96px;
|
||||
background: #3975c6;
|
||||
display: flex;
|
||||
|
||||
.item {
|
||||
flex: 1;
|
||||
text-align: center;
|
||||
@@ -207,11 +211,13 @@ export default {
|
||||
font-family: PingFangSC-Regular, PingFang SC;
|
||||
color: #cddcf0;
|
||||
}
|
||||
|
||||
.active {
|
||||
font-family: PingFangSC-Medium, PingFang SC;
|
||||
font-weight: 500;
|
||||
position: relative;
|
||||
color: #fff;
|
||||
|
||||
span {
|
||||
width: 48px;
|
||||
height: 4px;
|
||||
@@ -223,11 +229,13 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.area-select {
|
||||
width: 100%;
|
||||
background: #fff;
|
||||
padding-left: 32px;
|
||||
box-sizing: border-box;
|
||||
|
||||
.select-content {
|
||||
width: 100%;
|
||||
padding: 24px 32px 24px 0;
|
||||
@@ -238,19 +246,22 @@ export default {
|
||||
color: #333;
|
||||
line-height: 44px;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
|
||||
.area-content {
|
||||
width: calc(100% - 402px);
|
||||
line-height: 64px;
|
||||
|
||||
img {
|
||||
width: 42px;
|
||||
vertical-align: middle;
|
||||
margin-right: 16px;
|
||||
}
|
||||
|
||||
.u-icon {
|
||||
margin-left: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
.search-input {
|
||||
width: 402px;
|
||||
height: 64px;
|
||||
@@ -259,6 +270,7 @@ export default {
|
||||
padding: 14px 32px 14px 64px;
|
||||
box-sizing: border-box;
|
||||
position: relative;
|
||||
|
||||
img {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
@@ -267,6 +279,7 @@ export default {
|
||||
top: 18px;
|
||||
left: 24px;
|
||||
}
|
||||
|
||||
::v-deep .u-input {
|
||||
display: inline-block;
|
||||
width: 240px;
|
||||
@@ -275,11 +288,13 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.info-content {
|
||||
width: calc(100% - 64px);
|
||||
background: #fff;
|
||||
border-radius: 8px;
|
||||
margin: 24px 32px 0;
|
||||
|
||||
.title {
|
||||
padding-left: 32px;
|
||||
line-height: 94px;
|
||||
@@ -289,13 +304,16 @@ export default {
|
||||
font-weight: 500;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.num-content {
|
||||
overflow: hidden;
|
||||
|
||||
.num-item {
|
||||
float: left;
|
||||
width: 33%;
|
||||
padding: 40px 0;
|
||||
text-align: center;
|
||||
|
||||
h3 {
|
||||
font-size: 64px;
|
||||
font-family: DINAlternate-Bold, DINAlternate;
|
||||
@@ -304,6 +322,7 @@ export default {
|
||||
line-height: 74px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
p {
|
||||
font-size: 28px;
|
||||
font-family: PingFangSC-Medium, PingFang SC;
|
||||
@@ -313,6 +332,7 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.color-org {
|
||||
.num-item {
|
||||
h3 {
|
||||
@@ -321,8 +341,10 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.item-content {
|
||||
margin-bottom: 4px;
|
||||
|
||||
.title {
|
||||
width: 100%;
|
||||
height: 108px;
|
||||
@@ -332,36 +354,45 @@ export default {
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
h2 {
|
||||
font-size: 32px;
|
||||
font-family: PingFangSC-Semibold, PingFang SC;
|
||||
font-weight: 600;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 34px;
|
||||
height: 34px;
|
||||
margin-top: 38px;
|
||||
transition: all 0.3s ease-in-out;
|
||||
}
|
||||
|
||||
.img-active {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
}
|
||||
|
||||
.user-list {
|
||||
background-color: #fff;
|
||||
|
||||
.user-item {
|
||||
padding: 24px 32px;
|
||||
display: flex;
|
||||
|
||||
.user-img {
|
||||
width: 112px;
|
||||
|
||||
img {
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
}
|
||||
}
|
||||
|
||||
.user-info {
|
||||
width: 100%;
|
||||
|
||||
.name {
|
||||
font-size: 32px;
|
||||
font-family: PingFangSC-Medium, PingFang SC;
|
||||
@@ -370,6 +401,7 @@ export default {
|
||||
line-height: 44px;
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.phone {
|
||||
width: 100%;
|
||||
font-size: 26px;
|
||||
@@ -383,6 +415,7 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.text {
|
||||
height: 96px;
|
||||
line-height: 96px;
|
||||
@@ -390,12 +423,14 @@ export default {
|
||||
font-size: 28px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.footer {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.btn {
|
||||
width: 100%;
|
||||
height: 112px;
|
||||
@@ -1,7 +1,9 @@
|
||||
<template>
|
||||
<div class="selectType">
|
||||
<div class="header-top" v-if="!showType">
|
||||
<u-search v-model="keyword" placeholder="请输入姓名" :show-action="false" bg-color="#F5F5F5" search-icon-color="#CCCCCC" placeholder-color="#999999" @search="handerSearch" @clear="handerClear"></u-search>
|
||||
<u-search v-model="keyword" placeholder="请输入姓名" :show-action="false" bg-color="#F5F5F5"
|
||||
search-icon-color="#CCCCCC" placeholder-color="#999999" @search="handerSearch"
|
||||
@clear="handerClear"></u-search>
|
||||
</div>
|
||||
|
||||
<div class="header-middle">
|
||||
@@ -15,12 +17,12 @@
|
||||
|
||||
<div v-if="typeList.length > 0">
|
||||
<div class="cards" v-for="(item, i) in typeList" :key="i" @click="toUserSelect(item)">
|
||||
<img src="./img/tx@2x.png" alt="" />
|
||||
<img src="./img/tx@2x.png" alt=""/>
|
||||
|
||||
<div class="rightes">
|
||||
<div class="applicationNames">{{ item.applicationName }}</div>
|
||||
|
||||
<img src="./img/2.png" alt="" class="imgs" />
|
||||
<img src="./img/2.png" alt="" class="imgs"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -32,10 +34,10 @@
|
||||
<div v-if="userList.length > 0">
|
||||
<div class="cards" v-for="(e, index) in userList" :key="index">
|
||||
<div class="imges">
|
||||
<img src="./img/xzh.png" alt="" class="imgselect" v-if="e.isChecked" @click="userClick(e, index)" />
|
||||
<img src="./img/xz.png" alt="" class="imgselect" v-else @click="userClick(e, index)" />
|
||||
<img src="./img/xzh.png" alt="" class="imgselect" v-if="e.isChecked" @click="userClick(e, index)"/>
|
||||
<img src="./img/xz.png" alt="" class="imgselect" v-else @click="userClick(e, index)"/>
|
||||
|
||||
<img src="./img/tx@2x.png" alt="" class="avatras" />
|
||||
<img src="./img/tx@2x.png" alt="" class="avatras"/>
|
||||
</div>
|
||||
|
||||
<div class="rights">
|
||||
@@ -49,8 +51,9 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="subBtn" @click="submit">
|
||||
<div>确定选择</div>
|
||||
<div class="subBtn" flex>
|
||||
<div @click="gotoSpecialPersion">新增</div>
|
||||
<div @click="submit">确定选择</div>
|
||||
</div>
|
||||
|
||||
<!-- <AiBck /> -->
|
||||
@@ -79,7 +82,8 @@ export default {
|
||||
onLoad() {
|
||||
this.getTypeList()
|
||||
},
|
||||
onShow() {},
|
||||
onShow() {
|
||||
},
|
||||
methods: {
|
||||
userClick(row, index) {
|
||||
if (this.userList[index].isChecked) {
|
||||
@@ -113,7 +117,7 @@ export default {
|
||||
uni.showLoading({
|
||||
title: '加载中',
|
||||
})
|
||||
this.$http.post(`/app/appapplicationinfo/list?appId=${this.appId}¤t=${this.current}&size=${999}`, { searchParam: this.keyword }).then((res) => {
|
||||
this.$http.post(`/app/appapplicationinfo/list?appId=${this.appId}¤t=${this.current}&size=${999}`, {searchParam: this.keyword}).then((res) => {
|
||||
if (res.code == 0) {
|
||||
res.data.records.map((item) => {
|
||||
item.isChecked = false
|
||||
@@ -126,7 +130,11 @@ export default {
|
||||
|
||||
submit() {
|
||||
if (this.selectUser.id != null) {
|
||||
uni.$emit('goBack', { selectUser: this.selectUser, applicationName: this.applicationName, applicationId: this.applicationId })
|
||||
uni.$emit('goBack', {
|
||||
selectUser: this.selectUser,
|
||||
applicationName: this.applicationName,
|
||||
applicationId: this.applicationId
|
||||
})
|
||||
uni.navigateBack()
|
||||
} else {
|
||||
return this.$u.toast('请选择人员')
|
||||
@@ -165,6 +173,9 @@ export default {
|
||||
this.current = 1
|
||||
this.getUsers()
|
||||
},
|
||||
gotoSpecialPersion() {
|
||||
uni.navigateTo({url: '/apps/AppSpecialPeople/add'})
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
@@ -173,6 +184,7 @@ export default {
|
||||
.selectType {
|
||||
height: 100%;
|
||||
background: #fff;
|
||||
|
||||
.header-top {
|
||||
background: #fff;
|
||||
padding: 20px 32px;
|
||||
@@ -180,11 +192,12 @@ export default {
|
||||
|
||||
.header-middle {
|
||||
padding-bottom: 140px;
|
||||
|
||||
.hint {
|
||||
padding: 0 20px 0 32px;
|
||||
height: 112px;
|
||||
line-height: 112px;
|
||||
box-shadow: 0px 1px 0px 0px #e4e5e6;
|
||||
box-shadow: 0 1px 0 0 #e4e5e6;
|
||||
font-size: 30px;
|
||||
font-weight: 500;
|
||||
}
|
||||
@@ -208,6 +221,7 @@ export default {
|
||||
height: 74px;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.rightes {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
@@ -215,11 +229,13 @@ export default {
|
||||
align-items: center;
|
||||
margin-left: 32px;
|
||||
border-bottom: 1px solid #e4e5e6;
|
||||
|
||||
.applicationNames {
|
||||
font-size: 36px;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.imgs {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
@@ -242,6 +258,7 @@ export default {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 200px;
|
||||
|
||||
.imgselect {
|
||||
width: 48px;
|
||||
height: 48px;
|
||||
@@ -263,11 +280,13 @@ export default {
|
||||
margin-left: 32px;
|
||||
border-bottom: 1px solid #e4e5e6;
|
||||
padding-right: 40px;
|
||||
|
||||
.applicationNames {
|
||||
font-size: 36px;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.idNumbers {
|
||||
color: #666;
|
||||
}
|
||||
@@ -280,9 +299,11 @@ export default {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
width: 100vw;
|
||||
height: 118px;
|
||||
background: #f4f8fb;
|
||||
justify-content: flex-end;
|
||||
|
||||
div {
|
||||
width: 192px;
|
||||
height: 80px;
|
||||
@@ -293,7 +314,6 @@ export default {
|
||||
font-size: 32px;
|
||||
color: #fff;
|
||||
margin: 20px 34px 0 0;
|
||||
float: right;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user