mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-23 17:55:39 +08:00
@@ -8,7 +8,7 @@ export const boeuExamPageList = (obj) => http.post('/boeu/exam/pageList', obj)
|
|||||||
//概览页面案例列表请求接口
|
//概览页面案例列表请求接口
|
||||||
export const boeuCasePageList = (obj) => http.post('/boeu/case/pageList', obj)
|
export const boeuCasePageList = (obj) => http.post('/boeu/case/pageList', obj)
|
||||||
// 请求组织接口
|
// 请求组织接口
|
||||||
export const userGetUserOrg = (obj) => https.post('/user/getUserOrg', obj)
|
export const userGetUserOrg = (obj) => http.post('/org/getUserOrg', obj)
|
||||||
// 请求所属组织接口
|
// 请求所属组织接口
|
||||||
export const userInfo = (obj) => https.post('/user/info', obj)
|
export const userInfo = (obj) => https.post('/user/info', obj)
|
||||||
// 课程列表接口
|
// 课程列表接口
|
||||||
|
|||||||
@@ -358,8 +358,8 @@
|
|||||||
</div>
|
</div>
|
||||||
<router-link to="/download">下载中心</router-link>
|
<router-link to="/download">下载中心</router-link>
|
||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
<!-- 20230804影藏 -->
|
<!-- 20230804影藏 20230815放开-->
|
||||||
<!-- <a-sub-menu key="sub17">
|
<a-sub-menu key="sub17">
|
||||||
<template #icon>
|
<template #icon>
|
||||||
<div class="imgBox">
|
<div class="imgBox">
|
||||||
<img
|
<img
|
||||||
@@ -472,7 +472,6 @@
|
|||||||
</a-menu-item>
|
</a-menu-item>
|
||||||
</a-sub-menu>
|
</a-sub-menu>
|
||||||
</a-sub-menu>
|
</a-sub-menu>
|
||||||
-->
|
|
||||||
<a-menu-item key="sub16" v-if="checkMenu('OldSystemManage')">
|
<a-menu-item key="sub16" v-if="checkMenu('OldSystemManage')">
|
||||||
<div class="imgBox">
|
<div class="imgBox">
|
||||||
<img
|
<img
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<a-checkbox v-model:checked="checked" @change="change">
|
<a-checkbox v-model:checked="checked" @change="change" :disabled="disabled">
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
</a-checkbox>
|
</a-checkbox>
|
||||||
</template>
|
</template>
|
||||||
@@ -17,8 +17,12 @@ const props = defineProps({
|
|||||||
},
|
},
|
||||||
unCheckValue: {
|
unCheckValue: {
|
||||||
type: [Boolean, Number, String],
|
type: [Boolean, Number, String],
|
||||||
default: true
|
default: false
|
||||||
},
|
},
|
||||||
|
disabled:{
|
||||||
|
type:Boolean,
|
||||||
|
default:false
|
||||||
|
}
|
||||||
});
|
});
|
||||||
const emit = defineEmits(["update:modelValue"]);
|
const emit = defineEmits(["update:modelValue"]);
|
||||||
const checked = ref(props.modelValue);
|
const checked = ref(props.modelValue);
|
||||||
|
|||||||
@@ -110,6 +110,7 @@
|
|||||||
:type="5"
|
:type="5"
|
||||||
style="width: 440px; height: 40px; border-radius: 8px"
|
style="width: 440px; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入开课名称"
|
placeholder="请输入开课名称"
|
||||||
|
:disabled="editBeginClass"
|
||||||
></NameInput>
|
></NameInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -133,6 +134,7 @@
|
|||||||
@change="timeChange"
|
@change="timeChange"
|
||||||
separator="至"
|
separator="至"
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
|
:disabled="editBeginClass"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -151,6 +153,7 @@
|
|||||||
<ProjectManager
|
<ProjectManager
|
||||||
v-model:value="formData.teacherId"
|
v-model:value="formData.teacherId"
|
||||||
v-model:name="formData.teacher"
|
v-model:name="formData.teacher"
|
||||||
|
:disabled="editBeginClass"
|
||||||
></ProjectManager>
|
></ProjectManager>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -172,8 +175,10 @@
|
|||||||
height: 32px;
|
height: 32px;
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
overflow: hidden;"
|
overflow: hidden;"
|
||||||
v-model:value="formData.duration"
|
:disabled="true"
|
||||||
|
|
||||||
></a-input-number>
|
></a-input-number>
|
||||||
|
<!-- v-model:value="formData.duration" -->
|
||||||
<div class="inp_num" style="right: 96px;line-height: 12px">
|
<div class="inp_num" style="right: 96px;line-height: 12px">
|
||||||
<span style="color: #c7cbd2">分钟</span>
|
<span style="color: #c7cbd2">分钟</span>
|
||||||
</div>
|
</div>
|
||||||
@@ -276,7 +281,7 @@
|
|||||||
<span style="margin-right: 3px">评估设置</span>
|
<span style="margin-right: 3px">评估设置</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="b_input" style="width: 88%;">
|
<div class="b_input" style="width: 88%;">
|
||||||
<CheckBox v-model="formData.evalFlag" :checkValue="1" :un-checkValue="0">
|
<CheckBox v-model="formData.evalFlag" :disabled="editBeginClass" :checkValue="1" :un-checkValue="0">
|
||||||
<span style="color: #6d7584">是否需要评估</span>
|
<span style="color: #6d7584">是否需要评估</span>
|
||||||
</CheckBox>
|
</CheckBox>
|
||||||
</div>
|
</div>
|
||||||
@@ -287,6 +292,7 @@
|
|||||||
<AssessmentList
|
<AssessmentList
|
||||||
v-model:assessmentName="formData.assessmentName"
|
v-model:assessmentName="formData.assessmentName"
|
||||||
v-model:assessmentId="formData.assessmentId"
|
v-model:assessmentId="formData.assessmentId"
|
||||||
|
:disabled="editBeginClass"
|
||||||
>
|
>
|
||||||
<button
|
<button
|
||||||
class="xkbtn"
|
class="xkbtn"
|
||||||
@@ -296,7 +302,7 @@
|
|||||||
</button>
|
</button>
|
||||||
</AssessmentList>
|
</AssessmentList>
|
||||||
<div v-if="formData.assessmentId > 0">
|
<div v-if="formData.assessmentId > 0">
|
||||||
<a-tag closable @close="removePG" color="processing">
|
<a-tag :closable="!editBeginClass" @close="removePG" color="processing">
|
||||||
<span style="font-size: 14px; line-height: 33px">
|
<span style="font-size: 14px; line-height: 33px">
|
||||||
{{ formData.assessmentName }}
|
{{ formData.assessmentName }}
|
||||||
</span>
|
</span>
|
||||||
@@ -444,7 +450,7 @@ const columns = ref([
|
|||||||
return (
|
return (
|
||||||
<div class="opa">
|
<div class="opa">
|
||||||
<a style="margin-right:10px;" onClick={() => planEdit(record)}>编辑</a>
|
<a style="margin-right:10px;" onClick={() => planEdit(record)}>编辑</a>
|
||||||
<a onClick={() => del(record.id)}>删除</a>
|
<a onClick={() => del(record.id,record)}>删除</a>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -527,6 +533,7 @@ const durationText = computed(() => dateTime.value?.length?dayjs(dateTime.value[
|
|||||||
function timeChange(time, timeStr) {
|
function timeChange(time, timeStr) {
|
||||||
formData.value.beginTime = timeStr[0];
|
formData.value.beginTime = timeStr[0];
|
||||||
formData.value.endTime = timeStr[1];
|
formData.value.endTime = timeStr[1];
|
||||||
|
formData.value.duration = durationText.value
|
||||||
// formData.value.duration || (formData.value.duration = dayjs(timeStr[1]).diff(dayjs(timeStr[0]),'minute'))
|
// formData.value.duration || (formData.value.duration = dayjs(timeStr[1]).diff(dayjs(timeStr[0]),'minute'))
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -570,7 +577,15 @@ const createNewCourse = () => {
|
|||||||
};
|
};
|
||||||
const handleCancelStu = () => offCourseNewVisiable.value = false;
|
const handleCancelStu = () => offCourseNewVisiable.value = false;
|
||||||
|
|
||||||
const del = (id) => {
|
const expenseStatus = {
|
||||||
|
A10:true,
|
||||||
|
S00:true
|
||||||
|
}
|
||||||
|
const del = (id,record) => {
|
||||||
|
console.log(record,'删除');
|
||||||
|
if (record.expenseStatus && !expenseStatus[record.expenseStatus]) {
|
||||||
|
return message.warning("该开课已在审批流程中,不可进行删除!");
|
||||||
|
}
|
||||||
dialog({
|
dialog({
|
||||||
content: "确定删除此开课吗?",
|
content: "确定删除此开课吗?",
|
||||||
ok: async () => {
|
ok: async () => {
|
||||||
@@ -609,7 +624,13 @@ async function coursePlanConfirm() {
|
|||||||
tableRef.value.fetch();
|
tableRef.value.fetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const editBeginClass = ref(false)
|
||||||
function planEdit(record) {
|
function planEdit(record) {
|
||||||
|
editBeginClass.value = false
|
||||||
|
if (record.expenseStatus && !expenseStatus[record.expenseStatus]) {
|
||||||
|
editBeginClass.value = true
|
||||||
|
console.log(editBeginClass.value);
|
||||||
|
}
|
||||||
onceName.value = record.name;
|
onceName.value = record.name;
|
||||||
formData.value = { ...record };
|
formData.value = { ...record };
|
||||||
validated.value = 0;
|
validated.value = 0;
|
||||||
@@ -618,7 +639,6 @@ function planEdit(record) {
|
|||||||
dateTime.value = [formData.value.beginTime, formData.value.endTime];
|
dateTime.value = [formData.value.beginTime, formData.value.endTime];
|
||||||
offCourseNewVisiable.value = true;
|
offCourseNewVisiable.value = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
function openDrawer(row) {
|
function openDrawer(row) {
|
||||||
openCourseVisible.value = true;
|
openCourseVisible.value = true;
|
||||||
params.value.offcourseId = row.courseId;
|
params.value.offcourseId = row.courseId;
|
||||||
|
|||||||
@@ -31,6 +31,10 @@ import AssessmentAll from "@/components/drawers/AssessmentAll.vue";
|
|||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
assessmentId: String,
|
assessmentId: String,
|
||||||
assessmentName: String,
|
assessmentName: String,
|
||||||
|
disabled:{
|
||||||
|
type:Boolean,
|
||||||
|
default:false
|
||||||
|
}
|
||||||
})
|
})
|
||||||
const visible = ref(false)
|
const visible = ref(false)
|
||||||
const formData = ref({
|
const formData = ref({
|
||||||
@@ -74,6 +78,7 @@ async function confirm() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function openDrawer() {
|
function openDrawer() {
|
||||||
|
if(props.disabled) return
|
||||||
visible.value = true
|
visible.value = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
:placeholder="placeholder"
|
:placeholder="placeholder"
|
||||||
:show-count="showCount"
|
:show-count="showCount"
|
||||||
:maxlength="maxlength"
|
:maxlength="maxlength"
|
||||||
|
:disabled="disabled"
|
||||||
/>
|
/>
|
||||||
<div style="color: red; font-size: 10px" v-if="modelV.value && validated===0 && isExistName">
|
<div style="color: red; font-size: 10px" v-if="modelV.value && validated===0 && isExistName">
|
||||||
名称重复,请重新输入
|
名称重复,请重新输入
|
||||||
@@ -43,6 +44,10 @@ const props = defineProps({
|
|||||||
onceName: {
|
onceName: {
|
||||||
type: String,
|
type: String,
|
||||||
},
|
},
|
||||||
|
disabled:{
|
||||||
|
type:Boolean,
|
||||||
|
default:false
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const emit = defineEmits(["update:value",'update:validated']);
|
const emit = defineEmits(["update:value",'update:validated']);
|
||||||
|
|||||||
@@ -928,6 +928,7 @@
|
|||||||
:type="5"
|
:type="5"
|
||||||
style="width: 440px; height: 40px; border-radius: 8px"
|
style="width: 440px; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入开课名称"
|
placeholder="请输入开课名称"
|
||||||
|
:disabled="editBeginClass"
|
||||||
></NameInput>
|
></NameInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -950,6 +951,7 @@
|
|||||||
@change="timeChange"
|
@change="timeChange"
|
||||||
separator="至"
|
separator="至"
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
|
:disabled="editBeginClass"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -975,6 +977,7 @@
|
|||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
overflow: hidden;"
|
overflow: hidden;"
|
||||||
v-model:value="duration"
|
v-model:value="duration"
|
||||||
|
:disabled="true"
|
||||||
></a-input-number>
|
></a-input-number>
|
||||||
<div class="inp_num">
|
<div class="inp_num">
|
||||||
<span style="color: #c7cbd2">分钟</span>
|
<span style="color: #c7cbd2">分钟</span>
|
||||||
@@ -995,6 +998,7 @@
|
|||||||
<ProjectManager
|
<ProjectManager
|
||||||
v-model:value="member.value"
|
v-model:value="member.value"
|
||||||
v-model:name="member.name"
|
v-model:name="member.name"
|
||||||
|
:disabled="editBeginClass"
|
||||||
></ProjectManager>
|
></ProjectManager>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -1089,7 +1093,7 @@
|
|||||||
<span style="margin-right: 3px">评估设置</span>
|
<span style="margin-right: 3px">评估设置</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="b_input">
|
<div class="b_input">
|
||||||
<a-checkbox v-model:checked="checked4">
|
<a-checkbox v-model:checked="checked4" :disabled="editBeginClass">
|
||||||
<span style="color: #6d7584">是否需要评估</span>
|
<span style="color: #6d7584">是否需要评估</span>
|
||||||
</a-checkbox>
|
</a-checkbox>
|
||||||
</div>
|
</div>
|
||||||
@@ -1100,6 +1104,7 @@
|
|||||||
<AssessmentList
|
<AssessmentList
|
||||||
v-model:assessmentName="assessmentName"
|
v-model:assessmentName="assessmentName"
|
||||||
v-model:assessmentId="assessmentId"
|
v-model:assessmentId="assessmentId"
|
||||||
|
:disabled="editBeginClass"
|
||||||
>
|
>
|
||||||
<button
|
<button
|
||||||
class="xkbtn"
|
class="xkbtn"
|
||||||
@@ -1110,7 +1115,7 @@
|
|||||||
</button>
|
</button>
|
||||||
</AssessmentList>
|
</AssessmentList>
|
||||||
<div v-if="assessmentId > 0">
|
<div v-if="assessmentId > 0">
|
||||||
<a-tag closable @close="removePG" color="processing">
|
<a-tag :closable="!editBeginClass" @close="removePG" color="processing">
|
||||||
<span style="font-size: 14px; line-height: 33px">
|
<span style="font-size: 14px; line-height: 33px">
|
||||||
{{ assessmentName }}
|
{{ assessmentName }}
|
||||||
</span>
|
</span>
|
||||||
@@ -3763,10 +3768,13 @@ export default defineComponent({
|
|||||||
state.cstm_hs = false;
|
state.cstm_hs = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let editBeginClass = ref(false)
|
||||||
//编辑开课
|
//编辑开课
|
||||||
const handelEditStu = async (item) => {
|
const handelEditStu = async (item) => {
|
||||||
|
editBeginClass.value = false
|
||||||
if (item.expenseStatus && item.expenseStatus !== 'A10' && item.expenseStatus !== 'S00') {
|
if (item.expenseStatus && item.expenseStatus !== 'A10' && item.expenseStatus !== 'S00') {
|
||||||
return message.warning("该开课已在审批流程中,不可进行编辑!");
|
editBeginClass.value = true
|
||||||
|
console.log(editBeginClass.value);
|
||||||
}
|
}
|
||||||
state.offcourseId = item.offcourseId;
|
state.offcourseId = item.offcourseId;
|
||||||
state.itemType = item.type;
|
state.itemType = item.type;
|
||||||
@@ -5042,7 +5050,8 @@ export default defineComponent({
|
|||||||
logW,
|
logW,
|
||||||
logT,
|
logT,
|
||||||
qrcodeVisible,
|
qrcodeVisible,
|
||||||
timeChange
|
timeChange,
|
||||||
|
editBeginClass
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -11,9 +11,9 @@
|
|||||||
placeholder="请选择归属组织"
|
placeholder="请选择归属组织"
|
||||||
:allowClear="allowClear"
|
:allowClear="allowClear"
|
||||||
:fieldNames="{
|
:fieldNames="{
|
||||||
label: 'name',
|
label: 'orgName',
|
||||||
value: 'id',
|
value: 'organizationId',
|
||||||
children: 'treeChildList',
|
children: 'childList',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
</a-cascader>
|
</a-cascader>
|
||||||
@@ -133,9 +133,11 @@ import downLoad from "../../utils/downLoad";
|
|||||||
import Cookies from "vue-cookies";
|
import Cookies from "vue-cookies";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
import { useStore } from "vuex";
|
||||||
export default {
|
export default {
|
||||||
name: "LearningPathMap",
|
name: "LearningPathMap",
|
||||||
setup() {
|
setup() {
|
||||||
|
const store = useStore();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
tableLoading: false, // table加载图标
|
tableLoading: false, // table加载图标
|
||||||
tableDataTotal: 0, // 数据总条数
|
tableDataTotal: 0, // 数据总条数
|
||||||
@@ -171,14 +173,16 @@ export default {
|
|||||||
}
|
}
|
||||||
//请求组织接口
|
//请求组织接口
|
||||||
const getOrgList = async () => {
|
const getOrgList = async () => {
|
||||||
const res = await api.userGetUserOrg({});
|
let params = {
|
||||||
|
roleList: store.state.userInfo.roleList,
|
||||||
|
userId: store.state.userInfo.userId
|
||||||
|
}
|
||||||
|
const res = await api.userGetUserOrg(params);
|
||||||
if (res) {
|
if (res) {
|
||||||
state.option = res.data?.result?.list;
|
state.option = res.data?.result;
|
||||||
state.orgId = res.data?.result?.treeNodeList;
|
state.orgId = state.option[0]?.organizationId;
|
||||||
state.resetOrgId = res.data?.result?.treeNodeList;
|
state.resetOrgId = state.option[0]?.organizationId;
|
||||||
res.data?.result?.userType === 1
|
state.allowClear = false
|
||||||
? (state.allowClear = true)
|
|
||||||
: (state.allowClear = false);
|
|
||||||
getTableData();
|
getTableData();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -344,8 +348,8 @@ export default {
|
|||||||
name: state.name,
|
name: state.name,
|
||||||
});
|
});
|
||||||
if (res) {
|
if (res) {
|
||||||
state.tableDataTotal = res.data.total;
|
state.tableDataTotal = res.data.result.total;
|
||||||
const list = res.data.rows?.map((item) => {
|
const list = res.data.result.rows?.map((item) => {
|
||||||
return {
|
return {
|
||||||
key: item.id,
|
key: item.id,
|
||||||
...item,
|
...item,
|
||||||
|
|||||||
Reference in New Issue
Block a user