feat:增加学习路径id以及项目id

This commit is contained in:
李晓鸽
2022-11-04 15:50:19 +08:00
13 changed files with 5397 additions and 4700 deletions

View File

@@ -43,13 +43,15 @@ export const createAppraiseMessage = (obj) => http.post('/survey/createAppraiseM
//删除评估信息 //删除评估信息
export const deleteAppraise = (obj) => http.post('/survey/deleteAppraise', { params: obj }) export const deleteAppraise = (obj) => http.post('/survey/deleteAppraise', { params: obj })
//根据ID获取评估信息详情 //根据ID获取评估信息详情
export const queryAppraiseDetailById = (obj) => http.post('/survey/queryAppraiseDetailById', { params: obj }) export const queryAppraiseDetailById = (obj) => http.post('/survey/queryAppraiseDetailById', { params: obj })
//修改评估信息 //修改评估信息
export const updateAppraiseMessage = (obj) => http.post('/survey/updateAppraiseMessage', obj) export const updateAppraiseMessage = (obj) => http.post('/survey/updateAppraiseMessage', obj)
//获取全部评估信息接口
export const queryAssessmentDetailList = (obj) => http.post('/assessment/queryAssessmentDetailList', obj)
// 测试方法 // 测试方法
// import * as api from '../../api/index' // import * as api from '../../api/index'

View File

@@ -72,6 +72,7 @@
import { reactive, toRefs, ref } from "vue"; import { reactive, toRefs, ref } from "vue";
import * as api from "../../api/indexDiscuss"; import * as api from "../../api/indexDiscuss";
import * as apiTask from "../../api/indexTaskadd"; import * as apiTask from "../../api/indexTaskadd";
import { RouterEditTask } from "@/api/indexTask"
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
const rowSelection = ref({ const rowSelection = ref({
checkStrictly: false, checkStrictly: false,
@@ -98,14 +99,18 @@ export default {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
isStudiscuss: {
type: Boolean,
default: false,
}
}, },
setup(props, ctx) { setup(props, ctx) {
console.log("学习路径",props.isStudiscuss);
const state = reactive({ const state = reactive({
inputV1: "", inputV1: "",
inputV2: "", inputV2: "",
textV1: "", textV1: "",
checkedC1: "", checkedC1: "",
add: true,
}); });
const closeDrawer = () => { const closeDrawer = () => {
ctx.emit("update:adddiscussVisible", false); ctx.emit("update:adddiscussVisible", false);
@@ -116,7 +121,7 @@ export default {
console.log("state", bool); console.log("state", bool);
}; };
//创建讨论 //创建讨论(项目任务列表)
const createDiscuss = () => { const createDiscuss = () => {
if (!state.inputV1) { if (!state.inputV1) {
message.destroy(); message.destroy();
@@ -144,6 +149,26 @@ export default {
message.success("创建成功"); message.success("创建成功");
ctx.emit("update:adddiscussVisible", false); ctx.emit("update:adddiscussVisible", false);
//console.log("discussName",obj.discussName); //console.log("discussName",obj.discussName);
console.log("学习路径",props.isStudiscuss);
if(props.isStudiscuss){
let editObj1 = {
chapterId:36,
courseId: 0,
duration: 0,
flag: true,
name: obj.discussName,
routerId: 92,
routerTaskId: 0,
type: 8,
}
RouterEditTask(editObj1).then(res => {
console.log("新增关卡任务成功",res);
closeDrawer();
}).catch(err => {
console.log("新增关卡任务失败",err);
})
}else{
console.log("项目添加讨论");
apiTask apiTask
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -165,6 +190,7 @@ export default {
.catch((err) => { .catch((err) => {
console.log(err); console.log(err);
}); });
}
}) })
.catch((err) => { .catch((err) => {
console.log("创建失败", err); console.log("创建失败", err);

View File

@@ -112,6 +112,7 @@ import * as api from "../../api/indexEval";
import * as apitaskadd from "../../api/indexTaskadd"; import * as apitaskadd from "../../api/indexTaskadd";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
import { toDate } from "../../api/method"; import { toDate } from "../../api/method";
import { RouterEditTask } from "@/api/indexTask";
// const router = useRouter(); // const router = useRouter();
export default { export default {
name: "AddEval", name: "AddEval",
@@ -126,6 +127,10 @@ export default {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
learn: {
type: Number,
default: 0,
},
}, },
setup(props, ctx) { setup(props, ctx) {
const state = reactive({ const state = reactive({
@@ -184,8 +189,7 @@ export default {
}; };
const beforeUpload = (file) => { const beforeUpload = (file) => {
const isJpgOrPng = const isJpgOrPng = file.type === "image/jpg" || file.type === "image/png";
file.type === "image/jpg" || file.type === "image/png";
if (!isJpgOrPng) { if (!isJpgOrPng) {
message.error("You can upload JPG/PNG file!"); message.error("You can upload JPG/PNG file!");
} }
@@ -238,6 +242,8 @@ export default {
console.log("创建成功", res); console.log("创建成功", res);
message.success("创建成功"); message.success("创建成功");
closeDrawer(); closeDrawer();
console.log("1111", props.learn);
if (props.learn == 0)
apitaskadd apitaskadd
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -251,11 +257,31 @@ export default {
}) })
.then((res) => { .then((res) => {
console.log("调用项目添加接口后", res.data); console.log("调用项目添加接口后", res.data);
ctx.emit("changeData",false); ctx.emit("changeData", false);
}) })
.catch((err) => { .catch((err) => {
console.log(err); console.log(err);
}); });
else {
let editObj1 = {
chapterId: 36,
courseId: 0,
duration: 0,
flag: true,
name: obj.evaluationName,
routerId: 92,
routerTaskId: 0,
type: 10,
};
RouterEditTask(editObj1)
.then((res) => {
console.log("调用学历路径添加接口后", res.data);
ctx.emit("changeData", false);
})
.catch((err) => {
console.log(err);
});
}
}) })
.catch((err) => { .catch((err) => {
console.log("创建失败", err); console.log("创建失败", err);

View File

@@ -45,11 +45,7 @@
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:pagination="false" :pagination="false"
:row-selection="{ :row-selection="rowSelection"
columnWidth: 30,
selectedRowKeys: selectedRowKeys,
onChange: onSelectChange,
}"
/> />
<div class="pa"> <div class="pa">
@@ -74,7 +70,7 @@
</a-drawer> </a-drawer>
</template> </template>
<script> <script>
import { reactive, toRefs} from "vue"; import { reactive, toRefs } from "vue";
import * as api from "../../api/indexInvist"; import * as api from "../../api/indexInvist";
import * as apitaskadd from "../../api/indexTaskadd"; import * as apitaskadd from "../../api/indexTaskadd";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
@@ -93,34 +89,20 @@ export default {
inputV1: "", inputV1: "",
time: undefined, time: undefined,
tableData: [ tableData: [
{ // {
key: 1, // key: 1,
name: "评估", // name: "评估",
num: "2", // num: "2",
creator: "管理员", // creator: "管理员",
time: "2022-07-21 14:30:25", // time: "2022-07-21 14:30:25",
}, // },
{ // {
key: 2, // key: 2,
name: "评估", // name: "评估",
num: "8", // num: "8",
creator: "管理员", // creator: "管理员",
time: "2022-07-21 14:30:25", // time: "2022-07-21 14:30:25",
}, // },
{
key: 3,
name: "评估",
num: "5",
creator: "管理员",
time: "2022-07-21 14:30:25",
},
{
key: 4,
name: "评估",
num: "20",
creator: "管理员",
time: "2022-07-21 14:30:25",
},
], ],
}); });
const closeDrawer = () => { const closeDrawer = () => {
@@ -137,7 +119,7 @@ export default {
dataIndex: "name", dataIndex: "name",
// width: "30%", // width: "30%",
key: "name", key: "name",
width: '150px', width: "150px",
align: "left", align: "left",
className: "classify", className: "classify",
@@ -162,26 +144,36 @@ export default {
title: "题数", title: "题数",
dataIndex: "num", dataIndex: "num",
key: "num", key: "num",
width: '80px', width: "80px",
align: "center", align: "center",
}, },
{ {
title: "创建人", title: "创建人",
dataIndex: "creator", dataIndex: "creator",
key: "creator", key: "creator",
width: '150px', width: "150px",
align: "center", align: "center",
}, },
{ {
title: "创建时间", title: "创建时间",
dataIndex: "time", dataIndex: "time",
key: "time", key: "time",
width: '200px', width: "200px",
align: "center", align: "center",
}, },
]; ];
return columns; return columns;
}; };
const rowSelection = {
onChange: (selectedRowKeys, selectedRows) => {
console.log(`selectedRowKeys: ${selectedRowKeys}`, 'selectedRows: ', selectedRows);
},
getCheckboxProps: record => ({
// disabled: record.name === 'Disabled User',
// // Column configuration not to be checked
name: record.name,
}),
};
//创建评估信息 //创建评估信息
const createInvist = () => { const createInvist = () => {
let obj = { let obj = {
@@ -205,6 +197,7 @@ export default {
console.log("创建成功", res); console.log("创建成功", res);
message.success("创建成功"); message.success("创建成功");
closeDrawer(); closeDrawer();
getAllInvistText();
apitaskadd apitaskadd
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -218,7 +211,7 @@ export default {
}) })
.then((res) => { .then((res) => {
console.log("调用项目添加接口后", res.data); console.log("调用项目添加接口后", res.data);
ctx.emit("changeData",false); ctx.emit("changeData", false);
}) })
.catch((err) => { .catch((err) => {
console.log(err); console.log(err);
@@ -229,12 +222,37 @@ export default {
// state.createLoading = false; // state.createLoading = false;
}); });
}; };
//获取全部评估信息接口
const getAllInvistText = () => {
let obj = {
assessmentName: "",
pageNo: 0,
pageSize: 0,
releaseStatus: "",
searchEndTime: "",
searchStartTime: "",
};
api
.queryAssessmentDetailList(obj)
.then((res) => {
console.log("获取全部评估信息接口成功", res);
message.success("获取全部评估信息接口成功");
console.log(obj);
})
.catch((err) => {
console.log("获取全部评估信息接口失败", err);
// state.createLoading = false;
});
};
return { return {
...toRefs(state), ...toRefs(state),
afterVisibleChange, afterVisibleChange,
closeDrawer, closeDrawer,
tableDataFunc, tableDataFunc,
rowSelection,
createInvist, createInvist,
getAllInvistText,
}; };
}, },
}; };
@@ -268,10 +286,10 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
margin-bottom: 32px; margin-bottom: 32px;
.fi_input{ .fi_input {
margin-right: 20px; margin-right: 20px;
} }
.btns{ .btns {
margin-right: 20px; margin-right: 20px;
padding: 0px 26px 0px 26px; padding: 0px 26px 0px 26px;
height: 38px; height: 38px;
@@ -324,12 +342,11 @@ export default {
margin-left: 5px; margin-left: 5px;
} }
} }
} }
.main_item2 { .main_item2 {
.pa { .pa {
width: 100%; width: 100%;
margin:15px auto; margin: 15px auto;
display: flex; display: flex;
justify-content: center; justify-content: center;
} }

View File

@@ -303,50 +303,7 @@ const options1 = ref([
label: "请选择状态", label: "请选择状态",
}, },
]); ]);
// const columns1 = [
// {
// title: "课程编号",
// width: "20%",
// dataIndex: "num",
// key: "num",
// align: "center",
// },
// {
// title: "名称",
// width: "20%",
// dataIndex: "name",
// key: "name",
// align: "center",
// },
// {
// title: "内容分类",
// width: "13%",
// dataIndex: "content",
// key: "content",
// align: "center",
// },
// {
// title: "授课教师",
// width: "13%",
// dataIndex: "teacher",
// key: "teacher",
// align: "center",
// },
// {
// title: "创建人",
// width: "13%",
// dataIndex: "creator",
// key: "creator",
// align: "center",
// },
// {
// title: "完成时间",
// width: "20%",
// dataIndex: "time",
// key: "time",
// align: "center",
// },
// ];
const rowSelection = ref({ const rowSelection = ref({
checkStrictly: false, checkStrictly: false,
onChange: (selectedRowKeys, selectedRows) => { onChange: (selectedRowKeys, selectedRows) => {
@@ -583,6 +540,7 @@ export default {
new Date(state.time[1].$d).getTime() / 1000, new Date(state.time[1].$d).getTime() / 1000,
"Y-M-D" "Y-M-D"
); );
state.obj = { state.obj = {
afterSignIn: state.inputV6, afterSignIn: state.inputV6,
beforeSignIn: state.inputV7, beforeSignIn: state.inputV7,
@@ -607,6 +565,7 @@ export default {
updateTime: "", updateTime: "",
updateUser: 0, updateUser: 0,
}; };
api api
.createLiveBroadcast(state.obj) .createLiveBroadcast(state.obj)
.then((res) => { .then((res) => {
@@ -614,7 +573,6 @@ export default {
// console.log(state, 2222); // console.log(state, 2222);
message.success("提交成功"); message.success("提交成功");
closeDrawer(); closeDrawer();
apiTask apiTask
.addTask({ .addTask({
courseId: 0, courseId: 0,
@@ -637,8 +595,6 @@ export default {
.catch((err) => { .catch((err) => {
console.log(err); console.log(err);
}); });
// state = {}
}) })
.catch((err) => { .catch((err) => {
console.log(err, 2222); console.log(err, 2222);

View File

@@ -76,7 +76,7 @@
</div> </div>
</a-drawer> </a-drawer>
</template> </template>
<script> <script>
import { reactive, toRefs, ref } from "vue"; import { reactive, toRefs, ref } from "vue";
import * as api from "../../api/indexExternalChain"; import * as api from "../../api/indexExternalChain";
import * as apiTask from "../../api/indexTaskadd"; import * as apiTask from "../../api/indexTaskadd";
@@ -106,6 +106,10 @@ export default {
type: Boolean, type: Boolean,
default: false, default: false,
}, },
routerId: {
type: Number,
default: null,
},
}, },
setup(props, ctx) { setup(props, ctx) {
const state = reactive({ const state = reactive({
@@ -115,6 +119,7 @@ export default {
}); });
const closeDrawer = () => { const closeDrawer = () => {
ctx.emit("update:addrefVisible", false); ctx.emit("update:addrefVisible", false);
console.log("props", props.routerId);
state.inputV2 = ""; state.inputV2 = "";
state.inputV1 = ""; state.inputV1 = "";
state.textV1 = ""; state.textV1 = "";
@@ -180,7 +185,7 @@ export default {
}, },
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.ant-table-striped :deep(.table-striped) td { .ant-table-striped :deep(.table-striped) td {
background-color: #fafafa !important; background-color: #fafafa !important;
} }
@@ -320,4 +325,3 @@ export default {
} }
} }
</style> </style>

Binary file not shown.

View File

@@ -603,7 +603,7 @@ import ManageRight from "../../components/drawers/ManageRight";
import * as api from "../../api/index1"; import * as api from "../../api/index1";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
import { toDate } from "../../api/method"; import { toDate } from "../../api/method";
import { storage } from "../../api/storage";
export default { export default {
name: "learningPath", name: "learningPath",
components: { OwnerShip, PowerList, QueryRight, ManageRight }, components: { OwnerShip, PowerList, QueryRight, ManageRight },
@@ -1081,7 +1081,7 @@ export default {
router.push({ router.push({
path: "/leveladd", path: "/leveladd",
}); });
localStorage.setItem("routerId", text.record.id); storage.set("routerId", text.record.id);
}} }}
> >
管理 管理

View File

@@ -899,6 +899,8 @@ import WorkManage from "../../components/drawers/WorkManage";
// import { useRoute } from "vue-router"; // import { useRoute } from "vue-router";
// import { useStore } from "vuex"; // import { useStore } from "vuex";
import * as api from "../../api/index1"; import * as api from "../../api/index1";
import { storage } from "../../api/storage";
export default { export default {
name: "LevelAdd", name: "LevelAdd",
components: { components: {
@@ -917,7 +919,7 @@ export default {
// const routers = useRoute(); // const routers = useRoute();
// const store = useStore(); // const store = useStore();
const state = reactive({ const state = reactive({
routerId: localStorage.getItem("routerId"), //学习路径页面传的学习路径id routerId: storage.get("routerId") ? storage.get("routerId") : null, //学习路径页面传的学习路径id
gatename: null, //关卡名称 gatename: null, //关卡名称
gatenamee: null, //学员管理关卡名称 gatenamee: null, //学员管理关卡名称
deleteAll: false, //批量删除学员弹窗 deleteAll: false, //批量删除学员弹窗
@@ -1236,7 +1238,7 @@ export default {
}, },
], ],
}); });
console.log("store", state.routerId); // console.log("store", state.routerId);
const selectProjectName = (value, index) => { const selectProjectName = (value, index) => {
console.log("value", value, index); console.log("value", value, index);
if (value === "批量删除") { if (value === "批量删除") {

View File

@@ -175,7 +175,7 @@
<div> <div>
<add-homework <add-homework
flag="0" flag="0"
routerTaskId="ListChoosedId" :workId="editID"
v-model:addhomeworkVisible="addhomeworkvisible" v-model:addhomeworkVisible="addhomeworkvisible"
/> />
</div> </div>
@@ -190,12 +190,16 @@
</div> </div>
<!-- 添加考试侧弹窗 --> <!-- 添加考试侧弹窗 -->
<div> <div>
<add-test v-model:addtestVisible="addtestvisible" /> <add-test
:workId="editID"
@clearEditData="clearEditData"
v-model:addtestVisible="addtestvisible"
/>
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item">
<div class="itcon"> <div class="itcon" @click="showDrawerAddLive">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/zhi.png" /> <img src="../../assets/images/leveladd/zhi.png" />
</div> </div>
@@ -204,7 +208,7 @@
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item">
<div class="itcon"> <div class="itcon" @click="showDrawerAddRef">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/wai.png" /> <img src="../../assets/images/leveladd/wai.png" />
</div> </div>
@@ -212,7 +216,7 @@
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item" @click="showDrawerAddDiscuss">
<div class="itcon"> <div class="itcon">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/tao.png" /> <img src="../../assets/images/leveladd/tao.png" />
@@ -221,7 +225,7 @@
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item" @click="showDrawerAddActive">
<div class="itcon"> <div class="itcon">
<div class="img"> <div class="img">
<img src="../../assets/images/leveladd/huo.png" /> <img src="../../assets/images/leveladd/huo.png" />
@@ -241,6 +245,7 @@
<add-eval <add-eval
v-model:addevalVisible="addevalvisible" v-model:addevalVisible="addevalvisible"
v-model:edit="edit" v-model:edit="edit"
v-model:learn="learn"
/> />
</div> </div>
<!-- 添加测评侧弹窗 --> <!-- 添加测评侧弹窗 -->
@@ -255,7 +260,10 @@
<div class="text">评估</div> <div class="text">评估</div>
<!-- 添加评估侧弹窗 --> <!-- 添加评估侧弹窗 -->
<div> <div>
<add-invist v-model:addinvistVisible="addinvistvisible" /> <add-invist
v-model:addinvistVisible="addinvistvisible"
@changeData="updateTableData"
/>
</div> </div>
<!-- 添加评估侧弹窗 --> <!-- 添加评估侧弹窗 -->
</div> </div>
@@ -269,13 +277,16 @@
<div class="text">投票</div> <div class="text">投票</div>
<!-- 添加投票侧弹窗 --> <!-- 添加投票侧弹窗 -->
<div> <div>
<add-vote v-model:addvoteVisible="addvotevisible" /> <add-vote
v-model:addvoteVisible="addvotevisible"
@changeData="updateTableData"
/>
</div> </div>
<!-- 添加投票侧弹窗 --> <!-- 添加投票侧弹窗 -->
</div> </div>
<div class="lin"></div> <div class="lin"></div>
</div> </div>
<div class="item"> <div class="item" @click="showDrawerAddVote">
<div class="itcon"> <div class="itcon">
<div class="img"> <div class="img">
<img <img
@@ -311,6 +322,7 @@
:loading="tableDataTotal === -1 ? true : false" :loading="tableDataTotal === -1 ? true : false"
expandRowByClick="true" expandRowByClick="true"
@expand="expandTable" @expand="expandTable"
:customRow="handleClickRow"
:pagination="false" :pagination="false"
:row-selection="{ :row-selection="{
columnWidth: 30, columnWidth: 30,
@@ -512,6 +524,19 @@
<add-stu v-model:AddSvisible="AddSvisible" /> <add-stu v-model:AddSvisible="AddSvisible" />
<!-- 导入学员抽屉 --> <!-- 导入学员抽屉 -->
<imp-stu v-model:AddImpStuvisible="AddImpStuvisible" /> <imp-stu v-model:AddImpStuvisible="AddImpStuvisible" />
<!-- 添加讨论侧弹窗 -->
<div>
<add-discuss
v-model:adddiscussVisible="adddiscussvisible"
v-model:isStudiscuss="isStudiscuss"
/>
</div>
<!-- 添加讨论侧弹窗 -->
<!-- 添加活动侧弹窗 -->
<div>
<add-active v-model:addactiveVisible="addactivevisible" />
</div>
<!-- 添加活动侧弹窗 -->
<!-- 批量删除学员弹窗 --> <!-- 批量删除学员弹窗 -->
<a-modal <a-modal
v-model:visible="deleteAll" v-model:visible="deleteAll"
@@ -542,6 +567,43 @@
</div> </div>
</div> </div>
</a-modal> </a-modal>
<!-- 添加直播抽屉 -->
<add-live v-model:addliveVisible="addlivevisible" />
<add-ref
v-model:addrefVisible="addrefvisible"
v-model:routerId="routerId"
/>
<!-- 是否确认删除任务弹窗 -->
<!-- 确认删除阶段弹窗 -->
<a-modal
v-model:visible="deleteModal"
:footer="null"
:closable="cC"
wrapClassName="ConfirmModal"
centered="true"
>
<div class="delete">
<div class="del_header"></div>
<div class="del_main">
<div class="header">
<div class="icon"></div>
<span>提示</span>
<div class="close_exit" @click="closeConfirm"></div>
</div>
<div class="body">
<span>您确定要删除此任务吗</span>
</div>
<div class="del_btnbox">
<div class="del_btn btn1">
<div class="btnText" @click="closeConfirm">取消</div>
</div>
<div class="del_btn btn2">
<div class="btnText" @click="deleteLevelTask">确定</div>
</div>
</div>
</div>
</div>
</a-modal>
</div> </div>
</template> </template>
@@ -551,26 +613,35 @@ import AddStu from "../../components/drawers/AddLevelAddStu";
import ImpStu from "../../components/drawers/AddLevelImportStu"; import ImpStu from "../../components/drawers/AddLevelImportStu";
import AddHomework from "../../components/drawers/AddHomework.vue"; import AddHomework from "../../components/drawers/AddHomework.vue";
import AddTest from "../../components/drawers/AddTest.vue"; import AddTest from "../../components/drawers/AddTest.vue";
import AddDiscuss from "../../components/drawers/AddDiscuss.vue";
import AddActive from "../../components/drawers/AddActive.vue";
import AddEval from "../../components/drawers/AddEval.vue"; import AddEval from "../../components/drawers/AddEval.vue";
import AddInvist from "../../components/drawers/AddInvist.vue"; import AddInvist from "../../components/drawers/AddInvist.vue";
import AddVote from "../../components/drawers/AddVote.vue"; import AddVote from "../../components/drawers/AddVote.vue";
import AddLive from "../../components/drawers/AddLive.vue";
import AddRef from "../../components/drawers/AddRef.vue";
import * as api from "../../api/indexLevel"; import * as api from "../../api/indexLevel";
import { GetRouterDetail, RouterDeleteTask } from "../../api/indexTask"; import { GetRouterDetail, RouterDeleteTask } from "../../api/indexTask";
import { message } from "ant-design-vue"; import { message } from "ant-design-vue";
import { storage } from "../../api/storage";
export default { export default {
name: "LevelAddDetail", name: "LevelAddDetail",
components: { components: {
AddStu, AddStu,
ImpStu, ImpStu,
AddHomework, AddHomework,
AddDiscuss,
AddActive,
AddTest, AddTest,
AddEval, AddEval,
AddInvist, AddInvist,
AddVote, AddVote,
AddLive,
AddRef,
}, },
setup() { setup() {
const state = reactive({ const state = reactive({
routerId: localStorage.getItem("routerId"), routerId: storage.get("routerId")?storage.get("routerId"):null,
level: [ level: [
{ {
chapterId: "1", chapterId: "1",
@@ -582,6 +653,7 @@ export default {
{ {
key: 1, key: 1,
lei: "在线", lei: "在线",
routerTaskId: 0,
// state: "已发布", // state: "已发布",
creater: "管理者课程", creater: "管理者课程",
// pubtime: "2022-07-20 14:00:03", // pubtime: "2022-07-20 14:00:03",
@@ -765,18 +837,28 @@ export default {
visible: false, visible: false,
AddSvisible: false, //添加学员抽屉 AddSvisible: false, //添加学员抽屉
AddImpStuvisible: false, //导入学员抽屉 AddImpStuvisible: false, //导入学员抽屉
addlivevisible: false, //添加直播抽屉
addrefvisible: false, //添加外链抽屉
modal: false, modal: false,
clos: false, clos: false,
stm_hs: false, stm_hs: false,
deleteAll: false, deleteAll: false,
closeDeleteAll: false, closeDeleteAll: false,
deleteModal: false, // 删除弹窗
deleteID: "", // 要删除的任务的id
editID: "", // 要编辑的任务id
cC: false,
value1: "", value1: "",
value2: "", value2: "",
selectedRowKeys: [], selectedRowKeys: [],
edit: false, //是否点击编辑 edit: false, //是否点击编辑
learn: 0,
gqxy_hs: true, gqxy_hs: true,
isactive: 0, isactive: 0,
projectChecked: null, //项目单选框 projectChecked: null, //项目单选框
adddiscussvisible: false, //讨论抽屉
isStudiscuss: false,
addactivevisible: false, //活动抽屉
addhomeworkvisible: false, addhomeworkvisible: false,
addtestvisible: false, addtestvisible: false,
addevalvisible: false, addevalvisible: false,
@@ -786,7 +868,13 @@ export default {
// 表示当前触发列表的id,用来发送编辑和删除 // 表示当前触发列表的id,用来发送编辑和删除
ListChoosedId: 0, ListChoosedId: 0,
}); });
const showDrawerAddDiscuss = () => {
state.adddiscussvisible = true;
state.isStudiscuss = true;
};
const showDrawerAddActive = () => {
state.addactivevisible = true;
};
//新建关卡 //新建关卡
const editChapter = () => { const editChapter = () => {
if (!state.value1) return message.warning("请输入关卡名称"); if (!state.value1) return message.warning("请输入关卡名称");
@@ -847,6 +935,7 @@ export default {
//测试评估投票抽屉 //测试评估投票抽屉
const showDrawerAddEval = () => { const showDrawerAddEval = () => {
state.addevalvisible = true; state.addevalvisible = true;
state.learn = 1;
}; };
const showDrawerAddInvist = () => { const showDrawerAddInvist = () => {
state.addinvistvisible = true; state.addinvistvisible = true;
@@ -865,25 +954,19 @@ export default {
creater: element.name, creater: element.name,
cretime: element.duration, cretime: element.duration,
checked1: element.flag, checked1: element.flag,
routerTaskId: element.routerTaskId,
}; };
}); });
}; };
const getDetail = (index) => { const getDetail = (index) => {
GetRouterDetail(92) GetRouterDetail(92)
.then((res) => { .then((res) => {
state.level = res.data.data.chapterList; state.level = res.data.data.chapterList;
console.log(state.level); console.log(state.level);
if (index == 0) { if (index == 0) {
// state.tableData[1] = {
// key: 2,
// lei: "在线",
// creater: "管理者课程",
// cretime: "60",
// checked1: true,
// }
dataAssignment(0); dataAssignment(0);
} }
state.deleteModal = false;
}) })
.catch((err) => { .catch((err) => {
message.error(err); message.error(err);
@@ -1007,15 +1090,15 @@ export default {
// width: 100, // width: 100,
align: "center", align: "center",
scopedSlots: { customRender: "action" }, //引入的插槽 scopedSlots: { customRender: "action" }, //引入的插槽
customRender: () => { customRender: (e) => {
return ( return (
<div class="opa"> <div class="opa">
<div class="opacation"> <div class="opacation">
<span <span
style="color:#4EA6FF;margin-right:25px;cursor:pointer" style="color:#4EA6FF;margin-right:25px;cursor:pointer"
onClick={() => { onClick={() => {
state.edit = true; state.editID = e.record.routerTaskId;
state.addevalvisible = true; state.addhomeworkvisible = true;
}} }}
> >
编辑 编辑
@@ -1023,7 +1106,7 @@ export default {
<span <span
style="color:#4EA6FF;cursor:pointer" style="color:#4EA6FF;cursor:pointer"
onClick={() => { onClick={() => {
deleteLevelTask(); showDeleteModal(e.record.routerTaskId);
}} }}
> >
删除 删除
@@ -1257,6 +1340,15 @@ export default {
const delete_exit = () => { const delete_exit = () => {
state.deleteAll = false; state.deleteAll = false;
}; };
const showDeleteModal = (id) => {
state.deleteID = id;
state.deleteModal = true;
};
const closeConfirm = () => {
state.deleteModal = false;
state.deleteID = "";
state.editID = "";
};
const deleteLevelTask = () => { const deleteLevelTask = () => {
RouterDeleteTask(state.listChoosedId) RouterDeleteTask(state.listChoosedId)
.then((res) => { .then((res) => {
@@ -1268,6 +1360,23 @@ export default {
}); });
}; };
const showDrawerAddLive = () => {
state.addlivevisible = true;
};
const showDrawerAddRef = () => {
state.addrefvisible = true;
};
const closeDeleteModel = () => {
state.deleteModal = false;
state.deleteID = "";
};
// 子组件触发的清空 editid 事件
const clearEditData = () => {
state.editID = "";
getDetail(0);
};
return { return {
...toRefs(state), ...toRefs(state),
tableDataFunc, tableDataFunc,
@@ -1285,6 +1394,7 @@ export default {
gqxy_hShow, gqxy_hShow,
showDeleteALLModal, showDeleteALLModal,
delete_exit, delete_exit,
closeConfirm,
drawertableColumns, drawertableColumns,
editChapter, editChapter,
// updateChapter, // updateChapter,
@@ -1294,12 +1404,129 @@ export default {
showDrawerAddInvist, showDrawerAddInvist,
showDrawerAddVote, showDrawerAddVote,
deleteLevelTask, deleteLevelTask,
showDrawerAddLive,
showDrawerAddRef,
closeDeleteModel,
clearEditData,
showDrawerAddDiscuss,
showDrawerAddActive,
}; };
}, },
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.ConfirmModal {
.ant-modal {
width: 424px !important;
height: 258px !important;
.ant-modal-content {
width: 424px !important;
height: 258px !important;
.ant-modal-body {
width: 424px !important;
height: 258px !important;
padding: 0 !important;
.delete {
z-index: 999;
width: 424px;
height: 258px;
background: #ffffff;
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
border-radius: 4px;
// position: absolute;
// left: 50%;
// top: 10%;
// transform: translate(-50%, -50%);
.del_header {
position: absolute;
width: calc(100%);
height: 40px;
background: linear-gradient(
rgba(78, 166, 255, 0.2) 0%,
rgba(78, 166, 255, 0) 100%
);
}
.del_main {
width: 100%;
position: relative;
.header {
display: flex;
align-items: center;
padding-top: 20px;
padding-left: 26px;
font-size: 16px;
.icon {
width: 16px;
height: 16px;
margin-right: 10px;
background-image: url(@/assets/images/coursewareManage/QR.png);
background-size: 100% 100%;
}
.close_exit {
position: absolute;
right: 42px;
cursor: pointer;
width: 20px;
height: 20px;
background-image: url(@/assets/images/coursewareManage/close.png);
background-size: 100% 100%;
}
}
.body {
width: 100%;
margin: 34px auto 56px auto;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
// background-color: red;
position: relative;
.back {
position: absolute;
top: 30px;
font-size: 12px;
font-weight: 400;
color: #666666;
}
}
.del_btnbox {
display: flex;
margin: 30px auto;
justify-content: center;
.del_btn {
width: 100px;
height: 40px;
background: rgba(64, 158, 255, 0);
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
cursor: pointer;
.btnText {
font-size: 14px;
font-weight: 400;
line-height: 40px;
}
}
.btn1 {
border: 1px solid rgba(64, 158, 255, 1);
color: #4ea6ff;
margin-right: 14px;
}
.btn2 {
background-color: #4ea6ff;
color: #ffffff;
}
}
}
}
}
}
}
}
.clearfix:after, .clearfix:after,
.clearfix:before { .clearfix:before {
content: " "; content: " ";

View File

@@ -635,7 +635,7 @@ import ProjCheckShip from "../../components/drawers/ProjCheckPower";
import ProjManageShip from "../../components/drawers/ProjManagePower"; import ProjManageShip from "../../components/drawers/ProjManagePower";
import * as api from "../../api/index"; import * as api from "../../api/index";
import { toDate } from "../../api/method"; import { toDate } from "../../api/method";
import { storage } from "../../api/storage";
export default { export default {
name: "projectManage", name: "projectManage",
components: { ProjOwnerShip, ProjPowerList, ProjCheckShip, ProjManageShip }, components: { ProjOwnerShip, ProjPowerList, ProjCheckShip, ProjManageShip },
@@ -1984,7 +1984,13 @@ export default {
</div> </div>
</a-select-option> </a-select-option>
<a-select-option value="基础信息" label="基础信息"> <a-select-option value="基础信息" label="基础信息">
<router-link to="/taskpage">基础信息</router-link> <div onClick={()=>{
router.push({
path: "/taskpage",
});
storage.set("projectId", value.record.projectId);
}}>基础信息</div>
</a-select-option> </a-select-option>
</a-select> </a-select>
) : value.record.status ===1|| value.record.status == 1 && Number(value.record.beginTime) > Math.ceil(new Date().getTime / 1000) ? ( ) : value.record.status ===1|| value.record.status == 1 && Number(value.record.beginTime) > Math.ceil(new Date().getTime / 1000) ? (
@@ -2031,7 +2037,12 @@ export default {
</div> </div>
</a-select-option> </a-select-option>
<a-select-option value="基础信息" label="基础信息"> <a-select-option value="基础信息" label="基础信息">
<router-link to="/taskpage">基础信息</router-link> <div onClick={()=>{
router.push({
path: "/taskpage",
});
storage.set("projectId", value.record.projectId);
}}>基础信息</div>
</a-select-option> </a-select-option>
</a-select> </a-select>
) : value.record.status === -1 ? ( ) : value.record.status === -1 ? (
@@ -2069,7 +2080,15 @@ export default {
</div> </div>
</a-select-option> </a-select-option>
<a-select-option value="基础信息" label="基础信息"> <a-select-option value="基础信息" label="基础信息">
<div onClick={()=>{
router.push({
path: "/taskpage",
});
storage.set("projectId", value.record.projectId);
}}>基础信息</div>
{/**
<router-link to="/taskpage">基础信息</router-link> <router-link to="/taskpage">基础信息</router-link>
*/}
</a-select-option> </a-select-option>
</a-select> </a-select>
) : ( ) : (

View File

@@ -480,7 +480,10 @@
> >
编辑 编辑
</span> </span>
<span style="color: #4ea6ff; cursor: pointer"> <span
style="color: #4ea6ff; cursor: pointer"
@click="showDelete()"
>
删除 删除
</span> </span>
</div> </div>
@@ -753,7 +756,7 @@ import * as apiinvist from "../../api/indexInvist";
import * as apivote from "../../api/indexVote"; import * as apivote from "../../api/indexVote";
import * as apistage from "../../api/indexStage"; import * as apistage from "../../api/indexStage";
import draggable from "vuedraggable"; import draggable from "vuedraggable";
import { storage } from "../../api/storage";
const drawercolumns = [ const drawercolumns = [
{ {
title: "项目名称", title: "项目名称",
@@ -812,6 +815,7 @@ export default {
}, },
setup() { setup() {
const state = reactive({ const state = reactive({
projectId: storage.get("projectId") ? storage.get("projectId") : null,
projectNameList: [ projectNameList: [
{ {
id: 1, id: 1,
@@ -992,6 +996,7 @@ export default {
selectRow: [], //选择行 selectRow: [], //选择行
selectAll: 0, //0未选择1全选2部分选择 selectAll: 0, //0未选择1全选2部分选择
}); });
console.log("projectId", state.projectId);
const selectProjectName = (value, index) => { const selectProjectName = (value, index) => {
console.log("value", value, index); console.log("value", value, index);
}; };
@@ -1208,14 +1213,8 @@ export default {
.then((res) => { .then((res) => {
if (res.status == 200) { if (res.status == 200) {
console.log("22222", res.data.data.stageList); console.log("22222", res.data.data.stageList);
let leng = res.data.data.stageList.length;
let arr = let arr = res.data.data.stageList[leng - 1].taskList;
res.data.data.stageList[res.data.data.stageList.length - 1]
.taskList;
console.log(
"res.data.data.stageList[91].taskList",
res.data.data.stageList[92].taskList
);
getTableData(arr); getTableData(arr);
} }
}) })

File diff suppressed because it is too large Load Diff