Untitled
unknown
plain_text
2 years ago
6.5 kB
4
Indexable
suspend fun getSectionIdsFromApi() : MutableSet<Int> = withContext(Dispatchers.IO){ Log.d(TAG, "callled: ") val client = OkHttpClient() uniquesectionIds.clear() val uniqueidslist = mutableSetOf<Int>() val url = "https://stagegeospatial.digital.lntecc.com/dg-360-api/api/v1/modules" // Append the ID as a query parameter in the URL val ss = database.userDao().getallprojectdata().get(0).projectId val requestBody = FormBody.Builder() .add("projectId", ss) .build() val pd = ProgressDialog(this@MainActivity) pd.setMessage("Loading... ") pd.setCancelable(false) pd.show() val request = Request.Builder() .url(url) .post(requestBody) .build() client.newCall(request).enqueue(object : Callback { override fun onFailure(call: Call, e: IOException) { pd.dismiss() Log.d(ContentValues.TAG, "onFailure:outdoor " + e.message) // progressBar.visibility = View.GONE } override fun onResponse(call: Call, response: Response) { runOnUiThread { // Stuff that updates the UI try { if (pd.isShowing) { pd.dismiss() } val json = response.body!!.string() val jsonObject = JSONObject(json) val msg = jsonObject.get("message") val sts = jsonObject.get("status") val dataobj = jsonObject.getJSONObject("data") // Log.d(ContentValues.TAG, "onResp allcluster apiresp=" + json) if (sts == false) { Toast.makeText(this@MainActivity, msg.toString(), Toast.LENGTH_SHORT).show() } else if (sts == true) { val project_id = dataobj.getString("project_id") val selectedProId = database.userDao().getallprojectdata().get(0).projectId var stringis = "is_indoor" if(inorout == 1){ stringis = "is_outdoor" }else{ stringis = "is_indoor" } val isindoor = dataobj.get(stringis) if (isindoor == true && selectedProId.equals(project_id)) { val imagesArray = dataobj.getJSONArray("images") if (imagesArray != null && imagesArray.length() > 0) { for (i in 0 until imagesArray.length()) { // Level id and project id condtin == or ! val datesArray = imagesArray.getJSONObject(i).getJSONArray("data") // checking data points empty or not if (datesArray != null && datesArray.length() > 0) { // geoPoints.clear() for (j in 0 until datesArray.length()) { val dates = database.userDao().getallprojectdata().get(0).createdDate val insidedatesArray = datesArray.getJSONObject(j).getJSONArray("data") if (insidedatesArray != null && insidedatesArray.length() > 0) { for (k in 0 until insidedatesArray.length()) { val mid = insidedatesArray.getJSONObject(k).get("mid") val latitude = insidedatesArray.getJSONObject(k).get("latitude") if (latitude != null) { val xval = latitude if (!xval.toString().equals("null")) { if (dates.equals(datesArray.getJSONObject(j).getString("date"))) { // uploaded green marker // Log.d(TAG, "dateeuwal:545= "+imagesArray.getJSONObject(i).get("name")) if(imagesArray.getJSONObject(i).get("id").toString().length>0){ uniquesectionIds.add( imagesArray.getJSONObject(i).get("id") as Int) uniqueidslist.add( imagesArray.getJSONObject(i).get("id") as Int) } Log.d(TAG, "onResponse: "+uniqueidslist) } } } } } } } } } } } } catch (ex: JSONException) { Log.d("err", "onResponse:outdoor " + ex.message) } } } }) Log.d(TAG, "callled2=: "+uniqueidslist) uniquesectionIds.clear() uniquesectionIds = uniqueidslist Log.d(TAG, "callled3: "+uniquesectionIds) uniquesectionIds }
Editor is loading...