|
@@ -380,12 +380,11 @@ export default {
|
|
|
*/
|
|
|
toEdit(data, floorLocalName, infos) {
|
|
|
const { name, id, graphId, buildingId, floorId, version, state } = data,
|
|
|
- { floorMap } = infos,
|
|
|
+ { floorMap = "" } = infos,
|
|
|
{ folderId, folderName } = this;
|
|
|
// 已发布
|
|
|
if (state === "Publish") {
|
|
|
- // TODO: 1111
|
|
|
- // return this.handlePubImgCard(data, floorLocalName, infos);
|
|
|
+ return this.handlePubImgCard(id, graphId, floorLocalName, floorMap);
|
|
|
}
|
|
|
// 未发布,直接跳转编辑器
|
|
|
this.$router.push({
|
|
@@ -399,8 +398,7 @@ export default {
|
|
|
name,
|
|
|
id,
|
|
|
graphId,
|
|
|
- floorMap: floorMap || "",
|
|
|
- state: this.isPub === 1 ? "Publish" : "Draft", // Publish: 已发布 Draft: 未发布
|
|
|
+ floorMap,
|
|
|
version,
|
|
|
},
|
|
|
});
|
|
@@ -410,25 +408,34 @@ export default {
|
|
|
* 如果在未发布中,有当前已发布的图的草稿,使用改未发布的草稿进行跳转
|
|
|
* 没有的话,调用保存接口,生成一张未发布的草稿,使用该草稿进行跳转
|
|
|
*
|
|
|
+ * @param {string} id 图id
|
|
|
+ * @param {string} graphId 图graphId
|
|
|
+ * @param {string} floorLocalName 楼层本地名称
|
|
|
+ * @param {string} floorMap floorMap
|
|
|
*/
|
|
|
- async handlePubImgCard(data, floorLocalName, infos) {
|
|
|
- const { name, id, graphId, buildingId, floorId, version, state } = data,
|
|
|
- { floorMap } = infos,
|
|
|
- { folderId, folderName } = this;
|
|
|
+ async handlePubImgCard(id, graphId, floorLocalName, floorMap) {
|
|
|
+ // 留 id,floorLocalName,floorMap
|
|
|
+ const { folderId, folderName } = this;
|
|
|
const postParams = {
|
|
|
- filters: `folderId='${folderId}'`,
|
|
|
+ filters: `folderId='${folderId}';state='Draft';id='${id}'`,
|
|
|
PageNumber: 1,
|
|
|
PageSize: 1000,
|
|
|
};
|
|
|
- if (this.queryText) {
|
|
|
- postParams.filters += `;name contain '${this.queryText}'`;
|
|
|
- }
|
|
|
const res = await planerQuery(postParams);
|
|
|
if (res.result !== "success") {
|
|
|
this.$message(res.result);
|
|
|
}
|
|
|
+ // 判断 未发布中,是否有该张图的备份草稿,
|
|
|
+ let flag = false;
|
|
|
+ let DraftPlanarGraph = "";
|
|
|
+ if (res.content?.length) {
|
|
|
+ flag = true;
|
|
|
+ DraftPlanarGraph = res.content[0].floorList[0].planarGraphList[0];
|
|
|
+ } else {
|
|
|
+ flag = false;
|
|
|
+ }
|
|
|
// 未发布中有该张图的备份草稿
|
|
|
- if (res.content.filter((v) => v.id === id).length) {
|
|
|
+ if (flag) {
|
|
|
// 点击确认后,会继续后续流程
|
|
|
let confirmRes;
|
|
|
try {
|
|
@@ -442,7 +449,11 @@ export default {
|
|
|
}
|
|
|
// 点击确定,跳转编辑器
|
|
|
// 点击确定 confirmRes返回 confirm, 点击取消,confirmRes返回 undefined
|
|
|
- confirmRes && this.finalToEdit();
|
|
|
+ if (confirmRes) {
|
|
|
+ console.log(DraftPlanarGraph);
|
|
|
+ const { folderId, buildingId, floorId, id, graphId, name, version } = DraftPlanarGraph;
|
|
|
+ this.finalToEdit({ folderId, folderName, buildingId, floorId, floorLocalName, name, id, graphId, floorMap, version });
|
|
|
+ }
|
|
|
} else {
|
|
|
// 未发布中,没有该张图的备份草稿
|
|
|
// 读取该已发布的图信息
|
|
@@ -450,32 +461,24 @@ export default {
|
|
|
if (readRes.result !== "success") {
|
|
|
this.$message(readRes.result);
|
|
|
}
|
|
|
- const { name, projectId, elements, label } = readRes.content;
|
|
|
- const saveParams = {
|
|
|
- graphId,
|
|
|
- graphCoding: id,
|
|
|
- name,
|
|
|
- projectId,
|
|
|
- elements,
|
|
|
- label,
|
|
|
- ruleList: [],
|
|
|
- style: {},
|
|
|
- objExtInfo: {},
|
|
|
- };
|
|
|
// 保存该图,在未发布中,生成一张草稿
|
|
|
- const resSave = await planerSave(saveParams);
|
|
|
+ const resSave = await planerSave(readRes.content);
|
|
|
+ // 取出新建图的版本号
|
|
|
if (resSave.result === "success") {
|
|
|
- this.finalToEdit();
|
|
|
+ const resSaveData = resSave.entityList[0];
|
|
|
+ const { folderId, buildingId, floorId, name, id, graphId, version } = resSaveData;
|
|
|
+ this.finalToEdit({ folderName, floorLocalName, folderId, buildingId, floorId, name, id, graphId, version, floorMap });
|
|
|
} else {
|
|
|
this.$message(resSave.result);
|
|
|
}
|
|
|
- console.log("已发布, 保存生成一张未发布:", resSave);
|
|
|
}
|
|
|
},
|
|
|
/**
|
|
|
* 点击已发布,最终跳转编辑器
|
|
|
*/
|
|
|
- finalToEdit() {},
|
|
|
+ finalToEdit(query) {
|
|
|
+ this.$router.push({ name: "Editer", query });
|
|
|
+ },
|
|
|
/**
|
|
|
* 查询图形信息
|
|
|
* @param { string } floderId 传入的文件ID,新建画布成功之后,会调用该接口
|