Kaynağa Gözat

三师签约修改

zhangyanfang 5 yıl önce
ebeveyn
işleme
82f660b53f

+ 10 - 0
app/sign/css/sign_handle.css

@ -3,6 +3,7 @@
.lh0 {line-height: 0;}
.lh40 {line-height: 40px;}
.lh80 {line-height: 81px;}
.lh123{line-height: 123px;}
.b-r-50 {border-radius: 50%;}
ul {list-style: none;}
.w-20 {width: 20%;}
@ -40,3 +41,12 @@ ul {list-style: none;}
}
.c-red {color: red;}
.bgc-f5f5fa {background-color: #f5f5fa;}
.setInput .el-input--suffix .el-input__inner{
	border: 0;
}
.setInput .el-select .el-input .el-select__caret{
	background: url(../../../images/tiaozhuan_shang_icon.png) no-repeat no-repeat calc(100% - 10px) center;
}
.setInput .el-icon-arrow-up:before{
	content: none;
}

+ 36 - 10
app/sign/html/sign_detail.html

@ -6,6 +6,7 @@
		<link rel="stylesheet" type="text/css" href="../../../css/bootstrap.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css"/>
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link rel="stylesheet" type="text/css" href="../../../css/element-ui.css"/>
		<link href="../../../plugins/toastr/toastr.min.css" rel="stylesheet">
		<link rel="stylesheet" href="../css/sign_manage.css" />
		<link rel="stylesheet" href="../css/sign_handle.css" />
@ -56,21 +57,37 @@
						<div class="m0 c-border-b clearfix">
							<span class="fl w-40 c-border-r pl20 c-999">全科医生</span>
							<span v-if="!isLeader" class="fl w-60-1 c-border-r pl20">{{doctorTeam.doctorName}}</span>
							<div v-if="isLeader" class="c-position-r fl w-60-1 c-border-r">
								<p class="pl20 w-100 cur-pit set-bg" @click="selectStatus(1)">{{doctorTeam.doctorName || "请分配全科医生"}}</p>
							<div v-if="isLeader" class="c-position-r fl w-60-1 c-border-r setInput">
								<!-- <p class="pl20 w-100 cur-pit set-bg" @click="selectStatus(1)">{{doctorTeam.doctorName || "请分配全科医生"}}</p>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList1">
			                        <li class="cur-pit c-999" v-for="(dict, index) in doctorList" :key="index" @click="selectLi(1, dict)">{{dict.name}}</li>
			                    </ul>
								</ul> -->
								<el-select style="width: 100%;" @change="changeSelect4" v-model="doctorTeam.doctorCode" filterable placeholder="请分配全科医生">
									<el-option
									v-for="item in doctorList"
									:key="item.code"
									:label="item.name"
									:value="item.code">
									</el-option>
								</el-select>	
							</div>
						</div>
						<div class="m0 clearfix">
							<span class="fl w-40 c-border-r pl20 c-999">健康管理师</span>
							<span v-if="!isLeader" class="fl w-60-1 c-border-r pl20">{{doctorTeam.healthDoctorName}}</span>
							<div v-if="isLeader" class="c-position-r fl w-60-1 c-border-r">
								<p class="pl20 w-100 cur-pit set-bg" @click="selectStatus(2)">{{doctorTeam.healthDoctorName || "请分配健管师"}}</p>
							<div v-if="isLeader" class="c-position-r fl w-60-1 c-border-r setInput">
								<!-- <p class="pl20 w-100 cur-pit set-bg" @click="selectStatus(2)">{{doctorTeam.healthDoctorName || "请分配健管师"}}</p>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList2">
			                        <li class="cur-pit c-999" v-for="(dict, index) in memberList" :key="index" @click="selectLi(2, dict)">{{dict.name}}</li>
			                    </ul>
								</ul> -->
								<el-select style="width: 100%;" @change="changeSelect2" v-model="doctorTeam.healthDoctorCode" filterable placeholder="请分配健康管理师">
									<el-option
									v-for="item in memberList"
									:key="item.code"
									:label="item.name"
									:value="item.code">
									</el-option>
								</el-select>	
							</div>
						</div>
					</div>
@ -95,11 +112,19 @@
						<div class="m0 clearfix" v-if="isShowzkdoctor">
							<span class="fl w-40 c-border-r pl20 c-999">专科医生</span>
							<span v-if="!isLeader" class="fl w-60-1 c-border-r pl20">{{doctorTeam.specialistName}}</span>
							<div v-if="isLeader" class="c-position-r fl w-60-1">
								<p class="pl20 w-100 cur-pit set-bg" @click="selectStatus(4)">{{doctorTeam.specialistName || "请选择专科医生"}}</p>
							<div v-if="isLeader" class="c-position-r fl w-60-1 setInput">
								<!-- <p class="pl20 w-100 cur-pit set-bg" @click="selectStatus(4)">{{doctorTeam.specialistName || "请选择专科医生"}}</p>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList4">
			                        <li class="cur-pit c-999" v-for="(dict, index) in zkDoctorList" :key="index" @click="selectLi(4, dict)">{{dict.name}}</li>
			                    </ul>
								</ul> -->
								<el-select style="width: 100%;" v-model="doctorTeam.specialist" @change="changeSelect5" filterable placeholder="请选择专科医生">
									<el-option
									v-for="item in zkDoctorList"
									:key="item.code"
									:label="item.name"
									:value="item.code">
									</el-option>
								</el-select>
							</div>
						</div>
						<p class="m0 clearfix">
@ -165,7 +190,8 @@
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../plugins/toastr/toastr.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/underscore.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/underscore.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/element-ui.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/util.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/sign_api.js" type="text/javascript"></script>

+ 50 - 12
app/sign/html/sign_handle.html

@ -7,6 +7,7 @@
		<link rel="stylesheet" type="text/css" href="../../../css/cross.css"/>
		<link rel="stylesheet" type="text/css" href="../../../css/style.min.css" />
		<link href="../../../plugins/toastr/toastr.min.css" rel="stylesheet">
		<link rel="stylesheet" type="text/css" href="../../../css/element-ui.css"/>
		<link rel="stylesheet" href="../css/sign_manage.css" />
		<link rel="stylesheet" href="../css/sign_handle.css" />
	</head>
@ -61,27 +62,63 @@
						<div class="m0 c-border-b clearfix">
							<span class="fl w-40 c-border-r pl20 c-999">全科医生</span>
							<span v-if="doctorType == 2" class="fl w-60-1 c-border-r pl20">{{signInfo.doctorName}}</span>
							<div v-if="doctorType == 3" class="c-position-r fl w-60-1 c-border-r">
								<p class="pl20 w-100 set-bg" @click="selectStatus(4)">{{signInfo.doctorName ? signInfo.doctorName : "请选择全科医生"}}</p>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList4">
							<div v-if="doctorType == 3" class="c-position-r fl w-60-1 c-border-r setInput">
									<!-- <p class="pl20 w-100 set-bg" @click="selectStatus(4)">{{signInfo.doctorName ? signInfo.doctorName : "请选择全科医生"}}</p>
									<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList4">
			                        <li class="cur-pit c-999" v-for="(member, index) in doctorList" :key="index" @click="selectLi(4, member)">{{member.name}}</li>
			                    </ul>
									</ul> -->
								<el-select style="width: 100%;" v-model="signInfo.doctor" @focus="selectStatus(4)" @change="changeSelect4" filterable placeholder="请选择全科医生">
									<el-option
									v-for="item in doctorList"
									:key="item.code"
									:label="item.name"
									:value="item.code">
									</el-option>
								</el-select>	
							</div>
						</div>
						<div class="m0 c-border-b clearfix">
							<span class="fl w-40 c-border-r pl20 c-999">健康管理师</span>
							<span v-if="doctorType == 3" class="fl w-60-1 c-border-r pl20">{{signInfo.healthDoctorName}}</span>
							<div v-if="doctorType == 2" class="c-position-r fl w-60-1 c-border-r">
								<p class="pl20 w-100 set-bg" @click="selectStatus(2)">{{signInfo.healthDoctorName ? signInfo.healthDoctorName : "请选择健康管理师"}}</p>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList2">
			                        <li class="cur-pit c-999" v-for="(member, index) in memberList" :key="index" @click="selectLi(2, member)">{{member.name}}</li>
			                    </ul>
							<div v-if="doctorType == 2" class="c-position-r fl w-60-1 c-border-r setInput">
									<!-- <p class="pl20 w-100 set-bg" @click="selectStatus(2)">{{signInfo.healthDoctorName ? signInfo.healthDoctorName : "请选择健康管理师"}}</p>
									<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList2">
									<li class="cur-pit c-999" v-for="(member, index) in memberList" :key="index" @click="selectLi(2, member)">{{member.name}}</li> -->
								<!-- </ul> -->
									<el-select style="width: 100%;" @focus="selectStatus(2)" @change="changeSelect2" v-model="signInfo.healthDoctor" filterable placeholder="请选择健康管理师">
										<el-option
										v-for="item in memberList"
										:key="item.code"
										:label="item.name"
										:value="item.code">
										</el-option>
									</el-select>	
							</div>
						</div>
						<div v-if="zkdoctorShow" class="m0 c-border-b clearfix">
							<span class="fl w-40 c-border-r pl20 c-999">专科医生</span>
							<span v-if="doctorType == 3" class="fl w-60-1 c-border-r pl20">{{signInfo.specialistName}}</span>
							<div v-if="doctorType == 2" class="c-position-r fl w-60-1 c-border-r setInput">
								<!-- <input class="pl20 w-100 set-bg"  @click="selectStatus(5)" placeholder="请选择专科医生" v-model="signInfo.specialistName"></input>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList5">
			                        <li class="cur-pit c-999" v-for="(member, index) in specialDoctorList" :key="index" @click="selectLi(5, member)">{{member.name}}</li>
								</ul> -->
								<el-select style="width: 100%;" @focus="selectStatus(5)" v-model="signInfo.specialist" @change="changeSelect5" filterable placeholder="请选择专科医生">
									<el-option
									v-for="item in specialDoctorList"
									:key="item.code"
									:label="item.name"
									:value="item.code">
									</el-option>
								</el-select>
							</div>
							
						</div>
						<div class="m0 clearfix">
							<span class="fl w-40 c-border-r pl20 c-999">政府补贴</span>
							<div class="c-position-r fl w-60-1 c-border-r">
								<p class="pl20 w-100 set-bg" @click="selectStatus(3)">{{signInfo.expenses ? showExpensesName(signInfo.expenses) : "请选择补贴类型"}}</p>
								<p class="pl20 w-100 set-bg" @keyup="selectStatus(3)">{{signInfo.expenses ? showExpensesName(signInfo.expenses) : "请选择补贴类型"}}</p>
								<ul class="pull-list m0 p0 c-border-l c-border-r c-border-b" v-if="isShowList3">
			                        <li class="cur-pit c-999" v-for="(dict, index) in dictList" :key="index" @click="selectLi(3, dict)">{{dict.value}}</li>
			                    </ul>
@ -99,7 +136,7 @@
								<p class="m0 plr20 ellipsis">{{labelName? labelName : "请选择居民标签"}}</p>
							</div>
						</div>
						<div class="lh80 clearfix">
						<div class="lh80 clearfix" :class="{'lh123':zkdoctorShow}">
							<span class="fl w-40 c-border-r pl20 c-999">已上传凭证</span>
							<div class="fl w-60 ptb10 pl20">
								<div class="fl mtb5 cur-pit lh0 c-t-center c-12b7f5" style="text-decoration: underline;" v-for="(lis, index) in fileList" :key="index" @click="lookPhoto(lis)">
@ -132,7 +169,8 @@
        <script src="../../../js/bootstrap.min.js"></script>
        <script src="../../../js/es6-promise.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../plugins/toastr/toastr.min.js"></script>
        <script src="../../../js/underscore.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/underscore.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../js/element-ui.js" type="text/javascript" charset="utf-8"></script>
        <script src="../../../js/util.js" type="text/javascript" charset="utf-8"></script>
		<script src="../../../api/http-request.js" type="text/javascript"></script>
		<script src="../../../api/sign_api.js" type="text/javascript"></script>

+ 43 - 1
app/sign/js/sign_detail.js

@ -135,7 +135,7 @@ methods: {
							vm.serverName += ', ' + res.data[i].serverTypeName
						}
					}
					if(vm.serverName.split(',').indexOf('高血压')||vm.serverName.split(',').indexOf('糖尿病')){
					if(vm.serverName.split(',').indexOf('高血压')>-1 || vm.serverName.split(',').indexOf('糖尿病')>-1){
						console.log('服务类型存在高血压,糖尿病')
						vm.isShowzkdoctor=true
					}else{
@ -240,6 +240,44 @@ methods: {
			this.doctorTeam.specialistName = data.name;
		}
	},
	// 把原来下拉选择框变成可搜索下拉选择框
	changeSelect4:function(val){
		var obj = {};
		obj = this.doctorList.find(function(item){
			return item.code === val;
		});
		this.doctorTeam.doctorName=obj.name
		if(val == this.isJudgeDoctor) {
			this.isSaveBtn = false
		} else {
			this.isSaveBtn = true
		}
	},
	changeSelect2:function(val){
		var obj = {};
		obj = this.memberList.find(function(item){
			return item.code === val;
		});
		this.doctorTeam.healthDoctorName=obj.name
		if(val == this.isJudgeHealthDoctor) {
			this.isSaveBtn1 = false
		} else {
			this.isSaveBtn1 = true
		}
	},
	changeSelect5:function(val){
		var obj = {};
		obj = this.zkDoctorList.find(function(item){
			return item.code === val;
		});
		this.doctorTeam.specialistName=obj.name
		if(val==this.isJudgezkDoctor){
			this.isSaveBtn3=false
		}else{
			this.isSaveBtn3=true
		}
	},
	
	showExpensesName: function(code) {
		var expensesName;
		if(!this.dictList) {
@ -291,6 +329,9 @@ methods: {
		if(this.isSaveBtn1) {
			params.healthDoctor = this.doctorTeam.healthDoctorCode
		}
		if(this.isSaveBtn3){
			params.specialist=this.doctorTeam.specialist
		}
		if(this.isSaveBtn2) {
			params.expensesType = this.patientInfo.jtSign.expensesType
		}
@ -303,6 +344,7 @@ methods: {
				vm.isSaveBtn = false
				vm.isSaveBtn1 = false
				vm.isSaveBtn2 = false
				vm.isSaveBtn3 = false
			} else {
				showErrorMessage(res.msg);
			}

+ 715 - 623
app/sign/js/sign_handle.js

@ -1,677 +1,769 @@
var httpData=GetRequest(),
	doctorInfo = JSON.parse(window.localStorage.getItem('wlyyAgent'));
doctorInfo = JSON.parse(window.localStorage.getItem('wlyyAgent'));
var applyDate=httpData.applyDate?decodeURI(httpData.applyDate):""
var refuseReason = null;
function showSuccessMessage(msg) {
	layer.msg(msg, {
		icon: 1
	})
layer.msg(msg, {
	icon: 1
})
}
function showErrorMessage(msg) {
	layer.msg(msg, {
		icon: 5
	})
layer.msg(msg, {
	icon: 5
})
}
function showWarningMessage(msg) {
	layer.msg(msg, {
		icon: 2
	})
layer.msg(msg, {
	icon: 2
})
}
function showInfoMessage(msg) {
	layer.msg(msg, {
		icon: 6
	})
layer.msg(msg, {
	icon: 6
})
}
function getReason(ele) {
	if(ele.hasClass("active")) {
		ele.removeClass("active")
		refuseReason = null
		return false;
	}
	ele.addClass("active").siblings().removeClass("active");
	refuseReason = ele.html();
if(ele.hasClass("active")) {
	ele.removeClass("active")
	refuseReason = null
	return false;
}
ele.addClass("active").siblings().removeClass("active");
refuseReason = ele.html();
}
top.changeTypeIndex=null;//修改居民标签的窗体
top.handleVue=new Vue({
    el: "#app",
    data: {
    	renewFlag: httpData.renewFlag, // 2 改签
    	applyDate: applyDate,
    	justDoc: null,
    	justHDoc: null,
    	doctorType: doctorInfo.doctorType,
    	isShowList1: false,
    	isShowList2: false,
    	isShowList3: false,
    	isShowList4: false,
    	patientInfo: {jtSign: {}},
    	warnMsg: "",
    	signdictList: null,
    	teamList: null,
    	hisTeamName: null, // 历史团队
    	memberList: null, // 团队成员列表
    	doctorList: null, // 全科医生列表
    	dictList: null,
    	fileList: null,
    	serverName: null,
    	labelName: null,
    	patLabel: [],
    	signInfo: {
            signType: 1,
            signCode: httpData.signCode,
            majorDoctor: null,
            majorDoctorName: null,
            healthLabel: null,
            customLabel: null,
            disease: null,
            patientIDcard: null, // 必填
            adminTeamCode: null,
            teamCode: null,
            mesId: null, // 消息id(必填)
            msgid: null, // 消息id(必填)
            patient: httpData.patientCode,
            doctor: null,
            doctorName: null,
            healthDoctor: null,
            healthDoctorName: null,
            type: 1,
            state: 1,
            expenses: null,
            group: null,
            //添加服务类型数据
            sevId: null,
            // 拒绝参数
el: "#app",
data: {
	renewFlag: httpData.renewFlag, // 2 改签
	applyDate: applyDate,
	justDoc: null,
	justHDoc: null,
	doctorType: doctorInfo.doctorType,
	isShowList1: false,
	isShowList2: false,
	isShowList3: false,
	isShowList4: false,
	isShowList5:false,
	patientInfo: {jtSign: {}},
	warnMsg: "",
	signdictList: null,
	teamList: null,
	hisTeamName: null, // 历史团队
	memberList: null, // 团队成员列表
	doctorList: null, // 全科医生列表
	specialDoctorList:null,//专科医生列表
	dictList: null,
	fileList: null,
	serverName: null,
	labelName: null,
	patLabel: [],
	signInfo: {
		signType: 1,
		signCode: httpData.signCode,
		majorDoctor: null,
		majorDoctorName: null,
		healthLabel: null,
		customLabel: null,
		disease: null,
		patientIDcard: null, // 必填
		adminTeamCode: null,
		teamCode: null,
		mesId: null, // 消息id(必填)
		msgid: null, // 消息id(必填)
		patient: httpData.patientCode,
		doctor: null,
		doctorName: null,
		healthDoctor: null,
		healthDoctorName: null,
		type: 1,
		state: 1,
		expenses: null,
		group: null,
		//添加服务类型数据
		sevId: null,
		// 拒绝参数
//		                adminTeamCode:0,
//		                type: 2,
       		refuseReason: null
        },
    },
    mounted: function() {
    	this.getSigndict();
    	this.getDictByDictName();
    	if(!httpData.msgid || httpData.msgid == "undefined" || httpData.msgid == "null") {
    		this.findMsgId()
    	} else {
    		this.signInfo.mesId = httpData.msgid
    		this.signInfo.msgid = httpData.msgid
    	}
    	this.teamLimit();
    	this.findPatientSignServerBySignCode();
    },
    methods: {
    	allLabels: function(selData) {
    		var vm =this,
    			param = {
    				teamCode: this.signInfo.adminTeamCode
    			},
    			loadding = layer.load(0, {shade: false});
			signAPI.allLabels(param).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					$.each(res.data, function(i, v) {
						if(v.labelType == 2) {
							$.each(selData.heath, function(j, u) {
								if(u == v.labelCode) {
									if(vm.labelName == "") {
			    						vm.labelName += v.labelName
			    					} else {
			    						vm.labelName += ',' + v.labelName
			    					}
			    				}
							});
						}
						if(v.labelType == 3) {
							$.each(selData.disease, function(j, u) {
								if(u == v.labelCode) {
									if(vm.labelName == "") {
			    						vm.labelName += v.labelName
			    					} else {
			    						vm.labelName += ',' + v.labelName
			    					}
			    				}
							});
						}
						if(v.labelType == 4) {
							$.each(selData.team, function(j, u) {
								if(u == v.labelCode) {
									if(vm.labelName == "") {
			    						vm.labelName += v.labelName
			    					} else {
			    						vm.labelName += ',' + v.labelName
			    					}
			    				}
							});
						}
					});
				} else {
					showErrorMessage(res.msg);
				}
			})
    	},
    	getTeamNameByTeamCode: function() {
    		var vm =this,
    			params = {
    				teamCode: vm.patientInfo.jtSign.adminTeamId
    			},
    			loadding = layer.load(0, {shade: false});
			signAPI.getTeamNameByTeamCode(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.hisTeamName = res.data
				} else {
					showErrorMessage(res.msg);
				}
			})
    	},
    	patientLabel: function() {
    		var vm =this,
    			params = {
    				patient: httpData.patientCode,
    				labelType: ""
    			},
    			loadding = layer.load(0, {shade: false});
			signAPI.patientLabel(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.patLabel = res.data
				} else {
					showErrorMessage(res.msg);
				}
			})
    	},
    	getSigndict: function() {
    		var vm =this,
    			loadding = layer.load(0, {shade: false});
			signAPI.getSigndict().then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.signdictList = res.data
				} else {
					showErrorMessage(res.msg);
				}
			})
    	},
    	findMsgId: function() {
    		var vm =this,
    			params = {
    				sender: httpData.patientCode,
    				signStatus: httpData.status == 0 ? 1 : (vm.renewFlag == 1 ? 8 : 9)
    			},
    			loadding = layer.load(0, {shade: false});
			signAPI.findMsgId(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.signInfo.mesId = res.data.id
					vm.signInfo.msgid = res.data.id
				} else {
					showErrorMessage(res.msg);
		   refuseReason: null
	},
	zkdoctorShow:false,
	choseTeamFirst:true,
},
mounted: function() {
	this.getSigndict();
	this.getDictByDictName();
	if(!httpData.msgid || httpData.msgid == "undefined" || httpData.msgid == "null") {
		this.findMsgId()
	} else {
		this.signInfo.mesId = httpData.msgid
		this.signInfo.msgid = httpData.msgid
	}
	this.teamLimit();
	this.findPatientSignServerBySignCode();
},
methods: {
	allLabels: function(selData) {
		var vm =this,
			param = {
				teamCode: this.signInfo.adminTeamCode
			},
			loadding = layer.load(0, {shade: false});
		signAPI.allLabels(param).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				$.each(res.data, function(i, v) {
					if(v.labelType == 2) {
						$.each(selData.heath, function(j, u) {
							if(u == v.labelCode) {
								if(vm.labelName == "") {
									vm.labelName += v.labelName
								} else {
									vm.labelName += ',' + v.labelName
								}
							}
						});
					}
					if(v.labelType == 3) {
						$.each(selData.disease, function(j, u) {
							if(u == v.labelCode) {
								if(vm.labelName == "") {
									vm.labelName += v.labelName
								} else {
									vm.labelName += ',' + v.labelName
								}
							}
						});
					}
					if(v.labelType == 4) {
						$.each(selData.team, function(j, u) {
							if(u == v.labelCode) {
								if(vm.labelName == "") {
									vm.labelName += v.labelName
								} else {
									vm.labelName += ',' + v.labelName
								}
							}
						});
					}
				});
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	getTeamNameByTeamCode: function() {
		var vm =this,
			params = {
				teamCode: vm.patientInfo.jtSign.adminTeamId
			},
			loadding = layer.load(0, {shade: false});
		signAPI.getTeamNameByTeamCode(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.hisTeamName = res.data
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	patientLabel: function() {
		var vm =this,
			params = {
				patient: httpData.patientCode,
				labelType: ""
			},
			loadding = layer.load(0, {shade: false});
		signAPI.patientLabel(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.patLabel = res.data
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	getSigndict: function() {
		var vm =this,
			loadding = layer.load(0, {shade: false});
		signAPI.getSigndict().then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.signdictList = res.data
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	findMsgId: function() {
		var vm =this,
			params = {
				sender: httpData.patientCode,
				signStatus: httpData.status == 0 ? 1 : (vm.renewFlag == 1 ? 8 : 9)
			},
			loadding = layer.load(0, {shade: false});
		signAPI.findMsgId(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.signInfo.mesId = res.data.id
				vm.signInfo.msgid = res.data.id
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	signing: function() {
		var vm = this,
			loadding = layer.load(0, {shade: false}),
			params = {
				patient: httpData.patientCode
			}
		signAPI.signing(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				var patientInfo=JSON.parse(JSON.stringify(vm.patientInfo))
				vm.patientInfo={}
				vm.patientInfo = _.assign(patientInfo, res.data)
				vm.signInfo.patientIDcard = res.data.idCard
				if(res.data.jtSign){
				if(vm.doctorType == 2) {
					vm.signInfo.doctorName = res.data.jtSign.doctorName
					vm.signInfo.doctor = res.data.jtSign.doctor
				}
			})
    	},
    	signing: function() {
    		var vm = this,
    			loadding = layer.load(0, {shade: false}),
    			params = {
    				patient: httpData.patientCode
    			}
			signAPI.signing(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
				    var patientInfo=JSON.parse(JSON.stringify(vm.patientInfo))
				    vm.patientInfo={}
					vm.patientInfo = _.assign(patientInfo, res.data)
					vm.signInfo.patientIDcard = res.data.idCard
					if(res.data.jtSign){
					    if(vm.doctorType == 2) {
                            vm.signInfo.doctorName = res.data.jtSign.doctorName
                            vm.signInfo.doctor = res.data.jtSign.doctor
                        }
                        if(vm.doctorType == 3) {
                            vm.signInfo.healthDoctorName = res.data.jtSign.doctorHealthName
                            vm.signInfo.healthDoctor = res.data.jtSign.doctorHealth
                        } 
					}					
				} else {
					showErrorMessage(res.msg);
				if(vm.doctorType == 3) {
					vm.signInfo.healthDoctorName = res.data.jtSign.doctorHealthName
					vm.signInfo.healthDoctor = res.data.jtSign.doctorHealth
				}
			})
    	},
    	selectServer:function(){
    		var vm=this
    		if(!this.signInfo.adminTeamCode) {
    			showWarningMessage("请先选择签约团队");
    			return false;
    		}
    		if(top.changeTypeIndex && top.$('#layui-layer-shade'+top.changeTypeIndex).length){
    			top.xgLabel.initPage();
    			(top.$('#layui-layer-shade'+top.changeTypeIndex).show(),top.$('#layui-layer'+top.changeTypeIndex).show());
    		}else{
    			top.changeTypeIndex=top.layer.open({
	        		type: 2,
	        		area: ['500px', '405px'],
	        		title: "修改居民标签",
	        		shade: 0.5,
	        		shadeClose: false,
	        		closeBtn: 0,
	        		shift: 2,
	        		content: '../html/modify-the-label.html?patient=' + httpData.patientCode+'&teamCode='+vm.signInfo.adminTeamCode+"&signCode="+httpData.signCode
	        	});
    		}
    	},
    	handleStr: function(str) {
            if (!str || str === '') {
                return ''
            }
            return str.substr(0, 19)
       },
    	acceptanceRes:function(res){
    		var vm = this
    		this.serverName = "";
    		this.labelName = "";
    		if(res.server.length != 0) this.signInfo.sevId = res.server.join(",");
    		if(res.disease.length != 0) this.signInfo.disease = res.disease.join(",");
    		if(res.heath.length != 0) this.signInfo.healthLabel = res.heath.join(",");
    		if(res.team.length != 0) this.signInfo.customLabel = res.team.join(",");
    		$.each(res.server, function(i, v) {
    			$.each(vm.signdictList, function(j, u) {
    				if(v == u.code) {
    					if(vm.serverName == "") {
    						vm.serverName += u.name
    					} else {
    						vm.serverName += ',' + u.name
    					}
    				}
            	});
            });
            this.allLabels(res)
    	},
    	signOuttime: function() {
    		var vm = this,
    			loadding = layer.load(0, {shade: false}),
    			params = {
    				patient: httpData.patientCode
    			}
			signAPI.signOuttime(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.patientInfo = res.data
					vm.signInfo.adminTeamCode = vm.patientInfo.jtSign.adminTeamId
					vm.signInfo.teamCode = vm.patientInfo.jtSign.adminTeamId
					vm.signInfo.healthDoctorName = vm.patientInfo.jtSign.doctorHealthName || ""
					vm.signInfo.healthDoctor = vm.patientInfo.jtSign.doctorHealth || ""
					vm.signInfo.doctor = vm.patientInfo.jtSign.doctor || ""
					vm.signInfo.doctorName = vm.patientInfo.jtSign.doctorName || ""
					if(vm.doctorType == 2) {
						vm.signInfo.doctorName = doctorInfo.name
						vm.signInfo.doctor = doctorInfo.uid
					}
					if(vm.doctorType == 3) {
						vm.signInfo.healthDoctorName = doctorInfo.name
						vm.signInfo.healthDoctor = doctorInfo.uid
			}
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	selectServer:function(){
		var vm=this
		if(!this.signInfo.adminTeamCode) {
			showWarningMessage("请先选择签约团队");
			return false;
		}
		if(top.changeTypeIndex && top.$('#layui-layer-shade'+top.changeTypeIndex).length){
			top.xgLabel.initPage();
			(top.$('#layui-layer-shade'+top.changeTypeIndex).show(),top.$('#layui-layer'+top.changeTypeIndex).show());
		}else{
			top.changeTypeIndex=top.layer.open({
				type: 2,
				area: ['500px', '405px'],
				title: "修改居民标签",
				shade: 0.5,
				shadeClose: false,
				closeBtn: 0,
				shift: 2,
				content: '../html/modify-the-label.html?patient=' + httpData.patientCode+'&teamCode='+vm.signInfo.adminTeamCode+"&signCode="+httpData.signCode
			});
		}
	},
	handleStr: function(str) {
		if (!str || str === '') {
			return ''
		}
		return str.substr(0, 19)
   },
	acceptanceRes:function(res){
		var vm = this
		this.serverName = "";
		this.labelName = "";
		if(res.server.length != 0) this.signInfo.sevId = res.server.join(",");
		if(res.disease.length != 0) this.signInfo.disease = res.disease.join(",");
		if(res.heath.length != 0) this.signInfo.healthLabel = res.heath.join(",");
		if(res.team.length != 0) this.signInfo.customLabel = res.team.join(",");
		$.each(res.server, function(i, v) {
			$.each(vm.signdictList, function(j, u) {
				if(v == u.code) {
					if(vm.serverName == "") {
						vm.serverName += u.name
					} else {
						vm.serverName += ',' + u.name
					}
					vm.signInfo.expenses = vm.patientInfo.jtSign.expensesType
					vm.judgeTeamToDoc(vm.signInfo.adminTeamCode)
					// 查找之前签约的居民标签
			    	vm.patientLabel()
			    	if(vm.renewFlag == 2) { // 获取之前签约团队名字
			    		vm.getTeamNameByTeamCode()
			    	}
				} else {
					showErrorMessage(res.msg);
				}
			})
    	},
    	judgeTeamToDoc: function(teamCode) {
    		var judge = false
    		for(var i = 0, len = this.teamList.length; i < len; i++) {
    			if(this.teamList[i].id == teamCode) {
    				judge = true
    				this.teamMember()
    			}
    		}
    		if(!judge) {
    			this.signInfo.adminTeamCode = null
    			this.signInfo.teamCode = null
    			this.warnMsg = "您已不在原签约团队,请选择新的签约团队"
    			if(this.doctorType == 2) {
    				this.justHDoc = this.signInfo.healthDoctorName
					this.signInfo.healthDoctorName = null
					this.signInfo.healthDoctor = null
				} else {
					this.justDoc = this.signInfo.doctorName
					this.signInfo.doctor = null
					this.signInfo.doctorName = null
			});
		});
		this.allLabels(res)
		if(vm.serverName.split(',').indexOf('高血压')>-1 || vm.serverName.split(',').indexOf('糖尿病')>-1 ){
			console.log('服务类型存在高血压,糖尿病')
			this.zkdoctorShow=true
		}else{
			this.zkdoctorShow=false
		}
	},
	signOuttime: function() {
		var vm = this,
			loadding = layer.load(0, {shade: false}),
			params = {
				patient: httpData.patientCode
			}
		signAPI.signOuttime(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.patientInfo = res.data
				vm.signInfo.adminTeamCode = vm.patientInfo.jtSign.adminTeamId
				vm.signInfo.teamCode = vm.patientInfo.jtSign.adminTeamId
				vm.signInfo.healthDoctorName = vm.patientInfo.jtSign.doctorHealthName || ""
				vm.signInfo.healthDoctor = vm.patientInfo.jtSign.doctorHealth || ""
				vm.signInfo.doctor = vm.patientInfo.jtSign.doctor || ""
				vm.signInfo.doctorName = vm.patientInfo.jtSign.doctorName || ""
				if(vm.doctorType == 2) {
					vm.signInfo.doctorName = doctorInfo.name
					vm.signInfo.doctor = doctorInfo.uid
				}
    		}
    	},
    	getDictByDictName: function() {
    		var vm =this,
    			loadding = layer.load(0, {shade: false}),
    			params = {
    				name: "SIGN_EXPENSES"
    			}
			signAPI.getDictByDictName(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.dictList = res.list
				} else {
					showErrorMessage(res.msg);
				if(vm.doctorType == 3) {
					vm.signInfo.healthDoctorName = doctorInfo.name
					vm.signInfo.healthDoctor = doctorInfo.uid
				}
			})
    	},
    	teamLimit: function() {
    		var vm = this,
    			loadding = layer.load(0, {shade: false}),
    			params = {
    				doctorId: doctorInfo.uid
    			}
			signAPI.teamLimit(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.teamList = res.data
					if (httpData.status == 0) {
			    		vm.signing()
			    	} else {
			    		vm.signOuttime();
			    	}
				vm.signInfo.expenses = vm.patientInfo.jtSign.expensesType
				vm.judgeTeamToDoc(vm.signInfo.adminTeamCode)
				// 查找之前签约的居民标签
				vm.patientLabel()
				if(vm.renewFlag == 2) { // 获取之前签约团队名字
					vm.getTeamNameByTeamCode()
				}
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	judgeTeamToDoc: function(teamCode) {
		var judge = false
		for(var i = 0, len = this.teamList.length; i < len; i++) {
			if(this.teamList[i].id == teamCode) {
				judge = true
				this.teamMember()
			}
		}
		if(!judge) {
			this.signInfo.adminTeamCode = null
			this.signInfo.teamCode = null
			this.warnMsg = "您已不在原签约团队,请选择新的签约团队"
			if(this.doctorType == 2) {
				this.justHDoc = this.signInfo.healthDoctorName
				this.signInfo.healthDoctorName = null
				this.signInfo.healthDoctor = null
			} else {
				this.justDoc = this.signInfo.doctorName
				this.signInfo.doctor = null
				this.signInfo.doctorName = null
			}
		}
	},
	getDictByDictName: function() {
		var vm =this,
			loadding = layer.load(0, {shade: false}),
			params = {
				name: "SIGN_EXPENSES"
			}
		signAPI.getDictByDictName(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.dictList = res.list
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	teamLimit: function() {
		var vm = this,
			loadding = layer.load(0, {shade: false}),
			params = {
				doctorId: doctorInfo.uid
			}
		signAPI.teamLimit(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.teamList = res.data
				if (httpData.status == 0) {
					vm.signing()
				} else {
					showErrorMessage(res.msg);
					vm.signOuttime();
				}
			})
    	},
    	findPatientSignServerBySignCode: function() {
    		var vm =this,
    			loadding = layer.load(0, {shade: false}),
    			params = {
					signCode: httpData.signCode
    			};
			signAPI.findPatientSignServerBySignCode(params).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					vm.fileList = [];
					var len = res.data.length;
					if(res.data.length > 0) {
						vm.serverName = "";
						vm.signInfo.sevId = "";
						for(var i = 0; i < len; i++) {
							if(i == 0) {
								vm.serverName += res.data[i].serverTypeName
								vm.signInfo.sevId += res.data[i].servetType
							} else {
								vm.serverName += + ', ' + res.data[i].serverTypeName
								vm.signInfo.sevId += +',' +  res.data[i].servetType
							}
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	findPatientSignServerBySignCode: function() {
		var vm =this,
			loadding = layer.load(0, {shade: false}),
			params = {
				signCode: httpData.signCode
			};
		signAPI.findPatientSignServerBySignCode(params).then(function(res) {
			layer.close(loadding)
			if(res.status == 200) {
				vm.fileList = [];
				var len = res.data.length;
				if(res.data.length > 0) {
					vm.serverName = "";
					vm.signInfo.sevId = "";
					for(var i = 0; i < len; i++) {
						if(i == 0) {
							vm.serverName += res.data[i].serverTypeName
							vm.signInfo.sevId += res.data[i].servetType
						} else {
							vm.serverName += + ', ' + res.data[i].serverTypeName
							vm.signInfo.sevId += +',' +  res.data[i].servetType
						}
					}
					$.each(res.data, function(i, v) {
		                if(v.serverType == 8 || v.serverType == 9 || v.serverType == 11) {
		                    vm.fileList.push(v);
		                }
		            });
				} else {
					showErrorMessage(res.msg);
				}
			})
		},
    	teamMember: function() {
    		var vm = this,
    			loadding = layer.load(0, {shade: false}),
    			params = {
    				teamId: vm.signInfo.adminTeamCode
    			}
			signAPI.teamMember(params).then(function(res) {
				layer.close(loadding)
				vm.memberList = [];
				vm.doctorList = [];
				if(res.status == 200) {
					var judge = false
					$.each(res.data, function(i, v) {
						if(v.available) {
							if(v.code == vm.signInfo.doctor && vm.doctorType == 3) {
								judge = true
							}
							if(v.code == vm.signInfo.healthDoctor && vm.doctorType == 2) {
								judge = true
			            	}
				$.each(res.data, function(i, v) {
					if(v.serverType == 8 || v.serverType == 9 || v.serverType == 11) {
						vm.fileList.push(v);
					}
				});
			} else {
				showErrorMessage(res.msg);
			}
		})
	},
	teamMember: function(val) {
		var vm = this,
			loadding = layer.load(0, {shade: false}),
			params = {
				teamId: vm.signInfo.adminTeamCode,
				name:val||''
			}
		signAPI.teamMember(params).then(function(res) {
			layer.close(loadding)
			vm.memberList = [];
			vm.doctorList = [];
			vm.specialDoctorList=[];
			if(res.status == 200) {
				var judge = false
				$.each(res.data, function(i, v) {
					if(v.available) {
						if(v.code == vm.signInfo.doctor && vm.doctorType == 3) {
							judge = true
						}
						if(v.code == vm.signInfo.healthDoctor && vm.doctorType == 2) {
							judge = true
						}
		                if(v.available && (v.level == 3 || v.level == 2)) {vm.memberList.push(v);}
		                if(v.available && v.level == 2) {vm.doctorList.push(v);}
		            });
		            if(!judge && httpData.status == 1) {
		            	if(vm.doctorType == 3) {
		            		if(!vm.justDoc && !vm.signInfo.doctorName) {
		            			vm.signInfo.doctorName = vm.signInfo.healthDoctorName
		            			vm.signInfo.doctor = vm.signInfo.healthDoctor
		            			return false
		            		}
		            		if(!vm.justDoc) {
		            			vm.justDoc = vm.signInfo.doctorName
		            		}
		            		vm.warnMsg = "去年签约的全科医生" + vm.justDoc + "已不在您的团队,请重新选择一位全科医生"
					}
					if(v.available && (v.level == 3 || v.level == 2)) {vm.memberList.push(v);}
					if(v.available && v.level == 2) {vm.doctorList.push(v);}
					if(v.available && v.level==1){vm.specialDoctorList.push(v);}
				});
					if(!judge && httpData.status == 1) {
						if(vm.doctorType == 3) {
							if(!vm.justDoc && !vm.signInfo.doctorName) {
								vm.signInfo.doctorName = vm.signInfo.healthDoctorName
								vm.signInfo.doctor = vm.signInfo.healthDoctor
								return false
							}
							if(!vm.justDoc) {
								vm.justDoc = vm.signInfo.doctorName
							}
							vm.warnMsg = "去年签约的全科医生" + vm.justDoc + "已不在您的团队,请重新选择一位全科医生"
							vm.justDoc = null
							vm.signInfo.doctor = null
		            		vm.signInfo.doctorName = null
		            	}
							vm.signInfo.doctorName = null
						}
						if(vm.doctorType == 2) {
							if(!vm.justHDoc && !vm.signInfo.healthDoctorName) {
		            			vm.signInfo.healthDoctorName = vm.signInfo.doctorName
		            			vm.signInfo.healthDoctor = vm.signInfo.doctor
		            			return false
		            		}
								vm.signInfo.healthDoctorName = vm.signInfo.doctorName
								vm.signInfo.healthDoctor = vm.signInfo.doctor
								return false
							}
							if(!vm.justHDoc) {
		            			vm.justHDoc = vm.signInfo.healthDoctorName
		            		}
		            		vm.warnMsg = "去年签约的健管师" + vm.justHDoc + "已不在您的团队,请重新选择一位健管师"
		            		vm.justHDoc = null
		            		vm.signInfo.healthDoctor = null
		            		vm.signInfo.healthDoctorName = null
								vm.justHDoc = vm.signInfo.healthDoctorName
							}
							vm.warnMsg = "去年签约的健管师" + vm.justHDoc + "已不在您的团队,请重新选择一位健管师"
							vm.justHDoc = null
							vm.signInfo.healthDoctor = null
							vm.signInfo.healthDoctorName = null
						}
						top.changeTypeIndex=null
		            }
				} else {
					showErrorMessage(res.msg);
				}
			})
   		},
    	selectStatus: function(num) {
    		if(num == 1) {
    			this.isShowList2 = false;
    			this.isShowList3 = false;
    			this.isShowList4 = false;
    			this.isShowList1 = !this.isShowList1;
    		} else if (num == 2) {
    			if(!this.signInfo.adminTeamCode) {
    				showWarningMessage("请先选择签约团队")
    				return false;
    			}
    			this.isShowList1 = false;
    			this.isShowList3 = false;
    			this.isShowList4 = false;
    			this.isShowList2 = !this.isShowList2;
    		} else if (num == 3) {
    			this.isShowList1 = false;
    			this.isShowList2 = false;
    			this.isShowList4 = false;
    			this.isShowList3 = !this.isShowList3;
    		} else {
    			if(!this.signInfo.adminTeamCode) {
    				showWarningMessage("请先选择签约团队")
    				return false;
    			}
    			this.isShowList1 = false;
    			this.isShowList2 = false;
    			this.isShowList3 = false;
    			this.isShowList4 = !this.isShowList4;
    		}
            
        },
        selectLi: function(num, data) {
        	if(num == 1) { // 选择签约团队
        		this.isShowList1 = false;
	            this.signInfo.adminTeamCode = data.id;
	            this.signInfo.teamCode = data.id;
	            if(this.doctorType == 2) {
	            	this.signInfo.healthDoctor = null
	            	this.signInfo.healthDoctorName = null
	            }
	            if(this.doctorType == 3) {
	            	this.signInfo.doctor = null
	            	this.signInfo.doctorName = null
	            }
							// 发现切换团队时无法更新健管师列表,将这个判断取消后就可以更新.
	            // if(!this.memberList || !this.doctorList) {
	            this.teamMember()
	            // }
        	}
        	if(num == 2) { // 选择健管师
        		this.isShowList2 = false;
	            this.signInfo.healthDoctorName = data.name
	            this.signInfo.healthDoctor = data.code
        	}
			if(num == 3) {
				this.isShowList3 = false;
				this.signInfo.expenses = data.code;
					}
					
			} else {
				showErrorMessage(res.msg);
			}
			if(num == 4) { // 选择全科医生
				this.isShowList4 = false;
	            this.signInfo.doctorName = data.name
	            this.signInfo.doctor = data.code
		})
	   },
	   teamMember2:function(val){
		var vm = this,
			loadding = layer.load(0, {shade: false}),
			params = {
				teamId: vm.signInfo.adminTeamCode,
				name:val||''
			}
        },
        showTeamName: function(teamCode) {
        	var teamName;
        	if(!this.teamList) {
        		return "请选择签约团队";
        	}
        	for(var i = 0, len = this.teamList.length; i < len; i++) {
        		if(teamCode == this.teamList[i].id) {
        			teamName = this.teamList[i].name;
        		}
        	}
        	return teamName
        },
        showExpensesName: function(code) {
        	var expensesName;
        	if(!this.dictList) {
        		return "请选择补贴类型";
        	}
        	for(var i = 0, len = this.dictList.length; i < len; i++) {
        		if(code == this.dictList[i].code) {
        			expensesName = this.dictList[i].value;
        		}
        	}
        	return expensesName
        },
        setPatImg: function(str) {
        	var imgStr = httpRequest.getImgUrl(str);
        	if (imgStr == "") {
        		return '../../../images/p-female.png';
        	} else {
        		return imgStr;
        	}
        },
        lookPhoto: function(data) {
        	parent.photoLayerIndex = parent.layer.open({
        		type: 2,
        		area: ['70%', '600px'],
        		title: false,
        		shade: 0.5,
        		shadeClose: true,
        		shift: 2,
        		content: '../html/photo_show.html?serverType=' + data.serverType + '&patientCode=' + httpData.patientCode
        	})
        },
        refuse: function() {
        	var vm = this;
        	layer.open({
				type: 1,
				area: ['400px', '300px'],
				shade: 0.5,
				title: '拒绝签约原因',
				shift: 2,
				shadeClose: false, //点击遮罩关闭层
				content: '<div class="p20 pb0"><div class="reason_list clearfix"><span class="fl mr10 mb20" onclick="getReason($(this))">居民信息填写不详</span><span class="fl mr10 mb20" onclick="getReason($(this))">签约人数已满</span><span class="fl mb20" onclick="getReason($(this))">家庭医生变更</span></div><textarea id="reason" maxLength="200" placeholder="可选择填写其他拒签原因(限200字以内)"></textarea></div>',
				btn: ['提 交', '取 消'],
				yes:function(index, layero) {
					if(!refuseReason) {
						if(!$("#reason").val()) {
							showWarningMessage("请选择或输入拒绝理由!");
							layer.close(index);
							return false
		signAPI.teamMember(params).then(function(res) {
			layer.close(loadding)
			vm.memberList = [];
			vm.doctorList = [];
			vm.specialDoctorList=[];
			if(res.status == 200) {
				var judge = false
				$.each(res.data, function(i, v) {
					if(v.available) {
						if(v.code == vm.signInfo.doctor && vm.doctorType == 3) {
							judge = true
						}
						vm.signInfo.refuseReason = $("#reason").val()
					} else {
						if($("#reason").val()) {
							vm.signInfo.refuseReason = refuseReason + "。" + $("#reason").val()
						} else {
							vm.signInfo.refuseReason = refuseReason
						if(v.code == vm.signInfo.healthDoctor && vm.doctorType == 2) {
							judge = true
						}
					}
					vm.signInfo.adminTeamCode = 0;
					vm.signInfo.teamCode = 0;
					vm.signInfo.type = 2;
					vm.signInfo.state = 0;
					vm.sign();
					layer.close(index);
				},
				success: function(layero){
					layero.find('.layui-layer-btn').css('text-align', 'center')
				}
			});
        },
        sign: function() {// type:1签约 2拒签
        	if(this.signInfo.type == 1 && (!this.signInfo.expenses || (this.doctorType == 2 && !this.signInfo.healthDoctor) || (this.doctorType == 3 && !this.signInfo.doctor) || !this.signInfo.sevId || (!this.signInfo.disease && !this.signInfo.healthLabel && !this.signInfo.customLabel))) {
        		showWarningMessage("请将填写完整签约信息!");
        		return false;
        	}
        	var vm = this,
    			loadding = layer.load(0, {shade: false});
    		if (httpData.status == 0) {
    			var param = vm.signInfo
    			if(vm.doctorType == 2) {
    				param.doctor = null
    				param.doctorName = null
    			}
    			if(vm.doctorType == 3) {
    				param.doctorHealth = null
    				param.doctorHealthName = null
    			}
				signAPI.sign(vm.signInfo).then(function(res) {
					layer.close(loadding)
					if(res.status == 200) {
						showSuccessMessage(res.msg || "操作成功")
						setTimeout(function() {
							parent.gobalVue.signCount();
							layer.closeAll();
							parent.layer.closeAll();
						}, 1000)
					} else {
						showErrorMessage(res.msg);
					}
				})
					if(v.available && (v.level == 3 || v.level == 2)) {vm.memberList.push(v);}
					if(v.available && v.level == 2) {vm.doctorList.push(v);}
					if(v.available && v.level==1){vm.specialDoctorList.push(v);}
				});					
			} else {
				signAPI.signRenew(vm.signInfo).then(function(res) {
					layer.close(loadding)
					if(res.status == 200) {
						showSuccessMessage(res.msg || "操作成功")
						setTimeout(function() {
							parent.gobalVue.signCount();
							layer.closeAll();
							parent.layer.closeAll();
						}, 1000)
				showErrorMessage(res.msg);
			}
		})
	   },
	   handleSelect(item) {
        console.log(item);
      },
      handleIconClick(ev) {
        console.log(ev);
	  },
	  querySearch(queryString, cb) {
		var doctorList = this.doctorList;
		debugger
        var results = queryString ? doctorList.filter(this.createFilter(queryString)) : doctorList;
        // 调用 callback 返回建议列表的数据
        cb(results);
      },
      createFilter(queryString) {
        return (restaurant) => {
          return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0);
        };
      },
	selectStatus: function(num,val) {
		var vm=this
		if(num == 1) {
			this.isShowList2 = false;
			this.isShowList3 = false;
			this.isShowList4 = false;
			this.isShowList1 = !this.isShowList1;
		} else if (num == 2 || num == 5) {
			if(!this.signInfo.adminTeamCode) {
				showWarningMessage("请先选择签约团队")
				return false;
			}
		} else if (num == 3) {
		}else if(num==5){
		} else {
			if(!this.signInfo.adminTeamCode) {
				showWarningMessage("请先选择签约团队")
				return false;
			}
		}
	
			// if(/^[\u4e00-\u9fa5]+$/i.test(val)){
			// 	_.debounce(vm.teamMember2(val), 300)
			// 	}				
		
	},
	keyupStatus:function(num,val){
		vm.selectStatus(num)
	},
	selectLi: function(num,data) {
		if(num == 1) { // 选择签约团队
			this.isShowList1 = false;
			this.signInfo.adminTeamCode = data.id;
			this.signInfo.teamCode = data.id;
			if(this.doctorType == 2) {
				this.signInfo.healthDoctor = null
				this.signInfo.healthDoctorName = null
			}
			if(this.doctorType == 3) {
				this.signInfo.doctor = null
				this.signInfo.doctorName = null
			}
						// 发现切换团队时无法更新健管师列表,将这个判断取消后就可以更新.
			// if(!this.memberList || !this.doctorList) {
			this.teamMember()
			// }
		}
		if(num == 2) { // 选择健管师
			this.isShowList2 = false;
			this.signInfo.healthDoctorName = data.name
			this.signInfo.healthDoctor = data.code
		}
		if(num == 3) {
			this.isShowList3 = false;
			this.signInfo.expenses = data.code;
		}
		if(num == 4) { // 选择全科医生
			this.isShowList4 = false;
			this.signInfo.doctorName = data.name
			this.signInfo.doctor = data.code
		}
		if(num==5){//选择专科医生
			this.isShowList5=false
			this.signInfo.specialistName = data.name
			this.signInfo.specialist = data.code
		}
	},
	// 把原来下拉选择框变成可搜索下拉选择框
	changeSelect4:function(val){
		var obj = {};
		obj = this.doctorList.find(function(item){
			return item.code === val;
		});
		this.signInfo.doctorName=obj.name
	},
	changeSelect2:function(val){
		var obj = {};
		obj = this.memberList.find(function(item){
			return item.code === val;
		});
		this.signInfo.healthDoctorName=obj.name
	},
	changeSelect5:function(val){
		var obj = {};
		obj = this.specialDoctorList.find(function(item){
			return item.code === val;
		});
		this.signInfo.specialistName=obj.name
	},
	showTeamName: function(teamCode) {
		var teamName;
		if(!this.teamList) {
			return "请选择签约团队";
		}
		for(var i = 0, len = this.teamList.length; i < len; i++) {
			if(teamCode == this.teamList[i].id) {
				teamName = this.teamList[i].name;
			}
		}
		return teamName
	},
	showExpensesName: function(code) {
		var expensesName;
		if(!this.dictList) {
			return "请选择补贴类型";
		}
		for(var i = 0, len = this.dictList.length; i < len; i++) {
			if(code == this.dictList[i].code) {
				expensesName = this.dictList[i].value;
			}
		}
		return expensesName
	},
	setPatImg: function(str) {
		var imgStr = httpRequest.getImgUrl(str);
		if (imgStr == "") {
			return '../../../images/p-female.png';
		} else {
			return imgStr;
		}
	},
	lookPhoto: function(data) {
		parent.photoLayerIndex = parent.layer.open({
			type: 2,
			area: ['70%', '600px'],
			title: false,
			shade: 0.5,
			shadeClose: true,
			shift: 2,
			content: '../html/photo_show.html?serverType=' + data.serverType + '&patientCode=' + httpData.patientCode
		})
	},
	refuse: function() {
		var vm = this;
		layer.open({
			type: 1,
			area: ['400px', '300px'],
			shade: 0.5,
			title: '拒绝签约原因',
			shift: 2,
			shadeClose: false, //点击遮罩关闭层
			content: '<div class="p20 pb0"><div class="reason_list clearfix"><span class="fl mr10 mb20" onclick="getReason($(this))">居民信息填写不详</span><span class="fl mr10 mb20" onclick="getReason($(this))">签约人数已满</span><span class="fl mb20" onclick="getReason($(this))">家庭医生变更</span></div><textarea id="reason" maxLength="200" placeholder="可选择填写其他拒签原因(限200字以内)"></textarea></div>',
			btn: ['提 交', '取 消'],
			yes:function(index, layero) {
				if(!refuseReason) {
					if(!$("#reason").val()) {
						showWarningMessage("请选择或输入拒绝理由!");
						layer.close(index);
						return false
					}
					vm.signInfo.refuseReason = $("#reason").val()
				} else {
					if($("#reason").val()) {
						vm.signInfo.refuseReason = refuseReason + "。" + $("#reason").val()
					} else {
						showErrorMessage(res.msg);
						vm.signInfo.refuseReason = refuseReason
					}
				})
				}
				vm.signInfo.adminTeamCode = 0;
				vm.signInfo.teamCode = 0;
				vm.signInfo.type = 2;
				vm.signInfo.state = 0;
				vm.sign();
				layer.close(index);
			},
			success: function(layero){
				layero.find('.layui-layer-btn').css('text-align', 'center')
			}
		});
	},
	sign: function() {// type:1签约 2拒签
		if(this.signInfo.type == 1 && (!this.signInfo.expenses || (this.doctorType == 2 && !this.signInfo.healthDoctor) || (this.doctorType == 3 && !this.signInfo.doctor) || !this.signInfo.sevId || (!this.signInfo.disease && !this.signInfo.healthLabel && !this.signInfo.customLabel))) {
			showWarningMessage("请将填写完整签约信息!");
			return false;
		}
		var vm = this,
			loadding = layer.load(0, {shade: false});
		if (httpData.status == 0) {
			var param = vm.signInfo
			if(vm.doctorType == 2) {
				param.doctor = null
				param.doctorName = null
			}
        }
    }
			if(vm.doctorType == 3) {
				param.doctorHealth = null
				param.doctorHealthName = null
				param.specialist=null
				param.specialistName=null
			}
			signAPI.sign(vm.signInfo).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					showSuccessMessage(res.msg || "操作成功")
					setTimeout(function() {
						parent.gobalVue.signCount();
						layer.closeAll();
						parent.layer.closeAll();
					}, 1000)
				} else {
					showErrorMessage(res.msg);
				}
			})
		} else {
			signAPI.signRenew(vm.signInfo).then(function(res) {
				layer.close(loadding)
				if(res.status == 200) {
					showSuccessMessage(res.msg || "操作成功")
					setTimeout(function() {
						parent.gobalVue.signCount();
						layer.closeAll();
						parent.layer.closeAll();
					}, 1000)
				} else {
					showErrorMessage(res.msg);
				}
			})
		}
	}
}
})