#
luxiaotao1123
2024-03-21 96747dd8a534a10cd950b720e23ebf97e42fa2d3
#
4个文件已修改
1个文件已添加
77 ■■■■ 已修改文件
zy-asrs-flow/src/pages/map/index.jsx 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-flow/src/pages/map/utils.js 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/domain/enums/DictType.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/controller/param/MapDataParam.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/service/MapService.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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='保存地图' />
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();
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/domain/enums/DictType.java
New file
@@ -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;
    }
}
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;
}
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";
    }
}