--项目 学员

This commit is contained in:
yuping
2022-12-05 01:40:39 +08:00
parent 31721d0538
commit 9720c48d62

View File

@@ -3,7 +3,7 @@
<div class="taskpage"> <div class="taskpage">
<div class="addhead" style="flex-shrink: 0"> <div class="addhead" style="flex-shrink: 0">
<div class="leftimg"> <div class="leftimg">
<img class="img" :src="picUrl" /> <img class="img" :src="picUrl"/>
</div> </div>
<div class="imgfor"> <div class="imgfor">
<div class="forz">{{ name }}</div> <div class="forz">{{ name }}</div>
@@ -11,7 +11,7 @@
<div class="fort">起止时间{{ startTime }}{{ endTime }}</div> <div class="fort">起止时间{{ startTime }}{{ endTime }}</div>
</div> </div>
<div class="right"> <div class="right">
<img class="img1" src="../../assets/images/leveladd/ma.png" /> <img class="img1" src="../../assets/images/leveladd/ma.png"/>
<div class="line" v-if="action == 1 || action == 0"></div> <div class="line" v-if="action == 1 || action == 0"></div>
<img <img
v-if="action == 1 || action == 0" v-if="action == 1 || action == 0"
@@ -88,7 +88,7 @@
<div class="line"></div> <div class="line"></div>
<router-link to="/projectmanage"> <router-link to="/projectmanage">
<div style="display: flex"> <div style="display: flex">
<img class="img2" src="../../assets/images/leveladd/back.png" /> <img class="img2" src="../../assets/images/leveladd/back.png"/>
<div class="return">返回</div> <div class="return">返回</div>
</div> </div>
</router-link> </router-link>
@@ -117,13 +117,13 @@
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)" style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
> >
<div class="leftt"> <div class="leftt">
<img src="../../assets/images/taskpage/left1.png" /> <img src="../../assets/images/taskpage/left1.png"/>
</div> </div>
<div class="photo"> <div class="photo">
<img src="../../assets/images/taskpage/picture1.png" /> <img src="../../assets/images/taskpage/picture1.png"/>
</div> </div>
<div class="rightt"> <div class="rightt">
<img src="../../assets/images/taskpage/right1.png" /> <img src="../../assets/images/taskpage/right1.png"/>
</div> </div>
<div class="centerbox" style="color: rgba(255, 182, 78, 1)"> <div class="centerbox" style="color: rgba(255, 182, 78, 1)">
添加任务 添加任务
@@ -136,13 +136,13 @@
style="background: linear-gradient(180deg, #ddeaff, #f0f8fe)" style="background: linear-gradient(180deg, #ddeaff, #f0f8fe)"
> >
<div class="leftt"> <div class="leftt">
<img src="../../assets/images/taskpage/left2.png" /> <img src="../../assets/images/taskpage/left2.png"/>
</div> </div>
<div class="photo"> <div class="photo">
<img src="../../assets/images/taskpage/picture2.png" /> <img src="../../assets/images/taskpage/picture2.png"/>
</div> </div>
<div class="rightt"> <div class="rightt">
<img src="../../assets/images/taskpage/right2.png" /> <img src="../../assets/images/taskpage/right2.png"/>
</div> </div>
<div class="centerbox" style="color: rgba(78, 166, 255, 1)"> <div class="centerbox" style="color: rgba(78, 166, 255, 1)">
添加学员 添加学员
@@ -546,13 +546,13 @@
v-if="taskSyllabus.length == 0" v-if="taskSyllabus.length == 0"
> >
<div class="leftt"> <div class="leftt">
<img src="../../assets/images/taskpage/left2.png" /> <img src="../../assets/images/taskpage/left2.png"/>
</div> </div>
<div class="photo"> <div class="photo">
<img src="../../assets/images/taskpage/picture8.png" /> <img src="../../assets/images/taskpage/picture8.png"/>
</div> </div>
<div class="rightt"> <div class="rightt">
<img src="../../assets/images/taskpage/right2.png" /> <img src="../../assets/images/taskpage/right2.png"/>
</div> </div>
<div class="centerbox" style="color: rgba(78, 166, 255, 1)"> <div class="centerbox" style="color: rgba(78, 166, 255, 1)">
创建任务 创建任务
@@ -575,13 +575,13 @@
style="background: linear-gradient(180deg, #fef3dd, #fffaf0)" style="background: linear-gradient(180deg, #fef3dd, #fffaf0)"
> >
<div class="leftt"> <div class="leftt">
<img src="../../assets/images/taskpage/left1.png" /> <img src="../../assets/images/taskpage/left1.png"/>
</div> </div>
<div class="photo"> <div class="photo">
<img src="../../assets/images/taskpage/picture1.png" /> <img src="../../assets/images/taskpage/picture1.png"/>
</div> </div>
<div class="rightt"> <div class="rightt">
<img src="../../assets/images/taskpage/right1.png" /> <img src="../../assets/images/taskpage/right1.png"/>
</div> </div>
<div class="centerbox" style="color: rgba(255, 182, 78, 1)"> <div class="centerbox" style="color: rgba(255, 182, 78, 1)">
添加任务 添加任务
@@ -679,18 +679,18 @@
</div> </div>
<div class="groupright"> <div class="groupright">
<div class="btn1" @click="searchStu"> <div class="btn1" @click="searchStu">
<img src="../../assets/images/courseManage/search0.png" /> <img src="../../assets/images/courseManage/search0.png"/>
<span class="btn1text">搜索</span> <span class="btn1text">搜索</span>
</div> </div>
<div class="btn2" @click="resetCancel"> <div class="btn2" @click="resetCancel">
<img src="../../assets/images/courseManage/reset1.png" /> <img src="../../assets/images/courseManage/reset1.png"/>
<span class="btn2text">重置</span> <span class="btn2text">重置</span>
</div> </div>
</div> </div>
</div> </div>
<div class="second2" style="margin-top: 20px"> <div class="second2" style="margin-top: 20px">
<div class="btn1" @click="showStuAdd"> <div class="btn1" @click="showStuAdd">
<img src="../../assets/images/courseManage/add0.png" /> <img src="../../assets/images/courseManage/add0.png"/>
<span class="btn1text">添加学员</span> <span class="btn1text">添加学员</span>
</div> </div>
<!-- 2022-11-30注释 后面放开 --> <!-- 2022-11-30注释 后面放开 -->
@@ -699,12 +699,12 @@
<span class="btn2text">导入学员</span> <span class="btn2text">导入学员</span>
</div> --> </div> -->
<div class="btn2" @click="showAllDelete"> <div class="btn2" @click="showAllDelete">
<img src="../../assets/images/projectadd/delete.png" /> <img src="../../assets/images/projectadd/delete.png"/>
<span class="btn2text">批量删除</span> <span class="btn2text">批量删除</span>
</div> </div>
</div> </div>
<div class="talk"> <div class="talk">
<img class="im" src="../../assets/images/leveladd/gan.png" /> <img class="im" src="../../assets/images/leveladd/gan.png"/>
<div class="xu"> <div class="xu">
<span class="yi">已选择</span> <span class="yi">已选择</span>
<div style="width: 5px; display: inline-block"></div> <div style="width: 5px; display: inline-block"></div>
@@ -767,18 +767,18 @@
</div> </div>
<div class="groupright"> <div class="groupright">
<div class="btn1" @click="searchGroup"> <div class="btn1" @click="searchGroup">
<img src="../../assets/images/courseManage/search0.png" /> <img src="../../assets/images/courseManage/search0.png"/>
<span class="btn1text">搜索</span> <span class="btn1text">搜索</span>
</div> </div>
<div class="btn2" @click="resetGroupName"> <div class="btn2" @click="resetGroupName">
<img src="../../assets/images/courseManage/reset1.png" /> <img src="../../assets/images/courseManage/reset1.png"/>
<span class="btn2text">重置</span> <span class="btn2text">重置</span>
</div> </div>
</div> </div>
</div> </div>
<div class="second2"> <div class="second2">
<div class="btn1" @click="showModal2(1, null)"> <div class="btn1" @click="showModal2(1, null)">
<img src="../../assets/images/courseManage/add0.png" /> <img src="../../assets/images/courseManage/add0.png"/>
<span class="btn1text">创建小组</span> <span class="btn1text">创建小组</span>
</div> </div>
<!-- 2022-12-2注释 后面放开 --> <!-- 2022-12-2注释 后面放开 -->
@@ -818,7 +818,7 @@
<div class="leader">组长:{{ item.leaderName }}</div> <div class="leader">组长:{{ item.leaderName }}</div>
<div class="grocenter"> <div class="grocenter">
<div class="leader1">进度</div> <div class="leader1">进度</div>
<a-progress :percent="item.completeRatio" /> <a-progress :percent="item.completeRatio"/>
</div> </div>
<div <div
class="grofooter" class="grofooter"
@@ -1178,7 +1178,7 @@
:title="showFaceText" :title="showFaceText"
/> />
<!-- 学员(小组管理)创建小组抽屉 --> <!-- 学员(小组管理)创建小组抽屉 -->
<subset-manage v-model:Svisible="subsetVisivle" /> <subset-manage v-model:Svisible="subsetVisivle"/>
<!-- 学员管理-添加学员抽屉 --> <!-- 学员管理-添加学员抽屉 -->
<!-- <stu-add v-model:Stuvisible="Stuvisible" /> --> <!-- <stu-add v-model:Stuvisible="Stuvisible" /> -->
<!-- 添加学员抽屉 --> <!-- 添加学员抽屉 -->
@@ -1191,7 +1191,7 @@
:type="2" :type="2"
/> />
<!-- 学员管理-导入学员抽屉 --> <!-- 学员管理-导入学员抽屉 -->
<import-stu v-model:Importvisible="Importvisible" /> <import-stu v-model:Importvisible="Importvisible"/>
<!-- 查看学员 传入查看学员的id--> <!-- 查看学员 传入查看学员的id-->
<see-stu <see-stu
v-model:Seevisible="Seevisible" v-model:Seevisible="Seevisible"
@@ -1214,9 +1214,9 @@
v-model:projectId="projectId" v-model:projectId="projectId"
/> />
<!-- 面授学员抽屉 --> <!-- 面授学员抽屉 -->
<face-stu v-model:FSvisible="FSvisible" /> <face-stu v-model:FSvisible="FSvisible"/>
<!-- 活动考勤抽屉 --> <!-- 活动考勤抽屉 -->
<active-attendance v-model:AAvisible="AAvisible" :title="showkaoqinText" /> <active-attendance v-model:AAvisible="AAvisible" :title="showkaoqinText"/>
<!-- 作业管理抽屉 --> <!-- 作业管理抽屉 -->
<work-manage <work-manage
v-model:Wvisible="Wvisible" v-model:Wvisible="Wvisible"
@@ -1231,7 +1231,7 @@
:itemsType="itemstype" :itemsType="itemstype"
/> />
<!-- 批量面授报名 --> <!-- 批量面授报名 -->
<task-imp-stu v-model:TaskFaceImpStuvisible="TaskFaceImpStuvisible" /> <task-imp-stu v-model:TaskFaceImpStuvisible="TaskFaceImpStuvisible"/>
<!-- 概览(无数据)-项目发布弹窗 --> <!-- 概览(无数据)-项目发布弹窗 -->
<div> <div>
@@ -1290,7 +1290,7 @@
</div> </div>
</div> </div>
<div class="send"> <div class="send">
<a-switch v-model:checked="checked" size="small" /> <a-switch v-model:checked="checked" size="small"/>
<span class="sendtext">发送项目通知</span> <span class="sendtext">发送项目通知</span>
</div> </div>
<div class="ckb"> <div class="ckb">
@@ -1548,7 +1548,7 @@
</a-modal> </a-modal>
</div> </div>
<!-- 编辑项目弹窗 --> <!-- 编辑项目弹窗 -->
<proj-set v-model:editHs="editHs" v-model:projectId="projectId" /> <proj-set v-model:editHs="editHs" v-model:projectId="projectId"/>
<!-- 二维码弹窗 --> <!-- 二维码弹窗 -->
<two-dimensional-code <two-dimensional-code
@@ -1733,9 +1733,9 @@
</div> </div>
</template> </template>
<script> <script>
import { reactive, toRefs, onMounted, watch, computed } from "vue"; import {reactive, toRefs, onMounted, watch, computed} from "vue";
import { useRoute } from "vue-router"; import {useRoute} from "vue-router";
import { useRouter } from "vue-router"; import {useRouter} from "vue-router";
// import { CaretRightOutlined } from "@ant-design/icons-vue"; // import { CaretRightOutlined } from "@ant-design/icons-vue";
import TimeManage from "../../components/drawers/TimeManage"; import TimeManage from "../../components/drawers/TimeManage";
import FaceManage from "../../components/drawers/FaceManage"; import FaceManage from "../../components/drawers/FaceManage";
@@ -1754,7 +1754,7 @@ import NoticePub from "../../components/drawers/NoticePub";
import NoticeHis from "../../components/drawers/NoticeHis"; import NoticeHis from "../../components/drawers/NoticeHis";
// import ProjectScore from "../../components/drawers/ProjectScore"; // import ProjectScore from "../../components/drawers/ProjectScore";
import TaskImpStu from "../../components/drawers/TaskFaceIn"; import TaskImpStu from "../../components/drawers/TaskFaceIn";
import { storage } from "../../api/storage"; import {storage} from "../../api/storage";
import * as api from "../../api/index1"; import * as api from "../../api/index1";
import * as apiproj from "../../api/index"; import * as apiproj from "../../api/index";
import { import {
@@ -1765,15 +1765,15 @@ import {
editGroup, editGroup,
topStudent, topStudent,
} from "../../api/indexProjStu"; } from "../../api/indexProjStu";
import { message } from "ant-design-vue"; import {message} from "ant-design-vue";
import * as apitl from "../../api/index"; import * as apitl from "../../api/index";
import { getTask } from "../../api/indexTaskadd"; import {getTask} from "../../api/indexTaskadd";
import { editProj } from "../../api/indexTaskadd"; import {editProj} from "../../api/indexTaskadd";
import { toDate } from "../../api/method"; import {toDate} from "../../api/method";
import projSet from "../../components/Modals/projSet"; import projSet from "../../components/Modals/projSet";
import { overview } from "../../api/indexProjStu"; import {overview} from "../../api/indexProjStu";
import TwoDimensionalCode from "../../components/TwoDimensionalCode.vue"; import TwoDimensionalCode from "../../components/TwoDimensionalCode.vue";
import { useStore } from "vuex"; import {useStore} from "vuex";
import ProjectLevel from "@/components/project/ProjectLevel"; import ProjectLevel from "@/components/project/ProjectLevel";
import TrainClass from "@/components/project/TrainClass"; import TrainClass from "@/components/project/TrainClass";
@@ -1872,23 +1872,23 @@ export default {
projectTaskId: "", //项目任务任务id projectTaskId: "", //项目任务任务id
//进度排行学员 //进度排行学员
rankjindu: [ rankjindu: [
{ value: "学员", label: "学员" }, {value: "学员", label: "学员"},
{ value: "小组", label: "小组" }, {value: "小组", label: "小组"},
], ],
valuestu1: "学员", valuestu1: "学员",
//进度排行阶段 //进度排行阶段
rankjieduan: [{ value: "第一阶段", label: "第一阶段" }], rankjieduan: [{value: "第一阶段", label: "第一阶段"}],
valuestu2: "第一阶段", valuestu2: "第一阶段",
//积分排行 //积分排行
rankxuefen: [ rankxuefen: [
{ value: "学员", label: "学员" }, {value: "学员", label: "学员"},
{ value: "小组", label: "小组" }, {value: "小组", label: "小组"},
], ],
valuestu3: "学员", valuestu3: "学员",
//学时排行 //学时排行
rankxueshi: [ rankxueshi: [
{ value: "学员", label: "学员" }, {value: "学员", label: "学员"},
{ value: "小组", label: "小组" }, {value: "小组", label: "小组"},
], ],
valuestu4: "学员", valuestu4: "学员",
visible: false, //时间管理 visible: false, //时间管理
@@ -2032,21 +2032,21 @@ export default {
if (text.record.rank == "1") { if (text.record.rank == "1") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/one.png")} src={require("../../assets/images/taskpage/one.png")}
/> />
); );
} else if (text.record.rank == "2") { } else if (text.record.rank == "2") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/two.png")} src={require("../../assets/images/taskpage/two.png")}
/> />
); );
} else if (text.record.rank == "3") { } else if (text.record.rank == "3") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/three.png")} src={require("../../assets/images/taskpage/three.png")}
/> />
); );
@@ -2139,21 +2139,21 @@ export default {
if (text.record.rank == "1") { if (text.record.rank == "1") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/one.png")} src={require("../../assets/images/taskpage/one.png")}
/> />
); );
} else if (text.record.rank == "2") { } else if (text.record.rank == "2") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/two.png")} src={require("../../assets/images/taskpage/two.png")}
/> />
); );
} else if (text.record.rank == "3") { } else if (text.record.rank == "3") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/three.png")} src={require("../../assets/images/taskpage/three.png")}
/> />
); );
@@ -2246,21 +2246,21 @@ export default {
if (text.record.rank == "1") { if (text.record.rank == "1") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/one.png")} src={require("../../assets/images/taskpage/one.png")}
/> />
); );
} else if (text.record.rank == "2") { } else if (text.record.rank == "2") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/two.png")} src={require("../../assets/images/taskpage/two.png")}
/> />
); );
} else if (text.record.rank == "3") { } else if (text.record.rank == "3") {
return ( return (
<img <img
style={{ width: 24, height: 24 }} style={{width: 24, height: 24}}
src={require("../../assets/images/taskpage/three.png")} src={require("../../assets/images/taskpage/three.png")}
/> />
); );
@@ -2978,7 +2978,7 @@ export default {
// width: 60, // width: 60,
align: "center", align: "center",
className: "h", className: "h",
scopedSlots: { customRender: "action" }, //引入的插槽 scopedSlots: {customRender: "action"}, //引入的插槽
customRender: (text) => { customRender: (text) => {
// console.log(text); // console.log(text);
return ( return (
@@ -3325,15 +3325,9 @@ export default {
getProjStu(objf) getProjStu(objf)
.then((res) => { .then((res) => {
console.log("获取学员列表", res.data); console.log("获取学员列表", res.data);
if (res.data.code === 200) {
let leng = res.data.data.rows.length;
state.total = res.data.data.total; state.total = res.data.data.total;
if (leng > 0) {
let arr = res.data.data.rows; let arr = res.data.data.rows;
getTableDataList(arr); getTableDataList(arr);
// studentData();
}
}
state.loading = false; state.loading = false;
}) })
.catch((err) => { .catch((err) => {
@@ -3507,7 +3501,7 @@ export default {
//start---------项目概览 //start---------项目概览
// 获取项目概览 // 获取项目概览
const getOverview = () => { const getOverview = () => {
overview({ projectId: state.projectId }) overview({projectId: state.projectId})
.then((res) => { .then((res) => {
Object.keys(res.data.data.projectInfoOverview).forEach((item) => { Object.keys(res.data.data.projectInfoOverview).forEach((item) => {
levelList.projectInfoOverview[item] = levelList.projectInfoOverview[item] =
@@ -3531,7 +3525,7 @@ export default {
}; };
//end---------项目概览 //end---------项目概览
const handleChange = ({ file, fileList }) => { const handleChange = ({file, fileList}) => {
let list = []; let list = [];
if (file.status !== "uploading") { if (file.status !== "uploading") {
console.log("上传的list", fileList); console.log("上传的list", fileList);