Commit 240616a2 by 宁斌

調整add食品接口結構

parent 8dcec7ed
...@@ -42,7 +42,6 @@ public class ComponentDownload implements IComponent { ...@@ -42,7 +42,6 @@ public class ComponentDownload implements IComponent {
@Override @Override
public boolean onCall(CC cc) { public boolean onCall(CC cc) {
String actionName = cc.getActionName(); String actionName = cc.getActionName();
Context context = cc.getContext();
switch (actionName) { switch (actionName) {
case "showDownloadActivity": case "showDownloadActivity":
openActivity(cc); openActivity(cc);
......
...@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.main.mvp.contract; ...@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.main.mvp.contract;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
import com.tbruyelle.rxpermissions2.RxPermissions;
import io.reactivex.Observable; import io.reactivex.Observable;
import okhttp3.RequestBody; import okhttp3.RequestBody;
...@@ -23,6 +24,8 @@ public interface NewMainContract { ...@@ -23,6 +24,8 @@ public interface NewMainContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息 //对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView { interface View extends IView {
void loginOut(); void loginOut();
RxPermissions getRxPermissions();
} }
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存 //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
......
...@@ -2,13 +2,19 @@ package com.gingersoft.gsa.cloud.main.mvp.presenter; ...@@ -2,13 +2,19 @@ package com.gingersoft.gsa.cloud.main.mvp.presenter;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.mvp.contract.NewMainContract; import com.gingersoft.gsa.cloud.main.mvp.contract.NewMainContract;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.PermissionUtil;
import com.jess.arms.utils.RxLifecycleUtils; import com.jess.arms.utils.RxLifecycleUtils;
import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.android.schedulers.AndroidSchedulers;
...@@ -74,6 +80,26 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa ...@@ -74,6 +80,26 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa
mRootView.loginOut(); mRootView.loginOut();
} }
}); });
}
/**
* 进入应用强制用户开启 存储的权限(保存error log来文件必须拥有读写权限)
*/
public void requestExternalStoragePermission() {
PermissionUtil.externalStorage(new PermissionUtil.RequestPermission() {
@Override
public void onRequestPermissionSuccess() {
}
@Override
public void onRequestPermissionFailure(List<String> permissions) {
mRootView.showMessage(LanguageUtils.get_language_system(mApplication, "external.storage.permission.hint", ArmsUtils.getString(mApplication, R.string.queue_write_external_storage_permission_hint)));
mRootView.killMyself();
}
@Override
public void onRequestPermissionFailureWithAskNeverAgain(List<String> permissions) {
}
}, mRootView.getRxPermissions(), mErrorHandler);
} }
} }
...@@ -30,6 +30,7 @@ import com.jess.arms.base.BaseActivity; ...@@ -30,6 +30,7 @@ import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.widget.pullRefreshLayout.QMUIPullRefreshLayout; import com.qmuiteam.qmui.widget.pullRefreshLayout.QMUIPullRefreshLayout;
import com.tbruyelle.rxpermissions2.RxPermissions;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -94,8 +95,11 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -94,8 +95,11 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
@BindView(R2.id.ll_clearance) @BindView(R2.id.ll_clearance)
LinearLayout ll_clearance; LinearLayout ll_clearance;
private RxPermissions mRxPermissions;
@Override @Override
public void setupActivityComponent(@NonNull AppComponent appComponent) { public void setupActivityComponent(@NonNull AppComponent appComponent) {
mRxPermissions = new RxPermissions(this);
DaggerNewMainComponent //如找不到该类,请编译一下项目 DaggerNewMainComponent //如找不到该类,请编译一下项目
.builder() .builder()
.appComponent(appComponent) .appComponent(appComponent)
...@@ -116,9 +120,10 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -116,9 +120,10 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
@Override @Override
public void initData(@Nullable Bundle savedInstanceState) { public void initData(@Nullable Bundle savedInstanceState) {
mPresenter.requestExternalStoragePermission();
FragmentManager fragmentManager = getSupportFragmentManager(); FragmentManager fragmentManager = getSupportFragmentManager();
mainTopFragment = (MainTopFragment) fragmentManager.findFragmentById(R.id.main_top_fragment); mainTopFragment = (MainTopFragment) fragmentManager.findFragmentById(R.id.main_top_fragment);
switchServer.setVisibility(BuildConfig.DEBUG ? View.VISIBLE : View.GONE); switchServer.setVisibility(BuildConfig.DEBUG ? View.VISIBLE : View.GONE);
tvStoreName.setText(GsaCloudApplication.getRestaurantName(mContext)); tvStoreName.setText(GsaCloudApplication.getRestaurantName(mContext));
refresh.setOnPullListener(new QMUIPullRefreshLayout.OnPullListener() { refresh.setOnPullListener(new QMUIPullRefreshLayout.OnPullListener() {
...@@ -342,14 +347,6 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -342,14 +347,6 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
finish(); finish();
} }
@OnClick({R2.id.ll_switch_server, R2.id.layout_login_out, R2.id.iv_personal_center, R2.id.tv_restaurant_name})
public View.OnClickListener mSlidingMenuOnclick = new View.OnClickListener() {
@Override
public void onClick(View v) {
slideMenu.toggle();
}
};
@OnClick({R2.id.layout_login_out, R2.id.iv_personal_center,R2.id.tv_restaurant_name,R2.id.ll_clearance}) @OnClick({R2.id.layout_login_out, R2.id.iv_personal_center,R2.id.tv_restaurant_name,R2.id.ll_clearance})
@Override @Override
public void onClick(View v) { public void onClick(View v) {
...@@ -382,6 +379,11 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -382,6 +379,11 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
finish(); finish();
} }
@Override
public RxPermissions getRxPermissions() {
return mRxPermissions;
}
private long mExitTime; private long mExitTime;
@Override @Override
......
...@@ -87,4 +87,5 @@ dependencies { ...@@ -87,4 +87,5 @@ dependencies {
//時間選擇控件 //時間選擇控件
implementation 'org.aspectj:aspectjrt:1.8.9' implementation 'org.aspectj:aspectjrt:1.8.9'
api files('libs/nexgon5lib.jar') api files('libs/nexgon5lib.jar')
implementation files('libs/nexgon5lib.jar')
} }
...@@ -58,11 +58,11 @@ public class GsaCloudApplication extends BaseApplication { ...@@ -58,11 +58,11 @@ public class GsaCloudApplication extends BaseApplication {
this.mAppContext = this; this.mAppContext = this;
CC.enableVerboseLog(true); CC.enableVerboseLog(true);
CC.enableDebug(true); CC.enableDebug(true);
CC.enableRemoteCC(true); // CC.enableRemoteCC(true);
//初始化日誌管理庫 //初始化日誌管理庫
initXLog(); initXLog();
initGreenDao(); initGreenDao();
AppCrashHandler.getInstance().init(this, "test"); AppCrashHandler.getInstance().init(this);
androidSetting = new CurrentAndroidSetting(); androidSetting = new CurrentAndroidSetting();
......
...@@ -123,7 +123,7 @@ public class OrderBean { ...@@ -123,7 +123,7 @@ public class OrderBean {
private double price; private double price;
private double lunchboxPrice; private double lunchboxPrice;
private int number; private int number;
private String createTime; // private String createTime;
private int status; private int status;
private byte type; private byte type;
...@@ -213,13 +213,13 @@ public class OrderBean { ...@@ -213,13 +213,13 @@ public class OrderBean {
this.number = number; this.number = number;
} }
public String getCreateTime() { // public String getCreateTime() {
return createTime; // return createTime;
} // }
//
public void setCreateTime(String createTime) { // public void setCreateTime(String createTime) {
this.createTime = createTime; // this.createTime = createTime;
} // }
public int getStatus() { public int getStatus() {
return status; return status;
...@@ -254,7 +254,6 @@ public class OrderBean { ...@@ -254,7 +254,6 @@ public class OrderBean {
", price=" + price + ", price=" + price +
", lunchboxPrice=" + lunchboxPrice + ", lunchboxPrice=" + lunchboxPrice +
", number=" + number + ", number=" + number +
", createTime='" + createTime + '\'' +
", status=" + status + ", status=" + status +
", type=" + type + ", type=" + type +
", parentId=" + parentId + ", parentId=" + parentId +
......
...@@ -39,6 +39,7 @@ import java.lang.reflect.Field; ...@@ -39,6 +39,7 @@ import java.lang.reflect.Field;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -81,10 +82,6 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -81,10 +82,6 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
* 错误报告文件的扩展名 * 错误报告文件的扩展名
*/ */
private static final String CRASH_REPORTER_EXTENSION = ".cyposdebug"; private static final String CRASH_REPORTER_EXTENSION = ".cyposdebug";
private String machinename;
private String crashFile;
private File f;
private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss");// 用于格式化日期,作为日志文件名的一部分 private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss");// 用于格式化日期,作为日志文件名的一部分
private Map<String, String> info = new HashMap<String, String>();// 用来存储设备信息和异常信息 private Map<String, String> info = new HashMap<String, String>();// 用来存储设备信息和异常信息
...@@ -112,17 +109,15 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -112,17 +109,15 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
* *
* @param ctx * @param ctx
*/ */
public void init(Context ctx, String machinename) { public void init(Context ctx) {
mContext = ctx; mContext = ctx;
mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler(); mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler();
Thread.setDefaultUncaughtExceptionHandler(this); Thread.setDefaultUncaughtExceptionHandler(this);
this.machinename = machinename;
crashFile = ctx.getFilesDir().getAbsoluteFile().getParent() + File.separator + "shared_prefs" + File.separator + "Crash.xml"; File file = new File(FileUtils.ERRORLOG_PATH);
f = new File(crashFile); if (file.exists()) {
if (f.exists()) {
sendPreviousReportsToServer(); sendPreviousReportsToServer();
f.delete(); file.delete();
} }
} }
...@@ -219,7 +214,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -219,7 +214,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
//保存错误报告到文件 //保存错误报告到文件
saveCrashInfo2File(ex); saveCrashInfo2File(ex);
//发送错误报告到服务器 //发送错误报告到服务器
sendCrashReportsToServer(mContext); sendCrashReportsToServer();
return true; return true;
} }
...@@ -227,116 +222,22 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -227,116 +222,22 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
* 在程序启动时候, 可以调用该函数来发送以前没有发送的报告 * 在程序启动时候, 可以调用该函数来发送以前没有发送的报告
*/ */
public void sendPreviousReportsToServer() { public void sendPreviousReportsToServer() {
sendCrashReportsToServer(mContext); sendCrashReportsToServer();
} }
/** /**
* 把错误报告发送给服务器,包含新产生的和以前没发送的. * 把错误报告发送给服务器,包含新产生的和以前没发送的.
*
* @param ctx
*/ */
private void sendCrashReportsToServer(Context ctx) { private void sendCrashReportsToServer() {
if (!TextUtils.isEmpty(crashFile)) { File file = new File(FileUtils.ERRORLOG_PATH);
List<File> files = new ArrayList<>(); File[] files = file.listFiles();
File file = new File(crashFile); if (files != null) {
files.add(file); List<File> fileList = Arrays.asList(files);
OkHttp3Utils.sendFileMultipart("", file.getName(), files); OkHttp3Utils.sendFileMultipart("", file.getName(), fileList);
}
// uploadFile2Svr(crashFile, "ErrorAppCrash_" + TimeUtil.StampToData(TimeUtil.dateFormatYMDHMS_f, System.currentTimeMillis()));
}
public void showServerice(String image, String pictureName, int tag) {
// String url1 = GSAApplication.getWebServerAddress() + "/App_Crash";
//
// StringBuilder tempParams = new StringBuilder();
// try {
// tempParams.append(String.format("%s=%s", "APP_VERSION_NAME", URLEncoder.encode(DeviceUtils.getVersionName(mContext), "utf-8")));
// tempParams.append(String.format("%s=%s", "APP_VERSION_CODE", URLEncoder.encode(String.valueOf(DeviceUtils.getVersionCode(mContext)), "utf-8")));
// tempParams.append(String.format("%s=%s", "VERSION", URLEncoder.encode(Build.VERSION.RELEASE, "utf-8")));
// tempParams.append(String.format("%s=%s", "MODEL", URLEncoder.encode(Build.MODEL, "utf-8")));
//
// tempParams.append(String.format("%s=%s", "filename", URLEncoder.encode(pictureName + ".xml", "utf-8")));
// tempParams.append(String.format("&%s=%s", "image", URLEncoder.encode(image, "utf-8")));
// tempParams.append(String.format("&%s=%s", "tag", URLEncoder.encode(String.valueOf(tag), "utf-8")));
// tempParams.append(String.format("&%s=%s", "machinename", URLEncoder.encode(machinename, "utf-8")));
// } catch (UnsupportedEncodingException e1) {
// e1.printStackTrace();
// }
//
// new Thread(new Runnable() {
//
// @Override
// public void run() {
// String requestUrl = String.format("%s?%s", url1, tempParams.toString());
// OkHttpClient client = new OkHttpClient.Builder()
// .connectTimeout(GSAApplication.REQUEST_TIMEOUT, TimeUnit.SECONDS)
// .readTimeout(GSAApplication.REQUEST_TIMEOUT, TimeUnit.SECONDS)
// .build();
//
// Request request = new Request.Builder().url(requestUrl).build();
// Call call = client.newCall(request);
// try {
// Response response = call.execute();
// if (response.isSuccessful()) {
// String str = response.body().string();
//
// } else {
// throw new IOException("Unexpected code " + response);
// }
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
// }).start();
}
private void uploadFile2Svr(String pictureFile, String pictureName) {
try {
FileInputStream fis = new FileInputStream(pictureFile);
//ByteArrayOutputStream baos=new ByteArrayOutputStream();
byte[] buffer = new byte[100 * 1024];
int count = 0;
int i = 0;
while ((count = fis.read(buffer)) >= 0) {
String uploadBuffer = new String(Base64.encode(buffer, 0, count, Base64.DEFAULT));
showServerice(uploadBuffer, pictureName, i);
for (int j = 0; j < 1000; j++) ;
i++;
}
fis.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} }
} }
/** /**
* 获取错误报告文件名
*
* @param ctx
* @return
*/
private String[] getCrashReportFiles(Context ctx) {
File filesDir = ctx.getFilesDir();
FilenameFilter filter = new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.endsWith(CRASH_REPORTER_EXTENSION);
}
};
return filesDir.list(filter);
}
/**
* 保存一些信息到文件中
*/
public void saveInfoToFile(String w1, String writeValue) {
Writer info = new StringWriter();
// mSetup.setSaveValue_Crash(w1, writeValue, mContext);
}
/**
* 收集程序崩溃的设备信息 * 收集程序崩溃的设备信息
* *
* @param ctx * @param ctx
...@@ -373,7 +274,6 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -373,7 +274,6 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
/** /**
* 保存错误信息到SP * 保存错误信息到SP
*
* @param ex * @param ex
* @return * @return
*/ */
...@@ -387,15 +287,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -387,15 +287,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
cause.printStackTrace(printWriter); cause.printStackTrace(printWriter);
cause = cause.getCause(); cause = cause.getCause();
} }
String result = info.toString();
printWriter.close(); printWriter.close();
// AppComponent appComponent = ArmsUtils.obtainAppComponentFromContext(mContext);
// mSetup.setSaveValue_Crash("Error-Activity", appComponent.appManager().getTopActivity().getClass().getName().toString(), mContext);
// mSetup.setSaveValue_Crash("Error:", result, mContext);
// long timestamp = System.currentTimeMillis();
// mSetup.setSaveValue_Crash("Error-time:", format.format(timestamp) + "", mContext);
return null; return null;
} }
...@@ -422,11 +314,10 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -422,11 +314,10 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
long timetamp = System.currentTimeMillis(); long timetamp = System.currentTimeMillis();
String time = format.format(new Date()); String time = format.format(new Date());
String MemberName = GsaCloudApplication.getMemberName(mContext); String MemberName = GsaCloudApplication.getMemberName(mContext);
String fileName = "crash-" + MemberName + "-" + DeviceUtils.getVersionName(mContext) + "-" + time + "-" + timetamp + "-" + info.get("versionName") + ".xml"; String fileName = "crash-" + MemberName + "-" + time + "-" + timetamp + "-" + info.get("versionName") + ".xml";
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {//外部存储卡 if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {//外部存储卡
try { try {
File dir = new File(FileUtils.ERRORLOG_PATH); File dir = new File(FileUtils.ERRORLOG_PATH);
Log.i("CrashHandler", dir.toString());
//不存在就創建目錄 //不存在就創建目錄
if (!dir.exists()) if (!dir.exists())
dir.mkdirs(); dir.mkdirs();
......
package com.gingersoft.gsa.cloud.base.utils.view;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2018/12/18
* 修订历史:2018/12/18
* 描述:
*/
public class ViewUtils {
// 两次点击按钮之间的点击间隔不能少于800毫秒
private static long lastClickTime;
//两次点击按钮之间的点击间隔不能少于200毫秒,防止快速点击食品导致不同步问题
private static final int MIN_CLICK_DELAY_TIME2 = 200;
private static final int MIN_CLICK_DELAY_TIME5 = 500;
public static boolean isFastClick5() {
boolean flag = false;
long curClickTime = System.currentTimeMillis();
if ((curClickTime - lastClickTime) >= MIN_CLICK_DELAY_TIME5) {
flag = true;
}
lastClickTime = curClickTime;
return flag;
}
public static boolean isFastClick2() {
boolean flag = false;
long curClickTime = System.currentTimeMillis();
if ((curClickTime - lastClickTime) >= MIN_CLICK_DELAY_TIME2) {
flag = true;
}
lastClickTime = curClickTime;
return flag;
}
}
...@@ -5,10 +5,8 @@ import android.database.Cursor; ...@@ -5,10 +5,8 @@ import android.database.Cursor;
import android.util.Log; import android.util.Log;
import com.gingersoft.gsa.cloud.database.DaoManager; import com.gingersoft.gsa.cloud.database.DaoManager;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.ComboItem; import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.greendao.ComboItemDao; import com.gingersoft.gsa.cloud.database.greendao.ComboItemDao;
import com.gingersoft.gsa.cloud.database.greendao.FoodDao;
import org.greenrobot.greendao.query.QueryBuilder; import org.greenrobot.greendao.query.QueryBuilder;
......
...@@ -16,7 +16,6 @@ import android.view.animation.DecelerateInterpolator; ...@@ -16,7 +16,6 @@ import android.view.animation.DecelerateInterpolator;
import android.view.animation.TranslateAnimation; import android.view.animation.TranslateAnimation;
import android.widget.FrameLayout; import android.widget.FrameLayout;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import com.gingersoft.gsa.cloud.base.R; import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.ui.adapter.BasTextSectiontAdapter; import com.gingersoft.gsa.cloud.ui.adapter.BasTextSectiontAdapter;
import com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean; import com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean;
......
package com.gingersoft.gsa.cloud.table.mvp.contract; package com.gingersoft.gsa.cloud.table.mvp.contract;
import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import io.reactivex.Observable; import io.reactivex.Observable;
......
...@@ -3,10 +3,8 @@ package com.gingersoft.gsa.cloud.table.mvp.model; ...@@ -3,10 +3,8 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.utils.constans.HttpsConstans;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract; import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.service.MealService; import com.gingersoft.gsa.cloud.table.mvp.model.service.MealService;
import com.gingersoft.gsa.cloud.table.mvp.model.service.OrderPayService; import com.gingersoft.gsa.cloud.table.mvp.model.service.OrderPayService;
import com.google.gson.Gson; import com.google.gson.Gson;
...@@ -17,7 +15,6 @@ import com.jess.arms.mvp.BaseModel; ...@@ -17,7 +15,6 @@ import com.jess.arms.mvp.BaseModel;
import javax.inject.Inject; import javax.inject.Inject;
import io.reactivex.Observable; import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
import okhttp3.RequestBody; import okhttp3.RequestBody;
......
package com.gingersoft.gsa.cloud.table.mvp.model.bean.request;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import java.util.List;
import java.util.Map;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-01-06
* 修订历史:2020-01-06
* 描述:
*/
public class AddOrderRequest {
private int orderId;
private Map<String, List<OrderBean.OrderDetailsBean>> maps;
public int getOrderId() {
return orderId;
}
public void setOrderId(int orderId) {
this.orderId = orderId;
}
public Map<String, List<OrderBean.OrderDetailsBean>> getMaps() {
return maps;
}
public void setMaps(Map<String, List<OrderBean.OrderDetailsBean>> maps) {
this.maps = maps;
}
@Override
public String toString() {
return "AddOrderRequest{" +
"orderId=" + orderId +
", maps=" + maps +
'}';
}
}
...@@ -13,7 +13,7 @@ import java.util.Map; ...@@ -13,7 +13,7 @@ import java.util.Map;
* 描述: * 描述:
*/ */
public class OrderRequest { public class CreateOrderRequest {
private int person; private int person;
private int tableId; private int tableId;
...@@ -117,7 +117,7 @@ public class OrderRequest { ...@@ -117,7 +117,7 @@ public class OrderRequest {
@Override @Override
public String toString() { public String toString() {
return "OrderRequest{" + return "CreateOrderRequest{" +
"person=" + person + "person=" + person +
", tableId=" + tableId + ", tableId=" + tableId +
", orderDetails=" + orderDetails + ", orderDetails=" + orderDetails +
......
...@@ -2,7 +2,6 @@ package com.gingersoft.gsa.cloud.table.mvp.model.service; ...@@ -2,7 +2,6 @@ package com.gingersoft.gsa.cloud.table.mvp.model.service;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest;
import io.reactivex.Observable; import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager; import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
...@@ -10,9 +9,7 @@ import okhttp3.RequestBody; ...@@ -10,9 +9,7 @@ import okhttp3.RequestBody;
import retrofit2.http.Body; import retrofit2.http.Body;
import retrofit2.http.Field; import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded; import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST; import retrofit2.http.POST;
import retrofit2.http.Query;
/** /**
* 作者:ELEGANT_BIN * 作者:ELEGANT_BIN
......
...@@ -5,7 +5,6 @@ import android.content.Context; ...@@ -5,7 +5,6 @@ import android.content.Context;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean; import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.TableAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.TableAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment;
...@@ -59,7 +58,7 @@ public class AllTablePresenter extends BasePresenter<AllTableContract.Model, All ...@@ -59,7 +58,7 @@ public class AllTablePresenter extends BasePresenter<AllTableContract.Model, All
public AllTablePresenter(AllTableContract.Model model, AllTableContract.View rootView) { public AllTablePresenter(AllTableContract.Model model, AllTableContract.View rootView) {
super(model, rootView); super(model, rootView);
this.IView = (AllTableFragment) rootView; this.IView = (AllTableFragment) rootView;
this. mActivity = (TableActivity) IView.getActivity(); this.mActivity = (TableActivity) IView.getActivity();
} }
@Override @Override
...@@ -86,12 +85,9 @@ public class AllTablePresenter extends BasePresenter<AllTableContract.Model, All ...@@ -86,12 +85,9 @@ public class AllTablePresenter extends BasePresenter<AllTableContract.Model, All
@Override @Override
public void onItemClick(TableBean.DataBean item, int position) { public void onItemClick(TableBean.DataBean item, int position) {
// if (ViewUtils.isFastClick2()) {
VibratorUtils.pressButtonSound(mApplication); VibratorUtils.pressButtonSound(mApplication);
mActivity.clickTableItem(item); mActivity.clickTableItem(item);
// }
} }
}); });
} }
......
...@@ -11,7 +11,8 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage; ...@@ -11,7 +11,8 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.table.mvp.contract.BaseOrderContract; import com.gingersoft.gsa.cloud.table.mvp.contract.BaseOrderContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BillOrderMoney; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest; 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.ui.activity.OrderContentActivity; 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.OrderMoneyAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter;
...@@ -19,13 +20,14 @@ import com.jess.arms.di.scope.ActivityScope; ...@@ -19,13 +20,14 @@ import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.RxLifecycleUtils; import com.jess.arms.utils.RxLifecycleUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.Comparator; import java.util.Comparator;
import java.util.HashMap; import java.util.HashMap;
import java.util.IdentityHashMap;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -240,9 +242,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -240,9 +242,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
* @param orderId * @param orderId
*/ */
protected void setOrderId(double orderId) { protected void setOrderId(double orderId) {
OrderBean orderBean = new OrderBean(); MyOrderManage.getInstance().setOrderId(orderId);
orderBean.setId((int) orderId);
MyOrderManage.getInstance().setOrderBean(orderBean);
} }
/** /**
...@@ -291,14 +291,21 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -291,14 +291,21 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return str; return str;
} }
protected OrderRequest getCreateOrderRequest(List<OrderDetail> foodList) { protected CreateOrderRequest getCreateOrderRequest(List<OrderDetail> foodList) {
OrderRequest request = new OrderRequest(); CreateOrderRequest request = new CreateOrderRequest();
request.setOrderDetails(orderDetailBeanToFoodRequest(foodList)); request.setOrderDetails(orderDetailBeanToFoodRequest(foodList));
request.setPerson(OpenTableManage.getDefault().getPeopleNumber()); request.setPerson(OpenTableManage.getDefault().getPeopleNumber());
request.setTableId(OpenTableManage.getDefault().getTableBean().getId()); request.setTableId(OpenTableManage.getDefault().getTableBean().getId());
return request; return request;
} }
protected AddOrderRequest getAddOrderRequest(List<OrderDetail> foodList) {
AddOrderRequest request = new AddOrderRequest();
request.setMaps(orderDetailBeanToAddFoodRequest(foodList));
request.setOrderId(MyOrderManage.getInstance().getOrderId());
return request;
}
protected Map<Long, List<OrderBean.OrderDetailsBean>> orderDetailBeanToFoodRequest(List<OrderDetail> foodList) { protected Map<Long, List<OrderBean.OrderDetailsBean>> orderDetailBeanToFoodRequest(List<OrderDetail> foodList) {
Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails = new HashMap<>(); Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails = new HashMap<>();
if (foodList != null) { if (foodList != null) {
...@@ -326,13 +333,72 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -326,13 +333,72 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
} }
int nextIndex = i + 1; int nextIndex = i + 1;
if (foodList.size() > nextIndex) { if (foodList.size() > nextIndex) {
if (foodList.get(nextIndex).getItemType() == 1 && orderItems != null) { if (foodList.get(nextIndex).getItemType() == 1 && orderItems != null && orderItems.size() > 0) {
//下一個食品是不是主食品
orderDetails.put(mapIndex, orderItems);
}
} else if (foodList.size() == nextIndex) {
//最後
if (orderItems != null && orderItems.size() > 0) {
orderDetails.put(mapIndex, orderItems);
}
}
}
}
return orderDetails;
}
protected Map<String, List<OrderBean.OrderDetailsBean>> orderDetailBeanToAddFoodRequest(List<OrderDetail> foodList) {
/**
* 1#主食品(完全新點)
* 2#主食品+子食品+細項(基礎上新加)
*/
long type1 = 1;
long type2 = 2;
//可重複的map
Map<String, List<OrderBean.OrderDetailsBean>> orderDetails = new IdentityHashMap<>();
if (foodList != null) {
//套餐明細ID
String mapIndex = "1-1";
int indexCount = 0;
List<OrderBean.OrderDetailsBean> orderItems = null;
for (int i = 0; i < foodList.size(); i++) {
OrderDetail food = foodList.get(i);
if (food.getItemType() == 1) {
orderItems = new ArrayList<>();
indexCount += 1;
if (food.isNew()) {
//完全新點的一個食品
mapIndex = indexCount + "-" + type1;
} else {
//基礎上新加
mapIndex = indexCount + "-" + type2;
}
}
OrderBean.OrderDetailsBean request = new OrderBean.OrderDetailsBean();
request.setOrderId(MyOrderManage.getInstance().getOrderId());
request.setProductName(food.getProductName());
request.setProductId(food.getProductId());
request.setParentId(food.getParentId());
request.setNumber(food.getNumber());
request.setPrice(food.getPrice());
request.setType(food.getType());
request.setLunchboxPrice(0);
if (food.isNew()) {
//這裡只添加新食品
orderItems.add(request);
}
int nextIndex = i + 1;
if (foodList.size() > nextIndex) {
if (foodList.get(nextIndex).getItemType() == 1 && orderItems != null && orderItems.size() > 0) {
//下一個食品是不是主食品 //下一個食品是不是主食品
orderDetails.put(mapIndex, orderItems); orderDetails.put(mapIndex, orderItems);
} }
} else if (foodList.size() == nextIndex) { } else if (foodList.size() == nextIndex) {
//最後 //最後
if (orderItems != null) { if (orderItems != null && orderItems.size() > 0) {
orderDetails.put(mapIndex, orderItems); orderDetails.put(mapIndex, orderItems);
} }
} }
......
...@@ -3,11 +3,9 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter; ...@@ -3,11 +3,9 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import android.app.Activity; import android.app.Activity;
import android.app.Application; import android.app.Application;
import android.content.Context; import android.content.Context;
import android.text.TextUtils;
import android.view.View; import android.view.View;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils; import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant;
...@@ -99,13 +97,11 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode ...@@ -99,13 +97,11 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
public void initItemListener(Context context) { public void initItemListener(Context context) {
mFineItemAllAdapter.setOnItemClickListener(new FineItemOneAdapter.OnItemClickListener() { mFineItemAllAdapter.setOnItemClickListener(new FineItemOneAdapter.OnItemClickListener() {
@Override @Override
public void onItemClick(Modifier datasBean, int position) { public void onItemClick(Modifier datasBean, int position) {
if (!ViewUtils.isFastClick2()) {
return;
}
VibratorUtils.pressButtonSound(mApplication); VibratorUtils.pressButtonSound(mApplication);
if (context instanceof MealStandActivity) { if (context instanceof MealStandActivity) {
......
...@@ -6,7 +6,6 @@ import android.content.Context; ...@@ -6,7 +6,6 @@ import android.content.Context;
import android.view.View; import android.view.View;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils; import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant;
...@@ -106,10 +105,6 @@ public class FineItemKindPresenter extends BasePresenter<FineItemKindContract.Mo ...@@ -106,10 +105,6 @@ public class FineItemKindPresenter extends BasePresenter<FineItemKindContract.Mo
@Override @Override
public void onItemClick(Modifier datasBean, int position) { public void onItemClick(Modifier datasBean, int position) {
if (!ViewUtils.isFastClick2()) {
return;
}
VibratorUtils.pressButtonSound(mApplication); VibratorUtils.pressButtonSound(mApplication);
if (context instanceof MealStandActivity) { if (context instanceof MealStandActivity) {
......
...@@ -9,7 +9,6 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; ...@@ -9,7 +9,6 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils; import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.database.bean.ComboItem; import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
...@@ -20,7 +19,8 @@ import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils; ...@@ -20,7 +19,8 @@ import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract; import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest; 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.constant.MealConstant; import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil; import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
...@@ -41,7 +41,6 @@ import org.simple.eventbus.Subscriber; ...@@ -41,7 +41,6 @@ import org.simple.eventbus.Subscriber;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.inject.Inject; import javax.inject.Inject;
...@@ -328,7 +327,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -328,7 +327,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
} }
public void createOrder() { public void createOrder() {
OrderRequest request = getCreateOrderRequest(getOrderFoodLists()); CreateOrderRequest request = getCreateOrderRequest(getOrderFoodLists());
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
String json = GsonUtils.GsonString(request); String json = GsonUtils.GsonString(request);
mModel.createOrder(requestBody) mModel.createOrder(requestBody)
...@@ -357,13 +356,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -357,13 +356,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
} }
public void addOrderFood() { public void addOrderFood() {
List<OrderDetail> newFoods = getNewOrderFoodLists(); List<OrderDetail> foodLists = getOrderFoodLists();
for (OrderDetail food : newFoods) { for (OrderDetail food : foodLists) {
food.setOrderId(MyOrderManage.getInstance().getOrderId()); food.setOrderId(MyOrderManage.getInstance().getOrderId());
} }
List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods); AddOrderRequest addOrderRequest = getAddOrderRequest(foodLists);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(orderBeans)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(addOrderRequest));
String json = GsonUtils.GsonString(orderBeans); String json = GsonUtils.GsonString(addOrderRequest);
mModel.addFood(requestBody) mModel.addFood(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -380,7 +379,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -380,7 +379,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//通知更新餐台状态 //通知更新餐台状态
EventBus.getDefault().post(OpenTableManage.getDefault().getTableBean().getId(), "initTable_status_event"); EventBus.getDefault().post(OpenTableManage.getDefault().getTableBean().getId(), "initTable_status_event");
} }
printSendOrder(getOrderFoodLists()); printSendOrder(foodLists);
mRootView.killMyself(); mRootView.killMyself();
} else { } else {
if (!hasNesOrderFoods()) { if (!hasNesOrderFoods()) {
...@@ -390,7 +389,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -390,7 +389,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//通知更新餐台状态 //通知更新餐台状态
EventBus.getDefault().post(OpenTableManage.getDefault().getTableBean().getId(), "initTable_status_event"); EventBus.getDefault().post(OpenTableManage.getDefault().getTableBean().getId(), "initTable_status_event");
} }
printSendOrder(getOrderFoodLists()); printSendOrder(foodLists);
mRootView.killMyself(); mRootView.killMyself();
} else { } else {
mRootView.showMessage("送單失敗"); mRootView.showMessage("送單失敗");
......
...@@ -11,12 +11,12 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; ...@@ -11,12 +11,12 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils; import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.database.bean.Function; import com.gingersoft.gsa.cloud.database.bean.Function;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract; import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest; 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.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity;
...@@ -30,7 +30,6 @@ import com.jess.arms.utils.RxLifecycleUtils; ...@@ -30,7 +30,6 @@ import com.jess.arms.utils.RxLifecycleUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.inject.Inject; import javax.inject.Inject;
...@@ -132,7 +131,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -132,7 +131,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
} }
private void createOrder(boolean isPrint) { private void createOrder(boolean isPrint) {
OrderRequest request = getCreateOrderRequest(getOrderFoodLists()); CreateOrderRequest request = getCreateOrderRequest(getOrderFoodLists());
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
mModel.createOrder(requestBody) mModel.createOrder(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
...@@ -170,13 +169,13 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -170,13 +169,13 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
} }
private void addOrderFood(boolean isPrint) { private void addOrderFood(boolean isPrint) {
List<OrderDetail> newFoods = getNewOrderFoodLists(); List<OrderDetail> foodLists = getOrderFoodLists();
for (OrderDetail food : newFoods) { for (OrderDetail food : foodLists) {
food.setOrderId(MyOrderManage.getInstance().getOrderId()); food.setOrderId(MyOrderManage.getInstance().getOrderId());
} }
List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods); AddOrderRequest addOrderRequest = getAddOrderRequest(foodLists);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(orderBeans)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(addOrderRequest));
String json = GsonUtils.GsonString(orderBeans); String json = GsonUtils.GsonString(addOrderRequest);
mModel.addFood(requestBody) mModel.addFood(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -192,7 +191,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -192,7 +191,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
printOrder(OpenTableManage.getDefault().getTableBean().getId()); printOrder(OpenTableManage.getDefault().getTableBean().getId());
} else { } else {
mRootView.showMessage("送單成功"); mRootView.showMessage("送單成功");
printSendOrder(getOrderFoodLists()); printSendOrder(foodLists);
mRootView.sendSuccess(); mRootView.sendSuccess();
} }
} else { } else {
...@@ -202,7 +201,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -202,7 +201,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
if(!hasNesOrderFoods()){ if(!hasNesOrderFoods()){
//TODO 未新增食品點擊送單 後台不讓過直接提示即可 //TODO 未新增食品點擊送單 後台不讓過直接提示即可
mRootView.showMessage("送單成功"); mRootView.showMessage("送單成功");
printSendOrder(getOrderFoodLists()); printSendOrder(foodLists);
mRootView.sendSuccess(); mRootView.sendSuccess();
}else { }else {
mRootView.showMessage("送單失敗"); mRootView.showMessage("送單失敗");
...@@ -303,8 +302,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -303,8 +302,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
// .call(); // .call();
// } // }
// protected OrderRequest getCreateOrderRequest(List<OrderDetail> foodList) { // protected CreateOrderRequest getCreateOrderRequest(List<OrderDetail> foodList) {
// OrderRequest request = new OrderRequest(); // CreateOrderRequest request = new CreateOrderRequest();
// request.setOrderDetailMap(orderDetailBeanToFoodRequest(foodList)); // request.setOrderDetailMap(orderDetailBeanToFoodRequest(foodList));
// request.setPerson(OpenTableManage.getDefault().getPeopleNumber()); // request.setPerson(OpenTableManage.getDefault().getPeopleNumber());
// request.setTableId(OpenTableManage.getDefault().getTableBean().getId()); // request.setTableId(OpenTableManage.getDefault().getTableBean().getId());
......
...@@ -17,8 +17,8 @@ import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils; ...@@ -17,8 +17,8 @@ import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.table.app.payment.PayConstant; import com.gingersoft.gsa.cloud.table.app.payment.PayConstant;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract; import com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod; import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.OrderRequest; import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.AddOrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BillMethodAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BillMethodAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BillMoneyAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BillMoneyAdapter;
...@@ -29,7 +29,6 @@ import com.jess.arms.utils.RxLifecycleUtils; ...@@ -29,7 +29,6 @@ import com.jess.arms.utils.RxLifecycleUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.inject.Inject; import javax.inject.Inject;
...@@ -216,7 +215,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -216,7 +215,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
} }
private void createOrder() { private void createOrder() {
OrderRequest request = getCreateOrderRequest(getOrderFoodLists()); CreateOrderRequest request = getCreateOrderRequest(getOrderFoodLists());
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
mModel.createOrder(requestBody) mModel.createOrder(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
...@@ -247,13 +246,13 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -247,13 +246,13 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
} }
private void addOrderFood() { private void addOrderFood() {
List<OrderDetail> newFoods = getNewOrderFoodLists(); List<OrderDetail> foodLists = getOrderFoodLists();
for (OrderDetail food : newFoods) { for (OrderDetail food : foodLists) {
food.setOrderId(MyOrderManage.getInstance().getOrderId()); food.setOrderId(MyOrderManage.getInstance().getOrderId());
} }
List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods); AddOrderRequest addOrderRequest = getAddOrderRequest(foodLists);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(orderBeans)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(addOrderRequest));
String json = GsonUtils.GsonString(orderBeans); String json = GsonUtils.GsonString(addOrderRequest);
mModel.addFood(requestBody) mModel.addFood(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
......
...@@ -5,7 +5,6 @@ import android.content.Context; ...@@ -5,7 +5,6 @@ import android.content.Context;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean; import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.TableAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.TableAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.StateTableFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.StateTableFragment;
...@@ -251,12 +250,9 @@ public class StateTablePresenter extends BasePresenter<StateTableContract.Model, ...@@ -251,12 +250,9 @@ public class StateTablePresenter extends BasePresenter<StateTableContract.Model,
@Override @Override
public void onItemClick(TableBean.DataBean item, int position) { public void onItemClick(TableBean.DataBean item, int position) {
// if (ViewUtils.isFastClick2()) {
VibratorUtils.pressButtonSound(mApplication); VibratorUtils.pressButtonSound(mApplication);
mActivity.clickTableItem(item); mActivity.clickTableItem(item);
// }
} }
}); });
} }
......
...@@ -28,10 +28,8 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage; ...@@ -28,10 +28,8 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.constans.Constans; import com.gingersoft.gsa.cloud.base.utils.constans.Constans;
import com.gingersoft.gsa.cloud.base.utils.other.SPUtils; import com.gingersoft.gsa.cloud.base.utils.other.SPUtils;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.base.widget.DialogUtils; import com.gingersoft.gsa.cloud.base.widget.DialogUtils;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.FoodModifier;
import com.gingersoft.gsa.cloud.database.utils.ComboItemDaoUtils; import com.gingersoft.gsa.cloud.database.utils.ComboItemDaoUtils;
import com.gingersoft.gsa.cloud.database.utils.FoodComboDaoUtils; import com.gingersoft.gsa.cloud.database.utils.FoodComboDaoUtils;
import com.gingersoft.gsa.cloud.database.utils.FoodDaoUtils; import com.gingersoft.gsa.cloud.database.utils.FoodDaoUtils;
...@@ -353,9 +351,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -353,9 +351,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override @Override
public void onItemClick(Food datasBean, int position) { public void onItemClick(Food datasBean, int position) {
recordOperat(true); recordOperat(true);
if (!ViewUtils.isFastClick2()) {
return;
}
if (!foodGroupConditionFilter(datasBean, false)) { if (!foodGroupConditionFilter(datasBean, false)) {
return; return;
} }
...@@ -524,10 +519,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -524,10 +519,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
recordOperat(true); recordOperat(true);
if (!ViewUtils.isFastClick2()) {
return;
}
int id = v.getId(); int id = v.getId();
if (id == R.id.btn_numberman) { if (id == R.id.btn_numberman) {
showChoosePeopleNumDialog(true); showChoosePeopleNumDialog(true);
......
...@@ -13,7 +13,6 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; ...@@ -13,7 +13,6 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.di.component.DaggerOrderContentComponent; import com.gingersoft.gsa.cloud.table.di.component.DaggerOrderContentComponent;
...@@ -148,10 +147,6 @@ public class OrderContentActivity extends BaseActivity<OrderContentPresenter> im ...@@ -148,10 +147,6 @@ public class OrderContentActivity extends BaseActivity<OrderContentPresenter> im
recordOperat(true); recordOperat(true);
if (!ViewUtils.isFastClick2()) {
return;
}
int id = v.getId(); int id = v.getId();
if (id == R.id.btn_table) { if (id == R.id.btn_table) {
killMyself(); killMyself();
......
...@@ -19,7 +19,6 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; ...@@ -19,7 +19,6 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils; import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.base.utils.log.LogUtil; import com.gingersoft.gsa.cloud.base.utils.log.LogUtil;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.app.payment.PayConstant; import com.gingersoft.gsa.cloud.table.app.payment.PayConstant;
...@@ -284,10 +283,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements ...@@ -284,10 +283,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
recordOperat(true); recordOperat(true);
if (!ViewUtils.isFastClick2()) {
return;
}
int id = v.getId(); int id = v.getId();
if (id == R.id.btn_table) { if (id == R.id.btn_table) {
......
...@@ -112,7 +112,6 @@ public class FineItemOneAdapter extends DefaultAdapter<Modifier> { ...@@ -112,7 +112,6 @@ public class FineItemOneAdapter extends DefaultAdapter<Modifier> {
@Override @Override
public void onViewClick(View view, int position) { public void onViewClick(View view, int position) {
if (mOnItemClickListener != null) { if (mOnItemClickListener != null) {
//设置当前选中item颜色 //设置当前选中item颜色
datasBean.setSelected(true); datasBean.setSelected(true);
tv_food_name.setBackgroundColor(mContext.getResources().getColor(R.color.orange_500)); tv_food_name.setBackgroundColor(mContext.getResources().getColor(R.color.orange_500));
......
...@@ -9,7 +9,6 @@ import android.view.ViewGroup; ...@@ -9,7 +9,6 @@ import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
......
...@@ -10,7 +10,6 @@ import android.widget.ImageView; ...@@ -10,7 +10,6 @@ import android.widget.ImageView;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean; import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
...@@ -200,12 +199,10 @@ public class TableAdapter extends DefaultAdapter<TableBean.DataBean> { ...@@ -200,12 +199,10 @@ public class TableAdapter extends DefaultAdapter<TableBean.DataBean> {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (ViewUtils.isFastClick5()) {
if (mOnItemClickListener != null) { if (mOnItemClickListener != null) {
mOnItemClickListener.onItemClick(item, position); mOnItemClickListener.onItemClick(item, position);
} }
} }
}
}); });
} }
......
...@@ -10,11 +10,9 @@ import android.widget.RelativeLayout; ...@@ -10,11 +10,9 @@ import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.app.GoldConstants;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
...@@ -103,9 +101,7 @@ public class FoodAdapter extends DefaultAdapter<Food> { ...@@ -103,9 +101,7 @@ public class FoodAdapter extends DefaultAdapter<Food> {
setStatus(datasBean); setStatus(datasBean);
setOnItemClickListener((view, position1) -> { setOnItemClickListener((view, position1) -> {
if (ViewUtils.isFastClick2()) {
resetSelect(position1, datasBean); resetSelect(position1, datasBean);
}
}); });
} }
......
...@@ -5,7 +5,6 @@ import android.text.TextUtils; ...@@ -5,7 +5,6 @@ import android.text.TextUtils;
import android.view.Gravity; import android.view.Gravity;
import android.view.View; import android.view.View;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
......
ext.mainApp = true //设置为true,表示此module为主app module,一直以application方式编译 ext.mainApp = true //设置为true,表示此module为主app module,一直以application方式编译
apply from: rootProject.file("cc-settings.gradle") apply from: rootProject.file("cc-settings.gradle")
apply plugin: 'com.jakewharton.butterknife' apply plugin: 'com.jakewharton.butterknife'
apply plugin: 'android-aspectjx' //apply plugin: 'android-aspectjx'
android { android {
signingConfigs { signingConfigs {
GSAndroidNew { GSAndroidNew {
......
...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.user.login.mvp.contract; ...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.user.login.mvp.contract;
import com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean; import com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import com.tbruyelle.rxpermissions2.RxPermissions;
import io.reactivex.Observable; import io.reactivex.Observable;
import okhttp3.RequestBody; import okhttp3.RequestBody;
...@@ -28,6 +29,7 @@ public interface LoginContract { ...@@ -28,6 +29,7 @@ public interface LoginContract {
void loginOut(); void loginOut();
void startToSwitchServer(); void startToSwitchServer();
} }
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存 //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
......
...@@ -3,14 +3,20 @@ package com.gingersoft.gsa.cloud.user.login.mvp.presenter; ...@@ -3,14 +3,20 @@ package com.gingersoft.gsa.cloud.user.login.mvp.presenter;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean; import com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean;
import com.gingersoft.gsa.cloud.user.login.R;
import com.gingersoft.gsa.cloud.user.login.mvp.contract.LoginContract; import com.gingersoft.gsa.cloud.user.login.mvp.contract.LoginContract;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.PermissionUtil;
import com.jess.arms.utils.RxLifecycleUtils; import com.jess.arms.utils.RxLifecycleUtils;
import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.android.schedulers.AndroidSchedulers;
...@@ -45,6 +51,7 @@ public class LoginPresenter extends BasePresenter<LoginContract.Model, LoginCont ...@@ -45,6 +51,7 @@ public class LoginPresenter extends BasePresenter<LoginContract.Model, LoginCont
@Inject @Inject
AppManager mAppManager; AppManager mAppManager;
@Inject @Inject
public LoginPresenter(LoginContract.Model model, LoginContract.View rootView) { public LoginPresenter(LoginContract.Model model, LoginContract.View rootView) {
super(model, rootView); super(model, rootView);
...@@ -129,6 +136,6 @@ public class LoginPresenter extends BasePresenter<LoginContract.Model, LoginCont ...@@ -129,6 +136,6 @@ public class LoginPresenter extends BasePresenter<LoginContract.Model, LoginCont
mRootView.loginOut(); mRootView.loginOut();
} }
}); });
} }
} }
...@@ -15,6 +15,8 @@ import android.widget.EditText; ...@@ -15,6 +15,8 @@ import android.widget.EditText;
import android.widget.ImageView; import android.widget.ImageView;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.IComponentCallback;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils; import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.constans.UserConstans; import com.gingersoft.gsa.cloud.base.utils.constans.UserConstans;
...@@ -34,6 +36,7 @@ import com.jess.arms.base.BaseActivity; ...@@ -34,6 +36,7 @@ import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.tbruyelle.rxpermissions2.RxPermissions;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -87,6 +90,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login ...@@ -87,6 +90,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
@BindView(R2.id.ic_look_pwd) @BindView(R2.id.ic_look_pwd)
ImageView mIvSeePwd; ImageView mIvSeePwd;
private boolean passwrodVisibility = false; private boolean passwrodVisibility = false;
@Override @Override
...@@ -325,7 +329,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login ...@@ -325,7 +329,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
} }
jumpDownloadActivity(); jumpDownloadActivity();
dialog.dismiss(); dialog.dismiss();
killMyself(); // killMyself();
}).build(); }).build();
if (!isFinishing() && dialog1 != null && !dialog1.isShowing()) { if (!isFinishing() && dialog1 != null && !dialog1.isShowing()) {
dialog1.show(); dialog1.show();
...@@ -414,7 +418,13 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login ...@@ -414,7 +418,13 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
CC.obtainBuilder("Component.Download") CC.obtainBuilder("Component.Download")
.setActionName("showDownloadActivity") .setActionName("showDownloadActivity")
.build() .build()
.call(); .callAsync(new IComponentCallback() {
@Override
public void onResult(CC cc, CCResult result) {
//此onResult在子线程中运行
boolean result2 = result.isSuccess();
}
});
} }
private void jumpMainActivity() { private void jumpMainActivity() {
...@@ -434,7 +444,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login ...@@ -434,7 +444,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
startActivity(new Intent(mContext, SwitchServerActivity.class)); startActivity(new Intent(mContext, SwitchServerActivity.class));
} }
@Override
@OnClick({R2.id.tv_gsa_user_login, R2.id.iv_clear_pwd, R2.id.iv_clear_account, R2.id.tv_remember_pwd_text, R2.id.ic_look_pwd}) @OnClick({R2.id.tv_gsa_user_login, R2.id.iv_clear_pwd, R2.id.iv_clear_account, R2.id.tv_remember_pwd_text, R2.id.ic_look_pwd})
public void onClick(View v) { public void onClick(View v) {
switch (v.getId()) { switch (v.getId()) {
......
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