<template>
	<view class="box" @click="cancelBeast">
		<view class="headbox">
			<!-- 顶部时间 -->
			<view class="headboxhead">
				<view class="boxhead1">{{date}}</view>
				<view class="boxhead2" v-if="jiaoseshow">
					<image v-if="status==1" @click="tappick()" src="../../static/images/pike.png" mode=""></image>
					<image v-if="status==0" @click="notappick()" src="../../static/images/nopike.png" mode=""></image>
				</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 class="headpade">
					<view class="biaoji" @tap="tagtap()">标记</view>
				</view>
			</view>
		</view>
		<scroll-view :scroll-top="scrollTop" lower-threshold='100px' @scrolltolower="ltolower()" upper-threshold='40px'
			@scrolltoupper="rolltoupper()" :scroll-into-view="scrollId" scroll-y="true" class="zhuti text scroll-Y">
			<!-- 聊天记录-->
			<view class="dialog-block" v-for="(dialog,i) in dialogList" :key="i">
				<view :id="'dialog'+i" class="fileName">录音文件</view>
				<view class="text" :id="'dialog'+csdFileindex+'text'+item.bg"
					:class="{active: Math.floor(item.bg/1000) <= playNow && Math.floor(item.ed/1000) > playNow, isGreen: item.isShow == 0}"
					v-for="(item,index) in dialog.message" :key="index" :data-speaker="item.speaker">
					<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 :style="[SPEAKERSTYLE(item.speaker)]">
							<text>{{ item.speaker | toCapital }}</text>
						</view>
					</view>
					<view class="contentInfo">
						<view class="info">
							<text class="AudioUserName">
								<template v-if="item.username">
									{{ item.username }}
								</template>
								<template v-else>
									{{ item.speaker | toCapital }}
								</template>
							</text>
							<text>{{conversionTiame(item.bg/1000)}}</text>
						</view>
						<view class="contentMain" @click.stop>
							<view class="content">
								<view @longpress="changanxiaoguo(item,index,i)" v-html="item.onebest"></view>
								<view class="tankuangcss" :class="{bottoms:index == 0}" v-if="item.isshow">
									<view @click="clickcopy()"
										style="width: 60rpx;font-size: 24rpx;text-align: center;margin-left: 24rpx;">复制
									</view>
									<view @click="Oftenthewrongword(item)"
										style="width: 80rpx;font-size: 24rpx;text-align: center;margin-left: 22rpx;">常错词
									</view>
									<view v-if="jiaoseshow" @click="Addtheessence()"
										style="width: 80rpx;font-size: 24rpx;text-align: center;margin-left: 22rpx;">加精华
									</view>
									<view @click="Modifyrole(index,item)"
										style="font-size: 24rpx;text-align: center;margin-left: 14rpx;">修改角色
									</view>
								</view>
							</view>

							<image v-if="!refined" @click="clickbofang(dialog.backindex,item)" class="play"
								src="../../static/images/recordingManagement/play.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">
			<!-- 播放块 :src="recordPath" -->
			<zaudio :duration="duration" theme="theme4"></zaudio>
			<!-- 底部弹框 -->
			<view class="botbotmm">
				<view class="tmmchen" @click="guanjiancishifo()">
					<image src="../../static/images/audioinfo1.png" mode=""></image>
					<view>关键词</view>
				</view>
				<view class="fill"></view>
				<view class="tmmchen" @click="Receivedetailsabouttab('intention')">
					<image src="../../static/images/audioinfo3.png" mode=""></image>
					<view>客户意向</view>
				</view>
				<view class="fill"></view>
				<view class="tmmchen" @click="Receivedetailsabouttab('Pinspeak')">
					<image src="../../static/images/audioinfo4.png" mode=""></image>
					<view>销讲执行</view>
				</view>
				<view class="fill"></view>
				<!-- audioinfo2 -->
				<view class="tmmchen">
					<image @click="Receivedetailsabouttab('Receivedetailsabout')" src="../../static/images/allimg.png"
						mode=""></image>
					<view @click="Receivedetailsabouttab('Receivedetailsabout')">更多</view>

					<view class="allimg" :style="[getAllImgStyle]" v-if="Thetapeidisshow">
						<template v-if="eqLog!=-1">
							<view class="allimg-item" @click="eqLogClick()" style="line-height: 70rpx;">设备日志
							</view>
						</template>
						<view @click="Receivetap()" class="allimg-item" style="line-height: 70rpx;">
							接待信息</view>
						<template v-if="Menulistisshow">
							<view class="allimg-item" @click="alllogo()" style="line-height:70rpx;">
								{{userlistobj.validInvalidName}}
							</view>
						</template>
						<template v-if="(userlistobj.visitRecord == 1 || userlistobj.visitFlag == 1) && checkAuthority('修改到访次数')">
							<view @click="showVisit = true;Thetapeidisshow=false" class="allimg-item" style="line-height:70rpx;">
								到访次数
							</view>
						</template>
					</view>
				</view>
			</view>
		</view>
		<template v-else>
			<view class="bottomboxs">
				<view class="bottomboxs-item" @click="sureRefinement">确定</view>
				<view class="bottomboxs-item" @click="cancelAllAdd">取消</view>
			</view>
		</template>
		<!-- 标记 -->
		<view class="zhezhao" v-if="biojiisshow" @tap="unmarktap()"></view>
		<view class="bounced" v-if="biojiisshow">
			<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="roleindexbiaoji == index ? 'bosdttom' : ''" @click="biaojixuanze(index)"
					v-for="(item,index) in tablist.slice(1,tablist.length)" :key="index">
					<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="$noMultipleClicks(Confirmthetag)">确认</view>
			</view>
		</view>

		<!-- 加入常错词 -->
		<view class="zhezhao" v-if="isshow2" @tap="Cancelout"></view>
		<u-modal v-model="isshow2" title="添加常错词" :show-cancel-button="true" @cancel="Cancelout"
			@confirm="$noMultipleClicks(Confirmtheexit)">
			<view class="tian-view">
				<view class="tian-view-t2" style="margin-left: 20rpx;">
					常错词：<view class="word1">
						<u-input v-if="isshow2" :auto-height="true" type="textarea" v-model="thewrongword"
							:border="false" :custom-style="customStyle" placeholder="请输入" />
					</view>
				</view>
			</view>
			<view class="tian-view">
				<view class="tian-view-t2" style="margin-left: 20rpx;">
					正确词：<view class="word1">
						<u-input v-if="isshow2" :auto-height="true" type="textarea" v-model="reswrongword"
							:border="false" :custom-style="customStyle" placeholder="请输入" />
					</view>
				</view>
			</view>
		</u-modal>

		<!-- 加精华 -->
		<view class="zhezhao" v-if="isshow3" @tap="Cancelout2"></view>
		<view class="bounced" v-if="isshow3">
			<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="$noMultipleClicks(Confirmtheexit2)">确认</view>
			</view>
		</view>

		<!-- 接待详情 -->
		<view class="zhezhao" @click="clenReceivedetailsabout()" v-if="Receivedetailsabout"></view>
		<view class="followingpop-up" v-if="Receivedetailsabout">
			<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 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 :class="{ activecllasscet: zhixingcenterindex == 0 }" @click="recordclick(0)">
						销讲执行率{{totalRate||0}}%</view>
					<view v-if="methodsisshow" :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="hangeshow2(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="hangeshow2(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'>
								<!-- che.selected==0 为本次接待 ，viewFlag==1 为2次接待  -->
								<view class="title1"
									:style="che.viewFlag==1?'color:#FF8C13':che.selected!=0?'color: #666':''">
									{{inc+1}}.{{che.name}}
								</view>
								<view class="jiantobox">
									<image v-if="che.selected==0&&che.viewFlag != 1" class="arrow"
										src="/static/images/rate-checked.png" mode="" />
									<image v-else-if="che.selected==0&&che.viewFlag == 1" class="arrow"
										src="/static/images/checked-yellow.png" mode="" />
									<image v-else class="arrow" src="/static/images/rate-nocheck.png" mode="" />
								</view>
							</view>
							<view v-if="subitem.show" style="width: 100%;height: 30rpx;"></view>
						</view>
					</view>


				</view>
				<!-- 禁忌执行 -->
				<view v-if="zhixingcenterindex == 1">
					<view v-if="prohibitedlist.length!=0" class="title1-12" @click="tapbadge(item)"
						v-for="(item,index) in  prohibitedlist" :key='index'>{{index+1}}.{{item}}</view>
					<view v-if="prohibitedlist.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">挖掘执行:{{KeyWordsfraction||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;"
									v-if="item.keywordsList&&item.keywordsList.length">已匹配({{
                   item.keywordsList&&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">话术内容：</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">话术内容：</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" class="jiantop1" src="../../static/images/jianbutton.png"
									mode=""></image>
								<image v-else class="jiantop" src="../../static/images/jiantop.png" mode=""></image>
							</view>
						</view>
						<view style="width: 690rpx;margin: 0 auto;display: flex;flex-wrap: wrap;" v-if="item.isshow">
							<view class="sdfsaf" @click="argece(chend)" v-for="(chend,i) in item.children" :key='i'>
								<view class="jiangshang 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" class="jiantop1" src="../../static/images/jianbutton.png"
									mode=""></image>
								<image v-else class="jiantop" src="../../static/images/jiantop.png" mode=""></image>
							</view>
						</view>
						<view class="bioqianwayl" v-if="item.isshow">
							<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" @click="$noMultipleClicks(tocalibration)">校准</view>
			</view>
		</template>

		<template v-if="effective">
			<view class="zhezhao"></view>
			<view class="bounced">
				<view class="jiajinghuatit">选择</view>
				<view>
					<view class="uni-list">
						<radio-group @change="radioChange">
							<label style="display: flex;align-items: center;font-size: 30rpx;
					width: 94%;height: 80rpx;margin: 0 auto;" v-for="(item, index) in effectiveitems" :key="item.value">
								<view style="margin-top: 2rpx;flex: 1; text-indent: 20rpx;">{{item.name}}</view>
								<view style="width: 80rpx;">
									<radio :value="item.value" :checked="index == effectiveindex" />
								</view>
							</label>
						</radio-group>
					</view>
					<view v-if="effectiveindex==4">
						<textarea class="ffectivetext" v-model="effectiveitext" placeholder="备注" />
					</view>
				</view>
				<view class="bounced3">
					<view class="bounced3-1" @click="effective=false">取消</view>
					<view class="bounced3-2" @click="$noMultipleClicks(effectiveAdd)">确认</view>
				</view>
			</view>
		</template>

		<!-- 修改角色 -->
		<view class="zhezhao" v-if="roleisshaw" @tap="unmarktap()"></view>
		<view class="bounced" v-if="roleisshaw">
			<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="rl=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="$noMultipleClicks(roletab)">确认</view>
			</view>
		</view>
		<u-toast ref="uToast" />
		<!-- 加载组件  -->
		<loading v-model="LOADING"></loading>

		<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 config = require("../../config");

	import zaudio from '@/components/uniapp-zaudio/zaudio';
	import loading from "@/components/loading/index.vue"
	export default {
		components: {
			zaudio,
			loading
		},

		data() {
			return {
				customStyle: {
					'width': '320rpx',
					'font-size': '34rpx',
					'border-bottom': '1px solid #ccc'
				},
				KeyWordsfraction: 0,
				KeyWordsfractionList: [],
				noClick: true,
				kehuyixiangcenterindex: 0,
				Acquirecustomerintentlist2: [],
				zhixingcenterindex: 0,
				prohibitedlist: [],
				guanjianciishow: false,
				tablist: [],
				roleindex: 0, // 当前选中的角色标记点（旧版本的）
				roleSelectArr: [0], // 当前选中的角色标记点
				roleindexbiaoji: 0,
				audioPlay: false, //当前的播放状态控制
				sliderValue: 0, //进度条最小值
				sliderMax: 0, //进度条最大值
				currentTimeStr: "00:00", //当前进度的时间
				timeStr: "00:00", //总的时间
				recordPath: "",
				customerId: "",
				luyinList: [], //录音文件
				newluyinList: [],
				dialogList: [], //录音识别列表
				csdFileindex: 0,
				date: "", //年月日
				tab: 0, // 默认是音频识别
				scrollTop: 0,
				scrollId: "",
				playNow: 0,
				alltimeStr: "00:00:00",
				ratelist: [], //评分列表
				totalRate: "",
				thewrongword: "", //错误词
				reswrongword: "", //正确词
				isshow2: false,
				messagelisy: [],
				isshow3: false,
				biaoqianlist: [],
				biaoqianindex: 0,
				changanitem: {},
				duihuawenjianid: "",
				biaoqianid: "",
				status: 0,
				userInfo: {},
				jiaoseshow: true,
				itemobj: {},
				textindex: 0, //下拉  转写文件下标
				toptextindex: 0, //上拉  转写文件下标
				biojiisshow: false,
				speaker: '',
				dshfkjsdkksodofydwfkhwdfkjh: 0,
				userlistobj: {},
				Acquirecustomerintentlist: [],
				options1: [],
				Receivedetailsabout: false,
				Pinspeak: false,
				intention: false,
				yixingindex: 0, //意向，统计切换
				buildingID: '',
				methodsisshow: false,
				Thetapeidisshow: false,
				Menulist: [],
				Menulistisshow: false,
				validInvalid: 0,
				calibration: 0,
				effective: false,
				effectiveindex: '0',
				effectiveitems: [{
						value: '1',
						name: '没电指派无录音',
						checked: true
					},
					{
						value: '2',
						name: '离线指派无录音',
					},
					{
						value: '3',
						name: '系统测试误操作'
					},
					{
						value: '4',
						name: '非接访场景录音'
					},
					{
						value: '5',
						name: '其他'
					}
				],
				effectiveitext: '',
				textItself: '',
				argtextindex1: 0,
				argtextindex2: 0,
				roleisshaw: false,
				roleindexrow: 0,
				roletiaoshu: 0,
				infos: null,
				ACTION: Symbol('zaudio'), // 唯一值区分每个页面的方法
				isPageHide: false, // 是否息屏
				duration: '', // 总时长
				isBand: false, // 阻止二次提交
				refined: false,
				eqLog: 0,
				percent: 0,

				showVisit: false, // 操作框
				visitParams: {
					id: '',
					projectId: uni.getStorageSync('buildingID').id, // 当前项目id
					visitRecordNum: 1, // 默认到访次数
				},
			};
		},
		computed: {
			conversionTiame() {
				return (e) => {
					return this.getTime(e);
				}
			},

			// 获取距离
			getAllImgStyle() {
				let position = 70
				if (this.Menulistisshow) {
					position += 70
				}

				if (this.eqLog != -1) {
					position += 70
				}

				if ((this.userlistobj.visitRecord == 1 || this.userlistobj.visitFlag == 1) && this.checkAuthority('修改到访次数')) {
					position += 70
				}

				return {
					height: `${position}rpx`,
					top: `-${position+20}rpx`
				}
			}
		},
		onLoad(options) {
			this.LOADING = true
			let menu = uni.getStorageSync('weapp_session_Menu_data');
			this.eqLog = menu.findIndex(item => item.name == '设备日志');
			this.status = options.status;
			this.customerId = options.customerId;
			this.visitParams.id = options.customerId;
			this.KeyWordsfraction = options.wordFraction == 'undefined' ? 0 : options.wordFraction;
			this.itemobj = uni.getStorageSync('searchobj');
			this.stateisshow = options.stateisshow;
			this.$zaudio.autoPlay = true
			//注意: 不同的回调方法, 相同的业务函数方法名, 不会相互影响;
			this.$zaudio.on('stop', this.ACTION, () => {
				console.log('我是强制暂停或关闭小程序音频浮窗触发的')
			})
			this.$zaudio.on('seek', this.ACTION, (time) => {
				this.sliderChangeComplate(this.TIMEEVENT(time))
			})
			this.$zaudio.on('playing', this.ACTION, (obj) => {
				this.duration = obj.duration
				this.TimeUpdate(this.TIMEEVENT(obj.current))
			})
			this.$zaudio.on('error', this.ACTION, e => {
				console.log(e, '加载失败')
			})
			this.$zaudio.on('ended', this.ACTION, e => {
				this.$zaudio.stop()
				this.init({
					bg: 0,
					customerId: this.customerId
				})
			})

			uni.$on('DETAILS2INIT', (info) => {
				this.init(info)
			});
		},
		onShow() {
			//实时渲染当前的播放状态
			this.$zaudio.syncRender()

			this.Menulist = uni.getStorageSync('weapp_session_Menu_data');
			this.Menulist.forEach(item => {
				if (item.name == '标记有效无效接待') {
					this.Menulistisshow = true;
				}
			})
			this.intention = false;
			this.kehuyixiangcenterindex = 0;
			this.buildingID = uni.getStorageSync('buildingID').id;
			this.userInfo = uni.getStorageSync('weapp_session_userInfo_data');
			if (this.userInfo.dataCode == 6 || this.userInfo.dataCode == 3) {
				this.methodsisshow = false;
			} else {
				this.methodsisshow = true;
			}
			if (this.userInfo.dataCode == 6) {
				this.jiaoseshow = false
			}
			// this.roleindex = 0;
			if (this.stateisshow == 2) {
				this.infos = this.itemobj;
			}!this.isPageHide && this.init(this.infos);
			this.gituserlist()

		},

		onHide() {
			this.isPageHide = true
		},

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

		methods: {
			// 加减
			reduce() {
				if (this.visitParams.visitRecordNum == 1) {
					uni.showToast({
						title: '不能再减了~',
						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
					});
				})
			},

			// 对话加命中标签
			dealTypes(type) {
				if (type) {
					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 []
				}
			},
			//挖掘率话术客户标签展示
			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)
				// console.log(countArr)
				this.percent = (countArr.length / this.KeyWordsfractionList.length) * 100
				// console.log(this.percent.toFixed(0))
				this.percent = this.percent.toFixed(0)

			},
			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'
					})
				}
			},
			//获取画像标签
			getWordMiningList() {
				this.treelist = [];
				this.$u.get("/corpus/findSelectedWordMiningTemplate", {
						houseId: this.buildingID,
						selected: 0
					})
					.then((res) => {
						// console.log(res)
						if (res.length) {
							res.forEach(item => {
								item.value = item.id;
								item.label = item.name;
								if (item.children.length) {
									item.children.forEach(subitem => {
										subitem.value = subitem.id;
										subitem.label = subitem.name;
									})
								} else {
									item.children = [{
										value: 'default' + item.id,
										label: '--'
									}]
								}
							})
						}
						this.treelist = res;
					});
			},
			// 选中取反
			cbChange(item) {
				item.checked = !item.checked
				this.$forceUpdate()
			},
			// 隐藏长按提示框
			cancelBeast() {
				this.dialogList.forEach(res => {
					res.message.forEach(asd => {
						asd.isshow = false;
					})
				})
			},

			// 重置选择加精的内容
			cancelAllAdd() {
				console.log('chufa')
				this.dialogList.forEach(item => {
					if (item.message && item.message.length > 0) {
						item.message.forEach(items => {
							items.checked = false
						})
					}
				})
				this.refined = false
				// this.$forceUpdate()
			},

			hangeshow2(item, type) {
				item.show = !item.show;
			},
			eqLogClick() {
				uni.navigateTo({
					url: `./equipmentLog?id=${this.customerId}`
				})
			},
			rolexuanze(index) {
				this.roleindexrow = index;
			},
			Modifyrole(dialog, item) {
				this.roleisshaw = true;
				this.roletiaoshu = dialog;
				this.roleindexrow = this.dialogList[this.csdFileindex].message[this.roletiaoshu].speaker - 1;
			},

			roletab() {
				// let itso=this.dialogList[this.csdFileindex].message[this.roletiaoshu];
				let itso = Object.assign({}, this.dialogList[this.csdFileindex].message[this.roletiaoshu]);

				itso.onebest = itso.onebest.replace(/<.*?>/ig, "");
				this.$u.post("/corpus/updateRole", {
					corpusId: this.luyinList[this.csdFileindex].id,
					transferContent: [itso],
					speaker: this.roleindexrow + 1,
					customerId: this.customerId
				}).then(res => {
					this.dialogList[this.csdFileindex].message[this.roletiaoshu].speaker = this.roleindexrow + 1
					this.roleisshaw = false;

					this.cancelBeast()
					uni.showToast({
						title: '修改成功',
						duration: 2000
					});
				})
			},
			argece(item) {
				console.log(item)
				if (item.selected == 0) {
					console.log(item)
					this.Pinspeak = false
					uni.navigateTo({
						url: '/pages/mine/ScoringPlaylist?customerId=' + this.customerId + "&id=" + item
							.keywordsId + "&type=" + 1 + '&UpDateEvent=DETAILS2INIT'
					})
				}
			},
			//关键词点击
			tapbadge(item) {
				this.Pinspeak = false
				//进搜索页面
				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.length) {
						this.prohibitedlist = res;
					}
					setTimeout(function() {
						uni.hideLoading();
					}, 1000);
				})
			},
			//评分点击
			clickaudeopal(item) {
				if (item.selected == 0 && item.viewFlag != 1) {
					// console.log(item)
					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;
				})
			},

			Acquishow2(i) {
				this.Acquirecustomerintentlist2[i].isshow = !this.Acquirecustomerintentlist2[i].isshow;
			},
			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;
			},
			Edittag(item, chend, index, i) {
				var selected = '';
				if (chend.selected == 0) {
					selected = 1;
					this.Acquirecustomerintentlist[index].children[i].selected = 1;
				} else {
					selected = 0;
					this.Acquirecustomerintentlist[index].children[i].selected = 0;
				}
				this.$u.post("/matchKeywords/updatePersonalMatchData", {
					carId: this.customerId,
					selected: selected,
					name: chend.name,
					pid: chend.pid,
					level: chend.level,
					endName: chend.endName,
					keywordsId: chend.keywordsId
				}).then(res => {

				})
			},
			//取消接待详情
			clenReceivedetailsabout() {
				this.Receivedetailsabout = false;
				this.Pinspeak = false;
				this.intention = false;
				this.Thetapeidisshow = false;
			},
			//意向统计切换
			Intentiontoswitch(i) {
				this.yixingindex = i;
				if (i == 1) {
					this.statistical()
				}
			},
			statistical() {
				this.$u.get("/matchKeywords/findCARKeywords", {
					customerId: this.customerId
				}).then(res => {
					res.forEach(item => {
						if (item.isInterval == 0) {
							item.name = item.name + item.unit + '-' + item.endName + item.unit;
						}

					})
					this.options1 = res;
				})
			},

			Receivetap() {
				this.Receivedetailsabout = true;
			},
			//标记
			alllogo() {
				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) => {
							this.isBand = true
							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 => {
										console.log(res)
										this.isBand = false
										this.Thetapeidisshow = false;
									}).catch(e => {
										this.isBand = false
									})
								}
								setTimeout(() => {
									this.noClick = true;
								}, 2000)
							} else {
								//  这里是重复点击的判断
							}
						}
					});
				} else {
					this.effective = true;
				}
			},

			effectiveAdd() {
				if (this.effectiveindex == 4) {
					if (this.effectiveitext.length == 0) {
						uni.showToast({
							title: '备注不能为空',
							icon: "none",
							duration: 2000
						});
						return
					}
				}
				this.effective = false;
				this.isBand = true
				let parames = {
					id: this.customerId,
					validInvalid: '',
					validInvalid: 1,
					invalidReason: Number(this.effectiveindex) + 1,
					invalidNote: this.effectiveitext
				}
				this.$u.post("/customer/updateValidInvalid", parames).then(res => {
					console.log(res)
					this.Thetapeidisshow = false;
				}).catch(e => {
					this.isBand = 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.Thetapeidisshow = !this.Thetapeidisshow;
					this.gituserlist()
				} else if (stringa == 'Pinspeak') {
					this.getRatelist()
					this.getfindKeyWordsBycusId()
					this.Pinspeak = true;
				} else {
					if (this.kehuyixiangcenterindex == 0) {
						this.Acquirecustomerintent()
					} else {
						this.Acquirecustomerintent2()
					}
					this.intention = true;
				}
			},
			guanjiancishifo() {
				// this.guanjianciishow=!this.guanjianciishow;

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

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

			//标记选择角色
			biaojixuanze(index) {
				this.roleindexbiaoji = index;
			},
			//标记顾问
			tagtap() {
				this.biojiisshow = !this.biojiisshow;
			},
			//取消标记
			unmarktap() {
				this.biojiisshow = false;
				this.roleindexbiaoji = this.dshfkjsdkksodofydwfkhwdfkjh;
				this.roleisshaw = false
				this.cancelBeast()
			},
			//确认标记
			Confirmthetag() {
				var num = this.roleindexbiaoji + 1;
				this.biojiisshow = false;
				uni.request({
					url: config.service.markConsultant + '?id=' + this.luyinList[this.csdFileindex].id +
						"&speaker=" + num + '&customerId=' + this.customerId, //仅为示例，并非真实接口地址。	
					method: "GET",
					header: {
						'content-type': 'application/json',
						'Access-Token': uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						this.biaojiyuyi()
						this.fenjiaoseunfo('refresh')
						uni.showToast({
							title: '标记成功',
							duration: 2000
						});
					},
				})
			},
			//标记语义词
			biaojiyuyi() {
				let parames = {
					carId: this.customerId
				}
				this.$u.post("/matchKeywords/toMatchKeywords", parames).then(res => {
					console.log(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.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
						})
					} else {
						this.tablist.push({
							name: String.fromCharCode(i + 64),
							select: false,
							speaker: i
						})
					}
				}
			},

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

			//分角色标记刷新
			fenjiaoseunfo(type) {
				this.newluyinList = [];
				this.dialogList = [];
				let str =
					`?corpusId=${this.luyinList[this.csdFileindex].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',
						'Access-Token': uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						let res = data.data.data
						let jsonInfo = JSON.parse(res.audioContent);
						//上拉标记点
						this.textindex = res.index;
						//下拉标记点
						this.toptextindex = res.index;
						jsonInfo.forEach(item => {
							item.message = JSON.parse(item.onebest)
							item.backindex = this.csdFileindex
							item.message.forEach(info => {
								info.checked = false
							})
						})
						// 当页面标记重新刷新时
						if (type == 'refresh') {
							this.tablist = []
							this.roleSelectArr = [0]
							this.creatTabList(res.speakerNum)
							this.tablist[0].select = true
							this.tablist[res.speaker].name = this.tablist[res.speaker].name + "顾问";
						}


						this.newluyinList = jsonInfo;
						if (this.textindex == null) {
							return
						} else {
							this.dialogList.push(jsonInfo[this.textindex]);
						}
					}
				})
			},

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

			// 播放器当前播放时间变化
			TimeUpdate(currentTime) {
				this.playNow = Math.ceil(currentTime)
				if (this.dialogList.length == 0) {
					return
				} else {
					const message = this.dialogList[0].message;
					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 = "dialog" + this.csdFileindex + "text" + 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 = "dialog" + this.csdFileindex + "text" + message[i].bg;
							break;
						}
					}
				}
				this.$forceUpdate()
			},
			formatSecond(seconds) {
				var result = typeof seconds === "string" ? parseFloat(seconds) : seconds;
				if (isNaN(result)) return "";
				let h = Math.floor(result / 3600) < 10 ? "0" + Math.floor(result / 3600) : Math.floor(result / 3600);
				let m = Math.floor((result / 60) % 60) < 10 ? "0" + Math.floor((result / 60) % 60) : Math.floor((result /
					60) % 60);
				let s = Math.floor(result % 60) < 10 ? "0" + Math.floor(result % 60) : Math.floor(result % 60);

				return `${h}:${m}:${s}`;
			},


			init(info) {
				this.sliderMax = 0; //进度条最大值
				this.timeStr = "00:00"; //总的时间
				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;
						}
						this.alltimeStr = this.getTime(alltime)
						if (info.bg != 0) {
							this.luyinList = res;
							this.recordPath = res[0].recordPath
							this.date = res[0].receptionTime;
							this.getCorpusAnalysis(info);
						} else {
							this.luyinList = res;
							this.recordPath = res[0].recordPath
							this.date = res[0].receptionTime;
							this.getCorpusAnalysis(info);
							this.zyAudio()
						}

					}
				})
			},
			//搜索跳转
			toSearch(e) {
				this.stepPlay(e)
			},
			//下一页
			ltolower() {
				var lengthcz = this.newluyinList.length - 1;
				if (this.textindex >= lengthcz) {
					uni.showToast({
						title: '到底了',
						duration: 2000
					});
					return
				} else {
					this.textindex = this.textindex + 1;
					this.newluyinList[this.textindex].message.forEach(item => {
						this.dialogList[0].message.push(item)
					})
				}
				console.log("下一页", this.textindex)
			},
			//上一页
			rolltoupper() {
				if (this.toptextindex == 0) {
					// uni.showToast({
					// 	title: '到头了',
					// 	duration: 2000
					// });
					return
				} else {
					if (this.dialogList[0] == undefined) {
						return
					} else {
						this.toptextindex = this.toptextindex - 1;
						let reverselist = this.newluyinList[this.toptextindex].message;
						let runlist = reverselist.reverse();
						runlist.forEach(item => {
							this.dialogList[0].message.unshift(item)
						})
					}
				}
			},
			// 取消全部加精
			notappick() {
				uni.showModal({
					title: '提示',
					content: '确认取消加精？',
					success: (res) => {
						if (res.confirm) {
							uni.request({
								url: config.service.delATD + "?carId=" + this.customerId + '&itemId=' +
									this.buildingID,
								method: "GET",
								header: {
									'content-type': 'application/json',
									'Access-Token': uni.getStorageSync('weapp_session_login_data')
										.token
								},
								success: (data) => {
									if (data.data.code == 10000) {
										this.status = 1
										uni.showToast({
											title: '取消成功',
											duration: 2000
										});
									} else {
										uni.showToast({
											title: data.data.message,
											duration: 2000
										});
									}
								}
							})
						} else if (res.cancel) {
							console.log('用户点击取消');
						}
					}
				});
			},
			//全部加精
			tappick(i) {
				uni.showModal({
					title: '提示',
					content: '确认加精？',
					success: (res) => {
						if (res.confirm) {
							console.log('用户点击确定');
							let objdata = {
								"carId": this.customerId, //客户id
								"status": 0,
								"itemId": this.buildingID,
							}
							uni.request({
								url: config.service.addATD,
								method: "POST",
								header: {
									'content-type': 'application/json',
									'Access-Token': uni.getStorageSync('weapp_session_login_data')
										.token
								},
								data: objdata,
								success: (data) => {
									if (data.data.code == 10000) {
										this.status = 0
										uni.showToast({
											title: '加精成功',
											duration: 2000
										});
									} else {
										uni.showToast({
											title: data.data.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();
						console.log('success');
					}
				});
			},


			//确认加入常错词
			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[this.csdFileindex].id,
									wrongWord: this.thewrongword, //错误词
									correctWord: this.reswrongword, //正确词
									translateHtmlContent: this.messagelisy,
									id: uni.getStorageSync('buildingID').id
								}

								let sas = this.textItself.replace(this.thewrongword, this.reswrongword)
								console.log(sas)
								this.dialogList[this.argtextindex1].message[this.argtextindex2].onebest = sas
								this.cancelBeast()
								this.$u.post("/corpus/addCorrectWord", parames).then(data => {
									console.log(data)
									this.thewrongword = "";
									this.reswrongword = "";
									this.isshow2 = false;
									this.$zaudio.stop()
									this.init({
										bg: 0,
										customerId: this.customerId
									})
								})
							} 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.thewrongword = ''
				this.isshow2 = false;
				this.cancelBeast()
			},
			//加入长错词
			Oftenthewrongword(item) {
				this.reswrongword = "";
				this.isshow2 = true;
				this.$nextTick(() => {
					this.thewrongword = item.onebest.replace(/<.*?>/ig, "");
				})
			},
			//加精华
			Addtheessence() {
				this.refined = true
				this.cancelBeast()
			},

			// 确认批量加精
			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() {
				let objdata = {
					itemId: this.buildingID,
					carId: this.customerId, //客户id
					startFile: this.duihuawenjianid, //对话所在录音文件id
					marketingId: this.biaoqianid || 0, //对应一级父id
					status: 1,

					toDigestList: [], // 加精多选的内容
					// jjTransfer: this.changanitem.onebest, //选中对话
					// endTime: this.changanitem.ed, //结束时间
					// startTime: this.changanitem.bg, //开始时间
				}
				// 将数据筛选出来并排序并且翻转数据让后端获取第一条加精的数据在分点加精的学习列表使用
				this.dialogList.forEach(items => {
					if (items.message && items.message.length > 0) {
						items.message.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)
					if (res) {
						uni.showToast({
							title: '加精成功',
							duration: 2000
						});
					} else {
						uni.showToast({
							title: '加精失败',
							duration: 2000
						});
					}
					this.cancelAllAdd()
				}).catch(e => {
					uni.showToast({
						title: '网络异常，请稍候重试~',
						duration: 2000
					});
					this.cancelAllAdd()
				})
			},
			//长按对话
			changanxiaoguo(item, index, i) {
				this.messagelisy = [];
				this.changanitem = {};
				this.duihuawenjianid = "";
				this.cancelBeast()
				this.changanitem = item;
				this.duihuawenjianid = this.luyinList[this.csdFileindex].id;
				this.dialogList[i].message[index].isshow = !this.dialogList[i].message[index].isshow;
				this.textItself = item.onebest;
				// let onebest = item.onebest;
				// this.thewrongword = onebest.replace(/<.*?>/ig, "");
				this.messagelisy = this.dialogList[i].message
				this.argtextindex1 = i;
				this.argtextindex2 = index;
			},
			//回到顶部
			gotoTop() {
				this.scrollId = null;
				this.$nextTick(() => {
					this.scrollId = "top";
				})
			},
			// 客户详情需求挖掘话术
			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 = []
					}
				})
			},
			getRatelist() {
				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: [],
									viewFlag: item.viewFlag
								})
							} 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: [],
										viewFlag: subitem.viewFlag,
									})
								}
							})
						})
						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,
											viewFlag: subitem.viewFlag,
										})
									}
								})
							})
						})
						level1[0].show = true;
						level1[0].children[0].show = true;
						this.ratelist = level1
					}
					setTimeout(function() {
						uni.hideLoading();
					}, 1000);
				})
			},

			//--------------------------------- 获取转义后的对话结果
			getCorpusAnalysis(info) {
				this.dialogList = [];
				this.newluyinList = []
				uni.request({
					url: config.service.getCorpusAnal + '?corpusId=' + this.luyinList[this.csdFileindex].id +
						"&bg=" + info.bg + "&speaker=" + this.roleindex + '&voFlag=0' +
						'&num=50',
					method: "GET",
					header: {
						'content-type': 'application/json',
						'Access-Token': uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						this.LOADING = false
						this.tablist = [];
						this.roleindexbiaoji = 0;
						let jsonInfo = JSON.parse(data.data.data.audioContent);
						this.creatTabList(data.data.data.speakerNum)
						this.tablist[0].select = true // 默认选中第一个
						if (data.data.data.speaker == null) {
							this.dshfkjsdkksodofydwfkhwdfkjh = 0;
						} else {
							if (data.data.data.viewNameFlag != 1) {
								this.tablist[data.data.data.speaker].name = this.tablist[data.data.data
									.speaker].name + "顾问";
							}
							this.roleindexbiaoji = data.data.data.speaker - 1;
							this.dshfkjsdkksodofydwfkhwdfkjh = data.data.data.speaker - 1;
						}

						//上拉标记点
						this.textindex = data.data.data.index;
						//下拉标记点
						this.toptextindex = data.data.data.index;

						jsonInfo.forEach(item => {
							item.message = JSON.parse(item.onebest)
							item.backindex = this.csdFileindex;
							item.message.forEach(che => {
								che.checked = false
								if (che.onebest == info.onebest) {
									che.onebest =
										`<font style='color: red'>${che.onebest}</font>`;
								}
							})
						})

						this.newluyinList = jsonInfo;
						console.log(this.newluyinList)
						this.dialogList.push(jsonInfo[this.textindex]);
						console.log('this.dialogList')
						console.log(this.dialogList)
						var itc = parseInt(info.bg / 1000)
						this.toSearch(itc)
					},

					fail: () => {
						this.LOADING = false
					}
				})
			},

			getTime(time) {
				return this.formatSecond(time)
			},

			//音频前进回退
			sliderChangeComplate(currentTime) {
				this.dialogList = []
				for (let i = 0; i < this.newluyinList.length; i++) {
					let message = this.newluyinList[i].message
					if (!message) return
					if (Math.floor(this.newluyinList[i].bg / 1000) <= currentTime && currentTime <= Math.floor(this
							.newluyinList[i].ed / 1000)) {
						for (let j = 0; j < message.length; j++) {
							let item = message[j]
							if (Math.floor(item.bg / 1000) <= currentTime && currentTime <= Math.floor(item.ed / 1000)) {
								this.scrollId = "dialog" + this.csdFileindex + "text" + item.bg;
								break;
							}
							if (j < message.length - 1 && Math.floor(item.ed / 1000) <= currentTime && currentTime <= Math
								.floor(item.bg / 1000)) {
								this.scrollId = "dialog" + this.csdFileindex + "text" + item.bg;
								break;
							}
						}
						this.textindex = i;
						this.toptextindex = i;
						this.dialogList.push(this.newluyinList[i])
					}
				}
			},
			//长按点击播放
			clickbofang(dialog, item) {
				this.cancelBeast()
				this.$forceUpdate()
				let platetime = item.bg;
				let newtime = item.bg / 1000;
				this.dialogList = []
				uni.request({
					url: config.service.fastForward + '?corpusId=' + this.luyinList[this.csdFileindex].id +
						"&bg=" + platetime || 0, //仅为示例，并非真实接口地址。	
					method: "GET",
					header: {
						'content-type': 'application/json',
						'Access-Token': uni.getStorageSync('weapp_session_login_data').token
					},
					success: (data) => {
						this.textindex = data.data.data.index;
						this.toptextindex = data.data.data.index;
						this.dialogList.push(this.newluyinList[data.data.data.index])
						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;
			},
			changeEditing() {
				this.dialogListres[0].message.forEach(asd => {
					asd.isshow = false;
				})
			},


			//录音实例
			zyAudio() {
				let data = [{
					src: this.recordPath,
					title: '录音音频',
					singer: '',
					coverImgUrl: ''
				}]
				this.$zaudio.setAudio(data)
				//渲染第一首音频
				this.$zaudio.setRender(0)

				setTimeout(() => {
					this.$zaudio.operate()
				}, 150)
			},

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


<style lang="scss">
	.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;
		}

		.pingfenbox view {
			flex: 1;
			text-align: center;
			font-size: 28rpx;
		}

		.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;
			border-bottom: 1px solid #E0E0E0;
		}

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

		.bottombox {
			width: 100%;
			height: 170rpx;
			border-top: 1px solid #E0E0E0;
			/* iphonex 等安全区设置，底部安全区适配 */
			padding-bottom: constant(safe-area-inset-bottom);
			/* 兼容 iOS < 11.2 */
			padding-bottom: env(safe-area-inset-bottom);
			/* 兼容 iOS >= 11.2 */
			box-sizing: content-box;

			.bottomhead {
				width: 100%;
				height: 81rpx;
				border-bottom: 1px 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;
			}
		}
	}

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

		.boxhead1 {
			width: 50%;
			color: #303030;
			height: 84rpx;
			line-height: 84rpx;
			font-size: 28rpx;
			text-indent: 30rpx;
		}

		.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;

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

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

				.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: 60rpx;
			display: flex;
			justify-content: center;
			align-items: center;
			border-left: 1px solid #D6D6D6;

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

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

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

		.allimg {
			position: absolute;
			z-index: 10;
			right: 20rpx;
			top: -372rpx;
			width: 200rpx;
			height: 352rpx;
			border: 1rpx solid #E0E0E0;
			background: #FFFFFF;
			font-size: 26rpx;
			color: #333333;
			text-align: center;
			box-shadow: 10rpx 10rpx 5rpx #888888;
		}
	}

	.tmmchen image {
		width: 40rpx;
		height: 40rpx;
		margin-top: 10rpx;
		margin-bottom: 2rpx;
	}


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

	.followingpop-up {
		padding: 0 0 40rpx 0;
		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: 570upx;
		background: #FFFFFF;
		z-index: 1000;
		border-radius: 10upx;
		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: 100upx;
			width: 100%;
			margin-top: 40upx;
			border-top: 1px solid #dddddd;
			display: flex;
		}

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

		.bounced3-2 {
			width: 50%;
			height: 100%;
			text-align: center;
			line-height: 100upx;
			font-size: 36upx;
			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;
	}

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

	.dialog-block {
		margin: 20rpx 0;
		border-bottom: 1px solid #ccc;
		padding-bottom: 30rpx;

		.fileName {
			text-align: center;
			margin: 10rpx auto;
			width: 115rpx;
			height: 42rpx;
			line-height: 42rpx;
			background: #EFEFEF;
			border-radius: 4rpx;
			font-size: 20rpx;
			font-weight: 400;
			color: #333333;
		}
	}

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

	.scroll-Y .text {
		margin: 0 30upx 20rpx;
		line-height: 60upx;
		display: flex;
	}

	.scroll-Y .text[data-speaker="2"],
	.scroll-Y .text[data-speaker="4"],
	.scroll-Y .text[data-speaker="8"],
	.scroll-Y .text[data-speaker="6"] {
		flex-direction: row-reverse;
		text-align: right;

		.contentInfo {
			.info {
				color: #ccc;
				font-size: 18rpx;
				font-size: 30rpx;
				padding: 0 28rpx;
			}

			.contentMain {
				display: flex;
				flex-direction: row-reverse;

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

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

	.scroll-Y .text[data-speaker="2"],
	.scroll-Y .text[data-speaker="4"],
	.scroll-Y .text[data-speaker="8"],
	.scroll-Y .text[data-speaker="6"] {
		.contentInfo {
			.info {
				.AudioUserName {
					margin-left: 10rpx;
				}

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

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

	.scroll-Y .text .avatar {
		margin-top: 60rpx;
		width: 64upx;
		height: 64upx;
		line-height: 64upx;
		text-align: center;
		font-size: 36rpx;
		border-radius: 50%;
		background: #F2F2F2;
		color: #008EF2;

		image {
			width: 40upx;
		}
	}

	.checkbox {
		margin: 80rpx 20rpx 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;
		}
	}

	.scroll-Y .text .contentInfo .info {
		color: #ccc;
		font-size: 18rpx;
		font-size: 30rpx;
		padding: 0 28rpx;
	}

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

	.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;
	}

	.scroll-Y .text .contentInfo .contentMain .content {
		margin-left: 30upx;
		line-height: 60rpx;
		text-align: left;
		padding: 0 5px;
		border-radius: 8upx;
		max-width: 442rpx;
		min-width: 120rpx;
		background: #F6F6F6;
		color: #999999;
		position: relative;

		.tankuangcss {
			position: absolute;
			top: -140rpx;
			left: -120rpx;
			width: 308rpx;
			height: 130rpx;
			background-color: #333333;
			font-size: 24rpx;
			color: #FFFFFF;
			padding-top: 4rpx;
			padding-bottom: 4rpx;
			display: flex;
			flex-wrap: wrap;
			border-radius: 15rpx;
			z-index: 1000;
		}

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

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

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

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

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

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

	// 表单
	.tian-view {
		width: 570rpx;
		background-color: #FFFFFF;
		display: flex;
		margin-bottom: 30rpx;

		.tian-view-t2 {
			width: 100%;
			font-size: 34rpx;
			display: flex;
			color: #333;

			.word {
				flex: 1;
				border-bottom: 1px solid #ccc;
			}

			.word1 {
				min-height: 80rpx;
				flex: 1;
			}
		}
	}

	.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 {
				min-height: 30rpx;
				font-size: 28rpx;
				font-weight: 400;
				color: #666666;
				line-height: 30rpx;
				margin-bottom: 20rpx;
			}

			.Level3che {
				width: 100%;
				display: flex;
				line-height: 36rpx;
				margin-top: 24rpx;

				.title1 {
					flex: 1;
					font-size: 30rpx;
					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: 1;
				font-size: 28rpx;
				color: #333333;
				font-weight: 400;
			}

			.leve1-jindu {
				flex: 1;
				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;
	}

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


	.scroll-Y .text.active .content {
		color: #FF7538 !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: #FF7538 !important;
		position: relative;
	}

	// .scroll-Y .isGreen .contentInfo .contentMain .content {
	// 	background: #2BC805 !important;
	// 	color: #FFFFFF;
	// }

	.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;
			}
		}
	}
</style>
