# Conflicts:
#	src/router/index.js
This commit is contained in:
dongruihua
2022-12-29 00:34:59 +08:00
4 changed files with 83 additions and 61 deletions

View File

@@ -36,7 +36,7 @@ import { useStore } from "vuex";
import { onMounted } from "vue"; import { onMounted } from "vue";
import router from "@/router"; import router from "@/router";
console.log("版本2.0.1------------"); console.log("版本2.0.2------------");
const store = useStore(); const store = useStore();
onMounted(() => { onMounted(() => {
getUserInfo(); getUserInfo();

View File

@@ -20,7 +20,7 @@ const routes = [
] ]
const router = createRouter({ const router = createRouter({
history: createWebHistory("/fe-student"), history: createWebHistory(import.meta.env.VITE_BASE),
routes routes
}) })

View File

@@ -15,11 +15,12 @@
<span class="content" style="margin-left: 31px">下一个</span> <span class="content" style="margin-left: 31px">下一个</span>
<button class="btn btn02" style="margin-left: 6px"></button> <button class="btn btn02" style="margin-left: 6px"></button>
</div>--> </div>-->
<div class="return"> <div class="return">
<div style="display: flex" @click="returnclick"> <div style="display: flex" @click="returnclick">
<el-button style="color:#0073FB"> <img class="img2" style="margin-right:11px;cursor: pointer;" src="../../assets/image/return.png" />返回</el-button> <el-button style="color:#0073FB"> <img class="img2" style="margin-right:11px;cursor: pointer;"
src="../../assets/image/return.png" />返回</el-button>
</div> </div>
</div> </div>
</div> </div>
<!-- 面包屑导航 --> <!-- 面包屑导航 -->
<div class="debateTitle" style="color: #fff"> <div class="debateTitle" style="color: #fff">
@@ -47,12 +48,13 @@
</div> </div>
</div> </div>
</div> </div>
<div v-if="dayjs().isBefore(dayjs(data?.submitEndTime)) && dayjs(data?.submitStartTime).isBefore(dayjs())" > <div v-if="dayjs().isBefore(dayjs(data?.submitEndTime)) && dayjs(data?.submitStartTime).isBefore(dayjs())">
<UploadImg v-model:value="fileList" ref="uploadRef"> <UploadImg v-model:value="fileList" ref="uploadRef">
<button class="shangchuan" style="cursor: pointer"> <button class="shangchuan" style="cursor: pointer">
上传 上传
</button> </button>
</UploadImg></div> </UploadImg>
</div>
<div class="uploadDetail" <div class="uploadDetail"
:style="{ display: showFileList && fileList && fileList.length > 0 ? 'block' : 'none' }" :style="{ display: showFileList && fileList && fileList.length > 0 ? 'block' : 'none' }"
@mousemove="showFileList = 1" @mouseout="showFileList = 0" style="padding-top: 60px"> @mousemove="showFileList = 1" @mouseout="showFileList = 0" style="padding-top: 60px">
@@ -66,38 +68,38 @@
</span> </span>
<span class="detail2" style="margin-right: 10px">{{ file.percentage }}%</span> <span class="detail2" style="margin-right: 10px">{{ file.percentage }}%</span>
<span class="detail1">{{ <span class="detail1">{{
{ {
ready: "正在上传", ready: "正在上传",
abort: "暂停", abort: "暂停",
uploading: "正在上传", uploading: "正在上传",
fail: "上传失败", fail: "上传失败",
success: "上传成功", success: "上传成功",
}[file.status] }[file.status]
}}</span> }}</span>
<div class="progress"> <div class="progress">
<div class="progressinner" :style="{ width: `${(291 * file.percentage) / 100}px` }"></div> <div class="progressinner" :style="{ width: `${(291 * file.percentage) / 100}px` }"></div>
</div> </div>
</div> </div>
<button class="btn btndetail" @click="reUpload(i)"> <button class="btn btndetail" @click="reUpload(i)">
{{ {{
{ {
ready: "暂停", ready: "暂停",
uploading: "暂停", uploading: "暂停",
abort: "开始", abort: "开始",
fail: "重传", fail: "重传",
}[file.status] }[file.status]
}} }}
</button> </button>
<button class="btn" @click="remove"> <button class="btn" @click="remove">
{{ {{
{ {
ready: "取消", ready: "取消",
abort: "取消", abort: "取消",
uploading: "取消", uploading: "取消",
fail: "取消", fail: "取消",
success: "删除", success: "删除",
}[file.status] }[file.status]
}} }}
</button> </button>
</div> </div>
</div> </div>
@@ -108,27 +110,28 @@
<div class="text">作业内容</div> <div class="text">作业内容</div>
<div class="box"></div> <div class="box"></div>
</div> </div>
<div v-if="dayjs().isBefore(dayjs(data?.submitEndTime)) && dayjs(data?.submitStartTime).isBefore(dayjs())" > <div v-if="dayjs().isBefore(dayjs(data?.submitEndTime)) && dayjs(data?.submitStartTime).isBefore(dayjs())">
<el-input v-model="sbValue.content" :autosize="{ minRows: 12.5, maxRows: 12.5 }" resize="none" <el-input v-model="sbValue.content" :autosize="{ minRows: 12.5, maxRows: 12.5 }" resize="none"
type="textarea" /> type="textarea" />
</div> </div>
<div v-else class="join"> <div v-else class="join">
<el-input disabled v-model="sbValue.content" :autosize="{ minRows: 12.5, maxRows: 12.5 }" resize="none" <el-input disabled v-model="sbValue.content" :autosize="{ minRows: 12.5, maxRows: 12.5 }" resize="none"
type="textarea" /> type="textarea" />
</div> </div>
<div v-if="dayjs().isBefore(dayjs(data?.submitEndTime)) && dayjs(data?.submitStartTime).isBefore(dayjs())" > <div v-if="dayjs().isBefore(dayjs(data?.submitEndTime)) && dayjs(data?.submitStartTime).isBefore(dayjs())">
<div style="display: flex; justify-content: center"> <div style="display: flex; justify-content: center">
<button class="tijiao" @click="handleClick">{{ submitList && submitList.length > 0 ? "再次" : "" <button class="tijiao" @click="handleClick">{{ submitList && submitList.length > 0 ? "再次" : ""
}}提交</button> }}提交</button>
</div> </div>
</div> </div>
<div v-else > <div v-else>
<div style="display: flex; justify-content: center"> <div style="display: flex; justify-content: center">
<button disabled class="tijiao" style="background:#999;border-radius: 6px;cursor: not-allowed;">未到开始时间</button> <button disabled class="tijiao"
</div> style="background:#999;border-radius: 6px;cursor: not-allowed;">未到开始时间</button>
</div>
</div> </div>
@@ -148,11 +151,11 @@
<div class="content3">附件</div> <div class="content3">附件</div>
</div> </div>
<div v-for="(value, index) in submitList" :key="index" class="historytitle2" :style="{ <div v-for="(value, index) in submitList" :key="index" class="historytitle2" :style="{
'border-bottom': 'border-bottom':
index === submitList.length - 1 index === submitList.length - 1
? '1px solid rgba(215, 229, 253, 0)' ? '1px solid rgba(215, 229, 253, 0)'
: '1px solid rgba(215, 229, 253, 1)', : '1px solid rgba(215, 229, 253, 1)',
}"> }">
<div class="content1">{{ value.createTime }}</div> <div class="content1">{{ value.createTime }}</div>
<div class="content2"> <div class="content2">
<div> <div>
@@ -163,9 +166,9 @@
<div class="content3"> <div class="content3">
<div><span style="margin-left: 10px"> <div><span style="margin-left: 10px">
<el-link target="_blank" type="primary" :href="value.workUploadAddress?.split(',')[0] || ''">{{ <el-link target="_blank" type="primary" :href="value.workUploadAddress?.split(',')[0] || ''">{{
value.workUploadAddress?.split(',')[0].split('/').at(-1) || value.workUploadAddress?.split(',')[0].split('/').at(-1) ||
'' ''
}}</el-link> }}</el-link>
</span> </span>
</div> </div>
</div> </div>
@@ -182,12 +185,16 @@
</div> </div>
<div class="timebox clearfix"> <div class="timebox clearfix">
<div class="innertime"> <div class="innertime">
{{data?.submitStartTime}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{data?.submitEndTime}} {{ data?.submitStartTime }}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{{ data?.submitEndTime }}
</div> </div>
<div class="endtime clearfix"> <div class="endtime clearfix">
<div v-if="dayjs(data?.submitEndTime).isBefore(dayjs())" class="endtimetext">该任务已结束</div> <div v-if="dayjs(data?.submitEndTime).isBefore(dayjs())" class="endtimetext">该任务已结束</div>
<div v-else class="endtimetext">距离结束还有&nbsp;&nbsp;<span class="te">{{parseInt(dayjs(data?.submitEndTime).diff(dayjs(), "minute") / 60)}}</span>&nbsp;&nbsp; 小时&nbsp;&nbsp; <div v-else class="endtimetext">距离结束还有&nbsp;&nbsp;<span class="te">{{
<span class="te">{{dayjs(data?.submitEndTime).diff(dayjs(), "minute") % 60}}</span>&nbsp;&nbsp;分钟</div> parseInt(dayjs(data?.submitEndTime).diff(dayjs(), "minute") / 60)
}}</span>&nbsp;&nbsp;
小时&nbsp;&nbsp;
<span class="te">{{ dayjs(data?.submitEndTime).diff(dayjs(), "minute") % 60 }}</span>&nbsp;&nbsp;分钟
</div>
</div> </div>
</div> </div>
<div class="righttitle"> <div class="righttitle">
@@ -257,7 +264,9 @@ const {
query: { courseId: workId, type, id: taskId, pName, sName }, query: { courseId: workId, type, id: taskId, pName, sName },
} = useRoute(); } = useRoute();
const { data } = useRequest(TASK_WORK_DETAIL, { workId, taskId }); const { data } = taskId && taskId !== 'undefined' ? useRequest(TASK_WORK_DETAIL, { workId, taskId }) : useRequest(TASK_WORK_DETAIL, { workId });
console.log('data==----->', data)
const { data: submitList } = useRequest(TASK_WORK_SUBMIT_LIST, { const { data: submitList } = useRequest(TASK_WORK_SUBMIT_LIST, {
workerId: workId, workerId: workId,

View File

@@ -96,6 +96,15 @@
</div> --> </div> -->
</div> </div>
</div> </div>
<el-dialog title="" top="247px" v-model="dialogVisible" :show-close="false"
style="display:flex;justify-content:center;align-items:center;height: 283px;padding:0;border-radius: 4px;"
width="502px">
<div style="width:288px;color:#333333;font-size: 22px;font-weight: 600;">当前项目未到开始时间</div>
<span slot="footer" style="display:inline-block;margin-top:60px;">
<el-button @click="dialogVisible = false" style="width:140px;height:40px;margin-right: 22px;">取消</el-button>
<el-button type="primary" @click="dialogVisible = false" style="width:140px;height:40px;">确定</el-button>
</span>
</el-dialog>
</template> </template>
<script setup> <script setup>
import { reactive, toRefs, ref, onMounted, computed } from "vue"; import { reactive, toRefs, ref, onMounted, computed } from "vue";
@@ -120,7 +129,7 @@ const projectname = ref(""); //项目名称
const searchTime = ref(""); //选择时间 const searchTime = ref(""); //选择时间
const beginTime = ref(""); //结束时间 const beginTime = ref(""); //结束时间
const endTime = ref(""); //开始时间 const endTime = ref(""); //开始时间
const dialogVisible = ref(false)
const userInfo = computed(() => store.state.userInfo); const userInfo = computed(() => store.state.userInfo);
//获取项目列表--------start------------------------------------ //获取项目列表--------start------------------------------------
@@ -179,6 +188,10 @@ const resetClick = () => {
//搜索--------------end----------------------------------------- //搜索--------------end-----------------------------------------
const router = useRouter(); const router = useRouter();
const goProjectDetails = (value) => { const goProjectDetails = (value) => {
if(value.status===2){
dialogVisible.value=true
return
}
import.meta.env.MODE === "development" import.meta.env.MODE === "development"
? router.push({ ? router.push({
path: "/projectdetails", path: "/projectdetails",