mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-14 05:16:45 +08:00
提交
This commit is contained in:
@@ -185,7 +185,7 @@ function confirm() {
|
|||||||
name: selectsData.value[0].title,
|
name: selectsData.value[0].title,
|
||||||
type: props.type,
|
type: props.type,
|
||||||
courseId: selectsData.value[0].id,
|
courseId: selectsData.value[0].id,
|
||||||
info: selectsData.value[0]
|
info: {...selectsData.value[0]}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ async function confirm() {
|
|||||||
});
|
});
|
||||||
if (taskIndex.value === -1) {
|
if (taskIndex.value === -1) {
|
||||||
const list = props.taskList
|
const list = props.taskList
|
||||||
list.push({name: formData.value.evaluationName, type: props.type, info: formData.value})
|
list.push({name: formData.value.evaluationName, type: props.type, info: {...formData.value}})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
data.name = formData.value.evaluationName
|
data.name = formData.value.evaluationName
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ const disabledRangeTime = () => ({
|
|||||||
function confirm() {
|
function confirm() {
|
||||||
if (taskIndex.value === -1) {
|
if (taskIndex.value === -1) {
|
||||||
const list = props.taskList
|
const list = props.taskList
|
||||||
list.push({name: formData.value.workName, type: props.type, info: formData.value})
|
list.push({name: formData.value.workName, type: props.type, info: {...formData.value}})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
data.name = formData.value.workName
|
data.name = formData.value.workName
|
||||||
|
|||||||
@@ -77,8 +77,9 @@
|
|||||||
:disabled-time="disabledRangeTime"
|
:disabled-time="disabledRangeTime"
|
||||||
style="width: 400px; height: 40px; border-radius: 8px"
|
style="width: 400px; height: 40px; border-radius: 8px"
|
||||||
v-model:value="dateTime"
|
v-model:value="dateTime"
|
||||||
|
format="YYYY-MM-DD HH:mm"
|
||||||
|
valueFormat="YYYY-MM-DD HH:mm"
|
||||||
@change="timeChange"
|
@change="timeChange"
|
||||||
format="YYYY/MM/DD HH:mm"
|
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
@@ -433,8 +434,6 @@ const range = (start, end) => {
|
|||||||
|
|
||||||
function timeChange(time, timeStr) {
|
function timeChange(time, timeStr) {
|
||||||
formData.value.liveStartTime = timeStr[0]
|
formData.value.liveStartTime = timeStr[0]
|
||||||
formData.value.submitStartTime = timeStr[0]
|
|
||||||
formData.value.submitEndTime = timeStr[1]
|
|
||||||
formData.value.liveEndTime = timeStr[1]
|
formData.value.liveEndTime = timeStr[1]
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -456,6 +455,7 @@ async function confirm() {
|
|||||||
throw Error("数据校验不通过")
|
throw Error("数据校验不通过")
|
||||||
});
|
});
|
||||||
if (taskIndex.value === -1) {
|
if (taskIndex.value === -1) {
|
||||||
|
<<<<<<< HEAD
|
||||||
let list = props.taskList
|
let list = props.taskList
|
||||||
list.push(
|
list.push(
|
||||||
{name: formData.value.liveName,
|
{name: formData.value.liveName,
|
||||||
@@ -463,6 +463,10 @@ async function confirm() {
|
|||||||
info: {...formData.value}
|
info: {...formData.value}
|
||||||
})
|
})
|
||||||
console.log("list:" + list)
|
console.log("list:" + list)
|
||||||
|
=======
|
||||||
|
const list = props.taskList
|
||||||
|
list.push({name: formData.value.liveName, type: props.type, info: {...formData.value}})
|
||||||
|
>>>>>>> aa76caecde0cba165ddb01f060970317f34071b3
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
data.name = formData.value.liveName
|
data.name = formData.value.liveName
|
||||||
@@ -474,7 +478,7 @@ async function confirm() {
|
|||||||
|
|
||||||
function openDrawer(i, row) {
|
function openDrawer(i, row) {
|
||||||
row && (formData.value = {...row.info});
|
row && (formData.value = {...row.info});
|
||||||
row && (dateTime.value = [dayjs(row.info.submitStartTime, "YYYY-MM-DD HH:mm"), dayjs(row.info.submitEndTime, "YYYY-MM-DD HH:mm")]);
|
row && (dateTime.value = [row.info.liveStartTime, row.info.liveEndTime]);
|
||||||
(i >= 0) && (taskIndex.value = i)
|
(i >= 0) && (taskIndex.value = i)
|
||||||
visible.value = true
|
visible.value = true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -118,7 +118,7 @@ function confirm() {
|
|||||||
name: selectsData.value[0].name,
|
name: selectsData.value[0].name,
|
||||||
type: props.type,
|
type: props.type,
|
||||||
courseId: selectsData.value[0].id,
|
courseId: selectsData.value[0].id,
|
||||||
info: selectsData.value[0]
|
info: {...selectsData.value[0]}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
|
|||||||
@@ -311,7 +311,7 @@ function confirm() {
|
|||||||
name: selectsData.value[0].name,
|
name: selectsData.value[0].name,
|
||||||
type: props.type,
|
type: props.type,
|
||||||
courseId: selectsData.value[0].id,
|
courseId: selectsData.value[0].id,
|
||||||
info: selectsData.value[0]
|
info: {...selectsData.value[0]}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
|
|||||||
@@ -450,7 +450,7 @@ function confirm() {
|
|||||||
}
|
}
|
||||||
if (taskIndex.value === -1) {
|
if (taskIndex.value === -1) {
|
||||||
const list = props.taskList
|
const list = props.taskList
|
||||||
list.push({name: formData.value.examinationName, type: props.type, info: formData.value})
|
list.push({name: formData.value.examinationName, type: props.type, info: {...formData.value}})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
data.name = formData.value.examinationName
|
data.name = formData.value.examinationName
|
||||||
@@ -474,7 +474,7 @@ function confirmouter() {
|
|||||||
|
|
||||||
if (taskIndex.value === -1) {
|
if (taskIndex.value === -1) {
|
||||||
const list = props.taskList
|
const list = props.taskList
|
||||||
list.push({name: formDataOuter.value.examinationName, type: props.type, info: formDataOuter.value})
|
list.push({name: formDataOuter.value.examinationName, type: props.type, info: {...formDataOuter.value}})
|
||||||
} else {
|
} else {
|
||||||
const data = props.taskList[taskIndex.value]
|
const data = props.taskList[taskIndex.value]
|
||||||
data.name = formDataOuter.value.examinationName
|
data.name = formDataOuter.value.examinationName
|
||||||
|
|||||||
@@ -20,12 +20,10 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="main_item">
|
<div class="main_item">
|
||||||
<button class="xkbtn" @click="goResearchmanage">
|
<button class="xkbtn" @click="goResearchmanage">新建评估</button>
|
||||||
新建评估
|
|
||||||
</button>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="main_notice" style="display:none;">
|
<div class="main_notice" style="display: none">
|
||||||
<div class="mntc_left">
|
<div class="mntc_left">
|
||||||
<div class="notice_icon"></div>
|
<div class="notice_icon"></div>
|
||||||
</div>
|
</div>
|
||||||
@@ -45,16 +43,16 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import {computed, defineEmits, defineProps, ref, watch} from "vue";
|
import { computed, defineEmits, defineProps, ref, watch } from "vue";
|
||||||
import {useRouter} from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
import {useRowsPage} from "@/api/request";
|
import { useRowsPage } from "@/api/request";
|
||||||
import {ASSESSMENT_PAGE} from "@/api/apis";
|
import { ASSESSMENT_PAGE } from "@/api/apis";
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
id: String,
|
id: String,
|
||||||
name: String
|
name: String,
|
||||||
})
|
});
|
||||||
const emit = defineEmits([])
|
const emit = defineEmits([]);
|
||||||
const columns = ref([
|
const columns = ref([
|
||||||
{
|
{
|
||||||
title: "名称",
|
title: "名称",
|
||||||
@@ -73,7 +71,13 @@ const columns = ref([
|
|||||||
customRender: (text) => {
|
customRender: (text) => {
|
||||||
return (
|
return (
|
||||||
<div class="racona">
|
<div class="racona">
|
||||||
<span> {text.record.essayQuestionVoList.length + text.record.multipleStemVoList.length + text.record.scoringQuestionVoList.length + text.record.singleStemVoList.length}</span>
|
<span>
|
||||||
|
{" "}
|
||||||
|
{text.record.essayQuestionVoList.length +
|
||||||
|
text.record.multipleStemVoList.length +
|
||||||
|
text.record.scoringQuestionVoList.length +
|
||||||
|
text.record.singleStemVoList.length}
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
@@ -94,38 +98,45 @@ const columns = ref([
|
|||||||
align: "center",
|
align: "center",
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
},
|
},
|
||||||
])
|
]);
|
||||||
const initParams = {
|
const initParams = {
|
||||||
assessmentName: '',
|
assessmentName: "",
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
}
|
releaseStatus: 2,
|
||||||
const router = useRouter()
|
};
|
||||||
const params = ref(initParams)
|
const router = useRouter();
|
||||||
|
const params = ref(initParams);
|
||||||
|
|
||||||
const rowSelectKeys = ref([]);
|
const rowSelectKeys = ref([]);
|
||||||
const selectsData = ref([]);
|
const selectsData = ref([]);
|
||||||
|
|
||||||
const {data, loading, total, fetch} = useRowsPage(ASSESSMENT_PAGE, params.value)
|
const { data, loading, total, fetch } = useRowsPage(
|
||||||
console.log(data)
|
ASSESSMENT_PAGE,
|
||||||
watch(()=>props.id, () => {
|
params.value
|
||||||
|
);
|
||||||
|
console.log(data);
|
||||||
|
watch(
|
||||||
|
() => props.id,
|
||||||
|
() => {
|
||||||
if (props.id) {
|
if (props.id) {
|
||||||
rowSelectKeys.value = [props.id]
|
rowSelectKeys.value = [props.id];
|
||||||
selectsData.value = [{id: props.id, assessmentName: props.name}]
|
selectsData.value = [{ id: props.id, assessmentName: props.name }];
|
||||||
} else {
|
} else {
|
||||||
rowSelectKeys.value = []
|
rowSelectKeys.value = [];
|
||||||
selectsData.value = []
|
selectsData.value = [];
|
||||||
}
|
}
|
||||||
})
|
}
|
||||||
|
);
|
||||||
|
|
||||||
const customRow = (record) => ({
|
const customRow = (record) => ({
|
||||||
onClick: () => {
|
onClick: () => {
|
||||||
rowSelectKeys.value = [record.id]
|
rowSelectKeys.value = [record.id];
|
||||||
selectsData.value = [record]
|
selectsData.value = [record];
|
||||||
emit('update:id', selectsData.value[0].id)
|
emit("update:id", selectsData.value[0].id);
|
||||||
emit('update:name', selectsData.value[0].assessmentName)
|
emit("update:name", selectsData.value[0].assessmentName);
|
||||||
}
|
},
|
||||||
})
|
});
|
||||||
|
|
||||||
const pagination = computed(() => ({
|
const pagination = computed(() => ({
|
||||||
total: total.value,
|
total: total.value,
|
||||||
@@ -137,10 +148,10 @@ const pagination = computed(() => ({
|
|||||||
|
|
||||||
const changePagination = (e) => {
|
const changePagination = (e) => {
|
||||||
params.value.pageIndex = e;
|
params.value.pageIndex = e;
|
||||||
fetch()
|
fetch();
|
||||||
};
|
};
|
||||||
const rowSelection = computed(() => ({
|
const rowSelection = computed(() => ({
|
||||||
type: 'radio',
|
type: "radio",
|
||||||
columnWidth: 20,
|
columnWidth: 20,
|
||||||
selectedRowKeys: rowSelectKeys.value,
|
selectedRowKeys: rowSelectKeys.value,
|
||||||
onChange: onSelectChange,
|
onChange: onSelectChange,
|
||||||
@@ -150,27 +161,26 @@ const rowSelection = computed(() => ({
|
|||||||
function onSelectChange(e, l) {
|
function onSelectChange(e, l) {
|
||||||
rowSelectKeys.value = e;
|
rowSelectKeys.value = e;
|
||||||
selectsData.value = l;
|
selectsData.value = l;
|
||||||
emit('update:id', selectsData.value[0].id)
|
emit("update:id", selectsData.value[0].id);
|
||||||
emit('update:name', selectsData.value[0].assessmentName)
|
emit("update:name", selectsData.value[0].assessmentName);
|
||||||
}
|
}
|
||||||
|
|
||||||
function search() {
|
function search() {
|
||||||
params.value.pageIndex = 1
|
params.value.pageIndex = 1;
|
||||||
fetch()
|
fetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
function reset() {
|
function reset() {
|
||||||
rowSelectKeys.value = [];
|
rowSelectKeys.value = [];
|
||||||
selectsData.value = [];
|
selectsData.value = [];
|
||||||
params.value.pageIndex = 1
|
params.value.pageIndex = 1;
|
||||||
params.value.keyWord = ''
|
params.value.keyWord = "";
|
||||||
fetch()
|
fetch();
|
||||||
}
|
}
|
||||||
|
|
||||||
const goResearchmanage = () => {
|
const goResearchmanage = () => {
|
||||||
router.push({path: "/researchmanage"});
|
router.push({ path: "/researchmanage" });
|
||||||
}
|
};
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.xkbtn {
|
.xkbtn {
|
||||||
|
|||||||
@@ -200,7 +200,7 @@ function confirm() {
|
|||||||
name: selectsData.value[0].title,
|
name: selectsData.value[0].title,
|
||||||
type: 3,
|
type: 3,
|
||||||
courseId: selectsData.value[0].id,
|
courseId: selectsData.value[0].id,
|
||||||
info: selectsData.value[0]
|
info: {...selectsData.value[0]}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import activityImg from '@/assets/images/leveladd/huo.png'
|
|||||||
import testImg from '@/assets/images/leveladd/ce.png'
|
import testImg from '@/assets/images/leveladd/ce.png'
|
||||||
import evaImg from '@/assets/images/leveladd/diao.png'
|
import evaImg from '@/assets/images/leveladd/diao.png'
|
||||||
import voteImg from '@/assets/images/leveladd/tou.png'
|
import voteImg from '@/assets/images/leveladd/tou.png'
|
||||||
import projectImg from '@/assets/images/leveladd/xiang.png'
|
// import projectImg from '@/assets/images/leveladd/xiang.png'
|
||||||
|
|
||||||
import AddOnline from "@/components/drawers/AddOnline.vue";
|
import AddOnline from "@/components/drawers/AddOnline.vue";
|
||||||
import AddCase from "@/components/drawers/AddCase.vue";
|
import AddCase from "@/components/drawers/AddCase.vue";
|
||||||
@@ -23,7 +23,7 @@ import AddInvist from "@/components/drawers/AddInvist.vue";
|
|||||||
import AddVote from "@/components/vote/AddVote.vue";
|
import AddVote from "@/components/vote/AddVote.vue";
|
||||||
import AddLive from "@/components/drawers/AddLive.vue";
|
import AddLive from "@/components/drawers/AddLive.vue";
|
||||||
import AddRef from "@/components/drawers/AddRef.vue";
|
import AddRef from "@/components/drawers/AddRef.vue";
|
||||||
import AddProject from "@/components/drawers/AddProject.vue";
|
// import AddProject from "@/components/drawers/AddProject.vue";
|
||||||
// import AddFaceteach from "@/components/drawers/AddFaceteach.vue";
|
// import AddFaceteach from "@/components/drawers/AddFaceteach.vue";
|
||||||
|
|
||||||
export const TASK_TYPE = {
|
export const TASK_TYPE = {
|
||||||
@@ -87,9 +87,9 @@ export const TASK_TYPE = {
|
|||||||
img: voteImg,
|
img: voteImg,
|
||||||
component: AddVote
|
component: AddVote
|
||||||
},
|
},
|
||||||
13: {
|
// 13: {
|
||||||
name: '项目',
|
// name: '项目',
|
||||||
img: projectImg,
|
// img: projectImg,
|
||||||
component: AddProject
|
// component: AddProject
|
||||||
},
|
// },
|
||||||
}
|
}
|
||||||
@@ -329,8 +329,11 @@
|
|||||||
<div
|
<div
|
||||||
@click="showFaceStuSignUp"
|
@click="showFaceStuSignUp"
|
||||||
class="editright"
|
class="editright"
|
||||||
style="margin-right:130px;cursor: pointer;">
|
style="margin-right: 130px; cursor: pointer"
|
||||||
<span class="editextb" style="margin-left:0px;">批量面授报名</span>
|
>
|
||||||
|
<span class="editextb" style="margin-left: 0px"
|
||||||
|
>批量面授报名</span
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<router-link
|
<router-link
|
||||||
:to="{ path: '/leveladddetail', query: { routerId: routerId } }"
|
:to="{ path: '/leveladddetail', query: { routerId: routerId } }"
|
||||||
@@ -410,7 +413,8 @@
|
|||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
">
|
"
|
||||||
|
>
|
||||||
<img
|
<img
|
||||||
:src="
|
:src="
|
||||||
item.type == 1
|
item.type == 1
|
||||||
@@ -542,7 +546,11 @@
|
|||||||
: item.type === 4
|
: item.type === 4
|
||||||
? homeworkModel(item)
|
? homeworkModel(item)
|
||||||
: item.type === 5
|
: item.type === 5
|
||||||
? examinationModel(item, value.name, value.chapterId)
|
? examinationModel(
|
||||||
|
item,
|
||||||
|
value.name,
|
||||||
|
value.chapterId
|
||||||
|
)
|
||||||
: item.type === 10
|
: item.type === 10
|
||||||
? evaluationModel(item, value.name)
|
? evaluationModel(item, value.name)
|
||||||
: item.type === 12
|
: item.type === 12
|
||||||
@@ -1424,7 +1432,9 @@ export default {
|
|||||||
hasTask: false,
|
hasTask: false,
|
||||||
stage: [],
|
stage: [],
|
||||||
statess: [],
|
statess: [],
|
||||||
routerId: route.query.routerId?route.query.routerId:localStorage.getItem('routerId'), //学习路径页面传的学习路径id
|
routerId: route.query.routerId
|
||||||
|
? route.query.routerId
|
||||||
|
: localStorage.getItem("routerId"), //学习路径页面传的学习路径id
|
||||||
gatename: null, //关卡名称
|
gatename: null, //关卡名称
|
||||||
gatenamee: null, //学员管理关卡名称
|
gatenamee: null, //学员管理关卡名称
|
||||||
action: null,
|
action: null,
|
||||||
@@ -1595,7 +1605,7 @@ export default {
|
|||||||
projectModelVisible: false,
|
projectModelVisible: false,
|
||||||
faceTeachModelVisibleTitle: "",
|
faceTeachModelVisibleTitle: "",
|
||||||
examinationModelVisibleTitle: "",
|
examinationModelVisibleTitle: "",
|
||||||
outchapter:"",
|
outchapter: "",
|
||||||
evaluationModelVisibleTitle: "",
|
evaluationModelVisibleTitle: "",
|
||||||
homeworkModelVisibleTitle: "",
|
homeworkModelVisibleTitle: "",
|
||||||
commonModelVisibleTitle: "",
|
commonModelVisibleTitle: "",
|
||||||
@@ -1625,7 +1635,7 @@ export default {
|
|||||||
? "http://43.143.139.204:12016/"
|
? "http://43.143.139.204:12016/"
|
||||||
: location.href.slice(0, location.href.indexOf("/m")) + "/upload/",
|
: location.href.slice(0, location.href.indexOf("/m")) + "/upload/",
|
||||||
isreload: true,
|
isreload: true,
|
||||||
TaskFaceImpStuvisible: false
|
TaskFaceImpStuvisible: false,
|
||||||
});
|
});
|
||||||
|
|
||||||
const levelList = reactive({
|
const levelList = reactive({
|
||||||
@@ -2290,7 +2300,10 @@ export default {
|
|||||||
state.nodata = false;
|
state.nodata = false;
|
||||||
}
|
}
|
||||||
let data = res.data.data.chapterList;
|
let data = res.data.data.chapterList;
|
||||||
console.log('----------------111111111111111-----------------2222222222', res.data.data.chapterList)
|
console.log(
|
||||||
|
"----------------111111111111111-----------------2222222222",
|
||||||
|
res.data.data.chapterList
|
||||||
|
);
|
||||||
state.stage = res.data.data.chapterList.map((e) => ({
|
state.stage = res.data.data.chapterList.map((e) => ({
|
||||||
id: e.id,
|
id: e.id,
|
||||||
name: e.name,
|
name: e.name,
|
||||||
@@ -2588,7 +2601,8 @@ export default {
|
|||||||
return message.error("该任务无法学习,请联系管理员进行替换。");
|
return message.error("该任务无法学习,请联系管理员进行替换。");
|
||||||
window.open(
|
window.open(
|
||||||
window.location.protocol +
|
window.location.protocol +
|
||||||
import.meta.env.VITE_BOE_ONLINE_CLASS_URL +
|
import.meta.env.VUE_APP_BOE_API_URL +
|
||||||
|
"/mobile/pages/study/courseStudy?id=" +
|
||||||
item.targetId,
|
item.targetId,
|
||||||
"_top"
|
"_top"
|
||||||
);
|
);
|
||||||
@@ -2831,9 +2845,9 @@ export default {
|
|||||||
|
|
||||||
// 面授课学员报名弹框
|
// 面授课学员报名弹框
|
||||||
const showFaceStuSignUp = () => {
|
const showFaceStuSignUp = () => {
|
||||||
console.log('我点击了- 批量面授报名')
|
console.log("我点击了- 批量面授报名");
|
||||||
state.TaskFaceImpStuvisible = true;
|
state.TaskFaceImpStuvisible = true;
|
||||||
}
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
@@ -2909,7 +2923,7 @@ export default {
|
|||||||
selectProjectName4,
|
selectProjectName4,
|
||||||
changeLevel,
|
changeLevel,
|
||||||
checkPer,
|
checkPer,
|
||||||
showFaceStuSignUp
|
showFaceStuSignUp,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="title"
|
<span class="title"
|
||||||
>{{
|
>{{
|
||||||
projectInfo.projectId ? "编辑" : "创建"
|
projectInfo.id ? "编辑" : "创建"
|
||||||
}}{{ ptojectType == "3" ? "班级" : "项目" }}</span
|
}}{{ ptojectType == "3" ? "班级" : "项目" }}</span
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
v-model:validate="projectInfo.validate"
|
v-model:validate="projectInfo.validate"
|
||||||
:maxlength="30"
|
:maxlength="30"
|
||||||
show-count
|
show-count
|
||||||
:id="projectInfo.projectId"
|
:id="projectInfo.id"
|
||||||
></NameInput>
|
></NameInput>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -98,33 +98,20 @@
|
|||||||
<div class="inname">项目时间</div>
|
<div class="inname">项目时间</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div v-if="projectInfo.projectId" class="in">
|
<div class="in">
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
separator="至"
|
separator="至"
|
||||||
:show-time="{ format: 'HH:mm' }"
|
:show-time="{ format: 'HH:mm' }"
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间2', ' 结束时间2']"
|
||||||
:disabled-date="disabledDate1"
|
:disabledDate="disabledDate"
|
||||||
v-model:value="projectInfo.rangeTime"
|
v-model:value="timeRange"
|
||||||
|
@calendarChange="calendarChange"
|
||||||
style="width: 100%; height: 40px; border-radius: 5px"
|
style="width: 100%; height: 40px; border-radius: 5px"
|
||||||
:allowClear="false"
|
:allowClear="false"
|
||||||
|
format="YYYY-MM-DD HH:mm"
|
||||||
valueFormat="YYYY-MM-DD HH:mm"
|
valueFormat="YYYY-MM-DD HH:mm"
|
||||||
@change="timeChange"
|
@change="timeChange"
|
||||||
@ok="clickOk"
|
:disabled="!!viewDetail"
|
||||||
@openChange="panelOpen"
|
|
||||||
:disabled="viewDetail ? true : false"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div v-else class="in">
|
|
||||||
<a-range-picker
|
|
||||||
separator="至"
|
|
||||||
:show-time="{ format: 'HH:mm' }"
|
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
|
||||||
|
|
||||||
v-model:value="projectInfo.rangeTime"
|
|
||||||
style="width: 100%; height: 40px; border-radius: 5px"
|
|
||||||
valueFormat="YYYY-MM-DD HH:mm"
|
|
||||||
@change="timeChange"
|
|
||||||
:disabled="viewDetail ? true : false"
|
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -304,7 +291,6 @@ import {message} from "ant-design-vue";
|
|||||||
import {useRoute, useRouter} from "vue-router";
|
import {useRoute, useRouter} from "vue-router";
|
||||||
import * as api from "../../api/index";
|
import * as api from "../../api/index";
|
||||||
import {useStore} from "vuex";
|
import {useStore} from "vuex";
|
||||||
import * as moment from "moment";
|
|
||||||
import TrainClass from "@/components/project/TrainClass";
|
import TrainClass from "@/components/project/TrainClass";
|
||||||
import OrgClass from "@/components/project/OrgClass";
|
import OrgClass from "@/components/project/OrgClass";
|
||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
@@ -330,13 +316,14 @@ export default {
|
|||||||
const routers = useRoute();
|
const routers = useRoute();
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
|
datePartial: 'start',
|
||||||
loading: false,
|
loading: false,
|
||||||
currentPage: 1, //当前页
|
currentPage: 1, //当前页
|
||||||
tableDataTotal: -1, //模版列表总数
|
tableDataTotal: -1, //模版列表总数
|
||||||
pageSize: 10, //每页10条数据
|
pageSize: 10, //每页10条数据
|
||||||
totalPages: 0, //总页数
|
totalPages: 0, //总页数
|
||||||
viewDetail: null,
|
viewDetail: null,
|
||||||
projectInfo: {},
|
projectInfo: {id: ''},
|
||||||
projectPic: [],
|
projectPic: [],
|
||||||
memberParam: {
|
memberParam: {
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
@@ -349,8 +336,10 @@ export default {
|
|||||||
ptojectType: "",
|
ptojectType: "",
|
||||||
changeCondition: false,
|
changeCondition: false,
|
||||||
clickNum: 0,
|
clickNum: 0,
|
||||||
|
timeRange: []
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
// 封面图选择
|
// 封面图选择
|
||||||
const handleChangeSelect = (value) => {
|
const handleChangeSelect = (value) => {
|
||||||
console.log(value);
|
console.log(value);
|
||||||
@@ -369,7 +358,7 @@ export default {
|
|||||||
});
|
});
|
||||||
|
|
||||||
watch(routers.query, () => {
|
watch(routers.query, () => {
|
||||||
state.projectInfo.projectId = routers.query.projectId;
|
state.projectInfo.id = routers.query.id;
|
||||||
state.projectInfo.parentName = routers.query.parentName;
|
state.projectInfo.parentName = routers.query.parentName;
|
||||||
state.projectInfo.parentId = routers.query.parentId;
|
state.projectInfo.parentId = routers.query.parentId;
|
||||||
});
|
});
|
||||||
@@ -377,12 +366,12 @@ export default {
|
|||||||
function getProjectInfo() {
|
function getProjectInfo() {
|
||||||
state.projectInfo.parentName = routers.query.parentName;
|
state.projectInfo.parentName = routers.query.parentName;
|
||||||
state.projectInfo.parentId = routers.query.parentId;
|
state.projectInfo.parentId = routers.query.parentId;
|
||||||
state.projectInfo.projectId = routers.query.projectId;
|
state.projectInfo.id = routers.query.projectId;
|
||||||
(state.projectInfo.projectId || state.projectInfo.parentId) &&
|
(state.projectInfo.id || state.projectInfo.parentId) &&
|
||||||
api
|
api
|
||||||
.getProjectDetail({
|
.getProjectDetail({
|
||||||
projectId:
|
projectId:
|
||||||
state.projectInfo.projectId || state.projectInfo.parentId,
|
state.projectInfo.id || state.projectInfo.parentId,
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
state.projectInfo = {
|
state.projectInfo = {
|
||||||
@@ -392,22 +381,11 @@ export default {
|
|||||||
!routers.query.projectId &&
|
!routers.query.projectId &&
|
||||||
!!routers.query.parentId &&
|
!!routers.query.parentId &&
|
||||||
(state.projectInfo.name = "");
|
(state.projectInfo.name = "");
|
||||||
state.projectInfo.rangeTime = [
|
state.timeRange = [state.projectInfo.beginTime, state.projectInfo.endTime];
|
||||||
state.projectInfo.beginTime,
|
|
||||||
state.projectInfo.endTime,
|
|
||||||
];
|
|
||||||
|
|
||||||
state.projectInfo.rangeTime1 = [
|
|
||||||
state.projectInfo.beginTime,
|
|
||||||
state.projectInfo.endTime,
|
|
||||||
];
|
|
||||||
|
|
||||||
state.projectInfo.edits = true;
|
|
||||||
|
|
||||||
state.courseSyncFlag = !!state.projectInfo.courseSyncFlag;
|
state.courseSyncFlag = !!state.projectInfo.courseSyncFlag;
|
||||||
if (Number(state.projectInfo.status) === -5) {
|
if (Number(state.projectInfo.status) === -5) {
|
||||||
let obj = {
|
let obj = {
|
||||||
project_id: state.projectInfo.projectId,
|
project_id: state.projectInfo.id,
|
||||||
type: 1,
|
type: 1,
|
||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 1,
|
pageSize: 1,
|
||||||
@@ -441,7 +419,7 @@ export default {
|
|||||||
state.projectInfo.projectTemplateId = option.id
|
state.projectInfo.projectTemplateId = option.id
|
||||||
state.projectInfo.id = ''
|
state.projectInfo.id = ''
|
||||||
state.projectInfo.type = 3;
|
state.projectInfo.type = 3;
|
||||||
state.projectInfo.rangeTime = [dayjs(option.beginTime, "YYYY-MM-DD HH:mm"), dayjs(option.endTime, "YYYY-MM-DD HH:mm")];
|
state.timeRange = [option.beginTime, option.endTime];
|
||||||
state.projectInfo.parentName = routers.query.parentName;
|
state.projectInfo.parentName = routers.query.parentName;
|
||||||
state.projectInfo.parentId = routers.query.parentId;
|
state.projectInfo.parentId = routers.query.parentId;
|
||||||
};
|
};
|
||||||
@@ -517,7 +495,7 @@ export default {
|
|||||||
const offName = await validateName({
|
const offName = await validateName({
|
||||||
name: state.projectInfo.name,
|
name: state.projectInfo.name,
|
||||||
type: 1,
|
type: 1,
|
||||||
id: state.projectInfo.projectId,
|
id: state.projectInfo.id,
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
return res.data.data == 1;
|
return res.data.data == 1;
|
||||||
});
|
});
|
||||||
@@ -531,7 +509,7 @@ export default {
|
|||||||
api.createProject(state.projectInfo).then((res) => {
|
api.createProject(state.projectInfo).then((res) => {
|
||||||
state.loading = false;
|
state.loading = false;
|
||||||
message.destroy();
|
message.destroy();
|
||||||
message.success(state.projectInfo.projectId ? "编辑成功" : "创建成功");
|
message.success(state.projectInfo.id ? "编辑成功" : "创建成功");
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/taskpage",
|
||||||
query: {projectId: res.data.data},
|
query: {projectId: res.data.data},
|
||||||
@@ -546,44 +524,24 @@ export default {
|
|||||||
state.projectInfo.sourceBelongFullName = orgName;
|
state.projectInfo.sourceBelongFullName = orgName;
|
||||||
}
|
}
|
||||||
|
|
||||||
const clickOk = (e) => {
|
|
||||||
state.clickNum = state.clickNum + 1
|
|
||||||
if (state.clickNum == 2) {
|
|
||||||
state.clickNum = 0
|
|
||||||
state.changeCondition = false;
|
|
||||||
} else {
|
|
||||||
state.changeCondition = true;
|
|
||||||
}
|
|
||||||
console.log(e)
|
|
||||||
}
|
|
||||||
|
|
||||||
const panelOpen = (e) => {
|
|
||||||
console.log(e)
|
|
||||||
if (!e) {
|
|
||||||
state.clickNum = 0
|
|
||||||
state.changeCondition = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const disabledDate1 = (current) => {
|
|
||||||
if (state.changeCondition) {
|
|
||||||
return current && current < moment(state.projectInfo.rangeTime[0]).endOf("YYYY-MM-DD HH:mm:ss");
|
|
||||||
} else {
|
|
||||||
return current && current > moment(state.projectInfo.rangeTime1[0]).endOf("YYYY-MM-DD HH:mm:ss")
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const disabledDate = (current) => {
|
const disabledDate = (current) => {
|
||||||
return current && current < dayjs().startOf("day");
|
//编辑的时候 开始实际只能选当前时间之前的时间
|
||||||
|
if (state.projectInfo.id && state.datePartial === 'start') {
|
||||||
|
return current && current > dayjs(state.timeRange[0]).endOf("YYYY-MM-DD HH:mm");
|
||||||
|
}
|
||||||
|
return current && current < dayjs().endOf('day');
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function calendarChange(date, dateStr, partial) {
|
||||||
|
state.datePartial = partial
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...toRefs(state),
|
...toRefs(state),
|
||||||
disabledDate,
|
disabledDate,
|
||||||
disabledDate1,
|
|
||||||
clickOk,
|
|
||||||
panelOpen,
|
|
||||||
managerChange,
|
managerChange,
|
||||||
|
calendarChange,
|
||||||
timeChange,
|
timeChange,
|
||||||
classificationChange,
|
classificationChange,
|
||||||
classificationChange5,
|
classificationChange5,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user