feat : 模板列表数据获取,模板编辑修改

This commit is contained in:
王熙东
2022-11-23 15:35:00 +08:00
parent 97b357066c
commit 1636fbfd6f
5 changed files with 58 additions and 151 deletions

View File

@@ -22,7 +22,7 @@ export default createStore({
assessmentName: "",
routerId: null,
projectTemplateId:null,
orgtreeList: [],
},
getters: {},
@@ -43,6 +43,9 @@ export default createStore({
},
getOrgtreeList(state, orgtreeList) {
state.orgtreeList = orgtreeList;
},
SET_projectTemplateId (state,projectTemplateId) {
state.projectTemplateId = projectTemplateId;
}
},
actions: {},

View File

@@ -565,9 +565,11 @@ import { ref, reactive, defineComponent, toRefs, onMounted} from "vue";
import { message } from "ant-design-vue";
import * as api from "@/api/indexTemplate"
import { useRouter } from "vue-router";
import { useStore } from "vuex";
export default defineComponent({
name: "LibraryAdd",
setup() {
const store = useStore();
const state = reactive({
//任务大纲列表
taskSyllabus: [
@@ -761,11 +763,12 @@ export default defineComponent({
onMounted(() => {getDetail()});
// 获取详情
const getDetail = () => {
api.templateDetail(1).then(res => {
api.templateDetail(store.state.projectTemplateId).then(res => {
state.taskSyllabus = []
console.log(res);
state.projectInfo.name = res.data.data.projectTemplateInfo.name
state.projectInfo.beginTime = res.data.data.projectTemplateInfo.createTime
let time = new Date(Number(res.data.data.projectTemplateInfo.createTime))
state.projectInfo.beginTime = time.toLocaleDateString()
state.projectInfo.manager = res.data.data.projectTemplateInfo.manager
state.projectInfo.notice = res.data.data.projectTemplateInfo.notice
state.projectInfo.sourceBelongId = res.data.data.projectTemplateInfo.sourceBelongId
@@ -811,7 +814,7 @@ export default defineComponent({
"notice": state.projectInfo.notice,
"noticeFlag": 0,
"picUrl": "",
"projectTemplateId": 0,
"projectTemplateId": store.state.projectTemplateId,
"remark": "",
"sourceBelongId": 0,
"status": 0,
@@ -860,7 +863,7 @@ export default defineComponent({
const stateEdit = () => {
let obj={
"name": "",
"projectTemplateId": 0,
"projectTemplateId": store.state.projectTemplateId,
"remark": "",
"stageId": 0
}
@@ -880,7 +883,7 @@ export default defineComponent({
"flag": true,
"name": "",
"projectTaskId": 0,
"projectTemplateId": 0,
"projectTemplateId": store.state.projectTemplateId,
"stageId": 0,
"type": 0
}
@@ -920,7 +923,6 @@ export default defineComponent({
<style lang="scss">
.content7 {
margin-top: 20px;
.set_tit {
margin-left: 34px;
font-size: 18px;

View File

@@ -47,6 +47,8 @@
<script>
import { reactive, defineComponent, toRefs, onMounted } from "vue";
import { message } from "ant-design-vue";
import { useRouter } from "vue-router";
import { useStore } from "vuex";
import * as api from "@/api/indexTemplate"
const columns1 = [
{
@@ -90,6 +92,9 @@ const columns1 = [
export default defineComponent({
name: "TemplateLibrary",
setup() {
const store = useStore();
// 编辑页面跳转过来时候,自动填充表格
const router = useRouter();
const state = reactive({
value1: null,
tableData1: [
@@ -101,15 +106,6 @@ export default defineComponent({
stutime: "2022-10-31 23:12:00",
operation: "operation",
projectTemplateId: 1,
},
{
key: "2",
name: "测试模板2",
status: "未发布",
creator: "李部长",
stutime: "2022-10-31 23:12:00",
operation: "operation",
projectTemplateId: 2,
}
],
});
@@ -124,12 +120,10 @@ export default defineComponent({
{value.status === "已发布" ? (
<div class="nselect">
<div class="ops2">
<router-link to="/libraryadd">
<div class="jc">
<div class="jc" onClick={() => {toLibraryAdd(value.projectTemplateId)}}>
查看{" "}
<span style="color:#E9E9E9;margin-left:15px;">|</span>
</div>
</router-link>
</div>
<div class="ops3">
<div class="jc"
@@ -150,12 +144,10 @@ export default defineComponent({
</div>
</div>
<div class="ops2">
<router-link to="/libraryadd">
<div class="jc">
<div class="jc" onClick={() => {toLibraryAdd(value.projectTemplateId)}}>
查看
<span style="color:#E9E9E9;margin-left:15px;">|</span>
</div>
</router-link>
</div>
<div class="ops3">
<div class="jc"
@@ -189,26 +181,28 @@ export default defineComponent({
const getLibraryList = () => {
let obj = {
"beginTime": 0,
"endTime": 0,
"name": "",
"pageNo": pagination.current,
"pageSize": 10,
"status": 0 || 1
"status": 0
}
api.templateList(obj).then((res) => {
state.tableData1 = []
console.log(res);
let resData = res.data.data.rows
if (resData.length) {
for (let i in resData) {
state.tableData1[i].id = i + 1;
state.tableData1[i].projectTemplateId = resData[i].projectTemplateId;
state.tableData1[i].status = resData[i].status ? "已发布" : "未发布";
state.tableData1[i].name = resData[i].name;
state.tableData1[i].creator = resData[i].createName;
state.tableData1[i].stutime = resData[i].publishTime;
state.tableData1[i].operation = "operation";
state.tableData1.push({
id : i + 1,
projectTemplateId:resData[i].projectTemplateId,
status:resData[i].status ? "已发布" : "未发布",
name:resData[i].name,
creator:resData[i].createName,
stutime:resData[i].publishTime,
operation:"operation"
})
}
getTableDate1()
} else {
message.warning("获取的列表数据为空值")
}
@@ -227,55 +221,21 @@ export default defineComponent({
})
}
const searchLevel = () => {
state.tableData1 = [
{
key: "1",
name: "测试模板1",
status: "已发布",
creator: "李部长",
stutime: "2022-10-31 23:12:00",
operation: "operation",
projectTemplateId: 1,
},
{
key: "2",
name: "测试模板2",
status: "未发布",
creator: "李部长",
stutime: "2022-10-31 23:12:00",
operation: "operation",
projectTemplateId: 2,
}
];
const result = state.tableData1.filter(item => item.name.includes(state.value1))
state.tableData1 = result;
getTableDate1()
getLibraryList();
setTimeout(() => {
const result = state.tableData1.filter(item => item.name.includes(state.value1))
state.tableData1 = result;
},100)
};
const resetLevel = () => {
state.value1 = '';
// getLibraryList();
state.tableData1 = [
{
key: "1",
name: "测试模板1",
status: "已发布",
creator: "李部长",
stutime: "2022-10-31 23:12:00",
operation: "operation",
projectTemplateId: 1,
},
{
key: "2",
name: "测试模板2",
status: "未发布",
creator: "李部长",
stutime: "2022-10-31 23:12:00",
operation: "operation",
projectTemplateId: 2,
}
]
getLibraryList();
getTableDate1()
};
const toLibraryAdd = (id) => {
router.push("/libraryAdd");
store.state.projectTemplateId = id
}
return {
...toRefs(state),
@@ -284,6 +244,7 @@ export default defineComponent({
searchLevel,
resetLevel,
pagination,
toLibraryAdd,
};
},
});

View File

@@ -1045,6 +1045,7 @@
import draggable from "vuedraggable";
import { storage } from "../../api/storage";
import UnlockMode from "../../components/drawers/UnlockMode.vue";
import {useStore} from "vuex";
// import * as api1 from "../../api/index1";
const drawercolumns = [
@@ -1105,6 +1106,7 @@
UnlockMode,
},
setup() {
const store = useStore();
const state = reactive({
projectId: storage.get("projectId")
? JSON.parse(storage.get("projectId"))
@@ -1507,8 +1509,7 @@
const getTask = () => {
state.tableData = []
api
// .templateDetail(state.projectId || 1)
.templateDetail(1)
.templateDetail(store.state.projectTemplateId)
.then((res) => {
if (res.status == 200) {
console.log("22222", res.data.data.stageList);
@@ -1706,7 +1707,7 @@
if (state.updateStageID) {
let obj = {
name: state.valuesname,
projectTemplateId: 1,
projectTemplateId: store.state.projectTemplateId,
remark: state.valuesnotice,
stageId:state.updateStageID,
};
@@ -1728,7 +1729,7 @@
} else {
let obj = {
name: state.valuesname,
projectTemplateId: 1,
projectTemplateId: store.state.projectTemplateId,
remark: state.valuesnotice,
stageId:0,
};

View File

@@ -311,17 +311,19 @@
</div>
</template>
<script>
import { reactive, toRefs, ref } from "vue";
import { reactive, toRefs, ref,onMounted } from "vue";
import { message } from "ant-design-vue";
import { useRouter, useRoute } from "vue-router";
// import dayjs from "dayjs";
import * as api from "../../api/indexTemplate";
import { storage } from "../../api/storage";
import {useStore} from "vuex";
// import { toDate } from "../../api/method";
export default {
name: "projectAdd",
setup() {
const store = useStore();
// 编辑页面跳转过来时候,自动填充表格
const routers = useRoute();
const isEdit = ref(false);
@@ -580,23 +582,7 @@ export default {
console.log(`selected ${key}`, classifyList4);
// systemid = key;
};
//模版滚动加载信息
const templateScroll = (e) => {
// console.log("滚动", e, b);
const { target } = e;
const scrllHeight = target.scrollHeight - target.scrollTop;
const clientHeight = target.clientHeight;
// console.log("scrllHeight", scrllHeight, clientHeight);
if (scrllHeight === 0 && clientHeight === 0) {
state.currentPage = 1;
} else if (scrllHeight - clientHeight == 0) {
// 下拉到底部时
if (state.currentPage < state.totalPages) {
// 如果滑到底部,则加载下一页
state.currentPage++;
}
}
};
// const removeFile = (file) => {
// const index = fileList1.value.indexOf(file);
@@ -619,6 +605,9 @@ export default {
// attach = attachStr;
// };
onMounted(() => {
})
const errorMsgs = {
name: "请输入模板名称",
category: "请选择模板分类",
@@ -646,11 +635,11 @@ export default {
"sourceBelongId": state.projectInfo.sourceBelongId,
"level": state.projectInfo.level,
"systemId": state.projectInfo.systemId,
"boeFlag": state.projectInfo.boeFlag,
"courseSyncFlag": state.projectInfo.courseSyncFlag,
"boeFlag": state.projectInfo.boeFlag ? 1:0,
"courseSyncFlag": state.projectInfo.courseSyncFlag? 1:0,
"notice": "",
"noticeFlag": 0,
"projectTemplateId": 0,
"projectTemplateId": store.state.projectTemplateId,
"remark": "",
"status": 0,
@@ -667,25 +656,7 @@ export default {
}
}
api
.templateEdit({
"beginTime": 0,
"boeFlag": 0,
"category": 0,
"courseSyncFlag": 0,
"endTime": 0,
"level": 0,
"manager": "",
"managerId": "",
"name": "",
"notice": "",
"noticeFlag": 0,
"picUrl": "",
"projectTemplateId": 0,
"remark": "",
"sourceBelongId": 0,
"status": 0,
"systemId": 0
})
.templateEdit(obj)
.then((res) => {
console.log(res);
if (res.status == 200 && res.data.code == 200) {
@@ -708,35 +679,6 @@ export default {
});
};
// 编辑项目模板
const editTemplate = () => {
let obj = {
"beginTime": state.projectInfo.time,
"boeFlag": state.projectInfo.boeFlag,
"category": 0,
"courseSyncFlag": state.projectInfo.courseSyncFlag,
"endTime": state.projectInfo.time,
"level": state.projectInfo.level,
"manager": state.projectInfo.manager,
"managerId": "",
"name": state.projectInfo.name,
"notice": "",
"noticeFlag": 0,
"picUrl": "",
"projectTemplateId": 0,
"remark": state.projectInfo.remark,
"sourceBelongId": state.projectInfo.sourceBelongId,
"status": 0,
"systemId": state.projectInfo.systemId
};
api.templateEdit(obj).methods(obj).then(res => {
message.success("编辑成功")
console.log(res)
}).catch(err => {
message.error("编辑失败"+err)
console.log(err)
})
}
return {
...toRefs(state),
@@ -766,8 +708,6 @@ export default {
isEdit,
backPage,
dateFormatList,
editTemplate,
templateScroll,
};
},
};