mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-12 12:26:47 +08:00
feat:增加组织树及学员搜索
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
* @Author: lixg lixg@dongwu-inc.com
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
* @Date: 2022-11-21 14:32:52
|
* @Date: 2022-11-21 14:32:52
|
||||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
* @LastEditTime: 2022-11-26 13:44:54
|
* @LastEditTime: 2022-11-27 16:55:32
|
||||||
* @FilePath: /fe-manage/src/api/config.js
|
* @FilePath: /fe-manage/src/api/config.js
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
@@ -16,7 +16,7 @@ import axios from "axios";
|
|||||||
axios.defaults.withCredentials = true;
|
axios.defaults.withCredentials = true;
|
||||||
const http = axios.create({
|
const http = axios.create({
|
||||||
baseURL: "/manageApi",
|
baseURL: "/manageApi",
|
||||||
timeout: 1000 * 5,
|
timeout: 1000 * 15,
|
||||||
// headers: { "Content-Type": "multipart/form-data" },
|
// headers: { "Content-Type": "multipart/form-data" },
|
||||||
headers: { "Content-Type": "application/json" },
|
headers: { "Content-Type": "application/json" },
|
||||||
});
|
});
|
||||||
|
|||||||
18
src/api/indexOnline.js
Normal file
18
src/api/indexOnline.js
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
|
* @Date: 2022-11-07 17:06:45
|
||||||
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
|
* @LastEditTime: 2022-11-21 16:39:00
|
||||||
|
* @FilePath: /fe-manage/src/api/index.js
|
||||||
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
|
*/
|
||||||
|
import http from "./config";
|
||||||
|
// import qs from 'qs';
|
||||||
|
|
||||||
|
|
||||||
|
// 接口-请求
|
||||||
|
//查询在线课信息列表接口
|
||||||
|
export const queryOnlinelList = (obj) => http.post('/queryOnlineClassesDetailList', obj)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
* @Author: lixg lixg@dongwu-inc.com
|
* @Author: lixg lixg@dongwu-inc.com
|
||||||
* @Date: 2022-11-24 16:39:48
|
* @Date: 2022-11-24 16:39:48
|
||||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||||
* @LastEditTime: 2022-11-24 16:53:00
|
* @LastEditTime: 2022-11-28 09:54:17
|
||||||
* @FilePath: /fe-manage/src/components/Modals/addOnlineCourse.vue
|
* @FilePath: /fe-manage/src/components/Modals/addOnlineCourse.vue
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
-->
|
-->
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
<iframe
|
<iframe
|
||||||
id="iframe"
|
id="iframe"
|
||||||
style="width: 100%; height: 100%"
|
style="width: 100%; height: 100%"
|
||||||
:src="iframeUrl + 'course/noapproved'"
|
:src="iframeUrl + 'course/manages'"
|
||||||
name="myframe"
|
name="myframe"
|
||||||
sandbox="allow-forms allow-scripts allow-same-origin allow-popups"
|
sandbox="allow-forms allow-scripts allow-same-origin allow-popups"
|
||||||
></iframe>
|
></iframe>
|
||||||
|
|||||||
@@ -26,13 +26,13 @@
|
|||||||
<a-input
|
<a-input
|
||||||
v-model:value="inputV1"
|
v-model:value="inputV1"
|
||||||
style="width: 264px; height: 40px; border-radius: 8px"
|
style="width: 264px; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入项目名称"
|
placeholder="请输入案例标题"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mi_btns">
|
<div class="mi_btns">
|
||||||
<div class="btn btn1" @click="getAllCaseText">
|
<div class="btn btn1" @click="searchList()">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">搜索</div>
|
<div class="btnText">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -45,6 +45,23 @@
|
|||||||
|
|
||||||
<div class="main_table">
|
<div class="main_table">
|
||||||
<a-table
|
<a-table
|
||||||
|
v-if="edit"
|
||||||
|
class="ant-table-striped"
|
||||||
|
:row-class-name="
|
||||||
|
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||||
|
"
|
||||||
|
:row-selection="{
|
||||||
|
type:'radio',
|
||||||
|
selectedRowKeys: selectedRowKeys,
|
||||||
|
onChange: onSelectChange,
|
||||||
|
}"
|
||||||
|
:columns="tableDataFunc()"
|
||||||
|
:data-source="tableData"
|
||||||
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
|
:pagination="false"
|
||||||
|
/>
|
||||||
|
<a-table
|
||||||
|
v-else
|
||||||
class="ant-table-striped"
|
class="ant-table-striped"
|
||||||
:row-class-name="
|
:row-class-name="
|
||||||
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||||
@@ -81,9 +98,10 @@
|
|||||||
</a-drawer>
|
</a-drawer>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs } from "vue";
|
import { onMounted, reactive, toRefs } from "vue";
|
||||||
import * as api from "../../api/indexCase.js";
|
import * as api from "../../api/indexCase.js";
|
||||||
import * as apiTask from "../../api/indexTaskadd";
|
import * as apiTask from "../../api/indexTaskadd";
|
||||||
|
// import { setCookie } from "../../api/method"
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
// import { addTempTask } from "../../api/indexTaskadd";
|
// import { addTempTask } from "../../api/indexTaskadd";
|
||||||
@@ -142,6 +160,7 @@ export default {
|
|||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
tableDataTotal: 0,
|
tableDataTotal: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
|
searching:false,
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
apiTaskList: [],
|
apiTaskList: [],
|
||||||
inputV1: "",
|
inputV1: "",
|
||||||
@@ -177,7 +196,6 @@ export default {
|
|||||||
key: "authorName",
|
key: "authorName",
|
||||||
width: "200px",
|
width: "200px",
|
||||||
align: "center",
|
align: "center",
|
||||||
className: "classify",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "导入时间",
|
title: "导入时间",
|
||||||
@@ -185,7 +203,6 @@ export default {
|
|||||||
key: "time",
|
key: "time",
|
||||||
width: "400px",
|
width: "400px",
|
||||||
align: "center",
|
align: "center",
|
||||||
className: "classify",
|
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
return columns;
|
return columns;
|
||||||
@@ -205,7 +222,24 @@ export default {
|
|||||||
const getTableDate = (tableData) => {
|
const getTableDate = (tableData) => {
|
||||||
let data = tableData;
|
let data = tableData;
|
||||||
let array = [];
|
let array = [];
|
||||||
data.map((value, index) => {
|
if(state.searching){
|
||||||
|
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,
|
||||||
|
};
|
||||||
|
if(obj.title == state.inputV1){
|
||||||
|
array.push(obj);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
data.map((value, index) => {
|
||||||
let obj = {
|
let obj = {
|
||||||
key: index,
|
key: index,
|
||||||
authorId: value.authorId,
|
authorId: value.authorId,
|
||||||
@@ -218,6 +252,7 @@ export default {
|
|||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
});
|
});
|
||||||
|
}
|
||||||
state.tableData = array;
|
state.tableData = array;
|
||||||
};
|
};
|
||||||
//获取全部案例信息接口
|
//获取全部案例信息接口
|
||||||
@@ -227,8 +262,8 @@ export default {
|
|||||||
keyWord: state.inputV1,
|
keyWord: state.inputV1,
|
||||||
orderAsc: true,
|
orderAsc: true,
|
||||||
orderField: "",
|
orderField: "",
|
||||||
pageIndex: 0,
|
pageIndex: state.currentPage,
|
||||||
pageSize: 0,
|
pageSize: state.pageSize,
|
||||||
top: true,
|
top: true,
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
@@ -313,13 +348,29 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
//搜索案例列表
|
||||||
|
const searchList = ()=> {
|
||||||
|
if(state.inputV1 !== ''){
|
||||||
|
state.searching = true
|
||||||
|
getAllCaseText()
|
||||||
|
}else {
|
||||||
|
state.searching = false
|
||||||
|
resetCase()
|
||||||
|
}
|
||||||
|
}
|
||||||
//重置案例信息
|
//重置案例信息
|
||||||
const resetCase = () => {
|
const resetCase = () => {
|
||||||
state.inputV1 = ""
|
state.inputV1 = ""
|
||||||
|
state.searching = false
|
||||||
state.selectedRowKeys=[]
|
state.selectedRowKeys=[]
|
||||||
state.currentPage = 1
|
state.currentPage = 1
|
||||||
getAllCaseText();
|
getAllCaseText();
|
||||||
};
|
};
|
||||||
|
onMounted(()=>{
|
||||||
|
// let cookie =
|
||||||
|
// "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2Njk0MjgwNTAsImV4cCI6MTY2OTQzNTI1MCwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.9ea5ce6d4cd43c2c17f21a293e4dc0d362c2a404b9d50fae5c49fed5a238fb1a";
|
||||||
|
// setCookie("token", cookie, 10);
|
||||||
|
})
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
@@ -330,6 +381,7 @@ export default {
|
|||||||
getTableDate,
|
getTableDate,
|
||||||
updateTask,
|
updateTask,
|
||||||
getAllCaseText,
|
getAllCaseText,
|
||||||
|
searchList,
|
||||||
resetCase,
|
resetCase,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -447,10 +499,6 @@ export default {
|
|||||||
.main_table {
|
.main_table {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding-bottom: 80px;
|
padding-bottom: 80px;
|
||||||
.classify {
|
|
||||||
margin-left: 10px !important;
|
|
||||||
padding-left: 9px !important;
|
|
||||||
}
|
|
||||||
.ant-checkbox-wrapper {
|
.ant-checkbox-wrapper {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-top: -2px;
|
margin-top: -2px;
|
||||||
|
|||||||
@@ -34,6 +34,7 @@
|
|||||||
<div class="ipt_name">内容分类:</div>
|
<div class="ipt_name">内容分类:</div>
|
||||||
<div class="select">
|
<div class="select">
|
||||||
<a-select
|
<a-select
|
||||||
|
v-model:value="selectV"
|
||||||
dropdownClassName="dropdown-style"
|
dropdownClassName="dropdown-style"
|
||||||
style="width: 240px"
|
style="width: 240px"
|
||||||
placeholder="请选择"
|
placeholder="请选择"
|
||||||
@@ -45,7 +46,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mi_btns">
|
<div class="mi_btns">
|
||||||
<div class="btn btn1">
|
<div class="btn btn1" @click="searchList()">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText">搜索</div>
|
<div class="btnText">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -72,7 +73,25 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_table">
|
<div class="main_table">
|
||||||
|
<!-- 编辑的表格 -->
|
||||||
<a-table
|
<a-table
|
||||||
|
v-if="edit"
|
||||||
|
class="ant-table-striped"
|
||||||
|
:row-class-name="
|
||||||
|
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||||
|
"
|
||||||
|
:row-selection="{
|
||||||
|
type:'radio',
|
||||||
|
selectedRowKeys: selectedRowKeys,
|
||||||
|
onChange: onSelectChange,
|
||||||
|
}"
|
||||||
|
:columns="tableDataFunc()"
|
||||||
|
:data-source="tableData"
|
||||||
|
:loading="tableDataTotal === -1 ? true : false"
|
||||||
|
:pagination="false"
|
||||||
|
/>
|
||||||
|
<a-table
|
||||||
|
v-else
|
||||||
class="ant-table-striped"
|
class="ant-table-striped"
|
||||||
:row-class-name="
|
:row-class-name="
|
||||||
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
(_record, index) => (index % 2 === 1 ? 'table-striped' : null)
|
||||||
@@ -80,7 +99,6 @@
|
|||||||
:row-selection="{
|
:row-selection="{
|
||||||
selectedRowKeys: selectedRowKeys,
|
selectedRowKeys: selectedRowKeys,
|
||||||
onChange: onSelectChange,
|
onChange: onSelectChange,
|
||||||
onSelect: onSelected,
|
|
||||||
}"
|
}"
|
||||||
:columns="tableDataFunc()"
|
:columns="tableDataFunc()"
|
||||||
:data-source="tableData"
|
:data-source="tableData"
|
||||||
@@ -89,6 +107,7 @@
|
|||||||
/>
|
/>
|
||||||
<div class="pa">
|
<div class="pa">
|
||||||
<a-pagination
|
<a-pagination
|
||||||
|
v-if="tableDataTotal > 10"
|
||||||
showSizeChanger="true"
|
showSizeChanger="true"
|
||||||
showQuickJumper="true"
|
showQuickJumper="true"
|
||||||
hideOnSinglePage="true"
|
hideOnSinglePage="true"
|
||||||
@@ -109,12 +128,12 @@
|
|||||||
</a-drawer>
|
</a-drawer>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs } from "vue";
|
import { onMounted, reactive, toRefs } from "vue";
|
||||||
import * as api from "../../api/indexInvist.js";
|
import * as api from "../../api/indexOnline.js";
|
||||||
import * as apiTask from "../../api/indexTaskadd";
|
import * as apiTask from "../../api/indexTaskadd";
|
||||||
|
// import { setCookie } from "../../api/method"
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
import dayjs from "dayjs";
|
|
||||||
import { addTempTask } from "../../api/indexTaskadd";
|
import { addTempTask } from "../../api/indexTaskadd";
|
||||||
export default {
|
export default {
|
||||||
name: "AddOnline",
|
name: "AddOnline",
|
||||||
@@ -123,7 +142,7 @@ export default {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
EditInvistId: {
|
EditOnlineId: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
},
|
},
|
||||||
@@ -168,15 +187,22 @@ export default {
|
|||||||
inputV1: "",
|
inputV1: "",
|
||||||
options1: [
|
options1: [
|
||||||
{
|
{
|
||||||
value: "value1",
|
value: "微课",
|
||||||
label: "未完成",
|
label: "微课",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
value: "录播课",
|
||||||
|
label: "录播课"
|
||||||
|
}
|
||||||
],
|
],
|
||||||
time: undefined,
|
time: undefined,
|
||||||
assessmentId: null,
|
onlineClassesId: null,
|
||||||
assessmentName: "",
|
onlineName: "",
|
||||||
|
searching:false,
|
||||||
|
selectV: "",
|
||||||
selectedRowKeys: [],
|
selectedRowKeys: [],
|
||||||
tableData: [],
|
tableData: [],
|
||||||
|
addOnlineList:[],
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
tableDataTotal: 0,
|
tableDataTotal: 0,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
@@ -184,11 +210,17 @@ export default {
|
|||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:addonlineVisible", false);
|
ctx.emit("update:addonlineVisible", false);
|
||||||
ctx.emit("update:edit", false);
|
ctx.emit("update:edit", false);
|
||||||
|
state.inputV1 = "";
|
||||||
|
state.selectedRowKeys = [];
|
||||||
|
state.addOnlineList = [];
|
||||||
|
state.currentPage = 1;
|
||||||
localStorage.setItem("stageId", props.chooseStageId);
|
localStorage.setItem("stageId", props.chooseStageId);
|
||||||
localStorage.setItem("chapterId", props.isactive);
|
localStorage.setItem("chapterId", props.isactive);
|
||||||
};
|
};
|
||||||
const afterVisibleChange = () => {
|
const afterVisibleChange = (bol) => {
|
||||||
getAllOnlineText();
|
if(bol == true){
|
||||||
|
getAllOnlineText();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
const tableDataFunc = () => {
|
const tableDataFunc = () => {
|
||||||
const columns = [
|
const columns = [
|
||||||
@@ -196,21 +228,20 @@ export default {
|
|||||||
title: "课程编号",
|
title: "课程编号",
|
||||||
dataIndex: "num",
|
dataIndex: "num",
|
||||||
key: "num",
|
key: "num",
|
||||||
width: "200px",
|
width: "80px",
|
||||||
align: "center",
|
align: "left",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "名称",
|
title: "名称",
|
||||||
dataIndex: "name",
|
dataIndex: "name",
|
||||||
key: "name",
|
key: "name",
|
||||||
width: "100px",
|
width: "100px",
|
||||||
align: "left",
|
align: "center",
|
||||||
className: "classify",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "内容分类",
|
title: "内容分类",
|
||||||
dataIndex: "content",
|
dataIndex: "contenttype",
|
||||||
key: "content",
|
key: "contenttype",
|
||||||
width: "80px",
|
width: "80px",
|
||||||
align: "center",
|
align: "center",
|
||||||
},
|
},
|
||||||
@@ -218,82 +249,104 @@ export default {
|
|||||||
title: "授课教师",
|
title: "授课教师",
|
||||||
dataIndex: "teacher",
|
dataIndex: "teacher",
|
||||||
key: "teacher",
|
key: "teacher",
|
||||||
width: "80px",
|
width: "100px",
|
||||||
align: "center",
|
align: "center",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "创建人",
|
title: "创建人",
|
||||||
dataIndex: "creator",
|
dataIndex: "sysCreateBy",
|
||||||
key: "creator",
|
key: "sysCreateBy",
|
||||||
width: "80px",
|
width: "80px",
|
||||||
align: "center",
|
align: "center",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "完成时间",
|
title: "完成时间",
|
||||||
dataIndex: "time",
|
dataIndex: "overtime",
|
||||||
key: "time",
|
key: "time",
|
||||||
width: "200px",
|
width: "150px",
|
||||||
align: "center",
|
align: "center",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
return columns;
|
return columns;
|
||||||
};
|
};
|
||||||
const onSelected = (record) => {
|
const onSelectChange = (selectedRowKeys,selectedRows) => {
|
||||||
state.assessmentId = record.assessmentId;
|
state.selectedRowKeys = selectedRowKeys;
|
||||||
state.assessmentName = record.name;
|
state.addOnlineList = selectedRows
|
||||||
};
|
|
||||||
const onSelectChange = (selectedRowKeys, b) => {
|
|
||||||
state.selectedRowKeys = selectedRowKeys;
|
|
||||||
console.log(b);
|
|
||||||
};
|
};
|
||||||
//清空所选
|
//清空所选
|
||||||
const clearLine = () => {
|
const clearLine = () => {
|
||||||
state.selectedRowKeys = [];
|
state.selectedRowKeys = [];
|
||||||
|
state.addOnlineList = [];
|
||||||
};
|
};
|
||||||
const handelChangePage = (page, pageSize) => {
|
const handelChangePage = (page) => {
|
||||||
state.currentPage = page;
|
state.currentPage = page;
|
||||||
state.pageSize = pageSize;
|
|
||||||
getAllOnlineText();
|
getAllOnlineText();
|
||||||
};
|
};
|
||||||
const getTableDate = (tableData) => {
|
const getTableDate = (tableData) => {
|
||||||
let data = tableData;
|
let data = tableData;
|
||||||
let array = [];
|
let array = [];
|
||||||
data.map((value, index) => {
|
data.map((value,index) => {
|
||||||
let obj = {
|
if(state.searching){
|
||||||
key: index + 1,
|
let obj = {
|
||||||
assessmentId: value.assessmentId,
|
key: index + 1,
|
||||||
num: value.essayQuestionVoList.length,
|
num:"",
|
||||||
name: value.assessmentName ? value.assessmentName : "-",
|
name:value.name,
|
||||||
creator: value.createUser ? value.createUser : "-",
|
contenttype:value.contentType == 10 ? "微课" : "录播课",
|
||||||
time: dayjs(value.createTime).format("YYYY-MM-DD"),
|
teacher:value.teacher,
|
||||||
};
|
sysCreateBy:value.sysCreateBy,
|
||||||
array.push(obj);
|
overtime:"",
|
||||||
|
};
|
||||||
|
if(obj.name == state.inputV1 || obj.contenttype == state.selectV){
|
||||||
|
array.push(obj);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
let obj = {
|
||||||
|
key: index + 1,
|
||||||
|
num:"",
|
||||||
|
name:value.name,
|
||||||
|
contenttype:value.contentType == 10 ? "微课" : "录播课",
|
||||||
|
teacher:value.teacher,
|
||||||
|
sysCreateBy:value.sysCreateBy,
|
||||||
|
overtime:"",
|
||||||
|
};
|
||||||
|
array.push(obj);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
state.tableData = array;
|
state.tableData = array;
|
||||||
|
state.tableDataTotal = state.tableData.length
|
||||||
};
|
};
|
||||||
//获取全部在线信息接口
|
//获取全部在线信息接口
|
||||||
const getAllOnlineText = () => {
|
const getAllOnlineText = () => {
|
||||||
api
|
api
|
||||||
.queryAssessmentDetailList({
|
.queryOnlinelList({
|
||||||
assessmentName: "",
|
"createUser": "",
|
||||||
pageNo: state.currentPage,
|
"keyword": state.inputV1,
|
||||||
pageSize: state.pageSize,
|
"orderAsc": true,
|
||||||
|
"orderField": "",
|
||||||
|
"pageIndex": state.currentPage,
|
||||||
|
"pageSize": state.pageSize,
|
||||||
|
"publish": true,
|
||||||
|
"status": 0,
|
||||||
|
"sysType1": "",
|
||||||
|
"sysType2": "",
|
||||||
|
"sysType3": "",
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
let arr = res.data.data.rows;
|
let arr = res.data.data;
|
||||||
if (res.status === 200) {
|
if (res.status === 200) {
|
||||||
getTableDate(arr);
|
getTableDate(arr);
|
||||||
state.tableDataTotal = Number(res.data.data.total);
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(() => {});
|
.catch((err) => {
|
||||||
|
console.log(err,'请求失败在线');});
|
||||||
};
|
};
|
||||||
const updateTask = () => {
|
const updateTask = () => {
|
||||||
if (props.isLevel == 1) {
|
if (props.isLevel == 1) {
|
||||||
RouterEditTask({
|
state.addOnlineList.map((value) => {
|
||||||
chapterId: props.isactive,
|
RouterEditTask({
|
||||||
courseId: state.assessmentId,
|
chapterId: Number(props.isactive),
|
||||||
name: state.assessmentName,
|
courseId: value.onlineClassesId,
|
||||||
|
name: value.name,
|
||||||
routerId: props.routerId,
|
routerId: props.routerId,
|
||||||
routerTaskId: props.routerTaskId || 0,
|
routerTaskId: props.routerTaskId || 0,
|
||||||
type: 1,
|
type: 1,
|
||||||
@@ -309,11 +362,13 @@ export default {
|
|||||||
message.destroy();
|
message.destroy();
|
||||||
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}关卡任务失败`);
|
||||||
});
|
});
|
||||||
|
})
|
||||||
} else if (props.isLevel == 2) {
|
} else if (props.isLevel == 2) {
|
||||||
apiTask
|
state.addOnlineList.map((value) => {
|
||||||
|
apiTask
|
||||||
.addTask({
|
.addTask({
|
||||||
courseId: state.assessmentId,
|
courseId: value.onlineClassesId,
|
||||||
name: state.assessmentName,
|
name: value.name,
|
||||||
projectId: props.projectId,
|
projectId: props.projectId,
|
||||||
projectTaskId: props.projectTaskId || 0,
|
projectTaskId: props.projectTaskId || 0,
|
||||||
stageId: props.chooseStageId,
|
stageId: props.chooseStageId,
|
||||||
@@ -329,10 +384,11 @@ export default {
|
|||||||
message.destroy();
|
message.destroy();
|
||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
});
|
});
|
||||||
|
})
|
||||||
} else if (props.isLevel == 3) {
|
} else if (props.isLevel == 3) {
|
||||||
addTempTask({
|
addTempTask({
|
||||||
courseId: state.assessmentId,
|
courseId: state.onlineClassesId,
|
||||||
name: state.assessmentName,
|
name: state.onlineName,
|
||||||
projectId: props.projectId,
|
projectId: props.projectId,
|
||||||
projectTaskId: props.projectTaskId || 0,
|
projectTaskId: props.projectTaskId || 0,
|
||||||
stageId: props.chooseStageId,
|
stageId: props.chooseStageId,
|
||||||
@@ -340,33 +396,52 @@ export default {
|
|||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
message.success(`${props.edit ? "编辑" : "新增"}模板库任务成功`);
|
||||||
ctx.emit("changeData", false);
|
ctx.emit("changeData", false);
|
||||||
closeDrawer();
|
closeDrawer();
|
||||||
})
|
})
|
||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
message.error(`${props.edit ? "编辑" : "新增"}模板库任务失败`);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
//搜索在线列表
|
||||||
|
const searchList = ()=> {
|
||||||
|
if(state.inputV1 !== '' || state.selectV !== ''){
|
||||||
|
state.searching = true
|
||||||
|
getAllOnlineText()
|
||||||
|
}else {
|
||||||
|
resetOnline()
|
||||||
|
}
|
||||||
|
}
|
||||||
//重置在线信息
|
//重置在线信息
|
||||||
const resetOnline = () => {
|
const resetOnline = () => {
|
||||||
state.inputV1 = "";
|
state.inputV1 = "";
|
||||||
|
state.selectV = "";
|
||||||
|
state.searching = false;
|
||||||
|
state.selectedRowKeys = [];
|
||||||
|
state.addOnlineList = [];
|
||||||
|
state.currentPage = 1;
|
||||||
getAllOnlineText();
|
getAllOnlineText();
|
||||||
};
|
};
|
||||||
|
onMounted(()=>{
|
||||||
|
// let cookie =
|
||||||
|
// "eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2Njk0MjgwNTAsImV4cCI6MTY2OTQzNTI1MCwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.9ea5ce6d4cd43c2c17f21a293e4dc0d362c2a404b9d50fae5c49fed5a238fb1a";
|
||||||
|
// setCookie("token", cookie, 10);
|
||||||
|
})
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
closeDrawer,
|
closeDrawer,
|
||||||
tableDataFunc,
|
tableDataFunc,
|
||||||
onSelected,
|
|
||||||
onSelectChange,
|
onSelectChange,
|
||||||
clearLine,
|
clearLine,
|
||||||
handelChangePage,
|
handelChangePage,
|
||||||
getAllOnlineText,
|
getAllOnlineText,
|
||||||
getTableDate,
|
getTableDate,
|
||||||
updateTask,
|
updateTask,
|
||||||
|
searchList,
|
||||||
resetOnline,
|
resetOnline,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -506,17 +581,12 @@ export default {
|
|||||||
.main_table {
|
.main_table {
|
||||||
position: relative;
|
position: relative;
|
||||||
padding-bottom: 80px;
|
padding-bottom: 80px;
|
||||||
.classify {
|
|
||||||
margin-left: 10px !important;
|
|
||||||
padding-left: 9px !important;
|
|
||||||
}
|
|
||||||
.ant-checkbox-wrapper {
|
.ant-checkbox-wrapper {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
margin-top: -2px;
|
margin-top: -2px;
|
||||||
}
|
}
|
||||||
.ant-table-selection-column {
|
.ant-table-selection-column {
|
||||||
padding: 0px !important;
|
padding: 0px !important;
|
||||||
padding-left: 60px !important;
|
|
||||||
}
|
}
|
||||||
.ant-table-thead > tr > th {
|
.ant-table-thead > tr > th {
|
||||||
background-color: rgba(239, 244, 252, 1);
|
background-color: rgba(239, 244, 252, 1);
|
||||||
@@ -533,8 +603,6 @@ export default {
|
|||||||
.pa {
|
.pa {
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
// height: 20px;
|
|
||||||
// background-color: red;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
|||||||
@@ -242,10 +242,10 @@ export default {
|
|||||||
//获取选择考试列表
|
//获取选择考试列表
|
||||||
const getManageList = () => {
|
const getManageList = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
"keyWord": state.inputPname,
|
keyWord: state.inputPname,
|
||||||
"pageIndex": state.pageSize,
|
pageIndex: state.pageSize,
|
||||||
"pageSize": state.pageSize,
|
pageSize: state.pageSize,
|
||||||
"published": true
|
published: true,
|
||||||
};
|
};
|
||||||
api
|
api
|
||||||
.queryExaminationList(obj)
|
.queryExaminationList(obj)
|
||||||
|
|||||||
@@ -84,6 +84,12 @@
|
|||||||
:tree-data="treeData"
|
:tree-data="treeData"
|
||||||
@select="departmentSelect"
|
@select="departmentSelect"
|
||||||
v-model:selectedKeys="selectedKeys"
|
v-model:selectedKeys="selectedKeys"
|
||||||
|
:fieldNames="{
|
||||||
|
children: 'treeChildList',
|
||||||
|
key: 'id',
|
||||||
|
title: 'name',
|
||||||
|
value: 'name',
|
||||||
|
}"
|
||||||
>
|
>
|
||||||
<template #suffixIcon></template>
|
<template #suffixIcon></template>
|
||||||
</a-tree>
|
</a-tree>
|
||||||
@@ -529,16 +535,27 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs, onMounted, onUnmounted, watch } from "vue";
|
import {
|
||||||
|
reactive,
|
||||||
|
toRefs,
|
||||||
|
onMounted,
|
||||||
|
onUnmounted,
|
||||||
|
// watch
|
||||||
|
} from "vue";
|
||||||
import elementResizeDetectorMaker from "element-resize-detector";
|
import elementResizeDetectorMaker from "element-resize-detector";
|
||||||
import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
// import { toDate } from "../../api/method";
|
// import { toDate } from "../../api/method";
|
||||||
|
// import * as api from '../../api/indexStu'
|
||||||
import {
|
import {
|
||||||
getAudienceInfoApi,
|
getAudienceInfoApi,
|
||||||
getMemberInfoApi,
|
getMemberInfoApi,
|
||||||
getOrgInfoApi,
|
getOrgInfoApi,
|
||||||
} from "@/api/indexStu";
|
} from "@/api/indexStu";
|
||||||
import { traverseArr, deepClone, batchLoadList } from "../../utils/utils";
|
import {
|
||||||
|
traverseArr,
|
||||||
|
// deepClone,
|
||||||
|
batchLoadList,
|
||||||
|
} from "../../utils/utils";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "StuAdd",
|
name: "StuAdd",
|
||||||
@@ -551,9 +568,12 @@ export default {
|
|||||||
setup(props, ctx) {
|
setup(props, ctx) {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
screenHeight: document.body.clientHeight, // 屏幕高度
|
screenHeight: document.body.clientHeight, // 屏幕高度
|
||||||
pageSize: 9999999,
|
pageSize: 10,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
tableDataTotal: 0,
|
tableDataTotal: 0,
|
||||||
|
selectOrgId: null, //选中的组织id
|
||||||
|
selectOrgName: null, //选中的组织
|
||||||
|
|
||||||
pageSize2: 10,
|
pageSize2: 10,
|
||||||
currentPage2: 1,
|
currentPage2: 1,
|
||||||
tableDataTotal2: 0,
|
tableDataTotal2: 0,
|
||||||
@@ -1049,18 +1069,19 @@ export default {
|
|||||||
selectedRowKeys2: [], //表格选中的key
|
selectedRowKeys2: [], //表格选中的key
|
||||||
//受众关联-------------------------------------
|
//受众关联-------------------------------------
|
||||||
});
|
});
|
||||||
|
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
state.activeKey = "1";
|
state.activeKey = "1";
|
||||||
ctx.emit("update:Stuvisible", false);
|
ctx.emit("update:Stuvisible", false);
|
||||||
};
|
};
|
||||||
|
|
||||||
watch(
|
// watch(
|
||||||
() => props.Stuvisible,
|
// () => props.Stuvisible,
|
||||||
(newVal) => {
|
// (newVal) => {
|
||||||
console.log(newVal);
|
// console.log("watch", newVal);
|
||||||
getComOnce();
|
// getComOnce();
|
||||||
}
|
// }
|
||||||
);
|
// );
|
||||||
|
|
||||||
const handleClose = () => {
|
const handleClose = () => {
|
||||||
deleteAll();
|
deleteAll();
|
||||||
@@ -1112,59 +1133,100 @@ export default {
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
const getComOnce = async () => {
|
|
||||||
const item1 = await getOrgInfoApi({
|
|
||||||
pageNo: state.currentPage,
|
|
||||||
pageSize: state.pageSize,
|
|
||||||
id: 0,
|
|
||||||
keyWord: state.com,
|
|
||||||
}).then((res) => {
|
|
||||||
// console.log("res", res);
|
|
||||||
if (res.data.code === 200) return res.data.data.rows;
|
|
||||||
});
|
|
||||||
state.treeData = [];
|
|
||||||
const arr = traverseArr(item1, {
|
|
||||||
title: "name",
|
|
||||||
value: "id",
|
|
||||||
children: "children",
|
|
||||||
});
|
|
||||||
batchLoadList(
|
|
||||||
arr,
|
|
||||||
arr.length,
|
|
||||||
undefined,
|
|
||||||
(data) => {
|
|
||||||
data.forEach((item) => {
|
|
||||||
state.treeData.push(item);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
() => {
|
|
||||||
console.log("完成");
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
state.copyTreeData = deepClone(arr);
|
// const getComOnce = async () => {
|
||||||
|
// const item1 = await getOrgInfoApi({
|
||||||
|
// pageNo: 1,
|
||||||
|
// pageSize: 20,
|
||||||
|
// id: -1,
|
||||||
|
// keyWord: "",
|
||||||
|
// })
|
||||||
|
// .then((res) => {
|
||||||
|
// console.log("res", res);
|
||||||
|
// if (res.data.code === 200) return res.data.data;
|
||||||
|
// })
|
||||||
|
// .catch((err) => {
|
||||||
|
// console.log("获取失败", err);
|
||||||
|
// });
|
||||||
|
// state.treeData = [];
|
||||||
|
// const arr = traverseArr(item1, {
|
||||||
|
// title: "name",
|
||||||
|
// value: "id",
|
||||||
|
// children: "treeChildList",
|
||||||
|
// });
|
||||||
|
// batchLoadList(
|
||||||
|
// arr,
|
||||||
|
// arr.length,
|
||||||
|
// undefined,
|
||||||
|
// (data) => {
|
||||||
|
// data.forEach((item) => {
|
||||||
|
// state.treeData.push(item);
|
||||||
|
// });
|
||||||
|
// },
|
||||||
|
// () => {
|
||||||
|
// console.log("完成");
|
||||||
|
// }
|
||||||
|
// );
|
||||||
|
|
||||||
|
// state.copyTreeData = deepClone(arr);
|
||||||
|
// };
|
||||||
|
//获取组织树
|
||||||
|
const getTree = () => {
|
||||||
|
let obj = {
|
||||||
|
keyWord: "",
|
||||||
|
id: -1,
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 20,
|
||||||
|
};
|
||||||
|
getOrgInfoApi(obj)
|
||||||
|
.then((res) => {
|
||||||
|
console.log("组织树获取成功", res);
|
||||||
|
if (res.data.code === 200) {
|
||||||
|
state.treeData = res.data.data;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log("组织树获取失败", err);
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
//获取学员
|
||||||
const getMember = async (org) => {
|
const getMember = async (org) => {
|
||||||
if (!state.nameSearch && org === 0) {
|
if (!state.nameSearch && !org) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
console.log("org", org);
|
||||||
const item1 = await getMemberInfoApi({
|
const item1 = await getMemberInfoApi({
|
||||||
pageNo: state.currentPage,
|
pageNo: state.currentPage,
|
||||||
pageSize: state.pageSize,
|
pageSize: state.pageSize,
|
||||||
keyWord: state.nameSearch,
|
keyWord: state.nameSearch,
|
||||||
org,
|
org: state.nameSearch ? null : org,
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
if (res.data.code === 200) return res.data.data.rows;
|
if (res.data.code === 200) {
|
||||||
|
console.log("获取学员", res.data);
|
||||||
|
state.tableDataTotal = res.data.data.total;
|
||||||
|
return res.data.data.rows;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
state.tabledata = traverseArr(item1, {
|
state.tabledata = traverseArr(item1, {
|
||||||
key: "id",
|
key: "id",
|
||||||
name: "realName",
|
name: "realName",
|
||||||
bum: "id",
|
bum: "depName",
|
||||||
numb: "depName",
|
numb: "id",
|
||||||
guishu: "orgName",
|
guishu: "orgName",
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
getMember(0);
|
//分页获取学员
|
||||||
|
const changePagination = (page) => {
|
||||||
|
state.currentPage = page;
|
||||||
|
getMember(state.selectOrgId);
|
||||||
|
};
|
||||||
|
//搜索学员
|
||||||
|
const handleSearchStu = () => {
|
||||||
|
deleteDepSelect();
|
||||||
|
getMember(state.selectOrgId);
|
||||||
|
};
|
||||||
|
|
||||||
const getShouzong = async () => {
|
const getShouzong = async () => {
|
||||||
if (!state.nameaddd) {
|
if (!state.nameaddd) {
|
||||||
return false;
|
return false;
|
||||||
@@ -1186,9 +1248,6 @@ export default {
|
|||||||
};
|
};
|
||||||
getShouzong();
|
getShouzong();
|
||||||
|
|
||||||
const handleSearchStu = () => {
|
|
||||||
getMember(0);
|
|
||||||
};
|
|
||||||
const handleSearchRest = () => {
|
const handleSearchRest = () => {
|
||||||
state.nameSearch = "";
|
state.nameSearch = "";
|
||||||
state.tabledata = [];
|
state.tabledata = [];
|
||||||
@@ -1209,6 +1268,10 @@ export default {
|
|||||||
|
|
||||||
const afterVisibleChange = (bool) => {
|
const afterVisibleChange = (bool) => {
|
||||||
console.log("state", bool);
|
console.log("state", bool);
|
||||||
|
if (bool) {
|
||||||
|
// getComOnce();
|
||||||
|
getTree();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
const getClientHeight = () => {
|
const getClientHeight = () => {
|
||||||
state.screenHeight = document.body.clientHeight;
|
state.screenHeight = document.body.clientHeight;
|
||||||
@@ -1232,9 +1295,19 @@ export default {
|
|||||||
// 开始 快速选人------------------------------------------------------------------
|
// 开始 快速选人------------------------------------------------------------------
|
||||||
//选中部门
|
//选中部门
|
||||||
const departmentSelect = (e, k) => {
|
const departmentSelect = (e, k) => {
|
||||||
console.log("选中的部门", e, k);
|
if (!k.node.treeChildList) {
|
||||||
state.selectedKeys = [k.node.key];
|
console.log("选中的部门", e, k);
|
||||||
getMember(k.selectedNodes[0].value);
|
state.selectedKeys = [k.node.key];
|
||||||
|
state.selectOrgId = k.selectedNodes[0].id;
|
||||||
|
state.selectOrgName = k.selectedNodes[0].name;
|
||||||
|
getMember(k.selectedNodes[0].id);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
//清空选择部门信息
|
||||||
|
const deleteDepSelect = () => {
|
||||||
|
state.selectedKeys = null;
|
||||||
|
state.selectOrgId = null;
|
||||||
|
state.selectOrgName = null;
|
||||||
};
|
};
|
||||||
//快速选人 选中的数组
|
//快速选人 选中的数组
|
||||||
const onSelectChange = (selectedRowKeys, item) => {
|
const onSelectChange = (selectedRowKeys, item) => {
|
||||||
@@ -1592,6 +1665,7 @@ export default {
|
|||||||
deleteAll,
|
deleteAll,
|
||||||
|
|
||||||
searchOrg,
|
searchOrg,
|
||||||
|
changePagination,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -79,10 +79,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 查看投票弹窗 -->
|
|
||||||
<queryStem @closeDrawer="closeStem"
|
|
||||||
v-model:addStemVisible="addStemVisible" />
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- 创建投票侧弹窗 -->
|
<!-- 创建投票侧弹窗 -->
|
||||||
@@ -102,6 +99,7 @@
|
|||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
style="width: 424px"
|
style="width: 424px"
|
||||||
|
v-model:value="time"
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -111,7 +109,12 @@
|
|||||||
<span style="margin-right: 3px">基础投票数:</span>
|
<span style="margin-right: 3px">基础投票数:</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<button class="xkbtn">点击上传</button>
|
<a-upload
|
||||||
|
@change="handleChange"
|
||||||
|
action="/vote/baseVoteupload"
|
||||||
|
v-model:file-list="fileList"
|
||||||
|
>
|
||||||
|
<button class="xkbtn">点击上传</button></a-upload>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="main_item" style="margin-top: -25px">
|
<div class="main_item" style="margin-top: -25px">
|
||||||
@@ -150,13 +153,13 @@ import { message } from "ant-design-vue";
|
|||||||
import { RouterEditTask } from "@/api/indexTask";
|
import { RouterEditTask } from "@/api/indexTask";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as apiTask from "../../api/indexTaskadd";
|
import * as apiTask from "../../api/indexTaskadd";
|
||||||
import queryStem from "./queryStem.vue"
|
import { addTempTask } from "../../api/indexTaskadd";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "AddVote",
|
name: "AddVote",
|
||||||
components: {
|
components: {
|
||||||
CreateVote,
|
CreateVote
|
||||||
queryStem,
|
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
addvoteVisible: {
|
addvoteVisible: {
|
||||||
@@ -167,7 +170,7 @@ export default {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false,
|
default: false,
|
||||||
},
|
},
|
||||||
voteId: {
|
EditVoteId: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
},
|
},
|
||||||
@@ -213,7 +216,7 @@ export default {
|
|||||||
basevote: "",
|
basevote: "",
|
||||||
ascriptionId: "",
|
ascriptionId: "",
|
||||||
voteStemId: null,
|
voteStemId: null,
|
||||||
voteId:"",
|
EditVoteId:"",
|
||||||
voteStemName:"",
|
voteStemName:"",
|
||||||
ballotName: "",
|
ballotName: "",
|
||||||
editStem: false, //编辑状态
|
editStem: false, //编辑状态
|
||||||
@@ -221,6 +224,7 @@ export default {
|
|||||||
optionId: "", //删除,修改选项id
|
optionId: "", //删除,修改选项id
|
||||||
addStemVisible:false, //
|
addStemVisible:false, //
|
||||||
editChild:false,
|
editChild:false,
|
||||||
|
fileList: [],
|
||||||
});
|
});
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
state.inputV1 = "",
|
state.inputV1 = "",
|
||||||
@@ -231,54 +235,54 @@ export default {
|
|||||||
ctx.emit("update:edit", false);
|
ctx.emit("update:edit", false);
|
||||||
};
|
};
|
||||||
const afterVisibleChange = () => {
|
const afterVisibleChange = () => {
|
||||||
|
if(props.edit){
|
||||||
queryVoteInfo();
|
queryVoteInfo();
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
const showDrawerCreVote = () => {
|
const showDrawerCreVote = () => {
|
||||||
state.createVoteVisible = true;
|
state.createVoteVisible = true;
|
||||||
state.editChild = props.edit;
|
state.editChild = props.edit;
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
const getStemId = (data) => {
|
|
||||||
state.ballotName = data.ballotName;
|
|
||||||
state.ballotId =data.ballotId;
|
|
||||||
}
|
|
||||||
|
|
||||||
const delBox = () => {
|
const handleChange = info => {
|
||||||
state.creVote = false;
|
if (info.file.status !== "uploading") {
|
||||||
|
|
||||||
|
console.log("基础票数rinfo======",info);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
//删除题干信息接口
|
//删除题干信息接口
|
||||||
const dleVoteStem = () => {
|
const dleVoteStem = () => {
|
||||||
let objdelstem = {
|
api.deleteVoteStem({voteStemId:state.ballotId})
|
||||||
voteStemId:state.voteStemId
|
|
||||||
}
|
|
||||||
api.deleteVoteStem(objdelstem)
|
|
||||||
.then(() => {
|
.then(() => {
|
||||||
message.success('删除题干信息成功')
|
message.success('删除题干信息成功')
|
||||||
delBox()
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
//根据投票id获取投票信息
|
//根据投票id获取投票信息
|
||||||
const queryVoteInfo = ()=>{
|
const queryVoteInfo = ()=>{
|
||||||
/**
|
|
||||||
let obj = {
|
api.queryVoteDetailById({voteId:props.EditVoteId})
|
||||||
voteId:props.voteId
|
|
||||||
}
|
|
||||||
.queryVoteText(obj)
|
|
||||||
.then((res)=>{
|
.then((res)=>{
|
||||||
console.log('获取投票信息成功',res);
|
console.log('获取投票信息成功',res);
|
||||||
state.inputV1 = res.data.data.voteName
|
state.inputV1 = res.data.data.voteName;
|
||||||
state.time = [dayjs(res.data.data.voteEndTime).format("YYYY-MM-DD"), dayjs(res.data.data.voteEndTime).format("YYYY-MM-DD")]
|
state.textV1 = res.data.data.voteExplain;
|
||||||
state.textV1 = res.data.data.voteExplain
|
state.baseVote = res.data.data.baseVote;
|
||||||
state.baseVote = res.data.data.baseVote
|
state.ascriptionId = res.data.data.ascriptionId;
|
||||||
state.ascriptionId = res.data.data.ascriptionId
|
state.ballotId = res.data.data.ballotId;
|
||||||
state.ballotId = res.data.data.ballotId
|
state.time = [
|
||||||
|
dayjs(res.data.data.voteStartTime, "YYYY-MM-DD"),
|
||||||
|
dayjs(res.data.data.voteEndTime, "YYYY-MM-DD"),
|
||||||
|
];
|
||||||
})
|
})
|
||||||
.catch((err)=>{
|
.catch((err)=>{
|
||||||
console.log('获取投票信息失败',err);
|
console.log('获取投票信息失败',err);
|
||||||
})
|
});
|
||||||
**/
|
|
||||||
|
|
||||||
}
|
}
|
||||||
const updateToTask =(res)=>{
|
const updateToTask =(res)=>{
|
||||||
@@ -316,8 +320,24 @@ export default {
|
|||||||
.catch(() => {
|
.catch(() => {
|
||||||
message.error(`${props.edit ? '编辑' : '新增'}阶段任务失败`)
|
message.error(`${props.edit ? '编辑' : '新增'}阶段任务失败`)
|
||||||
});
|
});
|
||||||
}else if(props.isLevel ==3){
|
}else if (props.isLevel == 3) {
|
||||||
console.log("");
|
console.log("");
|
||||||
|
addTempTask({
|
||||||
|
duration: 0,
|
||||||
|
flag: true,
|
||||||
|
courseId: Number(res.data.data.EditVoteId),
|
||||||
|
name: res.data.data.data.voteName,
|
||||||
|
projectId: props.projectId,
|
||||||
|
projectTaskId: props.projectTaskId || 0,
|
||||||
|
stageId: props.chooseStageId,
|
||||||
|
type: 10,
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
message.success(`${props.edit ? "编辑" : "新增"}阶段任务成功`);
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
message.error(`${props.edit ? "编辑" : "新增"}阶段任务失败`);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//修改投票信息接口
|
//修改投票信息接口
|
||||||
@@ -325,6 +345,10 @@ export default {
|
|||||||
if (!state.inputV1) {
|
if (!state.inputV1) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
return message.info("请输入投票名称");
|
return message.info("请输入投票名称");
|
||||||
|
}
|
||||||
|
if (!state.ballotId) {
|
||||||
|
message.destroy();
|
||||||
|
return message.info("请创建题干信息");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state.basevote == "") {
|
if (state.basevote == "") {
|
||||||
@@ -336,16 +360,14 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let obj = {
|
let obj = {
|
||||||
voteId: props.edit?state.voteId : 0,
|
voteId: props.edit?state.EditVoteId : 0,
|
||||||
voteName: state.inputV1,
|
voteName: state.inputV1,
|
||||||
voteStartTime: state.startTime,
|
voteStartTime: dayjs(state.time[0]).format("YYYY-MM-DD"),
|
||||||
voteEndTime: state.endTime,
|
voteEndTime: dayjs(state.time[1]).format("YYYY-MM-DD"),
|
||||||
ballotId: state.ballotId,
|
ballotId: state.ballotId,
|
||||||
baseVote: state.basevote,
|
baseVote: state.basevote,
|
||||||
voteExplain: state.textV1,
|
voteExplain: state.textV1,
|
||||||
createUser:0,
|
|
||||||
updateUser:0,
|
|
||||||
voteTag:"",
|
|
||||||
}
|
}
|
||||||
if(props.edit){
|
if(props.edit){
|
||||||
api
|
api
|
||||||
@@ -383,13 +405,12 @@ export default {
|
|||||||
showDrawerCreVote,
|
showDrawerCreVote,
|
||||||
afterVisibleChange,
|
afterVisibleChange,
|
||||||
closeDrawer,
|
closeDrawer,
|
||||||
getStemId,
|
|
||||||
queryVoteInfo,
|
queryVoteInfo,
|
||||||
dleVoteStem,
|
dleVoteStem,
|
||||||
updateVoteInfo,
|
updateVoteInfo,
|
||||||
delBox,
|
|
||||||
queryStem,
|
queryStem,
|
||||||
closeStem,
|
closeStem,
|
||||||
|
handleChange,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -26,7 +26,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-input
|
<a-input
|
||||||
v-model:value="voteName"
|
v-model:value="ballotName"
|
||||||
style="width: 424px; height: 32px"
|
style="width: 424px; height: 32px"
|
||||||
placeholder="请输入任务名称"
|
placeholder="请输入任务名称"
|
||||||
maxlength="20"
|
maxlength="20"
|
||||||
@@ -47,7 +47,7 @@
|
|||||||
<!-- 创建投票侧弹窗 -->
|
<!-- 创建投票侧弹窗 -->
|
||||||
</div>
|
</div>
|
||||||
<div v-for="(item, index) in allFormsData" :key="index">
|
<div v-for="(item, index) in allFormsData" :key="index">
|
||||||
<VoteQuestion :item="item" :ballotId="ballotId" @del="handleDel" />
|
<VoteQuestion :item="item" :optionId="optionId" @del="handleDel" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="footer">
|
<div class="footer">
|
||||||
@@ -84,20 +84,22 @@
|
|||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import { reactive, toRefs } from "vue";
|
import { reactive, toRefs } from "vue";
|
||||||
// import { message } from "ant-design-vue";
|
import { message } from "ant-design-vue";
|
||||||
// import { createResearch } from "../../api/indexResearch";
|
// import { createResearch } from "../../api/indexResearch";
|
||||||
import VoteQuestion from "./VoteQuestion.vue";
|
import VoteQuestion from "./VoteQuestion.vue";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
// sortBy,
|
// sortBy,
|
||||||
traverseArr,
|
traverseArr,
|
||||||
// filterCommon,
|
//filterCommon,
|
||||||
// deepCloneFilterString,
|
// deepCloneFilterString,
|
||||||
} from "../../utils/utils";
|
} from "../../utils/utils";
|
||||||
|
|
||||||
//import store from "@/store";
|
//import store from "@/store";
|
||||||
import * as api from "@/api/indexVote";
|
import * as api from "@/api/indexVote";
|
||||||
|
//import { useRouter } from "vue-router";
|
||||||
import {} from "@/api/indexResearch";
|
import {} from "@/api/indexResearch";
|
||||||
|
|
||||||
//import { message } from "ant-design-vue";
|
//import { message } from "ant-design-vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -124,51 +126,71 @@ export default {
|
|||||||
ballotId: "",
|
ballotId: "",
|
||||||
ballotName: "",
|
ballotName: "",
|
||||||
allFormsData: [],
|
allFormsData: [],
|
||||||
|
|
||||||
});
|
});
|
||||||
|
// const router = useRouter();
|
||||||
const afterVisibleChange = () => {
|
const afterVisibleChange = () => {
|
||||||
handleTypes();
|
getInfoDate();
|
||||||
|
|
||||||
|
/*
|
||||||
|
if(){
|
||||||
|
|
||||||
|
}else{
|
||||||
|
handleTypes();
|
||||||
|
}
|
||||||
|
*/
|
||||||
};
|
};
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:createVoteVisible", false);
|
ctx.emit("update:createVoteVisible", false);
|
||||||
|
ctx.emit("update:ballotId", state.ballotId);
|
||||||
|
handleAllCancel();
|
||||||
};
|
};
|
||||||
// 详情
|
// 详情
|
||||||
const getInfoDate = async () => {
|
const getInfoDate = async () => {
|
||||||
if (props.editChild) {
|
console.log("props.editChild=====",props.editChild);
|
||||||
//stemId 多余字段
|
if (props.ballotId>0) {
|
||||||
|
console.log("props.editChild2=====",props.editChild);
|
||||||
let res = await api
|
let res = await api
|
||||||
.queryStemByStemId({
|
.queryStemByStemId({ballotId:props.ballotId})
|
||||||
stemId: 0,
|
|
||||||
ballotId: state.ballotId,
|
|
||||||
})
|
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
return res.data.data;
|
return res.data.data;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
state.ballotName = res[0].ballotId;
|
console.log("res====",res);
|
||||||
let renderArr = [...res];
|
state.ballotName = res.ballotId;
|
||||||
|
// let renderArr = [...res];
|
||||||
// sortBy(renderArr, "orderNumber"); //序号
|
// sortBy(renderArr, "orderNumber"); //序号
|
||||||
state.allFormsData = parseData(renderArr); //类型
|
state.allFormsData = parseData(res); //类型
|
||||||
|
|
||||||
|
console.log( state.allFormsData);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
getInfoDate();
|
|
||||||
|
|
||||||
// 转换成前端格式
|
// 转换成前端格式
|
||||||
const parseData = (arr) => {
|
const parseData = (arr) => {
|
||||||
const resultArr = [];
|
const resultArr = [];
|
||||||
arr.forEach((item) => {
|
state.ballotId = arr.ballotId;
|
||||||
|
state.ballotName =arr.ballotName;
|
||||||
|
|
||||||
|
console.log("arr.voteStemVoList=====",arr.voteStemVoList);
|
||||||
|
arr.voteStemVoList.forEach((item) => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
let restList = traverseArr(item.optionDetailList, {
|
let restList = traverseArr(item.optionDetailList, {
|
||||||
inputVal: "singleOptionName",
|
inputVal: "optionName",
|
||||||
imgVal: "singleOptionPictureAddress",
|
imgVal: "optionPictureAddress",
|
||||||
optionId: "singleOptionId",
|
optionId: "optionId",
|
||||||
|
voteStemId:"voteStemId",
|
||||||
|
stem:"stem",
|
||||||
}).map((itm, idx) => {
|
}).map((itm, idx) => {
|
||||||
itm.id = idx + 1;
|
itm.id = idx + 1;
|
||||||
return itm;
|
return itm;
|
||||||
});
|
});
|
||||||
|
|
||||||
obj = {
|
obj = {
|
||||||
voteStemName: item.singleStemName,
|
voteStemId:item.voteStemId,
|
||||||
|
valueSingle: item.voteStemName,
|
||||||
singleList: restList,
|
singleList: restList,
|
||||||
};
|
};
|
||||||
resultArr.push(obj);
|
resultArr.push(obj);
|
||||||
@@ -179,78 +201,41 @@ export default {
|
|||||||
});
|
});
|
||||||
return resultArr;
|
return resultArr;
|
||||||
};
|
};
|
||||||
/**
|
|
||||||
// 转换成后端格式
|
// 转换成后端格式
|
||||||
const restData = (arr, typeKey) => {
|
const restData = (arr) => {
|
||||||
const resultArr = [];
|
const resultArr = [];
|
||||||
arr.forEach((item) => {
|
arr.forEach((item) => {
|
||||||
let obj = {};
|
let obj = {};
|
||||||
if (item[typeKey] === 1) {
|
console.log("item=======",item);
|
||||||
|
// if (item[typeKey] === 1) {
|
||||||
let restList = traverseArr(item.singleList, {
|
let restList = traverseArr(item.singleList, {
|
||||||
singleOptionName: "inputVal",
|
optionName: "inputVal",
|
||||||
singleOptionPictureAddress: "imgVal",
|
optionPictureAddress: "imgVal",
|
||||||
singleOptionId: "optionId",
|
optionId: "optionId",
|
||||||
|
voteStemId:"voteStemId",
|
||||||
|
stem:"stem",
|
||||||
}).map((itm, idx) => {
|
}).map((itm, idx) => {
|
||||||
itm.optionOrderNum = idx + 1;
|
itm.optionOrderNum = idx + 1;
|
||||||
return itm;
|
return itm;
|
||||||
});
|
});
|
||||||
restList.forEach((item) => {
|
restList.forEach((item) => {
|
||||||
item.singleOptionId = item.singleOptionId
|
item.optionId = item.optionId
|
||||||
? item.singleOptionId
|
? item.optionId
|
||||||
: "";
|
: "";
|
||||||
});
|
});
|
||||||
|
|
||||||
obj = {
|
obj = {
|
||||||
questionType: item[typeKey],
|
|
||||||
singleStemName: item.valueSingle,
|
voteStemName: item.valueSingle,
|
||||||
singleList: restList,
|
optionDetailList: restList,
|
||||||
orderNumber: item.orderNumber,
|
voteStemId:item.voteStemId,
|
||||||
};
|
|
||||||
|
};
|
||||||
resultArr.push(obj);
|
resultArr.push(obj);
|
||||||
}
|
// }
|
||||||
if (item[typeKey] === 2) {
|
console.log("resultArr=======",resultArr);
|
||||||
let restList = traverseArr(item.mutilList, {
|
|
||||||
multipleOptionName: "inputVal",
|
|
||||||
multipleOptionPictureAddress: "imgVal",
|
|
||||||
multipleOptionId: "optionId",
|
|
||||||
}).map((itm, idx) => {
|
|
||||||
itm.optionOrderNum = idx + 1;
|
|
||||||
return itm;
|
|
||||||
});
|
|
||||||
restList.forEach((item) => {
|
|
||||||
item.multipleOptionId = item.multipleOptionId
|
|
||||||
? item.multipleOptionId
|
|
||||||
: "";
|
|
||||||
});
|
|
||||||
|
|
||||||
obj = {
|
|
||||||
questionType: item[typeKey],
|
|
||||||
multipleStemName: item.valueMutil,
|
|
||||||
mutilList: restList,
|
|
||||||
orderNumber: item.orderNumber,
|
|
||||||
};
|
|
||||||
resultArr.push(obj);
|
|
||||||
}
|
|
||||||
if (item[typeKey] === 3) {
|
|
||||||
obj = {
|
|
||||||
questionType: item[typeKey],
|
|
||||||
assessmentQaTitle: item.valueAsk,
|
|
||||||
assessmentQaDescribe: item.valueAskDesc,
|
|
||||||
assessmentQaId: item.optionId ? item.optionId : "",
|
|
||||||
};
|
|
||||||
resultArr.push(obj);
|
|
||||||
}
|
|
||||||
if (item[typeKey] === 4) {
|
|
||||||
obj = {
|
|
||||||
questionType: item[typeKey],
|
|
||||||
assessmentScTitle: item.valuePin,
|
|
||||||
assessmentMinScore: item.minScore,
|
|
||||||
assessmentMaxScore: item.maxScore,
|
|
||||||
weightScale: item.pinQuan,
|
|
||||||
assessmentScId: item.optionId ? item.optionId : "",
|
|
||||||
};
|
|
||||||
resultArr.push(obj);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
resultArr.map((itm, idx) => {
|
resultArr.map((itm, idx) => {
|
||||||
itm.orderNumber = idx + 1;
|
itm.orderNumber = idx + 1;
|
||||||
@@ -260,55 +245,37 @@ export default {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// 解散传值
|
// 解散传值
|
||||||
const parseItem = (arr) => {
|
const parseItem = (arrr) => {
|
||||||
const filterComObj = filterCommon(arr, "questionType");
|
// const filterComObj = filterCommon(arr, "questionType");
|
||||||
let resultObj = {};
|
let resultObj = {};
|
||||||
for (let key in filterComObj) {
|
// for (let key in filterComObj) {
|
||||||
if (key === "1") {
|
// if (key === "1") {
|
||||||
let arrSingle = filterComObj[key];
|
// let arrSingle = arrr
|
||||||
|
//filterComObj[key];
|
||||||
|
console.log("arrr======",arrr);
|
||||||
|
/*
|
||||||
let arr = [];
|
let arr = [];
|
||||||
arrSingle.forEach((item) => {
|
arrSingle.forEach((item) => {
|
||||||
|
console.log("item======",item);
|
||||||
if (item.singleList.length) {
|
if (item.singleList.length) {
|
||||||
item.singleList.forEach((itm) => {
|
item.singleList.forEach((itm) => {
|
||||||
arr.push({
|
arr.push({
|
||||||
...itm,
|
...itm,
|
||||||
singleStemName: item.singleStemName,
|
optionName: item.optionName,
|
||||||
orderNumber: item.orderNumber,
|
optionOrderNum: item.optionOrderNum,
|
||||||
questionType: item.questionType,
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});*/
|
||||||
resultObj.assessmentSingleChoiceDtoList = arr;
|
resultObj.voteStemDtoList = arrr;
|
||||||
}
|
// }
|
||||||
if (key === "2") {
|
console.log("resultObj======",resultObj);
|
||||||
let arrMulti = filterComObj[key];
|
// }
|
||||||
let arr = [];
|
|
||||||
arrMulti.forEach((item) => {
|
|
||||||
if (item.mutilList.length) {
|
|
||||||
item.mutilList.forEach((itm) => {
|
|
||||||
arr.push({
|
|
||||||
...itm,
|
|
||||||
multipleStemName: item.multipleStemName,
|
|
||||||
orderNumber: item.orderNumber,
|
|
||||||
questionType: item.questionType,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
resultObj.assessmentMultipleChoiceDtoList = arr;
|
|
||||||
}
|
|
||||||
if (key === "3") {
|
|
||||||
resultObj.assessmentEssayQuestionDtoList = filterComObj[key];
|
|
||||||
}
|
|
||||||
if (key === "4") {
|
|
||||||
resultObj.assessmentScoringQuestionDtoList = filterComObj[key];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return resultObj;
|
return resultObj;
|
||||||
};
|
};
|
||||||
|
|
||||||
*/
|
|
||||||
const handleTypes = () => {
|
const handleTypes = () => {
|
||||||
let obj = {
|
let obj = {
|
||||||
id: state.allFormsData.length,
|
id: state.allFormsData.length,
|
||||||
@@ -339,14 +306,21 @@ export default {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const handleSave = () => {
|
const handleSave = () => {
|
||||||
/**
|
|
||||||
let resultPost = {};
|
let resultPost = {};
|
||||||
|
|
||||||
let filterData = parseItem(restData(state.allFormsData, "type"));
|
let filterData = parseItem(restData(state.allFormsData, "type"));
|
||||||
|
|
||||||
|
if (!state.ballotName) {
|
||||||
|
return message.warning("请输入投票名称");
|
||||||
|
}
|
||||||
|
// 校验s
|
||||||
|
|
||||||
// 校验
|
// 校验
|
||||||
if (!checkVal(filterData)) {
|
if (!checkVal(filterData)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
// checkVal(filterData);
|
||||||
console.log(12121212);
|
console.log(12121212);
|
||||||
console.log(filterData);
|
console.log(filterData);
|
||||||
|
|
||||||
@@ -356,105 +330,71 @@ export default {
|
|||||||
ballotName: state.ballotName,
|
ballotName: state.ballotName,
|
||||||
...filterData,
|
...filterData,
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
resultPost = deepCloneFilterString(resultPost, [
|
resultPost = deepCloneFilterString(resultPost, [
|
||||||
"assessmentMaxScore",
|
"assessmentMaxScore",
|
||||||
"assessmentMinScore",
|
"assessmentMinScore",
|
||||||
]);
|
]);*/
|
||||||
console.log(1212334);
|
console.log(1212334);
|
||||||
console.log(resultPost);
|
console.log(resultPost);
|
||||||
editResearchMessage(resultPost).then((res) => {
|
api.updateStemMessage(resultPost).then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
|
state.ballotId=res.data.data.ballotId
|
||||||
|
console.log("res.data.data==============",res.data.data);
|
||||||
|
console.log("res.state.ballotId==============",state.ballotId);
|
||||||
message.success("编辑成功");
|
message.success("编辑成功");
|
||||||
router.push({
|
closeDrawer();
|
||||||
path: "/researchmanage",
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
resultPost = {
|
resultPost = {
|
||||||
ballotName: state.ballotNameNew,
|
ballotName: state.ballotName,
|
||||||
assessmentMark: state.valueMore,
|
|
||||||
...filterData,
|
...filterData,
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
resultPost = deepCloneFilterString(resultPost, [
|
resultPost = deepCloneFilterString(resultPost, [
|
||||||
"assessmentMaxScore",
|
"assessmentMaxScore",
|
||||||
"assessmentMinScore",
|
"assessmentMinScore",
|
||||||
]);
|
]);*/
|
||||||
createOptionMessage(resultPost).then((res) => {
|
|
||||||
|
console.log("=========",resultPost);
|
||||||
|
api.createStemMessage(resultPost).then((res) => {
|
||||||
if (res.data.code === 200) {
|
if (res.data.code === 200) {
|
||||||
|
state.ballotId=res.data.data.ballotId
|
||||||
|
console.log("res.data.data2==============",res.data.data);
|
||||||
|
console.log("res.state.ballotId=2s=============",state.ballotId);
|
||||||
message.success("创建成功");
|
message.success("创建成功");
|
||||||
|
closeDrawer();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
};
|
};
|
||||||
const handleAllCancel = () => {
|
const handleAllCancel = () => {
|
||||||
state.allFormsData = [];
|
state.allFormsData = [];
|
||||||
};
|
};
|
||||||
/**
|
|
||||||
const checkVal = (filterData) => {
|
const checkVal = (filterData) => {
|
||||||
// 问答
|
console.log("filterData.====",filterData);
|
||||||
if (
|
console.log("filterData.voteStemVoList====",filterData.voteStemDtoList);
|
||||||
filterData.assessmentEssayQuestionDtoList &&
|
|
||||||
filterData.assessmentEssayQuestionDtoList.length
|
if(!filterData.voteStemDtoList){
|
||||||
) {
|
message.error("请添加题干");
|
||||||
let arr = filterData.assessmentEssayQuestionDtoList;
|
return false;
|
||||||
for (let item of arr) {
|
}
|
||||||
if (!item.assessmentQaTitle) {
|
let arr = filterData.voteStemDtoList;
|
||||||
message.error("问答题干为必填 请确认");
|
arr.forEach((item) => {
|
||||||
|
console.log("item===",item);
|
||||||
|
console.log("!item.voteStemName===",!item.voteStemName);
|
||||||
|
if (!item.voteStemName) {
|
||||||
|
console.log("item.voteStemName===",item.voteStemName);
|
||||||
|
message.error("题干为必填 请确认",item.voteStemName);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
}
|
return true;
|
||||||
// 多选
|
|
||||||
if (
|
|
||||||
filterData.assessmentMultipleChoiceDtoList &&
|
|
||||||
filterData.assessmentMultipleChoiceDtoList.length
|
|
||||||
) {
|
|
||||||
let arr = filterData.assessmentMultipleChoiceDtoList;
|
|
||||||
for (let item of arr) {
|
|
||||||
if (!item.multipleStemName) {
|
|
||||||
message.error("多选题干为必填 请确认");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 评分
|
|
||||||
if (
|
|
||||||
filterData.assessmentScoringQuestionDtoList &&
|
|
||||||
filterData.assessmentScoringQuestionDtoList.length
|
|
||||||
) {
|
|
||||||
let CountNum = 0;
|
|
||||||
let CountArr = filterData.assessmentScoringQuestionDtoList;
|
|
||||||
for (let item of CountArr) {
|
|
||||||
if (!item.assessmentScTitle) {
|
|
||||||
message.error("评分题干为必填 请确认");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
CountNum += Number(item["weightScale"]);
|
|
||||||
}
|
|
||||||
if (CountNum !== 100) {
|
|
||||||
message.error("当前权重设置是百分制 请重新配置");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 单选
|
|
||||||
if (
|
|
||||||
filterData.assessmentSingleChoiceDtoList &&
|
|
||||||
filterData.assessmentSingleChoiceDtoList.length
|
|
||||||
) {
|
|
||||||
let arr = filterData.assessmentSingleChoiceDtoList;
|
|
||||||
for (let item of arr) {
|
|
||||||
if (!item.singleStemName) {
|
|
||||||
message.error("单选题干为必填 请确认");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
};
|
};
|
||||||
*/
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ export function traverseArr(arr, traverseObj, saveOld = false) {
|
|||||||
newArr.push(obj);
|
newArr.push(obj);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
// console.log('newArr', newArr)
|
||||||
return newArr;
|
return newArr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tmplh_btn">
|
<div class="tmplh_btn">
|
||||||
<div class="btn btn1" @click="search">
|
<div class="btn btn1" @click="getList">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText btnText1">搜索</div>
|
<div class="btnText btnText1">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -106,9 +106,9 @@ export default {
|
|||||||
label: "rose",
|
label: "rose",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
valueproj: null,
|
valueproj: "",
|
||||||
valuecreater: null,
|
valuecreater: "",
|
||||||
valuename: null,
|
valuename: "",
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
total: null,
|
total: null,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
@@ -184,12 +184,12 @@ export default {
|
|||||||
// },
|
// },
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
const getList = (obj) => {
|
const getList = () => {
|
||||||
let objn = obj || {
|
let objn = {
|
||||||
auditStatus: 0,
|
auditStatus: 0,
|
||||||
categoryId: 0,
|
categoryId: 0,
|
||||||
createName: "",
|
createName: state.valuecreater,
|
||||||
name: "",
|
name: state.valuename,
|
||||||
pageNo: state.currentPage,
|
pageNo: state.currentPage,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
};
|
};
|
||||||
@@ -233,17 +233,6 @@ export default {
|
|||||||
});
|
});
|
||||||
state.tableData1 = array;
|
state.tableData1 = array;
|
||||||
};
|
};
|
||||||
const search = () => {
|
|
||||||
let obj = {
|
|
||||||
auditStatus: 0,
|
|
||||||
categoryId: state.valueproj,
|
|
||||||
createName: state.valuecreater,
|
|
||||||
name: state.valuename,
|
|
||||||
pageNo: state.currentPage,
|
|
||||||
pageSize: 10,
|
|
||||||
};
|
|
||||||
getList(obj);
|
|
||||||
};
|
|
||||||
const reset = () => {
|
const reset = () => {
|
||||||
(state.valueproj = null),
|
(state.valueproj = null),
|
||||||
(state.valuecreater = null),
|
(state.valuecreater = null),
|
||||||
@@ -265,7 +254,6 @@ export default {
|
|||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
getList,
|
getList,
|
||||||
setTableData,
|
setTableData,
|
||||||
search,
|
|
||||||
handleChangeproj,
|
handleChangeproj,
|
||||||
reset,
|
reset,
|
||||||
changePagination,
|
changePagination,
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tmplh_btn">
|
<div class="tmplh_btn">
|
||||||
<div class="btn btn1" @click="search">
|
<div class="btn btn1" @click="getFaceList">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText btnText1">搜索</div>
|
<div class="btnText btnText1">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -426,9 +426,9 @@ export default {
|
|||||||
label: "rose",
|
label: "rose",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
valueproj: null,
|
valueproj: "",
|
||||||
valuecreater: null,
|
valuecreater: "",
|
||||||
valuename: null,
|
valuename: "",
|
||||||
// currentFacePage: 1,
|
// currentFacePage: 1,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
total: null,
|
total: null,
|
||||||
@@ -526,14 +526,14 @@ export default {
|
|||||||
iframeUrl: iframeUrl,
|
iframeUrl: iframeUrl,
|
||||||
});
|
});
|
||||||
|
|
||||||
const getFaceList = (obj) => {
|
const getFaceList = () => {
|
||||||
let objn = obj || {
|
let objn = {
|
||||||
auditStatus: 1,
|
auditStatus: 1,
|
||||||
// beginTime: 0,
|
// beginTime: 0,
|
||||||
categoryId: 0,
|
categoryId: 0,
|
||||||
createName: "",
|
createName: state.valuecreater,
|
||||||
// endTime: 0,
|
// endTime: 0,
|
||||||
name: "",
|
name: state.valuename,
|
||||||
pageNo: state.currentPage,
|
pageNo: state.currentPage,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
projectName: "",
|
projectName: "",
|
||||||
@@ -586,21 +586,6 @@ export default {
|
|||||||
state.valuename = null;
|
state.valuename = null;
|
||||||
getFaceList();
|
getFaceList();
|
||||||
};
|
};
|
||||||
const search = () => {
|
|
||||||
let obj = {
|
|
||||||
auditStatus: 1,
|
|
||||||
// beginTime: 0,
|
|
||||||
// categoryId: state.valueproj,
|
|
||||||
categoryId: 0,
|
|
||||||
createName: state.valuecreater,
|
|
||||||
// endTime: 0,
|
|
||||||
name: state.valuename,
|
|
||||||
pageNo: state.currentPage,
|
|
||||||
pageSize: 10,
|
|
||||||
projectName: "",
|
|
||||||
};
|
|
||||||
getFaceList(obj);
|
|
||||||
};
|
|
||||||
const changePagination = (pagina) => {
|
const changePagination = (pagina) => {
|
||||||
state.currentPage = pagina;
|
state.currentPage = pagina;
|
||||||
getFaceList();
|
getFaceList();
|
||||||
@@ -646,7 +631,6 @@ export default {
|
|||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
getFaceList,
|
getFaceList,
|
||||||
setFaceData,
|
setFaceData,
|
||||||
search,
|
|
||||||
reset,
|
reset,
|
||||||
changePagination,
|
changePagination,
|
||||||
showAudit,
|
showAudit,
|
||||||
|
|||||||
@@ -60,7 +60,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tmplh_btn">
|
<div class="tmplh_btn">
|
||||||
<div class="btn btn1" @click="search">
|
<div class="btn btn1" @click="getProjList">
|
||||||
<div class="search"></div>
|
<div class="search"></div>
|
||||||
<div class="btnText btnText1">搜索</div>
|
<div class="btnText btnText1">搜索</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -112,7 +112,6 @@ import { onMounted, reactive, toRefs } from "vue";
|
|||||||
import ProjectAudit from "../../components/drawers/ProjectAudit";
|
import ProjectAudit from "../../components/drawers/ProjectAudit";
|
||||||
import { projlist } from "../../api/indexAudit";
|
import { projlist } from "../../api/indexAudit";
|
||||||
import { toDate } from "@/api/method";
|
import { toDate } from "@/api/method";
|
||||||
import dayjs from "dayjs";
|
|
||||||
export default {
|
export default {
|
||||||
name: "ProjectViewedN",
|
name: "ProjectViewedN",
|
||||||
components: { ProjectAudit },
|
components: { ProjectAudit },
|
||||||
@@ -131,7 +130,7 @@ export default {
|
|||||||
valueproj: null,
|
valueproj: null,
|
||||||
valuecreater: null,
|
valuecreater: null,
|
||||||
valuename: null,
|
valuename: null,
|
||||||
valueDate: [],
|
valueDate: undefined,
|
||||||
ProjAuditvisible: false,
|
ProjAuditvisible: false,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
total: null,
|
total: null,
|
||||||
@@ -211,15 +210,6 @@ export default {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
tableData1: [
|
tableData1: [
|
||||||
{
|
|
||||||
number: "1",
|
|
||||||
name: "课程1",
|
|
||||||
belong: "管理者进阶/管理者进阶腾飞班",
|
|
||||||
manager: "黄华,刘军",
|
|
||||||
status: "待审核",
|
|
||||||
creater: "管理员",
|
|
||||||
time: "-",
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
const showProjAudit = (id, createId, creater) => {
|
const showProjAudit = (id, createId, creater) => {
|
||||||
@@ -228,15 +218,15 @@ export default {
|
|||||||
state.chooseCreateId = createId;
|
state.chooseCreateId = createId;
|
||||||
state.chooseCreater = creater;
|
state.chooseCreater = creater;
|
||||||
};
|
};
|
||||||
const getProjList = (obj) => {
|
const getProjList = () => {
|
||||||
let objn = obj || {
|
let objn = {
|
||||||
beginTime: 0,
|
beginTime: state.valueDate == undefined ? "" : Date.parse(state.valueDate[0]) ,
|
||||||
createName: "",
|
createName: state.valuecreater,
|
||||||
endTime: 0,
|
endTime: state.valueDate == undefined ? "" : Date.parse(state.valueDate[1]),
|
||||||
manager: "",
|
manager: state.valuename,
|
||||||
name: "",
|
name: state.valueproj,
|
||||||
pageNo: state.currentPage,
|
pageNo: state.currentPage,
|
||||||
pageSize: 10,
|
pageSize: state.pageSize,
|
||||||
status: 1,
|
status: 1,
|
||||||
};
|
};
|
||||||
projlist(objn)
|
projlist(objn)
|
||||||
@@ -244,9 +234,7 @@ export default {
|
|||||||
console.log("获取待审核项目成功", res);
|
console.log("获取待审核项目成功", res);
|
||||||
let result = res.data.data;
|
let result = res.data.data;
|
||||||
state.total = result.total;
|
state.total = result.total;
|
||||||
if (result.total > 0) {
|
|
||||||
setProjList(result.rows);
|
setProjList(result.rows);
|
||||||
}
|
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
console.log("获取待审核项目失败", err);
|
console.log("获取待审核项目失败", err);
|
||||||
@@ -255,11 +243,13 @@ export default {
|
|||||||
const setProjList = (tableData) => {
|
const setProjList = (tableData) => {
|
||||||
let data = tableData;
|
let data = tableData;
|
||||||
let array = [];
|
let array = [];
|
||||||
data.map((item) => {
|
data.map((item,index) => {
|
||||||
|
if(item.type == 3){
|
||||||
let obj = {
|
let obj = {
|
||||||
|
key:index+1,
|
||||||
number: item.projectId,
|
number: item.projectId,
|
||||||
name: getName(item),
|
name: item.name,
|
||||||
belong: getBelong(item),
|
belong: item.parentId,
|
||||||
manager: item.manager || "-",
|
manager: item.manager || "-",
|
||||||
status:
|
status:
|
||||||
item.status == 0
|
item.status == 0
|
||||||
@@ -281,52 +271,38 @@ export default {
|
|||||||
createId: item.createId,
|
createId: item.createId,
|
||||||
};
|
};
|
||||||
array.push(obj);
|
array.push(obj);
|
||||||
|
} else {
|
||||||
|
let obj = {
|
||||||
|
key:index+1,
|
||||||
|
number: item.projectId,
|
||||||
|
name: item.name,
|
||||||
|
belong: item.parentId,
|
||||||
|
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,
|
||||||
|
createId: item.createId,
|
||||||
|
children: item.subList ? setProjList(item.subList) : [] ,
|
||||||
|
};
|
||||||
|
array.push(obj);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
state.tableData1 = [];
|
state.tableData1 = array
|
||||||
};
|
return array
|
||||||
const getName = (item) => {
|
|
||||||
if (
|
|
||||||
Object.prototype.hasOwnProperty.call(item.subList[0], "name") &&
|
|
||||||
!Object.prototype.hasOwnProperty.call(
|
|
||||||
item.subList[0].subList[0],
|
|
||||||
"name"
|
|
||||||
)
|
|
||||||
) {
|
|
||||||
// 两层
|
|
||||||
return item.subList[0].name;
|
|
||||||
} else if (
|
|
||||||
Object.prototype.hasOwnProperty.call(item.subList[0], "name") &&
|
|
||||||
Object.prototype.hasOwnProperty.call(item.subList[0].subList[0], "name")
|
|
||||||
) {
|
|
||||||
//三层
|
|
||||||
return item.subList[0].subList[0].name;
|
|
||||||
// return item.name
|
|
||||||
} else {
|
|
||||||
// 单层
|
|
||||||
return item.name;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
const getBelong = (item) => {
|
|
||||||
if (
|
|
||||||
Object.prototype.hasOwnProperty.call(item.subList[0], "name") &&
|
|
||||||
!Object.prototype.hasOwnProperty.call(
|
|
||||||
item.subList[0].subList[0],
|
|
||||||
"name"
|
|
||||||
)
|
|
||||||
) {
|
|
||||||
// 两层
|
|
||||||
return item.name;
|
|
||||||
} else if (
|
|
||||||
Object.prototype.hasOwnProperty.call(item.subList[0], "name") &&
|
|
||||||
Object.prototype.hasOwnProperty.call(item.subList[0].subList[0], "name")
|
|
||||||
) {
|
|
||||||
//三层
|
|
||||||
return item.subList[0].name + "/" + item.subList[0].subList[0].name;
|
|
||||||
// return item.name
|
|
||||||
} else {
|
|
||||||
// 单层
|
|
||||||
return item.name;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
const changePagination = (pagina) => {
|
const changePagination = (pagina) => {
|
||||||
state.currentPage = pagina;
|
state.currentPage = pagina;
|
||||||
@@ -339,19 +315,6 @@ export default {
|
|||||||
(state.valueDate = []);
|
(state.valueDate = []);
|
||||||
getProjList();
|
getProjList();
|
||||||
};
|
};
|
||||||
const search = () => {
|
|
||||||
let obj = {
|
|
||||||
beginTime: dayjs(state.valueDate[0]).format("YYYY-MM-DD"),
|
|
||||||
createName: state.valuecreater,
|
|
||||||
endTime: dayjs(state.valueDate[1]).format("YYYY-MM-DD"),
|
|
||||||
manager: state.valuename,
|
|
||||||
name: state.valueproj,
|
|
||||||
pageNo: state.currentPage,
|
|
||||||
pageSize: 10,
|
|
||||||
status: 1,
|
|
||||||
};
|
|
||||||
getProjList(obj);
|
|
||||||
};
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getProjList();
|
getProjList();
|
||||||
});
|
});
|
||||||
@@ -360,11 +323,8 @@ export default {
|
|||||||
showProjAudit,
|
showProjAudit,
|
||||||
getProjList,
|
getProjList,
|
||||||
setProjList,
|
setProjList,
|
||||||
getName,
|
|
||||||
getBelong,
|
|
||||||
changePagination,
|
changePagination,
|
||||||
reset,
|
reset,
|
||||||
search,
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -219,11 +219,15 @@
|
|||||||
<add-online
|
<add-online
|
||||||
v-model:addonlineVisible="addonlinevisible"
|
v-model:addonlineVisible="addonlinevisible"
|
||||||
@changeData="updateTableData"
|
@changeData="updateTableData"
|
||||||
v-model:edit="edit"
|
v-model:isactive="isactive"
|
||||||
|
v-model:routerId="routerId"
|
||||||
|
v-model:routerTaskId="routerTaskId"
|
||||||
v-model:projectId="projectId"
|
v-model:projectId="projectId"
|
||||||
v-model:chooseStageId="chooseStageId"
|
v-model:chooseStageId="chooseStageId"
|
||||||
v-model:projectTaskId="projectTaskId"
|
v-model:projectTaskId="projectTaskId"
|
||||||
|
v-model:edit="edit"
|
||||||
v-model:EditOnlineId="EditOnlineId"
|
v-model:EditOnlineId="EditOnlineId"
|
||||||
|
:isLevel="isLevel"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- 添加在线侧弹窗 -->
|
<!-- 添加在线侧弹窗 -->
|
||||||
@@ -263,14 +267,15 @@
|
|||||||
<add-case
|
<add-case
|
||||||
v-model:addcaseVisible="addcasevisible"
|
v-model:addcaseVisible="addcasevisible"
|
||||||
@changeData="updateTableData"
|
@changeData="updateTableData"
|
||||||
:isLevel="isLevel"
|
|
||||||
v-model:isactive="isactive"
|
v-model:isactive="isactive"
|
||||||
v-model:routerId="routerId"
|
v-model:routerId="routerId"
|
||||||
v-model:edit="edit"
|
v-model:routerTaskId="routerTaskId"
|
||||||
v-model:projectId="projectId"
|
v-model:projectId="projectId"
|
||||||
v-model:chooseStageId="chooseStageId"
|
v-model:chooseStageId="chooseStageId"
|
||||||
v-model:projectTaskId="projectTaskId"
|
v-model:projectTaskId="projectTaskId"
|
||||||
|
v-model:edit="edit"
|
||||||
v-model:EditCaseId="EditCaseId"
|
v-model:EditCaseId="EditCaseId"
|
||||||
|
:isLevel="isLevel"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- 添加案例侧弹窗 -->
|
<!-- 添加案例侧弹窗 -->
|
||||||
@@ -420,16 +425,16 @@
|
|||||||
<div>
|
<div>
|
||||||
<add-eval
|
<add-eval
|
||||||
v-model:addevalVisible="addevalvisible"
|
v-model:addevalVisible="addevalvisible"
|
||||||
:isLevel="isLevel"
|
|
||||||
@changeData="updateTableData"
|
@changeData="updateTableData"
|
||||||
v-model:isactive="isactive"
|
v-model:isactive="isactive"
|
||||||
v-model:routerTaskId="routerTaskId"
|
|
||||||
v-model:edit="edit"
|
|
||||||
v-model:routerId="routerId"
|
v-model:routerId="routerId"
|
||||||
|
v-model:routerTaskId="routerTaskId"
|
||||||
v-model:projectId="projectId"
|
v-model:projectId="projectId"
|
||||||
v-model:chooseStageId="chooseStageId"
|
v-model:chooseStageId="chooseStageId"
|
||||||
v-model:projectTaskId="projectTaskId"
|
v-model:projectTaskId="projectTaskId"
|
||||||
|
v-model:edit="edit"
|
||||||
v-model:EditEvalId="EditEvalId"
|
v-model:EditEvalId="EditEvalId"
|
||||||
|
:isLevel="isLevel"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<!-- 添加测评侧弹窗 -->
|
<!-- 添加测评侧弹窗 -->
|
||||||
@@ -501,7 +506,7 @@
|
|||||||
v-model:chooseStageId="chooseStageId"
|
v-model:chooseStageId="chooseStageId"
|
||||||
v-model:EditProjectId="EditProjectId"
|
v-model:EditProjectId="EditProjectId"
|
||||||
v-model:routerTaskId="routerTaskId"
|
v-model:routerTaskId="routerTaskId"
|
||||||
v-model:chooseProjectList = "chooseProjectList"
|
v-model:chooseProjectList="chooseProjectList"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -515,7 +520,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="tit_right">
|
<div class="tit_right">
|
||||||
<div class="btn btn1" @click="showChangeModal">
|
<div class="btn btn1" @click="showChangeModal">
|
||||||
<div class="btnText">移动到任务阶段</div>
|
<div class="btnText">移动任务到关卡</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn btn2">
|
<div class="btn btn2">
|
||||||
<div class="imgIcon"></div>
|
<div class="imgIcon"></div>
|
||||||
@@ -1924,7 +1929,6 @@ export default {
|
|||||||
closeChangeModal,
|
closeChangeModal,
|
||||||
handleChangeStage,
|
handleChangeStage,
|
||||||
|
|
||||||
|
|
||||||
showDeleteChapter,
|
showDeleteChapter,
|
||||||
closeDeleteChapter,
|
closeDeleteChapter,
|
||||||
deleteChapter,
|
deleteChapter,
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ module.exports = defineConfig({
|
|||||||
port: 8080,
|
port: 8080,
|
||||||
proxy: {
|
proxy: {
|
||||||
"/manageApi": {
|
"/manageApi": {
|
||||||
// target:"http://192.168.100.208:30001",
|
// target:"http://192.168.56.245:30001/",
|
||||||
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
|
target: "http://111.231.196.214:30001/", //这里后台的地址模拟的;应该填写你们真实的后台接口
|
||||||
changeOrigin: true, //表示是否改变原域名
|
changeOrigin: true, //表示是否改变原域名
|
||||||
// secure: false,
|
// secure: false,
|
||||||
|
|||||||
Reference in New Issue
Block a user