Merge branch 'develop' into 'sit'
Develop See merge request K17_AITS/tra-app!108
This commit is contained in:
+9
-7
@@ -6,7 +6,7 @@ ENV = 'development'
|
||||
# VITE_APP_BASE_API_Url = 'http://25.18.122.78:9786'
|
||||
|
||||
# DEV
|
||||
VITE_APP_BASE_API_Url = 'https://aitstest.jlbank.com.cn:7001'
|
||||
VITE_APP_BASE_API_Url = 'https://aitstest.jlbank.com.cn:7002'
|
||||
|
||||
# app入口
|
||||
#VITE_APP_BASE_API_Url = 'http://25.16.122.65:7001'
|
||||
@@ -16,18 +16,20 @@ VITE_APP_BASE_API_Url = 'https://aitstest.jlbank.com.cn:7001'
|
||||
# h5专用地址
|
||||
|
||||
|
||||
VITE_APP_BASE_H5_API_Url = 'https://aitstest.jlbank.com.cn:7001'
|
||||
#VITE_APP_BASE_H5_API_Url = 'https://aitstest.jlbank.com.cn:7002'
|
||||
# sit
|
||||
#VITE_APP_BASE_H5_API_Url = 'http://25.18.122.91:9786'
|
||||
|
||||
# VITE_APP_BASE_H5_API_Url = 'https://aitstest.jlbank.com.cn:7001'
|
||||
# VITE_APP_BASE_H5_API_Url = 'https://aitstest.jlbank.com.cn:7002'
|
||||
|
||||
# dev
|
||||
VITE_APP_BASE_H5_API_Url = 'http://25.18.122.65:7001'
|
||||
# sit
|
||||
# VITE_APP_BASE_H5_API_Url = 'http://25.18.122.91:9786'
|
||||
|
||||
# UAT
|
||||
# VITE_APP_BASE_H5_API_Url = 'http://25.18.122.78:9786'
|
||||
|
||||
# 任东
|
||||
# VITE_APP_BASE_H5_API_Url_TRAAPP = 'http://25.64.16.130:9601'
|
||||
# VITE_APP_BASE_H5_API_Url_TRASTUDY = 'http://25.64.16.130:9602'
|
||||
VITE_APP_BASE_H5_API_Url_TRASTUDY = 'http://25.64.16.130:9602'
|
||||
|
||||
# VITE_APP_BASE_H5_API_Url_TRAEXAM = 'http://25.64.16.130:9604'
|
||||
# 张建成
|
||||
|
||||
@@ -20,3 +20,12 @@ export const queryAllTraTaskCrsInfo = (data) => {
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
// 根据任务id查询这一条
|
||||
export const queryAllTraTaskIUserId = (data) => {
|
||||
return request({
|
||||
url: base_url + '/traTaskInfo/queryAllTraTaskIUserId',
|
||||
method: 'post',
|
||||
data
|
||||
});
|
||||
};
|
||||
@@ -349,7 +349,7 @@ const showOrder = ref(0)
|
||||
const isLastPgrph = ref(false)
|
||||
const backRouter = () => {
|
||||
// common.redirectTo(`/pages/courseDetail/index?crsId=${crsId.value}&crsNum=${crsNum.value}&from=study`)
|
||||
uni.$emit('refresh_course_list')
|
||||
// uni.$emit('refresh_course_list') // yh0903让去除
|
||||
common.navigateBack()
|
||||
}
|
||||
|
||||
@@ -377,11 +377,13 @@ const getGraphInfoUnStudy = (flag = 0) => {
|
||||
return
|
||||
}
|
||||
if (Number(_body.bodyTyp) === 7) {
|
||||
uni.$emit('refresh_course_list', crsId.value)
|
||||
if (isPreview.value) {
|
||||
common
|
||||
.show('提示', '您已学完全部知识点', false, '取消', '确定')
|
||||
.show('提示', '您已学完全部知识点', false)
|
||||
.then(res => {
|
||||
common.redirectTo(`/pages/courseDetail/index?crsId=${crsId.value}&crsNum=${crsNum.value}&from=study&isPreview=true`)
|
||||
common.navigateBack()
|
||||
// common.redirectTo(`/pages/courseDetail/index?crsId=${crsId.value}&crsNum=${crsNum.value}&from=study&isPreview=true`)
|
||||
})
|
||||
.finally(() => {})
|
||||
} else {
|
||||
@@ -393,12 +395,13 @@ const getGraphInfoUnStudy = (flag = 0) => {
|
||||
common.redirectTo(`/pages/courseDetail/submit?crsId=${crsId.value}&crsNum=${crsNum.value}&from=study&imgId=${imageId.value}`)
|
||||
} else {
|
||||
// 取消
|
||||
common.redirectTo(`/pages/courseDetail/index?crsId=${crsId.value}&crsNum=${crsNum.value}&from=study`)
|
||||
common.navigateBack()
|
||||
// common.redirectTo(`/pages/courseDetail/index?crsId=${crsId.value}&crsNum=${crsNum.value}&from=study`)
|
||||
}
|
||||
})
|
||||
.finally(() => {})
|
||||
}
|
||||
uni.$emit('refresh_course_list')
|
||||
|
||||
return
|
||||
}
|
||||
lastTalkingInfo.value = {
|
||||
|
||||
@@ -268,7 +268,7 @@
|
||||
|
||||
// 录音按钮提交
|
||||
const touchBtnSubmit = (type, submitObj) => {
|
||||
// const old_text = touchBtnRef.value?.clearinputText(); // 清除发送框数据
|
||||
touchBtnRef.value?.clearinputText(); // 清除发送框数据
|
||||
if (type === 'voice') {
|
||||
topic.value.es_status = '00'; // 00转圈
|
||||
const voicePath = submitObj;
|
||||
@@ -277,7 +277,6 @@
|
||||
let _res = JSON.parse(res.data);
|
||||
if (_res.rtnCode === '0000') {
|
||||
const _content = _res.body.transContent.trim();
|
||||
console.log('_content', _content);
|
||||
if (_content === '') {
|
||||
topic.value.es_status = ''; // 取消转圈
|
||||
return common.msg('未识别到文字');
|
||||
@@ -294,8 +293,6 @@
|
||||
})
|
||||
.catch((err) => {
|
||||
topic.value.es_status = ''; // 取消转圈
|
||||
// 失败了再把发送框数据还原回去
|
||||
// touchBtnRef.value?.clearinputText(old_text); // 清除发送框数据
|
||||
common.msg('系统异常,请联系管理员');
|
||||
});
|
||||
} else if (type === 'text') {
|
||||
|
||||
@@ -11,11 +11,11 @@
|
||||
v-for="(item, index) in data_list"
|
||||
@click="swipeActionClick"
|
||||
>
|
||||
<view class="item" :class="getStatusClass(index)" @touchmove.stop @click="click_item(item)">
|
||||
<view class="item" :class="getStatusClass(item.isFinish)" @touchmove.stop @click="click_item(item)">
|
||||
<view class="img_div">
|
||||
<image-preview class="img" :src="item?.ossAddr" mode="scaleToFill"></image-preview>
|
||||
<view class="subscript" v-if="item.isFinish === '00'">未完成</view>
|
||||
<view class="subscript" v-if="item.isFinish === '01'">已完成</view>
|
||||
<view class="subscript" v-if="item.isFinish === '02'">已完成</view>
|
||||
<view class="subscript" v-else>未完成</view>
|
||||
</view>
|
||||
<view class="right_div">
|
||||
<view class="title ellipsis-text">
|
||||
@@ -124,11 +124,9 @@
|
||||
setPageCache('learning_tasks_details', item);
|
||||
common.navigateTo(`/pages/learningTasks/details?collectId=${item.collectionId}`);
|
||||
};
|
||||
const getStatusClass = (index) => {
|
||||
const remainder = index % 3;
|
||||
if (remainder === 0) return 'in_progress';
|
||||
if (remainder === 1) return 'completed';
|
||||
return 'expired';
|
||||
const getStatusClass = (isFinish) => {
|
||||
if (isFinish === '02') return 'completed';
|
||||
return 'in_progress';
|
||||
};
|
||||
const scrolltolower = (item) => {
|
||||
getData();
|
||||
|
||||
@@ -72,13 +72,13 @@
|
||||
})
|
||||
const feedback_item_click = (value) => {
|
||||
// 单选
|
||||
feedbackInfo.value.type = [value]
|
||||
// feedbackInfo.value.type = [value]
|
||||
// 多选
|
||||
// if (feedbackInfo.value.type.includes(value)) {
|
||||
// feedbackInfo.value.type = feedbackInfo.value.type.filter(item => item !== value); // 如果已存在,则从数组中移除
|
||||
// } else {
|
||||
// feedbackInfo.value.type.push(value); // 如果不存在,则添加到数组中
|
||||
// }
|
||||
if (feedbackInfo.value.type.includes(value)) {
|
||||
feedbackInfo.value.type = feedbackInfo.value.type.filter(item => item !== value); // 如果已存在,则从数组中移除
|
||||
} else {
|
||||
feedbackInfo.value.type.push(value); // 如果不存在,则添加到数组中
|
||||
}
|
||||
}
|
||||
const answerData = ref({})
|
||||
// 反馈提交
|
||||
@@ -90,7 +90,7 @@
|
||||
// todo 待接口
|
||||
const params = JSON.parse(JSON.stringify({
|
||||
askId: answerData.value.seqNo,
|
||||
fbkTyp: feedbackInfo.value.type[0],
|
||||
fbkTyp: feedbackInfo.value.type.join(','),
|
||||
reqBatch: answerData.value.reqBatch,
|
||||
fbkContent: feedbackInfo.value.text
|
||||
}))
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
<view class="item" :class="getStatusClass(item.isFinish)" @click="click_item(item)">
|
||||
<view class="img_div">
|
||||
<image-preview class="img" :src="item.ossAddr" mode="scaleToFill"></image-preview>
|
||||
<view class="subscript" v-if="item.isFinish === '00'">未完成</view>
|
||||
<view class="subscript" v-if="item.isFinish === '01'">已完成</view>
|
||||
<view class="subscript" v-if="item.isFinish === '02'">已完成</view>
|
||||
<view class="subscript" v-else>未完成</view>
|
||||
</view>
|
||||
<view class="right_div">
|
||||
<view class="title ellipsis-text">
|
||||
@@ -39,9 +39,11 @@
|
||||
const item = computed(() => props.item);
|
||||
const getStatusClass = (isFinish) => {
|
||||
// 00进行中、01已完成、02已超时
|
||||
if (isFinish === '00') return 'in_progress';
|
||||
if (isFinish === '01') return 'completed';
|
||||
return 'expired';
|
||||
// if (isFinish === '00') return 'in_progress';
|
||||
// if (isFinish === '01') return 'completed';
|
||||
// return 'expired';
|
||||
if (isFinish === '02') return 'completed';
|
||||
return 'in_progress';
|
||||
};
|
||||
// 跳转到详情
|
||||
const click_item = (item) => {
|
||||
|
||||
@@ -209,8 +209,15 @@
|
||||
...learning_tasks_details
|
||||
});
|
||||
getData();
|
||||
// 监听里面学习完成后更新任务历程
|
||||
uni.$on('refresh_course_list', () => {
|
||||
console.log('详情监听里面学习完成后更新任务历程');
|
||||
getData();
|
||||
});
|
||||
|
||||
});
|
||||
onUnload(() => {
|
||||
uni.$off('refresh_course_list');
|
||||
if (detailData.collectionId !== collectId.value) {
|
||||
const pages = getCurrentPages();
|
||||
if (pages.length >= 2) {
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
<script setup>
|
||||
import { LineBg } from '@/enum.js';
|
||||
import content from './components/content.vue';
|
||||
import { onLoad, onUnload } from '@dcloudio/uni-app';
|
||||
import { ref, onMounted, watch } from 'vue';
|
||||
import common from '@/common/common.js';
|
||||
const listItemRefs = ref([]);
|
||||
@@ -69,7 +70,7 @@
|
||||
const search = (value) => {
|
||||
listItemRefs.value[tabAct.value]?.search(value);
|
||||
};
|
||||
|
||||
|
||||
onMounted(() => {
|
||||
watch(
|
||||
tabAct,
|
||||
@@ -82,6 +83,21 @@
|
||||
}
|
||||
); // 这里的immediate会在onMounted之后执行
|
||||
});
|
||||
|
||||
onLoad(() => {
|
||||
uni.$on('refresh_course_list', (crsId) => {
|
||||
console.log('列表监听里面学习完成后更新任务历程', crsId);
|
||||
queryAllTraTaskIUserId({crsId}).then(res => {
|
||||
const index = listItemRefs
|
||||
typeof listItemRefs.value[newValue]?.getData === 'function' &&
|
||||
listItemRefs.value[newValue]?.getData('first');
|
||||
})
|
||||
|
||||
});
|
||||
});
|
||||
onUnload(() => {
|
||||
uni.$off('refresh_course_list');
|
||||
});
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
<view class="nav-div">
|
||||
<view class="title ellipsis-text">
|
||||
{{ paperData.name }}
|
||||
|
||||
</view>
|
||||
<view class="back_div" @click="exit_practice">
|
||||
<image :src="practiceExitIcon()" class="img"></image>
|
||||
@@ -24,7 +23,7 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<view class="progress">
|
||||
<uv-line-progress
|
||||
:percentage="progress"
|
||||
@@ -298,9 +297,8 @@
|
||||
};
|
||||
|
||||
// 录音组件提交
|
||||
const touchBtnSubmit = (type, submitObj) => {
|
||||
const old_text = touchBtnRef.value?.clearinputText(); // 清除发送框数据
|
||||
|
||||
const touchBtnSubmit = (type, submitObj) => {1
|
||||
touchBtnRef.value?.clearinputText(); // 清除发送框数据
|
||||
if (type === 'voice') {
|
||||
topic.value.es_status = '00'; // 00转圈
|
||||
const voicePath = submitObj;
|
||||
@@ -308,19 +306,23 @@
|
||||
.then((res) => {
|
||||
let _res = JSON.parse(res.data);
|
||||
if (_res.rtnCode === '0000') {
|
||||
topic.value.es_status = '02';
|
||||
topic.value.my_answer = {
|
||||
anserResult: _res.body.transContent,
|
||||
ossKey: _res.body.fileId,
|
||||
ossAddr: _res.body.ossFileAddr,
|
||||
voicePath: voicePath
|
||||
};
|
||||
const _content = _res.body.transContent.trim();
|
||||
if (_content === '') {
|
||||
topic.value.es_status = ''; // 取消转圈
|
||||
return common.msg('未识别到文字');
|
||||
} else {
|
||||
topic.value.es_status = '02';
|
||||
topic.value.my_answer = {
|
||||
anserResult: _res.body.transContent,
|
||||
ossKey: _res.body.fileId,
|
||||
ossAddr: _res.body.ossFileAddr,
|
||||
voicePath: voicePath
|
||||
};
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
topic.value.es_status = ''; // 取消转圈
|
||||
// 失败了再把发送框数据还原回去
|
||||
touchBtnRef.value?.clearinputText(old_text); // 清除发送框数据
|
||||
common.msg('系统异常,请联系管理员');
|
||||
});
|
||||
} else if (type === 'text') {
|
||||
@@ -370,11 +372,10 @@
|
||||
// 中途退出
|
||||
dialogRef.value.close();
|
||||
common.loading();
|
||||
try{
|
||||
try {
|
||||
await practiceCommit({ exrId: paperData.exrId, examLenTm: practiceTime.value, stat: 'U' });
|
||||
common.navigateBack();
|
||||
}catch(e){
|
||||
}
|
||||
} catch (e) {}
|
||||
common.hideLoading();
|
||||
} else if (key === 'revert') {
|
||||
// 返回
|
||||
@@ -710,7 +711,7 @@
|
||||
.grey {
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
.countdown_time{
|
||||
.countdown_time {
|
||||
white-space: nowrap;
|
||||
}
|
||||
color: #ffffff;
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
<scroll-view class="lists-view lists-view-course" :scroll-y="true" @scrolltolower="scrolltolower">
|
||||
<view class="view-list course-list">
|
||||
<course-item class="course-item" v-for="itemC in courseList" :key="itemC.crsNum" :itemInfo="itemC" @clickItem="toCourseDetail(itemC)" />
|
||||
<view class="view-tips">
|
||||
{{ hasMore ? '滚动加载更多' : '加载完成' }}
|
||||
<view class="view-tips" v-show="courseList.length > 0">
|
||||
{{ hasMore ? '滚动加载更多' : '全部加载完成' }}
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="view-result" v-show="courseList.length === 0">暂无数据</view> -->
|
||||
@@ -59,8 +59,8 @@
|
||||
<view class="view-list course-list">
|
||||
<course-item class="course-item" v-for="itemC in courseList" :key="itemC.crsNum" :itemInfo="itemC" @clickItem="toCourseDetail(itemC)" />
|
||||
</view>
|
||||
<view class="view-tips" v-if="activeTab === 'course'">
|
||||
{{ hasMore ? '滚动加载更多' : '加载完成' }}
|
||||
<view class="view-tips" v-if="activeTab === 'course' && courseList.length > 0">
|
||||
{{ hasMore ? '滚动加载更多' : '全部加载完成' }}
|
||||
</view>
|
||||
<view class="view-result" v-show="courseList.length === 0">暂无数据</view>
|
||||
</view>
|
||||
@@ -72,8 +72,8 @@
|
||||
<view class="view-list">
|
||||
<TaskItem :item="item" v-for="(item, index) in taskList"></TaskItem>
|
||||
</view>
|
||||
<view class="view-tips" v-if="activeTab === 'task'">
|
||||
{{ hasMore ? '滚动加载更多' : '加载完成' }}
|
||||
<view class="view-tips" v-if="activeTab === 'task' && taskList.length > 0">
|
||||
{{ hasMore ? '滚动加载更多' : '全部加载完成' }}
|
||||
</view>
|
||||
<view class="view-result" v-show="taskList.length === 0">暂无数据</view>
|
||||
</view>
|
||||
@@ -93,8 +93,8 @@
|
||||
<view class="view-list">
|
||||
<ExamItem class="exam-list" :item="item" v-for="item in examList"></ExamItem>
|
||||
</view>
|
||||
<view class="view-tips" v-if="activeTab === 'exam'">
|
||||
{{ hasMore ? '滚动加载更多' : '加载完成' }}
|
||||
<view class="view-tips" v-if="activeTab === 'exam' && examList.length > 0">
|
||||
{{ hasMore ? '滚动加载更多' : '全部加载完成' }}
|
||||
</view>
|
||||
<view class="view-result" v-show="examList.length === 0">暂无数据</view>
|
||||
</view>
|
||||
@@ -371,6 +371,7 @@ const toCourseDetail = item => {
|
||||
font-size: 26rpx;
|
||||
}
|
||||
.view-tips {
|
||||
padding-top: 20rpx;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
color: #999;
|
||||
|
||||
@@ -79,17 +79,17 @@
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, computed, nextTick} from 'vue';
|
||||
import { ref, reactive, computed, nextTick } from 'vue';
|
||||
import { onLoad, onHide, onShow, onUnload } from '@dcloudio/uni-app';
|
||||
import Feedback from '@/pages/examination/components/feedback.vue';
|
||||
import Dialog from '@/pages/examination/components/dialog.vue';
|
||||
import Subject from '@/components/examination/subject.vue';
|
||||
import TouchBtn from '@/components/examination/touchBtn.vue';
|
||||
import common from '@/common/common';
|
||||
import {getPageCache, setupKeyboardHeightListener } from '@/common/common';
|
||||
import { getPageCache, setupKeyboardHeightListener } from '@/common/common';
|
||||
import { commonUploadVoiceFile } from '@/api/common.js';
|
||||
import {practiceExitIcon } from '@/common/imgSvg';
|
||||
import {practiceCommit, queryCrsPracticeAnswerResult } from '@/api/practice.js';
|
||||
import { practiceExitIcon } from '@/common/imgSvg';
|
||||
import { practiceCommit, queryCrsPracticeAnswerResult } from '@/api/practice.js';
|
||||
|
||||
import { queryMistakesAnswerByMisId, mistakesCorrect } from '@/api/wrongQuestionRecord.js';
|
||||
const feedbackRef = ref(null);
|
||||
@@ -287,8 +287,7 @@
|
||||
|
||||
// 录音组件提交
|
||||
const touchBtnSubmit = (type, submitObj) => {
|
||||
const old_text = touchBtnRef.value?.clearinputText(); // 清除发送框数据
|
||||
|
||||
touchBtnRef.value?.clearinputText(); // 清除发送框数据
|
||||
if (type === 'voice') {
|
||||
topic.value.es_status = '00'; // 00转圈
|
||||
const voicePath = submitObj;
|
||||
@@ -296,19 +295,23 @@
|
||||
.then((res) => {
|
||||
let _res = JSON.parse(res.data);
|
||||
if (_res.rtnCode === '0000') {
|
||||
topic.value.es_status = '02';
|
||||
topic.value.my_answer = {
|
||||
anserResult: _res.body.transContent,
|
||||
ossKey: _res.body.fileId,
|
||||
ossAddr: _res.body.ossFileAddr,
|
||||
voicePath: voicePath
|
||||
};
|
||||
const _content = _res.body.transContent.trim();
|
||||
if (_content === '') {
|
||||
topic.value.es_status = ''; // 取消转圈
|
||||
return common.msg('未识别到文字');
|
||||
} else {
|
||||
topic.value.es_status = '02';
|
||||
topic.value.my_answer = {
|
||||
anserResult: _res.body.transContent,
|
||||
ossKey: _res.body.fileId,
|
||||
ossAddr: _res.body.ossFileAddr,
|
||||
voicePath: voicePath
|
||||
};
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
topic.value.es_status = ''; // 取消转圈
|
||||
// 失败了再把发送框数据还原回去
|
||||
touchBtnRef.value?.clearinputText(old_text); // 清除发送框数据
|
||||
common.msg('系统异常,请联系管理员');
|
||||
});
|
||||
} else if (type === 'text') {
|
||||
@@ -356,7 +359,7 @@
|
||||
// 判断是否加载
|
||||
if (last_id in storageIdDict.value) {
|
||||
return;
|
||||
}else {
|
||||
} else {
|
||||
addRequestProblem(index + 1, success);
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user