fix:修改同步学习记录选项

This commit is contained in:
lixg
2022-12-04 14:16:13 +08:00
parent 7e13091088
commit f9ffe051eb
4 changed files with 1154 additions and 1280 deletions

View File

@@ -2,10 +2,11 @@
* @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-12-04 11:13:37 * @LastEditTime: 2022-12-04 13:27:07
* @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
*/ */
import { message } from "ant-design-vue";
import axios from "axios"; import axios from "axios";
// import { getCookie } from '../api/method' // import { getCookie } from '../api/method'
// const Qs = require("qs"); // const Qs = require("qs");
@@ -23,6 +24,7 @@ const http = axios.create({
http.interceptors.request.use( http.interceptors.request.use(
(config) => { (config) => {
// console.log('config', config)
// const token = localStorage.getItem("token"); // const token = localStorage.getItem("token");
// // const token = getCookie('token') // // const token = getCookie('token')
// // console.log('token', token) // // console.log('token', token)
@@ -61,6 +63,10 @@ http.interceptors.response.use(
return response; return response;
}, },
function (error) { function (error) {
if (error.message == "timeout of 1ms exceeded") {
message.destroy()
message.error("请求超时")
}
console.log("api error %o", error); console.log("api error %o", error);
return Promise.reject(error); return Promise.reject(error);
} }

View File

@@ -79,7 +79,6 @@
<div class="chooseLeft"> <div class="chooseLeft">
<div class="boeTree"> <div class="boeTree">
<div class="boeTreeTitle">BOE组织树</div> <div class="boeTreeTitle">BOE组织树</div>
<a-tree <a-tree
v-model:value="valueSelectboe" v-model:value="valueSelectboe"
class="treeMain" class="treeMain"
@@ -206,7 +205,6 @@
> >
<template #suffixIcon></template> <template #suffixIcon></template>
</a-tree> </a-tree>
<a-tree <a-tree
v-else-if="isSearchOrg" v-else-if="isSearchOrg"
class="treeMain treeMain2" class="treeMain treeMain2"
@@ -288,7 +286,6 @@
</div> </div>
</div> </div>
</div> </div>
<!-- <div class="line"> <!-- <div class="line">
<div class="inline"> <div class="inline">
<div class="left1"> <div class="left1">
@@ -542,7 +539,6 @@
<button class="btn2" @click="submitAuth">确定</button> <button class="btn2" @click="submitAuth">确定</button>
</div> </div>
</div> </div>
<!-- 确认添加部门弹窗 --> <!-- 确认添加部门弹窗 -->
<a-modal <a-modal
v-model:visible="showOrgModal" v-model:visible="showOrgModal"
@@ -575,7 +571,6 @@
<!-- 确认添加部门弹窗 --> <!-- 确认添加部门弹窗 -->
</a-drawer> </a-drawer>
</template> </template>
<script> <script>
import { reactive, toRefs, onMounted, onUnmounted, computed } from "vue"; import { reactive, toRefs, onMounted, onUnmounted, computed } from "vue";
import elementResizeDetectorMaker from "element-resize-detector"; import elementResizeDetectorMaker from "element-resize-detector";
@@ -588,7 +583,6 @@ import {
// batchLoadList, // batchLoadList,
} from "../../utils/utils"; } from "../../utils/utils";
import * as api from "../../api/index1"; import * as api from "../../api/index1";
export default { export default {
name: "ProjCheckShip", name: "ProjCheckShip",
props: { props: {
@@ -624,22 +618,16 @@ export default {
currentPage2: 1, currentPage2: 1,
tableDataTotal2: 0, tableDataTotal2: 0,
audienceName: "", audienceName: "",
pageSize1: 10, pageSize1: 10,
currentPage1: 1, currentPage1: 1,
tableDataTotal1: 0, tableDataTotal1: 0,
selectedRowKeys1: [], selectedRowKeys1: [],
activeKey: "1", activeKey: "1",
value: [], //级联选择框 value: [], //级联选择框
choosevalue: null, //受众选择 choosevalue: null, //受众选择
valueSelect: null, //树形选择 valueSelect: null, //树形选择
valueSelectboe2: null, //boe树形选择 valueSelectboe2: null, //boe树形选择
nameadd: "", nameadd: "",
searchOrgName: "", //搜索组织 searchOrgName: "", //搜索组织
//组织树 //组织树
treeData: [], treeData: [],
@@ -691,7 +679,6 @@ export default {
ellipsis: true, ellipsis: true,
}, },
], ],
//受众关联table数据 //受众关联table数据
tabledata2: [ tabledata2: [
// { // {
@@ -771,31 +758,24 @@ export default {
selectOrgName: null, //选中的组织名称 selectOrgName: null, //选中的组织名称
//快速选人------------------------------------- //快速选人-------------------------------------
//添加组织------------------------------------- //添加组织-------------------------------------
selectedKeys1: [], //选中部门的key selectedKeys1: [], //选中部门的key
chooseorganization: [], //添加组织的选择组织 chooseorganization: [], //添加组织的选择组织
chooseorganization1: [], //显示到右侧的数组 chooseorganization1: [], //显示到右侧的数组
showMore1: false, //是否显示添加组织的查看更多 showMore1: false, //是否显示添加组织的查看更多
showHidden1: false, //是否显示添加组织的收回 showHidden1: false, //是否显示添加组织的收回
showOrgModal: false, //确认弹窗 showOrgModal: false, //确认弹窗
isSearchOrg: false, isSearchOrg: false,
treeData2: [], treeData2: [],
//添加组织------------------------------------- //添加组织-------------------------------------
//受众关联------------------------------------- //受众关联-------------------------------------
relationpeople: [], //总的数组 relationpeople: [], //总的数组
showMore2: false, //是否显示快速选人的查看更多 showMore2: false, //是否显示快速选人的查看更多
showHidden2: false, //是否显示收回 showHidden2: false, //是否显示收回
selectedRowKeys2: [], //表格选中的key selectedRowKeys2: [], //表格选中的key
//受众关联------------------------------------- //受众关联-------------------------------------
selectAllArr: null, //所有选中 selectAllArr: null, //所有选中
expandedKeys: [], //展开的节点 expandedKeys: [], //展开的节点
}); });
const closeDrawer = () => { const closeDrawer = () => {
state.activeKey = "1"; state.activeKey = "1";
ctx.emit("update:ProjCheckvisible", false); ctx.emit("update:ProjCheckvisible", false);
@@ -807,23 +787,18 @@ export default {
state.currentPage = 1; state.currentPage = 1;
state.tableDataTotal = 0; state.tableDataTotal = 0;
state.nameSearch = ""; //搜索名称 state.nameSearch = ""; //搜索名称
//受众 //受众
state.currentPage2 = 1; state.currentPage2 = 1;
state.tableDataTotal2 = 0; state.tableDataTotal2 = 0;
state.audienceName = ""; state.audienceName = "";
state.currentPage1 = 1; state.currentPage1 = 1;
state.tableDataTotal1 = 0; state.tableDataTotal1 = 0;
state.selectedKeys = []; state.selectedKeys = [];
state.selectOrgId = null; //选中的组织id state.selectOrgId = null; //选中的组织id
state.selectOrgName = null; //选中的组织名称 state.selectOrgName = null; //选中的组织名称
state.searchOrgName = null; state.searchOrgName = null;
state.isSearchOrg = false; state.isSearchOrg = false;
state.treeData2 = []; state.treeData2 = [];
getAudienceInfo(); getAudienceInfo();
}; };
const afterVisibleChange = (bool) => { const afterVisibleChange = (bool) => {
@@ -836,7 +811,6 @@ export default {
state.treeData = computed(() => { state.treeData = computed(() => {
return store.state.orgtreeList ? store.state.orgtreeList : []; return store.state.orgtreeList ? store.state.orgtreeList : [];
}); });
const getClientHeight = () => { const getClientHeight = () => {
state.screenHeight = document.body.clientHeight; state.screenHeight = document.body.clientHeight;
}; };
@@ -844,16 +818,14 @@ export default {
// const getClientHeightSelecteds = () => { // const getClientHeightSelecteds = () => {
// state.selectedsHeight = document.getElementById('selecteds').offsetHeight // state.selectedsHeight = document.getElementById('selecteds').offsetHeight
// console.log('selectedsHeight',state.selectedsHeight) // console.log('selectedsHeight',state.selectedsHeight)
// }; // };
onMounted(() => { onMounted(() => {
window.addEventListener("resize", getClientHeight, false); window.addEventListener("resize", getClientHeight, false);
state.tabledata = store.state.memberInitInfo state.tabledata = store.state.memberInitInfo;
}); });
onUnmounted(() => { onUnmounted(() => {
window.removeEventListener("resize", getClientHeight, false); window.removeEventListener("resize", getClientHeight, false);
}); });
// 开始 快速选人------------------------------------------------------------------ // 开始 快速选人------------------------------------------------------------------
//选中部门 //选中部门
const departmentSelect = (e, k) => { const departmentSelect = (e, k) => {
@@ -880,11 +852,10 @@ export default {
org: state.nameSearch ? null : org, org: state.nameSearch ? null : org,
}) })
.then((res) => { .then((res) => {
state.tabledata = res.data.data.rows state.tabledata = res.data.data.rows;
state.tableDataTotal = res.data.data.total; state.tableDataTotal = res.data.data.total;
}) });
} };
// state.tabledata = traverseArr(item1, { // state.tabledata = traverseArr(item1, {
// key: "id", // key: "id",
// name: "realName", // name: "realName",
@@ -927,7 +898,6 @@ export default {
state.choosepeople = item.reverse(); state.choosepeople = item.reverse();
selectedsHeight(); selectedsHeight();
// if (selectedRowKeys.length > 0 && item.length > 0) { // if (selectedRowKeys.length > 0 && item.length > 0) {
// state.selectedRowKeys.push(selectedRowKeys[selectedRowKeys.length - 1]); // state.selectedRowKeys.push(selectedRowKeys[selectedRowKeys.length - 1]);
// state.choosepeople.unshift(item[item.length - 1]); // state.choosepeople.unshift(item[item.length - 1]);
// // console.log( // // console.log(
@@ -1003,9 +973,7 @@ export default {
.getElementById("ProjCheckship") .getElementById("ProjCheckship")
.querySelector("#selectedsBox").style.height = "160px"; .querySelector("#selectedsBox").style.height = "160px";
}; };
// 结束 快速选人------------------------------------------------------------------ // 结束 快速选人------------------------------------------------------------------
// 开始 添加组织------------------------------------------------------------------ // 开始 添加组织------------------------------------------------------------------
//搜索组织 //搜索组织
const searchOrg = (id) => { const searchOrg = (id) => {
@@ -1043,7 +1011,6 @@ export default {
return store.state.orgtreeList ? store.state.orgtreeList : []; return store.state.orgtreeList ? store.state.orgtreeList : [];
}); });
}; };
// //搜索组织 // //搜索组织
// const searchOrg = () => { // const searchOrg = () => {
// let treeTitle = document // let treeTitle = document
@@ -1068,7 +1035,6 @@ export default {
// message.warning("请输入组织名称"); // message.warning("请输入组织名称");
// } // }
// }; // };
//选中部门 //选中部门
const departmentSelect1 = (e, k) => { const departmentSelect1 = (e, k) => {
console.log("选中的部门", e, k); console.log("选中的部门", e, k);
@@ -1087,7 +1053,6 @@ export default {
} }
} }
} }
console.log("选中的部门2", state.selectedKeys1, state.chooseorganization); console.log("选中的部门2", state.selectedKeys1, state.chooseorganization);
}; };
//点击确认添加-判断是否显示确定弹窗 //点击确认添加-判断是否显示确定弹窗
@@ -1110,7 +1075,6 @@ export default {
const closeOrgModal = () => { const closeOrgModal = () => {
state.showOrgModal = false; state.showOrgModal = false;
}; };
//单个删除选中的组织 //单个删除选中的组织
const deleteChoosePeople1 = (item) => { const deleteChoosePeople1 = (item) => {
console.log("item", item, state.chooseorganization); console.log("item", item, state.chooseorganization);
@@ -1130,7 +1094,6 @@ export default {
state.selectedKeys1 = array; state.selectedKeys1 = array;
console.log("state.selectedKeys1", state.selectedKeys1); console.log("state.selectedKeys1", state.selectedKeys1);
}; };
//根据右侧快速选人高度,判断是否显示更多 //根据右侧快速选人高度,判断是否显示更多
const selectedsHeight1 = () => { const selectedsHeight1 = () => {
let resize = elementResizeDetectorMaker(); let resize = elementResizeDetectorMaker();
@@ -1179,11 +1142,8 @@ export default {
.getElementById("ProjCheckship") .getElementById("ProjCheckship")
.querySelector("#selectedsBox1").style.height = "160px"; .querySelector("#selectedsBox1").style.height = "160px";
}; };
// 结束 添加组织------------------------------------------------------------------ // 结束 添加组织------------------------------------------------------------------
// 开始 受众关联------------------------------------------------------------------ // 开始 受众关联------------------------------------------------------------------
//获取受众 //获取受众
const getAudienceInfo = async () => { const getAudienceInfo = async () => {
const item1 = await api const item1 = await api
@@ -1230,7 +1190,6 @@ export default {
state.audienceName = ""; state.audienceName = "";
getAudienceInfo(); getAudienceInfo();
}; };
//受众关联 选中的数组 //受众关联 选中的数组
const onSelectChange2 = (selectedRowKeys, item) => { const onSelectChange2 = (selectedRowKeys, item) => {
// console.log("selectedRowKeys changed: ", selectedRowKeys, item); // console.log("selectedRowKeys changed: ", selectedRowKeys, item);
@@ -1238,7 +1197,6 @@ export default {
state.relationpeople = item.reverse(); state.relationpeople = item.reverse();
// state.selectedRowKeys2.push(selectedRowKeys[selectedRowKeys.length - 1]); // state.selectedRowKeys2.push(selectedRowKeys[selectedRowKeys.length - 1]);
// state.relationpeople.unshift(item[item.length - 1]); // state.relationpeople.unshift(item[item.length - 1]);
selectedsHeight2(); selectedsHeight2();
}; };
//单个删除选中的人 //单个删除选中的人
@@ -1306,9 +1264,7 @@ export default {
.getElementById("ProjCheckship") .getElementById("ProjCheckship")
.querySelector("#selectedsBox2").style.height = "160px"; .querySelector("#selectedsBox2").style.height = "160px";
}; };
// 结束 受众关联------------------------------------------------------------------ // 结束 受众关联------------------------------------------------------------------
//全部清除 //全部清除
const deleteAll = () => { const deleteAll = () => {
//快速选人------------------------------------- //快速选人-------------------------------------
@@ -1321,26 +1277,21 @@ export default {
state.selectOrgName = null; //选中的组织名称 state.selectOrgName = null; //选中的组织名称
//快速选人------------------------------------- //快速选人-------------------------------------
//添加组织------------------------------------- //添加组织-------------------------------------
state.selectedKeys1 = []; //选中部门的key state.selectedKeys1 = []; //选中部门的key
state.chooseorganization = []; //添加组织的选择组织 state.chooseorganization = []; //添加组织的选择组织
state.chooseorganization1 = []; //显示到右侧的数组 state.chooseorganization1 = []; //显示到右侧的数组
state.showMore1 = false; //是否显示添加组织的查看更多 state.showMore1 = false; //是否显示添加组织的查看更多
state.showHidden1 = false; //是否显示添加组织的收回 state.showHidden1 = false; //是否显示添加组织的收回
state.showOrgModal = false; //确认弹窗 state.showOrgModal = false; //确认弹窗
//添加组织------------------------------------- //添加组织-------------------------------------
//受众关联------------------------------------- //受众关联-------------------------------------
state.relationpeople = []; //总的数组 state.relationpeople = []; //总的数组
state.showMore2 = false; //是否显示快速选人的查看更多 state.showMore2 = false; //是否显示快速选人的查看更多
state.showHidden2 = false; //是否显示收回 state.showHidden2 = false; //是否显示收回
state.selectedRowKeys2 = []; //表格选中的key state.selectedRowKeys2 = []; //表格选中的key
//受众关联------------------------------------- //受众关联-------------------------------------
state.selectAllArr = null; //所有选中 state.selectAllArr = null; //所有选中
}; };
//确定添加授权 //确定添加授权
const submitAuth = () => { const submitAuth = () => {
let choosepeople = []; let choosepeople = [];
@@ -1351,7 +1302,6 @@ export default {
}; };
choosepeople.push(obj); choosepeople.push(obj);
}); });
let chooseorganization1 = []; let chooseorganization1 = [];
state.chooseorganization1.map((value) => { state.chooseorganization1.map((value) => {
let obj = { let obj = {
@@ -1360,7 +1310,6 @@ export default {
}; };
chooseorganization1.push(obj); chooseorganization1.push(obj);
}); });
let relationpeople = []; let relationpeople = [];
state.relationpeople.map((value) => { state.relationpeople.map((value) => {
let obj = { let obj = {
@@ -1411,7 +1360,6 @@ export default {
//快速选人 //快速选人
state.selectedRowKeys = selectedRowKeys; state.selectedRowKeys = selectedRowKeys;
state.choosepeople = choosepeople; state.choosepeople = choosepeople;
let deptArr = res.data.data.deptList; let deptArr = res.data.data.deptList;
let selectedKeys1 = []; let selectedKeys1 = [];
let chooseorganization = []; let chooseorganization = [];
@@ -1423,7 +1371,6 @@ export default {
state.selectedKeys1 = selectedKeys1; state.selectedKeys1 = selectedKeys1;
state.chooseorganization = chooseorganization; state.chooseorganization = chooseorganization;
state.chooseorganization1 = chooseorganization; state.chooseorganization1 = chooseorganization;
let groupArr = res.data.data.groupList; let groupArr = res.data.data.groupList;
let selectedRowKeys2 = []; let selectedRowKeys2 = [];
let relationpeople = []; let relationpeople = [];
@@ -1441,7 +1388,6 @@ export default {
console.log("获取权限名单失败", err); console.log("获取权限名单失败", err);
}); });
}; };
return { return {
...toRefs(state), ...toRefs(state),
afterVisibleChange, afterVisibleChange,
@@ -1454,7 +1400,6 @@ export default {
selectedsHeight, selectedsHeight,
morePeopleShow, morePeopleShow,
morePeopleHidden, morePeopleHidden,
departmentSelect1, departmentSelect1,
addOrgModal, addOrgModal,
addOrg, addOrg,
@@ -1463,39 +1408,31 @@ export default {
morePeopleShow1, morePeopleShow1,
morePeopleHidden1, morePeopleHidden1,
deleteChoosePeople1, deleteChoosePeople1,
selectedsHeight2, selectedsHeight2,
morePeopleShow2, morePeopleShow2,
morePeopleHidden2, morePeopleHidden2,
deleteChoosePeople2, deleteChoosePeople2,
deleteAll, deleteAll,
searchOrg, searchOrg,
changePagination, changePagination,
handleSearchStu, handleSearchStu,
resetStu, resetStu,
getAudienceInfo, getAudienceInfo,
changePagination1, changePagination1,
searchAudienceInfo, searchAudienceInfo,
resetAudienceInfo, resetAudienceInfo,
resetOrg, resetOrg,
submitAuth, submitAuth,
optionAuthPerm, optionAuthPerm,
}; };
}, },
}; };
</script> </script>
<style lang="scss"> <style lang="scss">
.ProjCheckship { .ProjCheckship {
.ant-drawer-content-wrapper { .ant-drawer-content-wrapper {
max-width: 1300px !important; max-width: 1300px !important;
} }
.drawerMain { .drawerMain {
min-width: 600px; min-width: 600px;
margin: 0px 32px 0px 32px; margin: 0px 32px 0px 32px;
@@ -1503,7 +1440,6 @@ export default {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
overflow-x: auto; overflow-x: auto;
.header { .header {
height: 73px; height: 73px;
border-bottom: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8;
@@ -1513,7 +1449,6 @@ export default {
align-items: center; align-items: center;
// background-color: red; // background-color: red;
margin-bottom: 20px; margin-bottom: 20px;
.headerTitle { .headerTitle {
font-size: 18px; font-size: 18px;
font-weight: 600; font-weight: 600;
@@ -1522,7 +1457,6 @@ export default {
// margin-left: 24px; // margin-left: 24px;
} }
} }
.main { .main {
display: flex; display: flex;
// min-width: 1200px; // min-width: 1200px;
@@ -1536,38 +1470,31 @@ export default {
flex-shrink: 0; flex-shrink: 0;
// height: 100%; // height: 100%;
border-right: 1px solid rgba(233, 233, 233, 1); border-right: 1px solid rgba(233, 233, 233, 1);
.tabs { .tabs {
margin-right: 33px; margin-right: 33px;
.tab1 { .tab1 {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
// justify-content: space-between; // justify-content: space-between;
align-items: center; align-items: center;
.t1 { .t1 {
display: flex; display: flex;
align-items: center; align-items: center;
margin-bottom: 5px; margin-bottom: 5px;
} }
.nameinp { .nameinp {
display: flex; display: flex;
align-items: center; align-items: center;
margin-top: 10px; margin-top: 10px;
.namee { .namee {
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
font-size: 14px; font-size: 14px;
} }
} }
.btns { .btns {
display: flex; display: flex;
margin-top: 10px; margin-top: 10px;
margin-left: 34px; margin-left: 34px;
.btn1 { .btn1 {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -1581,12 +1508,10 @@ export default {
border-radius: 8px; border-radius: 8px;
border: 1px solid #409eff; border: 1px solid #409eff;
cursor: pointer; cursor: pointer;
.wz { .wz {
margin-left: 10px; margin-left: 10px;
} }
} }
.btn2 { .btn2 {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -1599,18 +1524,15 @@ export default {
border-radius: 8px; border-radius: 8px;
cursor: pointer; cursor: pointer;
border: 1px solid #409eff; border: 1px solid #409eff;
.wz { .wz {
margin-left: 10px; margin-left: 10px;
} }
} }
} }
} }
.btns { .btns {
display: flex; display: flex;
margin-top: 10px; margin-top: 10px;
.btn1 { .btn1 {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -1624,12 +1546,10 @@ export default {
border-radius: 8px; border-radius: 8px;
border: 1px solid #409eff; border: 1px solid #409eff;
cursor: pointer; cursor: pointer;
.wz { .wz {
margin-left: 10px; margin-left: 10px;
} }
} }
.btn2 { .btn2 {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -1642,13 +1562,11 @@ export default {
border-radius: 8px; border-radius: 8px;
cursor: pointer; cursor: pointer;
border: 1px solid #409eff; border: 1px solid #409eff;
.wz { .wz {
margin-left: 10px; margin-left: 10px;
} }
} }
} }
.line { .line {
width: 100%; width: 100%;
height: 40px; height: 40px;
@@ -1658,42 +1576,35 @@ export default {
align-items: center; align-items: center;
margin-top: 20px; margin-top: 20px;
border: 1px solid #c3e6fc; border: 1px solid #c3e6fc;
.inline { .inline {
width: 95%; width: 95%;
height: 100%; height: 100%;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
// background-color: #bfa; // background-color: #bfa;
.left1 { .left1 {
height: 100%; height: 100%;
display: flex; display: flex;
align-items: center; align-items: center;
.img { .img {
width: 14px; width: 14px;
height: 15px; height: 15px;
background-image: url(../../assets/images/leveladd/gan.png); background-image: url(../../assets/images/leveladd/gan.png);
background-size: 100% 100%; background-size: 100% 100%;
} }
.text { .text {
color: #999ba3; color: #999ba3;
} }
.text2 { .text2 {
color: #4ea6ff; color: #4ea6ff;
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
.text3 { .text3 {
color: #999ba3; color: #999ba3;
margin-left: 20px; margin-left: 20px;
} }
} }
.right1 { .right1 {
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
@@ -1705,11 +1616,9 @@ export default {
} }
} }
} }
.chooseLeft { .chooseLeft {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
.boeTree { .boeTree {
margin-right: 20px; margin-right: 20px;
// margin-top: 20px; // margin-top: 20px;
@@ -1742,7 +1651,6 @@ export default {
margin-bottom: 8px; margin-bottom: 8px;
margin-top: 20px; margin-top: 20px;
} }
.treeMain { .treeMain {
width: 280px; width: 280px;
border-radius: 4px; border-radius: 4px;
@@ -1752,56 +1660,45 @@ export default {
padding-top: 10px; padding-top: 10px;
padding-left: 5px; padding-left: 5px;
} }
.ant-tree .ant-tree-node-content-wrapper { .ant-tree .ant-tree-node-content-wrapper {
flex-shrink: 0; flex-shrink: 0;
} }
.ant-tree-indent-unit { .ant-tree-indent-unit {
width: 5px; width: 5px;
} }
.ant-tree .ant-tree
.ant-tree-node-content-wrapper-normal.ant-tree-node-selected { .ant-tree-node-content-wrapper-normal.ant-tree-node-selected {
background-color: rgba(255, 255, 255, 0); background-color: rgba(255, 255, 255, 0);
color: #409eff; color: #409eff;
} }
.ant-tree .ant-tree-node-selected { .ant-tree .ant-tree-node-selected {
background-color: rgba(255, 255, 255, 0); background-color: rgba(255, 255, 255, 0);
// color:#409EFF; // color:#409EFF;
} }
// .ant-tree .ant-tree-title{ // .ant-tree .ant-tree-title{
// background-color: pink; // background-color: pink;
// } // }
} }
.tabb { .tabb {
.ant-table-thead > tr > th { .ant-table-thead > tr > th {
background-color: rgba(240, 246, 252, 1); background-color: rgba(240, 246, 252, 1);
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
} }
.ant-table-tbody > tr > td { .ant-table-tbody > tr > td {
border-bottom: 1px solid #f0f6fc; border-bottom: 1px solid #f0f6fc;
color: rgba(0, 0, 0, 0.65); color: rgba(0, 0, 0, 0.65);
} }
th.h { th.h {
background-color: #eff4fc !important; background-color: #eff4fc !important;
} }
.ant-table-tbody .ant-table-tbody
> tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected) > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
> td { > td {
background: rgba(250, 250, 250, 1); background: rgba(250, 250, 250, 1);
} }
.ant-table-selection-column { .ant-table-selection-column {
padding: 0 !important; padding: 0 !important;
} }
// table tr td.ant-table-selection-column { // table tr td.ant-table-selection-column {
// text-align: right; // text-align: right;
// } // }
@@ -1828,31 +1725,26 @@ export default {
} }
} }
} }
.tab2 { .tab2 {
display: flex; display: flex;
align-items: center; align-items: center;
// margin-top: 10px; // margin-top: 10px;
flex-wrap: wrap; flex-wrap: wrap;
justify-content: space-between; justify-content: space-between;
.nameinp { .nameinp {
display: flex; display: flex;
align-items: center; align-items: center;
margin-top: 10px; margin-top: 10px;
.namee { .namee {
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
font-size: 14px; font-size: 14px;
} }
} }
.t1 { .t1 {
display: flex; display: flex;
align-items: center; align-items: center;
margin-bottom: 5px; margin-bottom: 5px;
} }
.btns { .btns {
display: flex; display: flex;
// margin-top: -10px; // margin-top: -10px;
@@ -1869,12 +1761,10 @@ export default {
border-radius: 8px; border-radius: 8px;
border: 1px solid #409eff; border: 1px solid #409eff;
cursor: pointer; cursor: pointer;
.wz { .wz {
margin-left: 10px; margin-left: 10px;
} }
} }
.btn2 { .btn2 {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -1887,43 +1777,35 @@ export default {
border-radius: 8px; border-radius: 8px;
cursor: pointer; cursor: pointer;
border: 1px solid #409eff; border: 1px solid #409eff;
.wz { .wz {
margin-left: 10px; margin-left: 10px;
} }
} }
} }
.organize { .organize {
color: rgba(0, 0, 0, 0.85); color: rgba(0, 0, 0, 0.85);
font-size: 14px; font-size: 14px;
white-space: nowrap; white-space: nowrap;
} }
.ant-select-dropdown { .ant-select-dropdown {
min-width: 800px !important; min-width: 800px !important;
} }
.ant-select { .ant-select {
border-radius: 8px !important; border-radius: 8px !important;
// background-color: red; // background-color: red;
} }
.ant-cascader { .ant-cascader {
width: 264px; width: 264px;
height: 40px; height: 40px;
border-radius: 8px !important; border-radius: 8px !important;
.ant-select-selector { .ant-select-selector {
height: 100%; height: 100%;
} }
.ant-select-selection-search-input { .ant-select-selection-search-input {
height: 40px; height: 40px;
} }
} }
} }
.boeTree { .boeTree {
.boeTreeTitle { .boeTreeTitle {
width: 280px; width: 280px;
@@ -1940,7 +1822,6 @@ export default {
margin-bottom: 8px; margin-bottom: 8px;
margin-top: 20px; margin-top: 20px;
} }
.treeMain { .treeMain {
width: 280px; width: 280px;
border-radius: 4px; border-radius: 4px;
@@ -1950,26 +1831,21 @@ export default {
padding-top: 10px; padding-top: 10px;
padding-left: 5px; padding-left: 5px;
} }
.ant-tree .ant-tree-node-content-wrapper { .ant-tree .ant-tree-node-content-wrapper {
flex-shrink: 0; flex-shrink: 0;
} }
.ant-tree-indent-unit { .ant-tree-indent-unit {
width: 5px; width: 5px;
} }
.ant-tree .ant-tree
.ant-tree-node-content-wrapper-normal.ant-tree-node-selected { .ant-tree-node-content-wrapper-normal.ant-tree-node-selected {
background-color: rgba(255, 255, 255, 0); background-color: rgba(255, 255, 255, 0);
color: #409eff; color: #409eff;
} }
.ant-tree .ant-tree-node-selected { .ant-tree .ant-tree-node-selected {
background-color: rgba(255, 255, 255, 0); background-color: rgba(255, 255, 255, 0);
// color:#409EFF; // color:#409EFF;
} }
// .ant-tree-switcher_open+ .ant-tree-checkbox{ // .ant-tree-switcher_open+ .ant-tree-checkbox{
// display: none !important; // display: none !important;
// } // }
@@ -1982,23 +1858,19 @@ export default {
} }
} }
} }
.right { .right {
width: 320px; width: 320px;
flex-shrink: 0; flex-shrink: 0;
overflow-y: auto; overflow-y: auto;
.onerow { .onerow {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
margin-right: 40px; margin-right: 40px;
flex-wrap: wrap; flex-wrap: wrap;
.onleft { .onleft {
display: flex; display: flex;
text-align: center; text-align: center;
.already { .already {
color: rgba(51, 51, 51, 1); color: rgba(51, 51, 51, 1);
font-size: 16px; font-size: 16px;
@@ -2007,20 +1879,17 @@ export default {
white-space: nowrap; white-space: nowrap;
// margin-bottom: 20px; // margin-bottom: 20px;
} }
.count { .count {
color: #388be1; color: #388be1;
font-size: 16px; font-size: 16px;
margin: 0 6px; margin: 0 6px;
} }
.peo { .peo {
color: rgba(51, 51, 51, 1); color: rgba(51, 51, 51, 1);
font-size: 16px; font-size: 16px;
font-weight: 500; font-weight: 500;
} }
} }
.clbox { .clbox {
margin-left: 30px; margin-left: 30px;
display: flex; display: flex;
@@ -2031,7 +1900,6 @@ export default {
height: 32px; height: 32px;
border-radius: 4px; border-radius: 4px;
background: #409eff; background: #409eff;
.colose { .colose {
width: 16px; width: 16px;
height: 16px; height: 16px;
@@ -2042,14 +1910,12 @@ export default {
background-size: 100%; background-size: 100%;
margin-right: 4px; margin-right: 4px;
} }
.allclear { .allclear {
color: rgba(255, 255, 255, 1); color: rgba(255, 255, 255, 1);
font-size: 14px; font-size: 14px;
} }
} }
} }
.line { .line {
width: 90%; width: 90%;
height: 1px; height: 1px;
@@ -2057,20 +1923,17 @@ export default {
margin-left: 12px; margin-left: 12px;
margin-top: 20px; margin-top: 20px;
} }
.tit { .tit {
font-size: 14px; font-size: 14px;
font-weight: 500; font-weight: 500;
margin-top: 12px; margin-top: 12px;
margin-left: 32px; margin-left: 32px;
} }
.selectedsBox { .selectedsBox {
position: relative; position: relative;
// height: 160px; // height: 160px;
overflow: hidden; overflow: hidden;
} }
.selecteds { .selecteds {
display: flex; display: flex;
// flex-wrap:wrap; // flex-wrap:wrap;
@@ -2082,7 +1945,6 @@ export default {
// height: 170px; // height: 170px;
// overflow: hidden; // overflow: hidden;
flex-shrink: 0; flex-shrink: 0;
.chose { .chose {
// width: 64px; // width: 64px;
padding-left: 10px; padding-left: 10px;
@@ -2099,7 +1961,6 @@ export default {
font-size: 12px; font-size: 12px;
position: relative; position: relative;
flex-shrink: 0; flex-shrink: 0;
.ch { .ch {
position: absolute; position: absolute;
width: 18px; width: 18px;
@@ -2112,7 +1973,6 @@ export default {
} }
} }
} }
.btnn { .btnn {
height: 72px; height: 72px;
width: 100%; width: 100%;
@@ -2124,7 +1984,6 @@ export default {
align-items: center; align-items: center;
justify-content: center; justify-content: center;
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.16); box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.16);
.btn1 { .btn1 {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -2134,7 +1993,6 @@ export default {
background-color: #fff; background-color: #fff;
cursor: pointer; cursor: pointer;
} }
.btn2 { .btn2 {
cursor: pointer; cursor: pointer;
width: 100px; width: 100px;
@@ -2148,55 +2006,43 @@ export default {
} }
} }
} }
.changetreedropdown { .changetreedropdown {
width: 500px !important; width: 500px !important;
.ant-select-tree-list-scrollbar { .ant-select-tree-list-scrollbar {
width: 5px !important; width: 5px !important;
.ant-select-tree-list-scrollbar-thumb { .ant-select-tree-list-scrollbar-thumb {
background-color: #4ea6ff !important; background-color: #4ea6ff !important;
} }
} }
.ant-select-tree-indent-unit { .ant-select-tree-indent-unit {
width: 7px !important; width: 7px !important;
} }
} }
.changetreedropdownboe { .changetreedropdownboe {
width: 240px !important; width: 240px !important;
border-radius: 5px; border-radius: 5px;
min-height: 600px !important; min-height: 600px !important;
.ant-select-tree-list-scrollbar { .ant-select-tree-list-scrollbar {
width: 5px !important; width: 5px !important;
.ant-select-tree-list-scrollbar-thumb { .ant-select-tree-list-scrollbar-thumb {
background-color: #4ea6ff !important; background-color: #4ea6ff !important;
} }
} }
.ant-select-tree-indent-unit { .ant-select-tree-indent-unit {
width: 7px !important; width: 7px !important;
} }
} }
.confirmAddOrg { .confirmAddOrg {
.ant-modal { .ant-modal {
width: 424px !important; width: 424px !important;
height: 258px !important; height: 258px !important;
.ant-modal-content { .ant-modal-content {
width: 424px !important; width: 424px !important;
height: 258px !important; height: 258px !important;
.ant-modal-body { .ant-modal-body {
width: 424px !important; width: 424px !important;
height: 258px !important; height: 258px !important;
padding: 0 !important; padding: 0 !important;
.delete { .delete {
z-index: 999; z-index: 999;
width: 424px; width: 424px;
@@ -2217,18 +2063,15 @@ export default {
rgba(78, 166, 255, 0) 100% rgba(78, 166, 255, 0) 100%
); );
} }
.del_main { .del_main {
width: 100%; width: 100%;
position: relative; position: relative;
.header { .header {
display: flex; display: flex;
align-items: center; align-items: center;
padding-top: 20px; padding-top: 20px;
padding-left: 26px; padding-left: 26px;
font-size: 16px; font-size: 16px;
.icon { .icon {
width: 16px; width: 16px;
height: 16px; height: 16px;
@@ -2236,7 +2079,6 @@ export default {
background-image: url(@/assets/images/taskpage/gan.png); background-image: url(@/assets/images/taskpage/gan.png);
background-size: 100% 100%; background-size: 100% 100%;
} }
.close_exit { .close_exit {
position: absolute; position: absolute;
right: 42px; right: 42px;
@@ -2247,7 +2089,6 @@ export default {
background-size: 100% 100%; background-size: 100% 100%;
} }
} }
.body { .body {
width: 100%; width: 100%;
margin: 34px auto 56px auto; margin: 34px auto 56px auto;
@@ -2257,7 +2098,6 @@ export default {
flex-direction: column; flex-direction: column;
// background-color: red; // background-color: red;
position: relative; position: relative;
.back { .back {
position: absolute; position: absolute;
top: 30px; top: 30px;
@@ -2266,12 +2106,10 @@ export default {
color: #666666; color: #666666;
} }
} }
.del_btnbox { .del_btnbox {
display: flex; display: flex;
margin: 30px auto; margin: 30px auto;
justify-content: center; justify-content: center;
.del_btn { .del_btn {
width: 100px; width: 100px;
height: 40px; height: 40px;
@@ -2280,23 +2118,19 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
flex-shrink: 0; flex-shrink: 0;
cursor: pointer; cursor: pointer;
.btnText { .btnText {
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
line-height: 40px; line-height: 40px;
} }
} }
.btn1 { .btn1 {
border: 1px solid rgba(64, 158, 255, 1); border: 1px solid rgba(64, 158, 255, 1);
color: #4ea6ff; color: #4ea6ff;
margin-right: 14px; margin-right: 14px;
} }
.btn2 { .btn2 {
background-color: #4ea6ff; background-color: #4ea6ff;
color: #ffffff; color: #ffffff;
@@ -2306,7 +2140,6 @@ export default {
} }
} }
} }
.ant-modal-close-x { .ant-modal-close-x {
display: none; display: none;
} }

View File

@@ -171,7 +171,19 @@
<div class="inname">同步学习记录</div> <div class="inname">同步学习记录</div>
</div> </div>
<div class="in"> <div class="in">
<a-switch <a-checkbox
v-model:checked="courseSyncFlag"
:disabled="viewDetail ? true : false"
><span
style="
width: 100%;
color: rgba(109, 117, 132, 1);
font-size: 14px;
"
>同步课程学习记录如学员在课程库中拥有课程的学习记录自动免修该课程</span
></a-checkbox
>
<!-- <a-switch
v-model:checked="projectInfo.courseSyncFlag" v-model:checked="projectInfo.courseSyncFlag"
:checkedValue="1" :checkedValue="1"
:unCheckedValue="0" :unCheckedValue="0"
@@ -184,7 +196,7 @@
" "
>同步课程学习记录如学员在课程库中拥有课程的学习记录自动免修该课程</span >同步课程学习记录如学员在课程库中拥有课程的学习记录自动免修该课程</span
></a-switch ></a-switch
> > -->
</div> </div>
</div> </div>
<div class="name"> <div class="name">
@@ -317,6 +329,7 @@ export default {
keyWord: "", keyWord: "",
}, },
classifyList5: [], classifyList5: [],
courseSyncFlag: false,
}); });
onMounted(() => { onMounted(() => {
@@ -349,6 +362,9 @@ export default {
state.projectInfo.endTime, state.projectInfo.endTime,
]; ];
state.projectInfo.parentName = routers.query.parentName; state.projectInfo.parentName = routers.query.parentName;
state.courseSyncFlag = state.projectInfo.courseSyncFlag
? true
: false;
}); });
} }
@@ -432,6 +448,7 @@ export default {
return; return;
} }
state.projectInfo.type = 3; state.projectInfo.type = 3;
state.projectInfo.courseSyncFlag = state.courseSyncFlag ? 1 : 0;
api.createProject(state.projectInfo).then(() => { api.createProject(state.projectInfo).then(() => {
message.destroy(); message.destroy();
message.success("编辑成功"); message.success("编辑成功");

View File

@@ -430,16 +430,20 @@
<div class="time"> <div class="time">
<div class="timetext">开始时间</div> <div class="timetext">开始时间</div>
<div class="timetext"> <div class="timetext">
{{ {{ item.startTime !== null ? item.startTime : "" }}
item.startTime !== null ? item.startTime: ''
}}
</div> </div>
</div> </div>
<div class="progress"> <div class="progress">
<div class="progresstext"> <div class="progresstext">
{{ {{
item.finishStuCnt && item.finishStuCnt !== null ? item.finishStuCnt : 0 item.finishStuCnt && item.finishStuCnt !== null
}}/{{ item.totalStuCnt && item.totalStuCnt !== null ? item.totalStuCnt : 0 }} ? item.finishStuCnt
: 0
}}/{{
item.totalStuCnt && item.totalStuCnt !== null
? item.totalStuCnt
: 0
}}
</div> </div>
<div style="display: flex"> <div style="display: flex">
<a-progress <a-progress
@@ -450,7 +454,12 @@
/> />
<span class="progresstext" style="margin-left: 10px" <span class="progresstext" style="margin-left: 10px"
>{{ >{{
(item.finishStuCnt && item.finishStuCnt !== null ? item.finishStuCnt : 0 / item.totalStuCnt && item.totalStuCnt !== null ? item.totalStuCnt : 0) * 100 (item.finishStuCnt && item.finishStuCnt !== null
? item.finishStuCnt
: 0 / item.totalStuCnt &&
item.totalStuCnt !== null
? item.totalStuCnt
: 0) * 100
}}%</span }}%</span
> >
</div> </div>
@@ -774,7 +783,7 @@
@click="showMemberList(item.projectGroupId)" @click="showMemberList(item.projectGroupId)"
> >
<div class="ftext">组员名单 ></div> <div class="ftext">组员名单 ></div>
<div class="peoples"> <!-- <div class="peoples">
<div class="people1"> <div class="people1">
<img <img
src="../../assets/images/taskpage/people1.png" src="../../assets/images/taskpage/people1.png"
@@ -795,7 +804,7 @@
src="../../assets/images/taskpage/people4.png" src="../../assets/images/taskpage/people4.png"
/> />
</div> </div>
</div> </div> -->
</div> </div>
</div> </div>
</div> </div>
@@ -807,15 +816,11 @@
<a-tab-pane key="4" tab="公告"> <a-tab-pane key="4" tab="公告">
<div class="split"></div> <div class="split"></div>
<a-tabs v-model:activeKey="activeKeyNotice"> <a-tabs v-model:activeKey="activeKeyNotice">
<a-tab-pane key="11" tab="公告" <a-tab-pane key="11" tab="公告">
> <NoticePub v-model:projectId="projectId"></NoticePub>
<NoticePub v-model:projectId="projectId"></NoticePub
>
</a-tab-pane> </a-tab-pane>
<a-tab-pane key="12" tab="历史公告" force-render <a-tab-pane key="12" tab="历史公告" force-render>
> <NoticeHis v-model:projectId="projectId"></NoticeHis>
<NoticeHis v-model:projectId="projectId"></NoticeHis
>
</a-tab-pane> </a-tab-pane>
</a-tabs> </a-tabs>
</a-tab-pane> </a-tab-pane>
@@ -1014,14 +1019,23 @@
<div class="set_content"> <div class="set_content">
<div class="setc_name"><span>项目级别</span></div> <div class="setc_name"><span>项目级别</span></div>
<div class="setc_main"> <div class="setc_main">
<span style="color: #999999"><ProjectLevel v-model:value="level" :disabled="true"></ProjectLevel></span> <span style="color: #999999"
><ProjectLevel
v-model:value="level"
:disabled="true"
></ProjectLevel
></span>
</div> </div>
</div> </div>
<div class="set_content"> <div class="set_content">
<div class="setc_name"><span>培训体系</span></div> <div class="setc_name"><span>培训体系</span></div>
<div class="setc_main"> <div class="setc_main">
<span style="color: #999999"><TrainClass v-model:value="systemId" <span style="color: #999999"
:disabled="true"></TrainClass></span> ><TrainClass
v-model:value="systemId"
:disabled="true"
></TrainClass
></span>
</div> </div>
</div> </div>
<div class="set_content"> <div class="set_content">
@@ -1049,7 +1063,7 @@
</div> </div>
<div class="btnbox" style="margin: 20px"> <div class="btnbox" style="margin: 20px">
<a-upload <a-upload
v-if="(docChecked==true)" v-if="docChecked == true"
v-model:file-list="fileList" v-model:file-list="fileList"
name="file" name="file"
action="/manageApi/file/upload" action="/manageApi/file/upload"
@@ -1066,7 +1080,11 @@
alt="" alt=""
/> />
</a-upload> </a-upload>
<div v-if="(docChecked==true)" class="btnbox" style="margin: 20px"> <div
v-if="docChecked == true"
class="btnbox"
style="margin: 20px"
>
<span style="color: #999999"> <span style="color: #999999">
支持pdf.ppt.pptx.doc.docx.xls.xlsx.jpeg.png.gif.zip 支持pdf.ppt.pptx.doc.docx.xls.xlsx.jpeg.png.gif.zip
</span> </span>
@@ -3066,7 +3084,7 @@ export default {
//点击确认删除单个学员 //点击确认删除单个学员
const closeDeleteOneConfirm = () => { const closeDeleteOneConfirm = () => {
state.deleteOneStu = false; state.deleteOneStu = false;
state.loading = true state.loading = true;
deleteStu({ deleteStu({
projectId: state.projectId, projectId: state.projectId,
studentIds: state.chooseDeleteOne, studentIds: state.chooseDeleteOne,
@@ -3097,7 +3115,7 @@ export default {
}; };
//点击确定的批量删除弹窗 //点击确定的批量删除弹窗
const closeAllDelete = () => { const closeAllDelete = () => {
state.loading = true state.loading = true;
deleteStu({ deleteStu({
projectId: state.projectId, projectId: state.projectId,
studentIds: state.selectedRows, studentIds: state.selectedRows,
@@ -3257,7 +3275,7 @@ export default {
// studentData(); // studentData();
} }
} }
state.loading = false state.loading = false;
}) })
.catch((err) => { .catch((err) => {
console.log("获取学员列表失败", err); console.log("获取学员列表失败", err);
@@ -3271,9 +3289,9 @@ export default {
console.log("get task", res.data.data); console.log("get task", res.data.data);
let info = res.data.data.projectInfo; let info = res.data.data.projectInfo;
// let start = toDate(info.beginTime / 1000, "Y-M-D h:m"); // let start = toDate(info.beginTime / 1000, "Y-M-D h:m");
let start = info.beginTime let start = info.beginTime;
// let end = toDate(info.endTime / 1000, "Y-M-D h:m"); // let end = toDate(info.endTime / 1000, "Y-M-D h:m");
let end = info.endTime let end = info.endTime;
state.tstartTime = info.beginTime; state.tstartTime = info.beginTime;
state.tendTime = info.endTime; state.tendTime = info.endTime;
state.tsourceBelong = info.sourceBelongName; state.tsourceBelong = info.sourceBelongName;
@@ -3710,7 +3728,7 @@ export default {
projectGroupId: 0, projectGroupId: 0,
}; };
console.log("obj", obj); console.log("obj", obj);
state.loading = true state.loading = true;
api api
.addStudentProject(obj) .addStudentProject(obj)
.then((res) => { .then((res) => {
@@ -3823,7 +3841,7 @@ export default {
templateProject, templateProject,
changeGrouped, changeGrouped,
deFile, deFile,
toDate toDate,
}; };
}, },
}; };