|
|
@@ -13,9 +13,17 @@
|
|
|
<div class="c_t45_title">
|
|
|
<div class="c_title" v-if="props.showData.choiceQuestionListData[props.showData.workIndex]">
|
|
|
<span>{{
|
|
|
- props.showData.choiceQuestionListData[props.showData.workIndex]
|
|
|
- .teststitle
|
|
|
- }}</span>
|
|
|
+ props.showData.choiceQuestionListData[props.showData.workIndex]
|
|
|
+ .teststitle
|
|
|
+ }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="c_t45_msg" v-if="props.roleType == 1">
|
|
|
+ <div>{{ lang.ssAnswerCount }} {{ props.workArray.length }}<span
|
|
|
+ v-if="props.unsubmittedStudents.length > 0">/{{ props.workArray.length +
|
|
|
+ props.unsubmittedStudents.length
|
|
|
+ }}</span></div>
|
|
|
+ <span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
+ lang.ssViewSubmitStatus2 }}</span>
|
|
|
<div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
<div class="switch">
|
|
|
<Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
@@ -27,14 +35,6 @@
|
|
|
</div> -->
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="c_t45_msg" v-if="props.roleType == 1">
|
|
|
- <div>{{ lang.ssAnswerCount }} {{ props.workArray.length }}<span
|
|
|
- v-if="props.unsubmittedStudents.length > 0">/{{ props.workArray.length +
|
|
|
- props.unsubmittedStudents.length
|
|
|
- }}</span></div>
|
|
|
- <span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
- lang.ssViewSubmitStatus2 }}</span>
|
|
|
- </div>
|
|
|
<!--<span class="c_t45_t_btn" :class="{'c_t45_t_btn_noActive': props.showData.workIndex <= 0}" @click="changeWorkIndex(0)">{{ lang.ssPrevQ }}</span>-->
|
|
|
<!--<span class="c_t45_t_btn" :class="{'c_t45_t_btn_noActive': props.showData.workIndex >= props.showData.choiceQuestionListData.length - 1}" @click="changeWorkIndex(1)">{{ lang.ssNextQ }}</span>-->
|
|
|
</div>
|
|
|
@@ -118,9 +118,18 @@
|
|
|
<div class="c_t45_title">
|
|
|
<div class="c_title" v-if="props.showData.choiceQuestionListData[props.showData.workIndex]">
|
|
|
<span>{{
|
|
|
- props.showData.choiceQuestionListData[props.showData.workIndex]
|
|
|
- .teststitle
|
|
|
- }}</span>
|
|
|
+ props.showData.choiceQuestionListData[props.showData.workIndex]
|
|
|
+ .teststitle
|
|
|
+ }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="c_t45_msg" v-if="props.roleType == 1">
|
|
|
+ <div>{{ lang.ssAnswerCount }} {{ props.workArray.length }}<span
|
|
|
+ v-if="props.unsubmittedStudents.length > 0">/{{ props.workArray.length +
|
|
|
+ props.unsubmittedStudents.length
|
|
|
+ }}</span></div>
|
|
|
+ <span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
+ lang.ssViewSubmitStatus2 }}</span>
|
|
|
+
|
|
|
<div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
<div class="switch">
|
|
|
<Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
@@ -128,18 +137,10 @@
|
|
|
</div>
|
|
|
<div class="switch">
|
|
|
<Switch :value="anonymousValue" @update:value="handleAnonymousChange" />
|
|
|
- <span>{{anonymousValue ? lang.ssAnonymous : lang.ssRealName}}</span>
|
|
|
+ <span>{{ anonymousValue ? lang.ssAnonymous : lang.ssRealName }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="c_t45_msg" v-if="props.roleType == 1">
|
|
|
- <div>{{ lang.ssAnswerCount }} {{ props.workArray.length }}<span
|
|
|
- v-if="props.unsubmittedStudents.length > 0">/{{ props.workArray.length +
|
|
|
- props.unsubmittedStudents.length
|
|
|
- }}</span></div>
|
|
|
- <span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
- lang.ssViewSubmitStatus2 }}</span>
|
|
|
- </div>
|
|
|
<!--<span class="c_t45_t_btn" :class="{'c_t45_t_btn_noActive': props.showData.workIndex <= 0}" @click="changeWorkIndex(0)">{{ lang.ssPrevQ }}</span>-->
|
|
|
<!--<span class="c_t45_t_btn" :class="{'c_t45_t_btn_noActive': props.showData.workIndex >= props.showData.choiceQuestionListData.length - 1}" @click="changeWorkIndex(1)">{{ lang.ssNextQ }}</span>-->
|
|
|
</div>
|
|
|
@@ -224,16 +225,6 @@
|
|
|
<div class="c_t15_title">
|
|
|
<div class="c_title">
|
|
|
<span>{{ workDetail.json.answerQ }}</span>
|
|
|
- <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
- <span>{{ lang.ssShowResult }}</span>
|
|
|
- </div>
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
- <span>{{ lang.ssLike }}</span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="c_t15_type">{{ lang.ssQATest }}</span>
|
|
|
@@ -244,13 +235,24 @@
|
|
|
}}</span></div>
|
|
|
<span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
+ <span>{{ lang.ssShowResult }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
+ <span>{{ lang.ssLike }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="c_t15_content" v-show="!lookWorkData">
|
|
|
<div class="c_t15_c_item" v-for="item in processedWorkArray" :key="item.id" @click.stop="lookWork(item.id)">
|
|
|
<div class="c_t15_c_i_top">
|
|
|
<span>{{ item.name.charAt(0) }}</span>
|
|
|
<div>{{ item.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="castScreen(item)" v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="castScreen(item)"
|
|
|
+ v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssCastScreen }}
|
|
|
</div>
|
|
|
@@ -259,7 +261,7 @@
|
|
|
<span v-html="item.content.answer"></span>
|
|
|
</div>
|
|
|
<div class="bottom_btn" v-if="likeValue">
|
|
|
- <div class="bottom_like" :class="{'active': item.isLikes}" @click.stop="handleLikeClick(item)">
|
|
|
+ <div class="bottom_like" :class="{ 'active': item.isLikes }" @click.stop="handleLikeClick(item)">
|
|
|
<IconThumbsUp />
|
|
|
<span>{{ item.likesCount }}</span>
|
|
|
</div>
|
|
|
@@ -309,10 +311,11 @@
|
|
|
|
|
|
<div class="c_t15_workDetail" v-if="lookWorkData" @click.stop="clickContent(false)">
|
|
|
<div class="c_t15_wd_top">
|
|
|
- <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen"/>
|
|
|
+ <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen" />
|
|
|
<span>{{ lookWorkData.name.charAt(0) }}</span>
|
|
|
<div>{{ lookWorkData.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="exitCastScreen" v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="exitCastScreen"
|
|
|
+ v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssExitCastScreen }}
|
|
|
</div>
|
|
|
@@ -332,16 +335,6 @@
|
|
|
<div class="c_t15_title">
|
|
|
<div class="c_title">
|
|
|
<span>{{ workDetail.json.answerQ }}</span>
|
|
|
- <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
- <span>{{ lang.ssShowResult }}</span>
|
|
|
- </div>
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
- <span>{{ lang.ssLike }}</span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="c_t15_type">{{ lang.ssPhoto }}</span>
|
|
|
@@ -352,8 +345,19 @@
|
|
|
}}</span></div>
|
|
|
<span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
+ <span>{{ lang.ssShowResult }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
+ <span>{{ lang.ssLike }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- <div class="downloadBtn" @click.stop="downloadAll" :class="{ disabled: downloadLoading }" v-if="props.roleType == 1">
|
|
|
+ <div class="downloadBtn" @click.stop="downloadAll" :class="{ disabled: downloadLoading }"
|
|
|
+ v-if="props.roleType == 1">
|
|
|
<IconDownload />
|
|
|
<span>{{ downloadLoading ? lang.ssDownloadLoading : lang.ssBatchDownload }}</span>
|
|
|
</div>
|
|
|
@@ -363,7 +367,8 @@
|
|
|
<div class="c_t15_c_i_top">
|
|
|
<span>{{ item.name.charAt(0) }}</span>
|
|
|
<div>{{ item.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="castScreen(item)" v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="castScreen(item)"
|
|
|
+ v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssCastScreen }}
|
|
|
</div>
|
|
|
@@ -375,7 +380,7 @@
|
|
|
<span>{{ lang.ssNoPhoto }}</span>
|
|
|
</div>
|
|
|
<div class="bottom_btn" v-if="likeValue">
|
|
|
- <div class="bottom_like" :class="{'active': item.isLikes}" @click.stop="handleLikeClick(item)">
|
|
|
+ <div class="bottom_like" :class="{ 'active': item.isLikes }" @click.stop="handleLikeClick(item)">
|
|
|
<IconThumbsUp />
|
|
|
<span>{{ item.likesCount }}</span>
|
|
|
</div>
|
|
|
@@ -385,10 +390,11 @@
|
|
|
|
|
|
<div class="c_t79_workDetail" v-if="lookWorkData" @click.stop="clickContent(false)">
|
|
|
<div class="c_t79_wd_top">
|
|
|
- <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen"/>
|
|
|
+ <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen" />
|
|
|
<span>{{ lookWorkData.name.charAt(0) }}</span>
|
|
|
<div>{{ lookWorkData.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="exitCastScreen" v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="exitCastScreen"
|
|
|
+ v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssExitCastScreen }}
|
|
|
</div>
|
|
|
@@ -427,16 +433,6 @@
|
|
|
<div class="c_t72_title">
|
|
|
<div class="c_title">
|
|
|
<span>{{ lang.ssAiApp }}</span>
|
|
|
- <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
- <span>{{ lang.ssShowResult }}</span>
|
|
|
- </div>
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
- <span>{{ lang.ssLike }}</span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="c_t72_type">{{ lang.ssAiApp }}</span>
|
|
|
@@ -447,19 +443,30 @@
|
|
|
}}</span></div>
|
|
|
<span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
+ <span>{{ lang.ssShowResult }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
+ <span>{{ lang.ssLike }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="c_t72_content" v-show="!lookWorkData">
|
|
|
<div class="c_t72_c_item" v-for="item in processedWorkArray" :key="item.id" @click.stop="lookWork(item.id)">
|
|
|
<div class="c_t72_c_i_top">
|
|
|
<span>{{ item.name.charAt(0) }}</span>
|
|
|
<div>{{ item.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="castScreen(item)" v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="castScreen(item)"
|
|
|
+ v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssCastScreen }}
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="bottom_btn" v-if="likeValue">
|
|
|
- <div class="bottom_like" :class="{'active': item.isLikes}" @click.stop="handleLikeClick(item)">
|
|
|
+ <div class="bottom_like" :class="{ 'active': item.isLikes }" @click.stop="handleLikeClick(item)">
|
|
|
<IconThumbsUp />
|
|
|
<span>{{ item.likesCount }}</span>
|
|
|
</div>
|
|
|
@@ -500,10 +507,11 @@
|
|
|
|
|
|
<div class="c_t72_workDetail" v-if="lookWorkData" @click.stop="clickContent(false)">
|
|
|
<div class="c_t72_wd_top">
|
|
|
- <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen"/>
|
|
|
+ <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen" />
|
|
|
<span>{{ lookWorkData.name.charAt(0) }}</span>
|
|
|
<div>{{ lookWorkData.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="exitCastScreen" v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="exitCastScreen"
|
|
|
+ v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssExitCastScreen }}
|
|
|
</div>
|
|
|
@@ -555,33 +563,35 @@
|
|
|
<div class="c_t73_title">
|
|
|
<div class="c_title">
|
|
|
<span>{{ lang.ssPageImage }}</span>
|
|
|
- <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
- <span>{{ lang.ssShowResult }}</span>
|
|
|
- </div>
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
- <span>{{ lang.ssLike }}</span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="c_t73_type">{{ lang.ssHPage }}</span>
|
|
|
<div class="c_t73_msg" v-if="props.roleType == 1">
|
|
|
<div>{{ lang.ssAnswerCount }} {{ props.workArray.length }}<span
|
|
|
- v-if="props.unsubmittedStudents.length > 0">/{{ props.workArray.length +
|
|
|
+ v-if="props.unsubmittedStudents.length > 0">/{{
|
|
|
+ props.workArray.length +
|
|
|
props.unsubmittedStudents.length
|
|
|
}}</span></div>
|
|
|
<span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
+ <span>{{ lang.ssShowResult }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="switch">
|
|
|
+ <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
+ <span>{{ lang.ssLike }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="c_t73_content" v-show="!lookWorkData">
|
|
|
<div class="c_t73_c_item" v-for="item in processedWorkArray" :key="item.id" @click.stop="lookWork(item.id)">
|
|
|
<div class="c_t73_c_i_top">
|
|
|
<span>{{ item.name.charAt(0) }}</span>
|
|
|
<div>{{ item.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="castScreen(item)" v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="castScreen(item)"
|
|
|
+ v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssCastScreen }}
|
|
|
</div>
|
|
|
@@ -590,7 +600,7 @@
|
|
|
<img :src="item.content" />
|
|
|
</div>
|
|
|
<div class="bottom_btn" v-if="likeValue">
|
|
|
- <div class="bottom_like" :class="{'active': item.isLikes}" @click.stop="handleLikeClick(item)">
|
|
|
+ <div class="bottom_like" :class="{ 'active': item.isLikes }" @click.stop="handleLikeClick(item)">
|
|
|
<IconThumbsUp />
|
|
|
<span>{{ item.likesCount }}</span>
|
|
|
</div>
|
|
|
@@ -600,10 +610,11 @@
|
|
|
|
|
|
<div class="c_t73_workDetail" v-if="lookWorkData" @click.stop="clickContent(false)">
|
|
|
<div class="c_t73_wd_top">
|
|
|
- <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen"/>
|
|
|
+ <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen" />
|
|
|
<span>{{ lookWorkData.name.charAt(0) }}</span>
|
|
|
<div>{{ lookWorkData.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="exitCastScreen" v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="exitCastScreen"
|
|
|
+ v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssExitCastScreen }}
|
|
|
</div>
|
|
|
@@ -619,22 +630,13 @@
|
|
|
<div class="c_t72_title">
|
|
|
<div class="c_title">
|
|
|
<span>{{ lang.ssKwlTitle }}</span>
|
|
|
- <div class="switch_btn" v-if="props.isCreator && props.roleType == 1">
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="canValue" @update:value="handleCanChange" />
|
|
|
- <span>{{ lang.ssShowResult }}</span>
|
|
|
- </div>
|
|
|
- <div class="switch">
|
|
|
- <Switch :value="likeValue" @update:value="handleLikeChange" />
|
|
|
- <span>{{ lang.ssLike }}</span>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span class="c_t72_type">{{ lang.ssKwlTitle }}</span>
|
|
|
<div class="c_t72_msg" v-if="props.roleType == 1">
|
|
|
<div>{{ lang.ssAnswerCount }} {{ props.workArray.length }}<span
|
|
|
- v-if="props.unsubmittedStudents.length > 0">/{{ props.workArray.length +
|
|
|
+ v-if="props.unsubmittedStudents.length > 0">/{{
|
|
|
+ props.workArray.length +
|
|
|
props.unsubmittedStudents.length
|
|
|
}}</span></div>
|
|
|
<span v-if="props.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
@@ -645,13 +647,14 @@
|
|
|
<div class="c_t72_c_i_top">
|
|
|
<span>{{ item.name.charAt(0) }}</span>
|
|
|
<div>{{ item.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="castScreen(item)" v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="castScreen(item)"
|
|
|
+ v-if="props.isCreator && props.roleType == 1 && isFollowModeActive && canValue">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssCastScreen }}
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="bottom_btn" v-if="likeValue">
|
|
|
- <div class="bottom_like" :class="{'active': item.isLikes}" @click.stop="handleLikeClick(item)">
|
|
|
+ <div class="bottom_like" :class="{ 'active': item.isLikes }" @click.stop="handleLikeClick(item)">
|
|
|
<IconThumbsUp />
|
|
|
<span>{{ item.likesCount }}</span>
|
|
|
</div>
|
|
|
@@ -661,10 +664,11 @@
|
|
|
|
|
|
<div class="c_t72_workDetail" v-if="lookWorkData" @click.stop="clickContent(false)">
|
|
|
<div class="c_t72_wd_top">
|
|
|
- <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen"/>
|
|
|
+ <img src="../../../assets/img/arrow_left.png" @click.stop="lookWork('')" v-if="!isCastScreen" />
|
|
|
<span>{{ lookWorkData.name.charAt(0) }}</span>
|
|
|
<div>{{ lookWorkData.name }}</div>
|
|
|
- <div class="cast_sreen_btn" @click.stop="exitCastScreen" v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
+ <div class="cast_sreen_btn" @click.stop="exitCastScreen"
|
|
|
+ v-if="(props.isCreator && props.roleType == 1 && isCastScreen) || (!isFollowModeActive && isCastScreen)">
|
|
|
<IconCastScreen />
|
|
|
{{ lang.ssExitCastScreen }}
|
|
|
</div>
|
|
|
@@ -680,11 +684,8 @@
|
|
|
</div>
|
|
|
<div class="kwl-col__body">
|
|
|
<template v-if="lookWorkData.content.know.length">
|
|
|
- <div
|
|
|
- v-for="(item, idx) in lookWorkData.content.know"
|
|
|
- :key="'k-'+idx"
|
|
|
- class="kwl-item"
|
|
|
- >{{ item }}</div>
|
|
|
+ <div v-for="(item, idx) in lookWorkData.content.know" :key="'k-' + idx" class="kwl-item">{{ item }}
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<div v-else class="kwl-empty">{{ lang.ssNone }}</div>
|
|
|
</div>
|
|
|
@@ -698,11 +699,8 @@
|
|
|
</div>
|
|
|
<div class="kwl-col__body">
|
|
|
<template v-if="lookWorkData.content.want.length">
|
|
|
- <div
|
|
|
- v-for="(item, idx) in lookWorkData.content.want"
|
|
|
- :key="'w-'+idx"
|
|
|
- class="kwl-item"
|
|
|
- >{{ item }}</div>
|
|
|
+ <div v-for="(item, idx) in lookWorkData.content.want" :key="'w-' + idx" class="kwl-item">{{ item }}
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<div v-else class="kwl-empty">{{ lang.ssNone }}</div>
|
|
|
</div>
|
|
|
@@ -716,11 +714,8 @@
|
|
|
</div>
|
|
|
<div class="kwl-col__body">
|
|
|
<template v-if="lookWorkData.content.learned.length">
|
|
|
- <div
|
|
|
- v-for="(item, idx) in lookWorkData.content.learned"
|
|
|
- :key="'l-'+idx"
|
|
|
- class="kwl-item"
|
|
|
- >{{ item }}</div>
|
|
|
+ <div v-for="(item, idx) in lookWorkData.content.learned" :key="'l-' + idx" class="kwl-item">{{ item }}
|
|
|
+ </div>
|
|
|
</template>
|
|
|
<div v-else class="kwl-empty">{{ lang.ssNone }}</div>
|
|
|
</div>
|
|
|
@@ -1287,7 +1282,7 @@ const setEchartsArea1 = () => {
|
|
|
(option.xAxis.data as any[]).push('')
|
|
|
}
|
|
|
const isCorrect = i.isAnswer && answerValue.value
|
|
|
- ;(option.series[0].data as any[]).push({
|
|
|
+ ; (option.series[0].data as any[]).push({
|
|
|
value: i.user.length,
|
|
|
itemStyle: {
|
|
|
color: isCorrect ? '#29AE2B' : 'rgba(252, 207, 0, 1)',
|
|
|
@@ -1330,7 +1325,7 @@ const setEchartsArea1 = () => {
|
|
|
if (selectedOption && selectUserDialogRef.value) {
|
|
|
// console.log(selectedOption)
|
|
|
console.log('selectedOption', selectedOption)
|
|
|
- const selectedOption2 = {...selectedOption}
|
|
|
+ const selectedOption2 = { ...selectedOption }
|
|
|
if (anonymousValue.value) {
|
|
|
selectedOption2.user = selectedOption2.user.map((item: any, index: number) => lang.ssAnonymousUser + (index + 1))
|
|
|
}
|
|
|
@@ -3553,7 +3548,7 @@ onUnmounted(() => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.c_title{
|
|
|
+.c_title {
|
|
|
display: flex;
|
|
|
|
|
|
&>span {
|
|
|
@@ -3562,25 +3557,26 @@ onUnmounted(() => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.switch_btn{
|
|
|
+.switch_btn {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: .5rem;
|
|
|
+ margin-left: auto;
|
|
|
|
|
|
- &>.switch{
|
|
|
+ &>.switch {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: .5rem;
|
|
|
font-size: .8rem;
|
|
|
color: #141517;
|
|
|
|
|
|
- +.switch{
|
|
|
+ +.switch {
|
|
|
margin-left: .5rem;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.bottom_btn{
|
|
|
+.bottom_btn {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: 5px;
|
|
|
@@ -3588,21 +3584,21 @@ onUnmounted(() => {
|
|
|
font-size: 14px;
|
|
|
color: rgba(0, 0, 0, 0.7);
|
|
|
|
|
|
- .bottom_like{
|
|
|
+ .bottom_like {
|
|
|
margin-left: auto;
|
|
|
cursor: pointer;
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: 5px;
|
|
|
color: rgba(0, 0, 0, 0.7);
|
|
|
-
|
|
|
- &.active{
|
|
|
+
|
|
|
+ &.active {
|
|
|
color: rgba(252, 207, 0, 1);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.cast_sreen_btn{
|
|
|
+.cast_sreen_btn {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: 5px;
|
|
|
@@ -3618,7 +3614,7 @@ onUnmounted(() => {
|
|
|
justify-content: center;
|
|
|
}
|
|
|
|
|
|
-.downloadBtn{
|
|
|
+.downloadBtn {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
gap: 5px;
|