mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-10 03:16:44 +08:00
Merge branch 'develop' of ssh://gitlab.dongwu-inc.com:10022/BOE/fe-manage into develop
This commit is contained in:
89
src/App.vue
89
src/App.vue
@@ -1,27 +1,27 @@
|
||||
<template>
|
||||
<div id="container" v-if="!isLogin">
|
||||
<nav-top />
|
||||
<nav-top/>
|
||||
<div style="display: flex">
|
||||
<nav-left />
|
||||
<nav-left/>
|
||||
<div style="flex: 1; display: flex; flex-direction: column; width: 0">
|
||||
<open-pages />
|
||||
<bread-crumb />
|
||||
<open-pages/>
|
||||
<bread-crumb/>
|
||||
<main>
|
||||
<a-config-provider :locale="zhCN">
|
||||
<router-view />
|
||||
<router-view/>
|
||||
</a-config-provider>
|
||||
</main>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="container" v-if="isLogin">
|
||||
<router-view />
|
||||
<router-view/>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { computed, defineComponent, ref, watch } from "vue";
|
||||
import { useRouter, useRoute } from "vue-router";
|
||||
import { useStore } from "vuex";
|
||||
import {computed, defineComponent, ref, watch} from "vue";
|
||||
import {useRouter, useRoute} from "vue-router";
|
||||
import {useStore} from "vuex";
|
||||
import NavLeft from "@/components/NavLeft";
|
||||
import NavTop from "@/components/NavTop";
|
||||
import OpenPages from "@/components/OpenPages";
|
||||
@@ -30,6 +30,7 @@ import zhCN from "ant-design-vue/es/locale/zh_CN";
|
||||
import * as api from "./api/index1";
|
||||
import * as api1 from "@/api/index1";
|
||||
import * as api2 from "@/api/index";
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
NavLeft,
|
||||
@@ -48,12 +49,13 @@ export default defineComponent({
|
||||
return router.getRoutes().filter((e) => e.meta?.isLink);
|
||||
});
|
||||
watch(
|
||||
() => route.path,
|
||||
() => {
|
||||
route.path === "/login" && (isLogin.value = true);
|
||||
}
|
||||
() => route.path,
|
||||
() => {
|
||||
route.path === "/login" && (isLogin.value = true);
|
||||
}
|
||||
);
|
||||
const currentRouteName = computed(() => route.name);
|
||||
|
||||
function init() {
|
||||
console.log(store);
|
||||
getUserInfo();
|
||||
@@ -68,6 +70,7 @@ export default defineComponent({
|
||||
getMemberInfo();
|
||||
getOrgTree();
|
||||
}
|
||||
|
||||
async function getMemberInfo() {
|
||||
const list = localStorage.getItem("memberInitInfo");
|
||||
if (list) {
|
||||
@@ -75,33 +78,39 @@ export default defineComponent({
|
||||
return;
|
||||
}
|
||||
const memberInitInfo = await api1
|
||||
.getMemberInfo({ keyWord: "", pageNo: 1, pageSize: 10 })
|
||||
.then((res) => res.data.data.rows);
|
||||
.getMemberInfo({keyWord: "", pageNo: 1, pageSize: 10})
|
||||
.then((res) => res.data.data.rows);
|
||||
store.commit("SET_MEMBER_INFO", memberInitInfo);
|
||||
localStorage.setItem("memberInitInfo", JSON.stringify(memberInitInfo));
|
||||
}
|
||||
|
||||
async function getUserInfo() {
|
||||
const userInfo = await api2.userInfo();
|
||||
store.commit("SET_USER", userInfo);
|
||||
}
|
||||
async function initDict(key) {
|
||||
let list = localStorage.getItem(key);
|
||||
if (list) {
|
||||
store.commit("SET_DICT", { key, data: JSON.parse(list) });
|
||||
return;
|
||||
|
||||
async function initDict(key, localStory = false) {
|
||||
let list;
|
||||
if (localStory) {
|
||||
list = localStorage.getItem(key);
|
||||
if (list) {
|
||||
store.commit("SET_DICT", {key, data: JSON.parse(list)});
|
||||
return;
|
||||
}
|
||||
}
|
||||
list = await getDictList(key);
|
||||
localStorage.setItem(key, JSON.stringify(list));
|
||||
store.commit("SET_DICT", { key, data: list });
|
||||
localStory && localStorage.setItem(key, JSON.stringify(list));
|
||||
store.commit("SET_DICT", {key, data: list});
|
||||
}
|
||||
|
||||
const getDictList = (param) =>
|
||||
api1
|
||||
.getDict({
|
||||
pageNo: 1,
|
||||
pageSize: 20,
|
||||
setCode: param,
|
||||
})
|
||||
.then((res) => res.data.data.rows);
|
||||
api1
|
||||
.getDict({
|
||||
pageNo: 1,
|
||||
pageSize: 20,
|
||||
setCode: param,
|
||||
})
|
||||
.then((res) => res.data.data.rows);
|
||||
//获取组织树
|
||||
const getOrgTree = () => {
|
||||
const orgtreeList = localStorage.getItem("orgtreeList");
|
||||
@@ -109,25 +118,16 @@ export default defineComponent({
|
||||
store.commit("getOrgtreeList", JSON.parse(orgtreeList));
|
||||
return;
|
||||
}
|
||||
let obj = {
|
||||
api.getOrgInfo({
|
||||
keyWord: "",
|
||||
id: -1,
|
||||
pageNo: 1,
|
||||
pageSize: 20,
|
||||
};
|
||||
api
|
||||
.getOrgInfo(obj)
|
||||
.then((res) => {
|
||||
console.log("组织树获取成功", res);
|
||||
if (res.data.code === 200) {
|
||||
// state.treeData = res.data.data;
|
||||
})
|
||||
.then((res) => {
|
||||
localStorage.setItem("orgtreeList", JSON.stringify(res.data.data));
|
||||
store.commit("getOrgtreeList", res.data.data);
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("组织树获取失败", err);
|
||||
});
|
||||
})
|
||||
};
|
||||
init();
|
||||
return {
|
||||
@@ -144,12 +144,13 @@ export default defineComponent({
|
||||
// font-family: MicrosoftYaHei, Microsoft YaHei, Avenir, Helvetica, Arial,
|
||||
// sans-serif;
|
||||
font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB,
|
||||
Microsoft YaHei, Arial, sans-serif;
|
||||
Microsoft YaHei, Arial, sans-serif;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
color: #2c3e50;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
#container {
|
||||
margin: 0;
|
||||
display: flex;
|
||||
@@ -158,6 +159,7 @@ export default defineComponent({
|
||||
min-width: 1000px;
|
||||
min-height: 100%;
|
||||
background-color: rgba(245, 247, 250, 1);
|
||||
|
||||
main {
|
||||
height: 0;
|
||||
flex: 1 1 auto;
|
||||
@@ -173,6 +175,7 @@ export default defineComponent({
|
||||
background: #ffffff;
|
||||
box-shadow: 0px 1px 35px 0px rgba(118, 136, 166, 0.07);
|
||||
}
|
||||
|
||||
// @media screen and (max-width: 1366px) {
|
||||
// .cmMain {
|
||||
// width: 750px;
|
||||
|
||||
@@ -316,13 +316,11 @@ export default {
|
||||
for (let i = 0; i < state.apiTaskList.length; i++) {
|
||||
apiTask
|
||||
.addTask({
|
||||
courseId: state.apiTaskList[i].caseid,
|
||||
duration: 0,
|
||||
flag: true,
|
||||
name: state.apiTaskList[i].caseName,
|
||||
courseId: Number(state.apiTaskList[i].casesId),
|
||||
name: state.apiTaskList[i].title,
|
||||
projectTaskId: props.projectTaskId,
|
||||
projectTemplateId: props.projectTemplateId,
|
||||
stageId: props.chooseStageId || 0,
|
||||
projectTemplateId: Number(localStorage.getItem("projectTemplateId")),
|
||||
stageId: Number(props.chooseStageId) || 0,
|
||||
type: 3,
|
||||
})
|
||||
.then(() => {
|
||||
|
||||
@@ -499,7 +499,7 @@ export default {
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
});
|
||||
} else if (props.isLevel === 2) {
|
||||
} else if (props.isLevel == 2) {
|
||||
console.log("我是要便利的数据2", state.addOnlineList);
|
||||
let p_data = state.addOnlineList;
|
||||
let p_data_id = [];
|
||||
@@ -556,24 +556,28 @@ export default {
|
||||
console.log(err);
|
||||
});
|
||||
} else if (props.isLevel == 3) {
|
||||
addTempTask({
|
||||
courseId: state.onlineClassesId,
|
||||
name: state.onlineName,
|
||||
projectTemplateId: props.projectTemplateId,
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId || 0,
|
||||
type: 1,
|
||||
})
|
||||
.then(() => {
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}模板库任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
state.addOnlineList.map((value) => {
|
||||
console.log( props, props.projectTemplateId,props.projectTaskId)
|
||||
addTempTask({
|
||||
courseId: value.num,
|
||||
name: value.name,
|
||||
projectTemplateId: localStorage.getItem("projectTemplateId"),
|
||||
projectTaskId: props.projectTaskId || 0,
|
||||
stageId: props.chooseStageId || 0,
|
||||
type: 1,
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}模板库任务失败`);
|
||||
});
|
||||
.then((res) => {
|
||||
console.log('新增或者编辑在线课',res)
|
||||
message.destroy();
|
||||
message.success(`${props.edit ? "编辑" : "新增"}模板库任务成功`);
|
||||
ctx.emit("changeData", false);
|
||||
closeDrawer();
|
||||
})
|
||||
.catch(() => {
|
||||
message.destroy();
|
||||
message.error(`${props.edit ? "编辑" : "新增"}模板库任务失败`);
|
||||
});
|
||||
})
|
||||
}
|
||||
//if(state.addOnlineList.Target==undefined){
|
||||
// closeDrawer();
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main_item">
|
||||
<div class="main_item" style="margin-bottom: 24px; margin-left: 29px">
|
||||
<div class="signbox">
|
||||
<div class="sign">
|
||||
<img
|
||||
@@ -118,17 +118,11 @@
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
<span style="margin-right: 3px">基础投票数:</span>
|
||||
<span style="margin-right: 3px">基础投票数设置</span>
|
||||
</div>
|
||||
<div class="btnbox">
|
||||
<!-- <a-upload
|
||||
@change="handleChange"
|
||||
:before-upload="beforeUpload"
|
||||
:multiple="true"
|
||||
:max-count="1"
|
||||
action="/manageApi/vote/baseVoteupload"
|
||||
v-model:file-list="fileList"
|
||||
> -->
|
||||
|
||||
<!-- <div class="btnbox">
|
||||
|
||||
<a-upload :before-upload="beforeUpload" :max-count="1">
|
||||
<button class="xkbtn">点击上传</button>
|
||||
<template #itemRender="{ file, actions }">
|
||||
@@ -155,14 +149,75 @@
|
||||
</div>
|
||||
<button class="xkbtn" @click="downloadTemplate">下载模板
|
||||
</button>
|
||||
</div> -->
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-left: 64px;
|
||||
margin-bottom: 24px;
|
||||
"
|
||||
>
|
||||
<div>参与数:</div>
|
||||
<div style="width: 159px">
|
||||
<a-input-number
|
||||
style="width: 159px"
|
||||
id="inputNumber"
|
||||
v-model:value="partakeNum"
|
||||
:min="0"
|
||||
:max="99999"
|
||||
:precision="0"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="main_item" style="margin-top: -25px">
|
||||
<div
|
||||
style="
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-left: 64px;
|
||||
margin-bottom: 24px;
|
||||
"
|
||||
>
|
||||
<div>总票数:</div>
|
||||
<div style="width: 159px">
|
||||
<a-input-number
|
||||
style="width: 159px"
|
||||
id="inputNumber"
|
||||
v-model:value="totalVoteNum"
|
||||
:min="0"
|
||||
:max="99999"
|
||||
:precision="0"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
style="
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-left: 64px;
|
||||
margin-bottom: 24px;
|
||||
"
|
||||
>
|
||||
<div>浏览数:</div>
|
||||
<div style="width: 159px">
|
||||
<a-input-number
|
||||
style="width: 159px"
|
||||
id="inputNumber"
|
||||
v-model:value="browseNum"
|
||||
:min="0"
|
||||
:max="99999"
|
||||
:precision="0"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- <div class="main_item" style="margin-top: -25px">
|
||||
<div class="signbox"></div>
|
||||
<div class="btnbox">
|
||||
<span style="color: #999999">支持:xls.xlsx</span>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="main_item2">
|
||||
<div class="signbox">
|
||||
<span style="margin-right: 3px">投票说明:</span>
|
||||
@@ -272,15 +327,23 @@ export default {
|
||||
fileList: [],
|
||||
voteCount: null,
|
||||
projectTemplateId: null,
|
||||
|
||||
partakeNum: 0, //参与数
|
||||
totalVoteNum: 0, //总票数
|
||||
browseNum: 0, //浏览数
|
||||
});
|
||||
const closeDrawer = () => {
|
||||
(state.inputV1 = ""),
|
||||
(state.textV1 = ""),
|
||||
(state.time = undefined),
|
||||
(state.basevote = ""),
|
||||
(state.ballotId = ""),
|
||||
ctx.emit("update:addvoteVisible", false);
|
||||
state.inputV1 = "";
|
||||
state.textV1 = "";
|
||||
state.time = undefined;
|
||||
state.basevote = "";
|
||||
state.ballotId = "";
|
||||
ctx.emit("update:addvoteVisible", false);
|
||||
ctx.emit("update:edit", false);
|
||||
|
||||
state.partakeNum = 0; //参与数
|
||||
state.totalVoteNum = 0; //总票数
|
||||
state.browseNum = 0; //浏览数
|
||||
};
|
||||
const afterVisibleChange = (bool) => {
|
||||
if (props.edit && bool) {
|
||||
@@ -337,6 +400,9 @@ export default {
|
||||
dayjs(res.data.data.voteStartTime, "YYYY-MM-DD"),
|
||||
dayjs(res.data.data.voteEndTime, "YYYY-MM-DD"),
|
||||
];
|
||||
state.totalVoteNum = res.data.data.votesTotal; //总票数
|
||||
state.partakeNum = res.data.data.numberOfInvolved; //参与数
|
||||
state.browseNum = res.data.data.numberOfBrowse; //浏览数
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("获取投票信息失败", err);
|
||||
@@ -411,9 +477,9 @@ export default {
|
||||
message.destroy();
|
||||
return message.warning("请输入直播时间");
|
||||
}
|
||||
if (!state.basevote) {
|
||||
return message.warning("请上传投票基数");
|
||||
}
|
||||
// if (!state.basevote) {
|
||||
// return message.warning("请上传投票基数");
|
||||
// }
|
||||
if (state.time != undefined) {
|
||||
state.startTime = dayjs(state.time[0]).format("YYYY-MM-DD");
|
||||
state.endTime = dayjs(state.time[1]).format("YYYY-MM-DD");
|
||||
@@ -427,6 +493,9 @@ export default {
|
||||
ballotId: state.ballotId,
|
||||
baseVote: state.basevote,
|
||||
voteExplain: state.textV1,
|
||||
votesTotal: state.totalVoteNum, //总票数
|
||||
numberOfInvolved: state.partakeNum, //参与数
|
||||
numberOfBrowse: state.browseNum, //浏览数
|
||||
};
|
||||
if (props.edit) {
|
||||
api
|
||||
@@ -469,7 +538,7 @@ export default {
|
||||
};
|
||||
|
||||
function downloadTemplate() {
|
||||
window.open('/manageApi/投票基础数据模版.xlsx')
|
||||
window.open("/manageApi/投票基础数据模版.xlsx");
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
@@ -217,7 +217,7 @@ export default {
|
||||
key: "status",
|
||||
align: "center",
|
||||
customRender: ({ record: { status } }) => (
|
||||
<div>{status == -2 ? "未通过" : "已通过"}</div>
|
||||
<div>{{ '2': "审核通过", "-5": "未通过" }[status + ""] || '审核通过'}</div>
|
||||
),
|
||||
},
|
||||
{
|
||||
@@ -286,7 +286,7 @@ export default {
|
||||
key: "status",
|
||||
align: "center",
|
||||
customRender: ({ record: { status } }) => (
|
||||
<div>{{ 2: "审核通过", "-2": "审核拒绝" }[status + ""]}</div>
|
||||
<div>{{ '2': "审核通过", "-5": "审核拒绝" }[status + ""] || '审核通过'}</div>
|
||||
),
|
||||
},
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
<div class="onerow">
|
||||
<div class="taskmain">任务大纲</div>
|
||||
<!-- <button class="btn" @click="showFaceIn">批量面授报名</button> -->
|
||||
<router-link to="/temTask" class="edit">
|
||||
<router-link class="edit" :to="{ path: `/temTask`, query: { projectId: projectId } }">
|
||||
<img
|
||||
class="editimg"
|
||||
src="../../assets/images/projectadd/edit.png"
|
||||
|
||||
@@ -801,7 +801,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import {reactive, toRefs, ref, watch} from "vue";
|
||||
import {message} from "ant-design-vue";
|
||||
import {message, Modal} from "ant-design-vue";
|
||||
import {useRouter} from "vue-router";
|
||||
import ProjOwnerShip from "../../components/drawers/ProjectOwn";
|
||||
import ProjPowerList from "../../components/drawers/ProjPowerList";
|
||||
@@ -1178,11 +1178,13 @@ export default {
|
||||
type: 1,
|
||||
};
|
||||
api.handleProject(obj).then((res) => {
|
||||
console.log("模版保存成功", res);
|
||||
message.destroy();
|
||||
message.success("模版保存成功");
|
||||
state.startModal = false;
|
||||
getTableDate();
|
||||
if (res.data.code === 200) {
|
||||
message.destroy();
|
||||
message.success("模版保存成功");
|
||||
return;
|
||||
}
|
||||
Modal.error({title: res.data.msg})
|
||||
});
|
||||
};
|
||||
//关闭存为模版弹窗
|
||||
|
||||
@@ -16,7 +16,16 @@
|
||||
src="../../assets/images/leveladd/ma.png"
|
||||
@click="showCodeModel2()"
|
||||
/>
|
||||
<div class="line" v-if="action == 1 || action == 0"></div>
|
||||
<div
|
||||
class="line"
|
||||
v-if="
|
||||
action == 1 ||
|
||||
action == 2 ||
|
||||
action == 0 ||
|
||||
action == 3 ||
|
||||
action == -2
|
||||
"
|
||||
></div>
|
||||
<!-- 显示发布图标 -->
|
||||
<img
|
||||
v-if="action == 2"
|
||||
@@ -27,11 +36,11 @@
|
||||
<img
|
||||
v-if="action == 3"
|
||||
class="img2"
|
||||
src="../../assets/images/leveladd/pub.png"
|
||||
src="../../assets/images/project/finish.png"
|
||||
/>
|
||||
<!-- 显示审核图标 -->
|
||||
<img
|
||||
v-if="action == 0"
|
||||
v-if="action == 0 || action == -2"
|
||||
class="img2"
|
||||
src="../../assets/images/project/reviewsubmit.png"
|
||||
/>
|
||||
@@ -46,8 +55,8 @@
|
||||
<!-- 显示提交审核 -->
|
||||
<div
|
||||
class="pub"
|
||||
style="width: 56px"
|
||||
v-if="action == 0"
|
||||
style="width: 56px; color: #a497ff"
|
||||
v-if="action == 0 || action == -2"
|
||||
@click="submitExamine"
|
||||
>
|
||||
{{ act }}
|
||||
@@ -55,7 +64,7 @@
|
||||
<!-- 显示撤回审核 -->
|
||||
<div
|
||||
class="pub"
|
||||
style="width: 56px"
|
||||
style="width: 56px; color: #a497ff"
|
||||
v-if="action == 1"
|
||||
@click="showRecallReviewModal"
|
||||
>
|
||||
@@ -73,7 +82,7 @@
|
||||
<!-- 显示撤回发布 -->
|
||||
<div
|
||||
class="pub"
|
||||
style="width: 56px"
|
||||
style="width: 56px; color: #57c887"
|
||||
v-if="action == 3"
|
||||
@click="showBackModal"
|
||||
>
|
||||
@@ -5170,7 +5179,7 @@ export default {
|
||||
.img2 {
|
||||
width: 42px;
|
||||
height: 42px;
|
||||
margin-right: 22px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.pub {
|
||||
|
||||
@@ -175,6 +175,7 @@
|
||||
@changeData="updateTableData"
|
||||
:isLevel="isLevel"
|
||||
v-model:edit="edit"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
@@ -198,6 +199,7 @@
|
||||
@changeData="updateTableData"
|
||||
:isLevel="isLevel"
|
||||
v-model:edit="edit"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
@@ -221,6 +223,7 @@
|
||||
@changeData="updateTableData"
|
||||
:isLevel="isLevel"
|
||||
v-model:edit="edit"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
@@ -244,6 +247,7 @@
|
||||
@changeData="updateTableData"
|
||||
v-model:isLevel="isLevel"
|
||||
v-model:edit="edit"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:EditWorkId="EditWorkId"
|
||||
@@ -267,6 +271,7 @@
|
||||
@changeData="updateTableData"
|
||||
:isLevel="isLevel"
|
||||
v-model:edit="edit"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:EditTestId="EditTestId"
|
||||
@@ -289,6 +294,7 @@
|
||||
v-model:addliveVisible="addlivevisible"
|
||||
:isLevel="isLevel"
|
||||
@changeData="updateTableData"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:edit="edit"
|
||||
@@ -312,6 +318,7 @@
|
||||
v-model:addrefVisible="addrefvisible"
|
||||
:isLevel="isLevel"
|
||||
@changeData="updateTableData"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:edit="edit"
|
||||
@@ -335,6 +342,7 @@
|
||||
v-model:adddiscussVisible="adddiscussvisible"
|
||||
v-model:edit="edit"
|
||||
:isLevel="isLevel"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:EditDiscussId="EditDiscussId"
|
||||
@@ -357,6 +365,7 @@
|
||||
<add-active
|
||||
v-model:addactiveVisible="addactivevisible"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:projectId="projectId"
|
||||
v-model:EditActiveId="EditActiveId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
v-model:edit="edit"
|
||||
@@ -382,6 +391,7 @@
|
||||
@changeData="updateTableData"
|
||||
v-model:edit="edit"
|
||||
:isLevel="isLevel"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
@@ -405,6 +415,7 @@
|
||||
@changeData="updateTableData"
|
||||
v-model:edit="edit"
|
||||
:isLevel="isLevel"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
@@ -428,6 +439,7 @@
|
||||
@getData="changeVData"
|
||||
v-model:edit="edit"
|
||||
:isLevel="isLevel"
|
||||
v-model:projectId="projectId"
|
||||
v-model:projectTemplateId="projectTemplateId"
|
||||
v-model:chooseStageId="chooseStageId"
|
||||
v-model:projectTaskId="projectTaskId"
|
||||
@@ -1059,7 +1071,7 @@ import draggable from "vuedraggable";
|
||||
import { storage } from "../../api/storage";
|
||||
// import UnlockMode from "../../components/drawers/UnlockMode.vue";
|
||||
// import * as api1 from "../../api/index1";
|
||||
import { useRouter } from "vue-router";
|
||||
import { useRouter, useRoute } from "vue-router";
|
||||
const drawercolumns = [
|
||||
{
|
||||
title: "项目名称",
|
||||
@@ -1118,8 +1130,10 @@ export default {
|
||||
// UnlockMode,
|
||||
},
|
||||
setup() {
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
const state = reactive({
|
||||
projectId: route.query.projectId,
|
||||
projectTemplateId: storage.get("projectTemplateId")
|
||||
? JSON.parse(storage.get("projectTemplateId"))
|
||||
: null,
|
||||
@@ -1391,6 +1405,9 @@ export default {
|
||||
console.log(array)
|
||||
if(array[0].id=='0'){
|
||||
state.level = [];
|
||||
// state.tableData = array[0]
|
||||
// 当无阶段任务出现时 显示当前数据
|
||||
getTableData(array[0].taskList)
|
||||
}else{
|
||||
state.level = array;
|
||||
}
|
||||
@@ -1790,6 +1807,7 @@ export default {
|
||||
"0px 1px 35px 0px rgba(118, 136, 166, 0.07)";
|
||||
});
|
||||
const showDrawerOnline = (id, eleId) => {
|
||||
console.log(id, eleId)
|
||||
state.addonlinevisible = true;
|
||||
state.EditOnlineId = id;
|
||||
state.projectTaskId = eleId;
|
||||
|
||||
Reference in New Issue
Block a user