提交 c63ed817 作者: ZhangJingKun

标签库替换

上级 70c1cbb0
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map 134217728 bytes for Failed to commit area from 0x0000000081800000 to 0x0000000089800000 of length 134217728.
# Possible reasons:
# The system is out of physical RAM or swap space
# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
#
# Out of Memory Error (c:/BuildAgent/work/5ff2f6c26000d570/src/hotspot/os/windows/os_windows.cpp:3281), pid=17532, tid=916
#
# JRE version: (11.0.4+10) (build )
# Java VM: OpenJDK 64-Bit Server VM (11.0.4+10-b304.69, mixed mode, aot, sharing, tiered, compressed oops, g1 gc, windows-amd64)
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows
#
--------------- S U M M A R Y ------------
Command Line: org.jetbrains.git4idea.http.GitAskPassApp Username for 'http://114.115.159.144:8090':
Host: Intel(R) Core(TM) i7-5500U CPU @ 2.40GHz, 4 cores, 7G, Windows 10 , 64 bit Build 19041 (10.0.19041.2364)
Time: Wed Mar 27 11:00:27 2024 й׼ʱ elapsed time: 0 seconds (0d 0h 0m 0s)
--------------- T H R E A D ---------------
Current thread (0x000002874f904000): JavaThread "Unknown thread" [_thread_in_vm, id=916, stack(0x000000c26fd00000,0x000000c26fe00000)]
Stack: [0x000000c26fd00000,0x000000c26fe00000]
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [jvm.dll+0x5db31a]
V [jvm.dll+0x70c395]
V [jvm.dll+0x70d8b8]
V [jvm.dll+0x70df83]
V [jvm.dll+0x23dbb8]
V [jvm.dll+0x5d8a74]
V [jvm.dll+0x5cdb05]
V [jvm.dll+0x2fa5bb]
V [jvm.dll+0x2fa52a]
V [jvm.dll+0x2fa402]
V [jvm.dll+0x2ff2c6]
V [jvm.dll+0x347893]
V [jvm.dll+0x347f96]
V [jvm.dll+0x347993]
V [jvm.dll+0x2d4e28]
V [jvm.dll+0x2d5fd7]
V [jvm.dll+0x6eb717]
V [jvm.dll+0x6ecf0c]
V [jvm.dll+0x354fb9]
V [jvm.dll+0x6d35be]
V [jvm.dll+0x3bd673]
V [jvm.dll+0x3bf9f1]
C [java.exe+0x3763]
C [java.exe+0x17a0c]
C [KERNEL32.DLL+0x17614]
C [ntdll.dll+0x526a1]
--------------- P R O C E S S ---------------
Threads class SMR info:
_java_thread_list=0x000002874debed60, length=0, elements={
}
Java Threads: ( => current thread )
Other Threads:
0x000002874f91a000 GCTaskThread "GC Thread#0" [stack: 0x000000c26fe00000,0x000000c26ff00000] [id=10296]
0x000002874f94a800 ConcurrentGCThread "G1 Main Marker" [stack: 0x000000c26ff00000,0x000000c270000000] [id=16860]
0x000002874f94c800 ConcurrentGCThread "G1 Conc#0" [stack: 0x000000c270000000,0x000000c270100000] [id=8444]
[error occurred during error reporting (printing all threads), id 0xc0000005, EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ff8278f5727]
VM state:not at safepoint (not fully initialized)
VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event])
[0x000002874f900c90] Heap_lock - owner thread: 0x000002874f904000
Heap address: 0x0000000081800000, size: 2024 MB, Compressed Oops mode: Non-zero based: 0x0000000081800000
Narrow klass base: 0x0000000000000000, Narrow klass shift: 0
GC Heap History (0 events):
No events
Deoptimization events (0 events):
No events
Classes redefined (0 events):
No events
Internal exceptions (0 events):
No events
Events (0 events):
No events
Dynamic libraries:
0x00007ff63b300000 - 0x00007ff63b347000 D:\ruanjian\IntelliJIDEA\jbr\bin\java.exe
0x00007ff89ad90000 - 0x00007ff89af88000 C:\WINDOWS\SYSTEM32\ntdll.dll
0x00007ff89a780000 - 0x00007ff89a83f000 C:\WINDOWS\System32\KERNEL32.DLL
0x00007ff8986e0000 - 0x00007ff8989b2000 C:\WINDOWS\System32\KERNELBASE.dll
0x00007ff89a5b0000 - 0x00007ff89a751000 C:\WINDOWS\System32\USER32.dll
0x00007ff8989c0000 - 0x00007ff8989e2000 C:\WINDOWS\System32\win32u.dll
0x00007ff89ad20000 - 0x00007ff89ad4b000 C:\WINDOWS\System32\GDI32.dll
0x00007ff898a40000 - 0x00007ff898b4f000 C:\WINDOWS\System32\gdi32full.dll
0x00007ff898c50000 - 0x00007ff898ced000 C:\WINDOWS\System32\msvcp_win.dll
0x00007ff8985e0000 - 0x00007ff8986e0000 C:\WINDOWS\System32\ucrtbase.dll
0x00007ff888f80000 - 0x00007ff88921a000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll
0x00007ff89a8f0000 - 0x00007ff89a98e000 C:\WINDOWS\System32\msvcrt.dll
0x00007ff899c70000 - 0x00007ff899ca2000 C:\WINDOWS\System32\IMM32.DLL
0x000000005e0c0000 - 0x000000005e0cd000 D:\ruanjian\360\360Safe\safemon\SafeWrapper.dll
0x00007ff899480000 - 0x00007ff89952e000 C:\WINDOWS\System32\ADVAPI32.dll
0x00007ff89a850000 - 0x00007ff89a8ec000 C:\WINDOWS\System32\sechost.dll
0x00007ff89a990000 - 0x00007ff89aab5000 C:\WINDOWS\System32\RPCRT4.dll
0x00007ff885a30000 - 0x00007ff885adc000 D:\ruanjian\360\360Safe\safemon\libzdtp64.dll
0x00007ff899d30000 - 0x00007ff89a474000 C:\WINDOWS\System32\SHELL32.dll
0x00007ff898dd0000 - 0x00007ff898e25000 C:\WINDOWS\System32\SHLWAPI.dll
0x00007ff88d790000 - 0x00007ff88d79a000 C:\WINDOWS\SYSTEM32\VERSION.dll
0x00007ff887260000 - 0x00007ff887277000 D:\ruanjian\IntelliJIDEA\jbr\bin\vcruntime140.dll
0x00007ff875650000 - 0x00007ff8756ed000 D:\ruanjian\IntelliJIDEA\jbr\bin\msvcp140.dll
0x00007ff827610000 - 0x00007ff8280c8000 D:\ruanjian\IntelliJIDEA\jbr\bin\server\jvm.dll
0x00007ff8996d0000 - 0x00007ff8996d8000 C:\WINDOWS\System32\PSAPI.DLL
0x00007ff885ae0000 - 0x00007ff885ae9000 C:\WINDOWS\SYSTEM32\WSOCK32.dll
0x00007ff899bf0000 - 0x00007ff899c5b000 C:\WINDOWS\System32\WS2_32.dll
0x00007ff8837f0000 - 0x00007ff883817000 C:\WINDOWS\SYSTEM32\WINMM.dll
0x00007ff896260000 - 0x00007ff896272000 C:\WINDOWS\SYSTEM32\kernel.appcore.dll
0x00007ff891660000 - 0x00007ff891671000 D:\ruanjian\IntelliJIDEA\jbr\bin\verify.dll
0x00007ff8848b0000 - 0x00007ff884a94000 C:\WINDOWS\SYSTEM32\DBGHELP.DLL
0x00007ff884820000 - 0x00007ff884855000 C:\WINDOWS\SYSTEM32\dbgcore.DLL
0x00007ff898bc0000 - 0x00007ff898c42000 C:\WINDOWS\System32\bcryptPrimitives.dll
0x00007ff88e5e0000 - 0x00007ff88e609000 D:\ruanjian\IntelliJIDEA\jbr\bin\java.dll
0x00007ff88da40000 - 0x00007ff88da57000 D:\ruanjian\IntelliJIDEA\jbr\bin\zip.dll
0x00007ff893e40000 - 0x00007ff893e4b000 D:\ruanjian\IntelliJIDEA\jbr\bin\jimage.dll
dbghelp: loaded successfully - version: 4.0.5 - missing functions: none
symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;D:\ruanjian\IntelliJIDEA\jbr\bin;C:\WINDOWS\SYSTEM32;C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;D:\ruanjian\360\360Safe\safemon;D:\ruanjian\IntelliJIDEA\jbr\bin\server
VM Arguments:
java_command: org.jetbrains.git4idea.http.GitAskPassApp Username for 'http://114.115.159.144:8090':
java_class_path (initial): D:/ruanjian/IntelliJIDEA/plugins/git4idea/lib/git4idea-rt.jar;D:/ruanjian/IntelliJIDEA/lib/xmlrpc-2.0.1.jar;D:/ruanjian/IntelliJIDEA/lib/commons-codec-1.13.jar;D:/ruanjian/IntelliJIDEA/lib/util.jar
Launcher Type: SUN_STANDARD
[Global flags]
intx CICompilerCount = 3 {product} {ergonomic}
uint ConcGCThreads = 1 {product} {ergonomic}
uint G1ConcRefinementThreads = 4 {product} {ergonomic}
size_t G1HeapRegionSize = 1048576 {product} {ergonomic}
uintx GCDrainStackTargetSize = 64 {product} {ergonomic}
size_t InitialHeapSize = 134217728 {product} {ergonomic}
size_t MarkStackSize = 4194304 {product} {ergonomic}
size_t MaxHeapSize = 2122317824 {product} {ergonomic}
size_t MinHeapDeltaBytes = 1048576 {product} {ergonomic}
uintx NonNMethodCodeHeapSize = 5830092 {pd product} {ergonomic}
uintx NonProfiledCodeHeapSize = 122914074 {pd product} {ergonomic}
uintx ProfiledCodeHeapSize = 122914074 {pd product} {ergonomic}
uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic}
bool SegmentedCodeCache = true {product} {ergonomic}
bool UseCompressedClassPointers = true {lp64_product} {ergonomic}
bool UseCompressedOops = true {lp64_product} {ergonomic}
bool UseG1GC = true {product} {ergonomic}
bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic}
Logging:
Log output configuration:
#0: stdout all=warning uptime,level,tags
#1: stderr all=off uptime,level,tags
Environment Variables:
JAVA_HOME=D:\ruanjian\Java\jdk1.8.0_191
PATH=D:\ruanjian\Git\mingw64\libexec\git-core;D:\ruanjian\Git\mingw64\libexec\git-core;D:\ruanjian\Git\mingw64\bin;D:\ruanjian\Git\usr\bin;C:\Users\Administrator\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\OpenSSH;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin;D:\ruanjian\Java\jdk1.8.0_191\bin;D:\software\node-v16.20.2-win-x64;D:\software\node-v16.20.2\node_global;D:\ruanjian\Git\cmd;D:\software\curl-8.4.0;C:\Users\Administrator\AppData\Local\Microsoft\WindowsApps;C:\Users\Administrator\AppData\Roaming\npm
USERNAME=Administrator
DISPLAY=:0.0
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 61 Stepping 4, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows 10 , 64 bit Build 19041 (10.0.19041.2364)
CPU:total 4 (initial active 4) (2 cores per cpu, 2 threads per core) family 6 model 61 stepping 4, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx, fma
Memory: 4k page, system-wide physical 8094M (528M free)
TotalPageFile size 11953M (AvailPageFile size 6M)
current process WorkingSet (physical memory assigned to process): 11M, peak: 11M
current process commit charge ("private bytes"): 51M, peak: 179M
vm_info: OpenJDK 64-Bit Server VM (11.0.4+10-b304.69) for windows-amd64 JRE (11.0.4+10-b304.69), built on Sep 9 2019 11:39:50 by "" with MS VC++ 14.0 (VS2015)
END.
...@@ -2,6 +2,7 @@ package com.zzsn.leaderbase.controller; ...@@ -2,6 +2,7 @@ package com.zzsn.leaderbase.controller;
import com.zzsn.leaderbase.service.CharacterTagService; import com.zzsn.leaderbase.service.CharacterTagService;
import com.zzsn.leaderbase.vo.Result; import com.zzsn.leaderbase.vo.Result;
import com.zzsn.leaderbase.vo.SysBaseLabelTypeVo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
...@@ -9,7 +10,6 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -9,7 +10,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
...@@ -27,19 +27,28 @@ public class CharacterTagController { ...@@ -27,19 +27,28 @@ public class CharacterTagController {
@Autowired @Autowired
CharacterTagService characterTagService; CharacterTagService characterTagService;
//查询标签列表 /**
* 查询所有标签分类
* @return
*/
@GetMapping("/getTagTypeList")
public Result<?> getTagTypeList(){
log.info("查询所有标签分类");
SysBaseLabelTypeVo vo = characterTagService.getTagTypeList();
return Result.OK(vo);
}
/** /**
* 查询标签列表 * 查询标签列表
* @param type * @param id
* @param category * @param name
* @return * @return
*/ */
@GetMapping("/getTagList") @GetMapping("/getTagList")
public Result<?> getTagList(@RequestParam(name="type",required=false) String type, public Result<?> getTagList(@RequestParam(name="id",required=false) String id,
@RequestParam(name="category",required=false) String category){ @RequestParam(name="name",required=false) String name){
log.info("查询标签列表:{}---{}",type,category); log.info("查询标签列表:{}---{}",id,name);
return characterTagService.getTagList(type, category); return characterTagService.getTagList(id, name);
} }
/** /**
......
package com.zzsn.leaderbase.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
/**
* @Description: 标签类别
* @Author: jeecg-boot
* @Date: 2022-05-12
* @Version: V1.0
*/
@Data
@TableName("sys_base_label_type")
@ApiModel(value="sys_base_label_type对象", description="标签类别")
public class SysBaseLabelType implements Serializable {
private static final long serialVersionUID = 1L;
/**主键*/
@TableId(type = IdType.ASSIGN_ID)
@ApiModelProperty(value = "主键")
private String id;
/**标签编码*/
@Excel(name = "标签编码", width = 15)
@ApiModelProperty(value = "标签编码")
private String labelCode;
/**标签名称*/
@Excel(name = "标签名称", width = 15)
@ApiModelProperty(value = "标签名称")
private String labelName;
/**标签标识*/
@Excel(name = "标签标识", width = 15)
@ApiModelProperty(value = "标签标识")
private String labelMark;
/**说明*/
@Excel(name = "说明", width = 15)
@ApiModelProperty(value = "说明")
private String explanation;
/**创建人*/
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建日期")
private java.util.Date createTime;
/**更新人*/
@ApiModelProperty(value = "更新人")
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新日期")
private java.util.Date updateTime;
/**所属部门*/
@ApiModelProperty(value = "所属部门")
private String sysOrgCode;
/**父级节点*/
@Excel(name = "父级节点", width = 15)
@ApiModelProperty(value = "父级节点")
private String pid;
/**是否有子节点*/
@Excel(name = "是否有子节点", width = 15, dicCode = "yn")
@ApiModelProperty(value = "是否有子节点")
private String hasChild;
/**排序*/
private Integer orderNo;
/**顶层id*/
private String topId;
/**标签类别(如企业、自定义等)*/
private String labelType;
/**标签类型(0-非自定义;1-自定义)*/
private Integer category;
}
...@@ -3,7 +3,10 @@ package com.zzsn.leaderbase.mapper; ...@@ -3,7 +3,10 @@ package com.zzsn.leaderbase.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zzsn.leaderbase.entity.CharacterTag; import com.zzsn.leaderbase.entity.CharacterTag;
import com.zzsn.leaderbase.entity.CharacterTagTop; import com.zzsn.leaderbase.entity.CharacterTagTop;
import com.zzsn.leaderbase.entity.SysBaseLabelType;
import com.zzsn.leaderbase.vo.CharacterVo; import com.zzsn.leaderbase.vo.CharacterVo;
import com.zzsn.leaderbase.vo.SysBaseLabelTypeVo;
import com.zzsn.leaderbase.vo.SysLabelVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List; import java.util.List;
...@@ -17,11 +20,17 @@ import java.util.Map; ...@@ -17,11 +20,17 @@ import java.util.Map;
*/ */
@Mapper @Mapper
public interface CharacterTagMapper extends BaseMapper<CharacterTag> { public interface CharacterTagMapper extends BaseMapper<CharacterTag> {
List<CharacterTag> getTagList(String type, String category);
List<CharacterVo> getCharacterListByTagList(String ids, Integer offset, Integer pageSize); List<CharacterVo> getCharacterListByTagList(String ids, Integer offset, Integer pageSize);
Integer getCharacterListByTagCount(String ids); Integer getCharacterListByTagCount(String ids);
List<String> getTopTag(); List<String> getTopTag();
SysBaseLabelType getSysBaseLabelTypeById(String id);
List<SysBaseLabelType> getgetSysBaseLabelTypeListByPid(String id);
List<SysLabelVo> queryCustomLabel(List<String> ids, String name);
List<SysBaseLabelTypeVo> getTagTypeListAll();
} }
...@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.zzsn.leaderbase.entity.CharacterTag; import com.zzsn.leaderbase.entity.CharacterTag;
import com.zzsn.leaderbase.entity.CharacterTagTop; import com.zzsn.leaderbase.entity.CharacterTagTop;
import com.zzsn.leaderbase.vo.Result; import com.zzsn.leaderbase.vo.Result;
import com.zzsn.leaderbase.vo.SysBaseLabelTypeVo;
import java.util.List;
/** /**
* @Version 1.0 * @Version 1.0
...@@ -13,11 +16,13 @@ import com.zzsn.leaderbase.vo.Result; ...@@ -13,11 +16,13 @@ import com.zzsn.leaderbase.vo.Result;
*/ */
public interface CharacterTagService extends IService<CharacterTag> { public interface CharacterTagService extends IService<CharacterTag> {
Result<?> getTagList(String type, String category); Result<?> getTagList(String id, String name);
Result<?> getCharacterListByTag(String tagName, Integer offset, Integer pageSize); Result<?> getCharacterListByTag(String tagName, Integer offset, Integer pageSize);
void addTagTop(CharacterTagTop characterTagTop); void addTagTop(CharacterTagTop characterTagTop);
Result<?> getTopTag(); Result<?> getTopTag();
SysBaseLabelTypeVo getTagTypeList();
} }
package com.zzsn.leaderbase.service.impl; package com.zzsn.leaderbase.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zzsn.leaderbase.entity.CharacterTag; import com.zzsn.leaderbase.entity.CharacterTag;
import com.zzsn.leaderbase.entity.CharacterTagTop; import com.zzsn.leaderbase.entity.CharacterTagTop;
import com.zzsn.leaderbase.entity.SysBaseLabelType;
import com.zzsn.leaderbase.mapper.CharacterTagMapper; import com.zzsn.leaderbase.mapper.CharacterTagMapper;
import com.zzsn.leaderbase.mapper.CharacterTagTopMapper; import com.zzsn.leaderbase.mapper.CharacterTagTopMapper;
import com.zzsn.leaderbase.service.CharacterTagService; import com.zzsn.leaderbase.service.CharacterTagService;
import com.zzsn.leaderbase.vo.CharacterVo; import com.zzsn.leaderbase.vo.CharacterVo;
import com.zzsn.leaderbase.vo.Result; import com.zzsn.leaderbase.vo.Result;
import com.zzsn.leaderbase.vo.SysBaseLabelTypeVo;
import com.zzsn.leaderbase.vo.SysLabelVo;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/** /**
* @Version 1.0 * @Version 1.0
...@@ -34,10 +37,28 @@ public class CharacterTagServiceImpl extends ServiceImpl<CharacterTagMapper, Cha ...@@ -34,10 +37,28 @@ public class CharacterTagServiceImpl extends ServiceImpl<CharacterTagMapper, Cha
@Autowired @Autowired
CharacterTagTopMapper characterTagTopMapper; CharacterTagTopMapper characterTagTopMapper;
@Value("${sys_base_label_type_id}")
private String sys_base_label_type_id;
@Override @Override
public Result<?> getTagList(String type, String category) { public Result<?> getTagList(String id, String name) {
return Result.OK(characterTagMapper.getTagList(type, category)); if(id == null || id.length() == 0){
id = sys_base_label_type_id;
}
List<SysBaseLabelType> endNodes = getEndNodes(id);
List<String> ids = new ArrayList<>();
if (CollectionUtil.isEmpty(endNodes)){
ids.add(id);
}else {
endNodes.forEach(e->ids.add(e.getId()));
}
// List<SysLabelVo> pageList = null;
// pageList = baseMapper.queryCustomLabel(sysLabelVo, offset, pageSize);
List<SysLabelVo> pageList = characterTagMapper.queryCustomLabel(ids,name);
return Result.OK(pageList);
} }
...@@ -93,6 +114,25 @@ public class CharacterTagServiceImpl extends ServiceImpl<CharacterTagMapper, Cha ...@@ -93,6 +114,25 @@ public class CharacterTagServiceImpl extends ServiceImpl<CharacterTagMapper, Cha
return Result.OK(list); return Result.OK(list);
} }
@Override
public SysBaseLabelTypeVo getTagTypeList() {
// List<SysBaseLabelTypeVo> allList = new ArrayList<>();
//SysBaseLabelTypeVo sysBaseLabelTypeVo = new SysBaseLabelTypeVo();
//sysBaseLabelTypeVo.setId("0");
// sysBaseLabelTypeVo.setLabelName("所有");
// sysBaseLabelTypeVo.setPid("0");
// sysBaseLabelTypeVo.setHasChild("1");
List<SysBaseLabelTypeVo> list = characterTagMapper.getTagTypeListAll();
//只获取人物服务相关的类别
List<SysBaseLabelTypeVo> treeList = getBaseLabelTreeList(list,sys_base_label_type_id);
// sysBaseLabelTypeVo.setChildren(treeList);
// allList.add(sysBaseLabelTypeVo);
// return allList;
if(treeList.size()==1)
return treeList.get(0);
return null;
}
private void addTagTop(String tagName){ private void addTagTop(String tagName){
CharacterTagTop characterTagTop = characterTagTopMapper.getByName(tagName); CharacterTagTop characterTagTop = characterTagTopMapper.getByName(tagName);
...@@ -109,6 +149,78 @@ public class CharacterTagServiceImpl extends ServiceImpl<CharacterTagMapper, Cha ...@@ -109,6 +149,78 @@ public class CharacterTagServiceImpl extends ServiceImpl<CharacterTagMapper, Cha
} }
/**
* 根据标签类别id查询所有的末端节点
* @param id
* @return
*/
public List<SysBaseLabelType> getEndNodes(String id){
List<SysBaseLabelType> list = new ArrayList<>();
//SysBaseLabelType byId = super.getById(id);
SysBaseLabelType byId = characterTagMapper.getSysBaseLabelTypeById(id);
if (ObjectUtil.isEmpty(byId)){
return list;
}
if ("0".equals(byId.getHasChild())){
return list;
}
return getnodes(list,id);
}
/**
* 递归查询
* @param list
* @param id
* @return
*/
private List<SysBaseLabelType> getnodes(List<SysBaseLabelType> list,String id){
//List<SysBaseLabelType> child = super.list(Wrappers.<SysBaseLabelType>lambdaQuery().eq(SysBaseLabelType::getPid, id));
List<SysBaseLabelType> child = characterTagMapper.getgetSysBaseLabelTypeListByPid(id);
child.forEach(e -> {
if ("0".equals(e.getHasChild())){
list.add(e);
}else {
getnodes(list,e.getId());
}
});
return list;
}
//获取树状结构
private List<SysBaseLabelTypeVo> getBaseLabelTreeList(List<SysBaseLabelTypeVo> baseLabelTypeList, String id){
List<SysBaseLabelTypeVo> topList = new ArrayList<>();
baseLabelTypeList.forEach(e->{
if (id.equals(e.getId())) {
topList.add(e);
}
});
for (SysBaseLabelTypeVo sysLabelVo : topList) {
setBaseLabelChildren(sysLabelVo, baseLabelTypeList);
}
return topList;
}
//递归获取树形结构数据
private void setBaseLabelChildren(SysBaseLabelTypeVo parent, List<SysBaseLabelTypeVo> list) {
Set<SysBaseLabelTypeVo> children = getBaseLabelChildren(list, parent.getId());
parent.setChildren(new ArrayList<>(children));
for (SysBaseLabelTypeVo sysLabelVo : children) {
setBaseLabelChildren(sysLabelVo, list);
}
}
private Set<SysBaseLabelTypeVo> getBaseLabelChildren(List<SysBaseLabelTypeVo> list, String id) {
Set<SysBaseLabelTypeVo> children = new HashSet<>();
for (SysBaseLabelTypeVo sysLabelVo : list) {
if (sysLabelVo.getPid().equals(id)) {
children.add(sysLabelVo);
}
}
return children;
}
} }
......
package com.zzsn.leaderbase.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
@Data
public class SysBaseLabelTypeVo {
/**主键*/
private String id;
/**标签名称*/
private String labelName;
/**标签标识*/
private String labelMark;
/**说明*/
private String explanation;
/**创建人*/
private String createBy;
/**创建日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private java.util.Date createTime;
/**更新人*/
private String updateBy;
/**更新日期*/
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private java.util.Date updateTime;
/**所属部门*/
private String sysOrgCode;
/**父级节点*/
private String pid;
/**是否有子节点*/
@Excel(name = "是否有子节点", width = 15, dicCode = "yn")
private String hasChild;
/**排序*/
private Integer orderNo;
/**顶层id*/
private String topId;
/**标签类别(如企业、自定义等)*/
private String labelType;
/**下级节点*/
private java.util.List<SysBaseLabelTypeVo> children;
}
package com.zzsn.leaderbase.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.List;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@JsonInclude(value = JsonInclude.Include.NON_NULL)
public class SysLabelVo {
/**
* 主键
*/
private String id;
/**
* 名称
*/
private String name;
/**
* 近义词
*/
private String synonym;
/**
* 说明
*/
private String explanation;
/**
* 层级
*/
private Integer level;
/**
* 一级主键id
*/
private String topId;
/**
* 所有id
*/
private String pathIds;
/**
* 状态
*/
private Integer status;
/**
* 排序
*/
private Integer sort;
/**
* 创建人
*/
private String createBy;
/**
* 创建日期
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private java.util.Date createTime;
/**
* 更新人
*/
private String updateBy;
/**
* 更新日期
*/
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private java.util.Date updateTime;
/**
* 所属部门
*/
private String sysOrgCode;
/**
* 父级节点
*/
private String pid;
/**
* 是否有子节点
*/
private String hasChild;
/**
* 属于哪个标签(表sys_base_label_type的主键id)
*/
private String labelTypeId;
/**
* 标签类别(如企业、自定义等)
*/
private String labelType;
/**
* 标签标识
*/
private String labelMark;
/**
* 下级节点
*/
private List<SysLabelVo> children;
private Boolean isLeaf;
/**
* 具体标签的id集合
*/
private List<String> labelIdList;
private String queryParam;
private String dataType = "";
/**
* 专题字段
*/
private Integer category;
/**
* 词条名称
*/
private String itemText;
/**
* 词条代码
*/
private String itemValue;
/**
* 描述
*/
private String description;
/**
* 排序值
*/
private String sortOrder;
/**
* 字典id
*/
private String dictId;
/**唯一编码(前端回显)*/
private String code;
}
...@@ -51,4 +51,6 @@ mybatis-plus: ...@@ -51,4 +51,6 @@ mybatis-plus:
mapper-locations: mapper/*.xml mapper-locations: mapper/*.xml
configuration: configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
map-underscore-to-camel-case: true map-underscore-to-camel-case: true
\ No newline at end of file
sys_base_label_type_id: 1772144267639111681
\ No newline at end of file
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
left join ( left join (
select GROUP_CONCAT(a1.tag_id SEPARATOR ',') as tag_id,a1.character_uid,GROUP_CONCAT(b1.name SEPARATOR ',') as tag_name select GROUP_CONCAT(a1.tag_id SEPARATOR ',') as tag_id,a1.character_uid,GROUP_CONCAT(b1.name SEPARATOR ',') as tag_name
from character_tag_map a1 from character_tag_map a1
LEFT JOIN character_tag b1 LEFT JOIN label_entity b1
on a1.tag_id = b1.id on a1.tag_id = b1.id
where 1=1 where 1=1
group by a1.character_uid group by a1.character_uid
......
...@@ -4,20 +4,6 @@ ...@@ -4,20 +4,6 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zzsn.leaderbase.mapper.CharacterTagMapper"> <mapper namespace="com.zzsn.leaderbase.mapper.CharacterTagMapper">
<select id="getTagList" resultType="com.zzsn.leaderbase.entity.CharacterTag">
select
`id`, `name`, `code`, `type`, `category`, `create_by`, `create_time`, `update_by`, `update_time`, `status`, `description`, `sort`
from character_tag
where 1 = 1
<if test="type != null and type != ''">
AND type = #{type}
</if>
<if test="category != null and category != ''">
AND category = #{category}
</if>
order by id
</select>
<select id="getCharacterListByTagList" resultType="com.zzsn.leaderbase.vo.CharacterVo"> <select id="getCharacterListByTagList" resultType="com.zzsn.leaderbase.vo.CharacterVo">
select a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,d.tag_id,d.tag_name, select a.id,a.uid,a.name,a.sex,a.birthplace,a.birthday,a.native_place,a.school,a.speciality,a.education,a.expert_occupation,a.head_sculpture,a.biographical_notes,a.category,a.award_records,a.part_time_job,a.research_field,a.evaluate,a.status,d.tag_id,d.tag_name,
b.type_id,c.type_name,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_time_end,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time b.type_id,c.type_name,b.company_original,b.department_original,b.duty_original,b.company,b.department,b.duty,b.take_office_time,b.take_office_time_end,b.take_office_status,b.change_url,b.duties_update_time,b.duties_update_reason,b.check_status,b.check_result,b.article_id,b.article_title,b.update_desc,b.original_id,b.new_id,b.merge_status,a.create_by,a.create_time,a.update_by,a.update_time
...@@ -29,7 +15,7 @@ ...@@ -29,7 +15,7 @@
right join right join
(select GROUP_CONCAT(a1.tag_id SEPARATOR ',') as tag_id,a1.character_uid,GROUP_CONCAT(b1.name SEPARATOR ',') as tag_name (select GROUP_CONCAT(a1.tag_id SEPARATOR ',') as tag_id,a1.character_uid,GROUP_CONCAT(b1.name SEPARATOR ',') as tag_name
from character_tag_map a1 from character_tag_map a1
LEFT JOIN character_tag b1 LEFT JOIN label_entity b1
on a1.tag_id = b1.id on a1.tag_id = b1.id
where 1=1 where 1=1
and a1.tag_id in ${ids} and a1.tag_id in ${ids}
...@@ -51,9 +37,9 @@ ...@@ -51,9 +37,9 @@
LEFT JOIN character_category_structure c LEFT JOIN character_category_structure c
ON b.type_id = c.id ON b.type_id = c.id
right join right join
(select a1.id,a1.tag_id,a1.character_uid,b1.name,b1.type,b1.category (select a1.id,a1.tag_id,a1.character_uid,b1.name
from character_tag_map a1 from character_tag_map a1
LEFT JOIN character_tag b1 LEFT JOIN label_entity b1
on a1.tag_id = b1.id on a1.tag_id = b1.id
where 1=1 where 1=1
and a1.tag_id in ${ids} and a1.tag_id in ${ids}
...@@ -74,6 +60,44 @@ ...@@ -74,6 +60,44 @@
)t )t
</select> </select>
<select id="getSysBaseLabelTypeById" resultType="com.zzsn.leaderbase.entity.SysBaseLabelType">
select * from sys_base_label_type
where 1=1
and id = #{id}
</select>
<select id="getgetSysBaseLabelTypeListByPid" resultType="com.zzsn.leaderbase.entity.SysBaseLabelType">
select * from sys_base_label_type
where 1=1
and pid = #{id}
</select>
<select id="queryCustomLabel" resultType="com.zzsn.leaderbase.vo.SysLabelVo">
select b.*, a.label_id as labelTypeId, a.label_type as labelType, c.label_mark as labelMark from sys_base_label_type_map a
inner join label_entity b on a.relation_id = b.id and b.pid = 0
left join sys_base_label_type c on a.label_id = c.id
where 1=1
<if test="ids!=null and ids.size()>0">
and a.label_id in
<foreach collection="ids" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="name!=null and name != ''">
and b.name like concat('%',#{name},'%')
</if>
order by b.create_time
</select>
<select id="getTagTypeListAll" resultType="com.zzsn.leaderbase.vo.SysBaseLabelTypeVo">
select * from sys_base_label_type
where 1=1
and category = 1
</select>
</mapper> </mapper>
......
package com.zzsn.leaderbase; package com.zzsn.leaderbase;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.zzsn.leaderbase.service.IGeneratorIdService;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.BoundListOperations;
import org.springframework.data.redis.core.RedisTemplate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -10,13 +14,39 @@ import java.util.List; ...@@ -10,13 +14,39 @@ import java.util.List;
@SpringBootTest @SpringBootTest
class LeaderBaseApplicationTests { class LeaderBaseApplicationTests {
@Autowired
private RedisTemplate redisTemplate;
//生成id
@Autowired
IGeneratorIdService generatorIdService;
@Test @Test
void contextLoads() { void contextLoads() {
for(int i = 0; i < 520; i ++){
String id = String.valueOf(generatorIdService.getOrderId());
System.out.println(id);
}
for(int i = 0; i < 520; i ++){
String uid = generatorIdService.getIdNo();
System.out.println(uid);
}
} }
@Test @Test
void translate(){ void translate(){
String USER_INFO_LIST = "USER_INFO_LIST";
BoundListOperations listOps = redisTemplate.boundListOps(USER_INFO_LIST);
String uid = "U24032200000006";
String name = "汪洋";
listOps.rightPush(uid + "|" + name + "|15238");
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论