Commit f2cee8a5 by 宁斌

Merge remote-tracking branch 'origin/master'

# Conflicts:
#	main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/NewMainActivity.java
#	public-base/build.gradle
#	table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
#	table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
#	user-login/src/main/java/com/gingersoft/gsa/cloud/user/login/mvp/ui/activity/LoginActivity.java
parents 240616a2 b6f967f6
......@@ -4,60 +4,6 @@
package="com.gingersoft.gsa.cloud.main">
<uses-permission android:name="android.permission.INTERNET" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:resizeable="true"
android:smallScreens="true" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission
android:name="android.permission.ACCESS_MOCK_LOCATION"
tools:ignore="MockLocation" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.RESTART_PACKAGES" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!-- <uses-permission android:name="android.permission.RESTART_PACKAGES" /> -->
<!-- <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> -->
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<!-- <uses-permission android:name="android.permission.DISABLE_KEYGUARD" /> -->
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.VIBRATE" />
<!-- 使用照相机权限 -->
<uses-permission android:name="android.permission.REORDER_TASKS" />
<!-- 自动聚焦权限 -->
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application>
<activity android:name=".mvp.ui.activity.NewMainActivity"/>
<activity android:name=".mvp.ui.activity.MainActivity"/>
......
......@@ -362,8 +362,8 @@ public class MainTopFragment extends BaseFragment<MainTopPresenter> implements M
lineChart.setShowChartName(false);
//底部不顯示顏色代表的意思
lineChart.getLegend().setDisplay(false);
lineChart.getMatrixHelper().setWidthMultiple(1.2f);
lineChart.getMatrixHelper().setCanZoom(true);
// lineChart.getMatrixHelper().setWidthMultiple(1f);
lineChart.getMatrixHelper().setCanZoom(false);
lineChart.getHorizontalAxis().setRotateAngle(0);//設置底部文字旋轉角度
lineChart.setFirstAnim(true);
lineChart.setChartData(chartData2);
......
......@@ -52,5 +52,4 @@ dependencies {
releaseImplementation rootProject.ext.dependencies["canary-release"]
testImplementation rootProject.ext.dependencies["canary-release"]
testImplementation rootProject.ext.dependencies["junit"]
implementation 'com.sunmi:printerlibrary:1.0.7'
}
......@@ -2,10 +2,16 @@
package="com.joe.print">
<application>
<activity android:name=".mvp.ui.activity.OldPrintActivity" android:theme="@style/print_TranslucentTheme"/>
<activity android:name=".mvp.ui.activity.PrintActivity" android:theme="@style/print_TranslucentTheme"/>
<activity android:name=".mvp.ui.activity.PrinterListActivity"/>
<activity android:name=".mvp.ui.activity.PrinterAddActivity"/>
<activity
android:name=".mvp.ui.activity.OldPrintActivity"
android:launchMode="singleTop"
android:theme="@style/print_TranslucentTheme" />
<activity
android:name=".mvp.ui.activity.PrintActivity"
android:launchMode="singleTop"
android:theme="@style/print_TranslucentTheme" />
<activity android:name=".mvp.ui.activity.PrinterListActivity" />
<activity android:name=".mvp.ui.activity.PrinterAddActivity" />
</application>
</manifest>
package com.joe.print.mvp.contract;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.jess.arms.mvp.IView;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import io.reactivex.Observable;
import okhttp3.RequestBody;
......@@ -23,7 +24,7 @@ import okhttp3.RequestBody;
public interface PrinterAddContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void addPrinterSuccess();
void addPrinterSuccess(PrinterDeviceBean printerDeviceBean);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
......
......@@ -88,7 +88,7 @@ public class PrinterAddPresenter extends BasePresenter<PrinterAddContract.Model,
@Override
public void onNext(BaseResult baseResult) {
if (baseResult.isSuccess()) {
mRootView.addPrinterSuccess();
mRootView.addPrinterSuccess(printerDeviceBean);
} else {
mRootView.showMessage("保存失敗");
}
......
package com.joe.print.mvp.print;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.RemoteException;
import com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils;
import com.sunmi.peripheral.printer.InnerPrinterCallback;
import com.sunmi.peripheral.printer.InnerPrinterException;
import com.sunmi.peripheral.printer.InnerPrinterManager;
import com.sunmi.peripheral.printer.InnerResultCallbcak;
import com.sunmi.peripheral.printer.SunmiPrinterService;
/**
* Created by Wyh on 2020/2/10.
......@@ -25,57 +21,4 @@ public class SunMiPrint {
return false;
}
}
public static boolean printBitmap(Context context, Bitmap bitmap) {
return bindService(context, new InnerPrinterCallback() {
@Override
protected void onConnected(SunmiPrinterService service) {
//驗證打印機狀態
if (PrintStatus.initV2PrintStatus(context, service)) {
try {
//打印機狀態正常,開始打印圖片
service.printBitmap(bitmap, new InnerResultCallbcak() {
@Override
public void onRunResult(boolean isSuccess) {
//返回接⼝执⾏的情况(并⾮真实打印):成功或失败
if (isSuccess) {
ToastUtils.show(context, "打印成功");
} else {
ToastUtils.show(context, "打印失敗");
}
}
@Override
public void onReturnString(String result) {
//部分接⼝会异步返回查询数据
ToastUtils.show(context, "onReturnString:" + result);
}
@Override
public void onRaiseException(int code, String msg) {
//接⼝执⾏失败时,返回的异常状态
ToastUtils.show(context, "打印異常狀態碼:" + code + "---MSG:" + msg);
}
@Override
public void onPrintResult(int code, String msg) {
//事务模式下真实的打印结果返回
ToastUtils.show(context, "打印結果:" + code + "---MSG:" + msg);
}
});
} catch (RemoteException e) {
e.printStackTrace();
//如部分接⼝只能⽤于指定机型所以会跑出调⽤接⼝异常,如钱箱接⼝只能⽤于台式机
ToastUtils.show(context, "打印失敗" + "msg:" + e.getMessage());
}
}
}
@Override
protected void onDisconnected() {
ToastUtils.show(context, "斷開連接");
}
});
}
}
......@@ -6,11 +6,11 @@ import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.WindowManager;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.joe.print.mvp.print.SendPrint;
......@@ -31,13 +31,13 @@ public class OldPrintActivity extends Activity implements PrintSocketHolder.OnSt
private Dialog dialog;
private String callId;
/**
/**-
* 是否打印成功 true:成功
*/
private boolean printStatus = false;
private String ip;
private String port;
private Integer port;
private int paperType = 1;//打印紙類型 1:58mm,2::80mm
private int printWidth = 560;//打印出來的內容寬度
/**
......@@ -48,8 +48,11 @@ public class OldPrintActivity extends Activity implements PrintSocketHolder.OnSt
* 3:廚房單
*/
private int type = -1;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
| WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
super.onCreate(savedInstanceState);
getWindow().setBackgroundDrawable(null);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
......@@ -58,18 +61,21 @@ public class OldPrintActivity extends Activity implements PrintSocketHolder.OnSt
printOrder(this);
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
//點擊當前頁面任意地方自動關閉
finish();
return true;
}
private void initIntent() {
Intent intent = getIntent();
ip = intent.getStringExtra("ip");
port = intent.getStringExtra("port");
port = intent.getIntExtra("port", 0);
paperType = intent.getIntExtra("paperType", 1);
type = intent.getIntExtra("type", -1);
if (ip == null || ip.equals("")) {
ip = "192.168.1.217";
}
if (TextUtil.isEmptyOrNullOrUndefined(port) || port.equals("")) {
port = "0";
}
if (paperType == 1) {
paperType = PrinterWriter58mm.TYPE_58;
printWidth = 580 - 20;//兩邊留20的空隙
......@@ -87,14 +93,14 @@ public class OldPrintActivity extends Activity implements PrintSocketHolder.OnSt
dialog.setOnDismissListener(dialog -> dismiss(""));
dialog.setOnCancelListener(dialog -> dismiss(""));
if (executor == null) {
executor = new PrintExecutor(ip, Integer.parseInt(port), paperType);
executor = new PrintExecutor(ip, port, paperType);
executor.setOnStateChangedListener(this);
executor.setOnPrintResultListener(this);
}
if (maker == null) {
maker = new SendPrint(context, 255, printWidth, type);
}
executor.setIp(ip, Integer.parseInt(port));
executor.setIp(ip, port);
executor.doPrinterRequestAsync(maker);
executor.setReconnectTimes(3);
}
......@@ -156,7 +162,7 @@ public class OldPrintActivity extends Activity implements PrintSocketHolder.OnSt
private void dismiss(String msg) {
if(msg != null && !msg.equals("")){
if (msg != null && !msg.equals("")) {
ToastUtils.show(this, msg);
}
//延遲一秒
......
package com.joe.print.mvp.ui.activity;
/**
* Created by Wyh on 2020/3/6.
*/
import android.annotation.SuppressLint;
import java.io.IOException;
import java.io.OutputStream;
import java.nio.charset.Charset;
public class PrintUtils {
private static final int LINE_BYTE_SIZE = 32;
private static OutputStream outputStream = null;
public static void setOutputStream(OutputStream outputStream) {
PrintUtils.outputStream = outputStream;
}
/**
* 打印文字
*
* @param text 要打印的文字
*/
public static void printText(String text) {
try {
byte[] data = text.getBytes("gbk");
outputStream.write(data, 0, data.length);
outputStream.flush();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 设置打印格式
*
* @param command 格式指令
*/
public static void selectCommand(byte[] command) {
try {
outputStream.write(command);
outputStream.flush();
} catch (IOException e) {
//Toast.makeText(this.context, "发送失败!", Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
/**
* 复位打印机
*/
public static final byte[] RESET = {0x1b, 0x40};
/**
* 左对齐
*/
public static final byte[] ALIGN_LEFT = {0x1b, 0x61, 0x00};
/**
* 中间对齐
*/
public static final byte[] ALIGN_CENTER = {0x1b, 0x61, 0x01};
/**
* 选择加粗模式
*/
public static final byte[] BOLD = {0x1b, 0x45, 0x01};
/**
* 取消加粗模式
*/
public static final byte[] BOLD_CANCEL = {0x1b, 0x45, 0x00};
/**
* 宽高加倍
*/
public static final byte[] DOUBLE_HEIGHT_WIDTH = {0x1d, 0x21, 0x11};
/**
* 字体不放大
*/
public static final byte[] NORMAL = {0x1d, 0x21, 0x00};
/**
* 设置默认行间距
*/
public static final byte[] LINE_SPACING_DEFAULT = {0x1b, 0x32};
// /**
// * 设置行间距
// */
public static final byte[] LINE_SPACING = {0x1b, 0x33, 0x50}; // 20的行间距(0,255)
/**
* 设置字符间距
*/
public static final byte[] COLUMN_SPACING = {0x1b, 0x20, 0x25};
/**
* 取消设置字符间距
*/
public static final byte[] COLUMN_SPACING_CANCEL = {0x1b, 0x20, 0x00};
/**
* 打印两列
*
* @param leftText 左侧文字
* @param rightText 右侧文字
* @return
*/
@SuppressLint("NewApi")
public static String printTwoData(String leftText, String rightText) {
StringBuilder sb = new StringBuilder();
int leftTextLength = getBytesLength(leftText);
int rightTextLength = getBytesLength(rightText);
sb.append(leftText);
// 计算两侧文字中间的空格
int marginBetweenMiddleAndRight = LINE_BYTE_SIZE - leftTextLength - rightTextLength;
for (int i = 0; i < marginBetweenMiddleAndRight; i++) {
sb.append(" ");
}
sb.append(rightText);
return sb.toString();
}
/**
* 获取数据长度
*
* @param msg
* @return
*/
@SuppressLint("NewApi")
private static int getBytesLength(String msg) {
return msg.getBytes(Charset.forName("GB2312")).length;
}
}
\ No newline at end of file
......@@ -204,9 +204,12 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
}
@Override
public void addPrinterSuccess() {
public void addPrinterSuccess(PrinterDeviceBean printerDeviceBean) {
//添加或編輯打印機成功
showMessage("保存成功");
Intent data = new Intent();
data.putExtra("printDevice", printerDeviceBean);
setResult(PrintActivity.ADD_PRINT_CODE, data);
finish();
}
......
......@@ -87,5 +87,5 @@ dependencies {
//時間選擇控件
implementation 'org.aspectj:aspectjrt:1.8.9'
api files('libs/nexgon5lib.jar')
implementation files('libs/nexgon5lib.jar')
api 'com.sunmi:printerlibrary:1.0.7'
}
......@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.base.application;
import android.app.Activity;
import android.content.Context;
import android.os.Build;
import android.os.RemoteException;
import android.util.Log;
......@@ -18,6 +19,7 @@ import com.elvishew.xlog.printer.file.clean.FileLastModifiedCleanStrategy;
import com.elvishew.xlog.printer.file.naming.DateFileNameGenerator;
import com.gingersoft.gsa.cloud.base.BuildConfig;
import com.gingersoft.gsa.cloud.base.common.bean.CurrentAndroidSetting;
import com.gingersoft.gsa.cloud.base.utils.AidlUtil;
import com.gingersoft.gsa.cloud.base.utils.constans.UserConstans;
import com.gingersoft.gsa.cloud.base.utils.crash.AppCrashHandler;
import com.gingersoft.gsa.cloud.base.utils.file.FileUtils;
......@@ -66,12 +68,17 @@ public class GsaCloudApplication extends BaseApplication {
androidSetting = new CurrentAndroidSetting();
try {
//初始化N5打印
PrinterUtil.initPrinter(this);
} catch (NoInitPrinterException | RemoteException e) {
e.printStackTrace();
Log.e("error", "GsaCloudApplication打印初始化失敗:" + e.getMessage());
if (GsaCloudApplication.mV2.contains(Build.MODEL)) {
//商米打印
AidlUtil.getInstance().connectPrinterService(this);
} else if (GsaCloudApplication.mN5.contains(Build.MODEL)) {
try {
//初始化N5打印
PrinterUtil.initPrinter(this);
} catch (NoInitPrinterException | RemoteException e) {
e.printStackTrace();
Log.e("error", "GsaCloudApplication打印初始化失敗:" + e.getMessage());
}
}
}
......
......@@ -88,7 +88,7 @@ public class MyOrderManage {
}
public Date getOpenTableTime() {
if (orderBean != null) {
if (orderBean != null && orderBean.getCreateTime() != null) {
return new Date(orderBean.getCreateTime());
}
return new Date();
......
package com.joe.print.mvp.print;
package com.gingersoft.gsa.cloud.base.utils;
import android.content.Context;
import android.graphics.Bitmap;
import android.os.RemoteException;
import android.widget.Toast;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.log.LogUtil;
import com.sunmi.peripheral.printer.ICallback;
import com.sunmi.peripheral.printer.InnerPrinterCallback;
import com.sunmi.peripheral.printer.InnerPrinterException;
import com.sunmi.peripheral.printer.InnerPrinterManager;
import com.sunmi.peripheral.printer.InnerResultCallbcak;
import com.sunmi.peripheral.printer.SunmiPrinterService;
......@@ -161,7 +160,7 @@ public class AidlUtil {
/*
*打印图片
*/
public void printBitmap(Bitmap bitmap) {
public void printBitmap(Bitmap bitmap,InnerResultCallbcak mInnerResultCallbcak) {
if (sunmiPrinterService == null) {
Toast.makeText(context, LanguageUtils.get_language_system(context, "server.disconnected", "未連接上打印機!"), Toast.LENGTH_LONG).show();
return;
......@@ -169,7 +168,7 @@ public class AidlUtil {
try {
sunmiPrinterService.setAlignment(1, null);
sunmiPrinterService.printBitmap(bitmap, null);
sunmiPrinterService.printBitmap(bitmap, mInnerResultCallbcak);
sunmiPrinterService.lineWrap(3, null);
} catch (RemoteException e) {
e.printStackTrace();
......
......@@ -3,13 +3,12 @@ package com.gingersoft.gsa.cloud.table.mvp.contract;
import android.app.Activity;
import android.widget.BaseAdapter;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.FoodCombo;
import com.gingersoft.gsa.cloud.database.bean.FoodModifier;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.jess.arms.base.DefaultAdapter;
import java.util.List;
......@@ -37,6 +36,8 @@ public interface MealStandContract {
boolean isInitFineItemLayout();
int getRestaurantId();
void initFineItemTabBarViewPage();
void showFinePage();
......
......@@ -17,6 +17,7 @@ public class CreateOrderRequest {
private int person;
private int tableId;
private int restaurantId;
private Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails;
public int getPerson() {
......@@ -35,6 +36,14 @@ public class CreateOrderRequest {
this.tableId = tableId;
}
public int getRestaurantId() {
return restaurantId;
}
public void setRestaurantId(int restaurantId) {
this.restaurantId = restaurantId;
}
public Map<Long, List<OrderBean.OrderDetailsBean>> getOrderDetails() {
return orderDetails;
}
......
......@@ -13,6 +13,7 @@ import com.gingersoft.gsa.cloud.table.mvp.model.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.AddOrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderMoneyAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter;
......@@ -26,7 +27,6 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.IdentityHashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
......
......@@ -346,7 +346,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
setOrderId((Double) info.getData());
}
mRootView.showMessage("送單成功");
printSendOrder(MyOrderManage.getInstance().getOrderFoodList());
printSendOrder(getOrderFoodLists());
IActivity.returnTableActivity(true);
} else {
mRootView.showMessage("送單失敗");
......
......@@ -419,6 +419,11 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
}
@Override
public int getRestaurantId() {
return GsaCloudApplication.getRestaurantId(mContext);
}
@Override
public void initFineItemTabBarViewPage() {
fm = getSupportFragmentManager();
List<Fragment> fragmentList = new ArrayList<>();
......
......@@ -130,7 +130,7 @@ public class OrderContentActivity extends BaseActivity<OrderContentPresenter> im
String openTime = String.format("%tH:%tM", dd, dd);
String tableno = "";
if (!OpenTableManage.getDefault().isSplite()) {
if (!OpenTableManage.getDefault().isSplite() && OpenTableManage.getDefault().getTableBean() != null) {
tableno = OpenTableManage.getDefault().getTableBean().getTableName();
} else {//TODO 暫未分檯功能
// tableno = GSAApplication.tableContract.getTableno().trim() + "-" + GSAApplication.tableContract.getTableno_split().trim();
......
......@@ -10,7 +10,7 @@
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<application
android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
android:allowBackup="true"
......@@ -24,7 +24,6 @@
<activity
android:name=".mvp.ui.activity.LoginActivity"
android:windowSoftInputMode="adjustResize|stateHidden"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
......
......@@ -36,7 +36,6 @@ import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils;
import com.tbruyelle.rxpermissions2.RxPermissions;
import java.io.IOException;
import java.util.ArrayList;
......@@ -90,7 +89,6 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
@BindView(R2.id.ic_look_pwd)
ImageView mIvSeePwd;
private boolean passwrodVisibility = false;
@Override
......@@ -114,6 +112,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
@Override
public int initView(@Nullable Bundle savedInstanceState) {
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
return R.layout.user_login_activity_login; //如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
......@@ -219,11 +218,13 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
private void killBeforeActivty() {
List<Activity> activities = mAppManager.getActivityList();
for (int i = activities.size() - 1; i >= 0; i--) {
Activity activity = activities.get(i);
if (!activity.getClass().getName().equals(getClass().getName())) {
LogUtil.d(TAG, "killBeforeActivty: " + i + " - " + activity.getClass().getSimpleName());
mAppManager.killActivity(activity.getClass());
mAppManager.removeActivity(activity);
if (i < activities.size()) {
Activity activity = activities.get(i);
if (!activity.getClass().getName().equals(getClass().getName())) {
LogUtil.d(TAG, "killBeforeActivty: " + i + " - " + activity.getClass().getSimpleName());
mAppManager.killActivity(activity.getClass());
mAppManager.removeActivity(activity);
}
}
}
}
......@@ -291,11 +292,8 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
GsaCloudApplication.setBrandRestaurantInfos(this, "");
if (loginBean.getData() != null) {
GsaCloudApplication.setLoginToken(LoginActivity.this, loginBean.getData().getToken());
if (loginBean.getData().getUser() != null) {
GsaCloudApplication.setMemberId(LoginActivity.this, loginBean.getData().getUser().getUserId());
GsaCloudApplication.setMemberName(LoginActivity.this, loginBean.getData().getUser().getUserName());
......@@ -327,11 +325,11 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
if (brandsBean != null) {
saveBrandAndRestaurantInfo(brandsBean.getBrandId(), brandsBean.getBrandName(), item.getId(), item.getText());
}
jumpDownloadActivity();
dialog.dismiss();
jumpDownloadActivity();
// killMyself();
}).build();
if (!isFinishing() && dialog1 != null && !dialog1.isShowing()) {
if (!isFinishing() && dialog1 != null && !dialog1.isShowing() && !isDestroy) {
dialog1.show();
}
}
......@@ -340,13 +338,16 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
}
}
private boolean isDestroy = false;
@Override
protected void onDestroy() {
super.onDestroy();
Log.e("error", "登陸頁面銷毀:onDestroy");
// if (dialog != null) {
// dialog.dismiss();
// }
if (dialog1 != null) {
dialog1.dismiss();
}
isDestroy = true;
}
/**
......@@ -418,13 +419,8 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
CC.obtainBuilder("Component.Download")
.setActionName("showDownloadActivity")
.build()
.callAsync(new IComponentCallback() {
@Override
public void onResult(CC cc, CCResult result) {
//此onResult在子线程中运行
boolean result2 = result.isSuccess();
}
});
.call();
killMyself();
}
private void jumpMainActivity() {
......
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?><!--<ScrollView 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:fillViewport="true">-->
<androidx.constraintlayout.widget.ConstraintLayout 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="@color/theme_white_color"
android:clipChildren="true"
android:orientation="vertical">
<TextView
......@@ -118,8 +124,8 @@
android:layout_width="@dimen/dp_30"
android:layout_height="@dimen/dp_30"
android:padding="@dimen/dp_5"
android:visibility="gone"
android:src="@mipmap/ic_password_hide"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@id/ed_login_user_pwd"
app:layout_constraintRight_toLeftOf="@id/iv_clear_pwd"
app:layout_constraintTop_toTopOf="@id/ed_login_user_pwd" />
......@@ -167,12 +173,11 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/dp_10"
android:text="v1.0"
android:textSize="16dp"
android:textSize="@dimen/sp_16"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.95" />
app:layout_constraintRight_toRightOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout><!--</ScrollView>-->
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment