Commit 6806a379 by 宁斌

調整創建訂單食品結構

parent 142fb551
...@@ -8,6 +8,8 @@ ...@@ -8,6 +8,8 @@
<activity android:name=".mvp.ui.activity.NewMainActivity"/> <activity android:name=".mvp.ui.activity.NewMainActivity"/>
<activity android:name=".mvp.ui.activity.MainActivity"/> <activity android:name=".mvp.ui.activity.MainActivity"/>
<activity android:name=".mvp.ui.activity.ReportActivity"/> <activity android:name=".mvp.ui.activity.ReportActivity"/>
<activity android:name=".mvp.ui.activity.SettlementActivity" />
<activity android:name=".mvp.ui.activity.SettlementReportActivity" />
<!-- arms配置 --> <!-- arms配置 -->
<meta-data <meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration" android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
......
<<<<<<< Original<<<<<<< Original<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" <?xml version="1.0" encoding="utf-8"?>
package="com.gingersoft.gsa.cloud.main"> <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.gingersoft.gsa.cloud.main">
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" /> <application
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<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" />
<application
android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication" android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
android:allowBackup="true" android:allowBackup="true"
android:icon="@mipmap/ic_launcher" android:icon="@mipmap/ic_launcher"
...@@ -19,6 +13,8 @@ package="com.gingersoft.gsa.cloud.main"> ...@@ -19,6 +13,8 @@ package="com.gingersoft.gsa.cloud.main">
android:theme="@style/AppTheme"> android:theme="@style/AppTheme">
<activity android:name=".mvp.ui.activity.ReportActivity" /> <activity android:name=".mvp.ui.activity.ReportActivity" />
<activity android:name=".mvp.ui.activity.MainActivity" /> <activity android:name=".mvp.ui.activity.MainActivity" />
<activity android:name=".mvp.ui.activity.SettlementActivity" />
<activity android:name=".mvp.ui.activity.SettlementReportActivity" />
<activity <activity
android:name=".mvp.ui.activity.NewMainActivity" android:name=".mvp.ui.activity.NewMainActivity"
android:theme="@style/MainTheme"> android:theme="@style/MainTheme">
...@@ -39,20 +35,13 @@ package="com.gingersoft.gsa.cloud.main"> ...@@ -39,20 +35,13 @@ package="com.gingersoft.gsa.cloud.main">
<meta-data <meta-data
android:name="design_height_in_dp" android:name="design_height_in_dp"
android:value="540" /> android:value="540" />
</application> </application>
<uses-permission android:name="android.permission.INTERNET" />
</manifest>=======<manifest xmlns:android="http://schemas.android.com/apk/res/android" <uses-permission android:name="android.permission.WAKE_LOCK" />
package="com.gingersoft.gsa.cloud.main.mvp"> <uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<activity android:name="com.gingersoft.gsa.cloud.main.mvp.ui.activity.SettlementReportActivity"></activity>
</application>
</manifest>>>>>>>> Added
=======<manifest xmlns:android="http://schemas.android.com/apk/res/android" <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
package="com.gingersoft.gsa.cloud.main">
<application> </manifest>
<activity android:name="com.gingersoft.gsa.cloud.main.mvp.ui.activity.SettlementActivity"></activity>
</application>
</manifest>>>>>>>> Added
package com.gingersoft.gsa.cloud.main.mvp.contract; package com.gingersoft.gsa.cloud.main.mvp.contract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.PaymentMethodBean;
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 io.reactivex.Observable;
import okhttp3.RequestBody;
/** /**
* ================================================ * ================================================
...@@ -24,5 +28,6 @@ public interface SettlementContract { ...@@ -24,5 +28,6 @@ public interface SettlementContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存 //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel{ interface Model extends IModel{
} }
} }
package com.gingersoft.gsa.cloud.main.mvp.contract; package com.gingersoft.gsa.cloud.main.mvp.contract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
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 io.reactivex.Observable;
import okhttp3.RequestBody;
/** /**
* ================================================ * ================================================
...@@ -29,5 +33,6 @@ public interface SettlementReportContract { ...@@ -29,5 +33,6 @@ public interface SettlementReportContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存 //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel{ interface Model extends IModel{
Observable<SendSettlement> sendSettlement(RequestBody requestBody);
} }
} }
package com.gingersoft.gsa.cloud.main.mvp.model; package com.gingersoft.gsa.cloud.main.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement;
import com.gingersoft.gsa.cloud.main.mvp.model.service.MainReportService;
import com.gingersoft.gsa.cloud.main.mvp.model.service.SettlementService;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.jess.arms.integration.IRepositoryManager; import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel; import com.jess.arms.mvp.BaseModel;
...@@ -10,6 +14,9 @@ import javax.inject.Inject; ...@@ -10,6 +14,9 @@ import javax.inject.Inject;
import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract; import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract;
import io.reactivex.Observable;
import okhttp3.RequestBody;
/** /**
* ================================================ * ================================================
...@@ -41,4 +48,10 @@ public class SettlementReportModel extends BaseModel implements SettlementReport ...@@ -41,4 +48,10 @@ public class SettlementReportModel extends BaseModel implements SettlementReport
this.mGson = null; this.mGson = null;
this.mApplication = null; this.mApplication = null;
} }
@Override
public Observable<SendSettlement> sendSettlement(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(SettlementService.class)
.sendSettlement(requestBody);
}
} }
\ No newline at end of file
package com.gingersoft.gsa.cloud.main.mvp.model.bean;
import java.util.List;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-03-05
* 修订历史:2020-03-05
* 描述:
*/
public class SendSettlement {
/**
* success : true
* sysTime : 1583402463139
* data : {"msg":"仍有臺號未結賬,請先結賬;","table":["外4","外2","外1","ceshitai1*","51533","51536","外5","外賣台2","509","510","511","51512","外賣台","102","51534","51531","51529","107","103","21","11A","10A","10","9","8","7","4"]}
*/
private boolean success;
private long sysTime;
private DataBean data;
public boolean isSuccess() {
return success;
}
public void setSuccess(boolean success) {
this.success = success;
}
public long getSysTime() {
return sysTime;
}
public void setSysTime(long sysTime) {
this.sysTime = sysTime;
}
public DataBean getData() {
return data;
}
public void setData(DataBean data) {
this.data = data;
}
public static class DataBean {
/**
* msg : 仍有臺號未結賬,請先結賬;
* table : ["外4","外2","外1","ceshitai1*","51533","51536","外5","外賣台2","509","510","511","51512","外賣台","102","51534","51531","51529","107","103","21","11A","10A","10","9","8","7","4"]
*/
private String msg;
private List<String> table;
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public List<String> getTable() {
return table;
}
public void setTable(List<String> table) {
this.table = table;
}
}
}
package com.gingersoft.gsa.cloud.main.mvp.model.service;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement;
import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
import okhttp3.RequestBody;
import retrofit2.http.Body;
import retrofit2.http.POST;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-03-05
* 修订历史:2020-03-05
* 描述:
*/
public interface SettlementService {
@POST("RestaurantOperation/add" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<SendSettlement> sendSettlement(@Body RequestBody requestBody);
}
...@@ -2,6 +2,9 @@ package com.gingersoft.gsa.cloud.main.mvp.presenter; ...@@ -2,6 +2,9 @@ package com.gingersoft.gsa.cloud.main.mvp.presenter;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SettlementReportItem; import com.gingersoft.gsa.cloud.main.mvp.model.bean.SettlementReportItem;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.SettlementReportActivity; import com.gingersoft.gsa.cloud.main.mvp.ui.activity.SettlementReportActivity;
import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItemAdapter; import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItemAdapter;
...@@ -9,10 +12,21 @@ import com.jess.arms.integration.AppManager; ...@@ -9,10 +12,21 @@ import com.jess.arms.integration.AppManager;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.annotations.NonNull;
import io.reactivex.schedulers.Schedulers;
import me.jessyan.rxerrorhandler.core.RxErrorHandler; import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import me.jessyan.rxerrorhandler.handler.ErrorHandleSubscriber;
import okhttp3.FormBody;
import okhttp3.RequestBody;
import javax.inject.Inject; import javax.inject.Inject;
import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract; import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract;
import com.jess.arms.utils.RxLifecycleUtils;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -46,8 +60,9 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon ...@@ -46,8 +60,9 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
private List<SettlementReportItem> mList; private List<SettlementReportItem> mList;
@Inject @Inject
public SettlementReportPresenter (SettlementReportContract.Model model, SettlementReportContract.View rootView) { public SettlementReportPresenter(SettlementReportContract.Model model, SettlementReportContract.View rootView) {
super(model, rootView); super(model, rootView);
this.IActivity = (SettlementReportActivity) rootView;
} }
@Override @Override
...@@ -73,4 +88,76 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon ...@@ -73,4 +88,76 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
mList.addAll(settlementReportItems); mList.addAll(settlementReportItems);
reportItemAdapter.notifyDataSetChanged(); reportItemAdapter.notifyDataSetChanged();
} }
public void sendSettlement() {
int restaurantId = GsaCloudApplication.getRestaurantId(mApplication);
RequestBody requestBody = new FormBody.Builder()
// .add("openTime", "")
.add("restaurantId", String.valueOf(restaurantId))
.build();
mModel.sendSettlement(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> mRootView.hideLoading())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<SendSettlement>(mErrorHandler) {
@Override
public void onNext(@NonNull SendSettlement info) {
if (info != null && info.isSuccess()) {
SendSettlement.DataBean dataBean = info.getData();
if (dataBean != null) {
if (dataBean.getTable() != null && dataBean.getTable().size() == 0) {
mRootView.showMessage("清機成功");
} else {
//還有檯未結賬
showSettlementErrorDialog("仍有臺號未結賬,請先結賬;" + "\n" + getTables(dataBean.getTable()));
}
} else {
mRootView.showMessage("清機失敗");
}
} else {
mRootView.showMessage("清機失敗");
}
}
});
}
private void showSettlementErrorDialog(String msg) {
new QMUIDialog.MessageDialogBuilder(IActivity)
.setTitle("溫馨提示")
.setMessage(msg)
.addAction("確認", new QMUIDialogAction.ActionListener() {
@Override
public void onClick(QMUIDialog dialog, int index) {
dialog.dismiss();
}
})
.create(R.style.MyDialogTheme2).show();
}
/**
* 拼接未結賬臺號
*
* @param tables
* @return
*/
private String getTables(List<String> tables) {
StringBuilder builder = new StringBuilder();
builder.append("table: ");
for (String table : tables) {
builder.append(table);
builder.append(",");
}
String str = builder.toString();
if (str.endsWith(",")) {
str = str.substring(0, str.length() - 1);
}
return str;
}
} }
...@@ -5,6 +5,7 @@ import android.os.Bundle; ...@@ -5,6 +5,7 @@ import android.os.Bundle;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.view.View; import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
...@@ -72,6 +73,9 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -72,6 +73,9 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
@BindView(R2.id.tv_username) @BindView(R2.id.tv_username)
TextView tvUserName; TextView tvUserName;
@BindView(R2.id.ll_clearance)
LinearLayout ll_clearance;
@Override @Override
public void setupActivityComponent(@NonNull AppComponent appComponent) { public void setupActivityComponent(@NonNull AppComponent appComponent) {
DaggerNewMainComponent //如找不到该类,请编译一下项目 DaggerNewMainComponent //如找不到该类,请编译一下项目
...@@ -287,7 +291,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -287,7 +291,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
} }
}; };
@OnClick({R2.id.layout_login_out, R2.id.iv_personal_center,R2.id.tv_restaurant_name,R2.id.tv_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) {
if (v.getId() == R.id.layout_login_out) { if (v.getId() == R.id.layout_login_out) {
...@@ -297,9 +301,8 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -297,9 +301,8 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
slideMenu.toggle(); slideMenu.toggle();
} else if (v.getId() == R.id.tv_restaurant_name) { } else if (v.getId() == R.id.tv_restaurant_name) {
showChooseRestaurantDialog(); showChooseRestaurantDialog();
} else if (v.getId() == R.id.tv_clearance) { } else if (v.getId() == R.id.ll_clearance) {
launchActivity(new Intent(this,SettlementActivity.class));
} }
} }
......
...@@ -3,19 +3,25 @@ package com.gingersoft.gsa.cloud.main.mvp.ui.activity; ...@@ -3,19 +3,25 @@ package com.gingersoft.gsa.cloud.main.mvp.ui.activity;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils; import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.R2;
import com.gingersoft.gsa.cloud.main.di.component.DaggerSettlementComponent;
import com.jess.arms.base.BaseActivity; 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.gingersoft.gsa.cloud.main.mvp.contract.SettlementContract; import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementContract;
import com.gingersoft.gsa.cloud.main.mvp.presenter.SettlementPresenter; import com.gingersoft.gsa.cloud.main.mvp.presenter.SettlementPresenter;
import com.qmuiteam.qmui.layout.QMUIButton;
import com.qmuiteam.qmui.widget.QMUITopBar; import com.qmuiteam.qmui.widget.QMUITopBar;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import butterknife.BindView; import butterknife.BindView;
import butterknife.OnClick;
import static com.jess.arms.utils.Preconditions.checkNotNull; import static com.jess.arms.utils.Preconditions.checkNotNull;
...@@ -37,6 +43,12 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem ...@@ -37,6 +43,12 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem
@BindView(R2.id.topbar) @BindView(R2.id.topbar)
QMUITopBar mTopBar; QMUITopBar mTopBar;
@BindView(R2.id.tv_settlement_time)
TextView tv_settlement_time;
@BindView(R2.id.btn_settlement_report)
QMUIButton btn_settlement_report;
@Override @Override
public void setupActivityComponent(@NonNull AppComponent appComponent) { public void setupActivityComponent(@NonNull AppComponent appComponent) {
DaggerSettlementComponent //如找不到该类,请编译一下项目 DaggerSettlementComponent //如找不到该类,请编译一下项目
...@@ -64,7 +76,7 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem ...@@ -64,7 +76,7 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem
@Override @Override
public void initTopBar() { public void initTopBar() {
mTopBar.setBackgroundColor(ContextCompat.getColor(this, R2.color.theme_color)); mTopBar.setBackgroundColor(ContextCompat.getColor(this, R.color.theme_color));
mTopBar.addLeftBackImageButton().setOnClickListener(new View.OnClickListener() { mTopBar.addLeftBackImageButton().setOnClickListener(new View.OnClickListener() {
@Override @Override
...@@ -73,7 +85,14 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem ...@@ -73,7 +85,14 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem
// overridePendingTransition(R.anim.slide_still, R.anim.slide_out_right); // overridePendingTransition(R.anim.slide_still, R.anim.slide_out_right);
} }
}); });
mTopBar.setTitle(LanguageUtils.get_language_system(this, "funcSelect.settlement", "清機")); mTopBar.setTitle(LanguageUtils.get_language_system(this, "funcSelect.settlement", "清機")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));;
}
@OnClick({R2.id.btn_settlement_report})
public void onClick(View v) {
if (v.getId() == R.id.btn_settlement_report) {
launchActivity(new Intent(this,SettlementReportActivity.class));
}
} }
@Override @Override
...@@ -117,4 +136,6 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem ...@@ -117,4 +136,6 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem
public void killMyself() { public void killMyself() {
finish(); finish();
} }
} }
package com.gingersoft.gsa.cloud.main.mvp.ui.activity; package com.gingersoft.gsa.cloud.main.mvp.ui.activity;
import android.app.Activity;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.view.View; import android.view.View;
import android.widget.TextView; import android.widget.TextView;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils; import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.R2; import com.gingersoft.gsa.cloud.main.R2;
import com.gingersoft.gsa.cloud.main.di.component.DaggerSettlementReportComponent;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseActivity; import com.jess.arms.base.BaseActivity;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
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.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract; import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract;
import com.gingersoft.gsa.cloud.main.mvp.presenter.SettlementReportPresenter; import com.gingersoft.gsa.cloud.main.mvp.presenter.SettlementReportPresenter;
import com.qmuiteam.qmui.alpha.QMUIAlphaButton;
import com.qmuiteam.qmui.widget.QMUITopBar; import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
...@@ -22,6 +31,7 @@ import androidx.recyclerview.widget.DefaultItemAnimator; ...@@ -22,6 +31,7 @@ import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView; import butterknife.BindView;
import butterknife.OnClick;
import static com.jess.arms.utils.Preconditions.checkNotNull; import static com.jess.arms.utils.Preconditions.checkNotNull;
...@@ -40,7 +50,6 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -40,7 +50,6 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
*/ */
public class SettlementReportActivity extends BaseActivity<SettlementReportPresenter> implements SettlementReportContract.View { public class SettlementReportActivity extends BaseActivity<SettlementReportPresenter> implements SettlementReportContract.View {
@BindView(R2.id.topbar) @BindView(R2.id.topbar)
QMUITopBar mTopBar; QMUITopBar mTopBar;
...@@ -54,7 +63,6 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese ...@@ -54,7 +63,6 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@BindView(R2.id.rv_settlement_report_item) @BindView(R2.id.rv_settlement_report_item)
RecyclerView rv_settlement_report_item; RecyclerView rv_settlement_report_item;
@Override @Override
public void setupActivityComponent(@NonNull AppComponent appComponent) { public void setupActivityComponent(@NonNull AppComponent appComponent) {
DaggerSettlementReportComponent //如找不到该类,请编译一下项目 DaggerSettlementReportComponent //如找不到该类,请编译一下项目
...@@ -82,7 +90,7 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese ...@@ -82,7 +90,7 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@Override @Override
public void initTopBar() { public void initTopBar() {
mTopBar.setBackgroundColor(ContextCompat.getColor(this, R2.color.theme_color)); mTopBar.setBackgroundColor(ContextCompat.getColor(this, R.color.theme_color));
mTopBar.addLeftBackImageButton().setOnClickListener(new View.OnClickListener() { mTopBar.addLeftBackImageButton().setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
...@@ -90,42 +98,33 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese ...@@ -90,42 +98,33 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
// overridePendingTransition(R.anim.slide_still, R.anim.slide_out_right); // overridePendingTransition(R.anim.slide_still, R.anim.slide_out_right);
} }
}); });
mTopBar.setTitle(LanguageUtils.get_language_system(this, "function.order.detail2", "清機報表")); mTopBar.setTitle(LanguageUtils.get_language_system(this, "function.order.detail2", "清機報表")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
// mTopBar.addRightTextButton("打印", R.id.right_img).setOnClickListener(new View.OnClickListener() { }
//
// @Override @OnClick({R2.id.btn_send_settlement})
// public void onClick(View v) { public void onClick(View v) {
// if (result != null) { if (v.getId() == R.id.btn_send_settlement) {
// showSendSettlementDialog();
// String businessStartTimeRow = LanguageUtils.get_language_system(SettlementReportActivity.this, "from.business.hours", "由營業日期") + " : " + startTime; }
// String businessEndTimeRow = LanguageUtils.get_language_system(SettlementReportActivity.this, "to.business.hours", "到營業日期") + " : " + endTime; }
//
// PrintSettlementReport settlementReport = new PrintSettlementReport(); private void showSendSettlementDialog() {
// settlementReport.setBrandMachineNameRow(GSAApplication.machineName); QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(this);
// settlementReport.setShopNameRow(LanguageUtils.get_language_system(SettlementReportActivity.this, "shop.number", "店鋪編號") + " : " + GSAApplication.androidSetting.getShopId()); dialogBuilder.setTitle("溫馨提示");
// settlementReport.setBusinessStartTimeRow(businessStartTimeRow); dialogBuilder.setMessage("是否確認清機");
// settlementReport.setBusinessEndTimeRow(businessEndTimeRow); dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
// settlementReport.setReportName(LanguageUtils.get_language_system(SettlementReportActivity.this, "EODReport", "清機報表")); dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
// settlementReport.setResult(result); mPresenter.sendSettlement();
// PrintAction.getInstance().performN5PrintSettlementReport(SettlementReportActivity.this, settlementReport, new PrintAction.onPrintListener() { dialog.dismiss();
// });
// @Override dialogBuilder.create(com.gingersoft.gsa.cloud.base.R.style.MyDialogTheme2).show();
// public void success() {
//
// }
//
// @Override
// public void failure(String error) {
//
// }
// });
// }
// }
// });
} }
@Override @Override
public void initLanguage() { public void initLanguage() {
String restaurantName = GsaCloudApplication.getRestaurantName(this);
tv_name.setText(LanguageUtils.get_language_system(this, "store.name", "店鋪名稱") + " : " + restaurantName);
} }
...@@ -141,18 +140,20 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese ...@@ -141,18 +140,20 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@Override @Override
public void showLoading(String message) { public void showLoading(String message) {
if (message != null)
LoadingDialog.showDialogForLoading(this, message, true);
else
LoadingDialog.showDialogForLoading(this);
} }
@Override @Override
public void hideLoading() { public void hideLoading() {
LoadingDialog.cancelDialogForLoading();
} }
@Override @Override
public void showMessage(@NonNull String message) { public void showMessage(@NonNull String message) {
checkNotNull(message); ArmsUtils.makeText(this, message);
ArmsUtils.snackbarText(message);
} }
@Override @Override
......
...@@ -4,6 +4,7 @@ import android.content.Context; ...@@ -4,6 +4,7 @@ import android.content.Context;
import android.view.View; import android.view.View;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.R2; import com.gingersoft.gsa.cloud.main.R2;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SettlementReportItem; import com.gingersoft.gsa.cloud.main.mvp.model.bean.SettlementReportItem;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
......
...@@ -135,9 +135,23 @@ ...@@ -135,9 +135,23 @@
android:text="設置" android:text="設置"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="@dimen/sp_17" /> android:textSize="@dimen/sp_17" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_clearance"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_28"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="@dimen/dp_29"
android:layout_height="@dimen/dp_27"
android:layout_marginLeft="@dimen/dp_18"
android:src="@drawable/ic_setting" />
<TextView <TextView
android:id="@+id/tv_clearance"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_14" android:layout_marginLeft="@dimen/dp_14"
......
...@@ -5,4 +5,29 @@ ...@@ -5,4 +5,29 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent">
<com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar"
android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height"/>
<TextView
android:id="@+id/tv_settlement_time"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/theme_red_color"
android:gravity="center"
android:textSize="@dimen/sp_14"
android:text="上次清機時間:2020-3-4 22:00:00"
android:layout_marginTop="@dimen/dp_10"/>
<com.qmuiteam.qmui.layout.QMUIButton
android:id="@+id/btn_settlement_report"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="@dimen/dp_10"
android:textSize="@dimen/sp_14"
android:textColor="@color/theme_white_color"
android:text="清機報表"
android:background="@color/theme_color"/>
</LinearLayout> </LinearLayout>
\ No newline at end of file
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height"/> android:layout_height="?attr/qmui_topbar_height"/>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
...@@ -64,5 +63,15 @@ ...@@ -64,5 +63,15 @@
android:fadeScrollbars="false"/> android:fadeScrollbars="false"/>
</LinearLayout> </LinearLayout>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id="@+id/btn_send_settlement"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_45"
android:layout_gravity="bottom"
android:background="@color/theme_color"
android:textColor="@color/theme_white_color"
android:gravity="center"
android:textSize="@dimen/sp_15"
android:text="去清機"/>
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout> </com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
...@@ -244,6 +244,24 @@ public class OrderBean { ...@@ -244,6 +244,24 @@ public class OrderBean {
public void setTopId(long topId) { public void setTopId(long topId) {
this.topId = topId; this.topId = topId;
} }
@Override
public String toString() {
return "OrderDetailsBean{" +
"id=" + id +
", productName='" + productName + '\'' +
", productId=" + productId +
", price=" + price +
", lunchboxPrice=" + lunchboxPrice +
", number=" + number +
", createTime='" + createTime + '\'' +
", status=" + status +
", type=" + type +
", parentId=" + parentId +
", orderId=" + orderId +
", topId=" + topId +
'}';
}
} }
// public static List<OrderDetailsBean> transOrderDetails(List<Food> foods) { // public static List<OrderDetailsBean> transOrderDetails(List<Food> foods) {
......
...@@ -528,7 +528,7 @@ public class OrderDetail implements Serializable { ...@@ -528,7 +528,7 @@ public class OrderDetail implements Serializable {
return 2; return 2;
} }
if (parentOrderDetail != null && orderDetailsBean.getParentId() != 0) { if (parentOrderDetail != null && orderDetailsBean.getParentId() != 0) {
if (parentOrderDetail.getProductId() == orderDetailsBean.getParentId()) { if (parentOrderDetail.getId() == orderDetailsBean.getParentId()) {
//是父級 //是父級
if (parentOrderDetail.getParentId() == 0) { if (parentOrderDetail.getParentId() == 0) {
return 2; return 2;
......
...@@ -9,15 +9,20 @@ import android.os.Build; ...@@ -9,15 +9,20 @@ import android.os.Build;
import android.os.Environment; import android.os.Environment;
import android.os.Looper; import android.os.Looper;
import android.telecom.Call; import android.telecom.Call;
import android.text.TextUtils;
import android.util.Base64; import android.util.Base64;
import android.util.Log; import android.util.Log;
import android.widget.Toast; import android.widget.Toast;
import com.elvishew.xlog.XLog; import com.elvishew.xlog.XLog;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.file.FileUtils;
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.okhttpUtils.OkHttp3Utils;
import com.gingersoft.gsa.cloud.base.utils.other.AppUtils; import com.gingersoft.gsa.cloud.base.utils.other.AppUtils;
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.jess.arms.utils.DeviceUtils;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
...@@ -33,6 +38,7 @@ import java.lang.Thread.UncaughtExceptionHandler; ...@@ -33,6 +38,7 @@ import java.lang.Thread.UncaughtExceptionHandler;
import java.lang.reflect.Field; 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.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -203,7 +209,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -203,7 +209,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
// 把上面获取的堆栈信息转为字符串,打印出来 // 把上面获取的堆栈信息转为字符串,打印出来
String stacktrace = result.toString(); String stacktrace = result.toString();
printWriter.close(); printWriter.close();
LogUtil.d(TAG,stacktrace); LogUtil.d(TAG, stacktrace);
// XLog.tag(TAG).d(stacktrace); // XLog.tag(TAG).d(stacktrace);
//收集设备信息 //收集设备信息
...@@ -230,6 +236,12 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -230,6 +236,12 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
* @param ctx * @param ctx
*/ */
private void sendCrashReportsToServer(Context ctx) { private void sendCrashReportsToServer(Context ctx) {
if (!TextUtils.isEmpty(crashFile)) {
List<File> files = new ArrayList<>();
File file = new File(crashFile);
files.add(file);
OkHttp3Utils.sendFileMultipart("", file.getName(), files);
}
// uploadFile2Svr(crashFile, "ErrorAppCrash_" + TimeUtil.StampToData(TimeUtil.dateFormatYMDHMS_f, System.currentTimeMillis())); // uploadFile2Svr(crashFile, "ErrorAppCrash_" + TimeUtil.StampToData(TimeUtil.dateFormatYMDHMS_f, System.currentTimeMillis()));
} }
...@@ -409,24 +421,25 @@ public class AppCrashHandler implements UncaughtExceptionHandler { ...@@ -409,24 +421,25 @@ 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 fileName = "crash-" + GSAApplication.machineName + "-" + DeviceUtils.getVersionName(GSAApplication.getAppContext()) + "-" + time + "-" + timetamp + "-" + info.get("versionName") + ".xml"; String MemberName = GsaCloudApplication.getMemberName(mContext);
// if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {//外部存储卡 String fileName = "crash-" + MemberName + "-" + DeviceUtils.getVersionName(mContext) + "-" + time + "-" + timetamp + "-" + info.get("versionName") + ".xml";
// try { if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {//外部存储卡
// File dir = new File(FileUtils.ERRORLOG_PATH); try {
// Log.i("CrashHandler", dir.toString()); File dir = new File(FileUtils.ERRORLOG_PATH);
// //不存在就創建目錄 Log.i("CrashHandler", dir.toString());
// if (!dir.exists()) //不存在就創建目錄
// dir.mkdirs(); if (!dir.exists())
// FileOutputStream fos = new FileOutputStream(new File(FileUtils.ERRORLOG_PATH, fileName)); dir.mkdirs();
// fos.write(sb.toString().getBytes()); FileOutputStream fos = new FileOutputStream(new File(FileUtils.ERRORLOG_PATH, fileName));
// fos.close(); fos.write(sb.toString().getBytes());
// return fileName; fos.close();
// } catch (FileNotFoundException e) { return fileName;
// e.printStackTrace(); } catch (FileNotFoundException e) {
// } catch (IOException e) { e.printStackTrace();
// e.printStackTrace(); } catch (IOException e) {
// } e.printStackTrace();
// } }
}
return null; return null;
} }
......
package com.gingersoft.gsa.cloud.database.bean; package com.gingersoft.gsa.cloud.database.bean;
import android.graphics.Color; import com.google.gson.annotations.SerializedName;
import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.JoinEntity;
import org.greenrobot.greendao.annotation.Property;
import org.greenrobot.greendao.annotation.ToMany;
import org.greenrobot.greendao.annotation.Transient;
import org.greenrobot.greendao.annotation.Generated; import org.greenrobot.greendao.annotation.Generated;
import org.greenrobot.greendao.annotation.Property;
import java.util.List;
/** /**
* 作者:ELEGANT_BIN * 作者:ELEGANT_BIN
...@@ -26,6 +21,46 @@ public class FoodCombo { ...@@ -26,6 +21,46 @@ public class FoodCombo {
private Long fid; //食品ID private Long fid; //食品ID
private int comId;//套餐ID private int comId;//套餐ID
private int seqNo;
private int diffAmt;
private int selectQty;
private String createTime;
private String defModifier;
private String excModifier;
private int autoNext;
private int multipleSelect;
private String updateTime;
private int conditions;
private int isRT;
private int deletes;
private int restaurantId;
@Generated(hash = 1268234634)
public FoodCombo(Long id, Long fid, int comId, int seqNo, int diffAmt,
int selectQty, String createTime, String defModifier,
String excModifier, int autoNext, int multipleSelect, String updateTime,
int conditions, int isRT, int deletes, int restaurantId) {
this.id = id;
this.fid = fid;
this.comId = comId;
this.seqNo = seqNo;
this.diffAmt = diffAmt;
this.selectQty = selectQty;
this.createTime = createTime;
this.defModifier = defModifier;
this.excModifier = excModifier;
this.autoNext = autoNext;
this.multipleSelect = multipleSelect;
this.updateTime = updateTime;
this.conditions = conditions;
this.isRT = isRT;
this.deletes = deletes;
this.restaurantId = restaurantId;
}
@Generated(hash = 1913989231)
public FoodCombo() {
}
// private String defmodifier; // private String defmodifier;
// private String excmodifier; // private String excmodifier;
...@@ -68,40 +103,131 @@ public class FoodCombo { ...@@ -68,40 +103,131 @@ public class FoodCombo {
// private Modifier modifier; // private Modifier modifier;
public Long getId() {
return id;
}
@Generated(hash = 1913989231) public Long getFid() {
public FoodCombo() { return fid;
}
public int getComId() {
return comId;
}
public int getSeqNo() {
return seqNo;
}
public int getDiffAmt() {
return diffAmt;
}
public int getSelectQty() {
return selectQty;
}
public String getCreateTime() {
return createTime;
}
public String getDefModifier() {
return defModifier;
}
public String getExcModifier() {
return excModifier;
}
public int getAutoNext() {
return autoNext;
}
public int getMultipleSelect() {
return multipleSelect;
}
public String getUpdateTime() {
return updateTime;
} }
@Generated(hash = 34188725) public int getConditions() {
public FoodCombo(Long id, Long fid, int comId) { return conditions;
}
public int getIsRT() {
return isRT;
}
public int getDeletes() {
return deletes;
}
public int getRestaurantId() {
return restaurantId;
}
public void setId(Long id) {
this.id = id; this.id = id;
}
public void setFid(Long fid) {
this.fid = fid; this.fid = fid;
}
public void setComId(int comId) {
this.comId = comId; this.comId = comId;
} }
public Long getId() { public void setSeqNo(int seqNo) {
return this.id; this.seqNo = seqNo;
} }
public void setId(Long id) { public void setDiffAmt(int diffAmt) {
this.id = id; this.diffAmt = diffAmt;
} }
public Long getFid() { public void setSelectQty(int selectQty) {
return this.fid; this.selectQty = selectQty;
} }
public void setFid(Long fid) { public void setCreateTime(String createTime) {
this.fid = fid; this.createTime = createTime;
} }
public int getComId() { public void setDefModifier(String defModifier) {
return this.comId; this.defModifier = defModifier;
} }
public void setComId(int comId) { public void setExcModifier(String excModifier) {
this.comId = comId; this.excModifier = excModifier;
}
public void setAutoNext(int autoNext) {
this.autoNext = autoNext;
}
public void setMultipleSelect(int multipleSelect) {
this.multipleSelect = multipleSelect;
} }
public void setUpdateTime(String updateTime) {
this.updateTime = updateTime;
}
public void setConditions(int conditions) {
this.conditions = conditions;
}
public void setIsRT(int isRT) {
this.isRT = isRT;
}
public void setDeletes(int deletes) {
this.deletes = deletes;
}
public void setRestaurantId(int restaurantId) {
this.restaurantId = restaurantId;
}
} }
...@@ -27,6 +27,19 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> { ...@@ -27,6 +27,19 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> {
public final static Property Id = new Property(0, Long.class, "id", false, "_id"); public final static Property Id = new Property(0, Long.class, "id", false, "_id");
public final static Property Fid = new Property(1, Long.class, "fid", false, "FID"); public final static Property Fid = new Property(1, Long.class, "fid", false, "FID");
public final static Property ComId = new Property(2, int.class, "comId", false, "COM_ID"); public final static Property ComId = new Property(2, int.class, "comId", false, "COM_ID");
public final static Property SeqNo = new Property(3, int.class, "seqNo", false, "SEQ_NO");
public final static Property DiffAmt = new Property(4, int.class, "diffAmt", false, "DIFF_AMT");
public final static Property SelectQty = new Property(5, int.class, "selectQty", false, "SELECT_QTY");
public final static Property CreateTime = new Property(6, String.class, "createTime", false, "CREATE_TIME");
public final static Property DefModifier = new Property(7, String.class, "defModifier", false, "DEF_MODIFIER");
public final static Property ExcModifier = new Property(8, String.class, "excModifier", false, "EXC_MODIFIER");
public final static Property AutoNext = new Property(9, int.class, "autoNext", false, "AUTO_NEXT");
public final static Property MultipleSelect = new Property(10, int.class, "multipleSelect", false, "MULTIPLE_SELECT");
public final static Property UpdateTime = new Property(11, String.class, "updateTime", false, "UPDATE_TIME");
public final static Property Conditions = new Property(12, int.class, "conditions", false, "CONDITIONS");
public final static Property IsRT = new Property(13, int.class, "isRT", false, "IS_RT");
public final static Property Deletes = new Property(14, int.class, "deletes", false, "DELETES");
public final static Property RestaurantId = new Property(15, int.class, "restaurantId", false, "RESTAURANT_ID");
} }
...@@ -44,7 +57,20 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> { ...@@ -44,7 +57,20 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> {
db.execSQL("CREATE TABLE " + constraint + "\"FOOD_COMBO\" (" + // db.execSQL("CREATE TABLE " + constraint + "\"FOOD_COMBO\" (" + //
"\"_id\" INTEGER," + // 0: id "\"_id\" INTEGER," + // 0: id
"\"FID\" INTEGER," + // 1: fid "\"FID\" INTEGER," + // 1: fid
"\"COM_ID\" INTEGER NOT NULL );"); // 2: comId "\"COM_ID\" INTEGER NOT NULL ," + // 2: comId
"\"SEQ_NO\" INTEGER NOT NULL ," + // 3: seqNo
"\"DIFF_AMT\" INTEGER NOT NULL ," + // 4: diffAmt
"\"SELECT_QTY\" INTEGER NOT NULL ," + // 5: selectQty
"\"CREATE_TIME\" TEXT," + // 6: createTime
"\"DEF_MODIFIER\" TEXT," + // 7: defModifier
"\"EXC_MODIFIER\" TEXT," + // 8: excModifier
"\"AUTO_NEXT\" INTEGER NOT NULL ," + // 9: autoNext
"\"MULTIPLE_SELECT\" INTEGER NOT NULL ," + // 10: multipleSelect
"\"UPDATE_TIME\" TEXT," + // 11: updateTime
"\"CONDITIONS\" INTEGER NOT NULL ," + // 12: conditions
"\"IS_RT\" INTEGER NOT NULL ," + // 13: isRT
"\"DELETES\" INTEGER NOT NULL ," + // 14: deletes
"\"RESTAURANT_ID\" INTEGER NOT NULL );"); // 15: restaurantId
} }
/** Drops the underlying database table. */ /** Drops the underlying database table. */
...@@ -67,6 +93,35 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> { ...@@ -67,6 +93,35 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> {
stmt.bindLong(2, fid); stmt.bindLong(2, fid);
} }
stmt.bindLong(3, entity.getComId()); stmt.bindLong(3, entity.getComId());
stmt.bindLong(4, entity.getSeqNo());
stmt.bindLong(5, entity.getDiffAmt());
stmt.bindLong(6, entity.getSelectQty());
String createTime = entity.getCreateTime();
if (createTime != null) {
stmt.bindString(7, createTime);
}
String defModifier = entity.getDefModifier();
if (defModifier != null) {
stmt.bindString(8, defModifier);
}
String excModifier = entity.getExcModifier();
if (excModifier != null) {
stmt.bindString(9, excModifier);
}
stmt.bindLong(10, entity.getAutoNext());
stmt.bindLong(11, entity.getMultipleSelect());
String updateTime = entity.getUpdateTime();
if (updateTime != null) {
stmt.bindString(12, updateTime);
}
stmt.bindLong(13, entity.getConditions());
stmt.bindLong(14, entity.getIsRT());
stmt.bindLong(15, entity.getDeletes());
stmt.bindLong(16, entity.getRestaurantId());
} }
@Override @Override
...@@ -83,6 +138,35 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> { ...@@ -83,6 +138,35 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> {
stmt.bindLong(2, fid); stmt.bindLong(2, fid);
} }
stmt.bindLong(3, entity.getComId()); stmt.bindLong(3, entity.getComId());
stmt.bindLong(4, entity.getSeqNo());
stmt.bindLong(5, entity.getDiffAmt());
stmt.bindLong(6, entity.getSelectQty());
String createTime = entity.getCreateTime();
if (createTime != null) {
stmt.bindString(7, createTime);
}
String defModifier = entity.getDefModifier();
if (defModifier != null) {
stmt.bindString(8, defModifier);
}
String excModifier = entity.getExcModifier();
if (excModifier != null) {
stmt.bindString(9, excModifier);
}
stmt.bindLong(10, entity.getAutoNext());
stmt.bindLong(11, entity.getMultipleSelect());
String updateTime = entity.getUpdateTime();
if (updateTime != null) {
stmt.bindString(12, updateTime);
}
stmt.bindLong(13, entity.getConditions());
stmt.bindLong(14, entity.getIsRT());
stmt.bindLong(15, entity.getDeletes());
stmt.bindLong(16, entity.getRestaurantId());
} }
@Override @Override
...@@ -95,7 +179,20 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> { ...@@ -95,7 +179,20 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> {
FoodCombo entity = new FoodCombo( // FoodCombo entity = new FoodCombo( //
cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id
cursor.isNull(offset + 1) ? null : cursor.getLong(offset + 1), // fid cursor.isNull(offset + 1) ? null : cursor.getLong(offset + 1), // fid
cursor.getInt(offset + 2) // comId cursor.getInt(offset + 2), // comId
cursor.getInt(offset + 3), // seqNo
cursor.getInt(offset + 4), // diffAmt
cursor.getInt(offset + 5), // selectQty
cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // createTime
cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7), // defModifier
cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // excModifier
cursor.getInt(offset + 9), // autoNext
cursor.getInt(offset + 10), // multipleSelect
cursor.isNull(offset + 11) ? null : cursor.getString(offset + 11), // updateTime
cursor.getInt(offset + 12), // conditions
cursor.getInt(offset + 13), // isRT
cursor.getInt(offset + 14), // deletes
cursor.getInt(offset + 15) // restaurantId
); );
return entity; return entity;
} }
...@@ -105,6 +202,19 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> { ...@@ -105,6 +202,19 @@ public class FoodComboDao extends AbstractDao<FoodCombo, Void> {
entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0));
entity.setFid(cursor.isNull(offset + 1) ? null : cursor.getLong(offset + 1)); entity.setFid(cursor.isNull(offset + 1) ? null : cursor.getLong(offset + 1));
entity.setComId(cursor.getInt(offset + 2)); entity.setComId(cursor.getInt(offset + 2));
entity.setSeqNo(cursor.getInt(offset + 3));
entity.setDiffAmt(cursor.getInt(offset + 4));
entity.setSelectQty(cursor.getInt(offset + 5));
entity.setCreateTime(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6));
entity.setDefModifier(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7));
entity.setExcModifier(cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8));
entity.setAutoNext(cursor.getInt(offset + 9));
entity.setMultipleSelect(cursor.getInt(offset + 10));
entity.setUpdateTime(cursor.isNull(offset + 11) ? null : cursor.getString(offset + 11));
entity.setConditions(cursor.getInt(offset + 12));
entity.setIsRT(cursor.getInt(offset + 13));
entity.setDeletes(cursor.getInt(offset + 14));
entity.setRestaurantId(cursor.getInt(offset + 15));
} }
@Override @Override
......
...@@ -6,6 +6,7 @@ import android.util.Log; ...@@ -6,6 +6,7 @@ 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.FoodModifier; import com.gingersoft.gsa.cloud.database.bean.FoodModifier;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.database.greendao.ComboItemDao;
import com.gingersoft.gsa.cloud.database.greendao.FoodModifierDao; import com.gingersoft.gsa.cloud.database.greendao.FoodModifierDao;
import org.greenrobot.greendao.query.QueryBuilder; import org.greenrobot.greendao.query.QueryBuilder;
...@@ -33,6 +34,14 @@ public class FoodModifierDaoUtils { ...@@ -33,6 +34,14 @@ public class FoodModifierDaoUtils {
} }
/** /**
* 清除緩存
*/
public void detachAll() {
FoodModifierDao foodModifierDao = DaoManager.getInstance().getDaoSession().getFoodModifierDao();
foodModifierDao.detachAll();
}
/**
* 完成Food记录的插入,如果表未创建,先创建Food表 * 完成Food记录的插入,如果表未创建,先创建Food表
* *
* @param foodModifier * @param foodModifier
......
...@@ -307,15 +307,15 @@ public class ModifierDaoUtils { ...@@ -307,15 +307,15 @@ public class ModifierDaoUtils {
switch (mode) { switch (mode) {
case modifierMode_All: case modifierMode_All:
sqlstr = " SELECT MODIFIER.MID,MODIFIER_NAME,MODIFIER_NAME1,MODIFIER_NAME2,TOP_ID,PRICE,MOD_COMM,MOD_TASTE,MOD_MSG,VISIBLE,MULTIPLE,IS_PARENT,DEFMODIFIER" + sqlstr = " SELECT m.MID,MODIFIER_NAME,MODIFIER_NAME1,MODIFIER_NAME2,TOP_ID,PRICE,MOD_COMM,MOD_TASTE,MOD_MSG,VISIBLE,MULTIPLE,IS_PARENT,DEFMODIFIER" +
" FROM MODIFIER join FOOD_MODIFIER on MODIFIER.TOP_ID=FOOD_MODIFIER.MID where MODIFIER.INVISIBLE=0 and MODIFIER.IS_PARENT=1 and FOOD_MODIFIER.FID='" + fid + "' order by FOOD_MODIFIER.SEQ_NO,MODIFIER.SEQ_NO"; " FROM MODIFIER m join FOOD_MODIFIER fm on m.TOP_ID=fm.MID where m.INVISIBLE=0 and m.IS_PARENT=1 and fm.FID='" + fid + "' order by fm.SEQ_NO,m.SEQ_NO";
mfs_child1 = query_modifier_Child_new(sqlstr, fid); mfs_child1 = query_modifier_Child_new(sqlstr, fid);
List<Modifier> mfs_child2 = new ArrayList<>(); List<Modifier> mfs_child2 = new ArrayList<>();
sqlstr = " SELECT MODIFIER.MID,MODIFIER_NAME,MODIFIER_NAME1,MODIFIER_NAME2,TOP_ID,PRICE,MOD_COMM,MOD_TASTE,MOD_MSG,VISIBLE,MULTIPLE,IS_PARENT,DEFMODIFIER" + sqlstr = " SELECT m.MID,MODIFIER_NAME,MODIFIER_NAME1,MODIFIER_NAME2,TOP_ID,PRICE,MOD_COMM,MOD_TASTE,MOD_MSG,VISIBLE,MULTIPLE,IS_PARENT,DEFMODIFIER" +
" FROM MODIFIER join FOOD_MODIFIER on MODIFIER.TOP_ID=FOOD_MODIFIER.MID where MODIFIER.INVISIBLE=0 and MODIFIER.IS_PARENT=0 and FOOD_MODIFIER.FID='" + fid + "' order by FOOD_MODIFIER.SEQ_NO,MODIFIER.SEQ_NO"; " FROM MODIFIER m join FOOD_MODIFIER fm on m.TOP_ID=fm.MID where m.INVISIBLE=0 and m.IS_PARENT=0 and fm.FID='" + fid + "' order by fm.SEQ_NO,m.SEQ_NO";
mfs_child2 = query_modifier_Child_new(sqlstr, fid); mfs_child2 = query_modifier_Child_new(sqlstr, fid);
mfs_child1.addAll(mfs_child2); mfs_child1.addAll(mfs_child2);
...@@ -368,7 +368,10 @@ public class ModifierDaoUtils { ...@@ -368,7 +368,10 @@ public class ModifierDaoUtils {
order.setModMsg(c.getLong(c.getColumnIndex("MOD_MSG"))); order.setModMsg(c.getLong(c.getColumnIndex("MOD_MSG")));
order.setModTaste(c.getLong(c.getColumnIndex("MOD_TASTE"))); order.setModTaste(c.getLong(c.getColumnIndex("MOD_TASTE")));
order.setMultiple(c.getDouble(c.getColumnIndex("MULTIPLE"))); order.setMultiple(c.getDouble(c.getColumnIndex("MULTIPLE")));
// order.setDefmodifier(c.getString(c.getColumnIndex("DEFMODIFIER"))); String defmodifier = c.getString(c.getColumnIndex("DEFMODIFIER"));
// if (!defmodifier.contains(",")) {
// order.setDefmodifier(defmodifier);
// }
// if (order.isVisible()) { // if (order.isVisible()) {
modifiers.add(order); modifiers.add(order);
// } // }
......
...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model.bean.request; ...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model.bean.request;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 作者:ELEGANT_BIN * 作者:ELEGANT_BIN
...@@ -16,7 +17,7 @@ public class OrderRequest { ...@@ -16,7 +17,7 @@ public class OrderRequest {
private int person; private int person;
private int tableId; private int tableId;
private List<OrderBean.OrderDetailsBean> orderDetails; private Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails;
public int getPerson() { public int getPerson() {
return person; return person;
...@@ -34,15 +35,16 @@ public class OrderRequest { ...@@ -34,15 +35,16 @@ public class OrderRequest {
this.tableId = tableId; this.tableId = tableId;
} }
public List<OrderBean.OrderDetailsBean> getOrderDetails() { public Map<Long, List<OrderBean.OrderDetailsBean>> getOrderDetails() {
return orderDetails; return orderDetails;
} }
public void setOrderDetails(List<OrderBean.OrderDetailsBean> orderDetails) { public void setOrderDetails(Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails) {
this.orderDetails = orderDetails; this.orderDetails = orderDetails;
} }
// public static class Request {
// public static class Request {
// private long productId; // private long productId;
// private String productName; // private String productName;
// private double price; // private double price;
...@@ -112,10 +114,12 @@ public class OrderRequest { ...@@ -112,10 +114,12 @@ public class OrderRequest {
// } // }
// } // }
@Override @Override
public String toString() { public String toString() {
return "OrderRequest{" + return "OrderRequest{" +
"person=" + person + "person=" + person +
", tableId=" + tableId +
", orderDetails=" + orderDetails + ", orderDetails=" + orderDetails +
'}'; '}';
} }
......
package com.gingersoft.gsa.cloud.table.mvp.model.utils;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import java.util.ArrayList;
import java.util.List;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-03-05
* 修订历史:2020-03-05
* 描述:
*/
public class OrderAssemblyUtil {
/**
* 組裝食品結構
* @param orderDetails
* @return
*/
public static List<OrderDetail> assemblyOrder(List<OrderDetail> orderDetails) {
List<OrderDetail> newOrderDetails = new ArrayList<>();
for (int i = 0; i < orderDetails.size(); i++) {
OrderDetail order = orderDetails.get(i);
if (order.getItemType() == 1) {
newOrderDetails.add(order);
newOrderDetails.addAll(getOrdersItem2ByParentId(orderDetails, order.getId(), i));
}
}
return newOrderDetails;
}
private static List<OrderDetail> getOrdersItem2ByParentId(List<OrderDetail> orderDetails, long id, int startIndex) {
List<OrderDetail> orders = new ArrayList<>();
for (int i = startIndex; i < orderDetails.size(); i++) {
OrderDetail item = orderDetails.get(i);
if (item.getItemType() == 3 && item.getParentId() == id) {
//添加主食品細項
orders.add(item);
}
}
for (int i = startIndex; i < orderDetails.size(); i++) {
OrderDetail item = orderDetails.get(i);
if (item.getItemType() == 2 && item.getParentId() == id) {
//添加子食品
orders.add(item);
orders.addAll(getOrdersItem3ByParentId(orderDetails,item.getId(),i));
}
}
return orders;
}
private static List<OrderDetail> getOrdersItem3ByParentId(List<OrderDetail> orderDetails, long id, int startIndex) {
List<OrderDetail> orders = new ArrayList<>();
for (int i = startIndex; i < orderDetails.size(); i++) {
OrderDetail item = orderDetails.get(i);
if (item.getItemType() == 3 && item.getParentId() == id) {
//添加子食品細項
orders.add(item);
}
}
return orders;
}
}
...@@ -5,6 +5,7 @@ import android.content.Context; ...@@ -5,6 +5,7 @@ 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;
......
...@@ -25,7 +25,9 @@ import com.jess.arms.utils.RxLifecycleUtils; ...@@ -25,7 +25,9 @@ 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.List; import java.util.List;
import java.util.Map;
import javax.inject.Inject; import javax.inject.Inject;
...@@ -189,7 +191,11 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -189,7 +191,11 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
@Override @Override
public void onNext(BaseResult baseResult) { public void onNext(BaseResult baseResult) {
if (baseResult.isSuccess()) { if (baseResult.isSuccess()) {
if (mOrderContentActivity != null) {
textView.setText(peopleNumber);
} else {
textView.setText("人數:" + peopleNumber); textView.setText("人數:" + peopleNumber);
}
OpenTableManage.getDefault().setPeopleNumber(Integer.parseInt(peopleNumber)); OpenTableManage.getDefault().setPeopleNumber(Integer.parseInt(peopleNumber));
} }
} }
...@@ -275,11 +281,9 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -275,11 +281,9 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
if (start_position <= my_index && my_index <= end_position) { if (start_position <= my_index && my_index <= end_position) {
OrderDetail orderDetail1 = orderDetails.get(i); OrderDetail orderDetail1 = orderDetails.get(i);
builder.append(orderDetail1.getId()); builder.append(orderDetail1.getId());
if (i <= (orderDetails.size() - 1)) {
builder.append(","); builder.append(",");
} }
} }
}
String str = builder.toString(); String str = builder.toString();
if (str.endsWith(",")) { if (str.endsWith(",")) {
str = str.substring(0, str.length() - 1); str = str.substring(0, str.length() - 1);
...@@ -295,10 +299,19 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -295,10 +299,19 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return request; return request;
} }
private List<OrderBean.OrderDetailsBean> orderDetailBeanToFoodRequest(List<OrderDetail> foodList) { protected Map<Long, List<OrderBean.OrderDetailsBean>> orderDetailBeanToFoodRequest(List<OrderDetail> foodList) {
List<OrderBean.OrderDetailsBean> requests = new ArrayList<>(); Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails = new HashMap<>();
if (foodList != null) { if (foodList != null) {
for (OrderDetail food : foodList) { //套餐明細ID
long mapIndex = 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<>();
mapIndex += 1;
}
OrderBean.OrderDetailsBean request = new OrderBean.OrderDetailsBean(); OrderBean.OrderDetailsBean request = new OrderBean.OrderDetailsBean();
request.setProductName(food.getProductName()); request.setProductName(food.getProductName());
request.setProductId(food.getProductId()); request.setProductId(food.getProductId());
...@@ -307,10 +320,25 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -307,10 +320,25 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
request.setPrice(food.getPrice()); request.setPrice(food.getPrice());
request.setType(food.getType()); request.setType(food.getType());
request.setLunchboxPrice(0); request.setLunchboxPrice(0);
requests.add(request); if (food.isNew()) {
//這裡只添加新食品
orderItems.add(request);
} }
int nextIndex = i + 1;
if (foodList.size() > nextIndex) {
if (foodList.get(nextIndex).getItemType() == 1 && orderItems != null) {
//下一個食品是不是主食品
orderDetails.put(mapIndex, orderItems);
} }
return requests; } else if (foodList.size() == nextIndex) {
//最後
if (orderItems != null) {
orderDetails.put(mapIndex, orderItems);
}
}
}
}
return orderDetails;
} }
protected List<OrderDetail> getNewOrderFoodLists() { protected List<OrderDetail> getNewOrderFoodLists() {
......
...@@ -12,6 +12,7 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; ...@@ -12,6 +12,7 @@ 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.JsonUtils;
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.FoodCombo; import com.gingersoft.gsa.cloud.database.bean.FoodCombo;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
...@@ -23,6 +24,7 @@ import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract; ...@@ -23,6 +24,7 @@ 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.OrderRequest;
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.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ComboAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ComboAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodAdapter;
...@@ -41,6 +43,7 @@ import org.simple.eventbus.Subscriber; ...@@ -41,6 +43,7 @@ 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;
...@@ -206,7 +209,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -206,7 +209,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
// } // }
//设置当前操作的套餐细项 //设置当前操作的套餐细项
mCurrentOrderDetailBean = OrderDetail.comboTransOrderDetail(datasBean, mCurrentOrderDetailBean.getId(),1, "combo", RvMealClicked); mCurrentOrderDetailBean = OrderDetail.comboTransOrderDetail(datasBean, mCurrentOrderDetailBean.getId(), 1, "combo", RvMealClicked);
//先清除上一次选择的子项最大数 //先清除上一次选择的子项最大数
// mModel.clearComboQty(); // mModel.clearComboQty();
//添加子项 //添加子项
...@@ -270,7 +273,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -270,7 +273,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
Modifier modfier = mModifierList.get(i); Modifier modfier = mModifierList.get(i);
int defNumber = Integer.parseInt(modfier.getDefmodifier()); int defNumber = Integer.parseInt(modfier.getDefmodifier());
if (defNumber != 0) { if (defNumber != 0) {
addPosition = mSelectMealAdapter.addFoodItem(OrderDetail.modifierTransOrderDetail(modfier,mCurrentOrderDetailBean.getId(), defNumber)); addPosition = mSelectMealAdapter.addFoodItem(OrderDetail.modifierTransOrderDetail(modfier, mCurrentOrderDetailBean.getId(), defNumber));
} }
} }
...@@ -285,7 +288,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -285,7 +288,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
@Subscriber(tag = MealConstant.ADD_FOOD_MODIFIER) @Subscriber(tag = MealConstant.ADD_FOOD_MODIFIER)
private void addModifierItem(Modifier datasBean) { private void addModifierItem(Modifier datasBean) {
mCurrentOrderDetailBean = OrderDetail.modifierTransOrderDetail(datasBean,mCurrentOrderDetailBean.getId(), 1); mCurrentOrderDetailBean = OrderDetail.modifierTransOrderDetail(datasBean, mCurrentOrderDetailBean.getId(), 1);
int addPosition = mSelectMealAdapter.addFoodItem(mCurrentOrderDetailBean); int addPosition = mSelectMealAdapter.addFoodItem(mCurrentOrderDetailBean);
mRootView.setMealRvScrollToPosition(addPosition); mRootView.setMealRvScrollToPosition(addPosition);
} }
...@@ -327,8 +330,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -327,8 +330,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
} }
public void createOrder() { public void createOrder() {
OrderRequest request = getCreateOrderRequest(getNewOrderFoodLists()); OrderRequest request = getCreateOrderRequest(getOrderFoodLists());
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(request)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
String json = GsonUtils.GsonString(request);
mModel.createOrder(requestBody) mModel.createOrder(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -360,7 +364,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -360,7 +364,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
food.setOrderId(MyOrderManage.getInstance().getOrderId()); food.setOrderId(MyOrderManage.getInstance().getOrderId());
} }
List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods); List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(orderBeans)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(orderBeans));
String json = GsonUtils.GsonString(orderBeans);
mModel.addFood(requestBody) mModel.addFood(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -377,7 +382,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -377,7 +382,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(newFoods); printSendOrder(getOrderFoodLists());
mRootView.killMyself(); mRootView.killMyself();
} else { } else {
if (!hasNesOrderFoods()) { if (!hasNesOrderFoods()) {
...@@ -387,7 +392,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -387,7 +392,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(newFoods); printSendOrder(getOrderFoodLists());
mRootView.killMyself(); mRootView.killMyself();
} else { } else {
mRootView.showMessage("送單失敗"); mRootView.showMessage("送單失敗");
...@@ -461,7 +466,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -461,7 +466,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//緩存訂單信息 //緩存訂單信息
MyOrderManage.getInstance().setOrderBean(new OrderBean(info.getData())); MyOrderManage.getInstance().setOrderBean(new OrderBean(info.getData()));
//緩存食品信息 //緩存食品信息
List<OrderDetail> orderDetailList = OrderDetail.orderTransOrderDetails(info.getData().getOrderDetails()); List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(info.getData().getOrderDetails()));
orderFoodList.addAll(orderDetailList); orderFoodList.addAll(orderDetailList);
} }
...@@ -726,7 +732,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -726,7 +732,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
int iNumber = 0; int iNumber = 0;
for (int j = 0; j < orderFoodList.size(); j++) { for (int j = 0; j < orderFoodList.size(); j++) {
OrderDetail datasBean = orderFoodList.get(j); OrderDetail datasBean = orderFoodList.get(j);
if (datasBean.isNew() && datasBean.getId() == foodBean.getId()) { if (datasBean.isNew() && datasBean.getProductId() == foodBean.getId()) {
iNumber = iNumber + datasBean.getNumber(); iNumber = iNumber + datasBean.getNumber();
foodBean.setNumber(iNumber); foodBean.setNumber(iNumber);
} }
...@@ -744,7 +750,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -744,7 +750,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if (orderDetailList != null) { if (orderDetailList != null) {
for (int j = 0; j < orderDetailList.size(); j++) { for (int j = 0; j < orderDetailList.size(); j++) {
OrderDetail food = orderDetailList.get(j); OrderDetail food = orderDetailList.get(j);
if (food.isNew() && food.getParentId() == foodBean.getId()) { if (food.isNew() && food.getTopId() == foodBean.getId()) {
iNumber = iNumber + food.getNumber(); iNumber = iNumber + food.getNumber();
foodBean.setNumber(iNumber); foodBean.setNumber(iNumber);
} }
......
...@@ -12,6 +12,7 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; ...@@ -12,6 +12,7 @@ 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.JsonUtils;
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;
...@@ -29,6 +30,7 @@ import com.jess.arms.utils.RxLifecycleUtils; ...@@ -29,6 +30,7 @@ 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;
...@@ -131,7 +133,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -131,7 +133,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
private void createOrder(boolean isPrint) { private void createOrder(boolean isPrint) {
OrderRequest request = getCreateOrderRequest(getOrderFoodLists()); OrderRequest request = getCreateOrderRequest(getOrderFoodLists());
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(request)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
mModel.createOrder(requestBody) mModel.createOrder(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -173,7 +175,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -173,7 +175,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
food.setOrderId(MyOrderManage.getInstance().getOrderId()); food.setOrderId(MyOrderManage.getInstance().getOrderId());
} }
List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods); List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(orderBeans)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(orderBeans));
String json = GsonUtils.GsonString(orderBeans);
mModel.addFood(requestBody) mModel.addFood(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -189,7 +192,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -189,7 +192,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
printOrder(OpenTableManage.getDefault().getTableBean().getId()); printOrder(OpenTableManage.getDefault().getTableBean().getId());
} else { } else {
mRootView.showMessage("送單成功"); mRootView.showMessage("送單成功");
printSendOrder(newFoods); printSendOrder(getOrderFoodLists());
mRootView.sendSuccess(); mRootView.sendSuccess();
} }
} else { } else {
...@@ -199,7 +202,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -199,7 +202,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
if(!hasNesOrderFoods()){ if(!hasNesOrderFoods()){
//TODO 未新增食品點擊送單 後台不讓過直接提示即可 //TODO 未新增食品點擊送單 後台不讓過直接提示即可
mRootView.showMessage("送單成功"); mRootView.showMessage("送單成功");
printSendOrder(newFoods); printSendOrder(getOrderFoodLists());
mRootView.sendSuccess(); mRootView.sendSuccess();
}else { }else {
mRootView.showMessage("送單失敗"); mRootView.showMessage("送單失敗");
...@@ -298,29 +301,29 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -298,29 +301,29 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
// .call(); // .call();
// } // }
protected OrderRequest getCreateOrderRequest(List<OrderDetail> foodList) { // protected OrderRequest getCreateOrderRequest(List<OrderDetail> foodList) {
OrderRequest request = new OrderRequest(); // OrderRequest request = new OrderRequest();
request.setOrderDetails(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());
return request; // return request;
} // }
private List<OrderBean.OrderDetailsBean> orderDetailBeanToFoodRequest(List<OrderDetail> foodList) { // private List<OrderBean.OrderDetailsBean> orderDetailBeanToFoodRequest(List<OrderDetail> foodList) {
List<OrderBean.OrderDetailsBean> requests = new ArrayList<>(); // List<OrderBean.OrderDetailsBean> requests = new ArrayList<>();
if (foodList != null) { // if (foodList != null) {
for (OrderDetail food : foodList) { // for (OrderDetail food : foodList) {
OrderBean.OrderDetailsBean request = new OrderBean.OrderDetailsBean(); // OrderBean.OrderDetailsBean request = new OrderBean.OrderDetailsBean();
request.setProductName(food.getProductName()); // request.setProductName(food.getProductName());
request.setProductId(food.getId()); // request.setProductId(food.getId());
request.setNumber(food.getNumber()); // request.setNumber(food.getNumber());
request.setPrice(food.getPrice()); // request.setPrice(food.getPrice());
request.setLunchboxPrice(0); // request.setLunchboxPrice(0);
requests.add(request); // requests.add(request);
} // }
} // }
return requests; // return requests;
} // }
} }
...@@ -13,6 +13,7 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; ...@@ -13,6 +13,7 @@ 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.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil; import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
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;
...@@ -28,6 +29,7 @@ import com.jess.arms.utils.RxLifecycleUtils; ...@@ -28,6 +29,7 @@ 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;
...@@ -215,7 +217,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -215,7 +217,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
private void createOrder() { private void createOrder() {
OrderRequest request = getCreateOrderRequest(getOrderFoodLists()); OrderRequest request = getCreateOrderRequest(getOrderFoodLists());
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(request)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
mModel.createOrder(requestBody) mModel.createOrder(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -250,7 +252,8 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -250,7 +252,8 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
food.setOrderId(MyOrderManage.getInstance().getOrderId()); food.setOrderId(MyOrderManage.getInstance().getOrderId());
} }
List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods); List<OrderBean.OrderDetailsBean> orderBeans = OrderBean.transOrderDetails(newFoods);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), JsonUtils.toJson(orderBeans)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(orderBeans));
String json = GsonUtils.GsonString(orderBeans);
mModel.addFood(requestBody) mModel.addFood(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
......
...@@ -5,6 +5,7 @@ import android.content.Context; ...@@ -5,6 +5,7 @@ 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;
......
...@@ -18,6 +18,7 @@ import com.gingersoft.gsa.cloud.table.app.TableOperatTypeConstant; ...@@ -18,6 +18,7 @@ import com.gingersoft.gsa.cloud.table.app.TableOperatTypeConstant;
import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract; import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract;
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.TableDetail; import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil;
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.BottomFunctionAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BottomFunctionAdapter;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
...@@ -224,7 +225,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -224,7 +225,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
} }
public void openTable(int tableId) { public void openTable(int tableId) {
RequestBody requestBody = new FormBody.Builder() RequestBody requestBody = new FormBody.Builder()
.add("id", String.valueOf(tableId)) .add("id", String.valueOf(tableId))
.build(); .build();
...@@ -253,7 +253,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -253,7 +253,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
//緩存訂單信息 //緩存訂單信息
MyOrderManage.getInstance().setOrderBean(new OrderBean(orderBean)); MyOrderManage.getInstance().setOrderBean(new OrderBean(orderBean));
//緩存食品信息 //緩存食品信息
List<OrderDetail> orderDetailList = OrderDetail.orderTransOrderDetails(orderDetailsBeans); List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(orderDetailsBeans));
MyOrderManage.getInstance().setOrderFoodList(orderDetailList); MyOrderManage.getInstance().setOrderFoodList(orderDetailList);
} else { } else {
......
...@@ -32,9 +32,11 @@ import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils; ...@@ -32,9 +32,11 @@ import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.base.utils.view.ViewUtils; 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;
import com.gingersoft.gsa.cloud.database.utils.FoodModifierDaoUtils;
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.gingersoft.gsa.cloud.table.app.GoldConstants;
...@@ -259,6 +261,8 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -259,6 +261,8 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
foodDaoUtils.detachAll(); foodDaoUtils.detachAll();
FoodComboDaoUtils foodComboDaoUtils = new FoodComboDaoUtils(this); FoodComboDaoUtils foodComboDaoUtils = new FoodComboDaoUtils(this);
foodComboDaoUtils.detachAll(); foodComboDaoUtils.detachAll();
FoodModifierDaoUtils foodModifierDaoUtils = new FoodModifierDaoUtils(this);
foodModifierDaoUtils.detachAll();
ComboItemDaoUtils comboItemDaoUtils = new ComboItemDaoUtils(this); ComboItemDaoUtils comboItemDaoUtils = new ComboItemDaoUtils(this);
comboItemDaoUtils.detachAll(); comboItemDaoUtils.detachAll();
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
...@@ -271,7 +275,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -271,7 +275,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override @Override
public void initData(@Nullable Bundle savedInstanceState) { public void initData(@Nullable Bundle savedInstanceState) {
// mPresenter = null;
initViewMap(); initViewMap();
//初始化Plu模式 //初始化Plu模式
setPluMode(); setPluMode();
......
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