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