(keyValues: KeyValues)
| 170 | } |
| 171 | |
| 172 | export const getRequestByKeyValues = async (keyValues: KeyValues) => { |
| 173 | try { |
| 174 | let requestQuery: any = requestModel; |
| 175 | Object.entries(keyValues).forEach(([key, value]) => { |
| 176 | requestQuery = requestQuery.where(key, "==", value); |
| 177 | }); |
| 178 | |
| 179 | const requestQueryDoc = await requestQuery.orderBy("createdAt", "desc").limit(1).get(); |
| 180 | if (requestQueryDoc.empty) { |
| 181 | return null; |
| 182 | } |
| 183 | |
| 184 | let requests: any; |
| 185 | requestQueryDoc.forEach((doc: any) => { |
| 186 | requests = { |
| 187 | id: doc.id, |
| 188 | ...doc.data(), |
| 189 | }; |
| 190 | }); |
| 191 | return requests; |
| 192 | } catch (error) { |
| 193 | logger.error(ERROR_WHILE_FETCHING_REQUEST, error); |
| 194 | throw error; |
| 195 | } |
| 196 | }; |
| 197 |
no test coverage detected