mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-18 15:26:48 +08:00
feat:合并
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -21,3 +21,5 @@ pnpm-debug.log*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
||||
fe-manage.iml
|
||||
package-lock.json
|
||||
|
||||
1004
package-lock.json
generated
1004
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -34,7 +34,7 @@ http.interceptors.request.use(
|
||||
|
||||
// 此处测试默认配置token
|
||||
config.headers.token = "123456";
|
||||
// config.headers.token = "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2NjkzMDA4MDksImV4cCI6MTY2OTMwODAwOSwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.bb3e0e031513761003d5c3bfeaf16e364bdf8fe7bc4cf691a05a74dc454afbfb";
|
||||
// config.headers.token = "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2NjkzODQ5MTgsImV4cCI6MTY2OTM5MjExOCwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.7c3af587cbacf68180e86681442e06ffd33c65a78fc835aaac34d0c773752d99";
|
||||
}
|
||||
return config;
|
||||
},
|
||||
|
||||
@@ -3,10 +3,12 @@ import http from "./config";
|
||||
/**
|
||||
* 1
|
||||
*/
|
||||
//添加课程学员
|
||||
//1添加课程学员
|
||||
export const addStudent = (obj) =>
|
||||
http.post("/admin/offcourse/addStudent", obj);
|
||||
//删除开课
|
||||
//2面授课审核?
|
||||
export const auditView = (obj) => http.post("/admin/offcourse/auditView", obj);
|
||||
//3删除开课
|
||||
export const deletePlan = (obj) =>
|
||||
http.delete(
|
||||
"/admin/offcourse/deletePlan",
|
||||
@@ -15,40 +17,44 @@ export const deletePlan = (obj) =>
|
||||
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
||||
}
|
||||
);
|
||||
//获取面授课详情
|
||||
//4获取面授课详情
|
||||
export const detail = (obj) =>
|
||||
http.post("/admin/offcourse/detail", obj, {
|
||||
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
||||
});
|
||||
//获取面授课开课详情
|
||||
//5获取面授课开课详情
|
||||
export const detailPlan = (obj) =>
|
||||
http.post("/admin/offcourse/detailPlan", obj, {
|
||||
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
||||
});
|
||||
//新建或编辑面授课
|
||||
//6新建或编辑面授课
|
||||
export const edit = (obj) => http.post("/admin/offcourse/edit", obj);
|
||||
//新建或编辑面授课开课
|
||||
//7新建或编辑面授课开课
|
||||
export const editPlan = (obj) => http.post("/admin/offcourse/editPlan", obj);
|
||||
//课程导出
|
||||
//8课程导出
|
||||
export const exportP = (obj) => http.post("/admin/offcourse/export", obj);
|
||||
//操作面授课(发布,撤回,删除,审核,停用)
|
||||
//9操作面授课(发布,撤回,删除,审核,停用)
|
||||
export const handle = (obj) => http.post("/admin/offcourse/handle", obj);
|
||||
//学员操作-支持批量
|
||||
//10学员操作-支持批量
|
||||
export const handleStudent = (obj) =>
|
||||
http.post("/admin/offcourse/handleStudent", obj);
|
||||
//获取面授课列表
|
||||
//11获取面授课列表
|
||||
export const list = (obj) => http.post("/admin/offcourse/list", obj);
|
||||
//获取面授课已审核列表
|
||||
//12获取面授课已审核列表?
|
||||
export const listReview = (obj) =>
|
||||
http.post("/admin/offcourse/listReview", obj);
|
||||
//面授课开课列表
|
||||
//13面授课开课列表
|
||||
export const planList = (obj) => http.post("/admin/offcourse/planList", obj);
|
||||
//学员导出
|
||||
//14学员导出
|
||||
export const studentExport = (obj) =>
|
||||
http.post("/admin/offcourse/studentExport", obj);
|
||||
//获取学员列表
|
||||
//15获取学员列表
|
||||
export const studentList = (obj) =>
|
||||
http.post("/admin/offcourse/studentList", obj);
|
||||
//学习记录列表
|
||||
//16学习记录列表?
|
||||
export const studyRecordList = (obj) =>
|
||||
http.post("/admin/offcourse/studyRecordList", obj);
|
||||
|
||||
// 获取员工信息
|
||||
export const getMemberInfoApi = (obj) =>
|
||||
http.post("/admin/orgStruct/getMemberInfo", obj);
|
||||
|
||||
@@ -9,6 +9,15 @@ export const queryExaminationDetailById = (obj) => http.post('/examination/query
|
||||
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'
|
||||
}
|
||||
});
|
||||
// 创建考试信息接口
|
||||
export const updateExamination = (obj) => http.post('/examination/updateExamination', obj);
|
||||
|
||||
// 查询用户答卷信息-三方
|
||||
export const queryUserAnswerDetail = (id) => http.get(`/examination/updateExamination?aloneId=${id}`);
|
||||
// 查询用户答卷列表-三方
|
||||
export const queryUserAnswerPageDetailList = (obj) => http.post('/examination/queryUserAnswerPageDetailList', obj);
|
||||
// 获取试卷列表接口-三方
|
||||
export const queryExaminationPaperList = (obj) => http.post('/examination/queryExaminationPaperList', obj);
|
||||
// 考试列表查询接三方
|
||||
export const queryExaminationList = (obj) => http.post('/examination/queryExaminationList', obj);
|
||||
// 获取考试任务列表的接口-三方
|
||||
export const queryExaminationAloneExtendList = (obj) => http.post('/examination/queryExaminationAloneExtendList', obj);
|
||||
// 对接三方考试任务保存接口-三方
|
||||
export const examinationTaskSave = (obj) => http.post('/examination/examinationTaskSave', obj);
|
||||
14
src/api/indexStu.js
Normal file
14
src/api/indexStu.js
Normal file
@@ -0,0 +1,14 @@
|
||||
import http from "./config";
|
||||
|
||||
/**
|
||||
* 1
|
||||
*/
|
||||
//获取受众信息
|
||||
export const getAudienceInfoApi = (obj) =>
|
||||
http.post("/admin/orgStruct/getAudienceInfo", obj);
|
||||
//获取员工信息
|
||||
export const getMemberInfoApi = (obj) =>
|
||||
http.post("/admin/orgStruct/getMemberInfo", obj);
|
||||
//获取所有组织
|
||||
export const getOrgInfoApi = (obj) =>
|
||||
http.post("/admin/orgStruct/getOrgInfo", obj);
|
||||
@@ -228,6 +228,7 @@ import * as apiTask from "../../api/indexTaskadd";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import { message } from "ant-design-vue";
|
||||
import dayjs from "dayjs";
|
||||
|
||||
export default {
|
||||
name: "AddActive",
|
||||
// components: {
|
||||
@@ -332,8 +333,7 @@ export default {
|
||||
dayjs(res.data.data.activityEndTime, "YYYY-MM-DD"),
|
||||
];
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
};
|
||||
const afterVisibleChange = (bool) => {
|
||||
if (bool && props.edit) {
|
||||
|
||||
@@ -49,7 +49,10 @@
|
||||
:row-class-name="
|
||||
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||
"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
:row-selection="{
|
||||
selectedRowKeys: selectedRowKeys,
|
||||
onChange: onSelectChange,
|
||||
}"
|
||||
:columns="tableDataFunc()"
|
||||
:data-source="tableData"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
@@ -57,6 +60,7 @@
|
||||
/>
|
||||
<div class="pa">
|
||||
<a-pagination
|
||||
v-if="tableDataTotal>10"
|
||||
showSizeChanger="true"
|
||||
showQuickJumper="true"
|
||||
hideOnSinglePage="true"
|
||||
@@ -82,6 +86,7 @@ import * as api from "../../api/indexCase.js";
|
||||
import * as apiTask from "../../api/indexTaskadd";
|
||||
import { message } from "ant-design-vue";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
// import { addTempTask } from "../../api/indexTaskadd";
|
||||
// import dayjs from "dayjs";
|
||||
|
||||
export default {
|
||||
@@ -137,8 +142,8 @@ export default {
|
||||
currentPage: 1,
|
||||
tableDataTotal: 0,
|
||||
pageSize: 10,
|
||||
selectedRowKeys:[],
|
||||
apiTaskList:[],
|
||||
selectedRowKeys: [],
|
||||
apiTaskList: [],
|
||||
inputV1: "",
|
||||
time: undefined,
|
||||
caseId: null,
|
||||
@@ -149,12 +154,12 @@ export default {
|
||||
ctx.emit("update:edit", false);
|
||||
localStorage.setItem("stageId", props.chooseStageId);
|
||||
localStorage.setItem("chapterId", props.isactive);
|
||||
state.inputV1=""
|
||||
state.selectedRowKeys=[]
|
||||
state.inputV1 = "";
|
||||
state.selectedRowKeys = [];
|
||||
};
|
||||
const afterVisibleChange = (bol) => {
|
||||
if ( bol == true ) {
|
||||
getAllCaseText()
|
||||
if (bol == true) {
|
||||
getAllCaseText();
|
||||
}
|
||||
};
|
||||
const tableDataFunc = () => {
|
||||
@@ -185,9 +190,9 @@ export default {
|
||||
];
|
||||
return columns;
|
||||
};
|
||||
const onSelectChange = (selectedRowKeys,selectedRows)=> {
|
||||
if(selectedRowKeys.length>2){
|
||||
return
|
||||
const onSelectChange = (selectedRowKeys, selectedRows) => {
|
||||
if (selectedRowKeys.length > 2) {
|
||||
return;
|
||||
}
|
||||
state.selectedRowKeys = selectedRowKeys;
|
||||
state.apiTaskList = selectedRows;
|
||||
@@ -200,43 +205,42 @@ export default {
|
||||
const getTableDate = (tableData) => {
|
||||
let data = tableData;
|
||||
let array = [];
|
||||
data.map((value, index) => {
|
||||
let obj = {
|
||||
key: index,
|
||||
authorId:value.authorId,
|
||||
authorName:value.authorName,
|
||||
companyId:value.companyId,
|
||||
coverUrl:value.coverUrl,
|
||||
id:value.id,
|
||||
casesId:value.casesId,
|
||||
title:value.title,
|
||||
};
|
||||
array.push(obj);
|
||||
});
|
||||
state.tableData = array;
|
||||
data.map((value, index) => {
|
||||
let obj = {
|
||||
key: index,
|
||||
authorId: value.authorId,
|
||||
authorName: value.authorName,
|
||||
companyId: value.companyId,
|
||||
coverUrl: value.coverUrl,
|
||||
id: value.id,
|
||||
casesId: value.casesId,
|
||||
title: value.title,
|
||||
};
|
||||
array.push(obj);
|
||||
});
|
||||
state.tableData = array;
|
||||
};
|
||||
//获取全部案例信息接口
|
||||
const getAllCaseText = () => {
|
||||
api
|
||||
.queryCasesDetailList({
|
||||
"keyWord": state.inputV1,
|
||||
"orderAsc": true,
|
||||
"orderField": "",
|
||||
"pageIndex": 0,
|
||||
"pageSize": 0,
|
||||
"top": true
|
||||
keyWord: state.inputV1,
|
||||
orderAsc: true,
|
||||
orderField: "",
|
||||
pageIndex: 0,
|
||||
pageSize: 0,
|
||||
top: true,
|
||||
})
|
||||
.then((res) => {
|
||||
if (res.status === 200) {
|
||||
getTableDate(res.data.data);
|
||||
getTableDate(res.data.data);
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
};
|
||||
const updateTask = () => {
|
||||
if (props.isLevel == 1) {
|
||||
for(let i = 0;i < state.apiTaskList.length;i++){
|
||||
for (let i = 0; i < state.apiTaskList.length; i++) {
|
||||
RouterEditTask({
|
||||
chapterId: props.isactive,
|
||||
courseId: state.apiTaskList[i].casesId,
|
||||
@@ -254,61 +258,66 @@ export default {
|
||||
.catch(() => {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||
});
|
||||
}
|
||||
}
|
||||
} else if (props.isLevel == 2) {
|
||||
for(let i = 0;i < state.apiTaskList.length;i++){
|
||||
apiTask
|
||||
for (let i = 0; i < state.apiTaskList.length; i++) {
|
||||
apiTask
|
||||
.addTask({
|
||||
"courseId": state.apiTaskList[i].casesId,
|
||||
"duration": 0,
|
||||
"flag": true,
|
||||
"name": state.apiTaskList[i].title,
|
||||
"projectId": props.projectId,
|
||||
"projectTaskId": props.projectTaskId,
|
||||
"stageId": Number(props.chooseStageId),
|
||||
"type": 3,
|
||||
courseId: state.apiTaskList[i].casesId,
|
||||
duration: 0,
|
||||
flag: true,
|
||||
name: state.apiTaskList[i].title,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId,
|
||||
stageId: Number(props.chooseStageId),
|
||||
type: 3,
|
||||
})
|
||||
.then(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
}
|
||||
}
|
||||
} else if (props.isLevel == 3) {
|
||||
for(let i = 0;i < state.apiTaskList.length;i++){
|
||||
console.log(state.apiTaskList[i],'state.apiTaskList[i].caseIdstate.apiTaskList[i].caseId');
|
||||
apiTask
|
||||
for (let i = 0; i < state.apiTaskList.length; i++) {
|
||||
console.log(
|
||||
state.apiTaskList[i],
|
||||
"state.apiTaskList[i].caseIdstate.apiTaskList[i].caseId"
|
||||
);
|
||||
apiTask
|
||||
.addTask({
|
||||
"courseId": state.apiTaskList[i].caseid,
|
||||
"duration": 0,
|
||||
"flag": true,
|
||||
"name": state.apiTaskList[i].caseName,
|
||||
"projectId": props.projectId,
|
||||
"projectTemplateId": props.projectTemplateId,
|
||||
"stageId": props.chooseStageId,
|
||||
"type": 3,
|
||||
courseId: state.apiTaskList[i].caseid,
|
||||
duration: 0,
|
||||
flag: true,
|
||||
name: state.apiTaskList[i].caseName,
|
||||
projectId: props.projectId,
|
||||
projectTemplateId: props.projectTemplateId,
|
||||
stageId: props.chooseStageId,
|
||||
type: 3,
|
||||
})
|
||||
.then(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
//重置案例信息
|
||||
const resetCase = () => {
|
||||
state.inputV1 = "";
|
||||
state.inputV1 = ""
|
||||
state.selectedRowKeys=[]
|
||||
state.currentPage = 1
|
||||
getAllCaseText();
|
||||
};
|
||||
return {
|
||||
@@ -449,7 +458,7 @@ export default {
|
||||
.ant-table-selection-column {
|
||||
padding: 0px !important;
|
||||
padding-left: 15px !important;
|
||||
.ant-table-selection{
|
||||
.ant-table-selection {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -468,8 +477,6 @@ export default {
|
||||
.pa {
|
||||
left: 0;
|
||||
width: 100%;
|
||||
// height: 20px;
|
||||
// background-color: red;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
position: absolute;
|
||||
|
||||
@@ -76,6 +76,7 @@ import * as api from "../../api/indexDiscuss";
|
||||
import * as apiTask from "../../api/indexTaskadd";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import { message } from "ant-design-vue";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
export default {
|
||||
name: "AddDiscuss",
|
||||
props: {
|
||||
@@ -165,8 +166,7 @@ export default {
|
||||
state.checkedC1 =
|
||||
res.data.data.discussSettings == "true" ? true : false;
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
}
|
||||
};
|
||||
const afterVisibleChange = (bool) => {
|
||||
@@ -191,25 +191,39 @@ export default {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 2) {
|
||||
apiTask.addTask({
|
||||
apiTask
|
||||
.addTask({
|
||||
courseId: res.data.data.discussId,
|
||||
duration: res.data.data.discussExplain,
|
||||
name: res.data.data.discussName,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 8,
|
||||
});
|
||||
type: 8,
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||
})
|
||||
.catch(() => {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
apiTask.addTask({
|
||||
courseId: res.data.data.discussId,
|
||||
duration: res.data.data.discussExplain,
|
||||
name: res.data.data.discussName,
|
||||
projectId: props.projectId,
|
||||
projectTaskTemplateId: props.projectTaskTemplateId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
console.log("");
|
||||
addTempTask({
|
||||
courseId: res.data.data.discussId,
|
||||
duration: res.data.data.discussExplain,
|
||||
name: res.data.data.discussName,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 8,
|
||||
});
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||
})
|
||||
.catch(() => {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||
});
|
||||
}
|
||||
};
|
||||
const updateDiscussInfo = () => {
|
||||
@@ -232,8 +246,7 @@ export default {
|
||||
closeDrawer();
|
||||
ctx.emit("changeData", false);
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
} else {
|
||||
api
|
||||
.createDiscuss(obj)
|
||||
@@ -242,8 +255,7 @@ export default {
|
||||
closeDrawer();
|
||||
ctx.emit("changeData", false);
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
}
|
||||
};
|
||||
return {
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
<span style="margin-left: 10px">
|
||||
<a-tag
|
||||
class="tag-style"
|
||||
v-if="evaluationTypeName != ''"
|
||||
v-if="evaluationTypeName !== ''"
|
||||
:closable="true"
|
||||
@close="delTag"
|
||||
>{{ evaluationTypeName }}</a-tag
|
||||
@@ -97,6 +97,7 @@
|
||||
</div>
|
||||
<EvList
|
||||
v-model:EvalListVisible="EvalListVisible"
|
||||
v-model:evaluationTypeName="evaluationTypeName"
|
||||
@getEvListData="checkFinish"
|
||||
/>
|
||||
<!-- <div class="aeLoading" :style="{display:addLoading?'flex':'none'}">
|
||||
@@ -113,7 +114,7 @@ import * as apitaskadd from "../../api/indexTaskadd";
|
||||
import { message } from "ant-design-vue";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import dayjs from "dayjs";
|
||||
// const router = useRouter();
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
export default {
|
||||
name: "AddEval",
|
||||
components: {
|
||||
@@ -165,40 +166,40 @@ export default {
|
||||
time: undefined,
|
||||
EvalId: null,
|
||||
//子传回来的参数
|
||||
evaluationTypeId: 0,
|
||||
evaluationTypeName: "",
|
||||
evaluationTypeId: null,
|
||||
evaluationTypeName: '',
|
||||
description: "",
|
||||
EvalListVisible: false,
|
||||
// addLoading:false,
|
||||
});
|
||||
const checkFinish = (value)=> {
|
||||
state.evaluationTypeId = value.quiz_kid
|
||||
state.evaluationTypeName = value.title
|
||||
state.evaluationTypeId = value.quiz_kid ? value.quiz_kid : null
|
||||
state.evaluationTypeName = value.title ? value.title : ""
|
||||
}
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:addevalVisible", false);
|
||||
ctx.emit("update:edit", false);
|
||||
state.inputV1 = "";
|
||||
state.time= undefined;
|
||||
state.description="";
|
||||
state.evaluationTypeId= 0,
|
||||
state.evaluationTypeName= "",
|
||||
state.time = undefined;
|
||||
state.description = "";
|
||||
state.evaluationTypeId = 0,
|
||||
state.evaluationTypeName = "",
|
||||
localStorage.setItem("stageId", props.chooseStageId);
|
||||
localStorage.setItem("chapterId", props.isactive);
|
||||
};
|
||||
const afterVisibleChange = (bool) => {
|
||||
if (props.edit && bool) {
|
||||
queryInvistById()
|
||||
queryInvistById();
|
||||
}
|
||||
};
|
||||
const showEvalDrawer = () => {
|
||||
state.EvalListVisible = true;
|
||||
};
|
||||
//删除标签要清除子组件传过来的参数
|
||||
const delTag = ()=> {
|
||||
state.evaluationTypeId= 0
|
||||
state.evaluationTypeName= ""
|
||||
}
|
||||
const delTag = () => {
|
||||
state.evaluationTypeId = 0;
|
||||
state.evaluationTypeName = "";
|
||||
};
|
||||
//向关卡或阶段渲染
|
||||
const updateTask = (value) => {
|
||||
if (props.isLevel == 1) {
|
||||
@@ -210,10 +211,12 @@ export default {
|
||||
routerTaskId: props.routerTaskId || 0,
|
||||
type: 10,
|
||||
})
|
||||
.then(( ) => {
|
||||
message.success(`${props.EditTestId ? "编辑" : "新增"}关卡任务成功`);
|
||||
.then(() => {
|
||||
message.success(
|
||||
`${props.EditTestId ? "编辑" : "新增"}关卡任务成功`
|
||||
);
|
||||
})
|
||||
.catch(( ) => {
|
||||
.catch(() => {
|
||||
message.error(`${props.EditTestId ? "编辑" : "新增"}关卡任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 2) {
|
||||
@@ -228,39 +231,39 @@ export default {
|
||||
stageId: props.chooseStageId,
|
||||
type: 10,
|
||||
})
|
||||
.then(( ) => {
|
||||
.then(() => {
|
||||
message.destroy()
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
})
|
||||
.catch(( ) => {
|
||||
.catch(() => {
|
||||
message.destroy()
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
apitaskadd
|
||||
.addTask({
|
||||
duration:0,
|
||||
flag:true,
|
||||
courseId: Number(value.evaluationId),
|
||||
name: value.evaluationName,
|
||||
projectTemplateId: props.projectTemplateId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 10,
|
||||
})
|
||||
.then(( ) => {
|
||||
console.log("");
|
||||
addTempTask({
|
||||
duration: 0,
|
||||
flag: true,
|
||||
courseId: Number(value.evaluationId),
|
||||
name: value.evaluationName,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 10,
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
})
|
||||
.catch(( ) => {
|
||||
.catch(() => {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
}
|
||||
};
|
||||
//根据id获取测评信息
|
||||
const queryInvistById = ()=> {
|
||||
const queryInvistById = () => {
|
||||
let objqi = {
|
||||
evaluationId : props.EditEvalId
|
||||
}
|
||||
evaluationId: props.EditEvalId,
|
||||
};
|
||||
api
|
||||
.queryEvaluationDetailById(objqi)
|
||||
.then((res) => {
|
||||
@@ -269,10 +272,11 @@ export default {
|
||||
state.inputV1 = res.data.data.evaluationName
|
||||
state.evaluationTypeName = res.data.data.evaluationTypeName
|
||||
state.evaluationTypeId = res.data.data.evaluationTypeId;
|
||||
state.time = [
|
||||
state.time = res.data.data.evaluationStartTime ? [
|
||||
dayjs(res.data.data.evaluationStartTime, "YYYY-MM-DD"),
|
||||
dayjs(res.data.data.evaluationEndTime, "YYYY-MM-DD"),
|
||||
];
|
||||
] : undefined ;
|
||||
state.description = res.data.data.evaluationExplain
|
||||
})
|
||||
.catch((err) => {
|
||||
message.destroy()
|
||||
@@ -298,16 +302,16 @@ export default {
|
||||
}
|
||||
let objei = {
|
||||
evaluationName: state.inputV1,
|
||||
evaluationEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
||||
evaluationEndTime: state.time ? dayjs(state.time[1]).format("YYYY-MM-DD") : "",
|
||||
evaluationId: props.edit ? Number(props.EditEvalId) : 0,
|
||||
evaluationStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
||||
evaluationStartTime: state.time ? dayjs(state.time[0]).format("YYYY-MM-DD") : "",
|
||||
evaluationTypeId: state.evaluationTypeId,
|
||||
evaluationTypeName: state.evaluationTypeName,
|
||||
evaluationFlag: "",
|
||||
evaluationFlag: state.description,
|
||||
evaluationPictureAddress: "",
|
||||
evaluationTag: "",
|
||||
updateTime: "",
|
||||
}
|
||||
};
|
||||
api
|
||||
.updateEvaluation(objei)
|
||||
.then((res) => {
|
||||
@@ -315,8 +319,7 @@ export default {
|
||||
closeDrawer();
|
||||
ctx.emit("changeData", false);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err,'errrrrrrrrrrrrrrrrrrrrr');
|
||||
.catch(() => {
|
||||
});
|
||||
}
|
||||
//创建测评信息
|
||||
@@ -331,25 +334,26 @@ export default {
|
||||
}
|
||||
let obj = {
|
||||
evaluationName: state.inputV1,
|
||||
evaluationEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
||||
evaluationEndTime: state.time ? dayjs(state.time[1]).format("YYYY-MM-DD") : "",
|
||||
evaluationId: props.evaluationId ,
|
||||
evaluationStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
||||
evaluationStartTime: state.time ? dayjs(state.time[0]).format("YYYY-MM-DD") : "",
|
||||
evaluationTypeId: state.evaluationTypeId,
|
||||
evaluationTypeName: state.evaluationTypeName,
|
||||
evaluationExplain:state.description,
|
||||
evaluationFlag: "",
|
||||
evaluationPictureAddress: "",
|
||||
evaluationTag: "",
|
||||
updateTime: "",
|
||||
};
|
||||
api
|
||||
.createEvaluation(obj)
|
||||
.then((res) => {
|
||||
updateTask(res.data.data);
|
||||
closeDrawer();
|
||||
ctx.emit("changeData", false);
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
api
|
||||
.createEvaluation(obj)
|
||||
.then((res) => {
|
||||
updateTask(res.data.data);
|
||||
closeDrawer();
|
||||
ctx.emit("changeData", false);
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
@@ -100,11 +100,19 @@
|
||||
<span style="margin-right: 3px">授课教师:</span>
|
||||
</div>
|
||||
<div class="btnbox">
|
||||
<a-input
|
||||
v-model:value="inputV2"
|
||||
style="width: 384px; height: 32px"
|
||||
placeholder="请输入授课教师"
|
||||
/>
|
||||
<a-auto-complete
|
||||
v-model:value="memberValue"
|
||||
show-search
|
||||
:not-found-content="fetching ? undefined : null"
|
||||
placeholder="Select a teacher"
|
||||
style="width: 364px"
|
||||
:options="options"
|
||||
@focus="handleFocus"
|
||||
@blur="handleBlur"
|
||||
@change="handleChange2"
|
||||
@popupScroll="templateScroll"
|
||||
@search="handleSearch"
|
||||
></a-auto-complete>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main_item">
|
||||
@@ -374,18 +382,21 @@
|
||||
</a-drawer>
|
||||
</template>
|
||||
<script>
|
||||
import { reactive, toRefs } from "vue";
|
||||
import { reactive, toRefs, ref } from "vue";
|
||||
import SelFacet from "../../components/drawers/SelFacet.vue";
|
||||
import AddHomework from "../../components/drawers/AddHomework.vue";
|
||||
import AddTest from "../../components/drawers/AddTest.vue";
|
||||
import { ProjectEditTask, RouterEditTask } from "@/api/indexTask";
|
||||
// import * as method from "../../api/method"
|
||||
import { message } from "ant-design-vue";
|
||||
import { getMemberInfo } from "@/api/index1";
|
||||
import { debounce } from "lodash-es";
|
||||
import { queryFaceDetailById, editPlan } from "../../api/indexFace";
|
||||
import dayjs from "dayjs";
|
||||
import AssessmentList from "../drawers/ AssessmentList.vue";
|
||||
// import { toDate } from "../../api/method";
|
||||
import { queryWorkDetailById } from "../../api/indexWork";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
export default {
|
||||
name: "AddFaceteach",
|
||||
components: {
|
||||
@@ -442,17 +453,25 @@ export default {
|
||||
},
|
||||
},
|
||||
setup(props, ctx) {
|
||||
const options = ref([]);
|
||||
const state = reactive({
|
||||
selfacetvisible: false,
|
||||
addhomeworkvisible: false,
|
||||
addtestvisible: false,
|
||||
memberValue: null,
|
||||
fetching: false,
|
||||
totalPages: 0,
|
||||
currentPage: 1,
|
||||
tableDataTotal: 100,
|
||||
memberId: 0,
|
||||
pageSize: 10,
|
||||
inputV1: "",
|
||||
inputV2: "",
|
||||
inputV3: "",
|
||||
inputV4: "",
|
||||
inputV5: "",
|
||||
inputV6: "",
|
||||
inputV7: "",
|
||||
inputV4: null,
|
||||
inputV5: null,
|
||||
inputV6: null,
|
||||
inputV7: null,
|
||||
testV1: "",
|
||||
radioV1: "",
|
||||
radioV2: "",
|
||||
@@ -598,19 +617,21 @@ export default {
|
||||
} else {
|
||||
let obj = {
|
||||
address: state.inputV4,
|
||||
afterStart: state.inputV6,
|
||||
applyFlag: 1,
|
||||
attach: JSON.stringify(state.fileList),
|
||||
beforeEnd: state.inputV7,
|
||||
beforeStart: state.inputV5,
|
||||
// beginTime: dayjs(state.chooseTime[0]).format("YYYY-MM-DD"),
|
||||
afterStart: state.inputV6 || 0,
|
||||
beforeEnd: state.inputV7 || 0,
|
||||
beforeStart: state.inputV5 || 0,
|
||||
// beginTime: dayjs(state.chooseTime[0]).format("YYYY-MM-DD hh-mm-ss"),
|
||||
beginTime: parseInt(
|
||||
new Date(state.chooseTime[0].$d).getTime() / 1000
|
||||
),
|
||||
// beginTime: "",
|
||||
completeType: state.radioV1 == "1" ? 2 : 1,
|
||||
description: state.textV1,
|
||||
// endTime: dayjs(state.chooseTime[1]).format("YYYY-MM-DD"),
|
||||
endTime: parseInt(new Date(state.chooseTime[0].$d).getTime() / 1000),
|
||||
// endTime: dayjs(state.chooseTime[1]).format("YYYY-MM-DD hh-mm-ss"),
|
||||
endTime: parseInt(new Date(state.chooseTime[1].$d).getTime() / 1000),
|
||||
// endTime: "",
|
||||
evalFlag: state.checkedAssessment == true ? 1 : 0,
|
||||
evaluateId:
|
||||
state.chooseMent == null ? 0 : state.chooseMent.assessmentId,
|
||||
@@ -622,9 +643,9 @@ export default {
|
||||
projectMember: state.radioV2 == "1" ? 1 : 0,
|
||||
signFlag: 0,
|
||||
signWordFlag: 0,
|
||||
teacherId: 0,
|
||||
teacherId: state.memberId,
|
||||
testId: 0,
|
||||
teacher: state.inputV2,
|
||||
// teacher: state.inputV2,
|
||||
};
|
||||
|
||||
if (props.edit) {
|
||||
@@ -699,17 +720,15 @@ export default {
|
||||
message.error(`${props.EditFaceId ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
let editObj = {
|
||||
addTempTask({
|
||||
courseId: res.data.data.offcoursePlanId,
|
||||
duration: 0,
|
||||
name: res.data.data.name,
|
||||
projectTemplateId: props.projecTempaltetId,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 2,
|
||||
};
|
||||
// 新增编辑或新增项目
|
||||
ProjectEditTask(editObj)
|
||||
})
|
||||
.then(() => {
|
||||
message.success(
|
||||
`${props.EditFaceId ? "编辑" : "新增"}阶段任务成功`
|
||||
@@ -751,6 +770,66 @@ export default {
|
||||
state.chooseMent = value;
|
||||
state.chooseMentName = value.name;
|
||||
};
|
||||
// 员工滚动
|
||||
const templateScroll = (e) => {
|
||||
console.log("滚动", e);
|
||||
const { target } = e;
|
||||
const scrllHeight = target.scrollHeight - target.scrollTop;
|
||||
const clientHeight = target.clientHeight;
|
||||
// console.log("scrllHeight", scrllHeight, clientHeight);
|
||||
if (scrllHeight === 0 && clientHeight === 0) {
|
||||
state.currentPage = 1;
|
||||
} else if (scrllHeight - clientHeight == 0) {
|
||||
// 下拉到底部时
|
||||
if (state.currentPage < state.totalPages) {
|
||||
// 如果滑到底部,则加载下一页
|
||||
state.currentPage++;
|
||||
// queryMember();
|
||||
}
|
||||
}
|
||||
};
|
||||
// 获取员工
|
||||
const queryMember = () => {
|
||||
if (!state.memberValue) return;
|
||||
let obj = {
|
||||
keyWord: state.memberValue,
|
||||
id: 0,
|
||||
org: 0,
|
||||
pageNo: state.currentPage,
|
||||
pageSize: state.pageSize,
|
||||
};
|
||||
getMemberInfo(obj)
|
||||
.then((res) => {
|
||||
let data = res.data.data.rows;
|
||||
state.totalPages = res.data.data.total;
|
||||
for (let i in data) {
|
||||
options.value.push({
|
||||
value: data[i].id,
|
||||
label: data[i].realName,
|
||||
});
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
message.error("获取员工失败" + err);
|
||||
});
|
||||
};
|
||||
const handleSearch = debounce((memberValue) => {
|
||||
console.log("fetching user", memberValue);
|
||||
options.value = [];
|
||||
state.fetching = true;
|
||||
state.currentPage = 1;
|
||||
state.memberValue = memberValue;
|
||||
queryMember();
|
||||
state.fetching = false;
|
||||
}, 300);
|
||||
const handleChange2 = (value, label) => {
|
||||
console.log(`selected ${value}`);
|
||||
state.memberId = value;
|
||||
state.inputV2 = label;
|
||||
};
|
||||
const handleFocus = () => {
|
||||
queryMember();
|
||||
};
|
||||
return {
|
||||
...toRefs(state),
|
||||
showDrawerSelFacet,
|
||||
@@ -771,6 +850,11 @@ export default {
|
||||
showAssessment,
|
||||
faceAssess,
|
||||
// change,
|
||||
options,
|
||||
handleFocus,
|
||||
handleSearch,
|
||||
handleChange2,
|
||||
templateScroll,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
@@ -116,6 +116,7 @@ import {
|
||||
} from "@/api/indexWork";
|
||||
import { ProjectEditTask, RouterEditTask } from "@/api/indexTask";
|
||||
import dayjs from "dayjs";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
|
||||
export default {
|
||||
name: "AddHomework",
|
||||
@@ -362,15 +363,15 @@ export default {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
let editObj = {
|
||||
console.log("");
|
||||
addTempTask({
|
||||
courseId: res.data.data.workId,
|
||||
name: res.data.data.workName,
|
||||
projectId: props.edit ? props.projectId : 0,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 4,
|
||||
};
|
||||
ProjectEditTask(editObj)
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
|
||||
@@ -106,6 +106,7 @@ import { message } from "ant-design-vue";
|
||||
import AssessmentList from "./ AssessmentList.vue";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import * as api from "../../api/indexInvist";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
export default {
|
||||
name: "AddInvist",
|
||||
components: {
|
||||
@@ -247,15 +248,15 @@ export default {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
apiTask
|
||||
.addTask({
|
||||
courseId: state.assessment.assessmentId,
|
||||
name: state.assessment.name,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 11,
|
||||
})
|
||||
console.log("");
|
||||
addTempTask({
|
||||
courseId: state.assessment.assessmentId,
|
||||
name: state.assessment.name,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 11,
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
|
||||
@@ -107,31 +107,35 @@
|
||||
<span style="margin-right: 3px">授课老师:</span>
|
||||
</div>
|
||||
<div class="btnbox">
|
||||
<a-select
|
||||
v-model:value="value"
|
||||
<a-auto-complete
|
||||
v-model:value="memberValue"
|
||||
show-search
|
||||
:not-found-content="fetching ? undefined : null"
|
||||
placeholder="Select a teacher"
|
||||
style="width: 364px"
|
||||
:options="options"
|
||||
:filter-option="filterOption"
|
||||
@focus="handleFocus"
|
||||
@blur="handleBlur"
|
||||
@change="handleChange2"
|
||||
></a-select>
|
||||
@popupScroll="templateScroll"
|
||||
@search="handleSearch"
|
||||
></a-auto-complete>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main_item2">
|
||||
<div class="signbox">
|
||||
<span style="margin-right: 3px">直播封面:</span>
|
||||
</div>
|
||||
<div class="textarea" style="overflow: hidden">
|
||||
<div
|
||||
class="textarea"
|
||||
style="overflow: hidden; width: 102px; height: 102px"
|
||||
>
|
||||
<a-upload
|
||||
v-model:file-list="fileList"
|
||||
name="avatar"
|
||||
list-type="picture-card"
|
||||
class="avatar-uploader"
|
||||
:show-upload-list="false"
|
||||
action="/api/file/upload"
|
||||
action="/manageApi/file/upload"
|
||||
:before-upload="beforeUpload"
|
||||
@change="handleChange"
|
||||
>
|
||||
@@ -320,7 +324,10 @@ import * as api from "../../api/indexLiveBroadcast";
|
||||
import * as apiTask from "../../api/indexTaskadd";
|
||||
import { toDate } from "@/api/method";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
import { getMemberInfo } from "@/api/index1";
|
||||
import dayjs from "dayjs";
|
||||
import { debounce } from "lodash-es";
|
||||
// import { useRouter } from "vue-router";
|
||||
function getBase64(img, callback) {
|
||||
const reader = new FileReader();
|
||||
@@ -328,7 +335,6 @@ function getBase64(img, callback) {
|
||||
reader.readAsDataURL(img);
|
||||
}
|
||||
|
||||
|
||||
export default {
|
||||
name: "AddLive",
|
||||
props: {
|
||||
@@ -379,10 +385,14 @@ export default {
|
||||
},
|
||||
setup(props, ctx) {
|
||||
// const router = useRouter();
|
||||
const options = ref([]);
|
||||
const state = reactive({
|
||||
currentPage: 1,
|
||||
tableDataTotal: 100,
|
||||
pageSize: 10,
|
||||
fetching: false,
|
||||
totalPages: 0,
|
||||
memberValue: null, // 授课老师关键词
|
||||
inputV1: "", //*直播名称
|
||||
time: "", //*直播时间
|
||||
inputV2: "", //*直播时长
|
||||
@@ -471,6 +481,7 @@ export default {
|
||||
state.radioV1 = res.data.data.standardSettings;
|
||||
//state.= res.data.data
|
||||
state.assessmentId = res.data.data.assessmentId;
|
||||
state.imageUrl = res.data.data.liveCover;
|
||||
})
|
||||
.catch(() => {
|
||||
message.error(`查询失败`);
|
||||
@@ -486,6 +497,7 @@ export default {
|
||||
const handleChange = (info) => {
|
||||
if (info.file.status === "uploading") {
|
||||
state.loading = true;
|
||||
console.log("info", info);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -494,6 +506,7 @@ export default {
|
||||
getBase64(info.file.originFileObj, (base64Url) => {
|
||||
state.imageUrl = base64Url;
|
||||
state.loading = false;
|
||||
console.log("imgURL", state.imageUrl);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -557,16 +570,16 @@ export default {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
apiTask
|
||||
.addTask({
|
||||
courseId: res.data.data.liveId,
|
||||
duration: res.data.data.duration,
|
||||
name: res.data.data.liveName,
|
||||
projectTemplateId: props.projectTemplateId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 6,
|
||||
})
|
||||
console.log("");
|
||||
addTempTask({
|
||||
courseId: res.data.data.liveId,
|
||||
duration: res.data.data.duration,
|
||||
name: res.data.data.liveName,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 6,
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
@@ -609,7 +622,7 @@ export default {
|
||||
afterSignIn: state.inputV6,
|
||||
beforeSignIn: state.inputV7,
|
||||
assessmentId: state.assessmentId == null ? 0 : state.assessmentId,
|
||||
// liveCover: state.fileList,//直播封面
|
||||
liveCover: state.imageUrl, //直播封面
|
||||
liveDuration: state.inputV2,
|
||||
liveEndTime: endTime,
|
||||
liveStartTime: startTime,
|
||||
@@ -633,8 +646,7 @@ export default {
|
||||
updateTask(res);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
} else {
|
||||
api
|
||||
.createLiveBroadcast(state.obj)
|
||||
@@ -643,20 +655,67 @@ export default {
|
||||
updateTask(res);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
}
|
||||
};
|
||||
const templateScroll = (e) => {
|
||||
console.log("滚动", e);
|
||||
const { target } = e;
|
||||
const scrllHeight = target.scrollHeight - target.scrollTop;
|
||||
const clientHeight = target.clientHeight;
|
||||
// console.log("scrllHeight", scrllHeight, clientHeight);
|
||||
if (scrllHeight === 0 && clientHeight === 0) {
|
||||
state.currentPage = 1;
|
||||
} else if (scrllHeight - clientHeight == 0) {
|
||||
// 下拉到底部时
|
||||
if (state.currentPage < state.totalPages) {
|
||||
// 如果滑到底部,则加载下一页
|
||||
state.currentPage++;
|
||||
// queryMember();
|
||||
}
|
||||
}
|
||||
};
|
||||
// 获取员工
|
||||
const queryMember = () => {
|
||||
if (!state.memberValue) return;
|
||||
let obj = {
|
||||
keyWord: state.memberValue,
|
||||
id: 0,
|
||||
org: 0,
|
||||
pageNo: state.currentPage,
|
||||
pageSize: state.pageSize,
|
||||
};
|
||||
getMemberInfo(obj)
|
||||
.then((res) => {
|
||||
let data = res.data.data.rows;
|
||||
state.totalPages = res.data.data.total;
|
||||
for (let i in data) {
|
||||
options.value.push({
|
||||
value: data[i].id,
|
||||
label: data[i].realName,
|
||||
});
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
message.error("获取员工失败" + err);
|
||||
});
|
||||
};
|
||||
const handleSearch = debounce((memberValue) => {
|
||||
console.log("fetching user", memberValue);
|
||||
options.value = [];
|
||||
state.fetching = true;
|
||||
state.currentPage = 1;
|
||||
state.memberValue = memberValue;
|
||||
queryMember();
|
||||
state.fetching = false;
|
||||
}, 300);
|
||||
|
||||
const options = ref([]);
|
||||
const handleChange2 = (value) => {
|
||||
console.log(`selected ${value}`);
|
||||
};
|
||||
const handleBlur = () => {
|
||||
console.log("blur");
|
||||
state.inputV3 = value;
|
||||
};
|
||||
const handleFocus = () => {
|
||||
console.log("focus");
|
||||
queryMember();
|
||||
};
|
||||
const checkRadio = () => {
|
||||
if (state.checkedC1) {
|
||||
@@ -665,9 +724,6 @@ export default {
|
||||
state.discussSettings = "false";
|
||||
}
|
||||
};
|
||||
const filterOption = (input, option) => {
|
||||
return option.value.toLowerCase().indexOf(input.toLowerCase()) >= 0;
|
||||
};
|
||||
const handleChangeAssessment = (option) => {
|
||||
state.assessmentId = option.assessmentId;
|
||||
};
|
||||
@@ -679,13 +735,14 @@ export default {
|
||||
handleChange,
|
||||
beforeUpload,
|
||||
updateLiveBroadcast,
|
||||
filterOption,
|
||||
handleBlur,
|
||||
handleFocus,
|
||||
handleChange2,
|
||||
options,
|
||||
checkRadio,
|
||||
handleChangeAssessment,
|
||||
queryMember,
|
||||
templateScroll,
|
||||
handleSearch,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
@@ -59,7 +59,9 @@
|
||||
<div class="mntc_left">
|
||||
<div class="notice_icon"></div>
|
||||
<span style="color: rgba(0, 0, 0, 0.65); margin-right: 17px"
|
||||
>已选择 <span style="color: #388be1">{{ selectedRowKeys.length }}</span> 项</span
|
||||
>已选择
|
||||
<span style="color: #388be1">{{ selectedRowKeys.length }}</span>
|
||||
项</span
|
||||
>
|
||||
<span style="color: rgba(0, 0, 0, 0.65)"
|
||||
>列表选项总计:<span>{{ tableDataTotal }}</span> 条</span
|
||||
@@ -76,10 +78,10 @@
|
||||
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||
"
|
||||
:row-selection="{
|
||||
selectedRowKeys:selectedRowKeys,
|
||||
onChange:onSelectChange,
|
||||
onSelect:onSelected,
|
||||
}"
|
||||
selectedRowKeys: selectedRowKeys,
|
||||
onChange: onSelectChange,
|
||||
onSelect: onSelected,
|
||||
}"
|
||||
:columns="tableDataFunc()"
|
||||
:data-source="tableData"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
@@ -113,6 +115,7 @@ import * as apiTask from "../../api/indexTaskadd";
|
||||
import { message } from "ant-design-vue";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import dayjs from "dayjs";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
export default {
|
||||
name: "AddOnline",
|
||||
props: {
|
||||
@@ -172,7 +175,7 @@ export default {
|
||||
time: undefined,
|
||||
assessmentId: null,
|
||||
assessmentName: "",
|
||||
selectedRowKeys:[],
|
||||
selectedRowKeys: [],
|
||||
tableData: [],
|
||||
currentPage: 1,
|
||||
tableDataTotal: 0,
|
||||
@@ -238,15 +241,15 @@ export default {
|
||||
const onSelected = (record) => {
|
||||
state.assessmentId = record.assessmentId;
|
||||
state.assessmentName = record.name;
|
||||
}
|
||||
const onSelectChange = (selectedRowKeys,b) => {
|
||||
state.selectedRowKeys = selectedRowKeys
|
||||
};
|
||||
const onSelectChange = (selectedRowKeys, b) => {
|
||||
state.selectedRowKeys = selectedRowKeys;
|
||||
console.log(b);
|
||||
}
|
||||
};
|
||||
//清空所选
|
||||
const clearLine = ()=> {
|
||||
state.selectedRowKeys=[]
|
||||
}
|
||||
const clearLine = () => {
|
||||
state.selectedRowKeys = [];
|
||||
};
|
||||
const handelChangePage = (page, pageSize) => {
|
||||
state.currentPage = page;
|
||||
state.pageSize = pageSize;
|
||||
@@ -257,7 +260,7 @@ export default {
|
||||
let array = [];
|
||||
data.map((value, index) => {
|
||||
let obj = {
|
||||
key: index+1,
|
||||
key: index + 1,
|
||||
assessmentId: value.assessmentId,
|
||||
num: value.essayQuestionVoList.length,
|
||||
name: value.assessmentName ? value.assessmentName : "-",
|
||||
@@ -283,8 +286,7 @@ export default {
|
||||
state.tableDataTotal = Number(res.data.data.total);
|
||||
}
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
.catch(() => {});
|
||||
};
|
||||
const updateTask = () => {
|
||||
if (props.isLevel == 1) {
|
||||
@@ -297,14 +299,14 @@ export default {
|
||||
type: 1,
|
||||
})
|
||||
.then(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
state.addLoading = false;
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 2) {
|
||||
@@ -318,33 +320,32 @@ export default {
|
||||
type: 1,
|
||||
})
|
||||
.then(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
apiTask
|
||||
.addTask({
|
||||
courseId: state.assessmentId,
|
||||
name: state.assessmentName,
|
||||
projectTemplateId: props.projectTemplateId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 1,
|
||||
})
|
||||
addTempTask({
|
||||
courseId: state.assessmentId,
|
||||
name: state.assessmentName,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 1,
|
||||
})
|
||||
.then(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy()
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -470,6 +470,7 @@ export default {
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.edit ? "编辑" : "新增"}关卡任务成功`);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||
|
||||
@@ -92,6 +92,7 @@ import * as api from "../../api/indexExternalChain";
|
||||
import * as apiTask from "../../api/indexTaskadd";
|
||||
import { message } from "ant-design-vue";
|
||||
import { RouterEditTask } from "@/api/indexTask";
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
export default {
|
||||
name: "AddRef",
|
||||
props: {
|
||||
@@ -159,7 +160,6 @@ export default {
|
||||
};
|
||||
|
||||
const afterVisibleChange = () => {
|
||||
|
||||
if (props.edit) {
|
||||
queryRef();
|
||||
}
|
||||
@@ -202,7 +202,9 @@ export default {
|
||||
type: 7,
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`);
|
||||
message.success(
|
||||
`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`
|
||||
);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
@@ -210,17 +212,19 @@ export default {
|
||||
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
apiTask
|
||||
.addTask({
|
||||
courseId: res.data.data.linkId,
|
||||
name: res.data.data.linkName,
|
||||
projectTempalteId: props.projectTemplateId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 7,
|
||||
})
|
||||
console.log("");
|
||||
addTempTask({
|
||||
courseId: res.data.data.linkId,
|
||||
name: res.data.data.linkName,
|
||||
projectId: props.projectId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 7,
|
||||
})
|
||||
.then(() => {
|
||||
message.success(`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`);
|
||||
message.success(
|
||||
`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`
|
||||
);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
@@ -254,9 +258,7 @@ export default {
|
||||
message.success("编辑成功");
|
||||
updateTask(res);
|
||||
})
|
||||
.catch(() => {
|
||||
|
||||
});
|
||||
.catch(() => {});
|
||||
} else {
|
||||
api
|
||||
.createExternalChain(obj)
|
||||
@@ -264,9 +266,7 @@ export default {
|
||||
message.success("提交成功");
|
||||
updateTask(res);
|
||||
})
|
||||
.catch(() => {
|
||||
|
||||
});
|
||||
.catch(() => {});
|
||||
}
|
||||
};
|
||||
// 查询任务
|
||||
|
||||
@@ -79,14 +79,14 @@
|
||||
<div class="btnbox">
|
||||
<a-form-item has-feedback label="选择试卷" name="choosedTest">
|
||||
<a-button
|
||||
type="primary"
|
||||
style="width: 100px; margin-left: 35px"
|
||||
class="outer"
|
||||
@click.prevent
|
||||
@click="selectTest()"
|
||||
>
|
||||
选择试卷
|
||||
</a-button>
|
||||
type="primary"
|
||||
style="width: 100px; margin-left: 35px"
|
||||
class="outer"
|
||||
@click.prevent
|
||||
@click="selectTest()"
|
||||
>
|
||||
选择试卷
|
||||
</a-button>
|
||||
<!-- <a-dropdown>
|
||||
<a-button
|
||||
type="primary"
|
||||
@@ -313,7 +313,7 @@
|
||||
<a-spin :spinning="addLoading" tip="添加中..." />
|
||||
</div>
|
||||
<!-- 选择考试抽屉 -->
|
||||
<s-test v-model:STvisible="STvisible" @getSTData="getData"/>
|
||||
<s-test v-model:STvisible="STvisible" @getSTData="getData" />
|
||||
</a-drawer>
|
||||
</template>
|
||||
<script>
|
||||
@@ -324,9 +324,9 @@ import {
|
||||
queryExaminationDetailById,
|
||||
updateExamination,
|
||||
} from "@/api/indexExam";
|
||||
import STest from "./SelectTest.vue"
|
||||
import STest from "./SelectTest.vue";
|
||||
import { ProjectEditTask, RouterEditTask } from "@/api/indexTask";
|
||||
|
||||
import { addTempTask } from "../../api/indexTaskadd";
|
||||
import dayjs from "dayjs";
|
||||
|
||||
export default {
|
||||
@@ -411,9 +411,9 @@ export default {
|
||||
const state = reactive({
|
||||
addLoading: false,
|
||||
isOuter: 1, // 是否为外部考试
|
||||
STvisible:false, //选择试卷抽屉
|
||||
paperId:null, //试卷id 子组件传过来给考试抽屉创建考试信息需要
|
||||
paperName:"", //试卷名称 子组件传过来给考试抽屉选择试卷后框框用
|
||||
STvisible: false, //选择试卷抽屉
|
||||
paperId: null, //试卷id 子组件传过来给考试抽屉创建考试信息需要
|
||||
paperName: "", //试卷名称 子组件传过来给考试抽屉选择试卷后框框用
|
||||
choosedTestList: [
|
||||
{
|
||||
value: "提高核心竞争力",
|
||||
@@ -593,9 +593,9 @@ export default {
|
||||
}
|
||||
};
|
||||
|
||||
const selectTest = ()=> {
|
||||
state.STvisible = true
|
||||
}
|
||||
const selectTest = () => {
|
||||
state.STvisible = true;
|
||||
};
|
||||
|
||||
const queryTest = () => {
|
||||
state.addLoading = true;
|
||||
@@ -716,8 +716,9 @@ export default {
|
||||
.catch(() => {
|
||||
message.error(`${props.EditTestId ? "编辑" : "新增"}阶段任务失败`);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
let editObj = {
|
||||
} else if (props.isLevel == 3) {
|
||||
console.log("");
|
||||
addTempTask({
|
||||
courseId: res.data.data.examinationId,
|
||||
duration: 0,
|
||||
name: res.data.data.examinationName,
|
||||
@@ -725,9 +726,7 @@ export default {
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId,
|
||||
type: 5,
|
||||
};
|
||||
// 新增编辑或新增项目
|
||||
ProjectEditTask(editObj)
|
||||
})
|
||||
.then(() => {
|
||||
message.success(
|
||||
`${props.EditTestId ? "编辑" : "新增"}阶段任务成功`
|
||||
@@ -776,10 +775,10 @@ export default {
|
||||
);
|
||||
state.choosedTestList = tags;
|
||||
};
|
||||
const getData = (value)=> {
|
||||
const getData = (value) => {
|
||||
state.paperId = value.paperId;
|
||||
state.paperName = value.testName;
|
||||
}
|
||||
};
|
||||
return {
|
||||
formState,
|
||||
afterVisibleChange,
|
||||
|
||||
354
src/components/drawers/AssessmentList.vue
Normal file
354
src/components/drawers/AssessmentList.vue
Normal file
@@ -0,0 +1,354 @@
|
||||
<!-- 评估列表 -->
|
||||
<template>
|
||||
<a-drawer
|
||||
:visible="assessmentVisible"
|
||||
class="drawerStyle addinvistDrawer"
|
||||
width="70%"
|
||||
title="添加评估"
|
||||
placement="right"
|
||||
@after-visible-change="afterVisibleChange"
|
||||
>
|
||||
<div class="drawerMain">
|
||||
<div class="header">
|
||||
<div v-if="edit" class="headerTitle">编辑评估</div>
|
||||
<div v-else class="headerTitle">添加评估</div>
|
||||
<img
|
||||
style="width: 29px; height: 29px; cursor: pointer"
|
||||
src="../../assets/images/basicinfo/close.png"
|
||||
@click="closeDrawer"
|
||||
/>
|
||||
</div>
|
||||
<div class="contentMain">
|
||||
<div class="main_left">
|
||||
<div class="main_item">
|
||||
<div class="fi_input">
|
||||
<a-input
|
||||
v-model:value="inputV1"
|
||||
style="width: 424px; height: 40px"
|
||||
placeholder="请输入评估名称"
|
||||
maxlength="20"
|
||||
/>
|
||||
</div>
|
||||
<div class="btns" @click="getAllInvistText">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">搜索</div>
|
||||
</div>
|
||||
<div class="btnsn" @click="resetInvist">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">重置</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main_item2">
|
||||
<a-table
|
||||
style="border: 1px solid #f2f6fe"
|
||||
:columns="tableDataFunc()"
|
||||
:data-source="tableData"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
expandRowByClick="true"
|
||||
@expand="expandTable"
|
||||
:pagination="false"
|
||||
:row-selection="rowSelection"
|
||||
filterMultiple:false
|
||||
/>
|
||||
|
||||
<div class="pa">
|
||||
<a-pagination
|
||||
showSizeChanger="true"
|
||||
showQuickJumper="true"
|
||||
hideOnSinglePage="true"
|
||||
:pageSize="pageSize"
|
||||
:current="currentPage"
|
||||
:total="tableDataTotal"
|
||||
class="pagination"
|
||||
@change="handelChangePage"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a-drawer>
|
||||
</template>
|
||||
<script>
|
||||
import { reactive, toRefs } from "vue";
|
||||
import * as api from "../../api/indexInvist.js";
|
||||
import dayjs from "dayjs";
|
||||
export default {
|
||||
name: "AssessmentList",
|
||||
// components: {
|
||||
// },
|
||||
props: {
|
||||
assessmentVisible: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
isface: {
|
||||
type: Number,
|
||||
default: null,
|
||||
},
|
||||
},
|
||||
setup(props, ctx) {
|
||||
const state = reactive({
|
||||
assessmentVisible: false,
|
||||
assessment: null,
|
||||
inputV1: "",
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
tableDataTotal: 0,
|
||||
tableData: [],
|
||||
selectedRowKeys: [],
|
||||
});
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:assessmentVisible", false);
|
||||
};
|
||||
const afterVisibleChange = (bool) => {
|
||||
console.log("state getAllInvistText", bool);
|
||||
if (props.assessmentVisible) {
|
||||
getAllInvistText();
|
||||
}
|
||||
};
|
||||
const tableDataFunc = () => {
|
||||
const columns = [
|
||||
{
|
||||
title: "名称",
|
||||
dataIndex: "name",
|
||||
// width: "30%",
|
||||
key: "name",
|
||||
width: "150px",
|
||||
align: "left",
|
||||
className: "classify",
|
||||
},
|
||||
{
|
||||
title: "题数",
|
||||
dataIndex: "num",
|
||||
key: "num",
|
||||
width: "80px",
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
title: "创建人",
|
||||
dataIndex: "creator",
|
||||
key: "creator",
|
||||
width: "150px",
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
title: "创建时间",
|
||||
dataIndex: "time",
|
||||
key: "time",
|
||||
width: "200px",
|
||||
align: "center",
|
||||
},
|
||||
];
|
||||
return columns;
|
||||
};
|
||||
const rowSelection = {
|
||||
type: "radio",
|
||||
onSelect: (selectedRows) => {
|
||||
state.assessment = selectedRows;
|
||||
console.log("selectedRows=======", state.assessment);
|
||||
if (props.isface == 1) {
|
||||
ctx.emit("faceAssess", state.assessment);
|
||||
} else {
|
||||
ctx.emit("checkedAss", state.assessment);
|
||||
}
|
||||
|
||||
state.selectedRowKeys = [];
|
||||
closeDrawer();
|
||||
},
|
||||
};
|
||||
// const onSelectChange = (selectedRowKeys) => {
|
||||
// if(selectedRowKeys.length>2){return}
|
||||
// state.selectedRowKeys = selectedRowKeys;
|
||||
// };
|
||||
|
||||
const handelChangePage = (page, pageSize) => {
|
||||
state.currentPage = page;
|
||||
state.pageSize = pageSize;
|
||||
getAllInvistText();
|
||||
};
|
||||
const getTableDate = (tableData) => {
|
||||
let data = tableData;
|
||||
let array = [];
|
||||
data.map((value, index) => {
|
||||
let obj = {
|
||||
key: index,
|
||||
assessmentId: value.assessmentId,
|
||||
num: value.essayQuestionVoList.length,
|
||||
name: value.assessmentName ? value.assessmentName : "-",
|
||||
creator: value.createUser ? value.createUser : "-",
|
||||
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
||||
};
|
||||
array.push(obj);
|
||||
});
|
||||
(state.selectedRowKeys = []), (state.tableData = array);
|
||||
};
|
||||
//获取全部评估信息接口
|
||||
const getAllInvistText = () => {
|
||||
api
|
||||
.queryAssessmentDetailList({
|
||||
assessmentName: state.inputV1,
|
||||
pageNo: state.currentPage,
|
||||
pageSize: state.pageSize,
|
||||
})
|
||||
.then((res) => {
|
||||
let arr = res.data.data.rows;
|
||||
if (res.status === 200) {
|
||||
// console.log("获取全部评估信息", res.data.data);
|
||||
getTableDate(arr);
|
||||
state.tableDataTotal = Number(res.data.data.total);
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("获取全部评估信息接口失败", err);
|
||||
// state.createLoading = false;
|
||||
});
|
||||
};
|
||||
|
||||
//重置评估信息
|
||||
const resetInvist = () => {
|
||||
state.inputV1 = "";
|
||||
getAllInvistText();
|
||||
};
|
||||
return {
|
||||
...toRefs(state),
|
||||
afterVisibleChange,
|
||||
closeDrawer,
|
||||
tableDataFunc,
|
||||
rowSelection,
|
||||
getAllInvistText,
|
||||
resetInvist,
|
||||
handelChangePage,
|
||||
};
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.ant-table-striped :deep(.table-striped) td {
|
||||
background-color: #fafafa !important;
|
||||
}
|
||||
.addinvistDrawer {
|
||||
.drawerMain {
|
||||
.header {
|
||||
height: 73px;
|
||||
border-bottom: 1px solid #e8e8e8;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
.headerTitle {
|
||||
font-size: 18px;
|
||||
font-weight: 600;
|
||||
color: #333333;
|
||||
line-height: 25px;
|
||||
margin-left: 24px;
|
||||
}
|
||||
}
|
||||
.contentMain {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
.main_left {
|
||||
padding-right: 30px;
|
||||
margin-top: 32px;
|
||||
.main_item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 32px;
|
||||
.fi_input {
|
||||
margin-right: 20px;
|
||||
}
|
||||
.btns {
|
||||
margin-right: 20px;
|
||||
padding: 0px 26px 0px 26px;
|
||||
height: 38px;
|
||||
background: #409eff;
|
||||
border-radius: 8px;
|
||||
//border: 1px solid rgba(64, 158, 255, 1);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-right: 14px;
|
||||
flex-shrink: 0;
|
||||
cursor: pointer;
|
||||
.search {
|
||||
width: 15px;
|
||||
height: 17px;
|
||||
background-image: url("../../assets/images/courseManage/search0.png");
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
.btnText {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #ffffff;
|
||||
line-height: 36px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
.btnsn {
|
||||
padding: 0px 26px 0px 26px;
|
||||
height: 38px;
|
||||
background: #ffffff;
|
||||
border-radius: 8px;
|
||||
border: 1px solid rgba(64, 158, 255, 1);
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
margin-right: 14px;
|
||||
flex-shrink: 0;
|
||||
cursor: pointer;
|
||||
.search {
|
||||
width: 16px;
|
||||
height: 18px;
|
||||
background-image: url("../../assets/images/courseManage/reset1.png");
|
||||
background-size: 100% 100%;
|
||||
}
|
||||
.btnText {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #409eff;
|
||||
line-height: 36px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.main_item2 {
|
||||
.pa {
|
||||
width: 100%;
|
||||
margin: 15px auto;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.main_btns {
|
||||
height: 72px;
|
||||
width: 100%;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.16);
|
||||
.btn1 {
|
||||
width: 100px;
|
||||
height: 40px;
|
||||
border: 1px solid #4ea6ff;
|
||||
border-radius: 8px;
|
||||
color: #4ea6ff;
|
||||
background-color: #fff;
|
||||
cursor: pointer;
|
||||
}
|
||||
.btn2 {
|
||||
cursor: pointer;
|
||||
width: 100px;
|
||||
height: 40px;
|
||||
background: #4ea6ff;
|
||||
border-radius: 8px;
|
||||
border: 0;
|
||||
margin-left: 15px;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -72,6 +72,8 @@
|
||||
|
||||
<script>
|
||||
import { toRefs,reactive } from '@vue/reactivity';
|
||||
import { message } from 'ant-design-vue';
|
||||
import {queryUserAnswerDetail} from '@/api/indexExam';
|
||||
export default {
|
||||
name:"CheckWork",
|
||||
props:{
|
||||
@@ -164,6 +166,14 @@ export default {
|
||||
}
|
||||
const afterVisibleChange = (bool) => {
|
||||
console.log(bool);
|
||||
if(bool == true) {getQue()}
|
||||
}
|
||||
const getQue = () => {
|
||||
queryUserAnswerDetail(1).then(res => {
|
||||
console.log(res)
|
||||
}).catch(err =>{
|
||||
message.error('用户答卷信息获取失败'+err)
|
||||
})
|
||||
}
|
||||
return{
|
||||
...toRefs(state),
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<div class="ipt_name">测评信息:</div>
|
||||
<div class="fi_input">
|
||||
<a-input
|
||||
v-model:value="value1"
|
||||
v-model:value="inputV1"
|
||||
style="width: 240px; height: 40px; border-radius: 8px"
|
||||
placeholder="请输入项目名称"
|
||||
/>
|
||||
@@ -31,7 +31,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="mi_btns">
|
||||
<div class="btn btn1">
|
||||
<div class="btn btn1" @click="searchList">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">搜索</div>
|
||||
</div>
|
||||
@@ -52,13 +52,13 @@
|
||||
/>
|
||||
<div class="pa">
|
||||
<a-pagination
|
||||
v-if="total > 10"
|
||||
v-if="tableDataTotal > 10"
|
||||
showSizeChanger="true"
|
||||
showQuickJumper="true"
|
||||
hideOnSinglePage="true"
|
||||
:pageSize="pageSize"
|
||||
:current="currentPage"
|
||||
:total="total"
|
||||
:total="tableDataTotal"
|
||||
class="pagination"
|
||||
@change="changePagination"
|
||||
/>
|
||||
@@ -73,9 +73,9 @@
|
||||
</a-drawer>
|
||||
</template>
|
||||
<script>
|
||||
import { reactive, toRefs } from "vue";
|
||||
import { reactive, toRefs } from "vue";
|
||||
import * as api from "../../api/indexEval";
|
||||
export default {
|
||||
export default {
|
||||
name: "EvList",
|
||||
props: {
|
||||
EvalListVisible: {
|
||||
@@ -96,7 +96,8 @@
|
||||
currentPage: 1,
|
||||
tableDataTotal: 0,
|
||||
pageSize: 10,
|
||||
vlue1:"",
|
||||
inputV1:"",
|
||||
searching:false,
|
||||
evaluationTypeId:null,
|
||||
evaluationTypeName:"",
|
||||
tableData: [],
|
||||
@@ -111,7 +112,7 @@
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
title: "title",
|
||||
title: "课程名称",
|
||||
width: "20%",
|
||||
dataIndex: "title",
|
||||
key: "title",
|
||||
@@ -123,6 +124,10 @@
|
||||
dataIndex: "theme_desc",
|
||||
key: "content",
|
||||
align: "center",
|
||||
maxWidth: "13%",
|
||||
overflow: 'hidden',
|
||||
whiteSpace: 'nowrap',
|
||||
textOverflow: 'ellipsis',
|
||||
},
|
||||
{
|
||||
title: "状态",
|
||||
@@ -152,10 +157,14 @@
|
||||
return
|
||||
}
|
||||
state.selectedRowKeys = selectedRowKeys
|
||||
state.evListData = selectedRows[0] ? selectedRows[0] : []
|
||||
state.evListData = selectedRows[0] ? selectedRows[0] : {}
|
||||
}
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:EvalListVisible", false);
|
||||
state.selectedRowKeys = []
|
||||
state.evListData = {}
|
||||
state.inputV1 = ""
|
||||
state.searching = false
|
||||
};
|
||||
const afterVisibleChange = (bol) => {
|
||||
if ( bol == true ) {
|
||||
@@ -169,12 +178,53 @@
|
||||
const changePagination = (page) => {
|
||||
state.currentPage = page;
|
||||
};
|
||||
|
||||
//如果编辑情况会通过父亲传回来evaluationTypeId遍历出相同的那个选项 再将那个选项的key值赋给state.selectRowKeys
|
||||
const getTableDataList = (tableData) => {
|
||||
let data = tableData;
|
||||
let array = [];
|
||||
data.map((value) => {
|
||||
let arrayKey = [];
|
||||
if(props.evaluationTypeName != ""){
|
||||
data.map((value,index) => {
|
||||
let obj = {
|
||||
key:index+1,
|
||||
status:value.status,
|
||||
quiz_code:value.quiz_code,
|
||||
quiz_kid:value.quiz_kid,
|
||||
title:value.title,
|
||||
theme_desc:value.theme_desc,
|
||||
quiz_price:value.quiz_price,
|
||||
quiz_range:value.quiz_range,
|
||||
};
|
||||
array.push(obj)
|
||||
if(obj.title == props.evaluationTypeName){
|
||||
arrayKey.push(obj.key);
|
||||
}
|
||||
});
|
||||
state.tableData = array;
|
||||
state.selectedRowKeys = arrayKey;
|
||||
}else if (state.searching){
|
||||
data.map((value,index) => {
|
||||
let obj = {
|
||||
key:index+1,
|
||||
status:value.status,
|
||||
quiz_code:value.quiz_code,
|
||||
quiz_kid:value.quiz_kid,
|
||||
title:value.title,
|
||||
theme_desc:value.theme_desc,
|
||||
quiz_price:value.quiz_price,
|
||||
quiz_range:value.quiz_range,
|
||||
};
|
||||
if(state.inputV1 == obj.title)
|
||||
{
|
||||
array.push(obj);
|
||||
}
|
||||
});
|
||||
state.tableData = array;
|
||||
}
|
||||
else{
|
||||
data.map((value,index) => {
|
||||
let obj = {
|
||||
key:index+1,
|
||||
status:value.status,
|
||||
quiz_code:value.quiz_code,
|
||||
quiz_kid:value.quiz_kid,
|
||||
@@ -186,13 +236,14 @@
|
||||
array.push(obj);
|
||||
});
|
||||
state.tableData = array;
|
||||
}
|
||||
};
|
||||
|
||||
//获取测评列表
|
||||
const getAllEvalText = ()=> {
|
||||
let objael = {
|
||||
"keyword": "",
|
||||
"user_id": 0,
|
||||
"user_id": "965341999643234304",
|
||||
}
|
||||
api
|
||||
.choiceEvaluation(objael)
|
||||
@@ -202,13 +253,21 @@
|
||||
.catch(()=>{
|
||||
})
|
||||
}
|
||||
//搜索测评列表
|
||||
const searchList = ()=> {
|
||||
if(state.inputV1 !== ''){
|
||||
state.searching = true
|
||||
getAllEvalText()
|
||||
}else {
|
||||
state.searching = false
|
||||
resetData()
|
||||
}
|
||||
}
|
||||
//重置测评列表
|
||||
const resetData = ()=> {
|
||||
state.currentPage = 1;
|
||||
state.tableData = [];
|
||||
state.selectedRowKeys = [];
|
||||
state.evaluationTypeId = null;
|
||||
state.evaluationTypeName = "";
|
||||
state.evListData = {}
|
||||
getAllEvalText();
|
||||
}
|
||||
return {
|
||||
@@ -219,6 +278,7 @@
|
||||
getTableDataList,
|
||||
checkFinish,
|
||||
changePagination,
|
||||
searchList,
|
||||
resetData,
|
||||
};
|
||||
},
|
||||
@@ -384,8 +444,6 @@
|
||||
.pa {
|
||||
left: 0;
|
||||
width: 100%;
|
||||
// height: 20px;
|
||||
// background-color: red;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
position: absolute;
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
<div class="btnss" style="margin-top: 20px">
|
||||
<div class="btn btn1" style="margin-right: 20px" @click="godie">
|
||||
<div class="img1"></div>
|
||||
<div class="wz">催促学习</div>
|
||||
<div class="wz">催促{{title}}</div>
|
||||
</div>
|
||||
<div class="btn btn2" @click="allStuOver">
|
||||
<div class="wz">批量标注完成</div>
|
||||
@@ -342,11 +342,14 @@ export default {
|
||||
);
|
||||
}
|
||||
});
|
||||
// state.tabledata = arr;
|
||||
};
|
||||
ListOpera();
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:Fvisible", false);
|
||||
state.name = ""
|
||||
state.projectName = ""
|
||||
state.selectedRowKeys = []
|
||||
state.currentPage = 1
|
||||
};
|
||||
const afterVisibleChange = (bol) => {
|
||||
if ( bol == true ) {
|
||||
@@ -373,9 +376,9 @@ export default {
|
||||
//催促学员学习
|
||||
const godie = () => {
|
||||
message.destroy()
|
||||
message.success("催促学员成功")
|
||||
message.success("催促"+props.title+"成功")
|
||||
};
|
||||
//清空所选
|
||||
//表头清空
|
||||
const clearLine = ()=> {
|
||||
state.selectedRowKeys=[]
|
||||
}
|
||||
@@ -455,10 +458,11 @@ export default {
|
||||
|
||||
//重置任务列表
|
||||
const resetTaskList = () => {
|
||||
state.name = "";
|
||||
state.projectName = "";
|
||||
state.tabledata = [];
|
||||
//getManageList();
|
||||
state.name = ""
|
||||
state.projectName = ""
|
||||
state.selectedRowKeys = []
|
||||
state.currentPage = 1
|
||||
getManageList();
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -166,42 +166,15 @@ export default {
|
||||
setup(props, ctx) {
|
||||
const state = reactive({
|
||||
classTableData: [
|
||||
{
|
||||
key: "1",
|
||||
num: "JDF2022071100001",
|
||||
name: "时间管理课程",
|
||||
content: "通用力",
|
||||
teacher: "BOE教师",
|
||||
creator: "管理员",
|
||||
time: "2022-10-31 23:12:00",
|
||||
},
|
||||
{
|
||||
key: "2",
|
||||
num: "JDF2022071100001",
|
||||
name: "时间管理课程",
|
||||
content: "通用力",
|
||||
teacher: "BOE教师",
|
||||
creator: "管理员",
|
||||
time: "2022-10-31 23:12:00",
|
||||
},
|
||||
{
|
||||
key: "3",
|
||||
num: "JDF2022071100001",
|
||||
name: "时间管理课程",
|
||||
content: "通用力",
|
||||
teacher: "BOE教师",
|
||||
creator: "管理员",
|
||||
time: "2022-10-31 23:12:00",
|
||||
},
|
||||
{
|
||||
key: "4",
|
||||
num: "JDF2022071100001",
|
||||
name: "时间管理课程",
|
||||
content: "通用力",
|
||||
teacher: "BOE教师",
|
||||
creator: "管理员",
|
||||
time: "2022-10-31 23:12:00",
|
||||
},
|
||||
// {
|
||||
// key: "1",
|
||||
// num: "JDF2022071100001",
|
||||
// name: "时间管理课程",
|
||||
// content: "通用力",
|
||||
// teacher: "BOE教师",
|
||||
// creator: "管理员",
|
||||
// time: "2022-10-31 23:12:00",
|
||||
// }
|
||||
],
|
||||
currentPage: 1,
|
||||
tableDataTotal: null,
|
||||
@@ -233,10 +206,10 @@ export default {
|
||||
const getClassList = (obj) => {
|
||||
let objn = obj || {
|
||||
auditStatus: 0,
|
||||
beginTime: 0,
|
||||
// beginTime: 0,
|
||||
categoryId: 0,
|
||||
createName: "",
|
||||
endTime: 0,
|
||||
// endTime: 0,
|
||||
name: "",
|
||||
pageNo: state.currentPage,
|
||||
pageSize: 10,
|
||||
@@ -263,10 +236,10 @@ export default {
|
||||
let obj = {
|
||||
key: value.offcourseId,
|
||||
num: value.offcourseId,
|
||||
name: value.name,
|
||||
teacher: value.teacher,
|
||||
creator: value.teacher,
|
||||
time: toDate(value.publishTime / 1000, "Y-M-D"),
|
||||
name: value.name || "-",
|
||||
teacher: value.teacher || "-",
|
||||
creator: value.createName || "-",
|
||||
time: toDate(value.publishTime / 1000, "Y-M-D h:m"),
|
||||
categoryId: value.categoryId,
|
||||
//需要判断content
|
||||
};
|
||||
@@ -290,11 +263,11 @@ export default {
|
||||
const search = () => {
|
||||
let obj = {
|
||||
auditStatus: 0,
|
||||
beginTime: 0,
|
||||
// beginTime: 0,
|
||||
categoryId: 0, //分类
|
||||
createName: "",
|
||||
endTime: 0,
|
||||
name: "",
|
||||
// endTime: 0,
|
||||
name: state.valueClass,
|
||||
pageNo: state.currentPage,
|
||||
pageSize: 10,
|
||||
projectName: "",
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<div
|
||||
class="btn btn1"
|
||||
style="margin-right: 20px"
|
||||
@click="searchTaskList"
|
||||
@click="getManageList"
|
||||
>
|
||||
<div class="img1"></div>
|
||||
<div class="wz">搜索</div>
|
||||
@@ -112,7 +112,7 @@
|
||||
|
||||
<script>
|
||||
import { toRefs, reactive } from "vue";
|
||||
import * as api from "../../api/indexTest";
|
||||
import * as api from "../../api/indexExam";
|
||||
import { message } from "ant-design-vue";
|
||||
import { iframeUrl } from "../../api/method";
|
||||
export default {
|
||||
@@ -131,7 +131,7 @@ export default {
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
currentPage: 1,
|
||||
tableDataTotal: 0,
|
||||
tableDataTotal: 50,
|
||||
projectName: "",
|
||||
tableData: [],
|
||||
selectedRowKeys: [],
|
||||
@@ -205,7 +205,9 @@ export default {
|
||||
};
|
||||
|
||||
const onChange = (pageNumber) => {
|
||||
console.log("Page: ", pageNumber);
|
||||
state.pageNo = pageNumber;
|
||||
state.currentPage = pageNumber;
|
||||
getManageList();
|
||||
};
|
||||
|
||||
const onSelectChange = (selectedRowKeys, selectedRows) => {
|
||||
@@ -237,21 +239,16 @@ export default {
|
||||
});
|
||||
state.tableData = array;
|
||||
};
|
||||
//获取任务管理列表
|
||||
//获取选择考试列表
|
||||
const getManageList = () => {
|
||||
let obj = {
|
||||
// "keyWord": "",
|
||||
// "pageIndex": 0,
|
||||
// "pageSize": 0,
|
||||
// "published": true,
|
||||
keyWord: "",
|
||||
orderAsc: true,
|
||||
orderFiled: "",
|
||||
pageIndex: 0,
|
||||
pageSize: 0,
|
||||
"keyWord": state.inputPname,
|
||||
"pageIndex": state.pageSize,
|
||||
"pageSize": state.pageSize,
|
||||
"published": true
|
||||
};
|
||||
api
|
||||
.queryExaminationPaper(obj)
|
||||
.queryExaminationList(obj)
|
||||
.then((res) => {
|
||||
getTableDate(res.data.data);
|
||||
message.success("获取选择考试列表成功");
|
||||
@@ -262,35 +259,6 @@ export default {
|
||||
});
|
||||
};
|
||||
|
||||
//搜索任务列表 没接口
|
||||
const searchTaskList = () => {
|
||||
let objser = {
|
||||
name: "",
|
||||
pageNo: state.pageNo,
|
||||
pageSize: state.pageSize,
|
||||
projectId: 27,
|
||||
// projectTaskId: props.projectTaskId,
|
||||
projectTaskId: 370,
|
||||
status: -1,
|
||||
};
|
||||
if (state.name !== "" || state.projectName !== "") {
|
||||
api
|
||||
.taskStudentList(objser)
|
||||
.then((res) => {
|
||||
state.pageNo = res.data.data.pageNo;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
let newArr = [];
|
||||
for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
if (res.data.data.rows[i].userInfoBo.userName == state.name)
|
||||
newArr.push(res.data.data.rows[i].userInfoBo);
|
||||
}
|
||||
state.tabledata = newArr;
|
||||
})
|
||||
.catch(() => {});
|
||||
}
|
||||
};
|
||||
|
||||
//重置任务列表
|
||||
const resetTaskList = () => {
|
||||
state.inputPname = "";
|
||||
@@ -312,7 +280,6 @@ export default {
|
||||
tableDataFunc,
|
||||
onChange,
|
||||
getManageList,
|
||||
searchTaskList,
|
||||
resetTaskList,
|
||||
};
|
||||
},
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -64,7 +64,7 @@
|
||||
style="margin-right: 20px; cursor: pointer"
|
||||
>
|
||||
<div class="img2"></div>
|
||||
<div class="wz">催促考试</div>
|
||||
<div class="wz">催促{{title}}</div>
|
||||
</div>
|
||||
<div class="btn btn2">
|
||||
<div class="img1"></div>
|
||||
@@ -72,14 +72,6 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="tab" style="margin-top: 20px; margin-bottom: 100px">
|
||||
<!-- <a-table
|
||||
style="border: 1px solid #f2f6fe"
|
||||
:columns="tableDataFunc()"
|
||||
:data-source="tabledata"
|
||||
:loading="tableDataTotal === -1 ? true : false"
|
||||
:scroll="{ x: 900 }"
|
||||
:pagination="false"
|
||||
/> -->
|
||||
<div v-if="itemsType == 5">
|
||||
<a-table
|
||||
style="border: 1px solid #f2f6fe"
|
||||
@@ -134,7 +126,7 @@
|
||||
<script>
|
||||
import { toRefs, reactive } from "vue";
|
||||
import { message } from 'ant-design-vue';
|
||||
import * as api from "../../api/index";
|
||||
import * as api from "../../api/indexExam";
|
||||
import CQue from './CheckQue.vue'
|
||||
export default {
|
||||
name: "TestManage",
|
||||
@@ -163,7 +155,6 @@ export default {
|
||||
setup(props, ctx) {
|
||||
const state = reactive({
|
||||
name: null,
|
||||
open: false,
|
||||
CQvisible:false, //查看答卷抽屉
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
@@ -395,6 +386,10 @@ export default {
|
||||
}
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:TMvisible", false);
|
||||
state.name = ""
|
||||
state.currentPage = 1
|
||||
state.projectName = ""
|
||||
state.selectedRowKeys = []
|
||||
};
|
||||
const afterVisibleChange = (bol) => {
|
||||
if ( bol == true ) {
|
||||
@@ -408,7 +403,7 @@ export default {
|
||||
//催促
|
||||
const godie = () => {
|
||||
message.destroy()
|
||||
message.success("催促考试成功")
|
||||
message.success("催促"+props.title+"成功")
|
||||
};
|
||||
//换页
|
||||
const onChange = (pageNumber) => {
|
||||
@@ -439,15 +434,17 @@ export default {
|
||||
//获取任务管理列表
|
||||
const getManageList = () => {
|
||||
let obj = {
|
||||
// name: "",
|
||||
pageNo: state.pageNo,
|
||||
pageSize: state.pageSize,
|
||||
// projectId: 27,
|
||||
projectTaskId: props.projectTaskId,
|
||||
status: 0,
|
||||
aid:0,
|
||||
orderAsc:'',
|
||||
orderField:'',
|
||||
pageIndex:1,
|
||||
pageSize:10,
|
||||
refId:'',
|
||||
refType:'',
|
||||
testId:''
|
||||
};
|
||||
api
|
||||
.taskStudentList(obj)
|
||||
.queryUserAnswerPageDetailList(obj)
|
||||
.then((res) => {
|
||||
state.pageNo = res.data.data.pageNo;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
@@ -460,41 +457,42 @@ export default {
|
||||
};
|
||||
|
||||
//搜索任务列表
|
||||
const searchTaskList = () => {
|
||||
let objser = {
|
||||
// name: "",
|
||||
pageNo: state.pageNo,
|
||||
pageSize: state.pageSize,
|
||||
// projectId: 27,
|
||||
projectTaskId: props.projectTaskId,
|
||||
status: 0,
|
||||
};
|
||||
if (state.name !== "" || state.projectName !== "") {
|
||||
api
|
||||
.taskStudentList(objser)
|
||||
.then((res) => {
|
||||
state.pageNo = res.data.data.pageNo;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
let newArr = [];
|
||||
for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
if (res.data.data.rows[i].userInfoBo.userName == state.name)
|
||||
newArr.push(res.data.data.rows[i].userInfoBo);
|
||||
}
|
||||
state.tabledata = newArr;
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("搜索任务列表失败", err);
|
||||
});
|
||||
}
|
||||
};
|
||||
// const searchTaskList = () => {
|
||||
// let objser = {
|
||||
// // name: "",
|
||||
// pageNo: state.pageNo,
|
||||
// pageSize: state.pageSize,
|
||||
// // projectId: 27,
|
||||
// projectTaskId: props.projectTaskId,
|
||||
// status: 0,
|
||||
// };
|
||||
// if (state.name !== "" || state.projectName !== "") {
|
||||
// api
|
||||
// .taskStudentList(objser)
|
||||
// .then((res) => {
|
||||
// state.pageNo = res.data.data.pageNo;
|
||||
// state.pageSize = res.data.data.pageSize;
|
||||
// state.pageSize = res.data.data.pageSize;
|
||||
// let newArr = [];
|
||||
// for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
// if (res.data.data.rows[i].userInfoBo.userName == state.name)
|
||||
// newArr.push(res.data.data.rows[i].userInfoBo);
|
||||
// }
|
||||
// state.tabledata = newArr;
|
||||
// })
|
||||
// .catch((err) => {
|
||||
// console.log("搜索任务列表失败", err);
|
||||
// });
|
||||
// }
|
||||
// };
|
||||
|
||||
//重置任务列表
|
||||
const resetTaskList = () => {
|
||||
state.name = "";
|
||||
state.projectName = "";
|
||||
state.tabledata = [];
|
||||
// getManageList();
|
||||
state.name = ""
|
||||
state.currentPage = 1
|
||||
state.projectName = ""
|
||||
state.selectedRowKeys = []
|
||||
getManageList();
|
||||
};
|
||||
|
||||
return {
|
||||
@@ -508,7 +506,7 @@ export default {
|
||||
godie,
|
||||
onChange,
|
||||
getManageList,
|
||||
searchTaskList,
|
||||
// searchTaskList,
|
||||
resetTaskList,
|
||||
};
|
||||
},
|
||||
@@ -670,7 +668,7 @@ export default {
|
||||
background-color: #eff4fc !important;
|
||||
}
|
||||
|
||||
th,th.h {
|
||||
th.h {
|
||||
background-color: #eff4fc !important;
|
||||
}
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
<div class="btnss" style="margin-top: 20px">
|
||||
<div class="btn btn1" @click="godie" style="margin-right: 20px">
|
||||
<div class="img1"></div>
|
||||
<div class="wz">催促学习</div>
|
||||
<div class="wz">催促{{title}}</div>
|
||||
</div>
|
||||
<div class="btn btn2">
|
||||
<div class="img2"></div>
|
||||
@@ -135,7 +135,6 @@ export default {
|
||||
visible: props.Tvisible,
|
||||
CVvisible:false, //查看投票抽屉
|
||||
name: "",
|
||||
open: false,
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
currentPage: 1,
|
||||
@@ -344,6 +343,10 @@ export default {
|
||||
ListOpera();
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:Tvisible", false);
|
||||
state.currentPage = 1
|
||||
state.name = ""
|
||||
state.projectName = ""
|
||||
state.tabledata = []
|
||||
};
|
||||
const afterVisibleChange = (bol) => {
|
||||
if ( bol == true ) {
|
||||
@@ -356,11 +359,43 @@ export default {
|
||||
//催促
|
||||
const godie = () => {
|
||||
message.destroy()
|
||||
message.success("催促学习成功")
|
||||
message.success("催促"+props.title+"成功")
|
||||
};
|
||||
const onChange = (pageNumber) => {
|
||||
console.log("Page: ", pageNumber);
|
||||
};
|
||||
//渲染到列表中
|
||||
const getTableDate = (tableData) => {
|
||||
let data = tableData;
|
||||
let array = [];
|
||||
data.map((value, index) => {
|
||||
if(props.itemsType ==12 ){
|
||||
let obj = {
|
||||
key: index+1,
|
||||
workNum:"",
|
||||
userName:value.useInfoBo.userName,
|
||||
deptName:value.useInfoBo.deptName,
|
||||
jobName:value.useInfoBo.jobName,
|
||||
time:"",
|
||||
status:"",
|
||||
operation:"",
|
||||
};
|
||||
array.push(obj);
|
||||
}else{
|
||||
let obj = {
|
||||
key: index+1,
|
||||
workNum:"",
|
||||
userName:value.userName,
|
||||
deptName:value.deptName,
|
||||
jobName:value.jobName,
|
||||
time:"",
|
||||
status:"",
|
||||
};
|
||||
array.push(obj);
|
||||
}
|
||||
});
|
||||
state.tabledata = array;
|
||||
};
|
||||
//获取任务管理列表
|
||||
const getManageList = () => {
|
||||
let obj = {
|
||||
@@ -376,10 +411,10 @@ export default {
|
||||
.then((res) => {
|
||||
state.pageNo = res.data.data.pageNo;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
state.tabledata.push(res.data.data.rows[i].userInfoBo);
|
||||
}
|
||||
ListOpera();
|
||||
// for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
// state.tabledata.push(res.data.data.rows[i].userInfoBo);
|
||||
// }
|
||||
getTableDate(res.data.data.rows)
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err,'sss');
|
||||
|
||||
@@ -298,6 +298,9 @@ export default {
|
||||
ListOpera();
|
||||
const closeDrawer = () => {
|
||||
ctx.emit("update:Wvisible", false);
|
||||
state.name = ""
|
||||
state.currentPage = 1
|
||||
state.projectName = ""
|
||||
};
|
||||
const afterVisibleChange = (bol) => {
|
||||
if ( bol == true ) {
|
||||
@@ -319,7 +322,38 @@ export default {
|
||||
const onChange = (pageNumber) => {
|
||||
console.log("Page: ", pageNumber);
|
||||
};
|
||||
|
||||
//渲染到列表中
|
||||
const getTableDate = (tableData) => {
|
||||
let data = tableData;
|
||||
let array = [];
|
||||
data.map((value, index) => {
|
||||
if(props.itemsType ==12 ){
|
||||
let obj = {
|
||||
key: index+1,
|
||||
workNum:"",
|
||||
userName:value.useInfoBo.userName,
|
||||
deptName:value.useInfoBo.deptName,
|
||||
jobName:value.useInfoBo.jobName,
|
||||
time:"",
|
||||
status:"",
|
||||
operation:"",
|
||||
};
|
||||
array.push(obj);
|
||||
}else{
|
||||
let obj = {
|
||||
key: index+1,
|
||||
workNum:"",
|
||||
userName:value.userName,
|
||||
deptName:value.deptName,
|
||||
jobName:value.jobName,
|
||||
time:"",
|
||||
status:"",
|
||||
};
|
||||
array.push(obj);
|
||||
}
|
||||
});
|
||||
state.tabledata = array;
|
||||
};
|
||||
//获取任务管理列表
|
||||
const getManageList = () => {
|
||||
let obj = {
|
||||
@@ -335,10 +369,10 @@ export default {
|
||||
.then((res) => {
|
||||
state.pageNo = res.data.data.pageNo;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
state.pageSize = res.data.data.pageSize;
|
||||
for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
state.tabledata.push(res.data.data.rows[i].userInfoBo);
|
||||
}
|
||||
// for (let i = 0; i < res.data.data.rows.length; i++) {
|
||||
// state.tabledata.push(res.data.data.rows[i].userInfoBo);
|
||||
// }
|
||||
getTableDate(res.data.data.rows)
|
||||
})
|
||||
.catch(() => {
|
||||
});
|
||||
@@ -377,10 +411,10 @@ export default {
|
||||
|
||||
//重置任务列表
|
||||
const resetTaskList = () => {
|
||||
state.name = "";
|
||||
state.projectName = "";
|
||||
state.tabledata = [];
|
||||
// getManageList();
|
||||
state.name = ""
|
||||
state.currentPage = 1
|
||||
state.projectName = ""
|
||||
getManageList();
|
||||
};
|
||||
|
||||
return {
|
||||
|
||||
@@ -26,20 +26,20 @@ export function traverseArr(arr, traverseObj, saveOld = false) {
|
||||
return newArr;
|
||||
}
|
||||
|
||||
// export function deepClone(obj) {
|
||||
// let result = typeof obj.splice === "function" ? [] : {};
|
||||
// if (obj && typeof obj === "object") {
|
||||
// for (let key in obj) {
|
||||
// if (obj[key] && typeof obj[key] === "object") {
|
||||
// result[key] = deepClone(obj[key]);
|
||||
// } else {
|
||||
// result[key] = obj[key];
|
||||
// }
|
||||
// }
|
||||
// return result;
|
||||
// }
|
||||
// return obj;
|
||||
// }
|
||||
export function deepClone(obj) {
|
||||
let result = typeof obj.splice === "function" ? [] : {};
|
||||
if (obj && typeof obj === "object") {
|
||||
for (let key in obj) {
|
||||
if (obj[key] && typeof obj[key] === "object") {
|
||||
result[key] = deepClone(obj[key]);
|
||||
} else {
|
||||
result[key] = obj[key];
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
export function deepCloneFilterString(obj, fillterKeys) {
|
||||
let result = typeof obj.splice === "function" ? [] : {};
|
||||
@@ -95,6 +95,14 @@ export function getdateToTime(date) {
|
||||
return `${y}-${m < 10 ? "0" + m : m}-${d < 10 ? "0" + d : d} ${hh}:${mm}`;
|
||||
}
|
||||
|
||||
export function getdateToDate(date) {
|
||||
let now = new Date(parseInt(date)),
|
||||
y = now.getFullYear(),
|
||||
m = now.getMonth() + 1,
|
||||
d = now.getDate();
|
||||
return `${y}${m < 10 ? "0" + m : m}${d < 10 ? "0" + d : d}`;
|
||||
}
|
||||
|
||||
//计算两个时间之间的时间差 多少天时分秒
|
||||
export function intervalTime(startTime) {
|
||||
const curTime = new Date().getTime(); //计算当前时间戳
|
||||
@@ -117,3 +125,47 @@ export function intervalTime(startTime) {
|
||||
seconds,
|
||||
};
|
||||
}
|
||||
|
||||
// 分片处理
|
||||
export function batchLoadList(
|
||||
sourceData,
|
||||
dataTotal,
|
||||
splitNumber = 10,
|
||||
callback,
|
||||
complete
|
||||
) {
|
||||
if (sourceData.length <= splitNumber) {
|
||||
typeof callback === "function" && callback(sourceData);
|
||||
typeof callback === "function" && complete();
|
||||
return;
|
||||
}
|
||||
let first = 0;
|
||||
const intTime = parseInt(String(dataTotal / splitNumber));
|
||||
const floatTime = sourceData.length % splitNumber;
|
||||
const total = intTime + (floatTime > 0 ? 1 : 0);
|
||||
for (let i = 0; i < total; i += 1) {
|
||||
const end = first + splitNumber;
|
||||
const splitArray = sourceData.slice(first, end);
|
||||
setTimeout(() => {
|
||||
typeof callback === "function" && callback(splitArray);
|
||||
if (i === total - 1) {
|
||||
// 分片处理完成
|
||||
typeof callback === "function" && complete();
|
||||
}
|
||||
});
|
||||
first = end;
|
||||
}
|
||||
}
|
||||
|
||||
export function newFile(code) {
|
||||
const blob = new Blob([code], {
|
||||
type: "application/vnd.ms-excel",
|
||||
});
|
||||
const linkNode = document.createElement("a");
|
||||
linkNode.style.display = "none";
|
||||
linkNode.href = URL.createObjectURL(blob); //生成一个Blob URL
|
||||
document.body.appendChild(linkNode);
|
||||
linkNode.click(); //模拟在按钮上的一次鼠标单击
|
||||
URL.revokeObjectURL(linkNode.href); // 释放URL 对象
|
||||
document.body.removeChild(linkNode);
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -167,7 +167,7 @@ export default {
|
||||
key: "opt",
|
||||
align: "center",
|
||||
customRender: () => {
|
||||
return <div>审核日志</div>;
|
||||
return <div style="color:#387DF7">审核日志</div>;
|
||||
},
|
||||
},
|
||||
],
|
||||
@@ -198,7 +198,9 @@ export default {
|
||||
console.log("获取已审核课程成功", res.data.data);
|
||||
let result = res.data.data.rows;
|
||||
state.total = res.data.data.total;
|
||||
setTableData(result);
|
||||
if (res.data.data.total > 0) {
|
||||
setTableData(result);
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("获取已审核课程失败", err);
|
||||
@@ -210,13 +212,22 @@ export default {
|
||||
data.map((item) => {
|
||||
let obj = {
|
||||
number: item.offcourseId,
|
||||
name: item.name,
|
||||
name: item.name || "- ",
|
||||
type: item.type == 1 ? "线上" : "线下",
|
||||
content: item.categoryId,
|
||||
status: item.auditStatus == 2 ? "通过" : "拒绝",
|
||||
status:
|
||||
item.auditStatus == 0
|
||||
? "未提交"
|
||||
: item.auditStatus == 1
|
||||
? "提交待审核"
|
||||
: item.auditStatus == 2
|
||||
? "通过"
|
||||
: item.auditStatus == -1
|
||||
? "拒绝"
|
||||
: "-",
|
||||
creater: item.createName,
|
||||
time: "-",
|
||||
msg: item.description,
|
||||
msg: item.description || "-",
|
||||
};
|
||||
array.push(obj);
|
||||
});
|
||||
|
||||
@@ -500,7 +500,7 @@ export default {
|
||||
return (
|
||||
<div>
|
||||
<span
|
||||
style="cursor:pointer"
|
||||
style="cursor:pointer;color:#387DF7"
|
||||
onClick={() => {
|
||||
showAudit(
|
||||
value.record.createId,
|
||||
@@ -512,7 +512,7 @@ export default {
|
||||
审核
|
||||
</span>
|
||||
|
||||
<span style="cursor:pointer">预览</span>
|
||||
<span style="cursor:pointer;color:#387DF7">预览</span>
|
||||
</div>
|
||||
);
|
||||
},
|
||||
@@ -529,10 +529,10 @@ export default {
|
||||
const getFaceList = (obj) => {
|
||||
let objn = obj || {
|
||||
auditStatus: 1,
|
||||
beginTime: 0,
|
||||
// beginTime: 0,
|
||||
categoryId: 0,
|
||||
createName: "",
|
||||
endTime: 0,
|
||||
// endTime: 0,
|
||||
name: "",
|
||||
pageNo: state.currentPage,
|
||||
pageSize: 10,
|
||||
@@ -560,10 +560,19 @@ export default {
|
||||
name: item.name,
|
||||
type: item.type == 1 ? "线上" : "线下",
|
||||
content: item.categoryId,
|
||||
status: "待审核",
|
||||
status:
|
||||
item.status == 0
|
||||
? "未提交"
|
||||
: item.status == 1
|
||||
? "待审核"
|
||||
: item.status == 2
|
||||
? "通过"
|
||||
: item.status == -1
|
||||
? "拒绝"
|
||||
: "-",
|
||||
change: "-",
|
||||
creater: item.createName,
|
||||
time: toDate(item.createTime, "Y-M-D h-m"),
|
||||
time: toDate(item.createTime, "Y-M-D h:m"),
|
||||
createrId: item.createId,
|
||||
offId: item.offcourseId,
|
||||
};
|
||||
@@ -580,10 +589,11 @@ export default {
|
||||
const search = () => {
|
||||
let obj = {
|
||||
auditStatus: 1,
|
||||
beginTime: 0,
|
||||
categoryId: state.valueproj,
|
||||
// beginTime: 0,
|
||||
// categoryId: state.valueproj,
|
||||
categoryId: 0,
|
||||
createName: state.valuecreater,
|
||||
endTime: 0,
|
||||
// endTime: 0,
|
||||
name: state.valuename,
|
||||
pageNo: state.currentPage,
|
||||
pageSize: 10,
|
||||
|
||||
@@ -242,7 +242,7 @@ export default {
|
||||
onClick={() => {
|
||||
showProjAuditModal(value.record.id);
|
||||
}}
|
||||
style="cursor:pointer"
|
||||
style="cursor:pointer;color:#387DF7"
|
||||
>
|
||||
审核日志
|
||||
</span>
|
||||
@@ -330,11 +330,24 @@ export default {
|
||||
// 需要加上
|
||||
// name: getName(item),
|
||||
// belong: getBelong(item),
|
||||
manager: item.manager,
|
||||
status: item.status == 2 ? "通过" : "拒绝",
|
||||
manager: item.manager || "-",
|
||||
status:
|
||||
item.status == 0
|
||||
? "草稿"
|
||||
: item.status == 1
|
||||
? "待审核"
|
||||
: item.status == 2
|
||||
? "通过"
|
||||
: item.status == 3
|
||||
? "发布"
|
||||
: item.status == -1
|
||||
? "已结束"
|
||||
: item.status == -2
|
||||
? "拒绝"
|
||||
: "-",
|
||||
creater: item.createName,
|
||||
time: toDate(item.beginTime, "Y-M-D h-m"),
|
||||
msg: item.description,
|
||||
time: toDate(item.beginTime, "Y-M-D h:m"),
|
||||
msg: item.description || "-",
|
||||
id: item.projectId,
|
||||
};
|
||||
array.push(obj);
|
||||
|
||||
@@ -194,7 +194,7 @@ export default {
|
||||
return (
|
||||
<div>
|
||||
<span
|
||||
style="cursor:pointer"
|
||||
style="cursor:pointer;color:#387DF7"
|
||||
onClick={() => {
|
||||
showProjAudit(
|
||||
value.record.projectId,
|
||||
@@ -260,8 +260,21 @@ export default {
|
||||
number: item.projectId,
|
||||
name: getName(item),
|
||||
belong: getBelong(item),
|
||||
manager: item.manager,
|
||||
status: "待审核",
|
||||
manager: item.manager || "-",
|
||||
status:
|
||||
item.status == 0
|
||||
? "草稿"
|
||||
: item.status == 1
|
||||
? "待审核"
|
||||
: item.status == 2
|
||||
? "通过"
|
||||
: item.status == 3
|
||||
? "发布"
|
||||
: item.status == -1
|
||||
? "已结束"
|
||||
: item.status == -2
|
||||
? "拒绝"
|
||||
: "-",
|
||||
creater: item.createName,
|
||||
time: toDate(item.createTime, "Y-M-D h-m"),
|
||||
projectId: item.projectId,
|
||||
|
||||
@@ -1348,7 +1348,7 @@ export default {
|
||||
//在线抽屉
|
||||
const showDrawerAddOnline = (id, eleId) => {
|
||||
state.addonlinevisible = true;
|
||||
state.EditWorkId = id;
|
||||
state.EditOnlineId = id;
|
||||
state.routerTaskId = eleId;
|
||||
};
|
||||
//面授抽屉
|
||||
@@ -1360,12 +1360,11 @@ export default {
|
||||
//案例抽屉
|
||||
const showDrawerAddCase = (id, eleId) => {
|
||||
state.addcasevisible = true;
|
||||
state.EditWorkId = id;
|
||||
state.EditCaseId = id;
|
||||
state.routerTaskId = eleId;
|
||||
};
|
||||
// 作业抽屉
|
||||
const showDrawerAddHomework = (id, eleId) => {
|
||||
console.log("homework==============", id, state.isactive);
|
||||
state.addhomeworkvisible = true;
|
||||
state.EditWorkId = id;
|
||||
state.routerTaskId = eleId;
|
||||
@@ -1390,7 +1389,6 @@ export default {
|
||||
};
|
||||
//投票抽屉
|
||||
const showDrawerAddVote = (id, eleId) => {
|
||||
// state.addhomeworkvisible = true;
|
||||
state.addvotevisible = true;
|
||||
state.EditVoteId = id;
|
||||
state.routerTaskId = eleId;
|
||||
@@ -1432,10 +1430,6 @@ export default {
|
||||
if (state.level[i].chapterId === id) {
|
||||
let array = [];
|
||||
state.chooseProjectList = JSON.stringify(state.level[i].taskList);
|
||||
// console.log(
|
||||
// "goggoo",
|
||||
// Object.prototype.toString.call(state.chooseProjectList)
|
||||
// );
|
||||
state.level[i].taskList.forEach((element) => {
|
||||
let obj = {
|
||||
id: element.routerTaskId,
|
||||
@@ -1465,7 +1459,6 @@ export default {
|
||||
const getDetail = () => {
|
||||
GetRouterDetail(state.routerId)
|
||||
.then((res) => {
|
||||
console.log("res.data.data.chapterList", res.data.data.chapterList);
|
||||
//给level赋初始值
|
||||
state.level = res.data.data.chapterList;
|
||||
state.styTitle = res.data.data.routerInfo.name;
|
||||
@@ -1526,7 +1519,6 @@ export default {
|
||||
{
|
||||
title: "姓名",
|
||||
dataIndex: "name",
|
||||
// width: "30%",
|
||||
key: "name",
|
||||
width: 60,
|
||||
align: "left",
|
||||
|
||||
@@ -651,11 +651,9 @@ import { message } from "ant-design-vue";
|
||||
import * as api from "@/api/indexTemplate"
|
||||
import { useRouter } from "vue-router";
|
||||
import {scoreRule,setScoreRule} from "@/api/indexTaskadd"
|
||||
import { useStore } from "vuex";
|
||||
export default defineComponent({
|
||||
name: "LibraryAdd",
|
||||
setup() {
|
||||
const store = useStore();
|
||||
const state = reactive({
|
||||
//任务大纲列表
|
||||
taskSyllabus: [
|
||||
@@ -817,6 +815,9 @@ export default defineComponent({
|
||||
level: null,
|
||||
systemId: null,
|
||||
boeFlag: false,
|
||||
status:null,
|
||||
picUrl: null,
|
||||
noticeFlag: null,
|
||||
}
|
||||
});
|
||||
const value = ref("");
|
||||
@@ -880,12 +881,12 @@ export default defineComponent({
|
||||
});
|
||||
// 获取详情
|
||||
const getDetail = () => {
|
||||
api.templateDetail(store.state.projectTemplateId).then(res => {
|
||||
api.templateDetail(localStorage.getItem('projectTemplateId')).then(res => {
|
||||
state.taskSyllabus = []
|
||||
console.log(res);
|
||||
state.projectInfo.name = res.data.data.projectTemplateInfo.name
|
||||
let time = new Date(Number(res.data.data.projectTemplateInfo.createTime))
|
||||
state.projectInfo.beginTime = time.toLocaleDateString()
|
||||
state.projectInfo.beginTime = res.data.data.projectTemplateInfo.beginTime
|
||||
state.projectInfo.endTime = res.data.data.projectTemplateInfo.endTime
|
||||
state.projectInfo.manager = res.data.data.projectTemplateInfo.manager
|
||||
state.projectInfo.notice = res.data.data.projectTemplateInfo.notice
|
||||
state.projectInfo.sourceBelongId = res.data.data.projectTemplateInfo.sourceBelongId
|
||||
@@ -895,6 +896,9 @@ export default defineComponent({
|
||||
state.projectInfo.level = res.data.data.projectTemplateInfo.level
|
||||
state.projectInfo.systemId = res.data.data.projectTemplateInfo.systemId
|
||||
state.projectInfo.boeFlag = res.data.data.projectTemplateInfo.boeFlag
|
||||
state.projectInfo.noticeFlag = res.data.data.projectTemplateInfo.noticeFlag
|
||||
state.projectInfo.remark = res.data.data.projectTemplateInfo.remark
|
||||
state.projectInfo.status = res.data.data.projectTemplateInfo.status
|
||||
state.projectInfo.picUrl = res.data.data.projectTemplateInfo.picUrl
|
||||
let data = res.data.data.stageList;
|
||||
for(let i in data) {
|
||||
@@ -922,9 +926,9 @@ export default defineComponent({
|
||||
let obj = {
|
||||
"name": state.projectInfo.name,
|
||||
"category": state.projectInfo.category,
|
||||
"picUrl": "x",
|
||||
"beginTime": Number(state. projectInfo.beginTime) || 1,
|
||||
"endTime": 1,
|
||||
"picUrl": state.projectInfo.picUrl,
|
||||
"beginTime": new Date(state.projectInfo.beginTime).getTime(),
|
||||
"endTime": new Date(state.projectInfo.endTime).getTime(),
|
||||
"manager": state.projectInfo.manager,
|
||||
"managerId": state.projectInfo.managerId || 0,
|
||||
"sourceBelongId": state.projectInfo.sourceBelongId,
|
||||
@@ -934,7 +938,7 @@ export default defineComponent({
|
||||
"courseSyncFlag": state.projectInfo.courseSyncFlag? 1:0,
|
||||
"notice": state.projectInfo.notice,
|
||||
"noticeFlag": 0,
|
||||
"projectTemplateId": store.state.projectTemplateId,
|
||||
"projectTemplateId": localStorage.getItem('projectTemplateId'),
|
||||
"remark": "",
|
||||
"status": 0,
|
||||
};
|
||||
@@ -981,7 +985,7 @@ export default defineComponent({
|
||||
const stateEdit = () => {
|
||||
let obj={
|
||||
"name": "",
|
||||
"projectTemplateId": store.state.projectTemplateId,
|
||||
"projectTemplateId": localStorage.getItem('projectTemplateId'),
|
||||
"remark": "",
|
||||
"stageId": 0
|
||||
}
|
||||
@@ -1001,7 +1005,7 @@ export default defineComponent({
|
||||
"flag": true,
|
||||
"name": "",
|
||||
"projectTaskId": 0,
|
||||
"projectTemplateId": store.state.projectTemplateId,
|
||||
"projectTemplateId": localStorage.getItem('projectTemplateId'),
|
||||
"stageId": 0,
|
||||
"type": 0
|
||||
}
|
||||
@@ -1015,7 +1019,7 @@ export default defineComponent({
|
||||
}
|
||||
const getScoreRule = () => {
|
||||
scoreRule({
|
||||
projectId: store.state.projectTemplateId,
|
||||
projectId: localStorage.getItem('projectTemplateId'),
|
||||
})
|
||||
.then((res) => {
|
||||
console.log("获取了项目积分规则", res.data.data);
|
||||
@@ -1070,7 +1074,7 @@ export default defineComponent({
|
||||
},
|
||||
],
|
||||
leaderScore: state.seven1,
|
||||
projectId: store.state.projectTemplateId,
|
||||
projectId: localStorage.getItem('projectTemplateId'),
|
||||
signScore: state.six1,
|
||||
topCompleteCourseItem: [
|
||||
{
|
||||
@@ -1612,7 +1616,7 @@ export default defineComponent({
|
||||
|
||||
}
|
||||
.ntc_body {
|
||||
margin-left: 65px;
|
||||
margin-left: 35px;
|
||||
margin-right: 34px;
|
||||
.ntc_switch {
|
||||
display: flex;
|
||||
|
||||
@@ -10,19 +10,11 @@
|
||||
@click="showCancel"
|
||||
/>
|
||||
</div>
|
||||
<!-- @click="showModal" -->
|
||||
<div class="btn btn3" @click="showModal()" style="margin-left: 19px">
|
||||
<div class="search"></div>
|
||||
<div class="btnText">添加阶段</div>
|
||||
</div>
|
||||
<div class="maincon" style="background-color: #fff">
|
||||
<!-- <div
|
||||
class="items"
|
||||
:class="{ active: isActive == true }"
|
||||
@click="changebgc"
|
||||
v-for="item in level"
|
||||
:key="item.id"
|
||||
> -->
|
||||
|
||||
<draggable
|
||||
v-model="level"
|
||||
@@ -691,12 +683,6 @@
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 编辑在线侧弹窗 -->
|
||||
<div>
|
||||
<edit-online v-model:editonlineVisible="editonlinevisible" />
|
||||
</div>
|
||||
<!-- 编辑在线侧弹窗 -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1034,7 +1020,6 @@
|
||||
<script>
|
||||
import { reactive, toRefs, onMounted, onUnmounted, onUpdated } from "vue";
|
||||
import AddOnline from "../../components/drawers/AddOnline.vue";
|
||||
import EditOnline from "../../components/drawers/EditOnline.vue";
|
||||
import AddFaceteach from "../../components/drawers/AddFaceteach.vue";
|
||||
import AddCase from "../../components/drawers/AddCase.vue";
|
||||
import AddHomework from "../../components/drawers/AddHomework.vue";
|
||||
@@ -1055,50 +1040,11 @@ import { storage } from "../../api/storage";
|
||||
import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
||||
// import * as api1 from "../../api/index1";
|
||||
|
||||
const drawercolumns = [
|
||||
{
|
||||
title: "项目名称",
|
||||
dataIndex: "projectName",
|
||||
key: "projectName",
|
||||
width: 200,
|
||||
// align: "center",
|
||||
ellipsis: true,
|
||||
// scopedSlots: { customRender: "action" }, //引入的插槽
|
||||
// customRender: (text, record) => {
|
||||
// console.log(text, record);
|
||||
// return <span>{text.text}</span>;
|
||||
// },
|
||||
},
|
||||
{
|
||||
title: "项目经理",
|
||||
dataIndex: "manager",
|
||||
key: "manager",
|
||||
width: 100,
|
||||
align: "center",
|
||||
},
|
||||
|
||||
{
|
||||
title: "创建人",
|
||||
dataIndex: "creater",
|
||||
// width: "30%",
|
||||
key: "creater",
|
||||
width: 100,
|
||||
align: "center",
|
||||
},
|
||||
{
|
||||
title: "创建时间",
|
||||
dataIndex: "time",
|
||||
key: "time",
|
||||
width: 180,
|
||||
align: "center",
|
||||
},
|
||||
];
|
||||
export default {
|
||||
name: "TaskAdd",
|
||||
components: {
|
||||
draggable,
|
||||
AddOnline,
|
||||
EditOnline,
|
||||
AddFaceteach,
|
||||
AddCase,
|
||||
AddHomework,
|
||||
@@ -1136,45 +1082,11 @@ export default {
|
||||
EditOnlineId: null, //要编辑的在线id
|
||||
EditFaceTeach: null,
|
||||
EditFaceId: null,
|
||||
EditEvalId: null,
|
||||
EditEvalId: null, //要编辑的测评id
|
||||
EditInvistId: null,
|
||||
EditVoteId: null, //编辑需要投票的id
|
||||
ballotId: "", //编辑需要的题干id
|
||||
projectTaskId: null, // 要编辑的具体任务id
|
||||
projectNameList: [
|
||||
{
|
||||
id: 1,
|
||||
value: "项目一",
|
||||
label: "项目一",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
value: "项目二",
|
||||
label: "项目二",
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
value: "项目三",
|
||||
label: "项目三",
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
value: "项目四",
|
||||
label: "项目四",
|
||||
},
|
||||
],
|
||||
projectNameList2: [
|
||||
{
|
||||
id: 1,
|
||||
value: "删除任务",
|
||||
label: "删除任务",
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
value: "移动任务到关卡",
|
||||
label: "移动任务到关卡",
|
||||
},
|
||||
],
|
||||
//阶段数据
|
||||
level: [],
|
||||
|
||||
@@ -1182,93 +1094,12 @@ export default {
|
||||
picUrl: null,
|
||||
//任务数据
|
||||
tableData: [],
|
||||
drawertableData: [
|
||||
{
|
||||
key: 1,
|
||||
projectName: "管理者进阶",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
children: [
|
||||
{
|
||||
key: "1-1",
|
||||
projectName: "管理者进阶-腾飞班",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
children: [
|
||||
{
|
||||
key: "1-1-1",
|
||||
projectName: "管理者进阶-腾飞班K1",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 2,
|
||||
projectName: "管理者进阶",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
children: [
|
||||
{
|
||||
key: "2-1",
|
||||
projectName: "管理者进阶-腾飞班",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
children: [
|
||||
{
|
||||
key: "2-1-1",
|
||||
projectName: "管理者进阶-腾飞班K1",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
key: 3,
|
||||
projectName: "管理者进阶-腾飞班K1",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
},
|
||||
{
|
||||
key: 4,
|
||||
projectName: "管理者进阶-腾飞班K1",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
},
|
||||
{
|
||||
key: 5,
|
||||
projectName: "管理者进阶-腾飞班K1",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
},
|
||||
{
|
||||
key: "1-1-1",
|
||||
projectName: "管理者进阶-腾飞班K1",
|
||||
manager: "黄华 刘俊",
|
||||
creater: "毛继禹",
|
||||
time: "2022-07-20 14:00:03",
|
||||
},
|
||||
],
|
||||
currentPage: 1,
|
||||
tableDataTotal: 100,
|
||||
pageSize: 10,
|
||||
addonlinevisible: false,
|
||||
addfaceteachvisible: false,
|
||||
addcasevisible: false,
|
||||
editonlinevisible: false,
|
||||
addhomeworkvisible: false,
|
||||
addtestvisible: false,
|
||||
addlivevisible: false,
|
||||
@@ -1488,7 +1319,6 @@ export default {
|
||||
<div class="opacation">
|
||||
<span
|
||||
onClick={() => {
|
||||
state.editonlinevisible = true;
|
||||
console.log(text, "编辑text");
|
||||
}}
|
||||
style="color:#4EA6FF;margin-right:25px;cursor:pointer"
|
||||
@@ -1600,8 +1430,7 @@ export default {
|
||||
api
|
||||
.deleteTask(obj)
|
||||
.then((res) => {
|
||||
console.log(res, "gggggggggggggggg");
|
||||
// deleteVoteText();
|
||||
console.log(res);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
@@ -1850,7 +1679,6 @@ export default {
|
||||
state.projectTaskId = eleId;
|
||||
state.adddiscussvisible = true;
|
||||
};
|
||||
|
||||
const showDrawerAddActive = (id, eleId) => {
|
||||
state.addactivevisible = true;
|
||||
state.EditActiveId = id;
|
||||
@@ -1859,8 +1687,7 @@ export default {
|
||||
};
|
||||
const showDrawerAddEval = (id, eleId) => {
|
||||
state.addevalvisible = true;
|
||||
// state.EditEvalId = id;
|
||||
state.evaluationId = id;
|
||||
state.EditEvalId = id;
|
||||
state.projectTaskId = eleId;
|
||||
};
|
||||
const showDrawerAddInvist = (id, eleId) => {
|
||||
@@ -1869,7 +1696,6 @@ export default {
|
||||
state.projectTaskId = eleId;
|
||||
};
|
||||
const showDrawerAddVote = (id, eleId) => {
|
||||
|
||||
state.addvotevisible = true;
|
||||
state.EditVoteId = id;
|
||||
state.projectTaskId = eleId;
|
||||
@@ -1985,13 +1811,6 @@ export default {
|
||||
message.warning("修改失败");
|
||||
});
|
||||
};
|
||||
|
||||
//打开测评的弹窗
|
||||
const showEditEvalDrawer = (id, eleId) => {
|
||||
state.addevalvisible = true;
|
||||
state.projectTaskId = eleId;
|
||||
state.EditEvalId = id;
|
||||
};
|
||||
//编辑的按钮
|
||||
const decideType = (type, id, eleId) => {
|
||||
state.edit = true;
|
||||
@@ -2001,7 +1820,7 @@ export default {
|
||||
} else if (type == "直播") {
|
||||
showDrawerAddLive(id, eleId);
|
||||
} else if (type == "测评") {
|
||||
showEditEvalDrawer(id, eleId);
|
||||
showDrawerAddEval(id, eleId);
|
||||
} else if (type == "评估") {
|
||||
showDrawerAddInvist(id, eleId);
|
||||
} else if (type == "投票") {
|
||||
@@ -2049,9 +1868,7 @@ export default {
|
||||
tableDataFunc,
|
||||
showModal,
|
||||
closeModal,
|
||||
// showDrawer,
|
||||
afterVisibleChange,
|
||||
drawercolumns,
|
||||
onSelectChange,
|
||||
showDrawerOnline,
|
||||
showDrawerFaceteach,
|
||||
@@ -2063,7 +1880,6 @@ export default {
|
||||
showDrawerAddDiscuss,
|
||||
showDrawerAddActive,
|
||||
showDrawerAddEval,
|
||||
showEditEvalDrawer,
|
||||
showDrawerAddInvist,
|
||||
showDrawerAddVote,
|
||||
showConfirm,
|
||||
@@ -2104,12 +1920,6 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
// .ant-input {
|
||||
// border-radius: 8px;
|
||||
// // height: 120%;
|
||||
// width: 384px;
|
||||
// height: 88px;
|
||||
// }
|
||||
.ConfirmModal {
|
||||
.ant-modal {
|
||||
width: 424px !important;
|
||||
@@ -2128,10 +1938,6 @@ export default {
|
||||
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%);
|
||||
@@ -2174,7 +1980,6 @@ export default {
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
flex-direction: column;
|
||||
// background-color: red;
|
||||
position: relative;
|
||||
.back {
|
||||
position: absolute;
|
||||
@@ -2248,12 +2053,9 @@ export default {
|
||||
|
||||
.name {
|
||||
width: 78%;
|
||||
// background-color: lightcoral;
|
||||
display: flex;
|
||||
margin-top: 20px;
|
||||
align-items: center;
|
||||
//height: 40px;
|
||||
// border: 1px solid black;
|
||||
.namebox {
|
||||
width: 120px;
|
||||
display: flex;
|
||||
@@ -2287,7 +2089,6 @@ export default {
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
height: 50px;
|
||||
//margin-left: -5px;
|
||||
margin-top: -25px;
|
||||
border-left: 2px solid rgba(78, 166, 255, 1);
|
||||
}
|
||||
@@ -2300,16 +2101,12 @@ export default {
|
||||
.in {
|
||||
margin-left: 14px;
|
||||
flex: 1;
|
||||
// .ant-radio-wrapper {
|
||||
// }
|
||||
.ant-input-affix-wrapper {
|
||||
width: 384px;
|
||||
border-radius: 8px;
|
||||
}
|
||||
.ant-input {
|
||||
border-radius: 8px;
|
||||
// height: 120%;
|
||||
//width: 384px;
|
||||
height: 30px;
|
||||
}
|
||||
}
|
||||
@@ -2327,7 +2124,6 @@ export default {
|
||||
width: 549px !important;
|
||||
height: 245px !important;
|
||||
.con {
|
||||
// background-color: #bfa;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
|
||||
@@ -2416,133 +2212,20 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
// .info {
|
||||
// width: 78%;
|
||||
// // background-color: lightcoral;
|
||||
// display: flex;
|
||||
// margin-top: 30px;
|
||||
// // align-items: center;
|
||||
// // height: 40px;
|
||||
// // border: 1px solid black;
|
||||
|
||||
// .inname {
|
||||
// color: #6f6f6f;
|
||||
// font-size: 14px;
|
||||
// margin-left: 26px;
|
||||
// margin-top: 15px;
|
||||
// }
|
||||
// .in {
|
||||
// margin-left: 14px;
|
||||
// width: 81%;
|
||||
// position: relative;
|
||||
// .ant-input {
|
||||
// border-radius: 5px;
|
||||
// // height: 120%;
|
||||
// width: 100%;
|
||||
// height: 130px;
|
||||
// resize: none;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .drawerStyle {
|
||||
// .ant-drawer-content-wrapper {
|
||||
// // max-width: 1000px;
|
||||
// .ant-drawer-header {
|
||||
// display: none !important;
|
||||
// }
|
||||
// .ant-drawer-body {
|
||||
// padding: 0;
|
||||
// }
|
||||
// }
|
||||
// .drawerMain {
|
||||
// min-width: 600px;
|
||||
// margin: 0px 32px 0px 32px;
|
||||
// overflow-x: auto;
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// .header {
|
||||
// height: 73px;
|
||||
// border-bottom: 1px solid #e8e8e8;
|
||||
// display: flex;
|
||||
// justify-content: space-between;
|
||||
// align-items: center;
|
||||
// // background-color: red;
|
||||
// margin-bottom: 20px;
|
||||
// .headerTitle {
|
||||
// font-size: 18px;
|
||||
// font-weight: 600;
|
||||
// color: #333333;
|
||||
// line-height: 25px;
|
||||
// // margin-left: 24px;
|
||||
// }
|
||||
// }
|
||||
// .drawerbox {
|
||||
// margin: 20px 38px 30px;
|
||||
// th {
|
||||
// background-color: #eff4fc !important;
|
||||
// }
|
||||
|
||||
// .ant-table-tbody
|
||||
// > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
|
||||
// > td {
|
||||
// background: #f6f9fd;
|
||||
// }
|
||||
// }
|
||||
// .btnn {
|
||||
// height: 72px;
|
||||
// width: 100%;
|
||||
// position: absolute;
|
||||
// bottom: 0;
|
||||
// left: 0;
|
||||
// display: flex;
|
||||
// align-items: center;
|
||||
// justify-content: center;
|
||||
// box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.16);
|
||||
// .btn1 {
|
||||
// width: 100px;
|
||||
// height: 40px;
|
||||
// border: 1px solid #4ea6ff;
|
||||
// border-radius: 8px;
|
||||
// color: #4ea6ff;
|
||||
// background-color: #fff;
|
||||
// cursor: pointer;
|
||||
// }
|
||||
// .btn2 {
|
||||
// cursor: pointer;
|
||||
// width: 100px;
|
||||
// height: 40px;
|
||||
// background: #4ea6ff;
|
||||
// border-radius: 8px;
|
||||
// border: 0;
|
||||
// margin-left: 15px;
|
||||
// color: #fff;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
.taskadd {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
min-width: 933px;
|
||||
// min-width: 1200px;
|
||||
// overflow-x: hidden;
|
||||
// min-width: 1400px;
|
||||
// overflow: scroll;
|
||||
background-color: rgba(245, 247, 250, 1);
|
||||
.left {
|
||||
margin-right: 20px;
|
||||
width: 208px;
|
||||
// height: 100%;
|
||||
// flex: 1;
|
||||
// height: 100%;
|
||||
background: #ffffff;
|
||||
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.21);
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.leftmain {
|
||||
// width: 86%;
|
||||
margin-top: 20px;
|
||||
.tit {
|
||||
margin-left: 20px;
|
||||
@@ -2550,17 +2233,14 @@ export default {
|
||||
color: #363636;
|
||||
}
|
||||
|
||||
// flex-wrap: wrap;
|
||||
.btn {
|
||||
margin-top: 20px;
|
||||
// padding: 0px 26px 0px 26px;
|
||||
height: 38px;
|
||||
background: #fff6e8;
|
||||
border-radius: 8px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
// margin-right: 14px;
|
||||
flex-shrink: 0;
|
||||
cursor: pointer;
|
||||
.search {
|
||||
@@ -2570,7 +2250,6 @@ export default {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #ffb64e;
|
||||
// line-height: 38px;
|
||||
margin-top: 4px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
@@ -2594,12 +2273,10 @@ export default {
|
||||
align-items: center;
|
||||
|
||||
.ghost {
|
||||
// background-color: red;
|
||||
opacity: 0 !important;
|
||||
}
|
||||
.items {
|
||||
width: 171px;
|
||||
// height: 83px;
|
||||
background: rgba(255, 182, 78, 0.1);
|
||||
border: 1px solid #ffb64e;
|
||||
opacity: 0.45;
|
||||
@@ -2647,9 +2324,6 @@ export default {
|
||||
.items2 {
|
||||
.nname {
|
||||
width: 140px;
|
||||
// overflow: hidden;
|
||||
// text-overflow: ellipsis;
|
||||
// white-space: nowrap;
|
||||
font-weight: bold;
|
||||
|
||||
overflow: hidden;
|
||||
@@ -2662,21 +2336,16 @@ export default {
|
||||
}
|
||||
.active {
|
||||
opacity: 1;
|
||||
// transition: all 0.5s;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
.right {
|
||||
flex: 1;
|
||||
// background-color: #fff;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
.addhead {
|
||||
width: 100%;
|
||||
// min-width: 500px;
|
||||
// height: 130px;
|
||||
// flex: 1;
|
||||
background-color: #fff;
|
||||
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.07);
|
||||
display: flex;
|
||||
@@ -2692,7 +2361,6 @@ export default {
|
||||
.le {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
// margin-bottom: 10px;
|
||||
.leftimg {
|
||||
width: 151px;
|
||||
height: 100px;
|
||||
@@ -2719,11 +2387,7 @@ export default {
|
||||
}
|
||||
|
||||
.rightt {
|
||||
// width: 500px;
|
||||
height: 100%;
|
||||
// background-color: red;
|
||||
// position: absolute;
|
||||
// right: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.select {
|
||||
@@ -2849,7 +2513,6 @@ export default {
|
||||
|
||||
.mid {
|
||||
width: 100%;
|
||||
// height: 130px;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 20px;
|
||||
background-color: #fff;
|
||||
@@ -2859,7 +2522,6 @@ export default {
|
||||
flex-wrap: wrap;
|
||||
.item {
|
||||
height: 115px;
|
||||
// width: 7.7%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.itcon {
|
||||
@@ -2900,8 +2562,6 @@ export default {
|
||||
justify-content: center;
|
||||
.boomcen {
|
||||
width: 95%;
|
||||
// height: 100%;
|
||||
// background-color: #bfa;
|
||||
.onerow {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
@@ -3011,7 +2671,6 @@ export default {
|
||||
height: 50px;
|
||||
background: #f5faff;
|
||||
border: 1px solid #4ea6ff;
|
||||
// opacity: 0.22;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
.im {
|
||||
@@ -3045,15 +2704,11 @@ export default {
|
||||
opacity: 1;
|
||||
}
|
||||
.ghost {
|
||||
// background-color: red;
|
||||
opacity: 0;
|
||||
}
|
||||
.tableRow:hover {
|
||||
background-color: #f2f6fc;
|
||||
}
|
||||
// .tableRow: {
|
||||
// background-color: #f2f6fc;
|
||||
// }
|
||||
.classify {
|
||||
margin-left: 10px !important;
|
||||
padding-left: 9px !important;
|
||||
@@ -3081,8 +2736,6 @@ export default {
|
||||
.pa {
|
||||
left: 0;
|
||||
width: 100%;
|
||||
// height: 20px;
|
||||
// background-color: red;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
position: absolute;
|
||||
@@ -3092,18 +2745,6 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
// .drawerbox {
|
||||
// // margin: 20px 38px 30px;
|
||||
// th.h {
|
||||
// background-color: #eff4fc !important;
|
||||
// }
|
||||
|
||||
// .ant-table-tbody
|
||||
// > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
|
||||
// > td {
|
||||
// background: #f6f9fd;
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
.opat {
|
||||
@@ -3115,13 +2756,11 @@ export default {
|
||||
background-color: #5dc988;
|
||||
}
|
||||
.showt {
|
||||
// margin-top: 10px;
|
||||
display: flex;
|
||||
margin-left: 10px;
|
||||
height: 23px;
|
||||
position: relative;
|
||||
.bi {
|
||||
// margin-top: 10px;
|
||||
width: 63px;
|
||||
height: 23;
|
||||
background-color: #5dc988;
|
||||
@@ -3136,7 +2775,6 @@ export default {
|
||||
height: 23px;
|
||||
background-color: #f2f6fc;
|
||||
line-height: 23px;
|
||||
// display: none;
|
||||
position: absolute;
|
||||
z-index: 998;
|
||||
color: #5dc988;
|
||||
@@ -3153,8 +2791,6 @@ export default {
|
||||
width: 17px;
|
||||
height: 14px;
|
||||
background-image: url("../../assets/images/leveladd/z1.png");
|
||||
// position: absolute;
|
||||
// left: -40px;
|
||||
}
|
||||
.ch {
|
||||
margin-left: 10px;
|
||||
@@ -3164,7 +2800,6 @@ export default {
|
||||
width: 100%;
|
||||
height: 80px;
|
||||
margin-top: 16px;
|
||||
// flex: 1;
|
||||
background-color: #fff;
|
||||
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.07);
|
||||
display: flex;
|
||||
|
||||
@@ -48,7 +48,6 @@
|
||||
import { reactive, defineComponent, toRefs, onMounted } from "vue";
|
||||
import { message } from "ant-design-vue";
|
||||
import { useRouter } from "vue-router";
|
||||
import { useStore } from "vuex";
|
||||
import * as api from "@/api/indexTemplate"
|
||||
|
||||
const columns1 = [
|
||||
@@ -93,7 +92,6 @@ const columns1 = [
|
||||
export default defineComponent({
|
||||
name: "TemplateLibrary",
|
||||
setup() {
|
||||
const store = useStore();
|
||||
// 编辑页面跳转过来时候,自动填充表格
|
||||
const router = useRouter();
|
||||
const state = reactive({
|
||||
@@ -101,7 +99,7 @@ export default defineComponent({
|
||||
time:null,
|
||||
currentPage: 1,
|
||||
pageSize: 10,
|
||||
total:0,
|
||||
total:50,
|
||||
tableData1: [
|
||||
{
|
||||
key: "1",
|
||||
@@ -244,7 +242,7 @@ export default defineComponent({
|
||||
};
|
||||
const toLibraryAdd = (id) => {
|
||||
router.push("/libraryAdd");
|
||||
store.state.projectTemplateId = id
|
||||
localStorage.setItem("projectTemplateId",id);
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
@@ -1045,7 +1045,6 @@ import * as api from "../../api/indexTemplate";
|
||||
import draggable from "vuedraggable";
|
||||
import { storage } from "../../api/storage";
|
||||
import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
||||
import { useStore } from "vuex";
|
||||
// import * as api1 from "../../api/index1";
|
||||
|
||||
const drawercolumns = [
|
||||
@@ -1106,7 +1105,6 @@ export default {
|
||||
UnlockMode,
|
||||
},
|
||||
setup() {
|
||||
const store = useStore();
|
||||
const state = reactive({
|
||||
projectId: storage.get("projectId")
|
||||
? JSON.parse(storage.get("projectId"))
|
||||
@@ -1509,7 +1507,7 @@ export default {
|
||||
const getTask = () => {
|
||||
state.tableData = [];
|
||||
api
|
||||
.templateDetail(store.state.projectTemplateId)
|
||||
.templateDetail(localStorage.getItem("projectTemplateId"))
|
||||
.then((res) => {
|
||||
if (res.status == 200) {
|
||||
console.log("22222", res.data.data.stageList);
|
||||
@@ -1709,7 +1707,7 @@ export default {
|
||||
if (state.updateStageID) {
|
||||
let obj = {
|
||||
name: state.valuesname,
|
||||
projectTemplateId: store.state.projectTemplateId,
|
||||
projectTemplateId: localStorage.getItem("templateStageId"),
|
||||
remark: state.valuesnotice,
|
||||
stageId: state.updateStageID,
|
||||
};
|
||||
@@ -1731,7 +1729,7 @@ export default {
|
||||
} else {
|
||||
let obj = {
|
||||
name: state.valuesname,
|
||||
projectTemplateId: store.state.projectTemplateId,
|
||||
projectTemplateId: localStorage.getItem("templateStageId"),
|
||||
remark: state.valuesnotice,
|
||||
stageId: 0,
|
||||
};
|
||||
|
||||
@@ -318,14 +318,12 @@ import { useRouter, useRoute } from "vue-router";
|
||||
// import dayjs from "dayjs";
|
||||
import * as api from "../../api/indexTemplate";
|
||||
import { storage } from "../../api/storage";
|
||||
import {useStore} from "vuex";
|
||||
// import { toDate } from "../../api/method";
|
||||
import dayjs from "dayjs";
|
||||
|
||||
export default {
|
||||
name: "projectAdd",
|
||||
setup() {
|
||||
const store = useStore();
|
||||
// 编辑页面跳转过来时候,自动填充表格
|
||||
const routers = useRoute();
|
||||
const isEdit = ref(false);
|
||||
@@ -641,7 +639,7 @@ export default {
|
||||
"courseSyncFlag": state.projectInfo.courseSyncFlag? 1:0,
|
||||
"notice": "",
|
||||
"noticeFlag": 0,
|
||||
"projectTemplateId": store.state.projectTemplateId,
|
||||
"projectTemplateId": localStorage.getItem("projectTemplateId"),
|
||||
"remark": "",
|
||||
"status": 0,
|
||||
|
||||
|
||||
@@ -8,22 +8,21 @@
|
||||
*/
|
||||
const { defineConfig } = require("@vue/cli-service");
|
||||
module.exports = defineConfig({
|
||||
publicPath: '/manage',
|
||||
// transpileDependencies: true,
|
||||
devServer: {
|
||||
port: 8080,
|
||||
proxy: {
|
||||
"/manageApi": {
|
||||
// target:"http://192.168.19.246:30001",
|
||||
// target:"http://192.168.100.208:30001",
|
||||
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
|
||||
changeOrigin: true, //表示是否改变原域名
|
||||
// secure: false,
|
||||
// ws: false, //表示WebSocket协议
|
||||
pathRewrite: {
|
||||
"^/manageApi": "",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
publicPath: "/manage",
|
||||
// transpileDependencies: true,
|
||||
devServer: {
|
||||
port: 8080,
|
||||
proxy: {
|
||||
"/manageApi": {
|
||||
// target:"http://192.168.100.208:30001",
|
||||
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
|
||||
changeOrigin: true, //表示是否改变原域名
|
||||
// secure: false,
|
||||
// ws: false, //表示WebSocket协议
|
||||
pathRewrite: {
|
||||
"^/manageApi": "",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user