455 lines
10 KiB
Vue
455 lines
10 KiB
Vue
<template>
|
|
<view class="container">
|
|
<view class="title-back">
|
|
<view class="left-father" @click="goBack">
|
|
<image class="back-img" src="https://www.focusnu.com/media/directive/index/left.png" />
|
|
<view style="font-size: 30rpx;">入驻机构</view>
|
|
</view>
|
|
|
|
</view>
|
|
<view class="zhiling-box" style="margin-top: 30rpx;height: 120rpx;justify-content: flex-start;">
|
|
<view class="input-all">
|
|
<image
|
|
style="position: absolute;left: 20rpx;top: 50%;transform: translateY(-50%);width: 40rpx;height: 40rpx;"
|
|
src="https://www.focusnu.com/media/directive/index/search.png" />
|
|
<input style="font-size: 31rpx;" type="text" v-model="supervalue" placeholder="请输入入驻护理机构名称"
|
|
@confirm="search" />
|
|
<view @click="clearvalue" v-if="supervalue"
|
|
style="position: absolute;right: 20rpx;top: 50%;transform: translateY(-50%);width: 40rpx;height: 40rpx;display: flex;justify-content: center;align-items: center;border-radius: 50%;background-color: #EBEBEB;">
|
|
<image style="width: 20rpx;height: 20rpx;"
|
|
src="https://www.focusnu.com/media/directive/index/cha.png" />
|
|
</view>
|
|
|
|
</view>
|
|
<view class="tianjia" @click="search">
|
|
检索
|
|
</view>
|
|
</view>
|
|
<view style="width: 100%;display: flex;flex-wrap: wrap;">
|
|
<view v-for="(item,index) in hulijigouArray" :key="index" class="zhiling-box-card"
|
|
:style="hulitarget===index?{border:`4rpx solid #0093FF`}:{}"
|
|
style="margin-top: 30rpx;height: 300rpx;position: relative;width: 92%;flex-direction: column;"
|
|
@click="clickCard(index)">
|
|
<view style="position: absolute;right: 0rpx;bottom: -14rpx;" v-if="hulitarget===index">
|
|
<image style="width: 60rpx;height: 60rpx;"
|
|
src="https://www.focusnu.com/media/directive/index/lemon.png" />
|
|
</view>
|
|
|
|
<view class="card-font">
|
|
{{item.departName}}
|
|
</view>
|
|
<view class="gray-font">
|
|
{{ item.comLegalPerson }} | {{ item.tel }}
|
|
</view>
|
|
<view class="applying" v-if="item.employeesApiEntity?.status===`1`">
|
|
申请中
|
|
</view>
|
|
<view class="applysuccess" v-if="item.employeesApiEntity?.status===`2`">
|
|
申请通过
|
|
</view>
|
|
<view class="applyfail" v-if="item.employeesApiEntity?.status===`3`">
|
|
申请驳回
|
|
</view>
|
|
<view style="height: 50rpx;" v-if="!item.employeesApiEntity">
|
|
|
|
</view>
|
|
<view class="gray-bgc">
|
|
<!-- <image class="gray-img" src="https://www.focusnu.com/media/directive/index/ditu/bgc.png" /> -->
|
|
<!-- <image style="margin-left: 30rpx;height: 30rpx;width: 25rpx;margin-right: 30rpx;z-index: 1;"
|
|
src="https://www.focusnu.com/media/directive/index/ditu/mark.png" /> -->
|
|
<view style="color: #999999;z-index: 1;font-size: 27rpx;width: 90%;">
|
|
{{item.comRegisterAddress}}
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!-- 处理margin重叠 -->
|
|
<view style="height: 200rpx;">
|
|
|
|
</view>
|
|
<view class="button-father">
|
|
<view class="blue-button" @click="apply" v-if="buttonOpen">
|
|
申请
|
|
</view>
|
|
<view class="white-button" v-else>
|
|
申请
|
|
</view>
|
|
|
|
</view>
|
|
|
|
<u-popup v-model="popupshow" mode="bottom" border-radius="40">
|
|
<view class="popop-father">
|
|
<image style="width: 100rpx;height: 100rpx;"
|
|
src="https://www.focusnu.com/media/directive/index/tishi.png" />
|
|
<view class="popop-font">
|
|
入驻申请已提交,请到
|
|
<text style="color: #01A9FF;">
|
|
"我的-入驻审核"
|
|
</text>
|
|
|
|
查看审核进度
|
|
</view>
|
|
<view class="popop-blue" @click="jumpRuzhu()">
|
|
查看
|
|
</view>
|
|
</view>
|
|
</u-popup>
|
|
</view>
|
|
</template>
|
|
|
|
<script setup lang="ts">
|
|
import {
|
|
reactive,
|
|
ref,
|
|
onMounted,
|
|
onUnmounted
|
|
} from 'vue';
|
|
|
|
import { getOrgInfo, Apply } from './api.js'
|
|
|
|
|
|
|
|
const hulijigouArray = ref([])
|
|
const hulitarget = ref(-1)
|
|
const popupshow = ref(false);
|
|
const supervalue = ref("");
|
|
const jumpRuzhu = () => {
|
|
popupshow.value = false
|
|
uni.navigateTo({
|
|
url: "/pages/yuangongindex/workjoin"
|
|
})
|
|
}
|
|
const buttonOpen = ref(false);
|
|
const clickCard = (index : number) => {
|
|
if (hulitarget.value === index) {
|
|
hulitarget.value = -1;
|
|
buttonOpen.value = false;
|
|
} else {
|
|
hulitarget.value = index;
|
|
|
|
if (hulijigouArray.value[index].employeesApiEntity?.status == 1 || hulijigouArray.value[index].employeesApiEntity?.status == 2) {
|
|
buttonOpen.value = false;
|
|
} else {
|
|
buttonOpen.value = true;
|
|
}
|
|
}
|
|
}
|
|
const clearvalue = () => {
|
|
hulitarget.value = -1;
|
|
supervalue.value = ""
|
|
}
|
|
|
|
const goBack = () => {
|
|
uni.navigateBack()
|
|
}
|
|
|
|
const search = () => {
|
|
buttonOpen.value = false;
|
|
hulitarget.value = -1;
|
|
|
|
getOrgInfo(supervalue.value).then((res : any) => {
|
|
if (res.success) {
|
|
hulijigouArray.value = res.result.records
|
|
}
|
|
})
|
|
}
|
|
const sumbit = ref(false);
|
|
|
|
const apply = () => {
|
|
if(sumbit.value){
|
|
return
|
|
}
|
|
sumbit.value = true;
|
|
// 先拿出来
|
|
let data = uni.getStorageSync('staff')
|
|
|
|
// 如果是字符串需要先 parse
|
|
// let data = typeof storageData === 'string' ? JSON.parse(storageData) : { ...storageData }
|
|
|
|
// 避免污染原对象,拷贝一份
|
|
data = {
|
|
...data,
|
|
dateOfBirth: data.birthDate,
|
|
marriedOrNot: data.maritalStatus,
|
|
address: data.address,
|
|
emergencyContact: data.contactName,
|
|
emergencyTel: data.contactTel,
|
|
emergencyRelationship: data.contactRelationship,
|
|
hukouNature : data.hukouType,
|
|
idCardPositive : data.cardZmPath,
|
|
idCardNegative : data.cardFmPath,
|
|
healthCertificatePositive : data.healthZmPath,
|
|
healthCertificateNegative : data.healthFmPath,
|
|
bankPositive : data.bankZmPath,
|
|
bankNegative : data.bankFmPath,
|
|
qualification : data.qualificationPath,
|
|
noCrimeCertificate : data.noCrimeCertificate,
|
|
houseAddress : data.idCardAddress,
|
|
employeeId: data.id,
|
|
id: null,
|
|
createTime: null,
|
|
updateBy: null,
|
|
updateTime: null,
|
|
orgCode: hulijigouArray.value[hulitarget.value].orgCode
|
|
}
|
|
|
|
Apply(data).then((data : any) => {
|
|
if (data.success) {
|
|
popupshow.value = true
|
|
setTimeout(() => search(), 1000)
|
|
|
|
}
|
|
setTimeout(() => sumbit.value = false, 1000)
|
|
|
|
})
|
|
|
|
}
|
|
search()
|
|
</script>
|
|
|
|
<style lang="scss" scoped>
|
|
.container {
|
|
display: flex;
|
|
flex-direction: column;
|
|
min-height: 100vh;
|
|
width: 100%;
|
|
background-color: #F7F7F7;
|
|
position: relative;
|
|
}
|
|
|
|
.title-back {
|
|
margin-top: 100rpx;
|
|
width: 100%;
|
|
height: 100rpx;
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
}
|
|
|
|
.left-father {
|
|
display: flex;
|
|
align-items: center;
|
|
|
|
.back-img {
|
|
width: 45rpx;
|
|
height: 40rpx;
|
|
margin-left: 40rpx;
|
|
margin-right: 15rpx;
|
|
}
|
|
}
|
|
|
|
.tianjia {
|
|
width: 120rpx;
|
|
height: 70rpx;
|
|
background: linear-gradient(to right, #00C9FF, #0076FF);
|
|
color: #fff;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
border-radius: 30rpx;
|
|
margin-left: 10rpx;
|
|
}
|
|
|
|
.zhiling-box {
|
|
display: flex;
|
|
justify-content: space-around;
|
|
align-items: center;
|
|
|
|
width: 92%;
|
|
margin-left: 4%;
|
|
height: 110rpx;
|
|
background-color: #fff;
|
|
border-radius: 35rpx;
|
|
font-size: 32rpx;
|
|
border: 4rpx solid #fff;
|
|
}
|
|
|
|
|
|
|
|
.input-all {
|
|
width: 500rpx;
|
|
height: 65rpx;
|
|
border-radius: 30rpx;
|
|
background-color: #F7F7F7;
|
|
padding-left: 80rpx;
|
|
margin-left: 30rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
position: relative;
|
|
}
|
|
|
|
.popop-father {
|
|
width: 100%;
|
|
height: 600rpx;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.popop-font {
|
|
margin-top: 40rpx;
|
|
width: 70%;
|
|
text-align: center;
|
|
line-height: 40rpx;
|
|
font-size: 30rpx;
|
|
margin-bottom: 100rpx;
|
|
}
|
|
|
|
.popop-blue {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
width: 80%;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
height: 90rpx;
|
|
border-radius: 35rpx;
|
|
background: linear-gradient(to left, #00C9FF, #0076FF);
|
|
color: #fff;
|
|
font-size: 33rpx;
|
|
margin-bottom: 30rpx;
|
|
}
|
|
|
|
.button-father {
|
|
position: fixed;
|
|
bottom: 0rpx;
|
|
left: 0;
|
|
width: 100%;
|
|
display: flex;
|
|
justify-content: center;
|
|
background-color: #fff;
|
|
}
|
|
|
|
.blue-button {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
width: 80%;
|
|
height: 90rpx;
|
|
margin: 0rpx auto;
|
|
margin-bottom: 80rpx;
|
|
margin-top: 20rpx;
|
|
color: #fff;
|
|
background: linear-gradient(to left, #00C9FF, #0076FF);
|
|
border-radius: 35rpx;
|
|
font-size: 33rpx;
|
|
}
|
|
|
|
.white-button {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
width: 80%;
|
|
height: 90rpx;
|
|
margin: 0rpx auto;
|
|
margin-bottom: 80rpx;
|
|
margin-top: 20rpx;
|
|
// color: #fff;
|
|
background: linear-gradient(to bottom, #f3f3f5, #dee4e9);
|
|
border-radius: 35rpx;
|
|
font-size: 33rpx;
|
|
}
|
|
|
|
.zhiling-box-card {
|
|
display: flex;
|
|
width: 92%;
|
|
margin-left: 4%;
|
|
height: 150rpx;
|
|
background-color: #fff;
|
|
border-radius: 35rpx;
|
|
font-size: 32rpx;
|
|
border: 4rpx solid #fff;
|
|
overflow: hidden;
|
|
}
|
|
|
|
|
|
|
|
.applying {
|
|
// position: absolute;
|
|
// left: 20rpx;
|
|
// bottom: 20rpx;
|
|
background-color: #FFE8D3;
|
|
color: #FF7900;
|
|
width: 130rpx;
|
|
height: 50rpx;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
font-size: 28rpx;
|
|
border-radius: 10rpx;
|
|
margin-left: 35rpx;
|
|
margin-top: 25rpx;
|
|
// margin-top: 20rpx;
|
|
// margin-bottom: 20rpx;
|
|
}
|
|
|
|
.applysuccess {
|
|
// position: absolute;
|
|
// left: 20rpx;
|
|
// bottom: 20rpx;
|
|
background-color: #DEF1FF;
|
|
color: #0093FF;
|
|
width: 130rpx;
|
|
height: 50rpx;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
font-size: 28rpx;
|
|
border-radius: 10rpx;
|
|
margin-left: 35rpx;
|
|
margin-top: 25rpx;
|
|
// margin-bottom: 20rpx;
|
|
}
|
|
|
|
.applyfail {
|
|
// position: absolute;
|
|
// left: 20rpx;
|
|
// bottom: 20rpx;
|
|
background-color: #FFBFCF;
|
|
color: #FC3D7F;
|
|
width: 130rpx;
|
|
height: 50rpx;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
font-size: 28rpx;
|
|
border-radius: 10rpx;
|
|
margin-left: 35rpx;
|
|
margin-top: 20rpx;
|
|
// margin-bottom: 20rpx;
|
|
}
|
|
|
|
.card-font {
|
|
margin-left: 40rpx;
|
|
font-size: 32rpx;
|
|
margin-top: 30rpx;
|
|
}
|
|
|
|
.gray-font {
|
|
margin-left: 40rpx;
|
|
font-size: 31rpx;
|
|
margin-top: 10rpx;
|
|
color: #B1B1B1;
|
|
width: 100%;
|
|
}
|
|
|
|
.gray-bgc {
|
|
margin: 20rpx 40rpx;
|
|
width: 90%;
|
|
height: 75rpx;
|
|
border-radius: 10rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
position: relative;
|
|
|
|
.gray-img {
|
|
width: 100%;
|
|
height: 100%;
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
}
|
|
</style> |