正在查看: St.John's v1.0.9 应用的 UploadSummativeExamAnswersActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: St.John's v1.0.9 应用的 UploadSummativeExamAnswersActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.mcb.stjohnsemschool.activity;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ScrollView;
import android.widget.TextView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.google.android.exoplayer2.extractor.ts.TsExtractor;
import com.google.firebase.analytics.FirebaseAnalytics;
import com.mcb.stjohnsemschool.fragment.FileUploadFragmentDialog;
import com.mcb.stjohnsemschool.interfaces.OnImageCapturedInterface;
import com.mcb.stjohnsemschool.model.AssignmentAttachmentModel;
import com.mcb.stjohnsemschool.services.ApiClient;
import com.mcb.stjohnsemschool.services.ApiInterface;
import com.mcb.stjohnsemschool.utils.FileUtils;
import com.mcb.stjohnsemschool.utils.TransparentProgressDialog;
import com.mcb.stjohnsemschool.utils.Utility;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import okhttp3.MediaType;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
public class UploadSummativeExamAnswersActivity extends AppCompatActivity implements OnImageCapturedInterface {
private String academicYearId;
private Activity activity;
private Context context;
private int examId;
private TextView mAttachFile;
private LinearLayout mAttachmentsLL;
private TextView mDuration;
private TextView mExamDate;
private TextView mExamName;
private TextView mMaxMarks;
private TransparentProgressDialog mProgressbar;
private ScrollView mScroll;
private String mStudentEnrollmentID;
private TextView mTime;
private OnImageCapturedInterface onImageCaptured;
private String orgId;
private ArrayList<AssignmentAttachmentModel> pathList = new ArrayList<>();
private boolean isFromBrowse = false;
String mUserId = "0";
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.activity_upload_summative_exam_answers);
this.onImageCaptured = this;
this.context = getApplicationContext();
this.activity = this;
getWindow().addFlags(128);
getSupportActionBar().setTitle("Submit Answer");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowTitleEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
SharedPreferences sharedPreferences = getSharedPreferences("", 0);
this.mStudentEnrollmentID = sharedPreferences.getString("studentEnrollmentIdKey", "0");
this.orgId = sharedPreferences.getString("orgnizationIdKey", "0");
this.academicYearId = sharedPreferences.getString("academicyearIdKey", "0");
this.mUserId = sharedPreferences.getString("UseridKey", "0");
setUpIds();
}
private void setUpIds() {
this.mProgressbar = new TransparentProgressDialog(this, R.drawable.spinner_loading_imag);
this.mAttachFile = (TextView) findViewById(R.id.txv_attach_file);
this.mAttachmentsLL = (LinearLayout) findViewById(R.id.ll_attached_files);
this.mScroll = (ScrollView) findViewById(R.id.scroll_view);
this.mExamName = (TextView) findViewById(R.id.txv_exam_name);
this.mExamDate = (TextView) findViewById(R.id.txv_date);
this.mTime = (TextView) findViewById(R.id.txv_time);
this.mDuration = (TextView) findViewById(R.id.txv_duration);
this.mMaxMarks = (TextView) findViewById(R.id.max_marks_tv);
this.mAttachmentsLL.setVisibility(8);
this.mAttachFile.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (UploadSummativeExamAnswersActivity.this.pathList.size() >= 20) {
Utility.showInfoDialog(UploadSummativeExamAnswersActivity.this.activity, "You can't upload more than 20 files");
return;
}
ArrayList arrayList = new ArrayList();
UploadSummativeExamAnswersActivity.this.isFromBrowse = false;
FileUploadFragmentDialog fileUploadFragmentDialog = new FileUploadFragmentDialog(arrayList, false, UploadSummativeExamAnswersActivity.this.onImageCaptured);
fileUploadFragmentDialog.show(UploadSummativeExamAnswersActivity.this.getSupportFragmentManager(), fileUploadFragmentDialog.getTag());
}
});
Bundle extras = getIntent().getExtras();
this.examId = extras.getInt("ExamId", 0);
String string = extras.getString("ExamName", "");
String string2 = extras.getString("ExamDate", "");
String string3 = extras.getString("ExamTime", "");
String string4 = extras.getString("ExamDuration", "");
String string5 = extras.getString("MaxMarks", "");
this.mExamName.setText(string);
this.mExamDate.setText(string2);
this.mTime.setText("Time: " + string3);
this.mDuration.setText("Duration: " + string4);
this.mMaxMarks.setText("Max Marks : " + string5);
}
public void onActivityResult(int i, int i2, Intent intent) {
super.onActivityResult(i, i2, intent);
if (i2 != 100 || intent == null) {
return;
}
ArrayList<String> stringArrayListExtra = intent.getStringArrayListExtra("FilePaths");
if (intent.hasExtra("IsFromBrowse")) {
this.isFromBrowse = intent.getBooleanExtra("IsFromBrowse", false);
}
if (stringArrayListExtra == null || stringArrayListExtra.size() <= 0) {
return;
}
uploadFileToCDN(stringArrayListExtra.get(0));
}
public void onFileCaptured(ArrayList<String> arrayList) {
if (arrayList == null || arrayList.size() <= 0) {
return;
}
uploadFileToCDN(arrayList.get(0));
}
private void uploadFileToCDN(String str) {
if (Integer.parseInt(String.valueOf(new File(str).length() / 1024)) > 10240) {
if (this.isFromBrowse && str != null && str.length() > 0) {
FileUtils.deleteFile(getApplicationContext(), str);
}
Utility.showInfoDialog(this.activity, "File size should not exceed 10 MB");
return;
}
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService("connectivity");
if (connectivityManager.getActiveNetworkInfo() != null && connectivityManager.getActiveNetworkInfo().isAvailable() && connectivityManager.getActiveNetworkInfo().isConnected()) {
uploadFilesToCDNAndGetPath(str);
} else {
Toast.makeText(getApplicationContext(), "Check your Network Connection", 0).show();
}
}
private void uploadFilesToCDNAndGetPath(final String str) {
TransparentProgressDialog transparentProgressDialog = this.mProgressbar;
if (transparentProgressDialog != null && !transparentProgressDialog.isShowing()) {
this.mProgressbar.show();
}
if (str != null) {
try {
if (str.length() > 0) {
RequestBody create = RequestBody.create(MediaType.parse("text/plain"), "Summative");
RequestBody create2 = RequestBody.create(MediaType.parse("text/plain"), String.valueOf(this.orgId));
RequestBody create3 = RequestBody.create(MediaType.parse("text/plain"), Utility.getSchoolApiKey(this.context));
RequestBody create4 = RequestBody.create(MediaType.parse("text/plain"), String.valueOf(this.mUserId));
ArrayList arrayList = new ArrayList();
final String substring = str.substring(str.lastIndexOf("/") + 1);
File file = new File(str);
arrayList.add(MultipartBody.Part.createFormData("file1", file.getName(), RequestBody.create(MediaType.parse("*/*"), file)));
((ApiInterface) ApiClient.getClient1(this.context).create(ApiInterface.class)).SaveFilesToCDNNew(arrayList, create, create2, create4, create3).enqueue(new Callback<String>() {
public void onResponse(Call<String> call, Response<String> response) {
String str2;
if (UploadSummativeExamAnswersActivity.this.mProgressbar != null && UploadSummativeExamAnswersActivity.this.mProgressbar.isShowing()) {
UploadSummativeExamAnswersActivity.this.mProgressbar.dismiss();
}
if (response != null) {
try {
if (response.code() == 200) {
if (response.body() != null) {
if (UploadSummativeExamAnswersActivity.this.isFromBrowse && (str2 = str) != null && str2.length() > 0) {
FileUtils.deleteFile(UploadSummativeExamAnswersActivity.this.getApplicationContext(), str);
}
String[] split = ((String) response.body()).split(",");
if (split != null) {
for (String str3 : split) {
AssignmentAttachmentModel assignmentAttachmentModel = new AssignmentAttachmentModel();
assignmentAttachmentModel.setFileName(substring);
assignmentAttachmentModel.setFilePath(str3);
UploadSummativeExamAnswersActivity.this.pathList.add(assignmentAttachmentModel);
}
}
UploadSummativeExamAnswersActivity.this.showAttachedFiles();
return;
}
return;
}
} catch (Exception e) {
Toast.makeText(UploadSummativeExamAnswersActivity.this.getApplicationContext(), "Unable to get Server Response,Retry!", 0).show();
e.printStackTrace();
return;
}
}
Toast.makeText(UploadSummativeExamAnswersActivity.this.getApplicationContext(), response.message(), 0).show();
}
public void onFailure(Call<String> call, Throwable th) {
Toast.makeText(UploadSummativeExamAnswersActivity.this.getApplicationContext(), th.getMessage(), 0).show();
if (UploadSummativeExamAnswersActivity.this.mProgressbar != null && UploadSummativeExamAnswersActivity.this.mProgressbar.isShowing()) {
UploadSummativeExamAnswersActivity.this.mProgressbar.dismiss();
}
UploadSummativeExamAnswersActivity.this.finish();
}
});
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(getApplicationContext(), "Unable to get Server Response", 0).show();
TransparentProgressDialog transparentProgressDialog2 = this.mProgressbar;
if (transparentProgressDialog2 == null || !transparentProgressDialog2.isShowing()) {
return;
}
this.mProgressbar.dismiss();
}
}
}
public void showAttachedFiles() {
this.mAttachmentsLL.removeAllViews();
if (this.pathList.size() > 0) {
int i = 0;
this.mAttachmentsLL.setVisibility(0);
while (i < this.pathList.size()) {
View inflate = LayoutInflater.from(getApplicationContext()).inflate(R.layout.file_attachment_view, (ViewGroup) null);
TextView textView = (TextView) inflate.findViewById(R.id.txv_filename);
ImageView imageView = (ImageView) inflate.findViewById(R.id.img_cancel_file);
imageView.setTag(Integer.valueOf(i));
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
UploadSummativeExamAnswersActivity.this.pathList.remove(Integer.parseInt(view.getTag().toString()));
UploadSummativeExamAnswersActivity.this.showAttachedFiles();
}
});
String fileName = this.pathList.get(i).getFileName();
StringBuilder sb = new StringBuilder();
i++;
sb.append(i);
sb.append(". ");
sb.append(fileName);
textView.setText(sb.toString());
this.mAttachmentsLL.addView(inflate);
}
} else {
this.mAttachmentsLL.setVisibility(8);
}
this.mScroll.postDelayed(new Runnable() {
@Override
public void run() {
UploadSummativeExamAnswersActivity.this.mScroll.fullScroll(TsExtractor.TS_STREAM_TYPE_HDMV_DTS);
}
}, 100L);
}
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.save_icon_menu, menu);
return super.onCreateOptionsMenu(menu);
}
public boolean onOptionsItemSelected(MenuItem menuItem) {
int itemId = menuItem.getItemId();
if (itemId == 16908332) {
finish();
return true;
}
if (itemId == 2131361885) {
ArrayList<AssignmentAttachmentModel> arrayList = this.pathList;
if (arrayList != null && arrayList.size() > 0) {
saveUploadedAnsers();
} else {
Utility.showInfoDialog(this.activity, "Please upload answer files");
}
return true;
}
return super.onOptionsItemSelected(menuItem);
}
private void saveUploadedAnsers() {
ConnectivityManager connectivityManager = (ConnectivityManager) this.context.getSystemService("connectivity");
if (connectivityManager.getActiveNetworkInfo() != null && connectivityManager.getActiveNetworkInfo().isAvailable() && connectivityManager.getActiveNetworkInfo().isConnected()) {
saveStudentOnlineSummativeExamAnswerFiles();
} else {
Toast.makeText(this.context, "Check your Network Connection", 0).show();
}
}
private void saveStudentOnlineSummativeExamAnswerFiles() {
TransparentProgressDialog transparentProgressDialog = this.mProgressbar;
if (transparentProgressDialog != null && !transparentProgressDialog.isShowing()) {
this.mProgressbar.show();
}
ArrayList<AssignmentAttachmentModel> arrayList = this.pathList;
String str = "";
if (arrayList != null && arrayList.size() > 0) {
Iterator<AssignmentAttachmentModel> it = this.pathList.iterator();
while (it.hasNext()) {
AssignmentAttachmentModel next = it.next();
str = str + "," + next.getFileName() + '~' + next.getFilePath();
}
if (str.startsWith(",")) {
str = str.substring(1);
}
}
HashMap hashMap = new HashMap();
hashMap.put("OnlineSummativeExaminationID", String.valueOf(this.examId));
hashMap.put("AcademicYearID", this.academicYearId);
hashMap.put("StudentEnrollmentID", this.mStudentEnrollmentID);
hashMap.put("resultstr", str);
hashMap.put("apikey", Utility.getSchoolApiKey(this.context));
((ApiInterface) ApiClient.getClient1(this.context).create(ApiInterface.class)).SaveStudentOnlineSummativeExamAnswerFiles(hashMap).enqueue(new Callback<String>() {
public void onResponse(Call<String> call, Response<String> response) {
if (UploadSummativeExamAnswersActivity.this.mProgressbar != null && UploadSummativeExamAnswersActivity.this.mProgressbar.isShowing()) {
UploadSummativeExamAnswersActivity.this.mProgressbar.dismiss();
}
if (response == null || response.body() == null) {
Utility.showAlertDialog(UploadSummativeExamAnswersActivity.this.activity);
return;
}
Toast.makeText(UploadSummativeExamAnswersActivity.this.getApplicationContext(), (String) response.body(), 1).show();
UploadSummativeExamAnswersActivity.this.finish();
}
public void onFailure(Call<String> call, Throwable th) {
if (UploadSummativeExamAnswersActivity.this.mProgressbar != null && UploadSummativeExamAnswersActivity.this.mProgressbar.isShowing()) {
UploadSummativeExamAnswersActivity.this.mProgressbar.dismiss();
}
Utility.showAlertDialog(UploadSummativeExamAnswersActivity.this.activity);
}
});
}
protected void onResume() {
super.onResume();
String string = getSharedPreferences("", 0).getString("usernamekey", "");
Bundle bundle = new Bundle();
bundle.putString("user_name", string);
FirebaseAnalytics.getInstance(this).logEvent("PAGE_SUMMATIVE_EXAM_UPLOAD_ANSWERS", bundle);
}
}