mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-23 17:55:39 +08:00
Merge remote-tracking branch 'origin/develop' into develop
# Conflicts: # src/components/student/TableModelStudent.vue # src/views/projectcenter/ProjectAdd.vue # src/views/projectcenter/ProjectManage.vue
This commit is contained in:
94
src/components/student/ChangeGroupModal.vue
Normal file
94
src/components/student/ChangeGroupModal.vue
Normal file
@@ -0,0 +1,94 @@
|
||||
<!--
|
||||
* @Author: lixg lixg@dongwu-inc.com
|
||||
* @Date: 2022-12-20 17:00:37
|
||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||
* @LastEditTime: 2023-01-31 15:51:36
|
||||
* @FilePath: /fe-manage/src/components/student/ChangeLevelModal.vue
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
-->
|
||||
<template>
|
||||
<a-modal
|
||||
style="padding: 0"
|
||||
:closable="true"
|
||||
:visible="changegroupV"
|
||||
:footer="null"
|
||||
centered="true"
|
||||
wrapClassName="changeModal"
|
||||
>
|
||||
<div class="con">
|
||||
<div class="header">
|
||||
<div class="inhe">
|
||||
<div class="mod"></div>
|
||||
<div class="tz">换组</div>
|
||||
<div class="mg" @click="closeChangeModal"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mid">
|
||||
<div class="inher">
|
||||
<!-- <div class="cur">当前关卡:关卡2</div> -->
|
||||
<div class="select">
|
||||
<a-select
|
||||
v-model:value="selectStage"
|
||||
style="width: 100%"
|
||||
placeholder="请选择小组"
|
||||
:options="option"
|
||||
allowClear
|
||||
></a-select>
|
||||
</div>
|
||||
<div class="btn">
|
||||
<button
|
||||
class="sameb btn1"
|
||||
@click="closeChangeModal"
|
||||
style="cursor: pointer"
|
||||
>
|
||||
取消
|
||||
</button>
|
||||
<button
|
||||
class="sameb btn2"
|
||||
@click="changeGroup"
|
||||
style="cursor: pointer"
|
||||
>
|
||||
确定
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</a-modal>
|
||||
</template>
|
||||
<script setup>
|
||||
import { computed, defineEmits, defineProps, ref } from "vue";
|
||||
// import { moveStudent } from "@/api/index1";
|
||||
// import { message } from "ant-design-vue";
|
||||
|
||||
const props = defineProps({
|
||||
changegroupV: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
stage: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
ids: {
|
||||
type: Array,
|
||||
default: () => [],
|
||||
},
|
||||
});
|
||||
|
||||
const option = computed(() => {
|
||||
return props.stage.map((e) => ({ label: e.name, value: e.id }));
|
||||
});
|
||||
console.log("changegroupV", props.changegroupV);
|
||||
const selectStage = ref();
|
||||
|
||||
const emit = defineEmits({});
|
||||
|
||||
const closeChangeModal = () => {
|
||||
emit("update:changegroupV", false);
|
||||
};
|
||||
//确认换组
|
||||
const changeGroup = (item) => {
|
||||
console.log("换组", item);
|
||||
};
|
||||
</script>
|
||||
@@ -1,15 +1,31 @@
|
||||
<!--
|
||||
* @Author: lixg lixg@dongwu-inc.com
|
||||
* @Date: 2023-01-31 13:41:35
|
||||
* @LastEditors: lixg lixg@dongwu-inc.com
|
||||
* @LastEditTime: 2023-01-31 13:45:07
|
||||
* @FilePath: /fe-manage/src/components/student/OwnerTableModelStudent.vue
|
||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||
-->
|
||||
<template>
|
||||
<TableModelStudent :types="types" :id="id" ref="tableModelRef">
|
||||
<template #extension="{ data: { record } }">
|
||||
<CommonStudent v-if="record.type===type" :type="type" :id="id" @finash="submitCall" :clear="true" :select-stu="true" :select-one="true">
|
||||
<a-button type="link">转移归属权</a-button>
|
||||
</CommonStudent>
|
||||
<CommonStudent
|
||||
v-if="record.type === type"
|
||||
:type="type"
|
||||
:id="id"
|
||||
@finash="submitCall"
|
||||
:clear="true"
|
||||
:select-stu="true"
|
||||
:select-one="true"
|
||||
>
|
||||
<a-button type="link">转移归属权</a-button>
|
||||
</CommonStudent>
|
||||
</template>
|
||||
<slot></slot>
|
||||
</TableModelStudent>
|
||||
</template>
|
||||
<script setup>
|
||||
import {defineProps, ref} from "vue";
|
||||
import { defineProps, ref } from "vue";
|
||||
import TableModelStudent from "@/components/student/TableModelStudent";
|
||||
import CommonStudent from "@/components/student/CommonStudent";
|
||||
|
||||
@@ -21,12 +37,11 @@ defineProps({
|
||||
default: () => [],
|
||||
},
|
||||
});
|
||||
|
||||
const tableModelRef = ref()
|
||||
console.log("props", props.types);
|
||||
const tableModelRef = ref();
|
||||
|
||||
function submitCall(flag) {
|
||||
tableModelRef.value.loading = true
|
||||
tableModelRef.value.loading = true;
|
||||
flag && tableModelRef.value.searchStu();
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
导出学习信息
|
||||
</a-button>
|
||||
</a-col>
|
||||
|
||||
|
||||
<a-col :span="1.5" v-if="type === 2">
|
||||
<a-button class="cus-btn white" @click="exportTaskStuRouter">
|
||||
导出学习信息
|
||||
@@ -196,7 +196,7 @@
|
||||
:scroll="{ x: 1500 }"
|
||||
row-key="id"
|
||||
:row-selection="stuRowSelection"
|
||||
>
|
||||
>
|
||||
<template #action="{ record }">
|
||||
<!-- <div style="display:flex;justify-content: center;align-items: center;">-->
|
||||
<!-- <div v-if="props.type == 1" @click="excellentStudent(record)"
|
||||
@@ -216,9 +216,19 @@
|
||||
<!-- </div>-->
|
||||
<a-space :size="2">
|
||||
<slot name="extension" v-bind:data="{ record }"></slot>
|
||||
<a-button v-if="type === 1" @click="updateStatus(0, record.id)" type="link">换组</a-button>
|
||||
<a-button v-if="type === 3 && record.status!==0" @click="updateStatus(0, record.id)" type="link">通过</a-button>
|
||||
<a-button v-if="type === 3 && record.status!==0" @click="updateStatus(2, record.id)" type="link">拒绝</a-button>
|
||||
|
||||
<a-button
|
||||
v-if="type === 3 && record.status !== 0"
|
||||
@click="updateStatus(0, record.id)"
|
||||
type="link"
|
||||
>通过</a-button
|
||||
>
|
||||
<a-button
|
||||
v-if="type === 3 && record.status !== 0"
|
||||
@click="updateStatus(2, record.id)"
|
||||
type="link"
|
||||
>拒绝</a-button
|
||||
>
|
||||
<a-button @click="del(record.id)" type="link" danger>删除</a-button>
|
||||
</a-space>
|
||||
</template>
|
||||
@@ -329,11 +339,11 @@
|
||||
/>
|
||||
</template>
|
||||
<script setup>
|
||||
import {computed, createVNode, defineProps, onMounted, ref, watch} from "vue";
|
||||
import { computed, createVNode, defineProps, onMounted, ref, watch } from "vue";
|
||||
import { delStudentList, getStuPage, batchUpdateStatus } from "@/api/index1";
|
||||
import CommonStudent from "@/components/student/CommonStudent";
|
||||
import ChangeLevelModal from "./ChangeLevelModal.vue";
|
||||
import {message, Modal} from "ant-design-vue";
|
||||
import { message, Modal } from "ant-design-vue";
|
||||
// import { topStudent } from "../../api/indexProjStu";
|
||||
import SeeStu from "../../components/drawers/SeeStu";
|
||||
import EScore from "../drawers/ExportScore.vue";
|
||||
@@ -341,7 +351,7 @@ import OrgClass from "@/components/project/OrgClass";
|
||||
import ExportHomeWork from "../Modals/ExportHomeWork.vue";
|
||||
import * as api from "../../api/index1";
|
||||
import ImpStu from "../drawers/AddLevelImportStu";
|
||||
import {ExclamationCircleOutlined} from "@ant-design/icons-vue";
|
||||
import { ExclamationCircleOutlined } from "@ant-design/icons-vue";
|
||||
|
||||
const props = defineProps({
|
||||
type: Number,
|
||||
@@ -423,7 +433,7 @@ const tablecolumns = ref([
|
||||
className: "h",
|
||||
ellipsis: true,
|
||||
customRender: ({ record: { studentOrgName, studentDepartName } }) =>
|
||||
(allDepartShow(studentOrgName, studentDepartName)),
|
||||
allDepartShow(studentOrgName, studentDepartName),
|
||||
},
|
||||
{
|
||||
title: "加入方式",
|
||||
@@ -433,7 +443,15 @@ const tablecolumns = ref([
|
||||
align: "center",
|
||||
customRender: ({ record: { source } }) =>
|
||||
// ({ 1: "快速添加", 2: "组织", 3: "受众", 4: "报名" }[source]),
|
||||
({ 0: "手动加入", 1: "手动加入", 2: "手动加入", 3: "手动加入", 4: "报名", 5: "手动加入", 6: "手动加入"}[source]),
|
||||
({
|
||||
0: "手动加入",
|
||||
1: "手动加入",
|
||||
2: "手动加入",
|
||||
3: "手动加入",
|
||||
4: "报名",
|
||||
5: "手动加入",
|
||||
6: "手动加入",
|
||||
}[source]),
|
||||
},
|
||||
...props.columns,
|
||||
{
|
||||
@@ -446,10 +464,15 @@ const tablecolumns = ref([
|
||||
},
|
||||
]);
|
||||
|
||||
function allDepartShow(a,b) {
|
||||
let org = (a=="" || a == null || a == undefined) ? a = "" : a.slice(0,1) =='/' ? a.slice(1,a.length) : a;
|
||||
let depart = (b=="" || b == null || b == undefined) ? b = "" : b;
|
||||
let allname = org == "" && depart == "" ? '-' : org + depart;
|
||||
function allDepartShow(a, b) {
|
||||
let org =
|
||||
a == "" || a == null || a == undefined
|
||||
? (a = "")
|
||||
: a.slice(0, 1) == "/"
|
||||
? a.slice(1, a.length)
|
||||
: a;
|
||||
let depart = b == "" || b == null || b == undefined ? (b = "") : b;
|
||||
let allname = org == "" && depart == "" ? "-" : org + depart;
|
||||
return allname;
|
||||
}
|
||||
|
||||
@@ -486,7 +509,7 @@ function exportTaskStu() {
|
||||
}/admin/student/exportTaskStudent?type=${1}&pid=${props.id}`
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
function exportTaskStuRouter() {
|
||||
console.log("props.datasource", props);
|
||||
window.open(
|
||||
@@ -565,14 +588,14 @@ function bathDel() {
|
||||
|
||||
function del(id) {
|
||||
Modal.confirm({
|
||||
title: () => '确定删除?',
|
||||
title: () => "确定删除?",
|
||||
icon: () => createVNode(ExclamationCircleOutlined),
|
||||
content: () => '数据删除后不可恢复!',
|
||||
okText: () => '确定',
|
||||
okType: 'danger',
|
||||
cancelText: () => '取消',
|
||||
content: () => "数据删除后不可恢复!",
|
||||
okText: () => "确定",
|
||||
okType: "danger",
|
||||
cancelText: () => "取消",
|
||||
onOk() {
|
||||
id && delStudentList({ids: [id]}).then(() => getStuList())
|
||||
id && delStudentList({ ids: [id] }).then(() => getStuList());
|
||||
},
|
||||
});
|
||||
}
|
||||
@@ -913,8 +936,6 @@ const AddImpStuvisibleClose = (isget) => {
|
||||
background-image: url("@/assets/images/coursewareManage/export.png");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
/*.delete {
|
||||
z-index: 9999;
|
||||
|
||||
Reference in New Issue
Block a user