mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-13 04:46:46 +08:00
feat:修改活动直播任务签到时间
This commit is contained in:
BIN
src/assets/images/leveladd/reset.png
Normal file
BIN
src/assets/images/leveladd/reset.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 734 B |
@@ -63,11 +63,10 @@ export default {
|
|||||||
if (state.openList[0].href !== "/learningpath") {
|
if (state.openList[0].href !== "/learningpath") {
|
||||||
state.openList.splice(key, 1);
|
state.openList.splice(key, 1);
|
||||||
$router.push({ path: "/learningpath" });
|
$router.push({ path: "/learningpath" });
|
||||||
}else{
|
} else {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
return message.warning("至少保留一个页面");
|
return message.warning("至少保留一个页面");
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
if (value.active) {
|
if (value.active) {
|
||||||
if (key === state.openList.length - 1) {
|
if (key === state.openList.length - 1) {
|
||||||
@@ -118,7 +117,6 @@ export default {
|
|||||||
width: 50px;
|
width: 50px;
|
||||||
height: 50px;
|
height: 50px;
|
||||||
|
|
||||||
|
|
||||||
position: absolute;
|
position: absolute;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
@@ -31,14 +31,13 @@
|
|||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-input
|
<a-input
|
||||||
v-model:value="inputV1"
|
v-model:value="inputV1"
|
||||||
style="width: 400px; height: 40px; border-radius: 8px;"
|
style="width: 400px; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入活动名称"
|
placeholder="请输入活动名称"
|
||||||
maxlength="20"
|
maxlength="20"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="main_item">
|
<div class="main_item">
|
||||||
<div class="signbox">
|
<div class="signbox">
|
||||||
<div class="sign">
|
<div class="sign">
|
||||||
@@ -51,10 +50,11 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
:disabled-date="disabledDate" :disabled-time="disabledRangeTime"
|
:disabled-date="disabledDate"
|
||||||
|
:disabled-time="disabledRangeTime"
|
||||||
:show-time="{ format: 'HH:mm' }"
|
:show-time="{ format: 'HH:mm' }"
|
||||||
format="YYYY-MM-DD HH:mm"
|
format="YYYY-MM-DD HH:mm"
|
||||||
style="width: 400px; height: 40px; border-radius: 8px;"
|
style="width: 400px; height: 40px; border-radius: 8px"
|
||||||
v-model:value="time"
|
v-model:value="time"
|
||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
/>
|
/>
|
||||||
@@ -74,7 +74,7 @@
|
|||||||
<a-input-number
|
<a-input-number
|
||||||
:min="0"
|
:min="0"
|
||||||
:precision="0"
|
:precision="0"
|
||||||
style="width: 400px; height: 40px; border-radius: 8px;"
|
style="width: 400px; height: 40px; border-radius: 8px"
|
||||||
v-model:value="inputV2"
|
v-model:value="inputV2"
|
||||||
/>
|
/>
|
||||||
<span style="color: #999999; margin-left: 8px">分钟</span>
|
<span style="color: #999999; margin-left: 8px">分钟</span>
|
||||||
@@ -93,7 +93,7 @@
|
|||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-input
|
<a-input
|
||||||
v-model:value="inputV3"
|
v-model:value="inputV3"
|
||||||
style="width: 400px; height: 40px; border-radius: 8px;"
|
style="width: 400px; height: 40px; border-radius: 8px"
|
||||||
placeholder="请输入活动地点"
|
placeholder="请输入活动地点"
|
||||||
maxlength="100"
|
maxlength="100"
|
||||||
/>
|
/>
|
||||||
@@ -109,13 +109,14 @@
|
|||||||
</div>
|
</div>
|
||||||
<span style="margin-right: 3px">活动公告:</span>
|
<span style="margin-right: 3px">活动公告:</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="textarea" >
|
<div class="textarea">
|
||||||
<a-textarea
|
<a-textarea
|
||||||
v-model:value="textV1"
|
v-model:value="textV1"
|
||||||
placeholder="请输入活动公告"
|
placeholder="请输入活动公告"
|
||||||
allow-clear
|
allow-clear
|
||||||
:rows="6"
|
:rows="6"
|
||||||
show-count :maxlength="200"
|
show-count
|
||||||
|
:maxlength="200"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -129,7 +130,8 @@
|
|||||||
placeholder="请输入活动说明"
|
placeholder="请输入活动说明"
|
||||||
allow-clear
|
allow-clear
|
||||||
:rows="6"
|
:rows="6"
|
||||||
show-count :maxlength="200"
|
show-count
|
||||||
|
:maxlength="200"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -158,7 +160,9 @@
|
|||||||
"
|
"
|
||||||
v-model:value="inputV4"
|
v-model:value="inputV4"
|
||||||
/>
|
/>
|
||||||
<span style="color: #999999; margin-left: 8px">分钟允许签到</span>
|
<span style="color: #999999; margin-left: 8px"
|
||||||
|
>分钟允许签到</span
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="timerbox">
|
<div class="timerbox">
|
||||||
<span>活动开始后:</span>
|
<span>活动开始后:</span>
|
||||||
@@ -174,7 +178,9 @@
|
|||||||
"
|
"
|
||||||
v-model:value="inputV5"
|
v-model:value="inputV5"
|
||||||
/>
|
/>
|
||||||
<span style="color: #999999; margin-left: 8px">分钟允许签到</span>
|
<span style="color: #999999; margin-left: 8px"
|
||||||
|
>分钟允许签到</span
|
||||||
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="qdqtbox">
|
<!-- <div class="qdqtbox">
|
||||||
@@ -222,16 +228,13 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>-->
|
</div>-->
|
||||||
|
|
||||||
<div class="main_item" style="height:40px;">
|
<div class="main_item" style="height: 40px">
|
||||||
<div class="signbox">
|
<div class="signbox">
|
||||||
<span style="margin-right: 3px"></span>
|
<span style="margin-right: 3px"></span>
|
||||||
</div>
|
</div>
|
||||||
<div class="btnbox">
|
<div class="btnbox"></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="main_btns">
|
<div class="main_btns">
|
||||||
<button class="btn1" @click="closeDrawer1">取消</button>
|
<button class="btn1" @click="closeDrawer1">取消</button>
|
||||||
@@ -318,7 +321,7 @@ export default {
|
|||||||
textV2: "",
|
textV2: "",
|
||||||
radioV1: "",
|
radioV1: "",
|
||||||
time: "",
|
time: "",
|
||||||
isClick: false
|
isClick: false,
|
||||||
});
|
});
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:addactiveVisible", false);
|
ctx.emit("update:addactiveVisible", false);
|
||||||
@@ -357,7 +360,8 @@ export default {
|
|||||||
api
|
api
|
||||||
.getActivity(props.EditActiveId)
|
.getActivity(props.EditActiveId)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
//更新讨论信息
|
console.log("获取活动信息", res);
|
||||||
|
//获取活动信息
|
||||||
state.inputV1 = res.data.data.activityName;
|
state.inputV1 = res.data.data.activityName;
|
||||||
state.textV1 = res.data.data.activityNotice;
|
state.textV1 = res.data.data.activityNotice;
|
||||||
state.textV2 = res.data.data.activityExplain;
|
state.textV2 = res.data.data.activityExplain;
|
||||||
@@ -387,7 +391,7 @@ export default {
|
|||||||
};
|
};
|
||||||
const updateTask = async (res) => {
|
const updateTask = async (res) => {
|
||||||
if (props.isLevel == 1) {
|
if (props.isLevel == 1) {
|
||||||
if(!props.isactive){
|
if (!props.isactive) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
return message.warning("请先选中关卡");
|
return message.warning("请先选中关卡");
|
||||||
}
|
}
|
||||||
@@ -466,10 +470,10 @@ export default {
|
|||||||
return message.warning("请输入活动地址");
|
return message.warning("请输入活动地址");
|
||||||
}
|
}
|
||||||
|
|
||||||
if(state.isClick){
|
if (state.isClick) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
message.error('请勿频繁点击')
|
message.error("请勿频繁点击");
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
state.isClick = true;
|
state.isClick = true;
|
||||||
|
|
||||||
@@ -483,11 +487,12 @@ export default {
|
|||||||
activityNotice: state.textV1, //活动公告
|
activityNotice: state.textV1, //活动公告
|
||||||
activityStartTime: dayjs(state.time[0]).format("YYYY-MM-DD HH:mm"), //活动开始时间
|
activityStartTime: dayjs(state.time[0]).format("YYYY-MM-DD HH:mm"), //活动开始时间
|
||||||
activityTag: "", //活动逻辑删除标识
|
activityTag: "", //活动逻辑删除标识
|
||||||
afterSignIn: state.inputV5, //活动开始后多少分钟签到
|
afterSignIn: state.inputV5 ? state.inputV5 : 0, //活动开始后多少分钟签到
|
||||||
beforeSignIn: state.inputV4, //活动开始前多少分钟签到
|
beforeSignIn: state.inputV4 ? state.inputV4 : 0, //活动开始前多少分钟签到
|
||||||
signOutTime: state.inputV6, //签退开始时间
|
signOutTime: state.inputV6, //签退开始时间
|
||||||
standardSettings: state.radioV1, //标准设置
|
standardSettings: state.radioV1, //标准设置
|
||||||
};
|
};
|
||||||
|
console.log("obj", obj);
|
||||||
if (props.edit) {
|
if (props.edit) {
|
||||||
//更新编辑活动信息
|
//更新编辑活动信息
|
||||||
api
|
api
|
||||||
@@ -536,8 +541,8 @@ export default {
|
|||||||
};
|
};
|
||||||
const disabledDate = (current) => {
|
const disabledDate = (current) => {
|
||||||
// Can not select days before today and today
|
// Can not select days before today and today
|
||||||
console.log('1111', dayjs().endOf('day'))
|
console.log("1111", dayjs().endOf("day"));
|
||||||
return current && current < dayjs().startOf('day');
|
return current && current < dayjs().startOf("day");
|
||||||
};
|
};
|
||||||
|
|
||||||
const disabledDateTime = () => {
|
const disabledDateTime = () => {
|
||||||
@@ -556,9 +561,7 @@ export default {
|
|||||||
cloradio1,
|
cloradio1,
|
||||||
updateActivityInfo,
|
updateActivityInfo,
|
||||||
disabledDateTime,
|
disabledDateTime,
|
||||||
disabledDate
|
disabledDate,
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@@ -701,7 +704,6 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.setbox {
|
.setbox {
|
||||||
|
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
margin-bottom: 24px;
|
margin-bottom: 24px;
|
||||||
|
|||||||
@@ -71,7 +71,8 @@
|
|||||||
<div class="btnbox">
|
<div class="btnbox">
|
||||||
<a-range-picker
|
<a-range-picker
|
||||||
:show-time="{ format: 'HH:mm' }"
|
:show-time="{ format: 'HH:mm' }"
|
||||||
:disabled-date="disabledDate" :disabled-time="disabledRangeTime"
|
:disabled-date="disabledDate"
|
||||||
|
:disabled-time="disabledRangeTime"
|
||||||
style="width: 400px; height: 40px; border-radius: 8px"
|
style="width: 400px; height: 40px; border-radius: 8px"
|
||||||
v-model:value="time"
|
v-model:value="time"
|
||||||
format="YYYY/MM/DD HH:mm"
|
format="YYYY/MM/DD HH:mm"
|
||||||
@@ -486,7 +487,7 @@ export default {
|
|||||||
switchC2: false,
|
switchC2: false,
|
||||||
assessmentVisible: false,
|
assessmentVisible: false,
|
||||||
assessmentName: "",
|
assessmentName: "",
|
||||||
isClick: false
|
isClick: false,
|
||||||
});
|
});
|
||||||
const closeDrawer = () => {
|
const closeDrawer = () => {
|
||||||
ctx.emit("update:addliveVisible", false);
|
ctx.emit("update:addliveVisible", false);
|
||||||
@@ -701,10 +702,10 @@ export default {
|
|||||||
message.destroy();
|
message.destroy();
|
||||||
return message.warning("请输入直播公告");
|
return message.warning("请输入直播公告");
|
||||||
}
|
}
|
||||||
if(state.isClick){
|
if (state.isClick) {
|
||||||
message.destroy();
|
message.destroy();
|
||||||
message.error('请勿频繁点击')
|
message.error("请勿频繁点击");
|
||||||
return
|
return;
|
||||||
}
|
}
|
||||||
state.isClick = true;
|
state.isClick = true;
|
||||||
|
|
||||||
@@ -722,8 +723,8 @@ export default {
|
|||||||
"Y-M-D h:m"
|
"Y-M-D h:m"
|
||||||
);
|
);
|
||||||
state.obj = {
|
state.obj = {
|
||||||
afterSignIn: state.inputV6,
|
afterSignIn: state.inputV6 ? state.inputV6 : 0,
|
||||||
beforeSignIn: state.inputV7,
|
beforeSignIn: state.inputV7 ? state.inputV7 : 0,
|
||||||
assessmentId:
|
assessmentId:
|
||||||
state.assessmentId == null || state.assessmentId == ""
|
state.assessmentId == null || state.assessmentId == ""
|
||||||
? 0
|
? 0
|
||||||
@@ -898,8 +899,8 @@ export default {
|
|||||||
};
|
};
|
||||||
const disabledDate = (current) => {
|
const disabledDate = (current) => {
|
||||||
// Can not select days before today and today
|
// Can not select days before today and today
|
||||||
console.log('1111', dayjs().endOf('day'))
|
console.log("1111", dayjs().endOf("day"));
|
||||||
return current && current < dayjs().startOf('day');
|
return current && current < dayjs().startOf("day");
|
||||||
};
|
};
|
||||||
|
|
||||||
const disabledDateTime = () => {
|
const disabledDateTime = () => {
|
||||||
@@ -927,7 +928,7 @@ export default {
|
|||||||
showAssessment,
|
showAssessment,
|
||||||
removePG,
|
removePG,
|
||||||
disabledDateTime,
|
disabledDateTime,
|
||||||
disabledDate
|
disabledDate,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -64,8 +64,13 @@
|
|||||||
</a-button>
|
</a-button>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col :span="2">
|
<a-col :span="2">
|
||||||
<a-button class="cus-btn white" style="width: 100px" @click="reset"
|
<a-button class="cus-btn white" style="width: 100px" @click="reset">
|
||||||
>重置
|
<template #icon>
|
||||||
|
<img
|
||||||
|
style="margin-right: 10px"
|
||||||
|
src="../../assets/images/leveladd/reset.png"
|
||||||
|
/></template>
|
||||||
|
重置
|
||||||
</a-button>
|
</a-button>
|
||||||
</a-col>
|
</a-col>
|
||||||
</a-row>
|
</a-row>
|
||||||
|
|||||||
@@ -536,9 +536,8 @@
|
|||||||
<div class="split"></div>
|
<div class="split"></div>
|
||||||
|
|
||||||
<a-tabs>
|
<a-tabs>
|
||||||
|
<!-- 2023-1-12 隐藏 后面放开 -->
|
||||||
|
<!-- <a-tab-pane key="1" tab="基本信息">
|
||||||
<a-tab-pane key="1" tab="基本信息">
|
|
||||||
<div class="sametab">
|
<div class="sametab">
|
||||||
<div class="Gcon">
|
<div class="Gcon">
|
||||||
<div class="pad"></div>
|
<div class="pad"></div>
|
||||||
@@ -634,8 +633,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-tab-pane>
|
</a-tab-pane> -->
|
||||||
|
|
||||||
|
|
||||||
<a-tab-pane key="2" tab="共享文档">
|
<a-tab-pane key="2" tab="共享文档">
|
||||||
<div class="sametab">
|
<div class="sametab">
|
||||||
@@ -668,7 +666,13 @@
|
|||||||
>
|
>
|
||||||
<img
|
<img
|
||||||
src="@/assets/images/basicinfo/cloud.png"
|
src="@/assets/images/basicinfo/cloud.png"
|
||||||
style="cursor: pointer; width: 24px; height: 24px; margin-left: 8px;margin-bottom: 3px;"
|
style="
|
||||||
|
cursor: pointer;
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
margin-left: 8px;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
"
|
||||||
alt=""
|
alt=""
|
||||||
/>
|
/>
|
||||||
</a-upload>
|
</a-upload>
|
||||||
@@ -694,7 +698,6 @@
|
|||||||
"
|
"
|
||||||
class="docListStyle"
|
class="docListStyle"
|
||||||
>
|
>
|
||||||
|
|
||||||
<!-- <img
|
<!-- <img
|
||||||
src="@/assets/images/basicinfo/download.png"
|
src="@/assets/images/basicinfo/download.png"
|
||||||
style="
|
style="
|
||||||
@@ -705,26 +708,74 @@
|
|||||||
"
|
"
|
||||||
alt=""
|
alt=""
|
||||||
/> -->
|
/> -->
|
||||||
<img v-if="
|
<img
|
||||||
|
v-if="
|
||||||
item.name.indexOf('jpg') !== -1 ||
|
item.name.indexOf('jpg') !== -1 ||
|
||||||
item.name.indexOf('jpeg') !== -1 ||
|
item.name.indexOf('jpeg') !== -1 ||
|
||||||
item.name.indexOf('png') !== -1
|
item.name.indexOf('png') !== -1
|
||||||
"
|
"
|
||||||
style="width: 27px;height: 32px;margin-right: 40px;"
|
style="width: 27px; height: 32px; margin-right: 40px"
|
||||||
src="@/assets/images/coursewareManage/pngpic.png" />
|
src="@/assets/images/coursewareManage/pngpic.png"
|
||||||
|
/>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<img v-if="item.name.indexOf('doc') !== -1" style="width: 27px;height: 32px;margin-right: 40px;" src="@/assets/images/coursewareManage/docpic.png" />
|
<img
|
||||||
|
v-if="item.name.indexOf('doc') !== -1"
|
||||||
|
style="
|
||||||
|
width: 27px;
|
||||||
|
height: 32px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
src="@/assets/images/coursewareManage/docpic.png"
|
||||||
|
/>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<img v-if="item.name.indexOf('xls') !== -1" style="width: 27px;height: 32px;margin-right: 40px;" src="@/assets/images/coursewareManage/xlspic.png" />
|
<img
|
||||||
|
v-if="item.name.indexOf('xls') !== -1"
|
||||||
|
style="
|
||||||
|
width: 27px;
|
||||||
|
height: 32px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
src="@/assets/images/coursewareManage/xlspic.png"
|
||||||
|
/>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<img v-if="item.name.indexOf('ppt') !== -1" style="width: 27px;height: 32px;margin-right: 40px;" src="@/assets/images/coursewareManage/pptpic.png" />
|
<img
|
||||||
|
v-if="item.name.indexOf('ppt') !== -1"
|
||||||
|
style="
|
||||||
|
width: 27px;
|
||||||
|
height: 32px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
src="@/assets/images/coursewareManage/pptpic.png"
|
||||||
|
/>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<img v-if="item.name.indexOf('pdf') !== -1" style="width: 27px;height: 32px;margin-right: 40px;" src="@/assets/images/coursewareManage/pdfpic.png" />
|
<img
|
||||||
|
v-if="item.name.indexOf('pdf') !== -1"
|
||||||
|
style="
|
||||||
|
width: 27px;
|
||||||
|
height: 32px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
src="@/assets/images/coursewareManage/pdfpic.png"
|
||||||
|
/>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<img v-if="item.name.indexOf('zip') !== -1"
|
<img
|
||||||
style="width: 27px;height: 32px;margin-right: 40px;"
|
v-if="item.name.indexOf('zip') !== -1"
|
||||||
src="@/assets/images/coursewareManage/zippic.png" />
|
style="
|
||||||
<img v-else style="width: 27px;height: 32px;margin-right: 40px;" src="@/assets/images/coursewareManage/docpic.png" />
|
width: 27px;
|
||||||
|
height: 32px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
src="@/assets/images/coursewareManage/zippic.png"
|
||||||
|
/>
|
||||||
|
<img
|
||||||
|
v-else
|
||||||
|
style="
|
||||||
|
width: 27px;
|
||||||
|
height: 32px;
|
||||||
|
margin-right: 40px;
|
||||||
|
"
|
||||||
|
src="@/assets/images/coursewareManage/docpic.png"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -742,7 +793,11 @@
|
|||||||
:title="item.name"
|
:title="item.name"
|
||||||
>{{ item.name }}</span
|
>{{ item.name }}</span
|
||||||
>
|
>
|
||||||
<a :href="item.response?item.response.data:''" style="margin-left: 5px">下载</a>
|
<a
|
||||||
|
:href="item.response ? item.response.data : ''"
|
||||||
|
style="margin-left: 5px"
|
||||||
|
>下载</a
|
||||||
|
>
|
||||||
<span
|
<span
|
||||||
style="color: #4ea6ff; cursor: pointer"
|
style="color: #4ea6ff; cursor: pointer"
|
||||||
@click="deFile(item.uid)"
|
@click="deFile(item.uid)"
|
||||||
@@ -756,7 +811,6 @@
|
|||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
</a-tabs>
|
</a-tabs>
|
||||||
</a-tab-pane>
|
</a-tab-pane>
|
||||||
|
|
||||||
</a-tabs>
|
</a-tabs>
|
||||||
|
|
||||||
<a-modal
|
<a-modal
|
||||||
@@ -1428,7 +1482,10 @@ export default {
|
|||||||
evaluationLevelName: "",
|
evaluationLevelName: "",
|
||||||
|
|
||||||
facestudent: "",
|
facestudent: "",
|
||||||
locationHref: location.href.indexOf('http://') !== -1 ? 'http://111.231.196.214:12016/' : location.href.slice(0, location.href.indexOf('/m')) + '/upload/'
|
locationHref:
|
||||||
|
location.href.indexOf("http://") !== -1
|
||||||
|
? "http://111.231.196.214:12016/"
|
||||||
|
: location.href.slice(0, location.href.indexOf("/m")) + "/upload/",
|
||||||
});
|
});
|
||||||
|
|
||||||
const levelList = reactive({
|
const levelList = reactive({
|
||||||
@@ -2048,7 +2105,7 @@ export default {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log("router-list", res);
|
console.log("router-list", res);
|
||||||
state.fileList = JSON.parse(res.data.data.routerInfo.attach);
|
state.fileList = JSON.parse(res.data.data.routerInfo.attach);
|
||||||
console.log('asdasdasd-------->',state.fileList)
|
console.log("asdasdasd-------->", state.fileList);
|
||||||
state.docChecked =
|
state.docChecked =
|
||||||
res.data.data.routerInfo.attachSwitch == 1 ? true : false;
|
res.data.data.routerInfo.attachSwitch == 1 ? true : false;
|
||||||
if (res.data.data.routerInfo.status == 1) {
|
if (res.data.data.routerInfo.status == 1) {
|
||||||
|
|||||||
@@ -55,8 +55,13 @@
|
|||||||
:placeholder="[' 开始时间', ' 结束时间']"
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
|
|
||||||
/>-->
|
/>-->
|
||||||
<a-range-picker v-model:value="searchParam.valueDate" style="width: 420px" format="YYYY-MM-DD" separator="至"
|
<a-range-picker
|
||||||
:placeholder="[' 开始时间', ' 结束时间']" />
|
v-model:value="searchParam.valueDate"
|
||||||
|
style="width: 420px"
|
||||||
|
format="YYYY-MM-DD"
|
||||||
|
separator="至"
|
||||||
|
:placeholder="[' 开始时间', ' 结束时间']"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div style="display: flex; margin-bottom: 20px">
|
<div style="display: flex; margin-bottom: 20px">
|
||||||
<div class="btnn btn1" @click="searchSubmit">
|
<div class="btnn btn1" @click="searchSubmit">
|
||||||
@@ -113,13 +118,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/projectadd/nopro.png"/>
|
<img src="../../assets/images/projectadd/nopro.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)">
|
||||||
创建项目
|
创建项目
|
||||||
@@ -288,13 +293,13 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<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/picture4.png"/>
|
<img src="../../assets/images/taskpage/picture4.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)">
|
||||||
单层子项目
|
单层子项目
|
||||||
@@ -308,13 +313,13 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<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/picture5.png"/>
|
<img src="../../assets/images/taskpage/picture5.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)">
|
||||||
多层子项目
|
多层子项目
|
||||||
@@ -375,13 +380,13 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<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/picture6.png"/>
|
<img src="../../assets/images/taskpage/picture6.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)">
|
||||||
单层{{ projectInfo.parentId ? "子" : "" }}项目
|
单层{{ projectInfo.parentId ? "子" : "" }}项目
|
||||||
@@ -400,13 +405,13 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
<div class="leftt">
|
<div class="leftt">
|
||||||
<img src="../../assets/images/taskpage/left3.png"/>
|
<img src="../../assets/images/taskpage/left3.png" />
|
||||||
</div>
|
</div>
|
||||||
<div class="photo">
|
<div class="photo">
|
||||||
<img src="../../assets/images/taskpage/picture7.png"/>
|
<img src="../../assets/images/taskpage/picture7.png" />
|
||||||
</div>
|
</div>
|
||||||
<div class="rightt">
|
<div class="rightt">
|
||||||
<img src="../../assets/images/taskpage/right3.png"/>
|
<img src="../../assets/images/taskpage/right3.png" />
|
||||||
</div>
|
</div>
|
||||||
<div class="centerbox1" style="color: rgba(93, 201, 136, 1)">
|
<div class="centerbox1" style="color: rgba(93, 201, 136, 1)">
|
||||||
多层{{ projectInfo.parentId ? "子" : "" }}项目
|
多层{{ projectInfo.parentId ? "子" : "" }}项目
|
||||||
@@ -628,7 +633,7 @@
|
|||||||
class="aeLoading"
|
class="aeLoading"
|
||||||
:style="{ display: projectPubLoading ? 'flex' : 'none' }"
|
:style="{ display: projectPubLoading ? 'flex' : 'none' }"
|
||||||
>
|
>
|
||||||
<a-spin :spinning="projectPubLoading"/>
|
<a-spin :spinning="projectPubLoading" />
|
||||||
</div>
|
</div>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
<!-- 撤回路径弹窗 -->
|
<!-- 撤回路径弹窗 -->
|
||||||
@@ -815,24 +820,24 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import {reactive, toRefs, ref, watch} from "vue";
|
import { reactive, toRefs, ref, watch } from "vue";
|
||||||
import {message, Modal} from "ant-design-vue";
|
import { message, Modal } from "ant-design-vue";
|
||||||
import {useRouter} from "vue-router";
|
import { useRouter } from "vue-router";
|
||||||
import ProjOwnerShip from "../../components/drawers/ProjectOwn";
|
import ProjOwnerShip from "../../components/drawers/ProjectOwn";
|
||||||
import ProjPowerList from "../../components/drawers/ProjPowerList";
|
import ProjPowerList from "../../components/drawers/ProjPowerList";
|
||||||
import ProjCheckShip from "../../components/drawers/ProjCheckPower";
|
import ProjCheckShip from "../../components/drawers/ProjCheckPower";
|
||||||
import * as api from "../../api/index";
|
import * as api from "../../api/index";
|
||||||
import * as api1 from "../../api/index1";
|
import * as api1 from "../../api/index1";
|
||||||
import {storage} from "../../api/storage";
|
import { storage } from "../../api/storage";
|
||||||
import ProjectManager from "@/components/project/ProjectManagerNew";
|
import ProjectManager from "@/components/project/ProjectManagerNew";
|
||||||
// import ProjectClass from "@/components/project/ProjectClass";
|
// import ProjectClass from "@/components/project/ProjectClass";
|
||||||
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 dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import * as moment from "moment";
|
import * as moment from "moment";
|
||||||
import {changeOwnership} from "@/api/method";
|
import { changeOwnership } from "@/api/method";
|
||||||
import NameInput from "@/components/project/NameInput";
|
import NameInput from "@/components/project/NameInput";
|
||||||
import {validateName} from "@/api/index1";
|
import { validateName } from "@/api/index1";
|
||||||
//import { toDate } from "../../api/method";
|
//import { toDate } from "../../api/method";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
@@ -850,7 +855,7 @@ export default {
|
|||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
const state = reactive({
|
const state = reactive({
|
||||||
tableLoading:false,
|
tableLoading: false,
|
||||||
projectName: null,
|
projectName: null,
|
||||||
selectTime: null,
|
selectTime: null,
|
||||||
sonproject: false,
|
sonproject: false,
|
||||||
@@ -923,12 +928,12 @@ export default {
|
|||||||
// 数据接入 - start -
|
// 数据接入 - start -
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const sProjectStateList = ref([
|
const sProjectStateList = ref([
|
||||||
{value: 0, label: "草稿"},
|
{ value: 0, label: "草稿" },
|
||||||
{value: 1, label: "进行中"},
|
{ value: 1, label: "进行中" },
|
||||||
{value: 2, label: "已结束"},
|
{ value: 2, label: "已结束" },
|
||||||
]);
|
]);
|
||||||
const searchReset = () => {
|
const searchReset = () => {
|
||||||
state.searchParam = {pageNo: 1, pageSize: 10};
|
state.searchParam = { pageNo: 1, pageSize: 10 };
|
||||||
getTableDate();
|
getTableDate();
|
||||||
};
|
};
|
||||||
const searchSubmit = () => {
|
const searchSubmit = () => {
|
||||||
@@ -994,7 +999,7 @@ export default {
|
|||||||
state.currentPage = 1;
|
state.currentPage = 1;
|
||||||
state.projectInfo.projectId ||
|
state.projectInfo.projectId ||
|
||||||
changeOwnership("project", res.data.data.projectId, [
|
changeOwnership("project", res.data.data.projectId, [
|
||||||
{id: res.data.data.createId, name: res.data.data.createName},
|
{ id: res.data.data.createId, name: res.data.data.createName },
|
||||||
]);
|
]);
|
||||||
getTableDate();
|
getTableDate();
|
||||||
});
|
});
|
||||||
@@ -1050,13 +1055,15 @@ export default {
|
|||||||
state.projectTasks = res.data.data.tasks;
|
state.projectTasks = res.data.data.tasks;
|
||||||
});
|
});
|
||||||
//获取学员总数
|
//获取学员总数
|
||||||
api.projectStudentCount({
|
api
|
||||||
|
.projectStudentCount({
|
||||||
pid: object.projectId,
|
pid: object.projectId,
|
||||||
type: 1
|
type: 1,
|
||||||
}).then((res) => {
|
|
||||||
state.projectStudentsNum = res.data.data
|
|
||||||
state.projectPubLoading = false;
|
|
||||||
})
|
})
|
||||||
|
.then((res) => {
|
||||||
|
state.projectStudentsNum = res.data.data;
|
||||||
|
state.projectPubLoading = false;
|
||||||
|
});
|
||||||
//获取阶段及任务总数
|
//获取阶段及任务总数
|
||||||
};
|
};
|
||||||
//确认发布项目
|
//确认发布项目
|
||||||
@@ -1212,7 +1219,7 @@ export default {
|
|||||||
message.success("模版保存成功");
|
message.success("模版保存成功");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
Modal.error({title: res.data.msg});
|
Modal.error({ title: res.data.msg });
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
//关闭存为模版弹窗
|
//关闭存为模版弹窗
|
||||||
@@ -1230,11 +1237,13 @@ export default {
|
|||||||
};
|
};
|
||||||
//确认复制
|
//确认复制
|
||||||
const copyProject = () => {
|
const copyProject = () => {
|
||||||
state.tableLoading = true
|
state.tableLoading = true;
|
||||||
api.handleProject({
|
api
|
||||||
|
.handleProject({
|
||||||
projectId: state.copyProjectId,
|
projectId: state.copyProjectId,
|
||||||
type: 2,
|
type: 2,
|
||||||
}).then(() => getTableDate())
|
})
|
||||||
|
.then(() => getTableDate());
|
||||||
message.success("复制成功");
|
message.success("复制成功");
|
||||||
state.copyModal = false;
|
state.copyModal = false;
|
||||||
};
|
};
|
||||||
@@ -1399,7 +1408,9 @@ export default {
|
|||||||
// console.log("value", value.record.type, value.record.status);
|
// console.log("value", value.record.type, value.record.status);
|
||||||
return (
|
return (
|
||||||
<div className="operation">
|
<div className="operation">
|
||||||
{value.record.status === 0 || value.record.status ===2 || value.record.status === -5 ? (
|
{value.record.status === 0 ||
|
||||||
|
value.record.status === 2 ||
|
||||||
|
value.record.status === -5 ? (
|
||||||
<span
|
<span
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
if (value.record.type === 1 || value.record.type === 2) {
|
if (value.record.type === 1 || value.record.type === 2) {
|
||||||
@@ -1471,6 +1482,21 @@ export default {
|
|||||||
) : (
|
) : (
|
||||||
""
|
""
|
||||||
)}
|
)}
|
||||||
|
{value.record.status === 3 && value.record.type === 3 ? (
|
||||||
|
<div
|
||||||
|
onClick={() => {
|
||||||
|
router.push({
|
||||||
|
path: "/taskpage",
|
||||||
|
query: { projectId: value.record.projectId },
|
||||||
|
});
|
||||||
|
storage.set("projectId", value.record.projectId);
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
管理
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
""
|
||||||
|
)}
|
||||||
{value.record.status === 3 && value.record.type === 3 ? (
|
{value.record.status === 3 && value.record.type === 3 ? (
|
||||||
<span
|
<span
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
@@ -1484,6 +1510,7 @@ export default {
|
|||||||
) : (
|
) : (
|
||||||
""
|
""
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{/**
|
{/**
|
||||||
//<!-- 2022-12-10注释 后面放开 -->
|
//<!-- 2022-12-10注释 后面放开 -->
|
||||||
<div className="tableSelect">
|
<div className="tableSelect">
|
||||||
@@ -1542,7 +1569,7 @@ export default {
|
|||||||
state.projectInfo = {
|
state.projectInfo = {
|
||||||
parentName: value.record.name,
|
parentName: value.record.name,
|
||||||
parentId: value.record.projectId,
|
parentId: value.record.projectId,
|
||||||
name: '',
|
name: "",
|
||||||
sourceBelongId: value.record.sourceBelongId,
|
sourceBelongId: value.record.sourceBelongId,
|
||||||
sourceBelongName: value.record.sourceBelongName,
|
sourceBelongName: value.record.sourceBelongName,
|
||||||
manager: value.record.manager,
|
manager: value.record.manager,
|
||||||
@@ -1595,7 +1622,8 @@ export default {
|
|||||||
复制
|
复制
|
||||||
</div>
|
</div>
|
||||||
</a-select-option>
|
</a-select-option>
|
||||||
{value.record.status!==3 ? <a-select-option value="删除" label="删除">
|
{value.record.status !== 3 ? (
|
||||||
|
<a-select-option value="删除" label="删除">
|
||||||
<div
|
<div
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
showDeleteModal(value.record.projectId);
|
showDeleteModal(value.record.projectId);
|
||||||
@@ -1603,7 +1631,10 @@ export default {
|
|||||||
>
|
>
|
||||||
删除
|
删除
|
||||||
</div>
|
</div>
|
||||||
</a-select-option>:''}
|
</a-select-option>
|
||||||
|
) : (
|
||||||
|
""
|
||||||
|
)}
|
||||||
{value.record.type === 3 ? (
|
{value.record.type === 3 ? (
|
||||||
<a-select-option value="存为模版" label="存为模版">
|
<a-select-option value="存为模版" label="存为模版">
|
||||||
<div
|
<div
|
||||||
@@ -1644,13 +1675,13 @@ export default {
|
|||||||
) : (
|
) : (
|
||||||
""
|
""
|
||||||
)}
|
)}
|
||||||
{value.record.type === 3 ? (
|
{value.record.status !== 3 && value.record.type === 3 ? (
|
||||||
<a-select-option value="基础信息" label="基础信息">
|
<a-select-option value="基础信息" label="基础信息">
|
||||||
<div
|
<div
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
router.push({
|
router.push({
|
||||||
path: "/taskpage",
|
path: "/taskpage",
|
||||||
query: {projectId: value.record.projectId},
|
query: { projectId: value.record.projectId },
|
||||||
});
|
});
|
||||||
storage.set("projectId", value.record.projectId);
|
storage.set("projectId", value.record.projectId);
|
||||||
}}
|
}}
|
||||||
@@ -1668,15 +1699,15 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
const getTableDate = () =>{
|
const getTableDate = () => {
|
||||||
state.tableLoading = true
|
state.tableLoading = true;
|
||||||
api.getProjectList({
|
api
|
||||||
|
.getProjectList({
|
||||||
...state.searchParam,
|
...state.searchParam,
|
||||||
beginTime:
|
beginTime:
|
||||||
state.searchParam.valueDate &&
|
state.searchParam.valueDate &&
|
||||||
state.searchParam.valueDate.length === 2
|
state.searchParam.valueDate.length === 2
|
||||||
? dayjs(state.searchParam.valueDate[0]).format("YYYY-MM-DD")
|
? dayjs(state.searchParam.valueDate[0]).format("YYYY-MM-DD")
|
||||||
|
|
||||||
: "",
|
: "",
|
||||||
endTime:
|
endTime:
|
||||||
state.searchParam.valueDate &&
|
state.searchParam.valueDate &&
|
||||||
@@ -1687,15 +1718,14 @@ export default {
|
|||||||
.then((res) => {
|
.then((res) => {
|
||||||
// console.log("搜索", res, state.searchParam);
|
// console.log("搜索", res, state.searchParam);
|
||||||
state.tableDataTotal = Number(res.data.data.total);
|
state.tableDataTotal = Number(res.data.data.total);
|
||||||
state.tableLoading = false
|
state.tableLoading = false;
|
||||||
const data = res.data.data.rows;
|
const data = res.data.data.rows;
|
||||||
initDataSublist("", data);
|
initDataSublist("", data);
|
||||||
console.log(data);
|
console.log(data);
|
||||||
tableData.value = data;
|
tableData.value = data;
|
||||||
console.log("tableData", tableData);
|
console.log("tableData", tableData);
|
||||||
});
|
});
|
||||||
}
|
};
|
||||||
|
|
||||||
|
|
||||||
function initDataSublist(parentName, data) {
|
function initDataSublist(parentName, data) {
|
||||||
if (data && data.length) {
|
if (data && data.length) {
|
||||||
@@ -1795,10 +1825,10 @@ export default {
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
function managerChange(e, l, d, t,orgName) {
|
function managerChange(e, l, d, t, orgName) {
|
||||||
state.projectInfo.sourceBelongId = d
|
state.projectInfo.sourceBelongId = d;
|
||||||
state.projectInfo.sourceBelongName = t
|
state.projectInfo.sourceBelongName = t;
|
||||||
state.projectInfo.sourceBelongFullName = orgName
|
state.projectInfo.sourceBelongFullName = orgName;
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@@ -1862,7 +1892,7 @@ export default {
|
|||||||
okReminderModal,
|
okReminderModal,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
.projectManage {
|
.projectManage {
|
||||||
|
|||||||
Reference in New Issue
Block a user