14769 search by project type
This commit is contained in:
@@ -95,11 +95,74 @@ export default async function ApiProxy(req, res) {
|
||||
WEBAPI_URL + queryUrl + hashAPIPath(queryUrl),
|
||||
azureHeadersPaged(token.access_token)
|
||||
)
|
||||
.then(({ data }) => {
|
||||
.then(async ({ data }) => {
|
||||
var dataStr;
|
||||
_.has(data, "@odata.nextLink") == true &&
|
||||
((dataStr = JSON.stringify(data["@odata.nextLink"])),
|
||||
(data["@odata.nextLink"] = dataStr.split("/v8.2/")[1]));
|
||||
|
||||
if (_.has(searchString, "projecttype")) {
|
||||
await updateValueArray(data, token);
|
||||
|
||||
async function updateValueArray(data, token) {
|
||||
for (let i = 0; i < data.value.length; i++) {
|
||||
const item = data.value[i];
|
||||
|
||||
try {
|
||||
// Axios call using the `incidentid` to fetch additional data
|
||||
const response = await axios.get(
|
||||
WEBAPI_URL +
|
||||
"pinswg_sipses?$filter=_pinswg_sipscase_value eq " +
|
||||
item.incidentid +
|
||||
" and _pinswg_projecttype_value eq " +
|
||||
searchString.projecttype +
|
||||
"&$select=_pinswg_projecttype_value" +
|
||||
hashAPIPath(
|
||||
"pinswg_sipses?$filter=_pinswg_sipscase_value eq " +
|
||||
item.incidentid +
|
||||
" and _pinswg_projecttype_value eq " +
|
||||
searchString.projecttype +
|
||||
"&$select=_pinswg_projecttype_value"
|
||||
),
|
||||
azureHeadersPaged(token.access_token)
|
||||
);
|
||||
|
||||
// Assuming the response contains the additional data you want to add
|
||||
// console.log(response.data.value[0]);
|
||||
console.log(response.data.value);
|
||||
|
||||
if (
|
||||
response.data.value.length > 0 &&
|
||||
response.data.value[0]
|
||||
._pinswg_projecttype_value != null
|
||||
) {
|
||||
Object.assign(
|
||||
item,
|
||||
response.data.value[0]
|
||||
); // Update item with new data
|
||||
} else {
|
||||
console.log(
|
||||
`No project type found for incident ID ${item.incidentid}`
|
||||
);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(
|
||||
`Error fetching data for incident ID ${item.incidentid}:`,
|
||||
error
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
data.value = data.value.filter(
|
||||
(item) => item._pinswg_projecttype_value != null
|
||||
);
|
||||
|
||||
data["@odata.count"] = data.value.length;
|
||||
|
||||
// console.log(newDataObj);
|
||||
}
|
||||
|
||||
res.status(200).json(data);
|
||||
})
|
||||
.catch((error) => {
|
||||
|
||||
Reference in New Issue
Block a user