용어집 수정

This commit is contained in:
khj0414 2025-03-06 15:26:35 +09:00
parent 278605e5d9
commit 9777553500
4 changed files with 127 additions and 22 deletions

View File

@ -31,6 +31,7 @@ import io.company.localhost.common.dto.ApiResponse;
import io.company.localhost.common.dto.MapDto; import io.company.localhost.common.dto.MapDto;
import io.company.localhost.service.commoncodService; import io.company.localhost.service.commoncodService;
import io.company.localhost.service.worddictyService; import io.company.localhost.service.worddictyService;
import io.company.localhost.utils.AuthUtil;
import io.company.localhost.vo.MemberVo; import io.company.localhost.vo.MemberVo;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -65,7 +66,7 @@ public class worddictController {
} }
/** /**
* 용어집 카테고리 목록 * 용어집 검색정렬 목록
* @param * @param
* @return * @return
*/ */
@ -77,6 +78,18 @@ public class worddictController {
return ApiResponse.ok(WordCategoryList); return ApiResponse.ok(WordCategoryList);
} }
/** /**
* 용어집 카테고리 목록
* @param
* @return
*/
@Member
@ParameterCheck
@GetMapping("getIndexCategory")
public ApiResponse<List<MapDto>> selectIndexCategory() {
List<MapDto> selectIndexCategory = worddictyservice.selectIndexCategory();
return ApiResponse.ok(selectIndexCategory);
}
/**
* 용어집 상세 조회 * 용어집 상세 조회
* @param WRDDICSEQ 용어 번호 * @param WRDDICSEQ 용어 번호
* @return * @return
@ -94,11 +107,9 @@ public class worddictController {
*/ */
@Member @Member
@PostMapping("insertWord") @PostMapping("insertWord")
public ApiResponse<Long> insertWord(@AuthenticationPrincipal MemberVo memberVo,@ReqMap MapDto map) { public ApiResponse<Long> insertWord(@ReqMap MapDto map) {
//userId
//Long userId = AuthUtil.getUser().getId(); Long userId = AuthUtil.getUser().getId();
//임시
int userId = 38;
map.put("userId", userId); map.put("userId", userId);
Long result = worddictyservice.insertWord(map); Long result = worddictyservice.insertWord(map);
@ -112,12 +123,10 @@ public class worddictController {
@Member @Member
@ParameterCheck @ParameterCheck
@PatchMapping("updateWord") @PatchMapping("updateWord")
public ApiResponse<Long> updateWord(@AuthenticationPrincipal MemberVo memberVo,@ReqMap MapDto map) { public ApiResponse<Long> updateWord(@ReqMap MapDto map) {
//userId //userId
//Long userId = AuthUtil.getUser().getId(); Long userId = AuthUtil.getUser().getId();
//임시
int userId = 38;
map.put("userId", userId); map.put("userId", userId);
Long result = worddictyservice.updateWord(map); Long result = worddictyservice.updateWord(map);

View File

@ -35,10 +35,6 @@ public interface worddictyMapper {
Long updateword(MapDto map); Long updateword(MapDto map);
List<MapDto> selectIndexCategory();
} }

View File

@ -67,11 +67,15 @@ public class worddictyService {
return processedList; return processedList;
} }
public Long insertWord(MapDto map) { public Long insertWord(MapDto map) {
Long result = 1L;
if (map.containsKey("CMNCODNAM") && map.get("CMNCODNAM") != null) { if (map.containsKey("CMNCODNAM") && map.get("CMNCODNAM") != null && map.get("CMNCODNAM") != "") {
commoncodmapper.insertCategory(map); commoncodmapper.insertCategory(map);
result = 2L;
} }
return worddictymapper.insertWord(map); worddictymapper.insertWord(map);
return result;
} }
public Long updateWord(MapDto map) { public Long updateWord(MapDto map) {
return worddictymapper.updateWord(map); return worddictymapper.updateWord(map);
@ -85,4 +89,7 @@ public class worddictyService {
public Long updateword(MapDto map) { public Long updateword(MapDto map) {
return worddictymapper.updateword(map); return worddictymapper.updateword(map);
} }
public List<MapDto> selectIndexCategory() {
return worddictymapper.selectIndexCategory();
}
} }

View File

@ -26,7 +26,7 @@
and w.WRDDICTTL BETWEEN '라' AND '릿' and w.WRDDICTTL BETWEEN '라' AND '릿'
</when> </when>
<when test='indexKeyword == "ㅁ"'> <when test='indexKeyword == "ㅁ"'>
and w.WRDDICTTL BETWEEN '마' AND '' and w.WRDDICTTL BETWEEN '마' AND ''
</when> </when>
<when test='indexKeyword == "ㅂ"'> <when test='indexKeyword == "ㅂ"'>
and w.WRDDICTTL BETWEEN '바' AND '빟' and w.WRDDICTTL BETWEEN '바' AND '빟'
@ -249,4 +249,97 @@
#{id} #{id}
</foreach> </foreach>
</update> </update>
<select id="selectIndexCategory">
SELECT
CHARACTER_,
COUNT(*) AS COUNT
FROM (
SELECT 'ㄱ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '가' AND '깋'
UNION ALL
SELECT 'ㄴ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '나' AND '닣'
UNION ALL
SELECT 'ㄷ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '다' AND '딷'
UNION ALL
SELECT 'ㄹ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '라' AND '릿'
UNION ALL
SELECT 'ㅁ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '마' AND '밓'
UNION ALL
SELECT 'ㅂ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '바' AND '빟'
UNION ALL
SELECT 'ㅅ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '사' AND '싷'
UNION ALL
SELECT 'ㅇ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '아' AND '잏'
UNION ALL
SELECT 'ㅈ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '자' AND '짛'
UNION ALL
SELECT 'ㅊ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '차' AND '칳'
UNION ALL
SELECT 'ㅋ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '카' AND '킿'
UNION ALL
SELECT 'ㅌ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '타' AND '틷'
UNION ALL
SELECT 'ㅍ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '파' AND '핗'
UNION ALL
SELECT 'ㅎ' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL BETWEEN '하' AND '힣'
UNION ALL
SELECT 'a' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'a%'
UNION ALL
SELECT 'b' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'b%'
UNION ALL
SELECT 'c' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'c%'
UNION ALL
SELECT 'd' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'd%'
UNION ALL
SELECT 'e' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'e%'
UNION ALL
SELECT 'f' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'f%'
UNION ALL
SELECT 'g' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'g%'
UNION ALL
SELECT 'h' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'h%'
UNION ALL
SELECT 'i' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'i%'
UNION ALL
SELECT 'j' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'j%'
UNION ALL
SELECT 'k' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'k%'
UNION ALL
SELECT 'l' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'l%'
UNION ALL
SELECT 'm' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'm%'
UNION ALL
SELECT 'n' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'n%'
UNION ALL
SELECT 'o' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'o%'
UNION ALL
SELECT 'p' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'p%'
UNION ALL
SELECT 'q' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'q%'
UNION ALL
SELECT 'r' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'r%'
UNION ALL
SELECT 's' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 's%'
UNION ALL
SELECT 't' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 't%'
UNION ALL
SELECT 'u' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'u%'
UNION ALL
SELECT 'v' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'v%'
UNION ALL
SELECT 'w' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'w%'
UNION ALL
SELECT 'x' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'x%'
UNION ALL
SELECT 'y' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'y%'
UNION ALL
SELECT 'z' AS CHARACTER_, WRDDICTTL FROM worddicty WHERE WRDDICTTL LIKE 'z%'
) AS combined
GROUP BY CHARACTER_
ORDER BY
CASE
WHEN CHARACTER_ BETWEEN 'ㄱ' AND 'ㅎ' THEN 1
ELSE 2
END,
CHARACTER_
</select>
</mapper> </mapper>