Update KsGitCodeParser.vue to fix the references to the parseStatus and reverseEngineeringStatus properties in the Tag components.
This commit is contained in:
@@ -117,7 +117,7 @@
|
|||||||
|
|
||||||
<Column field="ParseStatus" header="Parse Status" sortable>
|
<Column field="ParseStatus" header="Parse Status" sortable>
|
||||||
<template #body="slotProps">
|
<template #body="slotProps">
|
||||||
<Tag :value="slotProps.data.parseStatus" :severity="getStatus(slotProps.data)" />
|
<Tag :value="slotProps.data.parseStatuses[0].status" :severity="getStatus(slotProps.data)" />
|
||||||
</template>
|
</template>
|
||||||
<template #filter="{ filterModel, filterCallback }">
|
<template #filter="{ filterModel, filterCallback }">
|
||||||
<Select v-model="filterModel.value" @change="filterCallback()" :options="parsestatus"
|
<Select v-model="filterModel.value" @change="filterCallback()" :options="parsestatus"
|
||||||
@@ -131,7 +131,8 @@
|
|||||||
|
|
||||||
<Column field="reverseEngineeringStatus" header="RE Status" sortable>
|
<Column field="reverseEngineeringStatus" header="RE Status" sortable>
|
||||||
<template #body="slotProps">
|
<template #body="slotProps">
|
||||||
<Tag :value="slotProps.data.reverseEngineeringStatus" :severity="getStatus(slotProps.data)" />
|
<Tag :value="slotProps.data.revEngineeringStatuses[0].status"
|
||||||
|
:severity="getStatus(slotProps.data)" />
|
||||||
</template>
|
</template>
|
||||||
<template #filter="{ filterModel, filterCallback }">
|
<template #filter="{ filterModel, filterCallback }">
|
||||||
<Select v-model="filterModel.value" @change="filterCallback()" :options="statuses"
|
<Select v-model="filterModel.value" @change="filterCallback()" :options="statuses"
|
||||||
@@ -172,6 +173,10 @@
|
|||||||
@click="parseGitRepo(slotProps.data)" v-tooltip.top="'Start Parsing of Repo'"
|
@click="parseGitRepo(slotProps.data)" v-tooltip.top="'Start Parsing of Repo'"
|
||||||
:disabled="isButtonDisabled(slotProps.data)" />
|
:disabled="isButtonDisabled(slotProps.data)" />
|
||||||
|
|
||||||
|
<Button text raised rounded severity="warn" type="button" class="mr-2" icon="pi pi-play"
|
||||||
|
@click="reverserEnginneringGitRepo(slotProps.data)" v-tooltip.top="'Start RE of Repo'"
|
||||||
|
:disabled="isButtonDisabled(slotProps.data)" />
|
||||||
|
|
||||||
<!--Button text raised rounded severity="warn" type="button" class="mr-2" icon="pi pi-forward"
|
<!--Button text raised rounded severity="warn" type="button" class="mr-2" icon="pi pi-forward"
|
||||||
@click="reIngestWithPullChanges(slotProps.data)"
|
@click="reIngestWithPullChanges(slotProps.data)"
|
||||||
v-tooltip.top="'Ingest Latest changes From Git'" /-->
|
v-tooltip.top="'Ingest Latest changes From Git'" /-->
|
||||||
@@ -222,6 +227,7 @@ import cloneForm from './KsGitCodeParserDialog.vue';
|
|||||||
const showDialog = ref(false);
|
const showDialog = ref(false);
|
||||||
const cloneRepo = (formData) => {
|
const cloneRepo = (formData) => {
|
||||||
try {
|
try {
|
||||||
|
console.log("formaData", formData)
|
||||||
const response = axios.post('/fe-api/ks_git_repos/clone', formData, {
|
const response = axios.post('/fe-api/ks_git_repos/clone', formData, {
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': 'application/json'
|
'Content-Type': 'application/json'
|
||||||
@@ -282,16 +288,19 @@ const handleCloneRepoWebSocketMessage = (data) => {
|
|||||||
|
|
||||||
//updateParsingProgress
|
//updateParsingProgress
|
||||||
const updateParsingProgress = async (data) => {
|
const updateParsingProgress = async (data) => {
|
||||||
|
|
||||||
const updatedData = await Promise.all((data || []).map(async (d) => {
|
const updatedData = await Promise.all((data || []).map(async (d) => {
|
||||||
if (d.parseStatus === "IN PROGRESS") {
|
const firstStatus = d.parseStatuses[0].status;
|
||||||
|
console.log("firstStatus", firstStatus);
|
||||||
|
if (d.parseStatuses[0].status === "IN PROGRESS") {
|
||||||
try {
|
try {
|
||||||
const parseResponse = await axios.get(`/get-parse-status?id=${d.parseId}`);
|
const parseResponse = await axios.get(`/get-parse-status?id=${d.parseStatuses[0].parseProcessId}`);
|
||||||
d.parseInfo = parseResponse.data;
|
d.parseInfo = parseResponse.data;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("Error fetching parse status:", error);
|
console.error("Error fetching parse status:", error);
|
||||||
d.parseInfo = { totalFiles: 0, parsedFiles: 0 };
|
d.parseInfo = { totalFiles: 0, parsedFiles: 0 };
|
||||||
}
|
}
|
||||||
} else if (d.parseStatus === "DONE") {
|
} else if (d.parseStatuses[0].status === "DONE") {
|
||||||
d.parseInfo = { totalFiles: 1, parsedFiles: 1 };
|
d.parseInfo = { totalFiles: 1, parsedFiles: 1 };
|
||||||
} else {
|
} else {
|
||||||
d.parseInfo = { totalFiles: 0, parsedFiles: 0 };
|
d.parseInfo = { totalFiles: 0, parsedFiles: 0 };
|
||||||
@@ -385,12 +394,7 @@ const parseGitRepo = (data) => {
|
|||||||
console.log(data)
|
console.log(data)
|
||||||
const requestBody = {
|
const requestBody = {
|
||||||
id: data.id,
|
id: data.id,
|
||||||
repositoryPath: data.repoPath,
|
|
||||||
applicationName: data.ksGitIngestionInfo.metadata.KsApplicationName,
|
|
||||||
applicationVersion: data.commitId,
|
|
||||||
deleteExistingData: true,
|
deleteExistingData: true,
|
||||||
applicationType: data.codeType,
|
|
||||||
projectName: data.ksGitIngestionInfo.metadata.KsApplicationName,
|
|
||||||
};
|
};
|
||||||
console.log(requestBody);
|
console.log(requestBody);
|
||||||
|
|
||||||
@@ -408,7 +412,7 @@ const parseGitRepo = (data) => {
|
|||||||
severity: 'danger',
|
severity: 'danger',
|
||||||
},
|
},
|
||||||
accept: () => {
|
accept: () => {
|
||||||
axios.post('/parsejava', requestBody)
|
axios.post('/parse', requestBody)
|
||||||
.then((response) => {
|
.then((response) => {
|
||||||
toast.add({ severity: 'success', summary: 'Summary', detail: 'Repository Parsing Started', life: 6000 });
|
toast.add({ severity: 'success', summary: 'Summary', detail: 'Repository Parsing Started', life: 6000 });
|
||||||
console.log('Parsing info:', response.data)
|
console.log('Parsing info:', response.data)
|
||||||
@@ -424,6 +428,47 @@ const parseGitRepo = (data) => {
|
|||||||
})
|
})
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//reverse engineering of git repo functions
|
||||||
|
const reverserEnginneringGitRepo = (data) => {
|
||||||
|
console.log(data)
|
||||||
|
const requestBody = {
|
||||||
|
id: data.id,
|
||||||
|
deleteExistingData: true,
|
||||||
|
};
|
||||||
|
console.log(requestBody);
|
||||||
|
|
||||||
|
confirm.require({
|
||||||
|
target: event.currentTarget,
|
||||||
|
message: 'Are you sure you want to proceed?',
|
||||||
|
icon: 'pi pi-exclamation-circle',
|
||||||
|
rejectProps: {
|
||||||
|
label: 'Cancel',
|
||||||
|
severity: 'secondary',
|
||||||
|
outlined: true
|
||||||
|
},
|
||||||
|
acceptProps: {
|
||||||
|
label: 'Reverse Eng Record',
|
||||||
|
severity: 'danger',
|
||||||
|
},
|
||||||
|
accept: () => {
|
||||||
|
axios.post('/revenginnerapplication', requestBody)
|
||||||
|
.then((response) => {
|
||||||
|
toast.add({ severity: 'success', summary: 'Summary', detail: 'Repository RE Started', life: 6000 });
|
||||||
|
console.log('Parsing info:', response.data)
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
console.error('Error deleting records: ', error)
|
||||||
|
toast.add({ severity: 'error', summary: 'Error', detail: 'Error RE Repository:', life: 6000 });
|
||||||
|
});
|
||||||
|
},
|
||||||
|
reject: () => {
|
||||||
|
toast.add({ severity: 'error', summary: 'Rejected', detail: 'You have rejected', life: 3000 })
|
||||||
|
}
|
||||||
|
})
|
||||||
|
};
|
||||||
|
|
||||||
// ---------------------------------------------------------------------------------------------------------
|
// ---------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -42,18 +42,71 @@
|
|||||||
:options="[{ label: 'Enable', value: true }, { label: 'Disable', value: false }]"
|
:options="[{ label: 'Enable', value: true }, { label: 'Disable', value: false }]"
|
||||||
optionLabel="label" optionValue="value" fluid></Select>
|
optionLabel="label" optionValue="value" fluid></Select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-span-6">
|
<!--div class="col-span-6">
|
||||||
<label for="codeType" class="block font-bold mb-3">Git Token Type</label>
|
<label for="codeType" class="block font-bold mb-3">Git Token Type</label>
|
||||||
<Select id="codeType" v-model="formData.codeType" :options="codeTypes" optionLabel="label"
|
<Select id="codeType" v-model="formData.codeType" :options="codeTypes" optionLabel="label"
|
||||||
optionValue="value" placeholder="Select Git Token Type" fluid></Select>
|
optionValue="value" placeholder="Select Git Token Type" fluid></Select>
|
||||||
|
</div-->
|
||||||
|
<div>
|
||||||
|
<label for="commitId" class="block font-bold mb-3">CommitID</label>
|
||||||
|
<InputText id="commitId" type="text" v-model.trim="formData.commitId" required="true" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="grid grid-cols-12 gap-4">
|
||||||
|
<div class="col-span-6">
|
||||||
|
<div>
|
||||||
|
<label for="projectName" class="block font-bold mb-3">projectName</label>
|
||||||
|
<InputText id="projectName" type="text" v-model.trim="formData.projectName" required="true" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<label for="applicationVersion" class="block font-bold mb-3">applicationVersion</label>
|
||||||
|
<InputText id="applicationVersion" type="text" v-model.trim="formData.applicationVersion"
|
||||||
|
required="true" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Code Types Section -->
|
||||||
|
<div>
|
||||||
|
<h3 class="font-bold mb-3">Code Types</h3>
|
||||||
|
<div v-for="(codeType, index) in formData.codeTypes" :key="index" class="grid grid-cols-12 gap-4">
|
||||||
|
<div class="col-span-4">
|
||||||
|
<label :for="'codeType-' + index" class="block font-bold mb-3">Type</label>
|
||||||
|
<InputText :id="'codeType-' + index" v-model.trim="codeType.type" placeholder="Enter Type"
|
||||||
|
required="true" fluid />
|
||||||
|
</div>
|
||||||
|
<div class="col-span-4">
|
||||||
|
<label :for="'reScenario-' + index" class="block font-bold mb-3">Re Scenario</label>
|
||||||
|
<InputText :id="'reScenario-' + index" v-model.trim="codeType.re_scenario"
|
||||||
|
placeholder="Enter Re Scenario" required="true" fluid />
|
||||||
|
</div>
|
||||||
|
<div class="col-span-4">
|
||||||
|
<label :for="'baseSource-' + index" class="block font-bold mb-3">Base Source</label>
|
||||||
|
<InputText :id="'baseSource-' + index" v-model.trim="codeType.base_source"
|
||||||
|
placeholder="Enter Base Source" required="true" fluid />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- New Entry Row -->
|
||||||
|
<!--div class="grid grid-cols-12 gap-4 mt-4">
|
||||||
|
<div class="col-span-4">
|
||||||
|
<InputText v-model.trim="newCodeType.type" placeholder="Enter Type" required="true" fluid />
|
||||||
|
</div>
|
||||||
|
<div class="col-span-4">
|
||||||
|
<InputText v-model.trim="newCodeType.re_scenario" placeholder="Enter Re Scenario"
|
||||||
|
required="true" fluid />
|
||||||
|
</div>
|
||||||
|
<div class="col-span-4">
|
||||||
|
<InputText v-model.trim="newCodeType.base_source" placeholder="Enter Base Source"
|
||||||
|
required="true" fluid />
|
||||||
|
</div>
|
||||||
|
<div class="col-span-1 flex items-center">
|
||||||
|
<button type="button" @click="addCodeType"
|
||||||
|
class="bg-blue-500 text-white px-4 py-2 rounded">+</button>
|
||||||
|
</div>
|
||||||
|
</div!-->
|
||||||
|
</div>
|
||||||
|
|
||||||
<!--div>
|
|
||||||
<label for="commitId" class="block font-bold mb-3">CommitID</label>
|
|
||||||
<InputText id="commitId" type="text" v-model.trim="formData.commitId" required="true" />
|
|
||||||
</div-->
|
|
||||||
</div>
|
</div>
|
||||||
<div class="button-container">
|
<div class="button-container">
|
||||||
<Button type="button" label="Cancel" text rounded raised :fluid="false" severity="danger"
|
<Button type="button" label="Cancel" text rounded raised :fluid="false" severity="danger"
|
||||||
@@ -68,21 +121,44 @@
|
|||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
|
|
||||||
const formData = ref({
|
const formData = ref({
|
||||||
|
source: 'https://github.com',
|
||||||
repoName: 'shellExecutionThroughAPI',
|
repoName: 'shellExecutionThroughAPI',
|
||||||
group: 'automationtester23',
|
group: 'automationtester23',
|
||||||
source: 'https://github.com',
|
tokenType: 'github',
|
||||||
branch: 'master',
|
branch: 'master',
|
||||||
commitId: 'latest',
|
commitId: 'latest',
|
||||||
tokenType: 'github',
|
projectName: "TestProject01",
|
||||||
|
applicationVersion: "V1.1",
|
||||||
repoPath: 'C:/repos/olympus_ai/gitClone',
|
repoPath: 'C:/repos/olympus_ai/gitClone',
|
||||||
codeParsingToBeDone: false,
|
codeParsingToBeDone: false,
|
||||||
codeType: 'Java',
|
//codeType: 'Java',
|
||||||
defaultChunkSize: 0,
|
defaultChunkSize: 0,
|
||||||
minChunkSize: 0,
|
minChunkSize: 0,
|
||||||
maxNumberOfChunks: 0,
|
maxNumberOfChunks: 0,
|
||||||
minChunkSizeToEmbed: 0
|
minChunkSizeToEmbed: 0,
|
||||||
|
codeTypes: [
|
||||||
|
{ type: "Java", re_scenario: "671617d34aca060d07b4e13d", base_source: "/src/main/java" },
|
||||||
|
{ type: "jsp", re_scenario: "789", base_source: "/Path1" }
|
||||||
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const newCodeType = ref({
|
||||||
|
type: '',
|
||||||
|
re_scenario: '',
|
||||||
|
base_source: ''
|
||||||
|
});
|
||||||
|
|
||||||
|
const addCodeType = () => {
|
||||||
|
if (newCodeType.value.type && newCodeType.value.re_scenario && newCodeType.value.base_source) {
|
||||||
|
formData.value.codeTypes.push({ ...newCodeType.value });
|
||||||
|
newCodeType.value.type = '';
|
||||||
|
newCodeType.value.re_scenario = '';
|
||||||
|
newCodeType.value.base_source = '';
|
||||||
|
} else {
|
||||||
|
alert('Please fill in all fields');
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
const gitSourceURLs = ref([
|
const gitSourceURLs = ref([
|
||||||
{ label: 'https://github.com', value: 'https://github.com' },
|
{ label: 'https://github.com', value: 'https://github.com' },
|
||||||
{ label: 'https://gitlab.gcp.windtre.it', value: 'https://gitlab.gcp.windtre.it' },
|
{ label: 'https://gitlab.gcp.windtre.it', value: 'https://gitlab.gcp.windtre.it' },
|
||||||
@@ -95,12 +171,6 @@ const tokenTypes = ref([
|
|||||||
{ label: 'git-github', value: 'github' }
|
{ label: 'git-github', value: 'github' }
|
||||||
]);
|
]);
|
||||||
|
|
||||||
const codeTypes = ref([
|
|
||||||
{ label: 'Java', value: 'Java' },
|
|
||||||
{ label: 'Python', value: 'python' },
|
|
||||||
{ label: 'SQL', value: 'SQL' }
|
|
||||||
]);
|
|
||||||
|
|
||||||
const isSubmitting = ref(false);
|
const isSubmitting = ref(false);
|
||||||
|
|
||||||
const emit = defineEmits(['submitForm', 'cancel'])
|
const emit = defineEmits(['submitForm', 'cancel'])
|
||||||
@@ -122,11 +192,13 @@ const submitForm = () => {
|
|||||||
formDataToSend.append('commitId', formData.value.commitId);
|
formDataToSend.append('commitId', formData.value.commitId);
|
||||||
formDataToSend.append('tokenType', formData.value.tokenType);
|
formDataToSend.append('tokenType', formData.value.tokenType);
|
||||||
formDataToSend.append('codeParsingToBeDone', true);
|
formDataToSend.append('codeParsingToBeDone', true);
|
||||||
formDataToSend.append('codeType', formData.value.codeType);
|
formDataToSend.append('codeTypes', JSON.stringify(formData.value.codeTypes));
|
||||||
formDataToSend.append('defaultChunkSize', formData.value.defaultChunkSize);
|
formDataToSend.append('defaultChunkSize', formData.value.defaultChunkSize);
|
||||||
formDataToSend.append('minChunkSize', formData.value.minChunkSize);
|
formDataToSend.append('minChunkSize', formData.value.minChunkSize);
|
||||||
formDataToSend.append('maxNumberOfChunks', formData.value.maxNumberOfChunks);
|
formDataToSend.append('maxNumberOfChunks', formData.value.maxNumberOfChunks);
|
||||||
formDataToSend.append('minChunkSizeToEmbed', formData.value.minChunkSizeToEmbed);
|
formDataToSend.append('minChunkSizeToEmbed', formData.value.minChunkSizeToEmbed);
|
||||||
|
formDataToSend.append('projectName', formData.value.projectName);
|
||||||
|
formDataToSend.append('applicationVersion', formData.value.applicationVersion);
|
||||||
//console.log(formData);
|
//console.log(formData);
|
||||||
|
|
||||||
const json = formDatatoJson(formDataToSend);
|
const json = formDatatoJson(formDataToSend);
|
||||||
@@ -137,7 +209,11 @@ const submitForm = () => {
|
|||||||
function formDatatoJson(formData) {
|
function formDatatoJson(formData) {
|
||||||
const jsonObject = {};
|
const jsonObject = {};
|
||||||
formData.forEach((value, key) => {
|
formData.forEach((value, key) => {
|
||||||
jsonObject[key] = value;
|
if (key === 'codeTypes' && typeof value === 'string') {
|
||||||
|
jsonObject[key] = JSON.parse(value);
|
||||||
|
} else {
|
||||||
|
jsonObject[key] = value;
|
||||||
|
}
|
||||||
})
|
})
|
||||||
return jsonObject;
|
return jsonObject;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user