mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-16 14:26:45 +08:00
Merge branch 'develop' of http://gitlab.dongwu-inc.com:10080/BOE/fe-manage into develop
This commit is contained in:
@@ -11,14 +11,14 @@
|
||||
<div class="titl">
|
||||
<div class="endtime">
|
||||
起止时间:{{
|
||||
datasource.info && datasource.info.liveStartTime ? datasource.info.liveStartTime : "-"
|
||||
datasource.startTime ? datasource.startTime : "-"
|
||||
}}
|
||||
~
|
||||
{{ datasource.info && datasource.info.liveEndTime ? datasource.info.liveEndTime : "-" }}
|
||||
{{ datasource.endTime ? datasource.endTime : "-" }}
|
||||
</div>
|
||||
|
||||
<div class="endtime" style="margin-left: 64px">签到时间:{{ beginTime }}</div>
|
||||
<div class="endtime" style="margin-left: 40px">签退时间:{{ endTime }}</div>
|
||||
<div class="endtime" style="margin-left: 64px">签到时间:{{ beginTime }} ~ {{ endTime }}</div>
|
||||
<!--<div class="endtime" style="margin-left: 40px">签退时间:{{ endTime }}</div>-->
|
||||
</div>
|
||||
|
||||
<div class="search">
|
||||
@@ -354,25 +354,24 @@ export default {
|
||||
|
||||
// 计算签到时间
|
||||
const isSignClick = () => {
|
||||
// debugger
|
||||
console.log("计算签到时间", props.datasource.info);
|
||||
let beginTime = new Date(props.datasource.info.liveStartTime).getTime();
|
||||
let endTime = !props.datasource.info.afterSignIn
|
||||
? new Date(props.datasource.info.liveEndTime).getTime()
|
||||
: new Date(props.datasource.info.liveStartTime).getTime();
|
||||
console.log("计算签到时间", props.datasource);
|
||||
let beginTime = new Date(props.datasource.startTime).getTime();
|
||||
let endTime = !props.datasource.afterStart
|
||||
? new Date(props.datasource.endTime).getTime()
|
||||
: new Date(props.datasource.startTime).getTime();
|
||||
|
||||
if (props.datasource.info.beforeSignIn && props.datasource.info.afterSignIn) {
|
||||
if (props.datasource.beforeStart && props.datasource.afterStart) {
|
||||
//有开始前有开始后
|
||||
beginTime = beginTime - props.datasource.info.beforeSignIn * 60 * 1000;
|
||||
endTime = endTime + props.datasource.info.afterSignIn * 60 * 1000;
|
||||
beginTime = beginTime - props.datasource.beforeStart * 60 * 1000;
|
||||
endTime = endTime + props.datasource.afterStart * 60 * 1000;
|
||||
console.log("1111", beginTime, endTime);
|
||||
} else if (props.datasource.info.beforeSignIn && !props.datasource.info.afterSignIn) {
|
||||
} else if (props.datasource.beforeStart && !props.datasource.afterStart) {
|
||||
//只有开始前无开始后
|
||||
beginTime = beginTime - props.datasource.info.beforeSignIn * 60 * 1000;
|
||||
beginTime = beginTime - props.datasource.beforeStart * 60 * 1000;
|
||||
console.log("11112222", beginTime);
|
||||
} else if (!props.datasource.info.beforeSignIn && props.datasource.info.afterSignIn) {
|
||||
} else if (!props.datasource.beforeStart && props.datasource.afterStart) {
|
||||
//无开始前有开始后
|
||||
endTime = endTime + props.datasource.info.afterSignIn * 60 * 1000;
|
||||
endTime = endTime + props.datasource.afterStart * 60 * 1000;
|
||||
console.log("1111333", endTime);
|
||||
}
|
||||
|
||||
@@ -393,7 +392,6 @@ export default {
|
||||
};
|
||||
|
||||
const getTableData = () => {
|
||||
debugger
|
||||
// debugger
|
||||
console.log('当前是项目还是路径图 1 项目 2 路径图', props)
|
||||
console.log('当前是项目还是路径图 1 项目 2 路径图', props.types)
|
||||
@@ -690,7 +688,6 @@ export default {
|
||||
<div class="opa" style='display:flex;justify-content:center;align-items:center;'>
|
||||
<div
|
||||
onClick={() => {
|
||||
debugger
|
||||
{/* debugger */ }
|
||||
console.log("点击签到", value);
|
||||
// 获取当前时间
|
||||
@@ -866,13 +863,13 @@ export default {
|
||||
window.open(
|
||||
`${process.env.VUE_APP_BASE_API
|
||||
}/admin/student/exportTaskStudent?currentStageId=${props.datasource.chapterId
|
||||
}&type=2&pid=${props.datasource.courseId}&thirdType=1&taskId=${props.datasource.id}&taskType=${props.datasource.type}`
|
||||
}&type=2&pid=${props.datasource.routerId}&thirdType=1&taskId=${props.datasource.id}&taskType=${props.datasource.type}`
|
||||
);
|
||||
} else {
|
||||
window.open(
|
||||
`${process.env.VUE_APP_BASE_API
|
||||
}/admin/student/exportTaskStudent?currentStageId=${props.datasource.stageId
|
||||
}&type=1&pid=${props.datasource.courseId}&thirdType=1&taskId=${props.datasource.id}&taskType=${props.datasource.type}`
|
||||
}&type=1&pid=${props.datasource.projectId}&thirdType=1&taskId=${props.datasource.id}&taskType=${props.datasource.type}`
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -41,6 +41,12 @@
|
||||
</div>
|
||||
<div class="main_item2">
|
||||
<div class="signbox">
|
||||
<div class="sign">
|
||||
<img
|
||||
src="@/assets/images/coursewareManage/asterisk.png"
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
<span style="margin-right: 3px">讨论说明:</span>
|
||||
</div>
|
||||
<div class="textarea">
|
||||
@@ -91,6 +97,12 @@ const rulesRef = ref({
|
||||
message: '请输入讨论名称',
|
||||
},
|
||||
],
|
||||
discussExplain: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入讨论说明',
|
||||
},
|
||||
],
|
||||
});
|
||||
|
||||
const {resetFields, validate} = Form.useForm(formData, rulesRef);
|
||||
|
||||
@@ -236,7 +236,6 @@
|
||||
<script setup>
|
||||
import { defineEmits, defineProps, ref, watch } from "vue";
|
||||
import STest from "./SelectTest.vue";
|
||||
import { createExamination } from "@/api/index1";
|
||||
import dayjs from "dayjs";
|
||||
import { Form, message } from "ant-design-vue";
|
||||
|
||||
@@ -358,14 +357,6 @@ async function confirm() {
|
||||
data.name = formData.value.examinationName
|
||||
data.info = { ...formData.value }
|
||||
}
|
||||
let obj = formData.value;
|
||||
createExamination(obj).then(res => {
|
||||
console.log(res)
|
||||
message.success("成功");
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
})
|
||||
|
||||
emit('update:taskList', [...props.taskList])
|
||||
closeDrawer()
|
||||
}
|
||||
|
||||
@@ -183,6 +183,7 @@ export default {
|
||||
};
|
||||
//获取作业详情
|
||||
const getWorkDetail = () => {
|
||||
debugger
|
||||
console.log("props.workId, props.stuId", props.workId, props.stuId);
|
||||
getWorkSubmitInfo(props.workId, props.stuId)
|
||||
.then((res) => {
|
||||
|
||||
@@ -428,8 +428,8 @@
|
||||
// 导出数据
|
||||
function exportTaskStu() {
|
||||
console.log("导出数据")
|
||||
console.log(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${2}&voteId=${props.datasource.courseId}`)
|
||||
window.open(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${2}&voteId=${props.datasource.courseId}`)
|
||||
console.log(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${1}&voteId=${props.datasource.courseId}`)
|
||||
window.open(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${1}&voteId=${props.datasource.courseId}`)
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
@@ -465,6 +465,9 @@ export default {
|
||||
if(props.datasource.type==1){
|
||||
{/* 在线课导出 */}
|
||||
window.open(`${process.env.VUE_APP_BASE_API}/admin/online/manage/exportOnline?chapterId=${props.datasource.chapterId}&type=${2}&targetId=${props.datasource.routerId}&taskId=${props.datasource.courseId}`)
|
||||
}else if(props.datasource.type==11){
|
||||
{/* 评估导出 */}
|
||||
window.open(`${process.env.VUE_APP_BASE_API}admin/assessment/manage/exportAssessmentMessage?chapterId=${props.datasource.chapterId}&type=${2}&pid=${props.datasource.routerId}&courseId=${props.datasource.courseId}&taskId=${props.datasource.id}&taskType=${props.datasource.type}`)
|
||||
}else{
|
||||
window.open(`${process.env.VUE_APP_BASE_API}/admin/student/exportTaskStudent?currentStageId=${props.datasource.chapterId}&type=${2}&pid=${props.datasource.routerId}&taskId=${props.datasource.id}&taskType=${props.datasource.type}`)
|
||||
}
|
||||
|
||||
@@ -381,7 +381,7 @@
|
||||
"studentName": state.name,
|
||||
"targetId":props.datasource.projectId,
|
||||
"taskId": props.datasource.courseId,
|
||||
"type": 1
|
||||
"type": 2
|
||||
});
|
||||
api.QueryVoteManagementDetail({
|
||||
"pageNo": state.currentPage,
|
||||
@@ -391,7 +391,7 @@
|
||||
"studentName": state.name,
|
||||
"targetId":props.datasource.routerId,
|
||||
"taskId": props.datasource.courseId,
|
||||
"type": 1
|
||||
"type": 2
|
||||
}).then(res=>{
|
||||
console.log('投票数据获取', res)
|
||||
if(res.data.code==200){
|
||||
@@ -448,8 +448,8 @@
|
||||
|
||||
// 导出数据
|
||||
function exportTaskStu() {
|
||||
console.log(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${1}&voteId=${props.datasource.courseId}`)
|
||||
window.open(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${1}&voteId=${props.datasource.courseId}`)
|
||||
console.log(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${2}&voteId=${props.datasource.courseId}`)
|
||||
window.open(`${process.env.VUE_APP_BASE_API}/admin/vote/manage/export/vote?type=${2}&voteId=${props.datasource.courseId}`)
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
@@ -85,7 +85,6 @@ const selectGroup = (e, v) => {
|
||||
};
|
||||
//确认换组
|
||||
const changeGroup = (item) => {
|
||||
debugger
|
||||
console.log("换组", selectGroupId.value, item);
|
||||
props.checkgroupStuId.forEach(stu => {
|
||||
let obj = {
|
||||
|
||||
@@ -427,7 +427,6 @@ const stuRowSelection = computed(() => ({
|
||||
|
||||
//显示学员换组弹窗
|
||||
function showChangeGroupModal() {
|
||||
debugger
|
||||
console.log("批量")
|
||||
const d = props.groupList
|
||||
console.log("d" + d)
|
||||
|
||||
@@ -211,6 +211,8 @@ export default {
|
||||
// 搜索
|
||||
function searchDownloadList() {
|
||||
getData()
|
||||
// 获取当前用户容量
|
||||
getDownLoadTotalSize()
|
||||
}
|
||||
|
||||
// 重置
|
||||
@@ -218,6 +220,8 @@ export default {
|
||||
state.name = "";
|
||||
state.currentPage = 1;
|
||||
getData()
|
||||
// 获取当前用户容量
|
||||
getDownLoadTotalSize()
|
||||
}
|
||||
|
||||
// 分页
|
||||
|
||||
@@ -70,12 +70,12 @@
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; margin-bottom: 20px">
|
||||
<div style="display: flex; margin-bottom: 20px" class="courseBtn">
|
||||
<div class="btn btn1" @click="handleSearch1">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">搜索</div>
|
||||
</div>
|
||||
<div class="btnn btn2" @click="handleRest1">
|
||||
<div class="btnn btn2" @click="handleRest1" style="width: 103px">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">重置</div>
|
||||
</div>
|
||||
@@ -749,7 +749,11 @@
|
||||
<div class="search"></div>
|
||||
<div class="btnText">搜索</div>
|
||||
</div>
|
||||
<div class="btnn btn2" @click="handleRestTable">
|
||||
<div
|
||||
class="btnn btn2"
|
||||
@click="handleRestTable"
|
||||
style="width: 103px"
|
||||
>
|
||||
<div class="search"></div>
|
||||
<div class="btnText">重置</div>
|
||||
</div>
|
||||
@@ -4620,16 +4624,19 @@ export default defineComponent({
|
||||
|
||||
// 管理开课
|
||||
const handleGuan22 = (item) => {
|
||||
if (String(item.courseform) === "1") {
|
||||
return;
|
||||
}
|
||||
if (String(item.courseform) === ("1" || "线上")) {
|
||||
state.om_1 = true;
|
||||
state.ft_1 = false;
|
||||
} else if (String(item.courseform) === ("2" || "面授")) {
|
||||
// console.log('点击面授课管理',item)
|
||||
// if (String(item.courseform) === "1") {
|
||||
// return;
|
||||
// }
|
||||
// if (String(item.courseform) === ("1" || "线上")) {
|
||||
// state.om_1 = true;
|
||||
// state.ft_1 = false;
|
||||
// } else if (String(item.courseform) === ("2" || "面授")) {
|
||||
// state.om_1 = true;
|
||||
// state.ft_1 = true;
|
||||
// }
|
||||
state.om_1 = true;
|
||||
state.ft_1 = true;
|
||||
}
|
||||
state.manageStuLoading = true;
|
||||
console.log(787666, item);
|
||||
state.faceClassification = item.contentTxt;
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
<div class="fort">创建时间:{{ cretime }}</div>
|
||||
</div>
|
||||
<div class="right">
|
||||
<!--
|
||||
|
||||
<img
|
||||
class="img1"
|
||||
src="../../assets/images/leveladd/ma.png"
|
||||
@click="showCodeModel2()"
|
||||
/>
|
||||
<div v-if="action == 1 || action == 0" class="line"></div>-->
|
||||
<div v-if="action == 1 || action == 0" class="line"></div>
|
||||
<div
|
||||
class="pubIcon"
|
||||
v-if="(action == 1 || action == 0) && checkPer(permissions)"
|
||||
@@ -325,9 +325,9 @@
|
||||
<div style="flex: 1">
|
||||
<div class="onerow">
|
||||
<div class="taskmain">任务大纲</div>
|
||||
<ImpoterGroupLeader title="批量面授报名" :data="{targetId:routerId,type:2}" :url="`/admin/offcourse/importCourse`" :template-url="`/admin/router/exportTaskCoursePlan/${routerId}?type=1&taskType=2&thirdType=3`">
|
||||
<!-- <ImpoterGroupLeader title="批量面授报名" :data="{targetId:routerId,type:2}" :url="`/admin/offcourse/importCourse`" :template-url="`/admin/router/exportTaskCoursePlan/${routerId}?type=1&taskType=2&thirdType=3`">
|
||||
<button class="btn">批量面授报名</button>
|
||||
</ImpoterGroupLeader>
|
||||
</ImpoterGroupLeader> -->
|
||||
<router-link
|
||||
:to="{ path: '/leveladddetail', query: { routerId: routerId } }"
|
||||
class="editright"
|
||||
@@ -1387,7 +1387,7 @@ import RouterHomeworkManage from "../../components/drawers/router/RouterHomework
|
||||
import RouterCommonManage from "../../components/drawers/router/RouterCommonManage";
|
||||
import RouterVoteManage from "../../components/drawers/router/RouterVoteManage";
|
||||
import RouterProjectManage from "../../components/drawers/router/RouterProjectManage";
|
||||
import ImpoterGroupLeader from "@/components/drawers/project/ImpoterGroupLeader.vue";
|
||||
// import ImpoterGroupLeader from "@/components/drawers/project/ImpoterGroupLeader.vue";
|
||||
import TaskImpStu from "../../components/drawers/TaskFaceIn";
|
||||
|
||||
import { checkPer } from "@/utils/utils";
|
||||
@@ -1395,7 +1395,7 @@ import { checkPer } from "@/utils/utils";
|
||||
export default {
|
||||
name: "LevelAdd",
|
||||
components: {
|
||||
ImpoterGroupLeader,
|
||||
// ImpoterGroupLeader,
|
||||
ProjCheckShip,
|
||||
ImpStu,
|
||||
CheckStu,
|
||||
@@ -2759,7 +2759,10 @@ export default {
|
||||
let obj = {
|
||||
title: "[学习路径]二维码",
|
||||
name: state.styTitle,
|
||||
// url: codeUrl,
|
||||
url: window.location.protocol +
|
||||
process.env.VUE_APP_H5 +
|
||||
"/pathdetails?routerId=" +
|
||||
state.routerId,
|
||||
};
|
||||
state.codeInfo = obj;
|
||||
};
|
||||
|
||||
@@ -325,7 +325,9 @@
|
||||
<a-button class="btn btn1" @click="cancelStorage" :loading="cancleLoading">取消</a-button>
|
||||
</div>
|
||||
</div>
|
||||
<div><div style="height:80px;width:100%;" /></div>
|
||||
<div>
|
||||
<div style="height:80px;width:100%;"/>
|
||||
</div>
|
||||
<!-- 移动任务到阶段 -->
|
||||
<a-modal style="padding: 0" v-model:visible="visiblene" :footer="null" :centered="true"
|
||||
wrapClassName="moveModal">
|
||||
@@ -533,8 +535,20 @@ const temporaryStorage = async () => {
|
||||
};
|
||||
|
||||
const submitStorage = async () => {
|
||||
if (routerInfo.value.routerInfo.status === 1) {
|
||||
dialog({
|
||||
content: '该路径图已经发布,修改后如未点击暂存当前操作未保存数据将丢失,确认保存?',
|
||||
ok: async () => {
|
||||
confirmLoading.value = true
|
||||
routerInfo.value.routerInfo.status === 1 ? await releaseRouter(routerId) : await request(ROUTER_DETAIL_MODIFY, routerInfo.value)
|
||||
await releaseRouter(routerId)
|
||||
message.success("关卡和任务数据已保存");
|
||||
confirmLoading.value = false
|
||||
},
|
||||
})
|
||||
return
|
||||
}
|
||||
confirmLoading.value = true
|
||||
await request(ROUTER_DETAIL_MODIFY, routerInfo.value)
|
||||
message.success("关卡和任务数据已保存")
|
||||
confirmLoading.value = false
|
||||
};
|
||||
@@ -1031,6 +1045,7 @@ const cancelStorage = async () => {
|
||||
top: 0;
|
||||
height: 80vh;
|
||||
overflow-y: auto;
|
||||
|
||||
.tit {
|
||||
font-size: 18px;
|
||||
color: #363636;
|
||||
@@ -1297,6 +1312,7 @@ const cancelStorage = async () => {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
z-index: 999;
|
||||
|
||||
.item {
|
||||
height: 115px;
|
||||
// width: 7.7%;
|
||||
@@ -2136,6 +2152,7 @@ const cancelStorage = async () => {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.footBox {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
|
||||
@@ -585,8 +585,20 @@ const temporaryStorage = async () => {
|
||||
};
|
||||
//确定
|
||||
const submitStorage = async () => {
|
||||
if (projectInfo.value.projectInfo.status === 3) {
|
||||
dialog({
|
||||
content: '该项目已经发布,修改后如未点击暂存当前操作未保存数据将丢失,确认保存?',
|
||||
ok: async () => {
|
||||
confirmLoading.value = true
|
||||
projectInfo.value.projectInfo.status === 3 ? await request(PROJECT_RELEASE, {projectId: route.query.projectId}) : await request(PROJECT_DETAIL_MODIFY, projectInfo.value)
|
||||
await request(PROJECT_RELEASE, {projectId: route.query.projectId})
|
||||
message.success("保存成功");
|
||||
confirmLoading.value = false
|
||||
},
|
||||
})
|
||||
return
|
||||
}
|
||||
confirmLoading.value = true
|
||||
await request(PROJECT_DETAIL_MODIFY, projectInfo.value)
|
||||
message.success("阶段和任务数据已保存")
|
||||
confirmLoading.value = false
|
||||
};
|
||||
@@ -953,6 +965,7 @@ const cancelStorage = async () => {
|
||||
top: 0;
|
||||
height: 80vh;
|
||||
overflow-y: auto;
|
||||
|
||||
.tit {
|
||||
margin-left: 20px;
|
||||
font-size: 18px;
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
</div>
|
||||
<div class="right">
|
||||
<!-- 2022-12-10注释 后面放开 -->
|
||||
<!-- <img
|
||||
<img
|
||||
class="img1"
|
||||
src="../../assets/images/leveladd/ma.png"
|
||||
@click="showCodeModel2()"
|
||||
@@ -28,7 +28,7 @@
|
||||
action == 3 ||
|
||||
action == -2
|
||||
"
|
||||
></div>-->
|
||||
></div>
|
||||
<!-- 显示发布图标 -->
|
||||
<img
|
||||
v-if="action == 2 && checkPer(permissions)"
|
||||
@@ -459,14 +459,14 @@
|
||||
<div class="split"></div>
|
||||
<div class="onerow">
|
||||
<div class="taskmain">任务大纲</div>
|
||||
<ImpoterGroupLeader
|
||||
<!-- <ImpoterGroupLeader
|
||||
title="批量面授报名"
|
||||
:data="{ targetId: projectId, type: 1 }"
|
||||
:url="`/admin/offcourse/importCourse`"
|
||||
:template-url="`/admin/project/exportTaskCoursePlan/${projectId}?type=1&taskType=2&thirdType=3`"
|
||||
>
|
||||
<button class="btn">批量面授报名</button>
|
||||
</ImpoterGroupLeader>
|
||||
</ImpoterGroupLeader> -->
|
||||
<router-link
|
||||
v-if="checkPer(permissions)"
|
||||
:to="{ path: `/taskadd`, query: { projectId: projectId } }"
|
||||
@@ -769,7 +769,10 @@
|
||||
<a-button @click="settingTopFlag(record)" type="link"
|
||||
>{{ record.topFlag ? "取消优秀" : "优秀学员" }}
|
||||
</a-button>
|
||||
<a-button type="link" :disabled="record.isLeader === '1'" @click="showChangeGroupModal(record)"
|
||||
<a-button
|
||||
type="link"
|
||||
:disabled="record.isLeader === '1'"
|
||||
@click="showChangeGroupModal(record)"
|
||||
>换组
|
||||
</a-button>
|
||||
</template>
|
||||
@@ -3934,9 +3937,9 @@ export default {
|
||||
const createGroup = async () => {
|
||||
console.log("state.groupPageList" + state.groupPageList);
|
||||
const id = state.groupInfo.id;
|
||||
const d = state.groupPageList.filter(item => item.id !== id).filter(
|
||||
(item) => item.leaderId === state.groupInfo.leaderId
|
||||
);
|
||||
const d = state.groupPageList
|
||||
.filter((item) => item.id !== id)
|
||||
.filter((item) => item.leaderId === state.groupInfo.leaderId);
|
||||
if (state.isEdit) {
|
||||
if (d.length > 0 && d[0].id !== id) {
|
||||
return message.warn(d[0].leaderName + "已是小组长,请重新选择");
|
||||
@@ -3951,7 +3954,6 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
state.isEdit = false;
|
||||
await editGroup({ ...state.groupInfo, projectId: state.projectId });
|
||||
message.success(id ? "小组编辑成功" : "小组创建成功");
|
||||
@@ -4662,7 +4664,11 @@ export default {
|
||||
let obj = {
|
||||
title: "[项目]二维码",
|
||||
name: state.name,
|
||||
// url: codeUrl,
|
||||
url:
|
||||
window.location.protocol +
|
||||
process.env.VUE_APP_H5 +
|
||||
"/projectdetails?projectId=" +
|
||||
state.projectId,
|
||||
};
|
||||
state.codeInfo = obj;
|
||||
};
|
||||
|
||||
@@ -95,7 +95,6 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="name">
|
||||
<div class="namebox">
|
||||
<img
|
||||
@@ -108,7 +107,8 @@
|
||||
<div class="in">
|
||||
<a-range-picker
|
||||
:show-time="{ format: 'HH:mm' }"
|
||||
:disabled-date="disabledDate" :disabled-time="disabledRangeTime"
|
||||
:disabled-date="disabledDate"
|
||||
:disabled-time="disabledRangeTime"
|
||||
separator="至"
|
||||
:placeholder="[' 开始时间', ' 结束时间']"
|
||||
v-model:value="projectInfo.rangeTime"
|
||||
@@ -197,9 +197,7 @@
|
||||
</div>
|
||||
<div class="in ggysxz" v-if="courseSyncFlag">
|
||||
<!-- :disabled="viewDetail ? true : false" -->
|
||||
<a-checkbox
|
||||
disabled
|
||||
v-model:checked="courseSyncFlag"
|
||||
<a-checkbox disabled v-model:checked="courseSyncFlag"
|
||||
><span
|
||||
style="
|
||||
width: 100%;
|
||||
@@ -212,9 +210,7 @@
|
||||
</div>
|
||||
<div class="in" v-else>
|
||||
<!-- :disabled="viewDetail ? true : false" -->
|
||||
<a-checkbox
|
||||
disabled
|
||||
v-model:checked="courseSyncFlag"
|
||||
<a-checkbox disabled v-model:checked="courseSyncFlag"
|
||||
><span
|
||||
style="
|
||||
width: 100%;
|
||||
@@ -268,7 +264,7 @@ const router = useRouter();
|
||||
const store = useStore();
|
||||
const projectInfo = ref({});
|
||||
const projectPic = ref([]);
|
||||
const courseSyncFlag = ref(true)
|
||||
const courseSyncFlag = ref(true);
|
||||
onMounted(() => {
|
||||
getDetail();
|
||||
projectPic.value = store.state.project_pic.map((e) => ({
|
||||
@@ -288,7 +284,8 @@ const getDetail = () =>
|
||||
route.query.projectTemplateId &&
|
||||
api.templateDetail(route.query.projectTemplateId).then((res) => {
|
||||
projectInfo.value = res.data.data.projectTemplateInfo;
|
||||
projectInfo.value.rangeTime = [dayjs(projectInfo.value.beginTime).format("YYYY-MM-DD HH:mm"),
|
||||
projectInfo.value.rangeTime = [
|
||||
dayjs(projectInfo.value.beginTime).format("YYYY-MM-DD HH:mm"),
|
||||
dayjs(projectInfo.value.endTime).format("YYYY-MM-DD HH:mm"),
|
||||
];
|
||||
projectInfo.value.courseSyncFlag = !!projectInfo.value.courseSyncFlag;
|
||||
@@ -304,8 +301,8 @@ const backPage = () => {
|
||||
|
||||
function timeChange(e) {
|
||||
if (e && e.length === 2) {
|
||||
projectInfo.value.beginTime = dayjs(e[0]).format("YYYY-MM-DD HH:mm"),
|
||||
projectInfo.value.endTime =dayjs(e[1]).format("YYYY-MM-DD HH:mm")
|
||||
(projectInfo.value.beginTime = dayjs(e[0]).format("YYYY-MM-DD HH:mm")),
|
||||
(projectInfo.value.endTime = dayjs(e[1]).format("YYYY-MM-DD HH:mm"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -332,8 +329,12 @@ const createProject = () => {
|
||||
}
|
||||
}
|
||||
projectInfo.value.courseSyncFlag = courseSyncFlag.value ? 1 : 0;
|
||||
projectInfo.value.beginTime = dayjs(projectInfo.value.beginTime).format("YYYY-MM-DD HH:mm"),
|
||||
projectInfo.value.endTime =dayjs(projectInfo.value.endTime).format("YYYY-MM-DD HH:mm")
|
||||
(projectInfo.value.beginTime = dayjs(projectInfo.value.beginTime).format(
|
||||
"YYYY-MM-DD HH:mm"
|
||||
)),
|
||||
(projectInfo.value.endTime = dayjs(projectInfo.value.endTime).format(
|
||||
"YYYY-MM-DD HH:mm"
|
||||
));
|
||||
api
|
||||
.templateEdit({
|
||||
...projectInfo.value,
|
||||
@@ -347,16 +348,16 @@ const createProject = () => {
|
||||
};
|
||||
|
||||
function managerChange(e, l, d, t, orgName) {
|
||||
console.log(e, l)
|
||||
console.log(e, l);
|
||||
projectInfo.value.sourceBelongId = d;
|
||||
projectInfo.value.sourceBelongName = t;
|
||||
projectInfo.value.sourceBelongFullName = orgName
|
||||
projectInfo.value.sourceBelongFullName = orgName;
|
||||
}
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.ggysxz {
|
||||
.ant-checkbox-disabled.ant-checkbox-checked .ant-checkbox-inner::after {
|
||||
border-color: #FFF !important;
|
||||
border-color: #fff !important;
|
||||
}
|
||||
.ant-checkbox-disabled .ant-checkbox-inner {
|
||||
background-color: #1890ff !important;
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<div class="search"></div>
|
||||
<div class="btnText">搜索</div>
|
||||
</div>
|
||||
<div class="btnn btn2" @click="handleRest">
|
||||
<div class="btnn btn2" @click="handleRest" style="width: 103px">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">重置</div>
|
||||
</div>
|
||||
@@ -114,7 +114,6 @@
|
||||
placeholder="请输入评估名称"
|
||||
v-model:value="assessmentName"
|
||||
v-model:validate="validate"
|
||||
|
||||
:maxlength="15"
|
||||
show-count
|
||||
:type="4"
|
||||
@@ -170,7 +169,9 @@
|
||||
<div class="btnText" @click="handleCancelModal">取消</div>
|
||||
</div>
|
||||
<div class="del_btn btn2">
|
||||
<div class="btnText" v-if="!addLoading" @click="handleSure">确定</div>
|
||||
<div class="btnText" v-if="!addLoading" @click="handleSure">
|
||||
确定
|
||||
</div>
|
||||
<div class="btnText" v-else>确定</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -458,7 +459,8 @@ export default {
|
||||
<div class="operation">
|
||||
{value.state === "2" ? (
|
||||
<div class="fb">
|
||||
<div class="jc"
|
||||
<div
|
||||
class="jc"
|
||||
onClick={() => {
|
||||
handleToManagepage(value, "/managepage");
|
||||
}}
|
||||
@@ -606,7 +608,11 @@ export default {
|
||||
message.destroy();
|
||||
return message.warning("该评估名称已存在");
|
||||
}
|
||||
const offName = await validateName({name: state.assessmentName, type:4, id:state.id}).then(res => {
|
||||
const offName = await validateName({
|
||||
name: state.assessmentName,
|
||||
type: 4,
|
||||
id: state.id,
|
||||
}).then((res) => {
|
||||
return res.data.data == 1;
|
||||
});
|
||||
if (offName) {
|
||||
@@ -614,8 +620,6 @@ export default {
|
||||
return message.warning("课程名称重复,请重新填写");
|
||||
}
|
||||
|
||||
|
||||
|
||||
store.commit("SET_assessmentName", state.assessmentName);
|
||||
router.push("/researchadd");
|
||||
handleCancel();
|
||||
@@ -675,7 +679,6 @@ export default {
|
||||
state.copy_hs = true;
|
||||
};
|
||||
const handleSure = () => {
|
||||
|
||||
// 发布
|
||||
if (state.pub_hs) {
|
||||
editReleaseStatus({
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
* @Author: lixg lixg@dongwu-inc.com
|
||||
* @Date: 2022-11-21 14:32:52
|
||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||
* @LastEditTime: 2023-02-24 09:03:55
|
||||
* @LastEditTime: 2022-12-14 17:38:38
|
||||
* @FilePath: /fe-manage/vue.config.js
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
*/
|
||||
@@ -16,7 +16,6 @@ module.exports = defineConfig({
|
||||
proxy: {
|
||||
"/manageApi": {
|
||||
target: 'http:' + process.env.VUE_APP_PROXY_URL,
|
||||
//target: 'http://localhost:30001',
|
||||
changeOrigin: true, //表示是否改变原域名
|
||||
pathRewrite: {
|
||||
"^/manageApi": "",
|
||||
|
||||
Reference in New Issue
Block a user