feat:修改学习路径操作

This commit is contained in:
李晓鸽
2022-11-03 15:48:47 +08:00
parent e4e6af2bfb
commit ef49b4a70b
47 changed files with 3445 additions and 2902 deletions

43
package-lock.json generated
View File

@@ -14,8 +14,10 @@
"element-plus": "^2.2.17",
"jquery": "^3.6.1",
"qs": "^6.11.0",
"sortablejs": "^1.15.0",
"vue": "^3.2.13",
"vue-router": "^4.0.3",
"vuedraggable": "^4.1.0",
"vuex": "^4.0.0"
},
"devDependencies": {
@@ -9658,6 +9660,11 @@
"websocket-driver": "^0.7.4"
}
},
"node_modules/sortablejs": {
"version": "1.15.0",
"resolved": "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.15.0.tgz",
"integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w=="
},
"node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
@@ -10601,6 +10608,22 @@
"node": ">=0.10.0"
}
},
"node_modules/vuedraggable": {
"version": "4.1.0",
"resolved": "https://registry.npmmirror.com/vuedraggable/-/vuedraggable-4.1.0.tgz",
"integrity": "sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==",
"dependencies": {
"sortablejs": "1.14.0"
},
"peerDependencies": {
"vue": "^3.0.1"
}
},
"node_modules/vuedraggable/node_modules/sortablejs": {
"version": "1.14.0",
"resolved": "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.14.0.tgz",
"integrity": "sha512-pBXvQCs5/33fdN1/39pPL0NZF20LeRbLQ5jtnheIPN9JQAaufGjKdWduZn4U7wCtVuzKhmRkI0DFYHYRbB2H1w=="
},
"node_modules/vuex": {
"version": "4.0.2",
"resolved": "https://registry.npmmirror.com/vuex/-/vuex-4.0.2.tgz",
@@ -18839,6 +18862,11 @@
"websocket-driver": "^0.7.4"
}
},
"sortablejs": {
"version": "1.15.0",
"resolved": "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.15.0.tgz",
"integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w=="
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
@@ -19589,6 +19617,21 @@
}
}
},
"vuedraggable": {
"version": "4.1.0",
"resolved": "https://registry.npmmirror.com/vuedraggable/-/vuedraggable-4.1.0.tgz",
"integrity": "sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==",
"requires": {
"sortablejs": "1.14.0"
},
"dependencies": {
"sortablejs": {
"version": "1.14.0",
"resolved": "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.14.0.tgz",
"integrity": "sha512-pBXvQCs5/33fdN1/39pPL0NZF20LeRbLQ5jtnheIPN9JQAaufGjKdWduZn4U7wCtVuzKhmRkI0DFYHYRbB2H1w=="
}
}
},
"vuex": {
"version": "4.0.2",
"resolved": "https://registry.npmmirror.com/vuex/-/vuex-4.0.2.tgz",

View File

@@ -14,8 +14,10 @@
"element-plus": "^2.2.17",
"jquery": "^3.6.1",
"qs": "^6.11.0",
"sortablejs": "^1.15.0",
"vue": "^3.2.13",
"vue-router": "^4.0.3",
"vuedraggable": "^4.1.0",
"vuex": "^4.0.0"
},
"devDependencies": {

View File

@@ -75,7 +75,7 @@ export default defineComponent({
flex: 1 1 auto;
// flex-shrink: 0;
display: flex;
overflow-y: scroll;
overflow-y: auto;
// display: flex;
// flex: 1 1 auto;
width: calc(100% - 40px);

View File

@@ -59,7 +59,8 @@ export const getRouterDetail = (routerId) => http.get('/admin/router/detail', {
routerId: routerId,
}
});
//添加学员
export const addStudent = (obj) => http.post('/admin/router/addStudent', obj);

View File

@@ -345,14 +345,14 @@ textarea {
.drawerMain {
min-width: 700px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
height: 100%;
.contentMain {
flex: 1;
overflow-y: scroll;
overflow-y: auto;
}
}
@@ -376,7 +376,7 @@ textarea {
.drawerMain {
min-width: 700px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
}
@@ -392,7 +392,7 @@ textarea {
.ant-modal {
height: calc(100% - 200px);
background-color: rgba(255, 255, 255, 1);
// overflow-y: scroll;
// overflow-y: auto;
min-width: 900px;
max-width: 1300px;
padding: 0;
@@ -428,7 +428,7 @@ textarea {
.modalMain {
height: 0px;
flex: 1 1 auto;
overflow-y: scroll;
overflow-y: auto;
margin-top: 7px;
margin: 0px 52px;

View File

@@ -1,37 +1,51 @@
<template>
<div class="openPages">
<div
v-for="(value, index) in openList"
:key="index"
style="position: relative"
<draggable
v-model="openList"
chosenClass="chosen"
forceFallback="true"
group="people"
animation="1000"
@start="onStart"
@end="onEnd"
:list="openList"
style="display: flex"
>
<router-link
:to="value.href"
class="openItems"
:style="{ background: value.active ? '#f5f7fa' : '' }"
>
<div
:style="{
color: value.active
? 'rgba(64, 158, 255, 1)'
: 'rgba(135, 139, 146, 1)',
}"
>
{{ value.pagename }}
<template #item="{ element }">
<div style="position: relative">
<router-link
:to="element.href"
class="openItems"
:style="{ background: element.active ? '#f5f7fa' : '' }"
>
<div
:style="{
color: element.active
? 'rgba(64, 158, 255, 1)'
: 'rgba(135, 139, 146, 1)',
}"
>
{{ element.pagename }}
</div>
</router-link>
<div class="close" @click.stop="closePage(element)">
<img src="../assets/images/openPages/close.png" />
</div>
</div>
</router-link>
<div class="close" @click.stop="closePage(value)">
<img src="../assets/images/openPages/close.png" />
</div>
</div>
</template>
</draggable>
</div>
</template>
<script>
import { reactive, toRefs } from "vue";
import { useStore } from "vuex";
import { useRouter } from "vue-router";
import draggable from "vuedraggable";
export default {
name: "OpenPages",
components: {
draggable,
},
setup() {
const store = useStore();
const $router = useRouter();
@@ -69,7 +83,7 @@ export default {
},
};
</script>
<style scoped lang="scss">
<style lang="scss">
.openPages {
width: 100%;
// height: 50px;

View File

@@ -709,7 +709,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
// overflow-x: scroll;
// overflow-x: auto;
display: flex;
flex-direction: column;
height: 100%;

View File

@@ -57,7 +57,7 @@
<span style="margin-right: 3px">讨论设置</span>
</div>
<div class="btnbox">
<a-checkbox v-model:checked="checkedC1">允许</a-checkbox>
<a-checkbox v-model:checked="checkedC1">允许</a-checkbox>
</div>
</div>
</div>
@@ -69,7 +69,7 @@
</div>
</a-drawer>
</template>
<script>
<script>
import { reactive, toRefs, ref } from "vue";
import * as api from "../../api/indexDiscuss";
import { message } from "ant-design-vue";
@@ -114,10 +114,10 @@ export default {
const afterVisibleChange = (bool) => {
console.log("state", bool);
};
//创建讨论
const createDiscuss = () => {
if(!state.inputV1) return message.warning("请输入讨论名称");
if (!state.inputV1) return message.warning("请输入讨论名称");
let obj = {
discussName: state.inputV1, //讨论名称
discussExplain: state.textV1, //讨论说明
@@ -141,7 +141,6 @@ export default {
message.success("创建成功");
ctx.emit("update:adddiscussVisible", false);
}, 1000);
})
.catch((err) => {
console.log("创建失败", err);
@@ -157,7 +156,7 @@ export default {
},
};
</script>
<style lang="scss">
<style lang="scss">
.ant-table-striped :deep(.table-striped) td {
background-color: #fafafa !important;
}
@@ -237,15 +236,15 @@ export default {
}
.ant-input-textarea-show-count {
position: relative;
}
.ant-input-textarea-show-count::after {
}
.ant-input-textarea-show-count::after {
position: absolute;
right: 10px;
bottom: 0px;
}
.ant-input {
border-radius: 8px;
}
}
.ant-input {
border-radius: 8px;
}
}
}
}
@@ -282,4 +281,3 @@ export default {
}
}
</style>

View File

@@ -104,7 +104,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -1051,7 +1051,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -139,7 +139,7 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
.AddLevelImpStu {
.drawerMain {
min-width: 450px;
@@ -164,7 +164,7 @@ export default {
}
}
.main {
overflow: scroll;
overflow: auto;
.minatitl {
display: flex;
.up1 {
@@ -419,4 +419,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -89,7 +89,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -223,7 +223,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -78,7 +78,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -82,7 +82,7 @@ export default {
};
</script>
<style scoped lang="scss" >
<style scoped lang="scss">
// .drawerStyle {
// .ant-drawer-content-wrapper {
// // max-width: 1000px;
@@ -99,7 +99,7 @@ export default {
.drawerMain {
min-width: 400px;
margin: 0px 32px 0px 32px;
// overflow-x: scroll;
// overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -189,4 +189,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -385,7 +385,7 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
// .drawerStyle {
// .ant-drawer-content-wrapper {
// // max-width: 1000px;
@@ -513,7 +513,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.noticebox {
@@ -820,4 +820,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -722,7 +722,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -831,7 +831,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -25,7 +25,7 @@
placeholder="请输入姓名"
/>
</div>
<div class="btns">
<div class="btn btn1" style="margin-right: 20px">
<div class="img1"></div>
@@ -67,18 +67,18 @@
<div class="tableBox" style="margin-top: 20px; margin-bottom: 100px">
<a-table
style="border: 1px solid #f2f6fe"
:columns="tablecolumns"
:data-source="tabledata"
:loading="tableDataTotal === -1 ? true : false"
expandRowByClick="true"
:scroll="{ x: 900 }"
@expand="expandTable"
:pagination="false"
:row-selection="{
columnWidth: 30,
selectedRowKeys: selectedRowKeys,
onChange: onSelectChange,
}"
:columns="tablecolumns"
:data-source="tabledata"
:loading="tableDataTotal === -1 ? true : false"
expandRowByClick="true"
:scroll="{ x: 900 }"
@expand="expandTable"
:pagination="false"
:row-selection="{
columnWidth: 30,
selectedRowKeys: selectedRowKeys,
onChange: onSelectChange,
}"
/>
<div class="pa">
<a-pagination
@@ -104,11 +104,11 @@
centered="true"
:footer="null"
wrapClassName="FacMa"
>
>
<div class="head">
<div class="inhead">
<div class="left">
<img src="../../assets/images/coursewareManage/notice.png"/>
<img src="../../assets/images/coursewareManage/notice.png" />
<div class="tis">提示</div>
</div>
<div class="right" @click="closeModal"></div>
@@ -123,7 +123,6 @@
<stu-add v-model:Stuvisible="Stuvisible" />
</div>
</a-drawer>
</template>
<script>
@@ -145,7 +144,7 @@ export default {
name: null,
showmodal: false,
closable: false, //modal右上角的关闭按钮
pageSize: 10,
currentPage: 1,
tableDataTotal: 100,
@@ -279,12 +278,11 @@ export default {
const showStuAdd = () => {
state.Stuvisible = true;
};
return {
...toRefs(state),
closeDrawer,
showModal,
closeModal,
showStuAdd,
@@ -293,12 +291,12 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
.MemberList {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
//overflow-x: scroll;
//overflow-x: auto;
display: flex;
flex-direction: column;
@@ -388,7 +386,7 @@ export default {
}
.btn1 {
background: #409EFF;
background: #409eff;
color: #ffffff;
}
@@ -396,8 +394,8 @@ export default {
.btn2 {
background: #ffffff;
color: #409EFF;
border: 1px solid #409EFF;
color: #409eff;
border: 1px solid #409eff;
}
}
}
@@ -441,7 +439,7 @@ export default {
}
.btn1 {
background: #409EFF;
background: #409eff;
color: #ffffff;
}
@@ -449,8 +447,8 @@ export default {
.btn2 {
background: #ffffff;
margin-right: 20px;
color:#409EFF;
border: 1px solid #409EFF;
color: #409eff;
border: 1px solid #409eff;
}
}
@@ -519,11 +517,11 @@ export default {
.ant-table-thead > tr > th {
background-color: rgba(239, 244, 252, 1) !important;
color: rgba(0, 0, 0, 0.8500);
color: rgba(0, 0, 0, 0.85);
}
.ant-table-cell {
color: rgba(0, 0, 0, 0.6500);
color: rgba(0, 0, 0, 0.65);
}
.ant-table-selection-column {
@@ -545,11 +543,10 @@ export default {
.ant-table-tbody
> tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
> td {
background: #f6f9fd;
}
.ant-table-tbody > tr > td {
border-bottom: 1px solid rgba(240, 244, 254, 1);
border-bottom: 1px solid rgba(240, 244, 254, 1);
}
.pa {
// left: 0;
@@ -599,4 +596,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -78,17 +78,17 @@
}"
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
</div>
</a-tab-pane>
@@ -160,16 +160,16 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
</div>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
</div>
</div>
</div>
</div>
@@ -243,16 +243,16 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
</div>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
</div>
</div>
</div>
</a-tab-pane>
@@ -306,8 +306,8 @@
</div>
</a-drawer>
</template>
<script>
<script>
import { reactive, toRefs } from "vue";
export default {
name: "OwnPower",
@@ -779,8 +779,8 @@ export default {
},
};
</script>
<style lang="scss" >
<style lang="scss">
.ownpower {
// .ant-drawer-content-wrapper {
// // max-width: 1000px;
@@ -794,7 +794,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -1003,25 +1003,25 @@ export default {
// align-items: center;
// margin-top: -2px;
// }
.tableBox{
.tableBox {
.pa {
// left: 0;
margin-top: 15px;
width: 100%;
// height: 20px;
// background-color: red;
display: flex;
justify-content: center;
// position: absolute;
// bottom: 20px;
.ant-pagination-item,
.ant-pagination-prev,
.ant-pagination-next,
.ant-pagination-options {
margin-bottom: 10px;
// left: 0;
margin-top: 15px;
width: 100%;
// height: 20px;
// background-color: red;
display: flex;
justify-content: center;
// position: absolute;
// bottom: 20px;
.ant-pagination-item,
.ant-pagination-prev,
.ant-pagination-next,
.ant-pagination-options {
margin-bottom: 10px;
}
}
}
}
}
.tab2 {
@@ -1230,4 +1230,4 @@ export default {
background-color: #4ea6ff !important;
}
}
</style>
</style>

View File

@@ -786,7 +786,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -329,7 +329,7 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
.me {
.ant-modal-body {
padding: 0px;
@@ -461,7 +461,7 @@ export default {
// overflow: auto;
min-width: 500px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -670,4 +670,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -17,12 +17,14 @@
</div>
<div class="main">
<div class="one">
<span class="left">班级名称</span>
<span class="right">产品经理管理-腾飞班1</span>
<span class="left">班级名称</span>
<span class="right">产品经理管理-腾飞班1</span>
</div>
<div class="one second">
<span class="left">说明</span>
<span class="right">班级说明此班级为产品经理班级其他岗位不要进入请大家按照规定时间进行任务学习</span>
<span class="left">说明</span>
<span class="right"
>班级说明此班级为产品经理班级其他岗位不要进入请大家按照规定时间进行任务学习</span
>
</div>
</div>
<div class="btnn">
@@ -30,7 +32,6 @@
</div>
</div>
</a-drawer>
</template>
<script>
@@ -63,7 +64,7 @@ export default {
};
</script>
<style scoped lang="scss" >
<style scoped lang="scss">
.promess {
.ant-drawer-content-wrapper {
// max-width: 1000px;
@@ -77,7 +78,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -101,13 +102,13 @@ export default {
margin-top: 38px;
margin-left: 53px;
.left {
color: rgba(51, 51, 51, 1);
font-size: 14px;
color: rgba(51, 51, 51, 1);
font-size: 14px;
}
.right {
color: rgba(102, 102, 102, 1);
font-size: 14px;
margin-left: 12px;
color: rgba(102, 102, 102, 1);
font-size: 14px;
margin-left: 12px;
}
}
.second {
@@ -137,4 +138,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -80,18 +80,17 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
</div>
</div>
</a-tab-pane>
<a-tab-pane key="2" tab="添加组织" force-render>
@@ -162,18 +161,17 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
</div>
</div>
</div>
</div>
</div>
</a-tab-pane>
@@ -246,18 +244,17 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
</div>
</div>
</div>
</div>
</a-tab-pane>
</a-tabs>
@@ -789,7 +786,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -80,18 +80,17 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
</div>
</div>
</a-tab-pane>
<a-tab-pane key="2" tab="添加组织" force-render>
@@ -162,18 +161,17 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
</div>
</div>
</div>
</div>
</div>
</a-tab-pane>
@@ -246,18 +244,17 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
</div>
</div>
</div>
</div>
</a-tab-pane>
</a-tabs>
@@ -789,7 +786,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -59,16 +59,16 @@
</div>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
<!-- <div class="tab" style="margin-top: 20px; margin-bottom: 100px">
@@ -329,7 +329,7 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
.me {
.ant-modal-body {
padding: 0px;
@@ -350,7 +350,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-x: scroll;
// overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -553,4 +553,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -80,16 +80,16 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize"
:current="currentPage"
:total="tableDataTotal"
class="pagination"
/>
</div>
</div>
</div>
</a-tab-pane>
@@ -161,16 +161,16 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
</div>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize1"
:current="currentPage1"
:total="tableDataTotal1"
class="pagination"
/>
</div>
</div>
</div>
</div>
@@ -244,16 +244,16 @@
/>
<div class="tableBox">
<div class="pa">
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
</div>
<a-pagination
showSizeChanger="true"
showQuickJumper="true"
hideOnSinglePage="true"
:pageSize="pageSize2"
:current="currentPage2"
:total="tableDataTotal2"
class="pagination"
/>
</div>
</div>
</div>
</a-tab-pane>
@@ -786,7 +786,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -786,7 +786,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -1,4 +1,4 @@
<template>
<template>
<a-drawer
:visible="Seevisible"
class="drawerStyle seestu"
@@ -69,60 +69,76 @@
</div>
</div>
<div class="mainbox">
<a-collapse v-model:activeKey="stageListActive" >
<a-collapse v-model:activeKey="stageListActive">
<template #expandIcon="{ isActive }">
<img style="margin-right: 20px"
:src="
isActive
? require('../../assets/images/studentimg/open.png')
: require('../../assets/images/studentimg/close.png')
" />
<div></div>
<img
style="margin-right: 20px"
:src="
isActive
? require('../../assets/images/studentimg/open.png')
: require('../../assets/images/studentimg/close.png')
"
/>
<div></div>
</template>
<a-collapse-panel v-for="(value, index) in stageList" :key="index" :header="value.text">
<div class="rowclass" v-for="(item, key) in value.children" :key="key">
<a-collapse-panel
v-for="(value, index) in stageList"
:key="index"
:header="value.text"
>
<div
class="rowclass"
v-for="(item, key) in value.children"
:key="key"
>
<div class="leftclass">
<div><img :src="
item.course === '在线'
? require('../../assets/images/leveladd/zai.png')
: item.course === '面授'
? require('../../assets/images/leveladd/mian.png')
: item.course === '案例'
? require('../../assets/images/leveladd/an.png')
: item.course === '作业'
? require('../../assets/images/leveladd/zuo.png')
: item.course === '考试'
? require('../../assets/images/leveladd/kao.png')
: item.course === '直播'
? require('../../assets/images/leveladd/zhi.png')
: item.course === '外链'
? require('../../assets/images/leveladd/wai.png')
: item.course === '讨论'
? require('../../assets/images/leveladd/tao.png')
: item.course === '活动'
? require('../../assets/images/leveladd/huo.png')
: item.course === '测评'
? require('../../assets/images/leveladd/ce.png')
: item.course === '调研'
? require('../../assets/images/leveladd/diao.png')
: item.course === '投票'
? require('../../assets/images/leveladd/tou.png')
: null
" /></div>
<div class="text1">{{item.course}}</div>
<div class="text2">{{item.name}}</div>
<div>
<img
:src="
item.course === '在线'
? require('../../assets/images/leveladd/zai.png')
: item.course === '面授'
? require('../../assets/images/leveladd/mian.png')
: item.course === '案例'
? require('../../assets/images/leveladd/an.png')
: item.course === '作业'
? require('../../assets/images/leveladd/zuo.png')
: item.course === '考试'
? require('../../assets/images/leveladd/kao.png')
: item.course === '直播'
? require('../../assets/images/leveladd/zhi.png')
: item.course === '外链'
? require('../../assets/images/leveladd/wai.png')
: item.course === '讨论'
? require('../../assets/images/leveladd/tao.png')
: item.course === '活动'
? require('../../assets/images/leveladd/huo.png')
: item.course === '测评'
? require('../../assets/images/leveladd/ce.png')
: item.course === '调研'
? require('../../assets/images/leveladd/diao.png')
: item.course === '投票'
? require('../../assets/images/leveladd/tou.png')
: null
"
/>
</div>
<div class="text1">{{ item.course }}</div>
<div class="text2">{{ item.name }}</div>
</div>
<div class="alreadyclass">
<div class="alimg">
<img :src="
item.complete === '已完成'
? require('../../assets/images/studentimg/complete.png')
: require('../../assets/images/studentimg/notice.png')
"/>
<img
:src="
item.complete === '已完成'
? require('../../assets/images/studentimg/complete.png')
: require('../../assets/images/studentimg/notice.png')
"
/>
</div>
<div class="altext">{{item.complete}}</div>
<div class="altext">{{ item.complete }}</div>
</div>
</div>
</div>
</a-collapse-panel>
</a-collapse>
</div>
@@ -136,7 +152,7 @@
</template>
<script>
import { reactive, toRefs} from "vue";
import { reactive, toRefs } from "vue";
import ProMess from "./ProMess.vue";
export default {
name: "SeeStu",
@@ -149,72 +165,72 @@ export default {
},
setup(props, ctx) {
const state = reactive({
Provisible: false,
showDown: true,
showDown1: false,
stageList: [
{
text: "阶段1腾飞班阶段1",
children: [
{
course: "在线",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "直播",
name: "管理直播课",
complete: "已完成",
},
{
course: "面授",
name: "管理面授课",
complete: "未完成",
},
{
course: "活动",
name: "管理活动",
complete: "未完成",
},
{
course: "作业",
name: "管理者作业",
complete: "未完成",
},
],
},
{
text: "阶段2腾飞班阶段2",
children: [
{
course: "考试",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "案例",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "外链",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "讨论",
name: "如何成为一个产品经理",
complete: "未完成",
},
{
course: "测评",
name: "如何成为一个产品经理",
complete: "未完成",
},
],
},
],
stageListActive: 0,
Provisible: false,
showDown: true,
showDown1: false,
stageList: [
{
text: "阶段1腾飞班阶段1",
children: [
{
course: "在线",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "直播",
name: "管理直播课",
complete: "已完成",
},
{
course: "面授",
name: "管理面授课",
complete: "未完成",
},
{
course: "活动",
name: "管理活动",
complete: "未完成",
},
{
course: "作业",
name: "管理者作业",
complete: "未完成",
},
],
},
{
text: "阶段2腾飞班阶段2",
children: [
{
course: "考试",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "案例",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "外链",
name: "如何成为一个产品经理",
complete: "已完成",
},
{
course: "讨论",
name: "如何成为一个产品经理",
complete: "未完成",
},
{
course: "测评",
name: "如何成为一个产品经理",
complete: "未完成",
},
],
},
],
stageListActive: 0,
});
const closeDrawer = () => {
ctx.emit("update:Seevisible", false);
@@ -245,7 +261,7 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
.seestu {
.ant-drawer-content-wrapper {
// max-width: 1000px;
@@ -259,7 +275,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -361,7 +377,7 @@ export default {
//border: 1px solid rgba(221, 238, 255, 1);
//border-radius: 6px;
.ant-collapse {
background-color: #FFFFFF;
background-color: #ffffff;
border: 0;
}
.ant-collapse-content > .ant-collapse-content-box {
@@ -448,4 +464,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -1050,7 +1050,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
// overflow-y: scroll;
// overflow-y: auto;
display: flex;
flex-direction: column;

View File

@@ -57,7 +57,6 @@
<!-- 创建小组抽屉 -->
<add-group v-model:Avisible="Avisible" />
</a-drawer>
</template>
<script>
@@ -76,7 +75,7 @@ export default {
const state = reactive({
Avisible: false,
value1: "",
value2:"",
value2: "",
value3: "",
});
const closeDrawer = () => {
@@ -120,7 +119,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -129,12 +129,12 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
.TaskFaceImpStu {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -353,4 +353,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -365,7 +365,7 @@ export default {
.drawerMain {
min-width: 520px;
margin: 0px 32px 0px 32px;
// overflow-x: scroll;
// overflow-x: auto;
display: flex;
flex-direction: column;
position: relative;

View File

@@ -318,11 +318,11 @@ export default {
// }
// }
.TimeManage {
// overflow-x: scroll;
// overflow-x: auto;
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.noticebox {

View File

@@ -17,73 +17,86 @@
</div>
<div class="main">
<div class="onerow">
<div class="assname">评估名称</div>
<div class="asscontent">产品经理面授课评估</div>
<div class="assname">评估名称</div>
<div class="asscontent">产品经理面授课评估</div>
</div>
<div class="onerow" style="margin-top: 30px">
<div class="assname">评估说明</div>
<div class="asscontent">-</div>
<div class="assname">评估说明</div>
<div class="asscontent">-</div>
</div>
<div class="assessbox" style="margin-top: 30px">
<div class="box1">
<div class="asstype">评估类型</div>
<div class="typename">单选</div>
<div class="box1">
<div class="asstype">评估类型</div>
<div class="typename">单选</div>
</div>
<div class="box1" style="margin-left: 64px">
<div class="asstype">题干</div>
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
这个课程你觉得对你有用吗
</div>
<div class="box1" style="margin-left: 64px">
<div class="asstype">题干</div>
<div style="color: rgba(153, 153, 153, 1);font-size: 14px">这个课程你觉得对你有用吗</div>
</div>
<a-radio-group v-model:value="value">
<div class="box1" style="margin-left: 55px; margin-top: 20px">
<div class="asstype">选择1</div>
<a-radio :value="1">有用</a-radio>
</div>
<a-radio-group v-model:value="value">
<div class="box1" style="margin-left: 55px;margin-top: 20px">
<div class="asstype">选择1</div>
<a-radio :value="1">有用</a-radio>
</div>
<div class="box1" style="margin-left: 55px;margin-top: 20px;margin-bottom: 30px">
<div class="asstype">选择2</div>
<a-radio :value="2">没用</a-radio>
</div>
</a-radio-group>
<div
class="box1"
style="margin-left: 55px; margin-top: 20px; margin-bottom: 30px"
>
<div class="asstype">选择2</div>
<a-radio :value="2">没用</a-radio>
</div>
</a-radio-group>
</div>
<div class="assessbox" style="margin-top: 30px">
<div class="box1">
<div class="asstype">评估类型</div>
<div class="typename">问答题</div>
<div class="box1">
<div class="asstype">评估类型</div>
<div class="typename">问答题</div>
</div>
<div class="box1" style="margin-left: 64px">
<div class="asstype">标题</div>
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
对这个课程有什么建议吗
</div>
<div class="box1" style="margin-left: 64px">
<div class="asstype">标题</div>
<div style="color: rgba(153, 153, 153, 1);font-size: 14px">对这个课程有什么建议吗</div>
</div>
<div class="box1" style="margin-left: 64px;margin-top: 20px;margin-bottom: 30px">
<div class="asstype">描述</div>
<div style="color: rgba(51, 51, 51, 1);font-size: 14px">希望以后这样的课程能够躲开让我们多多了解</div>
</div>
<div
class="box1"
style="margin-left: 64px; margin-top: 20px; margin-bottom: 30px"
>
<div class="asstype">描述</div>
<div style="color: rgba(51, 51, 51, 1); font-size: 14px">
希望以后这样的课程能够躲开让我们多多了解
</div>
</div>
</div>
<div class="assessbox" style="margin-top: 30px">
<div class="box1">
<div class="asstype">评估类型</div>
<div class="typename">评分题</div>
<div class="box1">
<div class="asstype">评估类型</div>
<div class="typename">评分题</div>
</div>
<div class="box1" style="margin-left: 64px">
<div class="asstype">标题</div>
<div style="color: rgba(153, 153, 153, 1); font-size: 14px">
请给当前课程打分
</div>
<div class="box1" style="margin-left: 64px">
<div class="asstype">标题</div>
<div style="color: rgba(153, 153, 153, 1);font-size: 14px">请给当前课程打分</div>
</div>
<div class="lastbox">
<div class="sorcetext">非常不满意</div>
<div class="sorcebox">
<div class="numbox" >1</div>
<div class="numbox">2</div>
<div class="numbox">3</div>
<div class="numbox">4</div>
<div class="numbox">5</div>
<div class="numbox">6</div>
<div class="numbox">7</div>
<div class="numbox">8</div>
<div class="numbox1">9</div>
<div class="numbox1">10</div>
</div>
<div class="sorcetext">非常满意</div>
</div>
<div class="lastbox">
<div class="sorcetext">非常不满意</div>
<div class="sorcebox">
<div class="numbox">1</div>
<div class="numbox">2</div>
<div class="numbox">3</div>
<div class="numbox">4</div>
<div class="numbox">5</div>
<div class="numbox">6</div>
<div class="numbox">7</div>
<div class="numbox">8</div>
<div class="numbox1">9</div>
<div class="numbox1">10</div>
</div>
<div class="sorcetext">非常满意</div>
</div>
</div>
</div>
<div class="btnn">
@@ -131,7 +144,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -160,13 +173,13 @@ export default {
margin-top: 10px;
margin-left: 10px;
.assname {
font-size: 16px;
color: #333333;
font-weight: 500;
font-size: 16px;
color: #333333;
font-weight: 500;
}
.asscontent {
color: #999999;
font-size: 16px;
color: #999999;
font-size: 16px;
}
}
.assessbox {
@@ -175,66 +188,65 @@ export default {
display: flex;
flex-direction: column;
.box1 {
display: flex;
margin-top: 20px;
margin-left: 36px;
align-items: center;
.asstype {
color: rgba(51, 51, 51, 1);
font-size: 14px;
font-weight: 500;
}
.typename {
width: 80px;
height: 32px;
//margin-left: 10px;
border-radius: 4px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
margin-top: 20px;
margin-left: 36px;
justify-content: center;
align-items: center;
.asstype {
color: rgba(51, 51, 51, 1);
font-size: 14px;
font-weight: 500;
}
.typename {
width: 80px;
height: 32px;
//margin-left: 10px;
border-radius: 4px;
border: 1px solid rgba(64, 158, 255, 1);
display: flex;
justify-content: center;
align-items: center;
color: rgba(64, 158, 255, 1);
font-size: 14px;
background: rgba(64,158,255,0.1);
}
color: rgba(64, 158, 255, 1);
font-size: 14px;
background: rgba(64, 158, 255, 0.1);
}
}
.lastbox {
display: flex;
align-items: center;
margin-left: 30px;
.sorcetext {
color: rgba(153, 153, 153, 1);
font-size: 14px;
}
.sorcebox {
display: flex;
align-items: center;
margin-left: 30px;
.sorcetext {
color: rgba(153, 153, 153, 1);
font-size: 14px;
.numbox {
width: 32px;
height: 32px;
display: flex;
justify-content: center;
align-items: center;
background: rgba(64, 158, 255, 1);
color: #ffffff;
font-size: 14px;
border-radius: 4px;
margin: 20px 5px;
cursor: pointer;
}
.sorcebox {
display: flex;
.numbox {
width: 32px;
height: 32px;
display: flex;
justify-content: center;
align-items: center;
background: rgba(64, 158, 255, 1);
color: #FFFFFF;
font-size: 14px;
border-radius: 4px;
margin: 20px 5px;
cursor: pointer;
}
.numbox1 {
width: 32px;
height: 32px;
display: flex;
justify-content: center;
align-items: center;
border: 1px solid rgba(151, 151, 151, 0.29);
color: rgba(0, 0, 0, 0.6500);
margin: 20px 5px;
cursor: pointer;
border-radius: 4px;
}
.numbox1 {
width: 32px;
height: 32px;
display: flex;
justify-content: center;
align-items: center;
border: 1px solid rgba(151, 151, 151, 0.29);
color: rgba(0, 0, 0, 0.65);
margin: 20px 5px;
cursor: pointer;
border-radius: 4px;
}
}
}
}
}

View File

@@ -89,7 +89,7 @@ export default {
};
</script>
<style scoped lang="scss" >
<style scoped lang="scss">
// .drawerStyle {
// .ant-drawer-content-wrapper {
// // max-width: 1000px;
@@ -106,7 +106,7 @@ export default {
.drawerMain {
min-width: 450px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -238,4 +238,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -366,7 +366,7 @@ export default {
};
</script>
<style lang="scss" >
<style lang="scss">
// .drawerStyle {
// .ant-drawer-content-wrapper {
// // max-width: 1000px;
@@ -486,7 +486,7 @@ export default {
.drawerMain {
min-width: 550px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {
@@ -675,4 +675,4 @@ export default {
}
}
}
</style>
</style>

View File

@@ -6,8 +6,9 @@ export default createStore({
pagename: "学习路径",
href: "/learningpath",
active: true,
},]
},],
routerId: null,
},
getters: {
@@ -16,7 +17,11 @@ export default createStore({
chengeOpenpages(state, list) {
// console.log('list', list)
state.openpages = list
}
},
chengeRouterId(state, routerId) {
// console.log('list', list)
state.routerId = routerId
},
},
actions: {
},

View File

@@ -20,7 +20,6 @@ export default {
name: "TestPage",
setup() {
const state = reactive({});
return {
...toRefs(state),
};
@@ -30,14 +29,10 @@ export default {
$(document).ready(function () {
var range = { x: 0, y: 0 }; //鼠标元素偏移量
var lastPos = { x: 0, y: 0, x1: 0, y1: 0 }; //拖拽对象的四个坐标
var tarPos = { x: 0, y: 0, x1: 0, y1: 0 }; //目标元素对象的坐标初始化
var theDiv = null,
move = false;
var choose = false; //拖拽对象 拖拽状态 选中状态
// var theDivId = 0;
// var theDivHeight = 0;
var theDivHalf = 0;
@@ -101,7 +96,6 @@ $(document).ready(function () {
if (!choose) {
return false;
}
if (!move) {
//恢复对象的初始样式

View File

@@ -1042,36 +1042,36 @@ export default {
<div
class="jc"
onClick={() => {
state.out1 = true;
state.pathName = text.record.manager;
// state.pathBg = "";
// state.organizationSelectName = null;
// state.organizationSelectId = null;
state.pathIntro = text.record.remark;
state.editPathId = text.record.id;
// state.out1 = true;
// state.pathName = text.record.manager;
// // state.pathBg = "";
// // state.organizationSelectName = null;
// // state.organizationSelectId = null;
// state.pathIntro = text.record.remark;
// state.editPathId = text.record.id;
}}
>
编辑
</div>
</div>
) : (
<div></div>
)}
{text.record.state === "未发布" ? (
<div class="fb">
<div
style="cursor:pointer"
class="jc"
onClick={() => {
showCopyModal();
}}
>
复制
</div>
></div>
</div>
) : (
<div></div>
)}
{
// text.record.state === "未发布" ? (
// <div class="fb">
// <div
// style="cursor:pointer"
// class="jc"
// onClick={() => {
// showCopyModal();
// }}
// >
// 复制
// </div>
// </div>
// ) : (
// <div></div>
// )
}
</div>
<div class="tableSelect">
<div
@@ -1079,8 +1079,8 @@ export default {
onClick={() => {
router.push({
path: "/leveladd",
query: { routerId: text.record.id },
});
localStorage.setItem("routerId", text.record.id);
}}
>
管理
@@ -1220,13 +1220,26 @@ export default {
) : (
<div></div>
)}
{text.record.state === "未发布" ? (
{text.record.state === "已停用" ? (
<div>
<a-select
style="width: 50px;margin-top:2px;margin-right:20px;"
value="更多"
dropdownClassName="tabledropdown"
>
<a-select-option
value="复制"
label="复制"
style="padding-left:35px"
>
<div
onClick={() => {
showCopyModal();
}}
>
复制
</div>
</a-select-option>
<a-select-option
value="启用"
label="启用"

View File

@@ -258,7 +258,9 @@
</router-link>
</div>
<!-- 无数据显示快速创建 -->
<router-link to="/leveladddetail">
<router-link
:to="{ path: '/leveladddetail', query: { routerId: routerId } }"
>
<div
class="taskbox"
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
@@ -493,13 +495,10 @@
<button class="addd" @click="showImpStu">导入学员</button>
<div class="select">
<a-select
v-model:value="projectName"
style="width: 130px"
placeholder="更多操作"
value="更多操作"
:options="projectNameListt"
@change="selectProjectName"
allowClear
showSearch
></a-select>
</div>
</div>
@@ -899,7 +898,8 @@ import TimeManage from "../../components/drawers/TimeManage";
import TestManage from "../../components/drawers/TestManage";
import FaceManage from "../../components/drawers/FaceManage";
import WorkManage from "../../components/drawers/WorkManage";
import { useRoute } from "vue-router";
// import { useRoute } from "vue-router";
// import { useStore } from "vuex";
import * as api from "../../api/index1";
export default {
name: "LevelAdd",
@@ -916,9 +916,10 @@ export default {
},
methods: {},
setup() {
const routers = useRoute();
// const routers = useRoute();
// const store = useStore();
const state = reactive({
routerId: routers.query.routerId, //学习路径页面传的学习路径id
routerId: localStorage.getItem("routerId"), //学习路径页面传的学习路径id
gatename: null, //关卡名称
gatenamee: null, //学员管理关卡名称
deleteAll: false, //批量删除学员弹窗
@@ -1237,6 +1238,7 @@ export default {
},
],
});
console.log("store", state.routerId);
const selectProjectName = (value, index) => {
console.log("value", value, index);
if (value === "批量删除") {
@@ -1472,6 +1474,7 @@ export default {
});
};
//学员管理------------------------------------------------
return {
...toRefs(state),
selectProjectName,
@@ -2839,6 +2842,10 @@ export default {
}
}
}
.ant-select-selection-item {
padding-left: 15px;
color: #4ea6ff;
}
}
}
.talk {

View File

@@ -60,7 +60,7 @@
<div class="main">
<div class="inma">
<div class="name">
<div class="d" style="margin-top: 2px;margin-right:2px">
<div class="d" style="margin-top: 2px; margin-right: 2px">
<img
style="width: 10px; height: 10px"
src="../../assets/images/basicinfo/asterisk.png"
@@ -78,8 +78,15 @@
<div class="co">{{ value1.length }}/20</div>
</div>
<div class="name">
<div class="d" style="width: 10px;height: 10px;margin-top: 2px;margin-right:2px">
</div>
<div
class="d"
style="
width: 10px;
height: 10px;
margin-top: 2px;
margin-right: 2px;
"
></div>
<div class="fir">关卡说明</div>
<div class="input">
<a-textarea
@@ -822,7 +829,7 @@ export default {
//新建关卡
const editChapter = () => {
if(!state.value1) return message.warning("请输入关卡名称");
if (!state.value1) return message.warning("请输入关卡名称");
let obj = {
name: state.value1,
remark: state.value2,
@@ -845,25 +852,25 @@ export default {
.catch((err) => {
console.log("创建失败", err);
});
}
};
//编辑关卡
const updateChapter = () => {
let obj = {
chapterId: state.updateChapterID,
name: "",
remark:"",
remark: "",
routerId: 0,
};
api
.updateChapter(obj)
.then((res) => {
console.log("修改成功",res);
console.log("修改成功", res);
message.success("修改成功");
})
.catch((err) => {
console.log("修改失败",err);
})
console.log("修改失败", err);
});
};
const showDrawer = () => {
state.visible = true;
@@ -993,9 +1000,14 @@ export default {
<span style="color:#4EA6FF;margin-right:25px;cursor:pointer">
编辑
</span>
<span style="color:#4EA6FF;cursor:pointer" onClick={() => {
updateChapter();
}}>删除</span>
<span
style="color:#4EA6FF;cursor:pointer"
onClick={() => {
updateChapter();
}}
>
删除
</span>
</div>
</div>
);
@@ -1352,9 +1364,9 @@ export default {
width: 100px;
height: 40px;
border-radius: 4px;
border: 1px solid #409EFF;
border: 1px solid #409eff;
font-size: 14px;
color: #409EFF;
color: #409eff;
cursor: pointer;
background: #ffffff;
margin-right: 20px;
@@ -1367,7 +1379,7 @@ export default {
color: #fff;
cursor: pointer;
border: 0;
background: #409EFF;
background: #409eff;
}
}
}
@@ -1389,7 +1401,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1708,7 +1708,7 @@ export default {
.drawerMain {
min-width: 600px;
margin: 0px 32px 0px 32px;
overflow-x: scroll;
overflow-x: auto;
display: flex;
flex-direction: column;
.header {

View File

@@ -62,6 +62,22 @@
>
跳转
</div>
<draggable
v-model="draggableList"
chosenClass="chosen"
forceFallback="true"
group="people"
animation="1000"
@start="onStart"
@end="onEnd"
:list="draggableList"
>
<template #item="{ element }">
<div class="item" :key="element.id">
{{ element.name }}
</div>
</template>
</draggable>
</div>
</template>
<script>
@@ -76,12 +92,14 @@ import * as api from "../../api/index1";
// reader.readAsDataURL(img);
// }
import { useRouter } from "vue-router";
import draggable from "vuedraggable";
export default {
name: "SystemManage",
components: {
AddVote,
// LoadingOutlined,
// PlusOutlined,
draggable,
},
setup() {
const state = reactive({
@@ -91,38 +109,30 @@ export default {
loading: false,
fileList: [],
voteList: [
draggableList: [
{
id: 1,
stem: "题干一", //题干
options: [
{
id: 1,
option: "选项一",
imgUrl: "",
},
{
id: 2,
option: "选项二",
imgUrl: "",
},
],
name: "拖拽一",
},
{
id: 2,
stem: "题干二", //题干
options: [
{
id: 1,
option: "选项一",
imgUrl: "",
},
{
id: 2,
option: "选项二",
imgUrl: "",
},
],
name: "拖拽二",
},
{
id: 3,
name: "拖拽三",
},
{
id: 4,
name: "拖拽四",
},
{
id: 5,
name: "拖拽五",
},
{
id: 6,
name: "拖拽六",
},
],
});
@@ -226,6 +236,12 @@ export default {
right: 0px;
bottom: 0px;
}
.item {
width: 100px;
height: 50px;
background-color: pink;
border: 1px solid #000;
}
}
.drawerStyle {
.drawerMain {