add project adins

This commit is contained in:
Alfrid Sanjaya Leo Putra 2024-07-25 14:44:22 +07:00
commit f8f85d679d
5299 changed files with 625430 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View file

@ -0,0 +1,151 @@
package com.adins.mss.dao;
import com.google.gson.annotations.SerializedName;
import com.google.gson.annotations.Since;
// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. Enable "keep" sections if you want to edit.
/**
* Entity mapped to table "MS_MOBILEDATAFILES".
*/
public class MobileDataFile {
@SerializedName("idDatafile")
private long id_datafile;
@SerializedName("isActive")
private String is_active;
@SerializedName("maxTimestamp")
private java.util.Date max_timestamp;
@SerializedName("fileUrl")
private String file_url;
@SerializedName("alternateFileUrl")
private String alternate_file_url;
@SerializedName("hashSha1")
private String hash_sha1;
@SerializedName("usrCrt")
private String usr_crt;
@SerializedName("dtmCrt")
private java.util.Date dtm_crt;
private String usr_upd;
private java.util.Date dtm_upd;
private String downloaded_file_path;
private Boolean import_flag;
public MobileDataFile() {
}
public MobileDataFile(long id_datafile) {
this.id_datafile = id_datafile;
}
public MobileDataFile(long id_datafile, String is_active, java.util.Date max_timestamp, String file_url, String alternate_file_url, String hash_sha1, String usr_crt, java.util.Date dtm_crt, String usr_upd, java.util.Date dtm_upd, String downloaded_file_path, Boolean import_flag) {
this.id_datafile = id_datafile;
this.is_active = is_active;
this.max_timestamp = max_timestamp;
this.file_url = file_url;
this.alternate_file_url = alternate_file_url;
this.hash_sha1 = hash_sha1;
this.usr_crt = usr_crt;
this.dtm_crt = dtm_crt;
this.usr_upd = usr_upd;
this.dtm_upd = dtm_upd;
this.downloaded_file_path = downloaded_file_path;
this.import_flag = import_flag;
}
public long getId_datafile() {
return id_datafile;
}
public void setId_datafile(long id_datafile) {
this.id_datafile = id_datafile;
}
public String getIs_active() {
return is_active;
}
public void setIs_active(String is_active) {
this.is_active = is_active;
}
public java.util.Date getMax_timestamp() {
return max_timestamp;
}
public void setMax_timestamp(java.util.Date max_timestamp) {
this.max_timestamp = max_timestamp;
}
public String getFile_url() {
return file_url;
}
public void setFile_url(String file_url) {
this.file_url = file_url;
}
public String getAlternate_file_url() {
return alternate_file_url;
}
public void setAlternate_file_url(String alternate_file_url) {
this.alternate_file_url = alternate_file_url;
}
public String getHash_sha1() {
return hash_sha1;
}
public void setHash_sha1(String hash_sha1) {
this.hash_sha1 = hash_sha1;
}
public String getUsr_crt() {
return usr_crt;
}
public void setUsr_crt(String usr_crt) {
this.usr_crt = usr_crt;
}
public java.util.Date getDtm_crt() {
return dtm_crt;
}
public void setDtm_crt(java.util.Date dtm_crt) {
this.dtm_crt = dtm_crt;
}
public String getUsr_upd() {
return usr_upd;
}
public void setUsr_upd(String usr_upd) {
this.usr_upd = usr_upd;
}
public java.util.Date getDtm_upd() {
return dtm_upd;
}
public void setDtm_upd(java.util.Date dtm_upd) {
this.dtm_upd = dtm_upd;
}
public String getDownloaded_file_path() {
return downloaded_file_path;
}
public void setDownloaded_file_path(String downloaded_file_path) {
this.downloaded_file_path = downloaded_file_path;
}
public Boolean getImport_flag() {
return import_flag;
}
public void setImport_flag(Boolean import_flag) {
this.import_flag = import_flag;
}
}

View file

@ -0,0 +1,5 @@
<vector android:height="16dp" android:tint="#555555"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="16dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FF000000" android:pathData="M9,16.17L4.83,12l-1.42,1.41L9,19 21,7l-1.41,-1.41z"/>
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 586 KiB

View file

@ -0,0 +1,171 @@
package com.adins.mss.odr.accounts;
import android.content.Context;
import android.location.LocationManager;
import android.os.Bundle;
import androidx.fragment.app.FragmentManager;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.telephony.TelephonyManager;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import com.adins.mss.base.GlobalData;
import com.adins.mss.base.util.Utility;
import com.adins.mss.constant.Global;
import com.adins.mss.dao.Account;
import com.adins.mss.dao.GeneralParameter;
import com.adins.mss.foundation.db.dataaccess.AccountDataAccess;
import com.adins.mss.foundation.db.dataaccess.GeneralParameterDataAccess;
import com.adins.mss.foundation.location.LocationTrackingManager;
import com.adins.mss.foundation.location.UpdateMenuIcon;
import com.adins.mss.odr.R;
import com.adins.mss.odr.accounts.adapter.AccountListAdapter;
import java.util.ArrayList;
import java.util.List;
/**
* Created by olivia.dg on 11/16/2017.
*/
public class AccountsListActivity extends AppCompatActivity {
private ArrayList<String> uuidAccounts;
private List<Account> accountList;
private RecyclerView list;
private RecyclerView.LayoutManager layoutManager;
private RecyclerView.Adapter adapter;
public LocationTrackingManager manager;
public static FragmentManager fragmentManager;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(com.adins.mss.base.R.menu.main_menu, menu);
mainMenu = menu;
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
updateMenuIcon(Global.isGPS);
return super.onPrepareOptionsMenu(menu);
}
public static void updateMenuIcon(boolean isGPS) {
UpdateMenuIcon uItem = new UpdateMenuIcon();
uItem.updateGPSIcon(mainMenu);
}
private static Menu mainMenu;
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == com.adins.mss.base.R.id.mnGPS) {
if (Global.LTM != null) {
if (Global.LTM.getIsConnected()) {
Global.LTM.removeLocationListener();
Global.LTM.connectLocationClient();
} else {
StartLocationTracking();
}
Animation a = AnimationUtils.loadAnimation(this, com.adins.mss.base.R.anim.gps_rotate);
findViewById(com.adins.mss.base.R.id.mnGPS).startAnimation(a);
}
}
return super.onOptionsItemSelected(item);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
uuidAccounts = new ArrayList<>();
Bundle bundle = getIntent().getExtras();
uuidAccounts = bundle.getStringArrayList(Global.BUND_KEY_ACCOUNT_ID);
setContentView(R.layout.new_account_list_activity);
list = (RecyclerView) findViewById(R.id.list);
layoutManager = new LinearLayoutManager(getApplicationContext());
list.setLayoutManager(layoutManager);
accountList = new ArrayList<>();
if (uuidAccounts != null) {
for (String uuid : uuidAccounts) {
Account account = AccountDataAccess.getOne(getApplicationContext(), uuid);
accountList.add(account);
}
}
adapter = new AccountListAdapter(AccountsListActivity.this, accountList);
list.setAdapter(adapter);
fragmentManager = getSupportFragmentManager();
}
@Override
protected void onResume() {
super.onResume();
Toolbar toolbar = (Toolbar) findViewById(com.adins.mss.base.R.id.toolbar);
toolbar.setTitle(getString(com.adins.mss.base.R.string.title_mn_account));
toolbar.setTitleTextColor(getResources().getColor(com.adins.mss.base.R.color.fontColorWhite));
setSupportActionBar(toolbar);
}
@Override
protected void onDestroy() {
super.onDestroy();
Utility.freeMemory();
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
public void StartLocationTracking() {
try {
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
GeneralParameter gp_distance = GeneralParameterDataAccess.getOne(getApplicationContext(), GlobalData.getSharedGlobalData().getUser().getUuid_user(), Global.GS_DISTANCE_TRACKING);
try {
if (gp_distance != null) {
int distanceTracking = Integer.parseInt(gp_distance.getGs_value());
if (distanceTracking != 0) {
manager = new LocationTrackingManager(tm, lm, getApplicationContext());
manager.setMinimalDistanceChangeLocation(Integer.parseInt(GeneralParameterDataAccess.getOne(getApplicationContext(), GlobalData.getSharedGlobalData().getUser().getUuid_user(), "PRM13_DIST").getGs_value()));
manager.setMinimalTimeChangeLocation(5);
manager.applyLocationListener(getApplicationContext());
}
}
} catch (Exception e) {
manager = new LocationTrackingManager(tm, lm, getApplicationContext());
manager.setMinimalDistanceChangeLocation(50);
manager.setMinimalTimeChangeLocation(5);
manager.applyLocationListener(getApplicationContext());
}
if (Global.LTM == null) {
Global.LTM = manager;
} else {
try {
Global.LTM = null;
Global.LTM = manager;
} catch (Exception e) {
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

View file

@ -0,0 +1,45 @@
/*
* Copyright (C) 2011 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.adins.libs.nineoldandroids.util;
/**
* An implementation of {@link android.util.Property} to be used specifically with fields of type
* <code>int</code>. This type-specific subclass enables performance benefit by allowing
* calls to a {@link #set(Object, Integer) set()} function that takes the primitive
* <code>int</code> type and avoids autoboxing and other overhead associated with the
* <code>Integer</code> class.
*
* @param <T> The class on which the Property is declared.
* @hide
*/
public abstract class IntProperty<T> extends Property<T, Integer> {
public IntProperty(String name) {
super(Integer.class, name);
}
/**
* A type-specific override of the {@link #set(Object, Integer)} that is faster when dealing
* with fields of type <code>int</code>.
*/
public abstract void setValue(T object, int value);
@Override
final public void set(T object, Integer value) {
set(object, value.intValue());
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View file

@ -0,0 +1,61 @@
package com.adins.mss.base.dynamicform;
import android.content.Context;
import com.adins.mss.base.GlobalData;
import com.adins.mss.base.crashlytics.FireCrash;
import com.adins.mss.base.util.GsonHelper;
import com.adins.mss.base.util.Utility;
import com.adins.mss.constant.Global;
import com.adins.mss.foundation.http.HttpConnectionResult;
import com.adins.mss.foundation.http.HttpCryptedConnection;
import com.google.firebase.perf.FirebasePerformance;
import com.google.firebase.perf.metrics.HttpMetric;
public class ApproveTaskApi {
private Context activity;
private String uuidTaskH, flag, notes;
private boolean isApprovalTask;
public ApproveTaskApi(Context activity, String uuidTaskH, String flag, boolean isApprovalTask, String notes) {
this.activity = activity;
this.uuidTaskH = uuidTaskH;
this.flag = flag;
this.isApprovalTask = isApprovalTask;
this.notes = notes;
}
public HttpConnectionResult request() {
JsonRequestApprovalTask request = new JsonRequestApprovalTask();
request.setUuid_task_h(uuidTaskH);
request.setFlag(flag);
request.setNotes(notes);
request.setAudit(GlobalData.getSharedGlobalData().getAuditData());
request.addImeiAndroidIdToUnstructured();
String json = GsonHelper.toJson(request);
String url = GlobalData.getSharedGlobalData().getURL_SUBMITAPPROVALTASK();
if (!isApprovalTask)
url = GlobalData.getSharedGlobalData().getURL_SUBMITVERIFICATIONTASK();
boolean encrypt = GlobalData.getSharedGlobalData().isEncrypt();
boolean decrypt = GlobalData.getSharedGlobalData().isDecrypt();
HttpCryptedConnection httpConn = new HttpCryptedConnection(activity, encrypt, decrypt);
HttpConnectionResult serverResult = null;
//Firebase Performance Trace HTTP Request
HttpMetric networkMetric =
FirebasePerformance.getInstance().newHttpMetric(url, FirebasePerformance.HttpMethod.POST);
Utility.metricStart(networkMetric, json);
try {
serverResult = httpConn.requestToServer(url, json, Global.DEFAULTCONNECTIONTIMEOUT);
Utility.metricStop(networkMetric, serverResult);
return serverResult;
} catch (Exception e) {
FireCrash.log(e);
e.printStackTrace();
return null;
}
}
}

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:drawable="@drawable/item_checked" />
<item android:state_checked="false" android:drawable="@drawable/item_unchecked" />
</selector>

View file

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@android:color/transparent"/>
</shape>

View file

@ -0,0 +1,153 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.adins.mss.base.fragments.PrintingServiceFragment">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!--<View-->
<!--android:id="@+id/toolbar"-->
<!--android:layout_width="match_parent"-->
<!--android:layout_height="?android:actionBarSize"-->
<!--android:background="@drawable/actionbar_background"/>-->
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:focusableInTouchMode="true">
<TextView
android:id="@+id/headTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="55dp"
android:layout_marginTop="16dp"
android:text="@string/title_printing_service"
android:textColor="@android:color/black"
android:textSize="12sp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/defaultPrintingService"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:orientation="horizontal"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp"
android:paddingBottom="8dp"
android:background="?android:attr/selectableItemBackground"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/headTitle">
<ImageView
android:id="@+id/imageView2"
android:layout_width="32dp"
android:layout_height="32dp"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
app:srcCompat="@drawable/ic_print_24dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/printDefault"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="8dp"
android:text="Printing"
android:textSize="14sp"
app:layout_constraintBottom_toTopOf="@+id/descPrintDefault"
app:layout_constraintStart_toEndOf="@+id/imageView2"
app:layout_constraintTop_toTopOf="@+id/imageView2" />
<TextView
android:id="@+id/descPrintDefault"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="8dp"
android:layout_marginTop="3dp"
android:text="@string/menu_desc_print_default"
android:textSize="12sp"
app:layout_constraintBottom_toBottomOf="@+id/imageView2"
app:layout_constraintStart_toEndOf="@+id/imageView2"
app:layout_constraintTop_toBottomOf="@+id/printDefault" />
</androidx.constraintlayout.widget.ConstraintLayout>
<LinearLayout
android:id="@+id/choosePrinter"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:orientation="horizontal"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp"
android:paddingBottom="8dp"
android:background="?android:attr/selectableItemBackground"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/defaultPrintingService"
app:layout_constraintTop_toBottomOf="@+id/defaultPrintingService">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
app:srcCompat="@drawable/ic_check_16dp"
android:layout_marginRight="16dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:text="@string/action_choose_printer"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/printTest"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingStart="16dp"
android:paddingTop="8dp"
android:paddingEnd="16dp"
android:paddingBottom="8dp"
android:background="?android:attr/selectableItemBackground"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/defaultPrintingService"
app:layout_constraintTop_toBottomOf="@+id/choosePrinter">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
app:srcCompat="@drawable/ic_receipt_16dp"
android:layout_marginRight="16dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="8dp"
android:text="@string/action_print_test"
android:textSize="12sp" />
</LinearLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>
</FrameLayout>