mirror of
https://github.com/freeedcom/ai-codereviewer.git
synced 2025-06-30 21:04:16 +00:00
add project adins
This commit is contained in:
parent
ad06ac5505
commit
f8f85d679d
5299 changed files with 625430 additions and 0 deletions
|
@ -0,0 +1,49 @@
|
|||
/*
|
||||
* Copyright 2013 Chris Banes
|
||||
*
|
||||
* 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 uk.co.senab.actionbarpulltorefresh.library.listeners;
|
||||
|
||||
import android.view.View;
|
||||
|
||||
public interface HeaderViewListener {
|
||||
/**
|
||||
* The state when the header view is completely visible.
|
||||
*/
|
||||
public static int STATE_VISIBLE = 0;
|
||||
|
||||
/**
|
||||
* The state when the header view is minimized. By default this means
|
||||
* that the progress bar is still visible, but the rest of the view is
|
||||
* hidden, showing the Action Bar behind.
|
||||
* <p/>
|
||||
* This will not be called in header minimization is disabled.
|
||||
*/
|
||||
public static int STATE_MINIMIZED = 1;
|
||||
|
||||
/**
|
||||
* The state when the header view is completely hidden.
|
||||
*/
|
||||
public static int STATE_HIDDEN = 2;
|
||||
|
||||
/**
|
||||
* Called when the visibility state of the Header View has changed.
|
||||
*
|
||||
* @param headerView HeaderView who's state has changed.
|
||||
* @param state The new state. One of {@link #STATE_VISIBLE},
|
||||
* {@link #STATE_MINIMIZED} and {@link #STATE_HIDDEN}
|
||||
*/
|
||||
public void onStateChanged(View headerView, int state);
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 3.7 KiB |
|
@ -0,0 +1,222 @@
|
|||
package com.adins.mss.foundation.db;
|
||||
|
||||
import android.content.Context;
|
||||
import android.database.Cursor;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.adins.mss.base.GlobalData;
|
||||
import com.adins.mss.base.crashlytics.FireCrash;
|
||||
import com.adins.mss.constant.Global;
|
||||
import com.adins.mss.dao.DaoMaster;
|
||||
import com.adins.mss.dao.LogoPrintDao;
|
||||
import com.adins.mss.dao.TaskH;
|
||||
import com.adins.mss.dao.TaskSummaryDao;
|
||||
import com.adins.mss.dao.ThemeDao;
|
||||
import com.adins.mss.dao.ThemeItemDao;
|
||||
import com.adins.mss.dao.Timeline;
|
||||
import com.adins.mss.dao.TimelineType;
|
||||
import com.adins.mss.foundation.db.dataaccess.TaskHDataAccess;
|
||||
import com.adins.mss.foundation.db.dataaccess.TimelineDataAccess;
|
||||
import com.adins.mss.foundation.db.dataaccess.TimelineTypeDataAccess;
|
||||
|
||||
import org.acra.ACRA;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import de.greenrobot.dao.AbstractDao;
|
||||
import de.greenrobot.dao.database.Database;
|
||||
import de.greenrobot.dao.internal.DaoConfig;
|
||||
|
||||
/**
|
||||
* Created by gigin.ginanjar on 08/09/2016.
|
||||
*/
|
||||
public class MigrationHelper {
|
||||
private static final String CONVERSION_CLASS_NOT_FOUND_EXCEPTION = "MIGRATION HELPER - CLASS DOESN'T MATCH WITH THE CURRENT PARAMETERS";
|
||||
private static MigrationHelper instance;
|
||||
private static boolean migrationFinished = false;
|
||||
public static MigrationHelper getInstance() {
|
||||
if (instance == null) {
|
||||
instance = new MigrationHelper();
|
||||
}
|
||||
return instance;
|
||||
}
|
||||
|
||||
private static List<String> getColumns(Database db, String tableName) {
|
||||
List<String> columns = new ArrayList<>();
|
||||
Cursor cursor = null;
|
||||
try {
|
||||
cursor = db.rawQuery("SELECT * FROM " + tableName + " limit 1", null);
|
||||
if (cursor != null) {
|
||||
columns = new ArrayList<>(Arrays.asList(cursor.getColumnNames()));
|
||||
}
|
||||
} catch (Exception e) {
|
||||
FireCrash.log(e);
|
||||
Log.v(tableName, e.getMessage(), e);
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (cursor != null)
|
||||
cursor.close();
|
||||
}
|
||||
return columns;
|
||||
}
|
||||
|
||||
/**
|
||||
* migrate Data from old DB
|
||||
* how to use : add this sample in onUpgrade() method in DaoMaster.java
|
||||
* MigrationHelper.getInstance().migrate(db, [optional]UserDao.class, [optional]ItemDao.class);
|
||||
*
|
||||
* @param db
|
||||
* @param daoClasses
|
||||
*/
|
||||
public void migrate(Database db, Class<? extends AbstractDao<?, ?>>... daoClasses) {
|
||||
generateTempTables(db, daoClasses);
|
||||
DaoMaster.dropAllTables(db, true);
|
||||
DaoMaster.createAllTables(db, false);
|
||||
restoreData(db, daoClasses);
|
||||
}
|
||||
public void migrateFrom2x(Database db) {
|
||||
//tr_depositreport_d
|
||||
db.execSQL("ALTER TABLE TR_DEPOSITREPORT_D ADD AGREEMENT_NO TEXT");
|
||||
//tr_timeline
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD NAME TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD ADDRESS TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD AGREEMENT_NO TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD AMOUNT_DUE TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD OVERDUE TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD INSTALLMENT_NO TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD ATTD_ADDRESS TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD PRIORITY TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD IS_VERIFICATION_TASK TEXT");
|
||||
db.execSQL("ALTER TABLE TR_TIMELINE ADD COLL_RESULT TEXT");
|
||||
|
||||
//create table
|
||||
//tr_task_summary
|
||||
TaskSummaryDao.createTable(db,true);
|
||||
//tr_theme
|
||||
ThemeDao.createTable(db,true);
|
||||
//tr_theme_item
|
||||
ThemeItemDao.createTable(db,true);
|
||||
//tr_logo_print
|
||||
LogoPrintDao.createTable(db,true);
|
||||
}
|
||||
|
||||
public void migrateTaskHFrom2x(Context context, List<Timeline> timelineList){
|
||||
if(!migrationFinished) {
|
||||
TimelineType typeSaveDraft = TimelineTypeDataAccess.getTimelineTypebyType(context, Global.TIMELINE_TYPE_SAVEDRAFT);
|
||||
for (Timeline timeline : timelineList) {
|
||||
String uuid_task_h = timeline.getUuid_task_h();
|
||||
if (!uuid_task_h.equalsIgnoreCase("")) {
|
||||
List<TaskH> oldTaskH = TaskHDataAccess.getTaskById(context, uuid_task_h);
|
||||
if (oldTaskH.get(0).getStatus().equals(TaskHDataAccess.STATUS_SEND_SAVEDRAFT) && oldTaskH.get(0).getSubmit_date() == null) {
|
||||
timeline.setTimelineType(typeSaveDraft);
|
||||
TimelineDataAccess.addOrReplace(context, timeline);
|
||||
}
|
||||
}
|
||||
}
|
||||
migrationFinished = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void generateTempTables(Database db, Class<? extends AbstractDao<?, ?>>... daoClasses) {
|
||||
for (int i = 0; i < daoClasses.length; i++) {
|
||||
DaoConfig daoConfig = new DaoConfig(db, daoClasses[i]);
|
||||
|
||||
String divider = "";
|
||||
String tableName = daoConfig.tablename;
|
||||
String tempTableName = daoConfig.tablename.concat("_TEMP");
|
||||
ArrayList<String> properties = new ArrayList<>();
|
||||
|
||||
StringBuilder createTableStringBuilder = new StringBuilder();
|
||||
|
||||
createTableStringBuilder.append("CREATE TABLE ").append(tempTableName).append(" (");
|
||||
|
||||
for (int j = 0; j < daoConfig.properties.length; j++) {
|
||||
String columnName = daoConfig.properties[j].columnName;
|
||||
|
||||
if (getColumns(db, tableName).contains(columnName)) {
|
||||
properties.add(columnName);
|
||||
|
||||
String type = null;
|
||||
|
||||
try {
|
||||
type = getTypeByClass(daoConfig.properties[j].type);
|
||||
} catch (Exception exception) {
|
||||
ACRA.getErrorReporter().handleSilentException(exception);
|
||||
}
|
||||
|
||||
createTableStringBuilder.append(divider).append(columnName).append(" ").append(type);
|
||||
|
||||
if (daoConfig.properties[j].primaryKey) {
|
||||
createTableStringBuilder.append(" PRIMARY KEY");
|
||||
}
|
||||
|
||||
divider = ",";
|
||||
}
|
||||
}
|
||||
createTableStringBuilder.append(");");
|
||||
|
||||
db.execSQL(createTableStringBuilder.toString());
|
||||
|
||||
StringBuilder insertTableStringBuilder = new StringBuilder();
|
||||
|
||||
insertTableStringBuilder.append("INSERT INTO ").append(tempTableName).append(" (");
|
||||
insertTableStringBuilder.append(TextUtils.join(",", properties));
|
||||
insertTableStringBuilder.append(") SELECT ");
|
||||
insertTableStringBuilder.append(TextUtils.join(",", properties));
|
||||
insertTableStringBuilder.append(" FROM ").append(tableName).append(";");
|
||||
|
||||
db.execSQL(insertTableStringBuilder.toString());
|
||||
}
|
||||
}
|
||||
|
||||
private void restoreData(Database db, Class<? extends AbstractDao<?, ?>>... daoClasses) {
|
||||
for (int i = 0; i < daoClasses.length; i++) {
|
||||
DaoConfig daoConfig = new DaoConfig(db, daoClasses[i]);
|
||||
|
||||
String tableName = daoConfig.tablename;
|
||||
String tempTableName = daoConfig.tablename.concat("_TEMP");
|
||||
ArrayList<String> properties = new ArrayList();
|
||||
|
||||
for (int j = 0; j < daoConfig.properties.length; j++) {
|
||||
String columnName = daoConfig.properties[j].columnName;
|
||||
|
||||
if (getColumns(db, tempTableName).contains(columnName)) {
|
||||
properties.add(columnName);
|
||||
}
|
||||
}
|
||||
|
||||
StringBuilder insertTableStringBuilder = new StringBuilder();
|
||||
|
||||
insertTableStringBuilder.append("INSERT INTO ").append(tableName).append(" (");
|
||||
insertTableStringBuilder.append(TextUtils.join(",", properties));
|
||||
insertTableStringBuilder.append(") SELECT ");
|
||||
insertTableStringBuilder.append(TextUtils.join(",", properties));
|
||||
insertTableStringBuilder.append(" FROM ").append(tempTableName).append(";");
|
||||
|
||||
StringBuilder dropTableStringBuilder = new StringBuilder();
|
||||
|
||||
dropTableStringBuilder.append("DROP TABLE ").append(tempTableName);
|
||||
|
||||
db.execSQL(insertTableStringBuilder.toString());
|
||||
db.execSQL(dropTableStringBuilder.toString());
|
||||
}
|
||||
}
|
||||
|
||||
private String getTypeByClass(Class<?> type) throws Exception {
|
||||
if (type.equals(String.class)) {
|
||||
return "TEXT";
|
||||
}
|
||||
if (type.equals(Long.class) || type.equals(Integer.class) || type.equals(long.class)) {
|
||||
return "INTEGER";
|
||||
}
|
||||
if (type.equals(Boolean.class)) {
|
||||
return "BOOLEAN";
|
||||
}
|
||||
|
||||
Exception exception = new Exception(CONVERSION_CLASS_NOT_FOUND_EXCEPTION.concat(" - Class: ").concat(type.toString()));
|
||||
throw exception;
|
||||
}
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 4.9 KiB |
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_pressed="true"
|
||||
android:color="#ffff0000"/> <!-- pressed -->
|
||||
<item android:state_focused="true"
|
||||
android:color="#ff0000ff"/> <!-- focused -->
|
||||
<item android:color="#ff000000"/> <!-- default -->
|
||||
</selector>
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/layoutView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/bgColorWhite"
|
||||
android:orientation="vertical">
|
||||
|
||||
<Button
|
||||
android:id="@+id/btnCreatePlan"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/button_background"
|
||||
android:text="@string/create_plan"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="#ffffff"
|
||||
android:textSize="18dp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<ListView
|
||||
android:id="@android:id/list"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:divider="@android:color/transparent"
|
||||
android:dividerHeight="5dp"
|
||||
android:footerDividersEnabled="true"
|
||||
android:headerDividersEnabled="true"
|
||||
android:padding="5dp"
|
||||
android:scrollbarSize="1dp"
|
||||
android:scrollbarStyle="outsideOverlay" />
|
||||
|
||||
</LinearLayout>
|
|
@ -0,0 +1,132 @@
|
|||
package com.adins.mss.base.dynamicform.form.questions.viewholder;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.TableLayout;
|
||||
import android.widget.TableRow;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.adins.mss.base.GlobalData;
|
||||
import com.adins.mss.base.R;
|
||||
import com.adins.mss.base.dynamicform.form.models.LookupCriteriaBean;
|
||||
import com.adins.mss.base.util.LocaleHelper;
|
||||
import com.adins.mss.constant.Global;
|
||||
import com.adins.mss.foundation.formatter.Tool;
|
||||
import com.google.firebase.analytics.FirebaseAnalytics;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
public class LookupCriteriaOnlineActivity extends FragmentActivity {
|
||||
public static final String KEY_SELECTED_CRITERIA = "KEY_SELECTED_CRITERIA";
|
||||
public static final String KEY_WITH_FILTER = "KEY_WITH_FILTER";
|
||||
protected static List<LookupCriteriaBean> beanList;
|
||||
TableLayout criteriaTableLayout;
|
||||
private boolean withFilter;
|
||||
private FirebaseAnalytics screenName;
|
||||
|
||||
public static List<LookupCriteriaBean> getBeanList() {
|
||||
return beanList;
|
||||
}
|
||||
|
||||
public static void setBeanList(List<LookupCriteriaBean> beanList) {
|
||||
LookupCriteriaOnlineActivity.beanList = beanList;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
screenName = FirebaseAnalytics.getInstance(this);
|
||||
setContentView(R.layout.activity_lookup_online);
|
||||
criteriaTableLayout = (TableLayout) findViewById(R.id.tableCriteriaLayout);
|
||||
withFilter = getIntent().getBooleanExtra(KEY_WITH_FILTER, false);
|
||||
if (getBeanList() != null) {
|
||||
int index = 0;
|
||||
for (final LookupCriteriaBean bean : getBeanList()) {
|
||||
TableRow row = (TableRow) LayoutInflater.from(this).inflate(R.layout.lookup_criteria_row, criteriaTableLayout, false);
|
||||
if (!bean.getValue().equals("No Data Found")) {
|
||||
row.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
Intent intent = new Intent();
|
||||
intent.putExtra(KEY_SELECTED_CRITERIA, bean);
|
||||
setResult(RESULT_OK, intent);
|
||||
finish();
|
||||
}
|
||||
});
|
||||
}
|
||||
row.setPadding(0, 10, 0, 10);
|
||||
|
||||
String[] lookupCode = Tool.split(bean.getCode(), Global.DELIMETER_DATA_LOOKUP);
|
||||
String[] lookupValue = Tool.split(bean.getValue(), Global.DELIMETER_DATA_LOOKUP);
|
||||
StringBuilder lovCode = new StringBuilder();
|
||||
StringBuilder lovValue = new StringBuilder();
|
||||
for (String code : lookupCode) {
|
||||
if (lovCode.length() != 0)
|
||||
lovCode.append("\n");
|
||||
lovCode.append(code);
|
||||
}
|
||||
for (String value : lookupValue) {
|
||||
if (lovValue.length() != 0)
|
||||
lovValue.append("\n");
|
||||
lovValue.append(value);
|
||||
}
|
||||
|
||||
TextView textDesc = (TextView) row.findViewById(R.id.fieldValue);
|
||||
textDesc.setText(lovValue.toString());
|
||||
criteriaTableLayout.addView(row);
|
||||
|
||||
// set divider
|
||||
if (index + 1 < getBeanList().size()) {
|
||||
TableRow divider = (TableRow) LayoutInflater.from(this).inflate(R.layout.lookup_criteria_divider, criteriaTableLayout, false);
|
||||
criteriaTableLayout.addView(divider);
|
||||
index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
//Set Firebase screen name
|
||||
screenName.setCurrentScreen(this, getString(R.string.screen_name_lookup_criteria), null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void attachBaseContext(Context newBase) {
|
||||
Context context = newBase;
|
||||
Locale locale;
|
||||
try{
|
||||
locale = new Locale(GlobalData.getSharedGlobalData().getLocale());
|
||||
context = LocaleHelper.wrap(newBase, locale);
|
||||
} catch (Exception e) {
|
||||
locale = new Locale(LocaleHelper.ENGLSIH);
|
||||
context = LocaleHelper.wrap(newBase, locale);
|
||||
} finally {
|
||||
super.attachBaseContext(context);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
super.onDestroy();
|
||||
this.setBeanList(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (withFilter) {
|
||||
super.onBackPressed();
|
||||
} else {
|
||||
Intent intent = new Intent();
|
||||
setResult(RESULT_CANCELED, intent);
|
||||
finish();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
package com.adins.mss.base.plugins;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
/**
|
||||
* Created by Aditya Purwa on 1/5/2015.
|
||||
* Plugin.
|
||||
*/
|
||||
public abstract class Plugin {
|
||||
private final Context context;
|
||||
|
||||
/**
|
||||
* Initialize a new instance of plugin.
|
||||
*
|
||||
* @param context Context for the plugin.
|
||||
*/
|
||||
protected Plugin(Context context) {
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
public Context getContext() {
|
||||
return context;
|
||||
}
|
||||
|
||||
/**
|
||||
* When overridden in a derived class, used to check whether the given context could be plugged.
|
||||
*
|
||||
* @return True if supported, false otherwise.
|
||||
*/
|
||||
protected abstract boolean checkSupport();
|
||||
|
||||
/**
|
||||
* Apply the plugin.
|
||||
*
|
||||
* @return True if applied successfully, false otherwise.
|
||||
*/
|
||||
public abstract boolean apply();
|
||||
|
||||
/**
|
||||
* Cancel the application of the plugin.
|
||||
*/
|
||||
public abstract void cancel();
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
package com.adins.mss.base.depositreport;
|
||||
|
||||
import com.adins.mss.foundation.http.MssRequestType;
|
||||
|
||||
/**
|
||||
* Created by angga.permadi on 8/29/2016.
|
||||
*/
|
||||
public class TaskLogRequest extends MssRequestType {
|
||||
}
|
|
@ -0,0 +1,175 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/bg_grayscale"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:orientation="vertical"
|
||||
android:padding="16dp">
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatSpinner
|
||||
android:id="@+id/priorityViewByForm"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="5dp"
|
||||
android:background="@drawable/dropdown_background"
|
||||
android:padding="5dp"
|
||||
android:spinnerMode="dropdown" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/img_expand_by_form_pc"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignTop="@+id/priorityViewByForm"
|
||||
android:layout_alignEnd="@+id/priorityViewByForm"
|
||||
android:layout_alignBottom="@+id/priorityViewByForm"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:tint="@color/colorMC"
|
||||
app:srcCompat="@drawable/ic_expand" />
|
||||
</RelativeLayout>
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatSpinner
|
||||
android:id="@+id/priorityViewByUser"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="5dp"
|
||||
android:background="@drawable/dropdown_background"
|
||||
android:padding="5dp"
|
||||
android:spinnerMode="dropdown" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/img_expand_by_user_pc"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignTop="@+id/priorityViewByUser"
|
||||
android:layout_alignEnd="@+id/priorityViewByUser"
|
||||
android:layout_alignBottom="@+id/priorityViewByUser"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:tint="@color/colorMC"
|
||||
app:srcCompat="@drawable/ic_expand" />
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
<RelativeLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatSpinner
|
||||
android:id="@+id/priorityViewByBatch"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="5dp"
|
||||
android:background="@drawable/dropdown_background"
|
||||
android:padding="5dp"
|
||||
android:spinnerMode="dropdown" />
|
||||
|
||||
<ImageView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignTop="@+id/priorityViewByBatch"
|
||||
android:layout_alignEnd="@+id/priorityViewByBatch"
|
||||
android:layout_alignBottom="@+id/priorityViewByBatch"
|
||||
android:layout_marginEnd="10dp"
|
||||
android:tint="@color/colorMC"
|
||||
app:srcCompat="@drawable/ic_expand" />
|
||||
</RelativeLayout>
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:text="@string/label_info_batch"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||
android:textColor="@android:color/black"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:padding="4dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/formBatch"
|
||||
android:layout_width="150dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_info_form" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/divider_colon" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/formBatchValue"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="right" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:padding="4dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dateBatch"
|
||||
android:layout_width="150dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/label_info_submitdate" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/divider_colon" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dateBatchValue"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginBottom="8dp"
|
||||
android:gravity="right" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:text="@string/label_recapitulation"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium"
|
||||
android:textColor="@android:color/black"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<ListView
|
||||
android:id="@+id/recapitulationList"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="fill_parent"
|
||||
android:layout_weight="1" />
|
||||
|
||||
<Button
|
||||
android:id="@+id/transferButton"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/button_background"
|
||||
android:enabled="true"
|
||||
android:text="@string/btnTransfer"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall"
|
||||
android:textColor="@color/fontColorWhite" />
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
Loading…
Add table
Add a link
Reference in a new issue