fix(scaffold): 기존 UseCase에 단일 Tool 추가 시 새 파일(UseCase)이 생성되는 버그 수정
All checks were successful
Deploy to OCIWP / deploy (push) Successful in 6m10s
All checks were successful
Deploy to OCIWP / deploy (push) Successful in 6m10s
This commit is contained in:
@@ -1660,25 +1660,42 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
document.getElementById('toolForm').addEventListener('submit', function(e) {
|
document.getElementById('toolForm').addEventListener('submit', function(e) {
|
||||||
if (!groupedTools.length) return;
|
const useCaseName = document.getElementById('toolGroupUseCaseName').value.trim();
|
||||||
e.preventDefault();
|
if (useCaseName) {
|
||||||
e.stopImmediatePropagation();
|
e.preventDefault();
|
||||||
try {
|
e.stopImmediatePropagation();
|
||||||
const useCaseName = document.getElementById('toolGroupUseCaseName').value.trim();
|
if (!/^[A-Z][A-Za-z0-9]*$/.test(useCaseName)) {
|
||||||
if (!/^[A-Z][A-Za-z0-9]*$/.test(useCaseName)) throw new Error('UseCase 이름은 PascalCase로 입력해주세요. 예: Customer');
|
alert('UseCase 이름은 PascalCase로 입력해주세요. 예: Customer');
|
||||||
const current = currentToolDefinition();
|
return;
|
||||||
const tools = groupedTools.some(item => item.methodName === current.methodName) ? groupedTools : [...groupedTools, current];
|
}
|
||||||
const data = Object.fromEntries(new FormData(this).entries());
|
try {
|
||||||
fetch('/api/v1/scaffold/tool-group', {
|
const current = currentToolDefinition();
|
||||||
method: 'POST', headers: {'Content-Type': 'application/json'},
|
const tools = groupedTools.some(item => item.methodName === current.methodName) ? groupedTools : [...groupedTools, current];
|
||||||
body: JSON.stringify({useCaseName, moduleName: data.moduleName, author: data.author, date: data.date, tools})
|
const data = Object.fromEntries(new FormData(this).entries());
|
||||||
}).then(response => response.text()).then(result => {
|
|
||||||
const resultBox = document.getElementById('resultBox');
|
const btn = this.querySelector('button[type="submit"]');
|
||||||
resultBox.style.display = 'block'; resultBox.className = result.startsWith('Error:') ? 'error' : 'success';
|
const originalText = btn.innerHTML;
|
||||||
resultBox.textContent = result;
|
btn.innerHTML = '<span class="spinner-border spinner-border-sm" role="status" aria-hidden="true"></span> 처리중...';
|
||||||
});
|
btn.disabled = true;
|
||||||
} catch (error) {
|
|
||||||
alert(error.message);
|
fetch('/api/v1/scaffold/tool-group', {
|
||||||
|
method: 'POST', headers: {'Content-Type': 'application/json'},
|
||||||
|
body: JSON.stringify({useCaseName, moduleName: data.moduleName, author: data.author, date: data.date, tools})
|
||||||
|
}).then(response => response.text()).then(result => {
|
||||||
|
const resultBox = document.getElementById('resultBox');
|
||||||
|
resultBox.style.display = 'block'; resultBox.className = result.startsWith('Error:') ? 'error' : 'success';
|
||||||
|
resultBox.textContent = result + (result.startsWith('Error:') ? '' : "\n\n> Note: Please sync Gradle in your IDE to reflect source code generation.");
|
||||||
|
}).catch(error => {
|
||||||
|
const resultBox = document.getElementById('resultBox');
|
||||||
|
resultBox.style.display = 'block'; resultBox.className = 'error';
|
||||||
|
resultBox.textContent = "Network error: " + error;
|
||||||
|
}).finally(() => {
|
||||||
|
btn.innerHTML = originalText;
|
||||||
|
btn.disabled = false;
|
||||||
|
});
|
||||||
|
} catch (error) {
|
||||||
|
alert(error.message);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user