正在查看: St.John's v1.0.9 应用的 RequestNewGatePassActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: St.John's v1.0.9 应用的 RequestNewGatePassActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.mcb.stjohnsemschool.activity;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.util.Base64;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Spinner;
import android.widget.SpinnerAdapter;
import android.widget.TextView;
import android.widget.Toast;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.ContextCompat;
import com.mcb.stjohnsemschool.services.ApiClient;
import com.mcb.stjohnsemschool.services.ApiInterface;
import com.mcb.stjohnsemschool.utils.TransparentProgressDialog;
import com.mcb.stjohnsemschool.utils.Utility;
import com.wdullaer.materialdatetimepicker.date.DatePickerDialog;
import com.wdullaer.materialdatetimepicker.time.RadialPickerLayout;
import com.wdullaer.materialdatetimepicker.time.TimePickerDialog;
import java.io.ByteArrayOutputStream;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Locale;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
public class RequestNewGatePassActivity extends AppCompatActivity implements View.OnClickListener, TimePickerDialog.OnTimeSetListener, DatePickerDialog.OnDateSetListener {
private static final int CAMERA_CAPTURE = 1;
public static Activity activity;
int academicYearId;
int branchId;
private ConnectivityManager conMgr;
Context context;
boolean dateComp;
DatePickerDialog dateDialog;
boolean fromDate;
Intent intent;
TextView mCapturePhoto;
TextView mClassAndSection;
SharedPreferences.Editor mEditor;
TextView mEnrollmentCode;
EditText mFromDateEt;
EditText mName;
ImageView mPhoto;
private TransparentProgressDialog mProgressbar;
EditText mReason;
EditText mRelation;
TextView mRelationShipText;
Spinner mRelationship;
SharedPreferences mSharedPref;
TextView mStudentName;
ImageView mStudentPhoto;
EditText mTime;
EditText mToDateEt;
LinearLayout mToDateLl;
int orgId;
LinearLayout relationLl;
int studentEnrollmentId;
TimePickerDialog timePickerDialog;
boolean toDate;
int userId;
int goingWith = 1;
String[] relationships = {"Father", "Mother", "Other"};
String studentName = "";
String studentPhoto = "";
String classSection = "";
String enrollmentCode = "";
String userName = "";
String selectedRelationship = "";
String name = "";
String reason = "";
String permissionGivenBy = "";
String date = "";
String time = "";
String imageDataString = "";
Calendar calendar = Calendar.getInstance();
boolean isSupportMultipleDates = false;
String fromDateStr = "";
String toDateStr = "";
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.activity_request_new_gate_pass);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
setTitle("Student Gate Pass Entry");
activity = this;
this.context = getApplicationContext();
init();
}
private void init() {
Intent intent = getIntent();
this.intent = intent;
if (intent.hasExtra("multiple_dates")) {
this.isSupportMultipleDates = this.intent.getBooleanExtra("multiple_dates", false);
}
SharedPreferences sharedPreferences = getApplicationContext().getSharedPreferences("", 0);
this.mSharedPref = sharedPreferences;
this.mEditor = sharedPreferences.edit();
this.mProgressbar = new TransparentProgressDialog(activity, R.drawable.spinner_loading_imag);
this.orgId = Integer.parseInt(this.mSharedPref.getString("orgnizationIdKey", "" + this.orgId));
this.branchId = Integer.parseInt(this.mSharedPref.getString("BranchIdKey", "" + this.branchId));
this.academicYearId = Integer.parseInt(this.mSharedPref.getString("academicyearIdKey", "" + this.academicYearId));
this.userId = Integer.parseInt(this.mSharedPref.getString("UseridKey", "" + this.userId));
this.userName = this.mSharedPref.getString("UserNameKey", "");
this.enrollmentCode = this.mSharedPref.getString("EnrollmentCode", "");
this.studentEnrollmentId = Integer.parseInt(this.mSharedPref.getString("studentEnrollmentIdKey", "0"));
this.studentName = this.mSharedPref.getString("Name", "");
this.studentPhoto = this.mSharedPref.getString("ProfilePicPath", "");
this.classSection = this.mSharedPref.getString("SectionNameKey", "");
this.mToDateLl = (LinearLayout) findViewById(R.id.to_date_ll);
TextView textView = (TextView) findViewById(R.id.from_date_txv);
LinearLayout linearLayout = (LinearLayout) findViewById(R.id.relation_ll);
this.relationLl = linearLayout;
linearLayout.setVisibility(8);
this.mPhoto = (ImageView) findViewById(R.id.img_pic);
this.mCapturePhoto = (TextView) findViewById(R.id.txv_capture_photo);
this.mRelationship = (Spinner) findViewById(R.id.spn_relationship);
this.mRelation = (EditText) findViewById(R.id.edt_relation);
this.mName = (EditText) findViewById(R.id.edt_name);
this.mReason = (EditText) findViewById(R.id.edt_reason);
this.mFromDateEt = (EditText) findViewById(R.id.edt_from_date);
this.mToDateEt = (EditText) findViewById(R.id.edt_to_date);
this.mTime = (EditText) findViewById(R.id.edt_time);
this.mFromDateEt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
RequestNewGatePassActivity.this.fromDate = true;
RequestNewGatePassActivity.this.createDateDialog();
}
});
this.mToDateEt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
RequestNewGatePassActivity.this.toDate = true;
RequestNewGatePassActivity.this.createDateDialog();
}
});
this.mTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
RequestNewGatePassActivity.this.createTimePickerDialog();
}
});
if (this.isSupportMultipleDates) {
this.mToDateLl.setVisibility(0);
textView.setText("From Date :");
this.mFromDateEt.setEnabled(true);
} else {
this.mToDateLl.setVisibility(8);
textView.setText("Date :");
this.mFromDateEt.setEnabled(false);
}
this.mRelationship.setAdapter((SpinnerAdapter) new ArrayAdapter((Context) this, R.layout.simple_spinner_dropdown_item, (Object[]) this.relationships));
this.mRelationship.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long j) {
RequestNewGatePassActivity requestNewGatePassActivity = RequestNewGatePassActivity.this;
requestNewGatePassActivity.selectedRelationship = requestNewGatePassActivity.relationships[i];
RequestNewGatePassActivity.this.imageDataString = "";
if (RequestNewGatePassActivity.this.selectedRelationship.equalsIgnoreCase("Father")) {
RequestNewGatePassActivity.this.relationLl.setVisibility(8);
RequestNewGatePassActivity requestNewGatePassActivity2 = RequestNewGatePassActivity.this;
requestNewGatePassActivity2.name = requestNewGatePassActivity2.mSharedPref.getString("Father_name", "");
RequestNewGatePassActivity.this.goingWith = 1;
} else if (RequestNewGatePassActivity.this.selectedRelationship.equalsIgnoreCase("Mother")) {
RequestNewGatePassActivity.this.relationLl.setVisibility(8);
RequestNewGatePassActivity requestNewGatePassActivity3 = RequestNewGatePassActivity.this;
requestNewGatePassActivity3.name = requestNewGatePassActivity3.mSharedPref.getString("Mother_name", "");
RequestNewGatePassActivity.this.goingWith = 2;
} else {
RequestNewGatePassActivity.this.name = "";
RequestNewGatePassActivity.this.selectedRelationship = "";
RequestNewGatePassActivity.this.goingWith = 3;
RequestNewGatePassActivity.this.mRelation.requestFocus();
RequestNewGatePassActivity.this.relationLl.setVisibility(0);
}
RequestNewGatePassActivity.this.mRelation.setText(RequestNewGatePassActivity.this.selectedRelationship);
RequestNewGatePassActivity.this.mName.setText(RequestNewGatePassActivity.this.name);
}
});
this.calendar = Calendar.getInstance();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMM yyyy", Locale.US);
this.mFromDateEt.setText(simpleDateFormat.format(this.calendar.getTime()));
this.mToDateEt.setText(simpleDateFormat.format(this.calendar.getTime()));
this.mTime.setText(new SimpleDateFormat("hh:mm a", Locale.US).format(this.calendar.getTime()));
}
private void requestStudentGatePass() {
ConnectivityManager connectivityManager = (ConnectivityManager) this.context.getSystemService("connectivity");
this.conMgr = connectivityManager;
if (connectivityManager.getActiveNetworkInfo() != null && this.conMgr.getActiveNetworkInfo().isAvailable() && this.conMgr.getActiveNetworkInfo().isConnected()) {
requestStudentNewGatePass();
} else {
Toast.makeText(this.context, "Check your Network Connection", 0).show();
}
}
private void requestStudentNewGatePass() {
int i;
TransparentProgressDialog transparentProgressDialog = this.mProgressbar;
if (transparentProgressDialog != null && !transparentProgressDialog.isShowing()) {
this.mProgressbar.show();
}
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("MM/dd/yyyy", Locale.US);
if (this.isSupportMultipleDates) {
i = !this.fromDateStr.equalsIgnoreCase(this.toDateStr) ? 1 : 0;
this.toDateStr = simpleDateFormat.format(new Date(this.toDateStr));
} else {
this.toDateStr = "";
i = 0;
}
HashMap hashMap = new HashMap();
hashMap.put("StudentEnrollmentID", String.valueOf(this.studentEnrollmentId));
hashMap.put("AcademicYearID", String.valueOf(this.academicYearId));
hashMap.put("UserID", String.valueOf(this.userId));
hashMap.put("UserName", this.enrollmentCode);
hashMap.put("date", simpleDateFormat.format(new Date(this.fromDateStr)));
hashMap.put("time", this.time);
hashMap.put("Reason", this.reason);
hashMap.put("Relation", this.selectedRelationship);
hashMap.put("Name", this.name);
hashMap.put("Goingwith", String.valueOf(this.goingWith));
hashMap.put("IsIOS", String.valueOf(0));
hashMap.put("IsBulk", String.valueOf(i));
hashMap.put("EndDate", this.toDateStr);
hashMap.put("apikey", Utility.getSchoolApiKey(this.context));
((ApiInterface) ApiClient.getClient1(getApplicationContext()).create(ApiInterface.class)).requestStudentGatePass(hashMap).enqueue(new Callback<String>() {
public void onResponse(Call<String> call, Response<String> response) {
if (RequestNewGatePassActivity.this.mProgressbar != null && RequestNewGatePassActivity.this.mProgressbar.isShowing()) {
RequestNewGatePassActivity.this.mProgressbar.dismiss();
}
if (response != null && response.body() != null) {
String str = (String) response.body();
AlertDialog.Builder builder = new AlertDialog.Builder(RequestNewGatePassActivity.this);
builder.setMessage(str).setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i2) {
RequestNewGatePassActivity.this.finish();
}
}).setCancelable(false);
builder.create().show();
return;
}
Utility.showAlertDialog(RequestNewGatePassActivity.activity);
}
public void onFailure(Call<String> call, Throwable th) {
if (RequestNewGatePassActivity.this.mProgressbar != null && RequestNewGatePassActivity.this.mProgressbar.isShowing()) {
RequestNewGatePassActivity.this.mProgressbar.dismiss();
}
Utility.showAlertDialog(RequestNewGatePassActivity.activity);
}
});
}
public void createDateDialog() {
this.dateDialog = DatePickerDialog.newInstance(this, this.calendar.get(1), this.calendar.get(2), this.calendar.get(5));
this.dateDialog.setMinDate(Calendar.getInstance());
this.dateDialog.setThemeDark(false);
this.dateDialog.setAccentColor(ContextCompat.getColor(this.context, R.color.ColorPrimary));
this.dateDialog.show(activity.getFragmentManager(), "Datepickerdialog");
}
public void onDateSet(DatePickerDialog datePickerDialog, int i, int i2, int i3) {
this.calendar.set(1, i);
this.calendar.set(2, i2);
this.calendar.set(5, i3);
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd MMM yyyy", Locale.US);
if (this.isSupportMultipleDates) {
if (this.fromDate) {
this.mFromDateEt.setText(simpleDateFormat.format(this.calendar.getTime()));
this.fromDate = false;
} else {
this.mToDateEt.setText(simpleDateFormat.format(this.calendar.getTime()));
this.toDate = false;
}
} else {
this.mFromDateEt.setText(simpleDateFormat.format(this.calendar.getTime()));
}
try {
if (this.isSupportMultipleDates) {
this.dateComp = false;
SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("dd MMM yyyy", Locale.US);
Date parse = simpleDateFormat2.parse(this.mFromDateEt.getText().toString().trim());
Date parse2 = simpleDateFormat2.parse(this.mToDateEt.getText().toString().trim());
parse.before(parse2);
if (parse.after(parse2)) {
this.dateComp = true;
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
public void createTimePickerDialog() {
TimePickerDialog newInstance = TimePickerDialog.newInstance(this, this.calendar.get(11), this.calendar.get(12), this.calendar.get(13), true);
this.timePickerDialog = newInstance;
newInstance.show(getFragmentManager(), "TimePickerDialog");
}
public void onTimeSet(RadialPickerLayout radialPickerLayout, int i, int i2, int i3) {
this.calendar.set(11, i);
this.calendar.set(12, i2);
this.calendar.set(13, i3);
this.mTime.setText(new SimpleDateFormat("hh:mm a", Locale.US).format(this.calendar.getTime()));
}
public void onActivityResult(int i, int i2, Intent intent) {
super.onActivityResult(i, i2, intent);
if (i2 == -1 && i == 1) {
try {
Bitmap bitmap = (Bitmap) intent.getExtras().getParcelable("data");
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
this.imageDataString = Base64.encodeToString(byteArrayOutputStream.toByteArray(), 0);
this.mPhoto.setImageResource(android.R.color.transparent);
this.mPhoto.setBackgroundResource(android.R.color.transparent);
if (this.imageDataString.length() > 0 && !this.imageDataString.equalsIgnoreCase("null")) {
byte[] decode = Base64.decode(this.imageDataString, 0);
this.mPhoto.setImageBitmap(BitmapFactory.decodeByteArray(decode, 0, decode.length));
this.mCapturePhoto.setVisibility(8);
} else {
this.mPhoto.setImageResource(R.drawable.nopicture);
this.mCapturePhoto.setVisibility(0);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
@Override
public void onClick(View view) {
try {
startActivityForResult(new Intent("android.media.action.IMAGE_CAPTURE"), 1);
} catch (ActivityNotFoundException unused) {
Toast.makeText(this.context, "Whoops - your device doesn't support capturing images!", 0).show();
}
}
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_save, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem menuItem) {
int itemId = menuItem.getItemId();
if (itemId == 16908332) {
onBackPressed();
return true;
}
if (itemId == 2131363540) {
this.selectedRelationship = this.mRelation.getText().toString().trim();
this.name = this.mName.getText().toString().trim();
this.reason = this.mReason.getText().toString().trim();
this.fromDateStr = this.mFromDateEt.getText().toString().trim();
this.time = this.mTime.getText().toString().trim();
this.toDateStr = this.mToDateEt.getText().toString().trim();
if (this.selectedRelationship.length() > 0 && this.name.length() > 0 && this.reason.length() > 0 && this.fromDateStr.length() > 0 && this.time.length() > 0) {
if (this.isSupportMultipleDates) {
if (!this.dateComp) {
requestStudentGatePass();
} else {
Toast.makeText(getApplicationContext(), "Invalid Date Range Selection!", 0).show();
}
} else {
requestStudentGatePass();
}
} else if (this.selectedRelationship.length() == 0) {
Toast.makeText(this.context, "Enter relation", 0).show();
} else if (this.name.length() == 0) {
Toast.makeText(this.context, "Enter name", 0).show();
} else if (this.reason.length() == 0) {
Toast.makeText(this.context, "Enter reason", 0).show();
} else if (this.fromDateStr.length() == 0) {
Toast.makeText(this.context, "Enter date", 0).show();
} else if (this.time.length() == 0) {
Toast.makeText(this.context, "Enter time", 0).show();
}
return true;
}
return super.onOptionsItemSelected(menuItem);
}
protected void onStop() {
TransparentProgressDialog transparentProgressDialog = this.mProgressbar;
if (transparentProgressDialog != null && transparentProgressDialog.isShowing()) {
this.mProgressbar.dismiss();
}
super.onStop();
}
}