diff --git a/package-lock.json b/package-lock.json index aeae90d7..265adf67 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9578,7 +9578,7 @@ }, "node_modules/sortablejs": { "version": "1.15.0", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz", + "resolved": "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.15.0.tgz", "integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==" }, "node_modules/source-map": { @@ -10524,7 +10524,7 @@ }, "node_modules/vuedraggable": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/vuedraggable/-/vuedraggable-4.1.0.tgz", + "resolved": "https://registry.npmmirror.com/vuedraggable/-/vuedraggable-4.1.0.tgz", "integrity": "sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==", "dependencies": { "sortablejs": "1.14.0" @@ -10535,7 +10535,7 @@ }, "node_modules/vuedraggable/node_modules/sortablejs": { "version": "1.14.0", - "resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.14.0.tgz", + "resolved": "https://registry.npmmirror.com/sortablejs/-/sortablejs-1.14.0.tgz", "integrity": "sha512-pBXvQCs5/33fdN1/39pPL0NZF20LeRbLQ5jtnheIPN9JQAaufGjKdWduZn4U7wCtVuzKhmRkI0DFYHYRbB2H1w==" }, "node_modules/vuex": { diff --git a/src/api/config.js b/src/api/config.js index f545226a..414e5c3b 100644 --- a/src/api/config.js +++ b/src/api/config.js @@ -2,7 +2,7 @@ * @Author: lixg lixg@dongwu-inc.com * @Date: 2022-11-21 14:32:52 * @LastEditors: lixg lixg@dongwu-inc.com - * @LastEditTime: 2022-11-21 15:13:50 + * @LastEditTime: 2022-11-23 09:59:26 * @FilePath: /fe-manage/src/api/config.js * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE */ @@ -26,9 +26,10 @@ http.interceptors.request.use( const token = localStorage.getItem("token"); if (token) { // config.headers.token = token; - config.headers.token = 123456; //测试1111 + config.headers.token = token; //测试1111 } else { console.log("当前请求页面无token,请执行操作!!!"); + // 此处测试默认配置token config.headers.token = "123456"; // config.headers.token = "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2Njg4NjI2MTAsImV4cCI6MTY2ODg2OTgxMCwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.defa91ecb2b61d9b20d858db0c2c8d7d80dea4613cb2559a22569b7df36b3f6b"; diff --git a/src/api/index1.js b/src/api/index1.js index 6e5402e5..bc2d71bd 100644 --- a/src/api/index1.js +++ b/src/api/index1.js @@ -2,7 +2,7 @@ * @Author: lixg lixg@dongwu-inc.com * @Date: 2022-11-04 22:45:31 * @LastEditors: lixg lixg@dongwu-inc.com - * @LastEditTime: 2022-11-21 16:39:08 + * @LastEditTime: 2022-11-22 18:04:47 * @FilePath: /fe-manage/src/api/index1.js * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE */ @@ -87,6 +87,10 @@ export const billboard = (obj) => http.post('/admin/project/billboard', obj); //获取字典信息 export const getDict = (obj) => http.post('/dict/getList', obj) +//获取组织树 +export const getOrgTree = (obj) => http.post('/admin/router/orgList', obj) + + // 获取组织结构树 export const orgtree = () => http.get('/org/tree'); diff --git a/src/api/indexCourse.js b/src/api/indexCourse.js index 3cf89f13..e393ab50 100644 --- a/src/api/indexCourse.js +++ b/src/api/indexCourse.js @@ -3,19 +3,52 @@ import http from "./config"; /** * 1 */ +//添加课程学员 +export const addStudent = (obj) => + http.post("/admin/offcourse/addStudent", obj); //删除开课 export const deletePlan = (obj) => - http.delete("/admin/offcourse/deletePlan", obj); + http.delete( + "/admin/offcourse/deletePlan", + { params: obj }, + { + headers: { "Content-Type": "application/x-www-form-urlencoded" }, + } + ); +//获取面授课详情 +export const detail = (obj) => + http.post("/admin/offcourse/detail", obj, { + headers: { "Content-Type": "application/x-www-form-urlencoded" }, + }); +//获取面授课开课详情 +export const detailPlan = (obj) => + http.post("/admin/offcourse/detailPlan", obj, { + headers: { "Content-Type": "application/x-www-form-urlencoded" }, + }); //新建或编辑面授课 export const edit = (obj) => http.post("/admin/offcourse/edit", obj); //新建或编辑面授课开课 export const editPlan = (obj) => http.post("/admin/offcourse/editPlan", obj); -//操作面授课(发布,撤回,删除) +//课程导出 +export const exportP = (obj) => http.post("/admin/offcourse/export", obj); +//操作面授课(发布,撤回,删除,审核,停用) export const handle = (obj) => http.post("/admin/offcourse/handle", obj); +//学员操作-支持批量 +export const handleStudent = (obj) => + http.post("/admin/offcourse/handleStudent", obj); //获取面授课列表 export const list = (obj) => http.post("/admin/offcourse/list", obj); +//获取面授课已审核列表 +export const listReview = (obj) => + http.post("/admin/offcourse/listReview", obj); //面授课开课列表 export const planList = (obj) => http.post("/admin/offcourse/planList", obj); +//学员导出 +export const studentExport = (obj) => + http.post("/admin/offcourse/studentExport", obj); //获取学员列表 export const studentList = (obj) => http.post("/admin/offcourse/studentList", obj); +//学习记录列表 +export const studyRecordList = (obj) => + http.post("/admin/offcourse/studyRecordList", obj); diff --git a/src/components/NavLeft.vue b/src/components/NavLeft.vue index ce679c18..41e7257d 100644 --- a/src/components/NavLeft.vue +++ b/src/components/NavLeft.vue @@ -192,8 +192,8 @@ src="../assets/images/navleft/certificate.png" /> - - 证书中心 + 证书中心 +
@@ -202,7 +202,8 @@ src="../assets/images/navleft/system.png" />
- 系统管理 + 系统管理 +
@@ -219,6 +220,9 @@ mode="inline" @click="handleClick" > + + 审核 + 学习 diff --git a/src/components/drawers/AddCase.vue b/src/components/drawers/AddCase.vue index 293ac1e7..22c806dc 100644 --- a/src/components/drawers/AddCase.vue +++ b/src/components/drawers/AddCase.vue @@ -150,8 +150,10 @@ export default { localStorage.setItem("stageId", props.chooseStageId); localStorage.setItem("chapterId", props.isactive); }; - const afterVisibleChange = () => { - getAllCaseText() + const afterVisibleChange = (bol) => { + if ( bol == true ) { + getAllCaseText() + } }; const tableDataFunc = () => { const columns = [ @@ -182,6 +184,9 @@ export default { return columns; }; const onSelectChange = (selectedRowKeys,selectedRows)=> { + if(selectedRowKeys.length>2){ + return + } state.selectedRowKeys = selectedRowKeys; state.apiTaskList = selectedRows; }; @@ -251,18 +256,6 @@ export default { }); } else if (props.isLevel == 2) { if(state.apiTaskList.length > 1){ - // for((item,index) in state.apiTaskList){ - // apiTask - // .addTask({ - // "courseId": item.caseId, - // "duration": 0, - // "flag": true, - // "name": item.caseName, - // "projectId": props.projectId, - // "projectTaskId": props.projectTaskId, - // "stageId": props.chooseStageId, - // "type": 3, - // }) for(let i = 0;i <= state.apiTaskList.length;i++){ apiTask .addTask({ @@ -455,6 +448,9 @@ export default { .ant-table-selection-column { padding: 0px !important; padding-left: 15px !important; + .ant-table-selection{ + display: none; + } } .ant-table-thead > tr > th { background-color: rgba(239, 244, 252, 1); diff --git a/src/components/drawers/AddEval.vue b/src/components/drawers/AddEval.vue index 0a58aef2..2f3ece39 100644 --- a/src/components/drawers/AddEval.vue +++ b/src/components/drawers/AddEval.vue @@ -215,6 +215,8 @@ export default { projectId: props.projectId, projectTaskId: props.projectTaskId || 0, stageId: props.chooseStageId, + evaluationTypeId: state.evaluationTypeId, + evaluationTypeName: state.evaluationTypeName, type: 10, }) .then(( ) => { @@ -230,6 +232,8 @@ export default { name: res.data.data.evaluationName, routerId: props.routerId, routerTaskId: props.routerTaskId || 0, + evaluationTypeId: state.evaluationTypeId, + evaluationTypeName: state.evaluationTypeName, type: 10, }) .then(( ) => { diff --git a/src/components/drawers/AddTest.vue b/src/components/drawers/AddTest.vue index 82c24cf7..e16ef4d4 100644 --- a/src/components/drawers/AddTest.vue +++ b/src/components/drawers/AddTest.vue @@ -78,15 +78,16 @@
- - + + 选择试卷 + + {{ paperName }} +
@@ -709,8 +716,8 @@ export default { .catch(() => { message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`); }); - } else if (props.isLevel == 3) { - console.log(""); + } else if (props.isLevel == 3) { + console.log(""); } }; diff --git a/src/components/drawers/EvList.vue b/src/components/drawers/EvList.vue index 5bb04782..257dbd95 100644 --- a/src/components/drawers/EvList.vue +++ b/src/components/drawers/EvList.vue @@ -36,7 +36,7 @@
搜索
-
+
重置
@@ -50,7 +50,7 @@ :data-source="tableData" :loading="tableDataTotal === -1 ? true : false" :pagination="false" - :row-selection="{ selectedRowKeys:selectedRowKeys,onSelect:onSelect,onChange:onSelectChange}" + :row-selection="{ selectedRowKeys:selectedRowKeys,onChange:onSelectChange}" />
{ - state.evaluationTypeName = record.title - state.evaluationTypeId = record.quiz_code - }; - const onSelectChange = (selectedRowKeys)=> { + // const onSelect = (record)=> { + // state.evaluationTypeName = record.title + // state.evaluationTypeId = record.quiz_code + // }; + const onSelectChange = (selectedRowKeys,selectedRows)=> { + if(state.selectedRowKeys.length>1){ + return + } state.selectedRowKeys = selectedRowKeys + state.evaluationTypeName = selectedRows[0].record.title + state.evaluationTypeId = selectedRows[0].quiz_code } const closeDrawer = () => { ctx.emit("update:EvalListVisible", false); }; - const afterVisibleChange = () => { - getAllEvalText(); + const afterVisibleChange = (bol) => { + if ( bol == true ) { + getAllEvalText(); + } }; const checkFinish =() =>{ let EvListDate = { @@ -204,15 +211,24 @@ .catch(()=>{ }) } + //重置测评列表 + const resetData = ()=> { + state.currentPage = 1; + state.tableData = []; + state.selectedRowKeys = []; + state.evaluationTypeId = null; + state.evaluationTypeName = ""; + getAllEvalText(); + } return { ...toRefs(state), afterVisibleChange, closeDrawer, onSelectChange, - onSelect, getTableDataList, checkFinish, changePagination, + resetData, }; }, }; diff --git a/src/components/drawers/FaceManage.vue b/src/components/drawers/FaceManage.vue index c87e5671..c9040848 100644 --- a/src/components/drawers/FaceManage.vue +++ b/src/components/drawers/FaceManage.vue @@ -98,7 +98,6 @@ :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange, - onSelect: onSelect, }" />
@@ -194,12 +193,20 @@ export default { selectedRowKeys: [], tabledata: [ { + key:1, workNum:1, status:"已完成", operation:"", }, { - workNum:1, + key:2, + workNum:2, + status:"未完成", + operation:"", + }, + { + key:3, + workNum:2, status:"未完成", operation:"", } @@ -341,18 +348,21 @@ export default { const closeDrawer = () => { ctx.emit("update:Fvisible", false); }; - const afterVisibleChange = () => { - getManageList() + const afterVisibleChange = (bol) => { + if ( bol == true ) { + getManageList() + } + }; const selectProjectName = (value) => { state.projectName = value; }; const onSelectChange = (selectedRowKeys) => { - state.selectedRowKeys = selectedRowKeys; + if(selectedRowKeys.length > 2){ + return + } + state.selectedRowKeys = selectedRowKeys; }; - const onSelect = (record) => { - console.log(record); - } const allStuOver = ()=> { state.ASOvervisible = true @@ -457,7 +467,6 @@ export default { closeDrawer, afterVisibleChange, onSelectChange, - onSelect, allStuOver, showEntryScore, godie, @@ -672,7 +681,6 @@ export default { .tableBox { .ant-table-selection-column { padding: 0px !important; - // padding-left: 45px !important; } .ant-pagination-item, .ant-pagination-prev, diff --git a/src/components/drawers/OwnPower.vue b/src/components/drawers/OwnPower.vue index 5ca07e8a..a91eace8 100644 --- a/src/components/drawers/OwnPower.vue +++ b/src/components/drawers/OwnPower.vue @@ -6,7 +6,7 @@ width="85%" @after-visible-change="afterVisibleChange" > -
+
归属权
@@ -121,80 +122,30 @@
-
-
已选
- -
-
-
- 全部清除 -
-
-
-
快速选人
-
-
-
- +
+
当前归属:
{{ item.name }}
-
-
-
- 查看更多 - -
-
-
-
- 收起 - -
+
+ 转移归属权
-
@@ -202,8 +153,6 @@
- - @@ -567,7 +516,6 @@ export default { }, ], - //快速选人------------------------------------- valueSelectboe: null, //快速选人的选择组织 choosepeople: [], //总的数组 @@ -576,14 +524,12 @@ export default { showHidden: false, //是否显示收回 selectedRowKeys: [], //表格选中的key //快速选人------------------------------------- - }); const closeDrawer = () => { state.activeKey = "1"; ctx.emit("update:ownpowervisible", false); }; - const afterVisibleChange = (bool) => { console.log("state", bool); }; @@ -690,8 +636,6 @@ export default { // 结束 快速选人------------------------------------------------------------------ - - //全部清除 const deleteAll = () => { //快速选人------------------------------------- @@ -701,10 +645,9 @@ export default { state.showHidden = false; //是否显示收回 state.selectedRowKeys = []; //表格选中的key //快速选人------------------------------------- - }; return { - ...toRefs(state), + ...toRefs(state), afterVisibleChange, closeDrawer, onSelectChange, @@ -715,10 +658,7 @@ export default { morePeopleShow, morePeopleHidden, - - deleteAll, - }; }, }; @@ -726,7 +666,7 @@ export default { diff --git a/src/views/courselibrary/CoursewareManage.vue b/src/views/courselibrary/CoursewareManage.vue index 3a75c185..07a6b09d 100644 --- a/src/views/courselibrary/CoursewareManage.vue +++ b/src/views/courselibrary/CoursewareManage.vue @@ -7,9 +7,9 @@
@@ -21,7 +21,7 @@
@@ -264,7 +264,7 @@
- 课程分类 + 内容分类
@@ -522,18 +522,13 @@
授课教师
- 添加附件
+ + 支持.pdf,.ppt,.pptx,.doc,.docx,.xls,.xlsx,.jpg,.jpeg,.png,.gif,.zip +
@@ -690,7 +688,387 @@ expandRowByClick="true" @expand="expandTable" :pagination="false" - /> + > + +
状态 已通过 - 未审核 - 管理员拒绝 + + 未审核 + + + 管理员拒绝 +
@@ -985,10 +1363,7 @@
-
+
@@ -1005,10 +1380,7 @@
-
+
-
+ > + + +
- - - - - - -
-