Merge branch 'main' into board-ji
This commit is contained in:
commit
7e02512011
@ -1,8 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="ps-2">
|
<div class="ps-2" style="font-size: 13px">
|
||||||
<span class="d-flex align-items-center g-2 font_767"><i class="bx bx-map pe-1"></i>{{ place }}</span>
|
<span class="d-flex align-items-center g-2 font_767"><i class="bx bxs-map pe-1"></i>{{ place }}</span>
|
||||||
<span class="d-flex align-items-center g-2 font_767"
|
<span class="d-flex align-items-center g-2 font_767"
|
||||||
><i class="bx bx-time-five pe-1"></i>{{ $common.dateFormatter(time, 'T') }}</span
|
><i class="bx bxs-time-five pe-1"></i>{{ $common.dateFormatter(time, 'T') }}</span
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<img
|
<img
|
||||||
v-if="user"
|
v-if="user"
|
||||||
:src="`${baseUrl}upload/img/profile/${user.profile}`"
|
:src="`${profileImgUrl}profile/${user.profile}`"
|
||||||
alt="Profile Image"
|
alt="Profile Image"
|
||||||
class="w-px-50 h-px-50 rounded-circle"
|
class="w-px-50 h-px-50 rounded-circle"
|
||||||
@error="$event.target.src = '/img/icons/icon.png'"
|
@error="$event.target.src = '/img/icons/icon.png'"
|
||||||
@ -78,6 +78,7 @@
|
|||||||
import '@/assets/css/app-calendar.css';
|
import '@/assets/css/app-calendar.css';
|
||||||
|
|
||||||
const baseUrl = import.meta.env.VITE_DOMAIN;
|
const baseUrl = import.meta.env.VITE_DOMAIN;
|
||||||
|
const profileImgUrl = import.meta.env.VITE_SERVER_IMG_URL;
|
||||||
const user = ref({});
|
const user = ref({});
|
||||||
const userStore = useUserInfoStore();
|
const userStore = useUserInfoStore();
|
||||||
const projectStore = useProjectStore();
|
const projectStore = useProjectStore();
|
||||||
@ -297,7 +298,7 @@
|
|||||||
// 날짜 선택 가능 여부를 확인하는 공통 함수
|
// 날짜 선택 가능 여부를 확인하는 공통 함수
|
||||||
const isSelectableDate = date => {
|
const isSelectableDate = date => {
|
||||||
const checkDate = dayjs(date);
|
const checkDate = dayjs(date);
|
||||||
const isWeekend = checkDate.day() === 0 || checkDate.day() === 6;
|
const isWeekend = checkDate.day() === 0 || checkDate.day() === 6; // 주말체크
|
||||||
// 공휴일 체크
|
// 공휴일 체크
|
||||||
const isHoliday = calendarEvents.value.some(
|
const isHoliday = calendarEvents.value.some(
|
||||||
event =>
|
event =>
|
||||||
@ -315,6 +316,9 @@
|
|||||||
// 선택 불가능한 날짜(과거, 주말, 공휴일)에 동일한 클래스 추가
|
// 선택 불가능한 날짜(과거, 주말, 공휴일)에 동일한 클래스 추가
|
||||||
if (!isSelectableDate(cellDate)) {
|
if (!isSelectableDate(cellDate)) {
|
||||||
classes.push('fc-day-sat-sun');
|
classes.push('fc-day-sat-sun');
|
||||||
|
} else {
|
||||||
|
// 선택 가능한 날짜 포인터 클래스 추가
|
||||||
|
classes.push('clickable');
|
||||||
}
|
}
|
||||||
|
|
||||||
return classes;
|
return classes;
|
||||||
@ -323,7 +327,7 @@
|
|||||||
// 날짜 클릭 이벤트 핸들러
|
// 날짜 클릭 이벤트 핸들러
|
||||||
let todayEL = null;
|
let todayEL = null;
|
||||||
const handleDateClick = info => {
|
const handleDateClick = info => {
|
||||||
if (isSelectableDate(info)) {
|
if (isSelectableDate(info.date)) {
|
||||||
if ($common.isToday(info.date)) {
|
if ($common.isToday(info.date)) {
|
||||||
// 오늘 날짜 클릭 시 클래스 제거하고 요소 저장
|
// 오늘 날짜 클릭 시 클래스 제거하고 요소 저장
|
||||||
todayEL = info.dayEl;
|
todayEL = info.dayEl;
|
||||||
@ -556,7 +560,6 @@
|
|||||||
param.append('day', day);
|
param.append('day', day);
|
||||||
|
|
||||||
if (!weatherStore.dailyWeatherList?.length) {
|
if (!weatherStore.dailyWeatherList?.length) {
|
||||||
console.log(123);
|
|
||||||
await weatherStore.getWeatherInfo();
|
await weatherStore.getWeatherInfo();
|
||||||
//dailyWeatherList.value = weatherStore.dailyWeatherList;
|
//dailyWeatherList.value = weatherStore.dailyWeatherList;
|
||||||
console.log('dailyWeatherList.value: ', dailyWeatherList.value);
|
console.log('dailyWeatherList.value: ', dailyWeatherList.value);
|
||||||
@ -599,4 +602,9 @@
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
text-align: center !important; */
|
text-align: center !important; */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 공휴일만 가로로 넗게 나오게 */
|
||||||
|
::v-deep(.fc-daygrid-event-harness:has(.holiday-event)) {
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -2,7 +2,7 @@
|
|||||||
<div class="ms-2" style="flex: 1">
|
<div class="ms-2" style="flex: 1">
|
||||||
<ul class="row gx-1 mb-0 list-inline">
|
<ul class="row gx-1 mb-0 list-inline">
|
||||||
<li class="col-4 me-0" v-for="(member, index) in members" :key="index">
|
<li class="col-4 me-0" v-for="(member, index) in members" :key="index">
|
||||||
<div class="ratio ratio-1x1 mb-0 profile-list">
|
<div class="ratio ratio-1x1 mb-0">
|
||||||
<img
|
<img
|
||||||
:src="`${profileImgUrl}profile/${member.MEMBERPRF}`"
|
:src="`${profileImgUrl}profile/${member.MEMBERPRF}`"
|
||||||
:style="`border-color: ${member.usercolor} !important;`"
|
:style="`border-color: ${member.usercolor} !important;`"
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<li class="card p-5 mb-2">
|
<li class="card p-4 mb-2">
|
||||||
<DictWrite
|
<DictWrite
|
||||||
v-if="writeStore.isItemActive(item.WRDDICSEQ)"
|
v-if="writeStore.isItemActive(item.WRDDICSEQ)"
|
||||||
@close="writeStore.closeAll();"
|
@close="writeStore.closeAll();"
|
||||||
@ -16,9 +16,9 @@
|
|||||||
<div v-else>
|
<div v-else>
|
||||||
<div class="d-flex align-items-center justify-content-between">
|
<div class="d-flex align-items-center justify-content-between">
|
||||||
<div class="d-flex align-items-center">
|
<div class="d-flex align-items-center">
|
||||||
<span class="btn btn-primary pe-none m-1"
|
<span class="btn btn-primary pe-none m-2"
|
||||||
style="writing-mode: horizontal-tb;">{{ item.category }}</span>
|
style="writing-mode: horizontal-tb;">{{ item.category }}</span>
|
||||||
{{ item.WRDDICTTL }}
|
{{ item.WRDDICTTL }}
|
||||||
</div>
|
</div>
|
||||||
<EditBtn
|
<EditBtn
|
||||||
@click="toggleEdit"
|
@click="toggleEdit"
|
||||||
|
|||||||
@ -223,6 +223,7 @@ import { useRoute } from 'vue-router';
|
|||||||
sendWordRequest(category, wordData, newCodName);
|
sendWordRequest(category, wordData, newCodName);
|
||||||
};
|
};
|
||||||
const sendWordRequest = (category, wordData, data) => {
|
const sendWordRequest = (category, wordData, data) => {
|
||||||
|
|
||||||
const payload = {
|
const payload = {
|
||||||
WRDDICCAT: category,
|
WRDDICCAT: category,
|
||||||
WRDDICTTL: wordData.title,
|
WRDDICTTL: wordData.title,
|
||||||
@ -237,13 +238,15 @@ import { useRoute } from 'vue-router';
|
|||||||
writeButton.value.resetButton();
|
writeButton.value.resetButton();
|
||||||
}
|
}
|
||||||
selectedCategory.value = category;
|
selectedCategory.value = category;
|
||||||
|
const firstChar = getFirstCharacter(wordData.title[0]); // 첫 글자 변환
|
||||||
|
selectedAlphabet.value = firstChar;
|
||||||
|
|
||||||
getwordList(searchText.value, selectedAlphabet.value, selectedCategory.value);
|
getwordList(searchText.value, selectedAlphabet.value, selectedCategory.value);
|
||||||
getIndex();
|
getIndex();
|
||||||
if(res.data.data == '2'){
|
if(res.data.data == '2'){
|
||||||
const newCategory = { label: data, value: category };
|
const newCategory = { label: data, value: category };
|
||||||
cateList.value = [...cateList.value,newCategory];
|
cateList.value = [...cateList.value,newCategory];
|
||||||
}
|
}
|
||||||
selectedAlphabet.value = '';
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@ -285,6 +288,32 @@ import { useRoute } from 'vue-router';
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//초성 /알파벳 변환
|
||||||
|
const getFirstCharacter = (char) => {
|
||||||
|
const CHOSUNG_LIST = [
|
||||||
|
'ㄱ', 'ㄲ', 'ㄴ', 'ㄷ', 'ㄸ', 'ㄹ', 'ㅁ', 'ㅂ', 'ㅃ', 'ㅅ',
|
||||||
|
'ㅆ', 'ㅇ', 'ㅈ', 'ㅉ', 'ㅊ', 'ㅋ', 'ㅌ', 'ㅍ', 'ㅎ'
|
||||||
|
];
|
||||||
|
|
||||||
|
if (!char || char.length === 0) return '';
|
||||||
|
|
||||||
|
const code = char.charCodeAt(0);
|
||||||
|
|
||||||
|
// 한글 범위 (가~힣) → 초성 변환
|
||||||
|
if (code >= 0xAC00 && code <= 0xD7A3) {
|
||||||
|
const index = Math.floor((code - 0xAC00) / (21 * 28));
|
||||||
|
return CHOSUNG_LIST[index];
|
||||||
|
}
|
||||||
|
|
||||||
|
// 영어 소문자 → 대문자로 변환
|
||||||
|
if (char.match(/[a-zA-Z]/)) {
|
||||||
|
return char.toLowerCase();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 기타 문자 (숫자, 특수문자) 그대로 반환
|
||||||
|
return char;
|
||||||
|
};
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user