提交 c6b28507 编写于 作者: bo.dang's avatar bo.dang

增加搜索

上级 b32b8b8d
...@@ -98,6 +98,22 @@ ...@@ -98,6 +98,22 @@
<el-button type="primary" @click="hideDeleteFrom">取 消</el-button> <el-button type="primary" @click="hideDeleteFrom">取 消</el-button>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog
title="导入错误提示"
:visible.sync="dialogVisible"
width="500px"
:close-on-click-modal="false"
@close="handleErrorClose"
center
>
<el-table :data="dialogErrorData" align="center">
<el-table-column property="rowNumber" label="行数" align="center"></el-table-column>
<el-table-column property="wrongData" label="错误提示" align="center"></el-table-column>
</el-table>
</el-dialog>
</div> </div>
</template> </template>
...@@ -184,7 +200,9 @@ export default { ...@@ -184,7 +200,9 @@ export default {
}, },
dialogOrg:false, dialogOrg:false,
deleteVisible: false, deleteVisible: false,
detelMessage: '' detelMessage: '',
dialogVisible: false,
dialogErrorData: []
} }
}, },
created() { created() {
...@@ -339,10 +357,10 @@ export default { ...@@ -339,10 +357,10 @@ export default {
if(res.data.successNum == 0 && res.data.wrongDataList.length > 0){ if(res.data.successNum == 0 && res.data.wrongDataList.length > 0){
this.$message({
type: 'error', this.dialogVisible = true;
message: res.message
}); this.dialogErrorData = res.data.wrongDataList;
} }
else { else {
this.$message({ this.$message({
...@@ -364,7 +382,10 @@ export default { ...@@ -364,7 +382,10 @@ export default {
// }; // };
// reader.readAsDataURL(file); // reader.readAsDataURL(file);
} },
handleErrorClose() {
this.dialogVisible = false;
},
} }
} }
</script> </script>
......
<template>
<div class="main-content" style="position: absolute;left:80px;z-index: 1">
<!--<div class="left-box left" style="background-color: white;" v-if="searchList && searchList.length > 0">-->
<div :id="searchId" class="left-box left" style="background-color: white;" v-if="searchList && searchList.length > 0">
<!-- 搜索列表 有搜索结果时-->
<!-- v-if="searchList && searchList.length > 0" v-infinite-scroll="loadMore" :infinite-scroll-disabled="busy"-->
<div class="search-list-wrap"
infinite-scroll-distance="5"
infinite-scroll-immediate-check="false"
>
<ul class="search-list">
<li v-for="(searchLi, index) in searchList" @mousedown="handleSearchLiClick(searchLi)">
<div class="left">
<p class="disease-name" v-html="searchLi.name"></p>
<div class="one-line">
<p class="alias" v-html="searchLi.alias"></p>
<p class="sign" v-if="searchLi.alias">|</p>
<p class="code">{{searchLi.hospitalName}}</p>
</div>
</div>
<!--<div class="right" v-if="isSearchLiSelected(searchLi)"><i class="el-icon-check"></i></div>-->
</li>
<!--<p v-if="busy" class="loading">加载中...</p>-->
<!--<p v-if="noMore" class="loading">没有更多了...</p>-->
</ul>
</div>
</div>
</div>
</template>
<script>
let vm = null;
export default {
name: "search-doctor",
components: {
},
props: {
searchList: {
type: Array,
default: []
},
searchId: {
type: Number | String,
default: 100
}
},
created() {
vm = this;
// $("#" + this.searchId).show();
},
data() {
return{}
},
mounted() {
// document.querySelector("#" + this.searchId).style.display = 'block';
},
methods: {
handleSearchLiClick(searchLi) {
console.log(this.searchId);
this.$emit('handleSearchLiClick', {
name: searchLi.name,
mobilePhone: searchLi.mobilePhone
})
},
}
}
</script>
<style lang="scss">
.main-content{
overflow: hidden;
.left{
float: left;
}
.left-box{
width: 270px;
height: 300px;
.common-diagnose{
width: 100%; height: 300px;
.title{
color: #303133;
font-size: 16px;
line-height: 40px;
margin-top: 10px;
.no-result{
font-size: 14px;
color: #e6a23c;
margin-left: 28px;
}
}
.list{
width: 100%; height: 250px;
overflow: hidden;
overflow-y: scroll;
/*.scroll-bar;*/
padding: 10px;
border: 1px solid #DCDFE6;
li{
height: 35px; line-height: 35px; padding: 0 15px;
background: #fff;
border: 1px solid #dcdfe6;
color: #606266;
cursor: pointer;
font-size: 12px;
&.active{
color: #fff;
background: #409eff;
border-color: #409eff;
}
display: inline-block;
margin: 0 10px 10px 0;
border-radius: 4px;
max-width: 350px;
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
}
}
.search-list-wrap{
width: 100%; height: 290px; margin-top: 10px;
border: 1px solid #DCDFE6;
overflow: hidden;
overflow-y: scroll;
/*.scroll-bar;*/
.search-list{
border-radius: 4px;
width: 100%;
padding: 10px;
li{
position: relative;
line-height: 30px;
overflow: hidden;
cursor: pointer;
font-size: 12px;
&:hover{
background: #eee;
}
.left{
width: 310px;
float: left;
span{
color: #ff8429;
}
.disease-name{
font-size: 14px;
}
.one-line{
width: 100%; overflow: hidden;
font-size: 12px; color: #aaa;
.alias{
float: left;
}
.sign{
float: left;
margin: 0 5px;
}
.code{
float: left;
}
}
}
.right{
position: absolute;
right: 0;
top: 50%;
margin-top: -13px;
// width: 0px;
// float: left;
display: inline-block;
vertical-align: middle;
i{
font-size: 24px;
color: #449284;
font-weight: 700;
}
}
.code{
line-height: 30px;
}
}
.loading{
color: #ccc;
text-align: center;
margin: 0;
font-size: 12px;
margin-top: 5px;
}
}
}
}
.choosed-list-wrap{
width: 450px;
height: 300px;
margin-left: 30px;
.title{
color: #303133;
font-size: 16px;
line-height: 40px;
margin-top: 10px;
}
.choosed-list{
overflow: hidden;
overflow-y: scroll;
width: 450px;
height: 250px;
padding: 10px;
border: 1px solid #DCDFE6;
/*.scroll-bar;*/
.el-tag {
margin: 0 10px 10px 0;;
.text{
display: inline-block;
max-width: 342px;
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.el-tag__close{
top: -12px;
}
}
}
}
}
</style>
...@@ -408,18 +408,19 @@ ...@@ -408,18 +408,19 @@
<el-form-item label="直播角色" v-if="formData.streamType == 1"> <el-form-item label="直播角色" v-if="formData.streamType == 1">
<div style="color:#666666;font-size:10px;">主播(必填)</div> <div style="color:#666666;font-size:10px;">主播(必填)</div>
<el-row> <el-row>
<el-col :span="10"> <el-col :span="10" style="position: relative;">
<el-form-item label="姓名" prop="lecturesUserName" label-width="80px"> <el-form-item label="姓名" prop="lecturesUserName" label-width="80px" style="position: relative;">
<el-input <el-input
size="small" size="small"
v-model="formData.lecturesUserName" v-model="formData.lecturesUserName"
placeholder="请输入姓名" placeholder="请输入姓名"
style="width:85%;" style="width:85%;"
:disabled="liveEditFlag" :disabled="liveEditFlag"
@input="handleInputSearch(formData.lecturesUserName)" @input="handleInputSearch(101, formData.lecturesUserName, null)"
@blur="handleSearchListBlur" @blur="handleSearchListBlur"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<search-doctor :searchList="searchList" :searchId="searchId" @handleSearchLiClick="handleSearchLiClick"></search-doctor>
</el-col> </el-col>
<el-col :span="1"> <el-col :span="1">
<img style="vertical-align: middle" src="../../assets/image/lianjie_icon.png" /> <img style="vertical-align: middle" src="../../assets/image/lianjie_icon.png" />
...@@ -442,7 +443,7 @@ ...@@ -442,7 +443,7 @@
</el-col> </el-col>
<div v-for="(item, index) in formData.guests" :key="index"> <div v-for="(item, index) in formData.guests" :key="index">
<el-row> <el-row>
<el-col :span="10"> <el-col :span="10" style="position: relative;">
<el-form-item label=" 姓名" label-width="80px"> <el-form-item label=" 姓名" label-width="80px">
<el-input <el-input
size="small" size="small"
...@@ -450,10 +451,11 @@ ...@@ -450,10 +451,11 @@
placeholder="请输入姓名" placeholder="请输入姓名"
style="width:85%;" style="width:85%;"
:disabled="guestEditFlag" :disabled="guestEditFlag"
@input="handleInputSearch(item.username)" @input="handleInputSearch(index, item.username, item)"
@blur="handleSearchListBlur" @blur="handleSearchListBlur"
></el-input> ></el-input>
</el-form-item> </el-form-item>
<search-doctor :searchList="searchList" :searchId="searchId" @handleSearchLiClick="handleSearchLiClick"></search-doctor>
</el-col> </el-col>
<el-col :span="1"> <el-col :span="1">
<img style="vertical-align: middle" src="../../assets/image/lianjie_icon.png" /> <img style="vertical-align: middle" src="../../assets/image/lianjie_icon.png" />
...@@ -494,36 +496,6 @@ ...@@ -494,36 +496,6 @@
</div> </div>
<div class="main-content" style="position: relative;left:270px;top: -117px;">
<div class="left-box left" style="background-color: white;">
<!-- 搜索列表 有搜索结果时-->
<!-- v-if="searchList && searchList.length > 0" v-infinite-scroll="loadMore"-->
<div class="search-list-wrap"
:infinite-scroll-disabled="busy"
infinite-scroll-distance="5"
infinite-scroll-immediate-check="false"
>
<ul class="search-list">
<li v-for="(searchLi, index) in searchList" @mousedown="handleSearchLiClick(searchLi)">
<div class="left">
<p class="disease-name" v-html="searchLi.name"></p>
<div class="one-line">
<p class="alias" v-html="searchLi.alias"></p>
<p class="sign" v-if="searchLi.alias">|</p>
<p class="code">{{searchLi.hospitalName}}</p>
</div>
</div>
<!--<div class="right" v-if="isSearchLiSelected(searchLi)"><i class="el-icon-check"></i></div>-->
</li>
<!--<p v-if="busy" class="loading">加载中...</p>-->
<!--<p v-if="noMore" class="loading">没有更多了...</p>-->
</ul>
</div>
</div>
</div>
<el-dialog <el-dialog
class="dialog-title-border-old" class="dialog-title-border-old"
title="图片裁剪" title="图片裁剪"
...@@ -600,7 +572,8 @@ ...@@ -600,7 +572,8 @@
import { doUpload, getFilePath, unsubscribe} from "../../utils/qiniu-util"; import { doUpload, getFilePath, unsubscribe} from "../../utils/qiniu-util";
import { checkMobile } from '../../utils/patients/checkValid'; import { checkMobile } from '../../utils/patients/checkValid';
import { getRtcInfo, getImages, searchDoc} from "../../utils/yqrange/yqrangeApi"; import { getRtcInfo, getImages, searchDoc} from "../../utils/yqrange/yqrangeApi";
import Cropper from '@/components/common/cropper.vue' import Cropper from '@/components/common/cropper.vue';
import SearchDoctor from "@/components/yqrange/search-doctor";
// import { ossUpload, getFilePathForOSS } from "@/utils/oss/ossUtil"; // import { ossUpload, getFilePathForOSS } from "@/utils/oss/ossUtil";
// import { checkPhone } from "../login.vue"; // import { checkPhone } from "../login.vue";
...@@ -608,7 +581,8 @@ ...@@ -608,7 +581,8 @@
export default { export default {
components: { components: {
BreadCrumb, BreadCrumb,
Cropper Cropper,
SearchDoctor
}, },
data(){ data(){
let checkProjectStr = (rule, value, callback) => { let checkProjectStr = (rule, value, callback) => {
...@@ -641,6 +615,8 @@ ...@@ -641,6 +615,8 @@
dialogVisible: false, dialogVisible: false,
uploadProgress1: 0, uploadProgress1: 0,
searchList: [], searchList: [],
guestItem: null,
searchId: 100,
busy: false, busy: false,
formData: { formData: {
circleId: "",// 圈子ID circleId: "",// 圈子ID
...@@ -1954,7 +1930,9 @@ ...@@ -1954,7 +1930,9 @@
}, },
// 搜索框中输入文字 时 page=1 pageSize=30 // 搜索框中输入文字 时 page=1 pageSize=30
handleInputSearch(name) { handleInputSearch(searchId, name, item) {
this.searchId = searchId;
this.guestItem = item;
// debugger; // debugger;
clearTimeout(this.searchFlagTimer); clearTimeout(this.searchFlagTimer);
let that = this; let that = this;
...@@ -1977,7 +1955,7 @@ ...@@ -1977,7 +1955,7 @@
// that.totalPageNum = Math.ceil(res.data.total/that.pageSize); // 总页数 // that.totalPageNum = Math.ceil(res.data.total/that.pageSize); // 总页数
let list = res.data.chooseLiveMemberDtos || []; let list = res.data.chooseLiveMemberDtos || [];
if(list.length > 0){ if(list.length > 0){
if(that.searchInput == ''){ if(that.name == ''){
that.searchList = []; that.searchList = [];
return; return;
} }
...@@ -2005,11 +1983,15 @@ ...@@ -2005,11 +1983,15 @@
}, },
handleSearchLiClick(item) { handleSearchLiClick(item) {
this.searchInput = '';
console.log(item); console.log(item);
this.formData.lecturesUserName = item.name; if(this.guestItem == null) {
this.formData.lecturesPhone = item.mobilePhone; this.formData.lecturesUserName = item.name;
this.formData.lecturesPhone = item.mobilePhone;
}
else {
this.guestItem.username = item.name;
this.guestItem.phone = item.mobilePhone;
}
}, },
}, },
......
...@@ -71,7 +71,6 @@ ...@@ -71,7 +71,6 @@
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import { openLoading, closeLoading } from "../../utils/utils"; import { openLoading, closeLoading } from "../../utils/utils";
...@@ -118,7 +117,8 @@ ...@@ -118,7 +117,8 @@
value: 2, value: 2,
label: "通过" label: "通过"
}, },
] ],
dialogVisible: false
} }
}, },
created() { created() {
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册