From 96747dd8a534a10cd950b720e23ebf97e42fa2d3 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期四, 21 三月 2024 14:15:48 +0800
Subject: [PATCH] #
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java | 46 +++++++++++++++++++---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/param/MapDataParam.java | 2 +
zy-asrs-flow/src/pages/map/index.jsx | 4 +-
zy-asrs-flow/src/pages/map/utils.js | 8 +++-
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/domain/enums/DictType.java | 17 ++++++++
5 files changed, 66 insertions(+), 11 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/index.jsx b/zy-asrs-flow/src/pages/map/index.jsx
index 05cd74d..a1991fd 100644
--- a/zy-asrs-flow/src/pages/map/index.jsx
+++ b/zy-asrs-flow/src/pages/map/index.jsx
@@ -279,7 +279,7 @@
className='map-header-button'
size={'large'}
onClick={async () => {
- await Utils.fetchMapData(intl);
+ await Utils.fetchMapData(curFloor);
player.hideGridlines();
player.hideStarryBackground();
@@ -318,7 +318,7 @@
className='map-header-button'
size={'large'}
onClick={() => {
- Utils.saveMapData(intl);
+ Utils.saveMapData(intl, curFloor);
}}
>
<FormattedMessage id='map.save' defaultMessage='淇濆瓨鍦板浘' />
diff --git a/zy-asrs-flow/src/pages/map/utils.js b/zy-asrs-flow/src/pages/map/utils.js
index ce6acf7..efd533d 100644
--- a/zy-asrs-flow/src/pages/map/utils.js
+++ b/zy-asrs-flow/src/pages/map/utils.js
@@ -329,6 +329,7 @@
}
export const fetchMapData = async (curFloor) => {
+ console.log(curFloor);
clearMapData();
await Http.doPostPromise('api/map/list', { floor: curFloor }, (res) => {
const mapItemList = res.data.itemList;
@@ -370,7 +371,7 @@
}
-export const saveMapData = async (intl) => {
+export const saveMapData = async (intl, floor) => {
if (!mapContainer) {
return;
}
@@ -397,7 +398,10 @@
})
const closeLoading = message.loading({ content: intl.formatMessage({ id: 'common.loading.api.message', defaultMessage: '绛夊緟鏈嶅姟鍣�......' }), duration: API_TIMEOUT });
- await Http.doPostPromise('api/map/save', { itemList: mapItemList }, (res) => {
+ await Http.doPostPromise('api/map/save', {
+ itemList: mapItemList,
+ floor: floor
+ }, (res) => {
closeLoading();
}).catch((error) => {
closeLoading();
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/domain/enums/DictType.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/domain/enums/DictType.java
new file mode 100644
index 0000000..8a31654
--- /dev/null
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/domain/enums/DictType.java
@@ -0,0 +1,17 @@
+package com.zy.asrs.wcs.common.domain.enums;
+
+public enum DictType {
+
+ BOOLEAN(1),
+ NUMBER(2),
+ STRING(3),
+ JSON(4),
+ IMAGE(5),
+ ;
+
+ public int flag;
+
+ DictType(int flag) {
+ this.flag = flag;
+ }
+}
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/param/MapDataParam.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/param/MapDataParam.java
index 1a3f4ff..e6f8414 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/param/MapDataParam.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/param/MapDataParam.java
@@ -11,6 +11,8 @@
@Data
public class MapDataParam {
+ private Integer floor;
+
public List<MapItem> itemList;
}
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java
index ee3728c..0ec2113 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java
@@ -4,14 +4,16 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.exception.CoolException;
+import com.zy.asrs.wcs.common.domain.enums.DictType;
import com.zy.asrs.wcs.core.map.controller.param.MapDataParam;
import com.zy.asrs.wcs.core.map.controller.param.MapQueryParam;
import com.zy.asrs.wcs.system.entity.Dict;
-import com.zy.asrs.wcs.system.entity.User;
import com.zy.asrs.wcs.system.service.DictService;
import com.zy.asrs.wcs.system.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import java.util.Date;
/**
* Created by vincent on 3/15/2024
@@ -26,13 +28,14 @@
public MapDataParam getMapData(MapQueryParam param, Long userId) {
- String dictFlag = "map-" + param.getFloor();
- Dict dict = dictService.getOne(new LambdaQueryWrapper<Dict>().eq(Dict::getFlag, dictFlag));
+ String mapKey = getMapKey(param.getFloor());
+ Dict dict = dictService.getOne(new LambdaQueryWrapper<Dict>().eq(Dict::getFlag, mapKey));
if (Cools.isEmpty(dict)) {
return null;
} else {
return JSON.parseObject(dict.getValue(), MapDataParam.class) ;
}
+
// User user = userService.getById(userId);
// if (Cools.isEmpty(user.getMemo())) {
@@ -42,11 +45,40 @@
}
public void saveMapData(MapDataParam param, Long userId) {
- User user = userService.getById(userId);
- user.setMemo(JSON.toJSONString(param));
- if (!userService.updateById(user)) {
- throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+
+ String mapKey = getMapKey(param.getFloor());
+ Dict dict = dictService.getOne(new LambdaQueryWrapper<Dict>().eq(Dict::getFlag, mapKey));
+ if (Cools.isEmpty(dict)) {
+ dict = new Dict();
+ dict.setName(mapKey);
+ dict.setFlag(mapKey);
+ dict.setType(DictType.JSON.flag);
+ dict.setValue(JSON.toJSONString(param.getItemList()));
+ if (!dictService.save(dict)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+ }
+ } else {
+ dict.setValue(JSON.toJSONString(param.getItemList()));
+ dict.setUpdateTime(new Date());
+ if (!dictService.updateById(dict)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+ }
}
+
+//
+// User user = userService.getById(userId);
+// user.setMemo(JSON.toJSONString(param));
+// if (!userService.updateById(user)) {
+// throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+// }
+ }
+
+
+ private String getMapKey(Integer floor) {
+ if (null != floor) {
+ return "map-" + floor;
+ }
+ return "map";
}
}
--
Gitblit v1.9.1