|
|
@@ -154,7 +154,7 @@
|
|
|
</svg>{{ lang.ssAnalysis }}
|
|
|
</div>
|
|
|
<div class="ai_refresh" :class="{ 'disabled': currentAnalysis && currentAnalysis.loading }"
|
|
|
- @click.stop="aiAnalysisRefresh78()" >
|
|
|
+ @click.stop="aiAnalysisRefresh78()">
|
|
|
{{ lang.ssAIGenerate }}
|
|
|
<svg viewBox="0 0 1024 1024" width="200" height="200">
|
|
|
<path
|
|
|
@@ -199,6 +199,14 @@
|
|
|
<div class="c_t15" v-if="workDetail && workDetail.type === '15' && props.showData">
|
|
|
<div class="c_t15_title">{{ workDetail.json.answerQ }}</div>
|
|
|
<span class="c_t15_type">{{ lang.ssQATest }}</span>
|
|
|
+ <div class="c_t15_msg">
|
|
|
+ <div>{{ lang.ssAnswerCount }} {{ props.showData.workArray.length }}<span
|
|
|
+ v-if="props.showData.unsubmittedStudents.length > 0">/{{ props.showData.workArray.length +
|
|
|
+ props.showData.unsubmittedStudents.length
|
|
|
+ }}</span></div>
|
|
|
+ <span v-if="props.showData.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
+ lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ </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">
|
|
|
@@ -271,6 +279,14 @@
|
|
|
<div class="c_t15" v-if="workDetail && workDetail.type === '79' && props.showData">
|
|
|
<div class="c_t15_title">{{ workDetail.json.answerQ }}</div>
|
|
|
<span class="c_t15_type">{{ lang.ssPhoto }}</span>
|
|
|
+ <div class="c_t15_msg">
|
|
|
+ <div>{{ lang.ssAnswerCount }} {{ props.showData.workArray.length }}<span
|
|
|
+ v-if="props.showData.unsubmittedStudents.length > 0">/{{ props.showData.workArray.length +
|
|
|
+ props.showData.unsubmittedStudents.length
|
|
|
+ }}</span></div>
|
|
|
+ <span v-if="props.showData.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
+ lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ </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="item.content && item.content.fileList.length > 0 ? lookWork(item.id) : ''">
|
|
|
@@ -326,6 +342,14 @@
|
|
|
<div class="c_t72" v-if="props.showData && props.showData.toolType === 72">
|
|
|
<div class="c_t72_title">{{ lang.ssAiApp }}</div>
|
|
|
<span class="c_t72_type">{{ lang.ssAiApp }}</span>
|
|
|
+ <div class="c_t72_msg">
|
|
|
+ <div>{{ lang.ssAnswerCount }} {{ props.showData.workArray.length }}<span
|
|
|
+ v-if="props.showData.unsubmittedStudents.length > 0">/{{ props.showData.workArray.length +
|
|
|
+ props.showData.unsubmittedStudents.length
|
|
|
+ }}</span></div>
|
|
|
+ <span v-if="props.showData.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
+ lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ </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">
|
|
|
@@ -418,6 +442,14 @@
|
|
|
<div class="c_t73" v-if="props.showData && props.showData.toolType === 73">
|
|
|
<div class="c_t73_title">{{ lang.ssPageImage }}</div>
|
|
|
<span class="c_t73_type">{{ lang.ssHPage }}</span>
|
|
|
+ <div class="c_t73_msg">
|
|
|
+ <div>{{ lang.ssAnswerCount }} {{ props.showData.workArray.length }}<span
|
|
|
+ v-if="props.showData.unsubmittedStudents.length > 0">/{{ props.showData.workArray.length +
|
|
|
+ props.showData.unsubmittedStudents.length
|
|
|
+ }}</span></div>
|
|
|
+ <span v-if="props.showData.unsubmittedStudents.length > 0" @click.stop="viewUnsubmittedStudents()">{{
|
|
|
+ lang.ssViewSubmitStatus2 }}</span>
|
|
|
+ </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">
|
|
|
@@ -746,7 +778,7 @@ const setEchartsArea1 = () => {
|
|
|
fontSize: 17,
|
|
|
lineHeight: 20,
|
|
|
interval: 0,
|
|
|
- formatter: function(value: any, idx: number) {
|
|
|
+ formatter: function (value: any, idx: number) {
|
|
|
// 如果是字符串且格式为JSON(图片),则解析处理
|
|
|
if (typeof value === 'string') {
|
|
|
try {
|
|
|
@@ -1777,7 +1809,7 @@ onUnmounted(() => {
|
|
|
width: 100%;
|
|
|
min-height: 100%;
|
|
|
display: flex;
|
|
|
- align-items: center;
|
|
|
+ // align-items: center;
|
|
|
flex-direction: column;
|
|
|
height: auto;
|
|
|
padding: 40px;
|
|
|
@@ -1789,6 +1821,19 @@ onUnmounted(() => {
|
|
|
line-height: 24px;
|
|
|
}
|
|
|
|
|
|
+ .c_t15_msg {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ font-size: .9rem;
|
|
|
+ font-weight: 400;
|
|
|
+ gap: 1rem;
|
|
|
+
|
|
|
+ &>span {
|
|
|
+ text-decoration: underline;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
.c_t15_type {
|
|
|
font-weight: 400;
|
|
|
font-size: 15px;
|
|
|
@@ -1796,7 +1841,7 @@ onUnmounted(() => {
|
|
|
letter-spacing: 0.5px;
|
|
|
color: rgba(0, 0, 0, 1);
|
|
|
opacity: 0.5;
|
|
|
- margin-top: 20px;
|
|
|
+ margin: 10px 0;
|
|
|
}
|
|
|
|
|
|
.c_t15_content {
|
|
|
@@ -2060,7 +2105,7 @@ onUnmounted(() => {
|
|
|
width: 100%;
|
|
|
min-height: 100%;
|
|
|
display: flex;
|
|
|
- align-items: center;
|
|
|
+ // align-items: center;
|
|
|
flex-direction: column;
|
|
|
height: auto;
|
|
|
padding: 40px;
|
|
|
@@ -2079,7 +2124,20 @@ onUnmounted(() => {
|
|
|
letter-spacing: 0.5px;
|
|
|
color: rgba(0, 0, 0, 1);
|
|
|
opacity: 0.5;
|
|
|
- margin-top: 20px;
|
|
|
+ margin: 10px 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ .c_t72_msg {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ font-size: .9rem;
|
|
|
+ font-weight: 400;
|
|
|
+ gap: 1rem;
|
|
|
+
|
|
|
+ &>span {
|
|
|
+ text-decoration: underline;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
.c_t72_content {
|
|
|
@@ -2267,7 +2325,7 @@ onUnmounted(() => {
|
|
|
width: 100%;
|
|
|
min-height: 100%;
|
|
|
display: flex;
|
|
|
- align-items: center;
|
|
|
+ // align-items: center;
|
|
|
flex-direction: column;
|
|
|
height: auto;
|
|
|
padding: 40px;
|
|
|
@@ -2286,7 +2344,20 @@ onUnmounted(() => {
|
|
|
letter-spacing: 0.5px;
|
|
|
color: rgba(0, 0, 0, 1);
|
|
|
opacity: 0.5;
|
|
|
- margin-top: 20px;
|
|
|
+ margin: 10px 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ .c_t73_msg {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ font-size: .9rem;
|
|
|
+ font-weight: 400;
|
|
|
+ gap: 1rem;
|
|
|
+
|
|
|
+ &>span {
|
|
|
+ text-decoration: underline;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
.c_t73_content {
|