v1.2.1 - SonarQube scanning issues fixed.
This commit is contained in:
@@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [1.2.1] - 2025-07-22
|
||||
|
||||
### Fixed
|
||||
- SonarQube代码质量检查问题修改
|
||||
|
||||
## [1.2.0] - 2025-07-21
|
||||
|
||||
### Added
|
||||
|
||||
20
demo/App.vue
20
demo/App.vue
@@ -118,14 +118,14 @@ const handleMilestoneDelete = async (milestoneId: number) => {
|
||||
window.dispatchEvent(
|
||||
new CustomEvent('milestone-deleted', {
|
||||
detail: { milestoneId },
|
||||
}),
|
||||
})
|
||||
)
|
||||
|
||||
// 触发强制更新事件,确保Timeline重新渲染
|
||||
window.dispatchEvent(
|
||||
new CustomEvent('milestone-data-changed', {
|
||||
detail: { milestones: milestones.value },
|
||||
}),
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
@@ -219,7 +219,7 @@ const handleTaskUpdate = (updatedTask: Task) => {
|
||||
showMessage(
|
||||
formatTranslation('newParentTaskNotFound', { parentId: taskToAdd.parentId }),
|
||||
'warning',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
tasks.value.push(taskToAdd)
|
||||
}
|
||||
@@ -267,7 +267,7 @@ const handleTaskAdd = (newTask: Task) => {
|
||||
const maxId = Math.max(
|
||||
...tasks.value.map(t => t.id || 0),
|
||||
...milestones.value.map(m => m.id || 0),
|
||||
0,
|
||||
0
|
||||
)
|
||||
newTask.id = maxId + 1
|
||||
}
|
||||
@@ -362,7 +362,7 @@ const handleStoryDeleteWithChildren = (storyToDelete: Task) => {
|
||||
'success',
|
||||
{
|
||||
closable: false,
|
||||
},
|
||||
}
|
||||
)
|
||||
return true
|
||||
}
|
||||
@@ -424,7 +424,7 @@ const handleStoryDeleteOnly = (storyToDelete: Task) => {
|
||||
'success',
|
||||
{
|
||||
closable: false,
|
||||
},
|
||||
}
|
||||
)
|
||||
return true
|
||||
}
|
||||
@@ -498,7 +498,7 @@ function handleTaskbarDragOrResizeEnd(newTask) {
|
||||
`开始: ${oldTask.startDate} → ${newTask.startDate}\n` +
|
||||
`结束: ${oldTask.endDate} → ${newTask.endDate}`,
|
||||
'info',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
}
|
||||
function handleMilestoneDragEnd(newMilestone) {
|
||||
@@ -508,7 +508,7 @@ function handleMilestoneDragEnd(newMilestone) {
|
||||
`里程碑【${newMilestone.name}】\n` +
|
||||
`开始: ${oldMilestone.endDate} → ${newMilestone.startDate}`,
|
||||
'info',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
}
|
||||
|
||||
@@ -573,9 +573,9 @@ const collectAllTaskIds = (task: Task): number[] => {
|
||||
// Timer事件处理
|
||||
function onTimerStarted(task: Task) {
|
||||
showMessage(
|
||||
`Demo 任务【${task.name}】\n开始计时:${new Date(task.timerStartTime).toLocaleString()}${task.timerStartDesc ? `\n计时说明:${task.timerStartDesc}` : ''}`,
|
||||
`Demo 任务【${task.name}】\n开始计时:${new Date(task.timerStartTime).toLocaleString()}\n计时说明:${task.timerStartDesc ? task.timerStartDesc : ''}`,
|
||||
'info',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
}
|
||||
function onTimerStopped(task: Task) {
|
||||
|
||||
@@ -157,5 +157,10 @@
|
||||
"GanttChart增加@task-updated(编辑任务完成)事件",
|
||||
"升级TaskDrawer统一在GanttChart中管理"
|
||||
]
|
||||
},
|
||||
{
|
||||
"version": "1.2.1",
|
||||
"date": "2025-07-22",
|
||||
"notes": ["SonarQube代码质量检查问题修改"]
|
||||
}
|
||||
]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jordium-gantt-vue3",
|
||||
"version": "1.2.0",
|
||||
"version": "1.2.1",
|
||||
"type": "module",
|
||||
"main": "dist/jordium-gantt-vue3.cjs.js",
|
||||
"module": "dist/jordium-gantt-vue3.es.js",
|
||||
|
||||
@@ -118,14 +118,14 @@ const handleMilestoneDelete = async (milestoneId: number) => {
|
||||
window.dispatchEvent(
|
||||
new CustomEvent('milestone-deleted', {
|
||||
detail: { milestoneId },
|
||||
}),
|
||||
})
|
||||
)
|
||||
|
||||
// 触发强制更新事件,确保Timeline重新渲染
|
||||
window.dispatchEvent(
|
||||
new CustomEvent('milestone-data-changed', {
|
||||
detail: { milestones: milestones.value },
|
||||
}),
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
@@ -219,7 +219,7 @@ const handleTaskUpdate = (updatedTask: Task) => {
|
||||
showMessage(
|
||||
formatTranslation('newParentTaskNotFound', { parentId: taskToAdd.parentId }),
|
||||
'warning',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
tasks.value.push(taskToAdd)
|
||||
}
|
||||
@@ -267,7 +267,7 @@ const handleTaskAdd = (newTask: Task) => {
|
||||
const maxId = Math.max(
|
||||
...tasks.value.map(t => t.id || 0),
|
||||
...milestones.value.map(m => m.id || 0),
|
||||
0,
|
||||
0
|
||||
)
|
||||
newTask.id = maxId + 1
|
||||
}
|
||||
@@ -362,7 +362,7 @@ const handleStoryDeleteWithChildren = (storyToDelete: Task) => {
|
||||
'success',
|
||||
{
|
||||
closable: false,
|
||||
},
|
||||
}
|
||||
)
|
||||
return true
|
||||
}
|
||||
@@ -424,7 +424,7 @@ const handleStoryDeleteOnly = (storyToDelete: Task) => {
|
||||
'success',
|
||||
{
|
||||
closable: false,
|
||||
},
|
||||
}
|
||||
)
|
||||
return true
|
||||
}
|
||||
@@ -498,7 +498,7 @@ function handleTaskbarDragOrResizeEnd(newTask) {
|
||||
`开始: ${oldTask.startDate} → ${newTask.startDate}\n` +
|
||||
`结束: ${oldTask.endDate} → ${newTask.endDate}`,
|
||||
'info',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
}
|
||||
function handleMilestoneDragEnd(newMilestone) {
|
||||
@@ -508,7 +508,7 @@ function handleMilestoneDragEnd(newMilestone) {
|
||||
`里程碑【${newMilestone.name}】\n` +
|
||||
`开始: ${oldMilestone.endDate} → ${newMilestone.startDate}`,
|
||||
'info',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
}
|
||||
|
||||
@@ -573,9 +573,9 @@ const collectAllTaskIds = (task: Task): number[] => {
|
||||
// Timer事件处理
|
||||
function onTimerStarted(task: Task) {
|
||||
showMessage(
|
||||
`Demo 任务【${task.name}】\n开始计时:${new Date(task.timerStartTime).toLocaleString()}${task.timerStartDesc ? `\n计时说明:${task.timerStartDesc}` : ''}`,
|
||||
`Demo 任务【${task.name}】\n开始计时:${new Date(task.timerStartTime).toLocaleString()}\n计时说明:${task.timerStartDesc ? task.timerStartDesc : ''}`,
|
||||
'info',
|
||||
{ closable: true },
|
||||
{ closable: true }
|
||||
)
|
||||
}
|
||||
function onTimerStopped(task: Task) {
|
||||
|
||||
@@ -157,5 +157,10 @@
|
||||
"GanttChart增加@task-updated(编辑任务完成)事件",
|
||||
"升级TaskDrawer统一在GanttChart中管理"
|
||||
]
|
||||
},
|
||||
{
|
||||
"version": "1.2.1",
|
||||
"date": "2025-07-22",
|
||||
"notes": ["SonarQube代码质量检查问题修改"]
|
||||
}
|
||||
]
|
||||
|
||||
@@ -41,7 +41,7 @@ const availableTasks = computed(() => {
|
||||
task =>
|
||||
task.type === 'task' &&
|
||||
task.id !== props.currentTaskId &&
|
||||
!selectedPredecessorIds.value.includes(task.id),
|
||||
!selectedPredecessorIds.value.includes(task.id)
|
||||
)
|
||||
})
|
||||
|
||||
@@ -69,13 +69,13 @@ watch(
|
||||
() => {
|
||||
selectedValue.value = ''
|
||||
},
|
||||
{ immediate: true },
|
||||
{ immediate: true }
|
||||
)
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="multi-select-predecessor">
|
||||
<label class="form-label">{{ label }}</label>
|
||||
<label class="form-label" for="predecessor-select">{{ label }}</label>
|
||||
<div class="predecessor-selector">
|
||||
<!-- 已选择的前置任务标签 -->
|
||||
<div v-if="selectedPredecessors.length > 0" class="selected-tags">
|
||||
@@ -89,7 +89,12 @@ watch(
|
||||
|
||||
<!-- 下拉选择器 -->
|
||||
<div class="select-wrapper">
|
||||
<select v-model="selectedValue" class="form-select" @change="addPredecessor">
|
||||
<select
|
||||
id="predecessor-select"
|
||||
v-model="selectedValue"
|
||||
class="form-select"
|
||||
@change="addPredecessor"
|
||||
>
|
||||
<option value="">{{ placeholder }}</option>
|
||||
<option v-for="task in availableTasks" :key="task.id" :value="task.id">
|
||||
{{ task.name }} (ID: {{ task.id }})
|
||||
|
||||
@@ -1117,10 +1117,6 @@ function confirmTimer(desc: string) {
|
||||
background: var(--gantt-primary, #409eff);
|
||||
}
|
||||
|
||||
.progress-slider::-moz-range-track {
|
||||
background: var(--gantt-border-light, #e4e7ed);
|
||||
}
|
||||
|
||||
/* 为更好的兼容性,添加一个伪元素来显示已完成部分 */
|
||||
.progress-slider::before {
|
||||
content: '';
|
||||
|
||||
Reference in New Issue
Block a user