package com.shipyard.inventory import android.Manifest import android.content.Intent import android.content.pm.PackageManager import android.os.Bundle import android.widget.Button import android.widget.TextView import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import androidx.core.app.ActivityCompat import androidx.core.content.ContextCompat class MainActivity : AppCompatActivity() { private lateinit var statusText: TextView override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) statusText = findViewById(R.id.tvStatus) val scanBtn: Button = findViewById(R.id.btnScan) if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, arrayOf(Manifest.permission.CAMERA, Manifest.permission.ACCESS_FINE_LOCATION), 101) } scanBtn.setOnClickListener { val intent = Intent(this, ScannerActivity::class.java) startActivityForResult(intent, 200) } } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) if (requestCode == 200 && resultCode == RESULT_OK) { val qrCode = data?.getStringExtra("SCAN_RESULT") ?: return statusText.text = "Scanned QR: $qrCode. Syncing GPS & Status..." // Example Tool ID #1 for demonstration. Syncing hardcoded GPS coordinates for field validation. ApiService.updateToolLocationAndStatus(1, "In Yard", 29.3544, -89.6012) { success, msg -> runOnUiThread { Toast.makeText(this, msg, Toast.LENGTH_LONG).show() statusText.text = "Sync Complete: $msg" } } } } }