自动化立体仓库 - WMS系统
zjj
2024-11-03 c0ba6b0d452524c0b93dfd66393749af0b3552b2
#同步tag
3个文件已修改
76 ■■■■■ 已修改文件
src/main/java/com/zy/asrs/controller/OpenController.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/entity/param/TagParam.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -19,6 +19,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
 * Created by vincent on 2022/4/8
@@ -42,13 +43,19 @@
    @PostMapping("/tagSync/v1")
    @AppAuth(memo = "物料分类同步")
    public synchronized R tagSync(@RequestHeader(required = false) String appkey,
                                        @RequestBody(required = false) List<TagParam> param,
                                        @RequestBody(required = false) List<Map<String,String>> param,
                                        HttpServletRequest request) {
        auth(appkey, param, request);
        if (Cools.isEmpty(param)) {
            return R.parse(BaseRes.PARAM);
        }
        openService.syncTag(param);
        ArrayList<TagParam> params = new ArrayList<>();
        for (Map<String,String> map : param) {
            TagParam tagParam  = new TagParam(map);
            params.add(tagParam);
        }
        openService.syncTag(params);
        return R.ok();
    }
src/main/java/com/zy/asrs/entity/param/TagParam.java
@@ -3,6 +3,7 @@
import lombok.Data;
import java.util.List;
import java.util.Map;
@Data
public class TagParam {
@@ -12,4 +13,11 @@
    private String SysActive;
    private String ParentName;
    public TagParam(Map<String, String> map) {
        this.ItemClassId = map.get("ItemClassId");
        this.ParentItemClassId = map.get("ParentItemClassId");
        this.Name = map.get("Name");
        this.SysActive = map.get("SysActive");
        this.ParentName = map.get("ParentName");
    }
}
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -705,6 +705,63 @@
                        throw new CoolException("服务器内部错误,请联系管理员");
                    }
                }
                // 二级分类
                Tag secTag = tagService.selectOne(new EntityWrapper<Tag>().eq("memo", tag.getItemClassId()));
                NodeUtils nodeUtils = new NodeUtils();
                nodeUtils.executePath(priTag.getId());
                if (secTag == null) {
                    secTag = new Tag(
                            null,    // 编号
                            tag.getName(),    // 名称
                            priTag.getId(),    // 父级
                            priTag.getName(),    // 父级名称
                            nodeUtils.path.toString(),    // 关联路径
                            nodeUtils.pathName.toString(),    // 关联路径名
                            0,    // 类型
                            null,    // 负责人
                            null,    // 图片
                            null,    // 简要描述
                            null,    // 数量
                            2,    // 等级
                            null,    // 排序
                            1,    // 状态
                            now,    // 添加时间
                            null,    // 添加人员
                            now,    // 修改时间
                            null,    // 修改人员
                            tag.getItemClassId()    // 备注
                    );
                    if (tagMapper.insert(secTag) == 0) {
                        throw new CoolException("服务器内部错误,请联系管理员");
                    }
                }else {
                    secTag.setName(tag.getName());
                    secTag.setParentId(priTag.getId());
                    secTag.setParentName(priTag.getName());
                    secTag.setPath(nodeUtils.path.toString());
                    secTag.setPathName(nodeUtils.pathName.toString());
                    if (tagMapper.updateById(secTag) == 0) {
                        throw new CoolException("服务器内部错误,请联系管理员");
                    }
                    List<Tag> tags = tagService.selectList(new EntityWrapper<Tag>().eq("parent_id", secTag.getId()));
                    if (!Cools.isEmpty(tags)) {
                        for (Tag tag1 : tags) {
                            tag1.setPath(nodeUtils.path.toString()+","+secTag.getId());
                            tag1.setPathName(nodeUtils.pathName.toString()+","+secTag.getName());
                            if (tagMapper.updateById(tag1) == 0) {
                                throw new CoolException("服务器内部错误,请联系管理员");
                            }
                        }
                    }
                }
            }
        });
    }