<template>
	<view class="box" @click="cancelBeast">
		<view class="headbox">
			<!-- 顶部时间 -->
			<view class="headboxhead">
				<view class="boxhead1">{{luyinList.receptionTime}}</view>
			</view>
			<!-- 标记顾问 -->
			<view class="headboxbott">
				<view class="headovfu">
					<view class="mytab" v-for="(item,index) in tablist" :key="index" @click="tapspagek(item, index)">
						<view class="tab-item" :class="{tabActive: item.select}">{{item.name}}</view>
					</view>
				</view>
				<view v-if="permissions.bjgw" class="headpade">
					<view class="biaoji" @tap="tagtap">标记</view>
				</view>
			</view>
		</view>
		<scroll-view lower-threshold='100px' @scrolltolower="ltolower" upper-threshold='40px'
			@scrolltoupper="rolltoupper" :scroll-into-view="scrollId" scroll-y="true" class="zhuti text scroll-Y">
			<!-- 聊天记录-->
			<view :id="'dialog'" class="fileName">录音文件</view>
			<view class="dialog-block" @click="close()" v-for="(item, index) in dialogList" :key="index">
				<view class="text"
					:class="{active: Math.floor(item.bg/1000) <= playNow && Math.floor(item.ed/1000) > playNow, isGreen: item.isShow == 0}"
					:data-guwen="item.isShow" :data-speaker="item.speaker" :id="'dialogtext'+item.bg">
					<template v-if="refined">
						<view class="checkbox" :class="{select: item.checked}" @click="cbChange(item)">
							<template v-if="item.checked">
								<u-icon name="checkbox-mark" color="#fff" />
							</template>
						</view>
					</template>
					<view class="avatar">
						<view>
							<image v-if="item.isShow == 0"
								src="https://static.quhouse.com/b11a7e1ccf914020b3ee23d3e4862637.png" mode="widthFix">
							</image>
							<text v-else :style="[borderColor(item.speaker)]">{{ item.speaker | toCapital }}</text>
						</view>
					</view>
					<view class="contentInfo">
						<view class="info">
							{{ item.speaker | toCapital }} {{conversionTiame(item.bg/1000)}}
						</view>
						<view class="contentMain" @click.stop>
							<view class="content">
								<view @longpress.stop="changanxiaoguo(item,index)" v-html="item.onebest"></view>

								<template v-if="item.isshow">
									<view class="tankuangcss" :class="{bottoms:index == 0}">
										<view class="tankuangcss-items" @click="clickcopy">
											<image src="@/static/images/detail/icon1.png" mode=""></image>
											<text>复制</text>
										</view>
										<view v-if="permissions.ccc" class="tankuangcss-items"
											@click="Oftenthewrongword">
											<image src="@/static/images/detail/icon2.png" mode=""></image>
											<text>常错词</text>
										</view>
										<view v-if="permissions.swyxal" class="tankuangcss-items"
											@click="publicEvents('sureRefinement')">
											<image src="@/static/images/detail/icon3.png" mode=""></image>
											<text>加精华</text>
										</view>
										<view class="tankuangcss-items" @click="publicEvents('showRoleisshaw')">
											<image src="@/static/images/detail/icon4.png" mode=""></image>
											<text>修改角色</text>
										</view>
									</view>
								</template>
							</view>
							<image v-if="Math.floor(item.bg/1000) <= playNow && Math.floor(item.ed/1000) > playNow"
								class="play" src="https://static.quhouse.com/ce73a5225f7f44be9f313b0e4e4c2c0e.png">
							</image>
							<image v-else @click="clickbofang(item)" class="play"
								src="https://static.quhouse.com/1b6ac53247e043a1bdc59ecfb2167eba.png"></image>
						</view>
						<!-- ----------对话下方新加话术标签标识------------ -->
						<!-- 1 客户画像 2销讲词 3违禁 4 需求挖掘 -->
						<view class="newmark" v-if="item.types">
							<view class="mark-item" v-for="(subitem,i) in dealTypes(item.types)" :key="i">
								<image v-if="dealword(subitem)[0]==1" class="markicon"
									src="https://static.quhouse.com/37e0de3f8d1c421dac8bf699d5e7992d.png"></image>
								<image v-if="dealword(subitem)[0]==2" class="markicon"
									src="https://static.quhouse.com/b106e8e75db24a59a579a15a78830a76.png"></image>
								<image v-if="dealword(subitem)[0]==3" class="markicon"
									src="https://static.quhouse.com/8443a2ecb81d4639991ab29c422e9949.png"></image>
								<image v-if="dealword(subitem)[0]==4" class="markicon"
									src="https://static.quhouse.com/1cd794cb6c974d9dad948a6dd444518b.png"></image>
								<view class="marktext" :style="dealword(subitem)[0]==3?'color:#E7483C':'color:#3E50E8'">
									{{dealword(subitem)[1]}}
								</view>
							</view>
						</view>
					</view>
				</view>
			</view>
		</scroll-view>

		<view class="bottombox" v-if="!refined">
			<!-- 播放块  -->
			<zaudio @checkPlaybackRate="checkPlaybackRate" :duration="duration" theme="theme4"></zaudio>
			<!-- 底部弹框 -->
			<view class="botbotmm">
				<view class="tmmchen" @click="guanjiancishifo()">
					<image src='https://static.quhouse.com/226d5e0b97e6407a9901273c3f582ee7.png' mode=""></image>
					<view class="text">关键词</view>
				</view>
				<view class="fill"></view>
				<view class="tmmchen" @click="Receivedetailsabouttab('intention')">
					<image src="https://static.quhouse.com/19f555ae422b4285b5102875579e61d6.png" mode=""></image>
					<view class="text">客户意向</view>
				</view>
				<view class="fill"></view>
				<view class="tmmchen" @click="Receivedetailsabouttab('Pinspeak')">
					<image src="https://static.quhouse.com/ce369b09d7be4305990dacdeb84a91f6.png" mode=""></image>
					<view class="text">销讲执行</view>
				</view>
				<view class="fill"></view>
				<view class="tmmchen" @click.stop="moreClick">
					<image src="https://static.quhouse.com/8807fbe8d7204b4da7c2e0209d8ec8ea.png" mode=""></image>
					<view class="text">更多</view>
				</view>
			</view>
		</view>
		<template v-else>
			<view class="bottomboxs">
				<view class="bottomboxs-item" @click="surePublic">确定</view>
				<view class="bottomboxs-item" @click="cancelAllAdd">取消</view>
			</view>
		</template>


		<!-- 更多弹框 -->
		<view class="moremodal" v-if="Thetapeidisshow">
			<view class="more-cont">
				<view class="more-title">更多功能
					<image class="close-icon" @click="Thetapeidisshow=false"
						src="https://static.quhouse.com/4a977a0ecb594f2ebfd5f020b29dcc79.png" mode=""></image>
				</view>
				<view class="more-btn">

					<view v-if="permissions.xgxjyw" class="btn-item"
						@click.stop="showTemplate = !showTemplate; Thetapeidisshow=false">
						<!-- 						<image class="icon" v-if="userlistobj.validInvalidName"
							src="https://static.quhouse.com/868b0eba0f7c44eca63e3b4fa782f14d.png" mode=""></image>
						<image class="icon" v-else src="https://static.quhouse.com/480e572bf43c48558ad9febe5426f439.png"
							mode=""></image> -->
						更换销讲业务
					</view>

					<view class="btn-item" v-if="permissions.bjyx" @click.stop="alllogo">
						<image class="icon" v-if="userlistobj.validInvalidName"
							src="https://static.quhouse.com/868b0eba0f7c44eca63e3b4fa782f14d.png" mode=""></image>
						<image class="icon" v-else src="https://static.quhouse.com/480e572bf43c48558ad9febe5426f439.png"
							mode=""></image>
						{{ userlistobj.validInvalidName }}
					</view>
					<view class="btn-item" v-if="permissions.swyxal" @click="jiajing()">
						<image class="icon" v-if="status==0"
							src="https://static.quhouse.com/47ae5b25cc804bf38e98d2816aef2514.png" mode=""></image>
						<image class="icon" v-else src="https://static.quhouse.com/4f1b60d9842146e9bd3e43fae42665bc.png"
							mode=""></image>
						优秀案例
					</view>
					<template v-if="permissions.sbrz">
						<view class="btn-item" @click="eqLogClick">
							<image class="icon" src="https://static.quhouse.com/ff65fd92c742469594ac85f8bc721964.png"
								mode=""></image>
							设备日志
						</view>
					</template>


					<template
						v-if="(userlistobj.visitRecord == 1 || userlistobj.visitFlag == 1) && CHECKAUTHORITY('xgdfcs')">
						<view class="btn-item" @click="showVisit = true;Thetapeidisshow=false">
							<image class="icon" src="../../static/images/users.png" mode=""></image>
							到访次数
						</view>
					</template>
				</view>
			</view>
		</view>

		<!-- 标记 -->
		<template v-if="biojiisshow">
			<view class="zhezhao" @tap="unmarktap()"></view>
			<view class="bounced">
				<view class="jiajinghuatit">标记为顾问</view>
				<view
					style="width: 95%;display: flex;flex-wrap: wrap;margin: 0 auto;padding-top: 30rpx;padding-bottom: 30rpx;">
					<view class="viewclace" v-for="(item,index) in tablists" :class="{bosdttom: item.checked}"
						:key="item.name" @tap.stop="biaojixuanze(item)">
						<view>{{item.name}}</view>
					</view>
				</view>
				<view class="bounced3" style="margin-top: 20rpx;">
					<view class="bounced3-1" @tap="unmarktap()">取消</view>
					<view class="bounced3-2" @tap="Confirmthetag()">确认</view>
				</view>
			</view>
		</template>

		<!-- 加入常错词 -->
		<u-modal v-model="isshow2" title="添加常错词" :show-cancel-button="true" @cancel="Cancelout"
			@confirm="Confirmtheexit">
			<view class="tian-view">
				<viwe class="tian-view-t1"></viwe>
				<viwe class="tian-view-t2">常错词：</viwe>
				<viwe class="tian-view-t3">
					<u-input :auto-height="false" height="30" :disabled="isNum" type="textarea" v-model="thewrongword"
						:custom-style="customStyle" :border="false" class="tian-input" placeholder="请输入" />
				</viwe>
			</view>
			<view class="tian-view" style="margin-bottom: 74rpx;">
				<viwe class="tian-view-t1"></viwe>
				<viwe class="tian-view-t2">正确词：</viwe>
				<viwe class="tian-view-t3">
					<u-input class="tian-input" height="30" type="textarea" v-model="reswrongword" :border="false"
						:custom-style="customStyle" placeholder="请输入" />
				</viwe>
			</view>
		</u-modal>

		<!-- 加精华 -->
		<template v-if="isshow3">
			<view class="zhezhao" @tap="Cancelout2"></view>
			<view class="bounced">
				<view class="jiajinghuatit">加精华</view>
				<view style="width: 100%;text-indent: 20rpx;font-size: 28rpx;">选择标签</view>
				<view class="jiajinghuaview">
					<view class="jighuaview2" v-for="(item,index) in biaoqianlist" :key="index"
						:class="biaoqianindex == index ? 'biaoqiantom' : ''">
						<view class="view1-text" @click="tapbiaoqianclisck(index)">{{item.name}}</view>
					</view>
				</view>
				<view class="bounced3">
					<view class="bounced3-1" @tap="Cancelout2">取消</view>
					<view class="bounced3-2" @tap="Confirmtheexit2">确认</view>
				</view>
			</view>
		</template>

		<!-- 接待详情 -->
		<template v-if="Receivedetailsabout">
			<view class="zhezhao" @click="clenReceivedetailsabout()"></view>
			<view class="followingpop-up">
				<view class="guanbibox">
					<image class="guanbixen" @click="clenReceivedetailsabout()" src="../../static/images/Shutdown.png"
						mode=""></image>
					<view class="cenisboxtab">
						<view class="cenisboxtabview">
							<view>接待详情</view>
						</view>
					</view>
				</view>
				<view class="cenisbox">
					<view
						style="width: 96%;height: 26rpx;display: flex;margin: 0 auto; margin-top: 40rpx;align-items: center;">
						<view style="width: 25%;color: #666666;font-size: 26rpx;">接待顾问</view>
						<view style="width: 75%;color: #333333;font-size: 26rpx;">{{userlistobj.agentName}}</view>
					</view>
					<view
						style="width: 96%;height: 26rpx;display: flex;margin: 0 auto; margin-top: 40rpx;align-items: center;">
						<view style="width: 25%;color: #666666;font-size: 26rpx;">意向项目</view>
						<view style="width: 75%;color: #333333;font-size: 26rpx;">{{userlistobj.projectName}}</view>
					</view>
					<view
						style="width: 96%;height: 26rpx;display: flex;margin: 0 auto; margin-top: 40rpx;align-items: center;">
						<view style="width: 25%;color: #666666;font-size: 26rpx;">接待开始时间</view>
						<view style="width: 75%;color: #333333;font-size: 26rpx;">{{userlistobj.staTime}}</view>
					</view>
					<view
						style="width: 96%;height: 26rpx;display: flex;margin: 0 auto; margin-top: 40rpx;align-items: center;">
						<view style="width: 25%;color: #666666;font-size: 26rpx;">接待结束时间</view>
						<view style="width: 75%;color: #333333;font-size: 26rpx;">{{userlistobj.endTime1}}</view>
					</view>
					<view
						style="width: 96%;height: 26rpx;display: flex;margin: 0 auto; margin-top: 40rpx;align-items: center;">
						<view style="width: 25%;color: #666666;font-size: 26rpx;">录音时长</view>
						<view style="width: 75%;color: #333333;font-size: 26rpx;">{{userlistobj.mm}}分钟</view>
					</view>
				</view>
			</view>
		</template>

		<!-- 销讲执行 -->
		<template v-if="Pinspeak">
			<view class="zhezhao" @click="clenReceivedetailsabout()"></view>
			<view class="followingpop-up">
				<view class="guanbibox">
					<image class="guanbixen" @click="clenReceivedetailsabout()" src="../../static/images/Shutdown.png"
						mode=""></image>
					<view class="cenisboxtab">
						<view class="cenisboxtabview">
							<view>销讲执行</view>
						</view>
					</view>
				</view>
				<view class="pingfenbox">
					<view style="overflow: hidden;" :class="{ activecllasscet: zhixingcenterindex == 0 }"
						@click="recordclick(0)">销讲总执行率{{totalRate}}%
					</view>
					<view v-if="permissions.ckwjzx" :class="{ activecllasscet: zhixingcenterindex == 1 }"
						@click="recordclick(1)">禁忌执行</view>
					<view :class="{ activecllasscet: zhixingcenterindex == 2 }" @click="recordclick(2)">需求挖掘率</view>
				</view>
				<view v-if="zhixingcenterindex == 0" class="cenisbox">
					<view
						style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;">
						<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 20rpx;">指标
						</view>
						<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 170rpx;">执行率
						</view>
					</view>
					<view class="Level-box" v-for="(item,index) in ratelist" :key="index">
						<view class="Level1che" @click="changeshow(item,1)">
							<view class="title1">{{item.name.substring(0,8)}}</view>
							<view class="leve1-jindu">
								<view class="jindutiao">
									<view class="huanxing" :style="{width: item.ratepercent/item.rate*100+'%'}"></view>
									<view class="text">{{((item.ratepercent/item.rate).toFixed(2)*100).toFixed()}}%
									</view>
								</view>
							</view>
							<view class="jiantobox">
								<image v-if="!item.show" class="arrow rotatearrow" src="/static/images/down.png"
									mode="" />
								<image v-else class="arrow" src="/static/images/up.png" mode="" />
							</view>
						</view>
						<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i">
							<view class="Level2che" @click="changeshow2(subitem,1)">
								<view class="title1">{{subitem.name.substring(0,8)}}</view>
								<view class="leve1-jindu">
									<view class="zhixing" v-if="!subitem.selected">已执行</view>
									<view class="zhixing2" v-else>未执行</view>
								</view>
								<view class="jiantobox">
									<image v-if="!subitem.show" class="arrow rotatearrow" src="/static/images/down.png"
										mode="" />
									<image v-else class="arrow" src="/static/images/up.png" mode="" />
								</view>
							</view>
							<view class="hsnrtest" v-if="subitem.show">话术内容</view>
							<view class="Level3che" @tap="clickaudeopal(che)" v-if="subitem.show"
								v-for="(che,inc) in subitem.children" :key='inc'>
								<view class="title1">{{inc+1}}.{{che.name}}</view>
								<view class="jiantobox">
									<image v-if="che.selected==0" class="arrow" src="/static/images/rate-checked.png"
										mode="" />
								</view>
							</view>
							<view v-if="subitem.show" style="width: 100%;height: 30rpx;"></view>
						</view>
					</view>
				</view>
				<view v-if="zhixingcenterindex == 1">
					<template v-if="prohibitedlist.guwen.length > 0">
						<view style="font-size: 30rpx;padding: 12rpx 24rpx;">顾问</view>
						<view v-if="prohibitedlist.length!=0" class="title1-12" @click="tapbadge(item)"
							v-for="(item,index) in  prohibitedlist.guwen" :key='index'>
							{{index+1}}.{{item}}
						</view>
					</template>
					<template v-if="prohibitedlist.kehu.length > 0">
						<view style="font-size: 30rpx;padding: 12rpx 24rpx;">客户</view>
						<view v-if="prohibitedlist.length!=0" class="title1-12" @click="tapbadge(item)"
							v-for="(item,index) in  prohibitedlist.kehu" :key='index'>
							{{index+1}}.{{item}}
						</view>
					</template>
					<view v-if="prohibitedlist.guwen.length == 0 && prohibitedlist.kehu.length == 0" style="width: 100%;text-align: center;margin-top: 60rpx;">
						暂无数据
					</view>
				</view>
				<!-- 需求挖掘率 -->
				<view v-if="zhixingcenterindex == 2" class="cenisbox">
					<view class="top-box">
						<view style="width:50%;text-align:center">挖掘执行:{{wordFraction||0}}%</view>
						<view style="width:50%;text-align:center">挖掘成功:{{percent||0}}%</view>
					</view>
					<view
						style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;">
						<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 28rpx;">指标
						</view>
						<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-align:center">执行率
						</view>
						<view style="flex: 1;color: #333333;font-weight: 600;text-align:center;text-indent:28rpx">挖掘成功
						</view>
						<view style="flex: 0 0 30rpx"></view>
					</view>
					<view class="Level-box" v-for="(item,index) in KeyWordsfractionList" :key="index">
						<view class="Level1che" @click="hangeshow2(item,1)">
							<view class="title1" style="flex:1">{{item.name}}</view>
							<view class="Level1-middle" style="flex:2;display:flex;">
								<view class="item" style="flex:1;text-align:center;">执行{{item.fraction || 0}}%</view>
								<view class="item" style="flex:1;text-align:center;color:#2671E2"
									v-if="item.keywordsList&&item.keywordsList.length">已完成({{
									item.keywordsList.length
						}})</view>
								<view class="item" v-else style="flex:1;text-align:center;">未完成</view>
							</view>
							<view class="jiantobox">
								<image v-if="!item.show" class="arrow rotatearrow" src="/static/images/down.png"
									mode="" />
								<image v-else class="arrow" src="/static/images/up.png" mode="" />
							</view>
						</view>
						<!-- 话术在一级下 -->
						<view v-if="item.children&&item.children.length==0">
							<view class="hhhbox" v-if="item.show" style="padding: 30rpx;">
								<view class="hsnrtest" style="font-size:30rpx;color: #333;line-height: 42rpx;">
									客户标签：{{ getKeywordsList(item.keywordsList) }}</view>
								<view class="hsnrtest" style="margin-top:10rpx">话术内容：</view>
								<view v-if="item.modelList.length==0">暂无话术</view>
								<view class="Level3che" @click="clickWajue(che)" v-for="(che,inc) in item.modelList"
									:key='inc'>
									<view class="title1"
										:style="che.isAskQuestions==2?'color:#FF8C13':che.isAskQuestions==0?'':'color: #666'">
										{{inc+1}}.{{che.showFormatExpression}}
									</view>
									<view class="jiantobox">
										<!-- 0本次选中 1未选中 2上次选中 -->
										<image v-if="che.isAskQuestions==0" class="arrow"
											src="/static/images/rate-checked.png" mode="" />
										<image v-else-if="che.isAskQuestions==2" class="arrow"
											src="/static/images/checked-yellow.png" mode="" />
										<image v-else class="arrow" src="/static/images/rate-nocheck.png" mode="" />
									</view>
								</view>
							</view>
						</view>
						<!-- 话术二级下 -->
						<view v-if="item.children&&item.children.length">
							<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i">
								<view class="Level2che" @click="hangeshow2(subitem,1)">
									<view class="title1 u-line-1">{{subitem.name}}</view>
									<view class="leve1-jindu">
										<view class="zhixing" v-if="subitem.isAskQuestions==0">已执行</view>
										<view class="zhixing2" v-else>未执行</view>
									</view>
									<view class="leve1-jindu">
										<view class="zhixing" v-if="subitem.selected==0">已完成</view>
										<view class="zhixing2" v-else>未完成</view>
									</view>
									<view class="jiantobox">
										<image v-if="!subitem.show" class="arrow rotatearrow"
											src="/static/images/down.png" mode="" />
										<image v-else class="arrow" src="/static/images/up.png" mode="" />
									</view>
								</view>
								<view v-if="subitem.show" style="padding: 30rpx 0;">
									<view class="hsnrtest" style="font-size:30rpx;color: #333;line-height: 42rpx;">
										客户标签：{{ getKeywordsList(subitem.keywordsList) }}</view>
									<view class="hsnrtest" style="margin-top: 10rpx">话术内容：</view>
									<view v-if="subitem.modelList.length==0">暂无话术</view>
									<view class="Level3che" @click="clickWajue(che)"
										v-for="(che,inc) in subitem.modelList" :key='inc'>
										<view class="title1"
											:style="che.isAskQuestions==2?'color:#FF8C13':che.isAskQuestions==0?'':'color: #666'">
											{{inc+1}}.{{che.showFormatExpression}}
										</view>
										<view class="jiantobox">
											<!-- 0本次选中 1未选中 2上次选中 -->
											<image v-if="che.isAskQuestions==0" class="arrow"
												src="/static/images/rate-checked.png" mode="" />
											<image v-else-if="che.isAskQuestions==2" class="arrow"
												src="/static/images/checked-yellow.png" mode="" />
											<image v-else class="arrow" src="/static/images/rate-nocheck.png" mode="" />
										</view>
									</view>
								</view>
							</view>
						</view>
					</view>
				</view>
			</view>
		</template>

		<!-- 客户意向 -->
		<template v-if="intention">
			<view class="zhezhao" @click="clenReceivedetailsabout()"></view>
			<view class="followingpop-up">
				<view class="guanbibox">
					<image class="guanbixen" @click="clenReceivedetailsabout()" src="../../static/images/Shutdown.png"
						mode=""></image>
					<view class="cenisboxtab">
						<view class="cenisboxtabview">
							<view>客户意向</view>
						</view>
					</view>
				</view>
				<view class="pingfenbox">
					<view :class="{ activecllasscet: kehuyixiangcenterindex == 0 }" @click="customerofintention(0)">系统分析
					</view>
					<view :class="{ activecllasscet: kehuyixiangcenterindex == 1 }" @click="customerofintention(1)">人工校准
					</view>
				</view>
				<view class="cenisbox" v-if="kehuyixiangcenterindex==0">
					<view style="width: 100%;height: 100%;text-align: center;margin-top: 200rpx;"
						v-if="Acquirecustomerintentlist.length==0">
						暂无数据
					</view>
					<view class="jianbox" v-if="Acquirecustomerintentlist.length!=0"
						v-for="(item,index) in Acquirecustomerintentlist" :key='index'>
						<view class="jianbox-cen">
							<view class="jianboxtext">{{item.name}}</view>
							<view class="jianboxjian" @click="Acquishow(index)">
								<image v-if="item.isshow==false" class="jiantop" src="../../static/images/jiantop.png"
									mode=""></image>
								<image v-if="item.isshow==true" class="jiantop1"
									src="../../static/images/jianbutton.png" mode=""></image>
							</view>
						</view>
						<view style="width: 690rpx;margin: 0 auto;display: flex;flex-wrap: wrap;"
							v-if="item.isshow==true">
							<view class="sdfsaf" v-if="chend.showType==0" @click="argece(chend)"
								v-for="(chend,i) in item.children" :key='i'>
								<view class="jiangshang sdfsaf">{{chend.text}}</view>
							</view>
							<view class="sdfsaf" v-if="chend.showType==1" @click="argece(chend)"
								v-for="(chend,i) in item.children" :key='i'>
								<view class="jiangshang1 sdfsaf">{{chend.text}}</view>
							</view>
						</view>
					</view>
				</view>
				<view class="cenisbox" v-if="kehuyixiangcenterindex==1">
					<view style="width: 100%;height: 100%;text-align: center;margin-top: 200rpx;"
						v-if="Acquirecustomerintentlist2.length==0">
						暂无数据
					</view>
					<view class="jianbox" v-if="Acquirecustomerintentlist2.length"
						v-for="(item,index) in Acquirecustomerintentlist2" :key='index'>
						<view class="jianbox-cen">
							<view class="jianboxtext">{{item.name}}</view>
							<view class="jianboxjian" @click="Acquishow2(index)">
								<image v-if="item.isshow==false" class="jiantop" src="../../static/images/jiantop.png"
									mode=""></image>
								<image v-if="item.isshow==true" class="jiantop1"
									src="../../static/images/jianbutton.png" mode=""></image>
							</view>
						</view>
						<view class="bioqianwayl" v-if="item.isshow==true">
							<view class="jiangshang" v-for="(chend,i) in item.children" :key='i'
								v-if="chend.selected==0">
								{{chend.text}}
							</view>
						</view>
					</view>
				</view>

				<view class="calibration" v-if="permissions.xz" @click="tocalibration()">校准</view>
			</view>
		</template>

		<!-- 请选择无效原因 -->
		<template v-if="effective">
			<view class="zhezhao"></view>
			<view class="bounced">
				<view class="jiajinghuatit">请选择无效原因</view>
				<view class="uni-list"
					style="margin: 20rpx 0;padding: 0 40rpx;display: flex;justify-content: center;height: 90rpx;"
					@tap="effectiveIndexShow = true">
					<view
						style="width: 100%;padding: 10rpx 20rpx;display: flex;align-items: center;justify-content: space-between;border: 1rpx solid #E0E0E0;border-radius: 4rpx;color: #333333;">
						{{ effectiveIndexText }}
						<image style="width: 20rpx;height: 12rpx;" src="@/static/images/downs.png" mode=""></image>
					</view>
				</view>
				<view v-if="effectiveindex == 5" style="margin: 20rpx 0;padding: 0 40rpx;">
					<textarea class="ffectivetext" v-model="effectiveitext" placeholder="请填写无效原因" />
				</view>
				<view class="bounced3">
					<view class="bounced3-1" @click="effective=false">取消</view>
					<view class="bounced3-2" @click="$noMultipleClicks(effectiveAdd)">确认</view>
				</view>
			</view>
		</template>

		<!-- 修改角色 -->
		<template v-if="roleisshaw">
			<view class="zhezhao" @tap="unmarktap()"></view>
			<view class="bounced">
				<view class="jiajinghuatit">修改角色</view>
				<view
					style="width: 95%;display: flex;flex-wrap: wrap;margin: 0 auto;padding-top: 30rpx;padding-bottom: 30rpx;">
					<view class="viewclace" :class="roleindexrow == index ? 'bosdttom' : ''" @click="rolexuanze(index)"
						v-for="(item,index) in tablist.slice(1,tablist.length)" :key="index">
						<view>{{item.name}}</view>
					</view>
					<view class="headpade" style="border: none;">
						<view class="biaoji" @tap="addRole">新增角色</view>
					</view>
				</view>
				<view class="bounced3" style="margin-top: 20rpx;">
					<view class="bounced3-1" @tap="unmarktap()">取消</view>
					<view class="bounced3-2" @tap="roletab()">确认</view>
				</view>
			</view>
		</template>

		<!-- 消息提示组件 -->
		<u-toast ref="uToast" />

		<!-- 销讲业务 -->
		<u-select :mask-close-able="false" label-name="templateName" value-name="id" v-model="showTemplate"
			mode="single-column" :list="templateList" @cancel="templateCancel" @confirm="templateConfirm"></u-select>

		<!-- 加载组件 -->
		<u-loadings v-model="LOADING"></u-loadings>

		<!-- 无效接待原因 -->
		<u-select :mask-close-able="false" label-name="name" value-name="id" v-model="effectiveIndexShow"
			mode="single-column" :list="effectiveitems" @cancel="effectiveIndexCancel" @confirm="effectiveIndexConfirm">
		</u-select>

		<!-- 本次属于客户第几次到访 -->
		<u-popup v-model="showVisit" mode="center" border-radius="16" width="600rpx">
			<view class="show-visit-content">
				<view class="visit-title">
					修改次数
				</view>

				<view class="visit-box">
					<view class="v-t">本次属于客户第几次到访</view>
					<view class="visit-step">
						<view class="mitems" style="border-right: 1rpx solid #999;" @tap="reduce">
							-
						</view>

						<input class="input" type="number" disabled v-model="visitParams.visitRecordNum">

						<view class="mitems" style="border-left: 1rpx solid #999;" @tap="add">
							+
						</view>
					</view>
					<view class="tips">
						注意：客户没有第一次到访记录，该客户所有的接待销讲执行率，不参与统计
					</view>
				</view>

				<view class="visit-btns">
					<view class="btn-item" @tap="cancelVisitRecord">取消</view>
					<view class="btn-item" @tap="changeVisitRecord" style="border-left: none;">确认</view>
				</view>

			</view>
		</u-popup>

	</view>
</template>

<script>
	var util = require("../../utils/util.js");
	var config = require("../../config");
	import zaudio from '@/components/uniapp-zaudio/zaudio';
	export default {
		components: {
			zaudio
		},
		data() {
			return {
				KeyWordsfractionList: [], // 客户详情需求挖掘话术列表
				customStyle: { // 输入框自定义样式
					'width': '320rpx',
					'font-size': '34rpx',
					'border-bottom': '1px solid #ccc'
				},
				noClick: true, // 防重点击
				kehuyixiangcenterindex: 0, // 系统分析人工校准选项卡
				calibration: 0, // 不知道是个啥
				Acquirecustomerintentlist2: [], // 人工校准数组
				Acquirecustomerintentlist: [], // 系统分析数组
				zhixingcenterindex: 0, // 销讲总执行率 && 禁忌执行 && 需求挖掘率 选项卡下标
				prohibitedlist: {
					guwen: [], // 顾问违禁词
					kehu: [], // 客户违禁词
				}, // 禁忌执行

				tablist: [], // 角色列表
				tablists: [], // 标记顾问的角色列表

				roleSelectArr: [0], // 当前选中的角色标记点

				customerId: "", // 客户id
				luyinList: {}, // 录音文件详情（obj形式）
				dialogList: [], // 录音识别列表

				scrollId: "", // scroll-view的锚点 id
				playNow: 0, // 当前录音播放时间戳

				ratelist: [], //评分列表
				totalRate: "", // 销讲总执行率

				thewrongword: "", //错误词
				reswrongword: "", //正确词
				isshow2: false, // 修改常错词弹出层控制变量

				messagelisy: [], // /corpus/addCorrectWord 加入常错词接口 入参translateHtmlContent
				isshow3: false, // 加精弹窗
				biaoqianlist: [], // 加精华 标签的列表
				biaoqianindex: 0, // 选中标签下标
				biaoqianid: "", // 选择加精的标签id
				status: 0, // 不知道是啥
				itemobj: {}, // uni.getStorageSync('searchobj') 估计是其他页面存的筛选条件
				biojiisshow: false, // 标记弹窗
				userlistobj: {}, // 用户信息

				Receivedetailsabout: false, // 接待详情弹窗
				Pinspeak: false, // 销讲执行弹窗
				intention: false, // 客户意向弹窗

				buildingID: uni.getStorageSync('buildingID').id || '', // 当前选中的项目id
				Thetapeidisshow: false, // 底部菜单更多弹框

				effective: false, // 无效原因弹窗
				effectiveindex: '0', // 无效原因id
				effectiveitems: [], // 无效原因数组
				effectiveIndexShow: false, // 无效原因select弹窗
				effectiveIndexText: '请选择', // 无效原因展示文字

				effectiveitext: '', // 无效原因备注文字
				textItself: '', // 存储修改的常错字对话
				argtextindex2: 0, // 长按单次选中的对话下标

				permissions: {}, // 权限菜单

				roleisshaw: false, // 修改角色弹窗
				roleindexrow: 0, // 选中需要修改的角色下标
				roletiaoshu: 0,
				ACTION: Symbol('zaudio'), // 唯一值区分每个页面的方法
				isPageHide: false, // 是否息屏
				duration: '', // 总时长
				refresh: false, // 默认false

				isNum: false, // 常错词输入框是否禁用
				eqLog: 0,
				refined: false, // 多选加精;
				nowPlaying: 0, // 当前播放位置
				stepPosition: 0, // 需要跳转的播放位置

				templateList: [], // 销讲业务
				showTemplate: false, // 展示选择销讲业务弹窗
				templateName: '', // 销讲业务类型文字
				percent: 0, // 挖掘成功
				wordFraction: 0, // 挖掘执行


				showVisit: false, // 操作框
				visitParams: {
					id: '',
					projectId: uni.getStorageSync('buildingID').id, // 当前项目id
					visitRecordNum: 1, // 默认到访次数
				},


				eventParams: '', // 触发的事件
				consultant: '', // 顾问身份id字符串
			};
		},
		computed: {
			conversionTiame() {
				return (e) => {
					return util.formatSecond(e)
				}
			},

		},

		onLoad(options) {
			this.LOADING = true
			this.status = options.status;
			this.customerId = options.customerId;
			this.itemobj = uni.getStorageSync('searchobj');
			this.stateisshow = options.stateisshow;
			this.wordFraction = options.wordFraction == 'undefined' ? 0 : options.wordFraction;
			this.addLookingCount(options.customerId)
			this.visitParams.id = options.customerId;
			this.$zaudio.autoPlay = true
			if (options.refresh) this.refresh = options.refresh

			this.$zaudio.on('seek', this.ACTION, (time) => {
				this.sliderChangeComplate(this.TIMEEVENT(time))
			})
			this.$zaudio.on('playing', this.ACTION, (obj) => {
				//实时渲染当前的播放状态
				this.$zaudio.syncRender()
				this.duration = obj.duration
				this.nowPlaying = obj.current_value
				this.TimeUpdate(this.TIMEEVENT(obj.current))
			})
			// 获取销讲业务
			this.$zaudio.on('ended', this.ACTION, e => {
				this.$zaudio.stop()
				this.$nextTick(() => {
					this.init(this.itemobj)
				})
			})

			this.getInvalidList()
			uni.$on('DETAILS2INIT', (info) => {
				this.itemobj = info
				this.init(info)
			});

			// 当前页面状态
			uni.$on('newobjStatus', status => {
				this.status = status
			})
			this.firstInPage = false
		},


		onShow() {
			//实时渲染当前的播放状态
			this.$zaudio.syncRender()
			let newmenulist = uni.getStorageSync('weapp_session_Menu_data');
			this.permissions = {
				...newmenulist,
				...this.permissions
			}
			this.intention = false;
			this.kehuyixiangcenterindex = 0;
			if (this.stateisshow == 2) {
				var info = this.itemobj;
			}!this.isPageHide && this.init(info);

			this.getMarketingBusiness()
		},

		onHide() {
			this.isPageHide = true
		},

		onUnload() {
			uni.$off('DETAILS2INIT')
			uni.$off('newobjStatus')
			// uni.$off('consumerDetail')
			//卸载不需要的业务和获取播放状态的业务,提高页面性能
			this.$zaudio.off('seek', this.ACTION);
			this.$zaudio.off('playing', this.ACTION);
			this.$zaudio.off('ended', this.ACTION);
		},

		methods: {
			// 客户第几次到访 -
			reduce() {
				if (this.visitParams.visitRecordNum == 1) {
					uni.showToast({
						title: '不能再减了~',
						icon: "none",
						duration: 2000
					});
					return
				}
				this.visitParams.visitRecordNum--
			},

			// 客户第几次到访+
			add() {
				this.visitParams.visitRecordNum++
			},

			// 取消
			cancelVisitRecord() {
				this.visitParams.visitRecordNum = 1
				this.showVisit = false
			},

			// 客户第几次到访 修改 
			changeVisitRecord() {
				this.$u.post('/customer/updateVisitRecord', this.visitParams).then(res => {
					this.cancelVisitRecord()
				}).catch(res => {
					uni.showToast({
						title: '操作失败，请稍候重试！',
						duration: 2000
					});
				})
			},

			// 获取接待类型列表
			getInvalidList() {
				this.$u.post('/customer/invalidList', {
					houseId: this.buildingID,
				}).then(res => {
					console.log(res)
					this.effectiveitems = res.filter(item => item.id != 6 && item.id != 7)
				})
			},

			// 无效接待原因 取消
			effectiveIndexCancel() {
				this.effectiveitext = "";
			},

			// 无效接待原因 确认
			effectiveIndexConfirm(e) {
				this.effectiveIndexText = e[0].label
				this.effectiveindex = e[0].value
			},

			// 获取销讲业务
			getMarketingBusiness() {
				this.$u.get('/customer/marketingBusiness', {
					houseId: this.buildingID,
					status: 0,
				}).then(res => {
					this.templateList = res
				})
			},

			// 执行 不知道干嘛的
			hangeshow2(item, type) {
				item.show = !item.show;
			},

			//挖掘率话术客户标签展示
			getKeywordsList(list) {
				let keywords = [];
				if (list && list.length) {
					keywords = list.map((item) => item.name);
				} else {
					return "--";
				}
				return keywords.join(",");
			},

			// 计算挖掘执行的完成率
			getPercent() {
				let countArr = this.KeyWordsfractionList.filter(item => item.selected == 0)
				this.percent = (countArr.length / this.KeyWordsfractionList.length) * 100
				this.percent = this.percent.toFixed(0)
			},

			// 客户详情需求挖掘话术
			getfindKeyWordsBycusId() {
				this.$u.get("/cusLvStatistics/findKeyWordsBycusId?cusId=" + this.customerId).then(res => {
					// console.log(res)
					if (res.length) {
						res.forEach((item, index) => {
							item.show = false
							if (index == 0) {
								item.show = true
							}
							item.children.forEach((obj, i) => {
								obj.show = false
								if (i == 0 && index == 0) {
									obj.show = true;
								}
							})
						})
						this.KeyWordsfractionList = res
						this.getPercent()
					} else {
						this.KeyWordsfractionList = []
					}
				})
			},

			// 挖掘话术点击
			clickWajue(item) {
				if (item.isAskQuestions == 0) {
					this.Pinspeak = false
					uni.navigateTo({
						url: '/pages/learning/Keywordsearch?customerId=' + this.customerId + "&keyword=" + item
							.showFormatExpression +
							"&skpl=" + "2" + '&UpDateEvent=DETAILS2INIT'
					})
				}
			},

			// 对话加命中标签
			dealTypes(type) {
				if (type) {
					// let tem = type.split(',')
					let tem = type.substring(1).split(',')
					return tem
				} else {
					return []
				}
			},

			// 对话加命中标签
			dealword(type) {
				if (type) {
					let a = type.split('-')
					let rest = type.substring(2).split('-').join(',')
					let arr = [a[0], rest]
					return arr
				} else {
					return []
				}
			},

			// 跳转设备日志页面
			eqLogClick() {
				uni.navigateTo({
					url: `./equipmentLog?id=${this.customerId}`
				})
			},


			// 销讲业务方法
			templateCancel() {
				this.showTemplate = false;
			},

			// 确认选择销讲业务
			templateConfirm(e) {
				this.showTemplate = false;
				this.$u.post('/customer/updateMarketingBusiness', {
					marketingBusiness: e[0].value,
					id: this.userlistobj.id
				}).then(res => {
					uni.showToast({
						title: '操作成功',
						icon: 'none',
						duration: 2000
					})
					this.init(this.infos);
					this.gituserlist()
					this.getMarketingBusiness()
				}).catch(e => {
					uni.showToast({
						title: e.data.message,
						icon: 'none',
						duration: 2000
					})
				})
			},

			// 角色身份颜色
			borderColor(index) {
				let obj = {
					color: '',
					borderRadius: '8rpx',
					border: ''
				}
				switch (index) {
					case 1:
						obj.color = '#E6625B';
						obj.border = '2rpx solid #E6625B';
						break;
					case 2:
						obj.color = '#FF981E';
						obj.border = '2rpx solid #FF981E';
						break;
					case 3:
						obj.color = '#F6BD16';
						obj.border = '2rpx solid #F6BD16';
						break;
					case 5:
						obj.color = '#4980C8';
						obj.border = '2rpx solid #4980C8';
						break;
					case 6:
						obj.color = '#60CBEC';
						obj.border = '2rpx solid #60CBEC';
						break;
					case 7:
						obj.color = '##FF981E';
						obj.border = '2rpx solid #FF981E';
						break;
					case 8:
						obj.color = '#4F861E';
						obj.border = '2rpx solid #4F861E';
						break;
					default:
						obj.color = '#9F61C8';
						obj.border = '2rpx solid #9F61C8';
						break;
				}
				return obj
			},

			// 关闭弹窗
			close() {
				this.cancelBeast()
				this.$forceUpdate();
			},

			// 添加角色
			addRole() {
				this.tablist.push({
					name: String.fromCharCode(this.tablist.length + 64),
					checked: false,
				})
			},

			// 选择角色
			rolexuanze(index) {
				this.roleindexrow = index;
			},

			// 修改角色弹窗
			showRoleisshaw() {
				this.roleisshaw = true
			},

			// 修改角色
			roletab() {
				this.$u.post("/corpus/batchUpdateRole", {
					corpusId: this.luyinList.id,
					transferContent: JSON.stringify(this.dialogList),
					speaker: this.roleindexrow + 1,
					customerId: this.customerId
				}).then(res => {
					uni.showToast({
						title: '修改成功',
						duration: 2000
					});
					this.roleisshaw = false;
					this.cancelBeast()
					this.cancelAllAdd()
					// 
					this.dialogList.forEach(item => {
						if (item.checked) {
							item.speaker = this.roleindexrow + 1
						}
					})
				}).catch(e => {
					uni.showToast({
						title: '修改失败，请重试！',
						duration: 2000
					});
					this.roleisshaw = false;
					this.cancelBeast()
					this.cancelAllAdd()
				})
			},

			// 跳转匹配标签页面
			argece(item) {
				if (item.selected == 0) {
					// 关闭当前页面弹窗
					this.Pinspeak = false
					uni.navigateTo({
						url: '/pages/mine/ScoringPlaylist?customerId=' + this.customerId + "&id=" + item
							.keywordsId + "&type=" + 1 + '&UpDateEvent=DETAILS2INIT'
					})
				}
			},

			//关键词点击
			tapbadge(item) {
				//进搜索页面
				uni.navigateTo({
					url: '/pages/learning/Keywordsearch?customerId=' + this.customerId + "&keyword=" + item +
						"&skpl=" + "2" + '&UpDateEvent=DETAILS2INIT'
				})
			},

			// 销讲总执行率 && 禁忌执行 && 需求挖掘率 选项卡
			recordclick(i) {
				this.zhixingcenterindex = i;
				if (i == 0) {
					this.getRatelist()
				} else if (i == 1) {
					this.huoqujinji()
				} else {
					this.getfindKeyWordsBycusId()
				}
			},

			//获取禁忌
			huoqujinji() {
				uni.showLoading({
					title: '加载中'
				});
				this.$u.get("/customer/findTabooWordsByCusId", {
					cusId: this.customerId
				}).then(res => {
					if (res) {
						this.prohibitedlist = res;
					}
					setTimeout(function() {
						uni.hideLoading();
					}, 1000);
				})
			},

			//评分点击
			clickaudeopal(item) {
				if (item.selected == 0) {
					// 关闭当前页面弹窗
					this.Pinspeak = false
					uni.navigateTo({
						url: '/pages/mine/ScoringPlaylist?customerId=' + this.customerId + "&id=" + item
							.marketingId + "&type=" + 0 + '&UpDateEvent=DETAILS2INIT'
					})
				}
			},

			//获取用户信息
			gituserlist() {
				this.$u.get("/matchKeywords/personalReceptionRecord", {
					customerId: this.customerId
				}).then(res => {
					res.endTime1 = res.endTime.substring(0, 19);
					this.visitParams.visitRecordNum = res.visitRecord || 1
					this.userlistobj = res;
				})
			},

			// 点击更多
			moreClick() {
				this.gituserlist()
				this.Thetapeidisshow = true
			},


			// 跳转系统校准页面
			tocalibration() {
				uni.navigateTo({
					url: '/pages/mine/calibration?id=' + this.customerId
				});
			},

			// 切换 系统分析||人工校准
			customerofintention(i) {
				this.kehuyixiangcenterindex = i;
				if (i == 0) {
					this.Acquirecustomerintent()
				} else {
					this.Acquirecustomerintent2()
				}
			},

			//获取人工校准意向信息
			Acquirecustomerintent2() {
				this.Acquirecustomerintentlist2 = [];
				this.$u.get("/matchKeywords/findManualCalibration", {
					customerId: this.customerId,
					type: 1
				}).then(res => {
					res.forEach(item => {
						item.isshow = true;
						item.children.forEach(chend => {
							if (chend.isInterval == 0) {
								chend.text = chend.name + chend.unit + '-' + chend.endName + chend
									.unit
							} else {
								chend.text = chend.name
							}
						})
					})
					this.Acquirecustomerintentlist2 = res;
				})
			},

			//获取系统意向信息
			Acquirecustomerintent() {
				this.Acquirecustomerintentlist = [];
				this.$u.get("/matchKeywords/findSystemAnalysis", {
					customerId: this.customerId
				}).then(res => {
					res.forEach(item => {
						item.isshow = true;
						item.children.forEach(chend => {
							if (chend.isInterval == 0) {
								chend.text = chend.name + chend.unit + '-' + chend.endName + chend
									.unit
							} else {
								chend.text = chend.name
							}
						})
					})
					this.Acquirecustomerintentlist = res;
				})
			},

			// 客户意向 不知道是干啥的
			Acquishow(i) {
				this.Acquirecustomerintentlist[i].isshow = !this.Acquirecustomerintentlist[i].isshow;
			},

			// 客户意向 不知道是干啥的
			Acquishow2(i) {
				this.Acquirecustomerintentlist2[i].isshow = !this.Acquirecustomerintentlist2[i].isshow;
			},

			//取消接待详情
			clenReceivedetailsabout() {
				this.Receivedetailsabout = false;
				this.Pinspeak = false;
				this.intention = false;
				this.Thetapeidisshow = false;
			},

			Receivetap() {
				this.Receivedetailsabout = true;
			},
			//标记
			alllogo() {
				var that = this;
				let msg = '';
				if (this.userlistobj.validInvalid != 0) {
					if (this.userlistobj.validInvalid == 0 || this.userlistobj.validInvalid == 1) {
						msg = '是否标记为"有效录音"？';
					} else {
						msg = '是否撤销"无效(待审核)"？';
					}
					uni.showModal({
						title: '提示',
						content: msg,
						success: (res) => {
							if (this.noClick) {
								this.noClick = false;
								if (res.confirm) {
									let parames = {
										id: this.customerId,
										validInvalid: '',
										invalidReason: 0
									}
									if (this.userlistobj.validInvalid == 0) {
										parames.validInvalid = 1;
									} else if (this.userlistobj.validInvalid == 1) {
										parames.validInvalid = 0;
									} else if (this.userlistobj.validInvalid == 2) {
										parames.auditReception = 1
										parames.validInvalid = 1;
									}
									this.$u.post("/customer/updateValidInvalid", parames).then(res => {
										this.Thetapeidisshow = false;
									})
								}
								setTimeout(() => {
									this.noClick = true;
								}, 2000)
							} else {
								//  这里是重复点击的判断
							}
						}
					});
				} else {
					this.effective = true;
					this.Thetapeidisshow = false
				}
			},

			// 无效原因
			effectiveAdd() {
				if (this.effectiveindex == 5) {
					if (this.effectiveitext.length == 0) {
						uni.showToast({
							title: '备注不能为空',
							icon: "none",
							duration: 2000
						});
						return
					}
				}

				if (this.effectiveIndexText == "请选择") {
					uni.showToast({
						title: '请选择无效原因',
						icon: "none",
						duration: 2000
					});
					return
				}
				this.effective = false;
				let parames = {
					id: this.customerId,
					validInvalid: 1,
					invalidReason: this.effectiveindex,
					invalidNote: this.effectiveitext
				}
				this.$u.post("/customer/updateValidInvalid", parames).then(res => {
					this.Thetapeidisshow = false;
				})
			},

			radioChange(evt) {
				this.effectiveitext = "";
				for (let i = 0; i < this.effectiveitems.length; i++) {
					if (this.effectiveitems[i].value === evt.detail.value) {
						this.effectiveindex = i;
						break;
					}
				}
			},

			//接待详情点击
			Receivedetailsabouttab(stringa) {
				if (stringa == 'Receivedetailsabout') {
					this.gituserlist()
					this.Thetapeidisshow = false;
					this.Receivedetailsabout = true;
				} else if (stringa == 'Pinspeak') {
					this.getRatelist()
					this.Pinspeak = true;
				} else {
					if (this.kehuyixiangcenterindex == 0) {
						this.Acquirecustomerintent()
					} else {
						this.Acquirecustomerintent2()
					}

					this.intention = true;
				}
			},

			// 关键词菜单
			guanjiancishifo() {
				this.stateisshow = 1;
				uni.navigateTo({
					url: '/pages/learning/Keywordsearch?customerId=' + this.customerId + "&status=" + this.status +
						"&skpl=" + "1" + '&UpDateEvent=DETAILS2INIT&types=1'
				})
			},

			//标记选择角色
			biaojixuanze(item) {
				item.checked = !item.checked
				this.$forceUpdate()
			},

			//标记顾问
			tagtap() {
				this.tablists = this.tablist.slice(1, this.tablist.length)
				this.biojiisshow = !this.biojiisshow;
			},

			//取消标记
			unmarktap() {
				this.biojiisshow = false;
				this.roleisshaw = false
			},

			//确认标记
			Confirmthetag() {
				let arr = this.tablists.filter(item => item.checked)
				if (arr.lenght == 0) {
					uni.showToast({
						title: '请选择标记角色~',
						duration: 2000
					});
					return
				}
				let params = {
					id: this.luyinList.id,
					speaker: arr.map(item => {
						return item.speaker
					}).join(","),
					customerId: this.customerId
				}
				this.$u.get(config.service.markConsultant, params).then((data) => {
					this.biojiisshow = false;
					this.biaojiyuyi()
					this.fenjiaoseunfo('refresh')
					uni.showToast({
						title: '标记成功',
						duration: 2000
					});
				})
			},

			//标记语义词
			biaojiyuyi() {
				let parames = {
					carId: this.customerId
				}
				this.$u.post("/matchKeywords/toMatchKeywords", parames).then(res => {})
			},

			// 筛选展示的角色
			tapspagek(data, index) {
				if (index == 0) this.resetTabList();
				else this.resetAll();
				data.select = !data.select
				this.roleSelectArr = []
				if (index != 0) {
					this.tablist.forEach(item => {
						if (item.select) {
							this.roleSelectArr.push(item.speaker)
						}
					})
				} else {
					this.roleSelectArr.push(0)
				}
				this.dialogList = []
				this.fenjiaoseunfo()
			},

			// 选中全部时互斥全部选项与角色选项
			resetTabList() {
				this.tablist.forEach(item => {
					item.select = false
				})
			},

			// 选中角色时将全部反选
			resetAll() {
				this.tablist[0].select = false
			},

			// 生成角色列表
			creatTabList(num) {
				for (var i = 0; i <= num; i++) {
					if (i === 0) {
						this.tablist.push({
							name: '全部',
							select: false,
							speaker: i,
							checked: false,
						})
					} else {
						this.tablist.push({
							name: String.fromCharCode(i + 64),
							select: false,
							speaker: i,
							checked: false,
						})
					}
				}
			},

			// 获取flag
			getVoFlagValue() {
				return this.roleSelectArr.findIndex(item => item == 0) == -1 ? 1 : 0
			},

			// 筛选展示角色刷新
			fenjiaoseunfo(type) {
				let str =
					`?corpusId=${this.luyinList.id}&bg=${this.playNow * 1000}&speaker=0&voFlag=${this.getVoFlagValue()}&num=50`

				if (this.roleSelectArr.findIndex(item => item == 0) == -1) {
					str += `&speakerStr=${this.roleSelectArr.join(',')}`
				}

				uni.request({
					url: `${config.service.getCorpusAnal}${str}`,
					method: "GET",
					header: {
						'content-type': 'application/json',
						'Authorization': 'Bearer ' + uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						let res = data.data.data
						// 当页面标记重新刷新时
						if (type == 'refresh') {
							this.tablist = []
							this.roleSelectArr = this.$options.data().roleSelectArr // 重置
							this.creatTabList(res.speakerNum)
							this.tablist[0].select = true
							this.consultant = res.speaker
							this.setConsultant()
						}
						if (this.roleSelectArr.length == 0) {
							this.tablist[0].select = true
						}
						const info = {
							seek: 1,
							bg: this.playNow * 1000,
							voFlag: this.getVoFlagValue(),
						}
						if (this.roleSelectArr.findIndex(item => item == 0) == -1) {
							info.speakerStr = this.roleSelectArr.join(',');
						}
						this.getFindAudioContent(info)

					}
				})
			},

			// 设置顾问
			setConsultant() {
				let arr = this.consultant.split(',') || []
				this.tablist.map(obj => {
					if (arr.includes(obj.speaker.toString())) {
						obj.name += '顾问'
					}
				})
			},

			// 播放时定位到下面的位置
			TimeUpdate(currentTime) {
				this.playNow = Number(currentTime)
				if (this.dialogList.length > 0) {
					const message = this.dialogList;
					if (!message) return
					for (let i = 0; i < message.length; i++) {
						if ((Math.floor(message[i].bg / 1000) <= this.playNow && this.playNow < Math.floor(message[i].ed /
								1000))) {
							this.scrollId = "dialogtext" + message[i].bg;
							break;
						}
						if (i < message.length - 1 && Math.floor(message[i].ed / 1000) < this.playNow && this.playNow <
							Math.floor(message[i + 1].bg / 1000)) {
							this.scrollId = "dialogtext" + message[i].bg;
							break;
						}
					}
				}
				this.$forceUpdate()
			},

			init(info) {
				const parames = {
					pageNum: 1,
					pageSize: 100,
					query: {
						customerId: this.customerId
					}
				}
				this.$u.post("/corpus/findByPage", parames).then(res => {
					if (res && res.length) {
						let alltime = 1 + res[0].recordDuration;
						this.calibration = res[0].calibration;
						if (this.calibration == 0) {
							this.kehuyixiangcenterindex = 0;
						} else {
							this.kehuyixiangcenterindex = 1;
						}
						if (info.bg != 0) {
							this.luyinList = res[0];
							this.getCorpusAnalysis(info);
						} else {
							this.luyinList = res[0];
							this.getCorpusAnalysis(info);
							this.zyAudio()
						}

						if (this.refresh) this.zyAudio()
					}
				})
			},


			//下一页 seek 往后seek传1
			ltolower() {
				if (this.dialogList.length == 0) return
				console.log('ltolower')
				const info = {
					seek: 1,
					bg: this.dialogList[this.dialogList.length - 1].bg,
					voFlag: this.getVoFlagValue(),
				}
				if (this.roleSelectArr.findIndex(item => item == 0) == -1) {
					info.speakerStr = this.roleSelectArr.join(',');
				}
				this.getFindAudioContent(info)
			},

			//上一页 seek 往前seek传-1
			rolltoupper() {
				console.log('rolltoupper')
				if (this.dialogList.length == 0) return
				const info = {
					bg: this.dialogList[0].bg,
					seek: -1,
					voFlag: this.getVoFlagValue(),
				}
				if (this.roleSelectArr.findIndex(item => item == 0) == -1) {
					info.speakerStr = this.roleSelectArr.join(',');
				}
				this.getFindAudioContent(info)
			},

			// 加精
			jiajing() {
				if (this.status == 1) { // 加精
					this.tappick()
				} else { // 取消加精
					this.notappick()
				}
			},

			// 取消全部加精
			notappick() {
				console.log('quxiao')
				var that = this;
				uni.showModal({
					title: '提示',
					content: '确认取消加精？',
					success: function(res) {
						if (res.confirm) {
							that.$u.get(config.service.delATD, {
								carId: that.customerId,
								itemId: that.buildingID
							}).then(data => {
								console.log(data)
								if (!data || data.code == 10000) {
									that.status = 1
									uni.showToast({
										title: '取消成功',
										duration: 2000
									});
								}
							}).catch(e => {
								uni.showToast({
									title: e.message,
									duration: 2000
								});
							})
						} else if (res.cancel) {
							console.log('用户点击取消');
						}
					}
				});
			},

			//全部加精
			tappick() {
				uni.showModal({
					title: '提示',
					content: '确认加精？',
					success: (res) => {
						if (res.confirm) {
							console.log('用户点击确定');
							let objdata = {
								"carId": this.customerId, //客户id
								"status": 0,
								"itemId": this.buildingID,
							}
							this.$u.post(config.service.addATD, objdata).then(data => {
								console.log(data)
								if (!data || data.code == 10000) {
									this.status = 0
									uni.showToast({
										title: '加精成功',
										duration: 2000
									});
								}
							}).catch(e => {
								uni.showToast({
									title: e.message,
									duration: 2000
								});
							})
						} else if (res.cancel) {
							console.log('用户点击取消');
						}
					}
				});
			},
			//标签选择
			tapbiaoqianclisck(index) {
				this.biaoqianindex = index;
				this.biaoqianid = this.biaoqianlist[index].id
			},
			//复制
			clickcopy() {
				uni.setClipboardData({
					data: this.thewrongword,
					success: () => {
						this.cancelBeast()
						this.$forceUpdate();
					}
				});
			},


			//确认加入常错词
			Confirmtheexit() {
				if (this.reswrongword.length > 8 || this.thewrongword.length > 8) {
					this.$refs.uToast.show({
						title: '正确词错误词不能超过8个字',
						type: 'warning',
					})

					this.isshow2 = true;
				} else {
					let reg = /^[0-9]+$/
					if (reg.test(this.thewrongword)) {
						this.$refs.uToast.show({
							title: '错误词不能为纯数字',
							type: 'warning',
						})

						this.isshow2 = true;
					} else {
						if (this.thewrongword) {
							if (this.reswrongword) {
								let parames = {
									customerId: this.customerId,
									cupid: this.luyinList.id,
									wrongWord: this.thewrongword, //错误词
									correctWord: this.reswrongword, //正确词
									translateHtmlContent: this.messagelisy,
								}
								this.isshow2 = false;

								this.dialogList[this.argtextindex2].onebest = this.textItself.replace(this.thewrongword, this.reswrongword)
								this.cancelBeast()
								this.$u.post("/corpus/addCorrectWord", parames).then(data => {
									this.thewrongword = "";
									this.reswrongword = "";
								})
							} else {
								this.$refs.uToast.show({
									title: '正确值不能为空',
									type: 'warning',
								})
								this.isshow2 = true;
								return
							}
						} else {
							this.$refs.uToast.show({
								title: '错误词不能为空',
								type: 'warning',
							})
							this.isshow2 = true;
							return
						}
					}
				}

			},
			//取消加入常错词
			Cancelout() {
				this.isshow2 = false;
				this.cancelBeast()
			},
			//加入长错词
			Oftenthewrongword() {
				this.isNum = false;
				this.reswrongword = "";
				this.isshow2 = true;
				let reg = /^[0-9]+$/
				if (reg.test(this.thewrongword)) {
					this.isNum = true
				}
			},

			// 选中取反
			cbChange(item) {
				item.checked = !item.checked
				this.$forceUpdate()
			},
			// 隐藏长按提示框
			cancelBeast() {
				this.dialogList.forEach(asd => {
					asd.isshow = false;
				})
			},

			// 触发事件
			publicEvents(params) {
				this.eventParams = params
				this.refined = true
				this.cancelBeast()
			},

			surePublic() {
				this[this.eventParams]()
			},

			// 重置选择的内容
			cancelAllAdd() {
				console.log('chufa')
				this.dialogList.forEach(items => {
					items.checked = false
				})
				this.refined = false
				// this.$forceUpdate()
			},

			// 确认批量加精
			sureRefinement() {
				this.isshow3 = true;
				this.biaoqianlist = []
				let parames = {
					"itemId": this.buildingID
				}
				this.$u.post("/addtodigest/findAllYi", parames).then(data => {
					this.biaoqianlist = data
					this.biaoqianlist.unshift({
						name: "逼单话术",
						id: 0
					})
				})
			},

			// 取消加精
			Cancelout2() {
				this.isshow3 = false;
				this.cancelBeast()
			},

			// 确认加精
			Confirmtheexit2() {
				if (this.biaoqianid) {
					this.biaoqianid = this.biaoqianid
				} else {
					this.biaoqianid = 0
				}
				this.isshow3 = false;
				this.cancelBeast()
				let objdata = {
					itemId: this.buildingID,
					carId: this.customerId, //客户id
					status: 1,
					startFile: this.luyinList.id, //对话所在录音文件id
					marketingId: this.biaoqianid, //对应一级父id
					toDigestList: [], // 加精多选的内容
				}
				// 将数据筛选出来并排序并且翻转数据让后端获取第一条加精的数据在分点加精的学习列表使用
				this.dialogList.forEach(item => {
					if (item.checked) {
						objdata.toDigestList.push({
							jjTransfer: item.onebest,
							startTime: item.bg,
							endTime: item.ed,
						})
					}
				})
				objdata.toDigestList.sort((a, b) => {
					return Number(a.startTime) - Number(b.startTime)
				}).reverse()
				this.isshow3 = false;
				this.$u.post(config.service.addATD, objdata).then(res => {
					console.log(res)
					uni.showToast({
						title: '加精成功',
						duration: 2000
					});
					this.cancelAllAdd()
				}).catch(e => {
					uni.showToast({
						title: '网络异常，请稍候重试~',
						duration: 2000
					});
					this.cancelAllAdd()
				})
			},
			//长按对话
			changanxiaoguo(item, index) {
				this.messagelisy = [];
				this.cancelBeast()
				this.dialogList[index].isshow = !this.dialogList[index].isshow;
				this.textItself = item.onebest;
				let onebest = item.onebest;
				this.thewrongword = onebest.replace(/<.*?>/ig, "");
				this.messagelisy = this.dialogList
				this.argtextindex2 = index;
			},

			//评分上下显隐
			changeshow(item, type) {
				item.show = !item.show;
			},

			changeshow2(item, type) {
				item.show = !item.show;
			},
			// 获取评分
			getRatelist() {
				if (this.ratelist.length == 0) {
					uni.showLoading({
						title: '加载中'
					});
					this.$u.get("/customer/findzkMByCusId", {
						cusId: this.customerId
					}).then(res => {
						if (res.length) {
							let level1 = []
							let level2rate = 0
							res.forEach(item => {
								if (item.pid == 0) {
									level1.push({
										id: item.marketingId,
										rate: item.fraction,
										name: item.name,
										sort: item.sort,
										show: false,
										ratepercent: 0,
										children: []
									})
								} else {
									if (item.selected == 0) {
										level2rate += item.fraction
									}
								}
							})
							this.totalRate = level2rate;
							res.forEach(subitem => {
								let subitempid = subitem.pid
								level1.forEach(item => {
									if (subitempid == item.id) {
										if (subitem.selected == 0) {
											item.ratepercent += subitem.fraction
										}
										item.children.push({
											id: subitem.id,
											rate: subitem.fraction,
											selected: subitem.selected,
											name: subitem.name,
											show: false,
											marketingId: subitem.marketingId,
											children: []
										})
									}
								})
							})
							res.forEach(subitem => {
								let subitempid = subitem.pid
								level1.forEach(chen => {
									chen.children.forEach(zxc => {
										if (subitempid == zxc.marketingId) {
											zxc.children.push({
												id: subitem.id,
												rate: subitem.fraction,
												selected: subitem.selected,
												name: subitem.name,
												marketingId: subitem.marketingId,
											})
										}
									})
								})
							})
							level1[0].show = true;
							level1[0].children[0].show = true;
							this.ratelist = level1
						}
						setTimeout(function() {
							uni.hideLoading();
						}, 1000);
					})
				}
			},

			// 获取转义后的对话结果
			getCorpusAnalysis(info) {
				console.log("getCorpusAnalysis")
				uni.request({
					url: config.service.getCorpusAnal + '?corpusId=' + this.luyinList.id +
						"&bg=" + info.bg + "&speaker=0" + '&num=50', //仅为示例，并非真实接口地址。	
					method: "GET",
					header: {
						'content-type': 'application/json',
						'Authorization': 'Bearer ' + uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						this.LOADING = false
						this.tablist = [];

						this.creatTabList(data.data.data.speakerNum)
						this.tablist[0].select = true // 默认选中第一个
						// 设置顾问
						if (data.data.data.speaker) {
							this.consultant = data.data.data.speaker
							this.setConsultant()
						}
						this.getFindAudioContent(info);
						this.stepPlay(Math.floor(info.bg / 1000))
					},
					fail: () => {
						this.LOADING = false
					}
				})
			},


			// 获取录音内容
			getFindAudioContent(info) {
				const params = {
					corpusId: this.luyinList.id,
					speaker: 0,
					bg: info.bg || 0,
					num: 50,
					seek: info.seek || 1,
				}
				if (info.speakerStr) {
					params.speakerStr = info.speakerStr
				}
				this.$u.get(config.service.findAudioContent, params).then(res => {
					res.forEach(che => {
						if (che.onebest == info.onebest) {
							che.onebest =
								`<font style='color: red'>${che.onebest}</font>`;
						}
					})

					if (info.reset) {
						this.dialogList = res
					} else {
						if (info.seek > 0) {
							this.dialogList = [...this.dialogList, ...res];
						} else {
							this.dialogList = [...res, ...this.dialogList];
						}
					}
				}).catch(e => {
					console.log(e, 'catch')
				})
			},

			// 音频前进回退
			sliderChangeComplate(currentTime) {
				const info = {
					bg: (currentTime * 1000) || 0,
					seek: 1,
					reset: true
				}
				this.getFindAudioContent(info)
			},

			// 点击播放
			clickbofang(item) {
				this.cancelBeast()
				this.$forceUpdate()
				let platetime = item.bg;
				let newtime = Math.floor(item.bg / 1000);
				uni.request({
					url: config.service.fastForward + '?corpusId=' + this.luyinList.id +
						"&bg=" + platetime || 0, //仅为示例，并非真实接口地址。	
					method: "GET",
					header: {
						'content-type': 'application/json',
						'Authorization': 'Bearer ' + uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						this.stepPlay(newtime);
					}
				})
			},

			formatTime(num) {
				//格式化时间格式
				num = num.toFixed(0);
				let second = num % 60;
				if (second < 10) second = '0' + second;
				let min = Math.floor(num / 60);
				if (min < 10) min = '0' + min;
				return min + ":" + second;
			},


			// 迅速切换音频源并切换回来
			checkPlaybackRate() {
				this.stepPosition = this.nowPlaying
				// 
				let data = [{
					src: 'https://static.quhouse.com/record/prop/2022-12-13/1670905992910-00066.mp3',
					title: '录音音频',
					singer: '',
					coverImgUrl: ''
				}]
				this.$zaudio.setAudio(data)
				//渲染第一首音频
				this.$zaudio.setRender(0)
				if (!this.refresh) {
					setTimeout(() => {
						this.$zaudio.operate()
					}, 150)
				}
				setTimeout(() => {
					this.zyAudio()
				}, 500)
			},

			//录音实例
			zyAudio() {
				let data = [{
					src: this.luyinList.recordPath,
					title: '录音音频',
					singer: '',
					coverImgUrl: ''
				}]
				this.$zaudio.setAudio(data)
				//渲染第一首音频
				this.$zaudio.setRender(0)
				if (!this.refresh) {
					setTimeout(() => {
						this.$zaudio.operate()
					}, 150)
				}
				if (this.stepPosition != 0) {
					setTimeout(() => {
						this.stepPlay(this.stepPosition)
					}, 1500)
				}
			},

			// 跳转指定位置播放
			stepPlay(t) {
				this.$zaudio.seek(t)
				if (this.$zaudio.paused) {
					this.$zaudio.operate()
				}
			}

		},
	}
</script>


<style lang="scss" scoped>
	.contentInfo .newmark {
		margin: 30rpx 0 10rpx 30rpx;

		.mark-item {
			display: flex;
			flex-wrap: wrap;
			margin-bottom: 12rpx;

			.markicon {
				width: 30rpx;
				height: 30rpx;
				margin-right: 12rpx;
			}

			.marktext {
				font-size: 24rpx;
				font-family: PingFangSC-Regular, PingFang SC;
				font-weight: 400;
				color: #3E50E8;
				min-height: 30rpx;
				line-height: 30rpx;
				max-width: 420rpx;
				text-align: left;
				word-break: break-all;
			}
		}
	}

	.scroll-Y .text[data-speaker="2"] .newmark,
	.scroll-Y .text[data-speaker="4"] .newmark,
	.scroll-Y .text[data-speaker="8"] .newmark,
	.scroll-Y .text[data-speaker="6"] .newmark {
		// margin-left: 84rpx;
	}

	.box {
		width: 100%;
		height: 100vh;
		display: flex;
		flex-direction: column;

		.pingfenbox {
			width: 100%;
			height: 60rpx;
			line-height: 60rpx;
			border-bottom: 1px solid #E0E0E0;
			display: flex;
			justify-content: space-around;
		}

		.pingfenbox view {
			flex-grow: 1;
			flex-shrink: 0;
			text-align: center;
			font-size: 28rpx;
			padding: 0 18rpx;
		}

		.activecllasscet {
			background: #2671E2;
			color: #FFFFFF;
		}

		.title1-12 {
			font-size: 28rpx;
			color: #2671E2;
			font-weight: 400;
			text-indent: 30rpx;
			margin-top: 18rpx;
		}

		.headbox {
			width: 100%;
			min-height: 173rpx;
		}

		.zhuti {
			flex: 1;
			overflow: auto;
		}

		.bottombox {
			width: 100%;
			// min-height: 170rpx;
			border-top: 1rpx solid #E0E0E0;
			padding-bottom: 60rpx;

			.bottomhead {
				width: 100%;
				height: 81rpx;
				border-bottom: 1rpx solid #E0E0E0;
				display: flex;
				justify-content: space-between;
				align-items: center;

				.audio-slider {
					width: 87%;
					display: flex;
					justify-content: space-between;
					align-items: center;
					padding-right: 30rpx;
				}

				.audio-slider .slider {
					width: 100%;
					padding: 0px 15rpx;
					box-sizing: border-box;
				}

				.audio-time {
					width: 110rpx;
					text-align: right;
					font-size: 26rpx;
					line-height: 28rpx;
					color: #70798D;
					display: flex;
					justify-content: space-between;
				}

				.audio-play {
					width: 48rpx;
					height: 48rpx;
					flex-shrink: 0;
				}

				.audio-play .image {
					width: 100%;
					height: 100%;
					margin-left: 30rpx;
				}
			}

			.botbotmm {
				width: 100%;
				height: 88rpx;
				display: flex;
				align-items: center;
			}
		}


		.bottomboxs {
			width: 100%;
			height: 90rpx;
			display: flex;
			justify-content: space-around;

			.bottomboxs-item {
				width: 45%;
				height: 100%;
				display: flex;
				justify-content: center;
				align-items: center;
				color: #fff;
				background: #008EF2;
				font-size: 36rpx;
				font-weight: bold;
			}
		}
	}

	.moremodal {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background: rgba(0, 0, 0, 0.5);
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		z-index: 1000000;

		.more-cont {
			width: 690rpx;
			padding: 30rpx;
			background: #fff;
			box-sizing: content-box;
			border-radius: 20rpx 20rpx 0 0;

			.more-title {
				width: 100%;
				display: flex;
				justify-content: space-between;
				height: 50rpx;
				font-size: 36rpx;
				font-family: PingFangSC-Medium, PingFang SC;
				font-weight: 500;
				color: #333333;
				align-items: center;

				.close-icon {
					width: 32rpx;
					height: 32rpx;
				}
			}

			.more-btn {
				display: flex;
				flex-wrap: wrap;
				margin-top: 30rpx;
				padding-bottom: 30rpx;

				// border-bottom: 1rpx solid #e0e0e0;
				.btn-item {
					margin-bottom: 10rpx;
					width: 284rpx;
					height: 72rpx;
					display: flex;
					justify-content: center;
					align-items: center;
					background: #FFFFFF;
					border-radius: 8rpx;
					font-size: 30rpx;
					border: 1rpx solid #000;
					font-family: PingFangSC-Regular, PingFang SC;
					font-weight: 400;
					color: #333333;
					margin-right: 30rpx;

					.icon {
						width: 30rpx;
						height: 30rpx;
						margin-right: 12rpx;
					}

				}
			}

			.other-btn {
				.btn-item {
					display: flex;
					align-items: center;
					font-size: 30rpx;
					font-family: PingFangSC-Regular, PingFang SC;
					font-weight: 400;
					color: #333333;
					line-height: 42rpx;
					padding: 30rpx 0;
					border-bottom: 1rpx solid #e0e0e0;

					.icon {
						width: 30rpx;
						height: 30rpx;
						margin-right: 12rpx;
					}
				}
			}
		}
	}

	.headboxhead {
		width: 100%;
		height: 84rpx;
		// border-bottom: 1px solid #E0E0E0;
		display: flex;

		.boxhead1 {
			margin-left: 30rpx;
			height: 84rpx;
			font-size: 30rpx;
			font-family: PingFangSC-Medium, PingFang SC;
			font-weight: 500;
			color: #303030;
			line-height: 84rpx;
		}

		.boxhead2 {
			width: 46%;
			height: 84rpx;
			text-align: right;
		}
	}

	.boxhead2 image {
		width: 36rpx;
		height: 36rpx;
		margin-top: 24rpx;
	}

	.headboxbott {
		width: 100%;
		height: 88rpx;
		display: flex;
		align-items: center;
		border-top: 1rpx solid #E0E0E0;
		border-bottom: 1rpx solid #E0E0E0;

		.headovfu {
			flex: 1;
			height: 88rpx;
			overflow-x: scroll;
			display: flex;
			align-items: center;

			.mytab {
				margin-left: 20rpx;
				flex-shrink: 0;

				.tab-item {
					padding: 0 20rpx;
					height: 52rpx;
					line-height: 52rpx;
					background: #FFFFFF;
					border-radius: 8rpx;
					border: 1rpx solid #E0E0E0;
					font-size: 26rpx;
					font-family: PingFangSC-Regular, PingFang SC;
					font-weight: 400;
					color: #999999;

				}

				.tabActive {
					background: #2671E2;
					color: #fff;
				}
			}

			&::-webkit-scrollbar {
				width: 0;
				height: 0;
				color: transparent;
			}
		}

		.headpade {
			width: 160rpx;
			height: 88rpx;
			display: flex;
			justify-content: center;
			align-items: center;
			box-shadow: -4rpx 0px 8rpx -4rpx rgba(0, 0, 0, 0.2);

			.biaoji {
				text-align: center;
				line-height: 52rpx;
				color: #FFFFFF;
				font-size: 26rpx;
				width: 100rpx;
				height: 52rpx;
				background: #E6625B;
				border-radius: 26rpx;
			}
		}
	}

	.fill {
		width: 2rpx;
		height: 41rpx;
		background: #E0E0E0;
	}

	.tmmchen {
		width: 25%;
		height: 88rpx;
		text-align: center;
		color: #666666;
		font-size: 24rpx;
		position: relative;

		.allimg {
			position: absolute;
			width: 168rpx;
			top: -152rpx;
			border: 1px solid #E0E0E0;
			background: #FFFFFF;
			font-size: 26rpx;
			color: #333333;
			text-align: center;
			box-shadow: 10rpx 10rpx 5rpx #888888;
		}
	}

	.tmmchen image {
		width: 44rpx;
		height: 44rpx;
		margin-bottom: 10rpx;
	}

	.tmmchen .text {
		height: 32rx;
		font-size: 24rpx;
		font-family: PingFangSC-Regular, PingFang SC;
		font-weight: 400;
		color: #666666;
		line-height: 32rpx;
	}

	.zhezhao {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 999;
		width: 100%;
		height: 100vh;
		opacity: 0.5;
		background-color: #666666;
	}

	.followingpop-up {
		width: 100%;
		height: 75vh;
		background: #FFFFFF;
		position: fixed;
		background: #FFFFFF;
		left: 0px;
		bottom: 0px;
		z-index: 1000;
		display: flex;
		flex-direction: column;

		// position: absolute;
		.calibration {
			width: 90rpx;
			height: 90rpx;
			background: #2671E2;
			text-align: center;
			line-height: 90rpx;
			border-radius: 50%;
			color: #FFFFFF;
			position: absolute;
			right: 30rpx;
			bottom: 100rpx;
		}

		.guanbibox {
			width: 100%;
			padding-bottom: 20rpx;
			margin-top: 20rpx;
			border-bottom: 1px solid #E0E0E0;
			position: relative;

			.guanbixen {
				width: 30rpx;
				height: 30rpx;
				position: absolute;
				right: 30rpx;
				top: 6rpx;
			}

			.cenisboxtab {
				width: 100%;
				display: flex;

				.cenisboxtabview {
					flex: 1;
					display: flex;
					align-items: center;
					justify-content: center;
					color: #333333;
					font-size: 30rpx;
					font-weight: 600;
				}
			}
		}

		.cenisbox {
			flex: 1;
			overflow: auto;

			.top-box {
				height: 80rpx;
				line-height: 80rpx;
				display: flex;
				color: #2671E2;
				border-bottom: 1rpx solid #ccc;
			}

			.jianbox {
				width: 100%;
				border-bottom: 1px solid #E0E0E0;
				padding-top: 24rpx;
				padding-bottom: 24rpx;

				.jianbox-cen {
					width: 100%;
					height: 78rpx;
					// border-bottom: 1px solid #E0E0E0;
					display: flex;

					.jianboxtext {
						flex: 1;
						height: 100%;
						font-size: 30rpx;
						font-weight: 600;
						line-height: 78rpx;
						color: #333333;
						text-indent: 30rpx;
					}

					.jianboxjian {
						width: 80rpx;
						height: 100%;
						line-height: 78rpx;
						text-align: center;
					}
				}

				.bioqianwayl {
					width: 690rpx;
					margin: 0 auto;
					display: flex;
					flex-wrap: wrap;
				}

				.bioqianwayl view {
					padding-left: 24rpx;
					padding-right: 24rpx;
					padding-top: 10rpx;
					padding-bottom: 10rpx;
					margin-right: 24rpx;
					margin-top: 20rpx;
					border-radius: 8rpx;
					font-size: 26rpx;
				}
			}
		}
	}

	.jiantop {
		width: 14rpx;
		height: 24rpx;
	}

	.jiantop1 {
		width: 20rpx;
		height: 14rpx;
	}

	.sdfsaf {
		padding-left: 24rpx;
		padding-right: 24rpx;
		padding-top: 10rpx;
		padding-bottom: 10rpx;
		border-radius: 8rpx;
		font-size: 26rpx;
	}

	.yixingindexclass {
		border-bottom: 3px solid #2671E2;
	}

	.cenisboxdspl {
		width: 94%;
		margin: 0 auto;
		padding-bottom: 24rpx;
		display: flex;
		flex-wrap: wrap;

		.cenisboxdsplview {
			padding-left: 24rpx;
			padding-right: 24rpx;
			padding-top: 10rpx;
			padding-bottom: 10rpx;
			background: #F4F8FD;
			color: #2671E2;
			font-size: 26rpx;
			margin-right: 24rpx;
			margin-top: 24rpx;
		}
	}

	.bounced {
		width: 570rpx;
		background: #FFFFFF;
		z-index: 1000;
		border-radius: 10rpx;
		position: fixed;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);

		.headpade {
			margin-top: 10rpx;
			padding: 8rpx 8rpx 8rpx 8rpx;
			background: #108ee9;
			color: #fff;
			border-radius: 16rpx;
		}

		/* 50%为自身尺寸的一半 */
		.jiajinghuatit {
			width: 100%;
			height: 68rpx;
			font-size: 30rpx;
			text-align: center;
			line-height: 68rpx;
		}

		.jiajinghuaview {
			padding: 18rpx 18rpx 18rpx 18rpx;
			display: flex;
			flex-wrap: wrap;

			.jiajinghuaview1 {
				padding: 8rpx 8rpx 8rpx 8rpx;
				font-size: 26rpx;
				border-radius: 12rpx;
				border: 1px solid #979797;
				margin-left: 8rpx;
			}

			.jighuaview2 {
				padding: 8rpx 18rpx 8rpx 18rpx;
				font-size: 26rpx;
				border-radius: 12rpx;
				border: 1px solid #979797;
				margin-left: 20rpx;
				margin-top: 10rpx;
				display: flex;

				.view1-text {
					text-align: center;
				}

				.view1-img {
					width: 50rpx;
				}
			}
		}

		.bounced3 {
			height: 100rpx;
			width: 100%;
			margin-top: 40rpx;
			border-top: 1px solid #dddddd;
			display: flex;
		}

		.bounced3-1 {
			width: 50%;
			height: 100%;
			text-align: center;
			line-height: 100rpx;
			border-right: 1px solid #dddddd;
			font-size: 36rpx;
			color: #999999;
		}

		.bounced3-2 {
			width: 50%;
			height: 100%;
			text-align: center;
			line-height: 100rpx;
			font-size: 36rpx;
			color: #108ee9;
		}
	}

	.viewclace {
		width: 100rpx;
		height: 40rpx;
		text-align: center;
		line-height: 40rpx;
		border-radius: 14rpx;
		margin-right: 34rpx;
		margin-top: 16rpx;
		font-size: 24rpx;
		background: #eee;
	}

	.bosdttom {
		color: #FFFFFF;
		background-color: #2671E2;
	}




	.fileName {
		max-width: 200rpx;
		text-align: center;
		margin: 10rpx auto;
		font-size: 28rpx;
		font-weight: 400;
		color: #666;
		height: 52rpx;
		line-height: 52rpx;
		background: #F8F8F8;
		border-radius: 4rpx;
		padding: 0 20rpx;
	}

	.dialog-block {
		margin: 20rpx 0;
	}

	.scroll-Y {
		font-size: 36rpx;
		color: #999999;
		background: #FFFFFF;
		margin-top: 30rpx;
		flex: 1;
		overflow-y: scroll;
		width: 100%;
	}

	// 顾问默认在右边显示
	.scroll-Y .text[data-guwen="0"] {
		flex-direction: row-reverse;
		text-align: right;

		.contentInfo {
			.info {
				color: #666;
				font-size: 22rpx;
				padding: 0 28rpx;
				height: 62rpx;
			}

			.contentMain {
				display: flex;
				flex-direction: row-reverse;
				align-items: center;

				.content {
					margin-left: 0;
					margin-right: 30rpx;
				}

				.play {
					width: 50rpx;
					height: 50rpx;
					margin-right: 20rpx;
				}
			}
		}



	}

	.scroll-Y .text[data-guwen="0"] {
		.contentInfo {
			.info {
				.AudioUserName {
					margin-left: 10rpx;
				}

				display: flex;
				flex-direction: row-reverse;
			}
		}
	}

	.scroll-Y .text {
		position: relative;
		margin: 30rpx;
		line-height: 80rpx;
		display: flex;

		.contentInfo {
			.info {
				.AudioUserName {
					margin-right: 10rpx;
				}
			}
		}
	}

	.scroll-Y .text .avatar {
		text {
			display: block;
			width: 72rpx;
			height: 72rpx;
			line-height: 72rpx;
			text-align: center;
			background: #FFFFFF;
			border-radius: 8rpx;
			font-size: 30rpx;
			font-family: PingFangSC-Medium, PingFang SC;
			font-weight: 500;
			box-sizing: border-box;
		}

		image {
			width: 72rpx;
			height: 72rpx;
		}
	}

	.scroll-Y .text .contentInfo .info {
		color: #666;
		font-size: 22rpx;
		padding: 0 28rpx;
		height: 50rpx;
		line-height: 50rpx;
	}

	.scroll-Y .text .contentInfo .contentMain {
		display: flex;
		align-items: center;
	}

	.scroll-Y .text .contentInfo .contentMain .content {
		margin-left: 30rpx;
		line-height: 42rpx;
		text-align: left;
		padding: 15rpx 20rpx;
		border-radius: 8rpx;
		max-width: 442rpx;
		background: #F8F8F8;
		font-size: 30rpx;
		font-family: PingFangSC-Regular, PingFang SC;
		font-weight: 400;
		color: #505050;

		.tankuangcss {
			position: absolute;
			top: -140rpx;
			left: 50%;
			transform: translateX(-50%);
			z-index: 1000;
			min-width: 150rpx;
			height: 140rpx;
			display: flex;
			background: rgba(48, 48, 48, 0.8);
			border-radius: 15rpx;

			.tankuangcss-items {
				width: 150rpx;
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;

				image {
					width: 36rpx;
					height: 36rpx;
				}

				text {
					margin: 12rpx 0 0 0;
					font-size: 24rpx;
					color: #fff;
				}
			}
		}

		.bottoms {
			top: unset;
			bottom: -140rpx;
		}
	}

	.scroll-Y .text .contentInfo .contentMain .play {
		width: 50rpx;
		height: 50rpx;
		margin-left: 20rpx;
	}

	.backTop {
		width: 60rpx;
		height: 60rpx;
		background: rgba(211, 235, 253, 1);
		box-shadow: 0rpx 0rpx 2rpx 4rpx rgba(38, 161, 255, 0.04);
		border-radius: 50%;
		position: fixed;
		bottom: 200rpx;
		right: 8rpx;
		display: flex;
		justify-content: center;
		align-items: center;

		image {
			width: 26rpx;
			height: 34rpx;
		}
	}

	.jiangshang {
		color: #fff;
		background: #2671E2;
	}

	.jiangshang1 {
		color: #FFFFFF;
		background: #999999;
	}

	// 表单
	.tian-view {
		width: 570rpx;
		background-color: #FFFFFF;
		border-bottom: 1px solid #ededee;
		display: flex;
		min-height: 96rpx;

		.tian-view-t1 {
			width: 20rpx;
			font-size: 34rpx;
			height: 34rpx;
			line-height: 110rpx;
			letter-spacing: 0px;
			color: red;
		}

		.tian-view-t2 {
			width: 30%;
			min-height: 96rpx;
			line-height: 96rpx;
			font-size: 34rpx;
			color: #333;
		}

		.tian-view-t3 {
			width: 61%;
			padding-top: 31rpx;
			padding-bottom: 31rpx;
			display: flex;

			.tian-input {
				width: 98%;
				font-size: 34rpx;
				border: none;
			}
		}
	}

	.inputbox {
		width: 100%;
		height: 100rpx;
		display: flex;
		align-items: center;
		justify-content: center;
		border-bottom: 1px solid #E0E0E0;

		.thisinput {
			width: 94%;
			height: 52rpx;
			background: #FFFFFF;
			border-radius: 8rpx;
			border: 1px solid #C9C9C9;
			color: #333333;
			font-size: 26rpx;
			text-indent: 26rpx;
			line-height: 52rpx;
		}
	}

	.biaoqiantom {
		background-color: #008EF2;
		color: #FFFFFF;
		border: none;
	}

	.Level-box {
		padding-bottom: 2rpx;

		.hhhbox {
			width: 100%;
			padding-left: 30rpx;
			padding-right: 30rpx;
			border-bottom: 1rpx solid #E0E0E0;
			background: #FFFFFF;

			.hsnrtest {
				font-size: 24rpx;
				font-weight: 400;
				color: #666666;
				line-height: 24rpx;
			}

			.Level3che {
				width: 100%;
				height: 28rpx;
				display: flex;
				line-height: 28rpx;
				align-items: center;
				margin-top: 30rpx;

				.title1 {
					flex: 1;
					font-size: 28rpx;
					color: #2671E2;
					font-weight: 400;
				}

				.jiantobox {
					width: 30rpx;
					height: 30rpx;
					display: flex;
					align-items: center;

					.arrow {
						width: 28rpx;
						height: 28rpx;
					}
				}
			}
		}

		.Level2che {
			width: 100%;
			height: 88rpx;
			display: flex;
			line-height: 88rpx;
			align-items: center;

			.title1 {
				flex: 2;
				font-size: 28rpx;
				color: #333333;
				font-weight: 400;
			}

			.leve1-jindu {
				flex: 3;
				display: flex;
				justify-content: center;
				align-items: center;

				.zhixing {
					width: 108rpx;
					height: 44rpx;
					background: #2671E2;
					border-radius: 4rpx;
					font-size: 28rpx;
					text-align: center;
					line-height: 44rpx;
					color: #FFFFFF;
				}

				.zhixing2 {
					width: 108rpx;
					height: 44rpx;
					background: #F8F8F8;
					border-radius: 4rpx;
					font-size: 28rpx;
					text-align: center;
					line-height: 44rpx;
					color: #999999;
				}
			}

			.jiantobox {
				width: 30rpx;
				height: 30rpx;
				display: flex;
				align-items: center;

				.arrow {
					width: 30rpx;
					height: 18rpx;
				}
			}
		}

		.Level1che {
			width: 100%;
			height: 94rpx;
			background: #F5F5F5;
			display: flex;
			line-height: 94rpx;
			align-items: center;
			padding-left: 30rpx;
			padding-right: 30rpx;

			.title1 {
				flex: 2;
				font-size: 30rpx;
				color: #333333;
				font-weight: 400;
			}

			.leve1-jindu {
				flex: 3;

				.jindutiao {
					width: 96%;
					height: 28rpx;
					background: #D5EEE2;
					line-height: 28rpx;
					border-radius: 14rpx;
					position: relative;

					.huanxing {
						height: 100%;
						background: #4FC78F;
						border-radius: 14rpx;
					}

					.text {
						position: absolute;
						top: 0rpx;
						right: 0rpx;
						font-size: 28rpx;
						font-weight: 400;
						color: #333333;
					}
				}
			}

			.jiantobox {
				width: 30rpx;
				height: 30rpx;
				display: flex;
				align-items: center;

				.arrow {
					width: 30rpx;
					height: 18rpx;
				}
			}
		}
	}

	.rotatearrow {
		transform: rotate(270deg);
	}

	.ffectivetext {
		width: 85%;
		margin: 10rpx auto;
		height: 100rpx;
		padding: 20rpx;
		border: 1rpx solid #E4F0FF;
	}


	.scroll-Y .text.active .content {
		color: #2671E2 !important;
		// position: relative;
	}

	.scroll-Y .text.active .info {
		color: #2671E2 !important;
		// position: relative;
	}

	.scroll-Y .text.active[data-speaker] .content,
	.scroll-Y .text.active[data-speaker="2"] .content,
	.scroll-Y .text.active[data-speaker="4"] .content,
	.scroll-Y .text.active[data-speaker="6"] .content {
		color: #2671E2 !important;
		// position: relative;
	}

	/deep/ .u-model-title {
		padding: 34rpx 0 16rpx !important;
	}


	.checkbox {
		margin: 0 10rpx 0 0;
		width: 48rpx;
		height: 48rpx;
		display: flex;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
		border: 1rpx solid #70798D;

		&.select {
			border-color: #008EF2;
			background: #008EF2;
			color: #fff;
		}
	}


	.show-visit-content {
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;

		.visit-title {
			font-size: 32rpx;
			font-weight: bold;
			line-height: 70rpx;
			text-align: center;
		}

		.visit-box {
			flex-grow: 1;
			display: flex;
			flex-direction: column;
			align-items: center;

			.visit-step {
				margin: 20rpx 0 0 0;
				display: flex;
				justify-content: center;
				align-items: center;
				border: 1rpx solid #999;

				.mitems {
					flex-shrink: 0;
					width: 70rpx;
					height: 70rpx;
					background-color: #F2F2F2;
					display: flex;
					align-items: center;
					justify-content: center;
				}

				.input {
					width: 100rpx;
					font-size: 32rpx;
					text-align: center;
				}
			}

			.tips {
				padding: 20rpx 0;
				width: 80%;
				font-size: 26rpx;
			}
		}

		.visit-btns {
			width: 100%;
			height: 88rpx;
			display: flex;

			.btn-item {
				flex-grow: 1;
				height: 100%;
				display: flex;
				align-items: center;
				justify-content: center;
				border: 1rpx solid #999;
			}
		}
	}


	/deep/textarea {
		height: 70rpx;
	}
</style>
