Commit d4b60ac5 by 宁斌

1、支付ID修改 2、与修改前打印机名称相同无法保存处理

parents e9036833 968adff5
......@@ -8,11 +8,10 @@ import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.TextView
import androidx.annotation.Nullable
import androidx.core.content.ContextCompat
import androidx.databinding.DataBindingUtil
import androidx.recyclerview.widget.RecyclerView
import com.gingersoft.gsa.cloud.pay.contract.PayTypeContract
import com.gingersoft.gsa.cloud.pay.contract.PayMethodContract
import com.gingersoft.gsa.delivery_pick_mode.R
import com.gingersoft.gsa.delivery_pick_mode.data.model.bean.HistoryOrderBean.Data.OrderItem
import com.gingersoft.gsa.delivery_pick_mode.databinding.LayoutHistoryOrderItemBinding
......@@ -150,7 +149,7 @@ class HistoryOrderAdapter(var stauts: String?, private val context: Context, var
}
else -> {
when (payType) {
PayTypeContract.PAY_METHOD_ID_1021 -> { //Google pay需要5-7天
PayMethodContract.PAY_METHOD_ID_1021 -> { //Google pay需要5-7天
return "退款中(預計5-7個工作日退回原賬戶)"
}
else -> {
......
......@@ -20,7 +20,7 @@ import com.gingersoft.gsa.cloud.common.utils.ClipboardUtils
import com.gingersoft.gsa.cloud.common.utils.MoneyUtil
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils
import com.gingersoft.gsa.cloud.pay.contract.PayTypeContract
import com.gingersoft.gsa.cloud.pay.contract.PayMethodContract
import com.gingersoft.gsa.cloud.ui.utils.DialogUtils
import com.gingersoft.gsa.delivery_pick_mode.R
import com.gingersoft.gsa.delivery_pick_mode.data.model.bean.BillBean
......@@ -265,7 +265,7 @@ object OtherOrderUtils {
}
else -> {
when (payType) {
PayTypeContract.PAY_METHOD_ID_1021 -> { //Google pay需要5-7天
PayMethodContract.PAY_METHOD_ID_1021 -> { //Google pay需要5-7天
return "退款中(預計5-7個工作日退回原賬戶)"
}
else -> {
......
......@@ -2,7 +2,6 @@ ext.mainApp = true //设置为true,表示此module为主app module,一直
apply from: rootProject.file("cc-settings.gradle")
apply plugin: 'com.jakewharton.butterknife'
apply plugin: 'com.didi.dokit'
apply plugin: 'android-aspectjx'
android {
signingConfigs {
......@@ -25,9 +24,7 @@ android {
defaultConfig {
minSdkVersion rootProject.ext.android["minSdkVersion"]
targetSdkVersion rootProject.ext.android["targetSdkVersion"]
if (project.ext.runAsApp) {
applicationId 'com.gingersoft.gsa.cloud'
}
applicationId 'com.gingersoft.gsa.cloud'
versionCode rootProject.ext.android["versionCode"]
versionName rootProject.ext.android["versionName"]
multiDexEnabled true
......@@ -63,19 +60,17 @@ android {
enabled = true
}
//修改生成的apk名字
if (project.ext.runAsApp) {
applicationVariants.all { variant ->
variant.outputs.all {
def fileName
def date = new Date()
def formattedDate = date.format('yyyy-MM-dd')
if (variant.buildType.name == 'release') {
fileName = "正式版_GSA-Cloud_${variant.mergedFlavor.versionName}_${formattedDate}.apk"
} else if (variant.buildType.name == 'debug') {
fileName = "测试版_GSA-Cloud_${variant.mergedFlavor.versionName}_${formattedDate}.apk"
}
outputFileName = fileName
applicationVariants.all { variant ->
variant.outputs.all {
def fileName
def date = new Date()
def formattedDate = date.format('yyyy-MM-dd')
if (variant.buildType.name == 'release') {
fileName = "正式版_GSA-Cloud_${variant.mergedFlavor.versionName}_${formattedDate}.apk"
} else if (variant.buildType.name == 'debug') {
fileName = "测试版_GSA-Cloud_${variant.mergedFlavor.versionName}_${formattedDate}.apk"
}
outputFileName = fileName
}
}
dexOptions {
......@@ -121,75 +116,20 @@ dokitExt {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
if (project.ext.runAsApp) {
addComponent 'component-main'
addComponent 'component-table'
addComponent 'component-print'
addComponent 'component-delivery-pick'
addComponent 'component-manager'
addComponent 'component-coldchain'
addComponent 'component-supply-chain'
addComponent 'component-webview'
addComponent 'component-scan'
addComponent 'component-pay'
}
aspectjx {
enabled true
exclude 'androidx', 'org.jetbrains.kotlin', "module-info", 'com.google', 'com.squareup', 'org.apache', 'versions.9', 'com.squareup.okio', 'okio', 'leakcanary', 'com.google.firebase', 'com.google.android'
}
addComponent 'component-main'
addComponent 'component-download'
addComponent 'component-table'
addComponent 'component-print'
addComponent 'component-delivery-pick'
addComponent 'component-manager'
addComponent 'component-coldchain'
// addComponent 'component-supply-chain'
addComponent 'component-webview'
addComponent 'component-scan'
addComponent 'component-pay'
implementation 'androidx.viewpager2:viewpager2:1.0.0-alpha03'
annotationProcessor rootProject.ext.dependencies["dagger2-compiler"]
implementation rootProject.ext.dependencies["autosize"]
}
import org.aspectj.bridge.IMessage
import org.aspectj.bridge.MessageHandler
import org.aspectj.tools.ajc.Main
if (project.ext.runAsApp) {
final def log = project.logger
final def variants = project.android.applicationVariants
variants.all { variant ->
if (!variant.buildType.isDebuggable()) {
log.debug("Skipping non-debuggable build type '${variant.buildType.name}'.")
return;
}
JavaCompile javaCompile = variant.javaCompile
javaCompile.doLast {
String[] args = ["-showWeaveInfo",
"-1.8",
"-inpath", javaCompile.destinationDir.toString(),
"-aspectpath", javaCompile.classpath.asPath,
"-d", javaCompile.destinationDir.toString(),
"-classpath", javaCompile.classpath.asPath,
"-bootclasspath", project.android.bootClasspath.join(File.pathSeparator)]
log.debug "ajc args: " + Arrays.toString(args)
MessageHandler handler = new MessageHandler(true);
new Main().run(args, handler);
for (IMessage message : handler.getMessages(null, true)) {
switch (message.getKind()) {
case IMessage.ABORT:
case IMessage.ERROR:
case IMessage.FAIL:
log.error message.message, message.thrown
break;
case IMessage.WARNING:
log.warn message.message, message.thrown
break;
case IMessage.INFO:
log.info message.message, message.thrown
break;
case IMessage.DEBUG:
log.debug message.message, message.thrown
break;
}
}
}
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.login;
import android.content.Intent;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil;
......@@ -14,7 +13,7 @@ import com.gingersoft.gsa.cloud.login.mvp.ui.activity.ChooseRestaurantActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.SwitchServerActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.WelcomeActivity;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.command.CommandImpl;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.command.CommandImpl;
public class ComponentLogin implements IComponent {
......@@ -23,7 +22,7 @@ public class ComponentLogin implements IComponent {
public String getName() {
//组件的名称,调用此组件的方式:
// CC.obtainBuilder("ComponentA")...build().callAsync()
return ComponentName.COMPONENT_LOGIN;
return ComponentName.COMPONENT_LOGIN ;
}
/**
......@@ -43,7 +42,8 @@ public class ComponentLogin implements IComponent {
openWelcomeActivity(cc);
break;
case ComponentAction.Login.OPEN_LOGIN:
return openLoginActivity(cc);
openLoginActivity(cc);
break;
case ComponentAction.Login.OPEN_INIT_HYWEB_PAGE:
hywebOpenActivity();
break;
......@@ -77,10 +77,9 @@ public class ComponentLogin implements IComponent {
CC.sendCCResult(cc.getCallId(), CCResult.success("userName", userName));
}
private boolean openLoginActivity(CC cc) {
private void openLoginActivity(CC cc) {
CCUtil.navigateTo(cc, LoginActivity.class);
// CC.sendCCResult(cc.getCallId(), CCResult.success());
return true;
CC.sendCCResult(cc.getCallId(), CCResult.success());
}
private void openWelcomeActivity(CC cc) {
......@@ -88,8 +87,8 @@ public class ComponentLogin implements IComponent {
CC.sendCCResult(cc.getCallId(), CCResult.success());
}
private void hywebOpenActivity() {
Intent intent = new Intent(GsaCloudApplication.getAppContext(), LoginActivity.class);
private void hywebOpenActivity(){
Intent intent = new Intent(GsaCloudApplication.getAppContext(),LoginActivity.class);
GsaCloudApplication.getAppContext().startActivity(intent);
}
......
......@@ -76,13 +76,13 @@ public class LoginPresenter extends BaseLoginPresenter<LoginContract.Model, Logi
@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.showMessage(LanguageUtils.get_language_system( "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.showMessage(LanguageUtils.get_language_system(mApplication, "external.storage.permission.hint", ArmsUtils.getString(mApplication, R.string.queue_write_external_storage_permission_hint)));
mRootView.showMessage(LanguageUtils.get_language_system( "external.storage.permission.hint", ArmsUtils.getString(mApplication, R.string.queue_write_external_storage_permission_hint)));
mRootView.killMyself();
}
}, new RxPermissions(IAcitivty), mErrorHandler);
......
......@@ -7,13 +7,11 @@ import android.os.Bundle;
import android.view.Gravity;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil;
......@@ -50,15 +48,11 @@ import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.section.QMUISection;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionAdapter;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import javax.inject.Inject;
import butterknife.BindView;
import static com.jess.arms.utils.Preconditions.checkNotNull;
......
......@@ -17,15 +17,12 @@ import android.view.animation.ScaleAnimation;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewpager2.widget.ViewPager2;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.bean.BaseResultOld;
import com.gingersoft.gsa.cloud.common.core.login.LoginBean;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.core.user.UserConstans;
......
......@@ -132,6 +132,7 @@ public class ComponentMain implements IComponent {
}
private void openActivity(CC cc) {
// Intent intent = new Intent(cc.getContext(), MainActivity.class);
Intent intent = new Intent(cc.getContext(), NewMainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
cc.getContext().startActivity(intent);
......
......@@ -42,7 +42,7 @@ public interface HomeContract {
Observable<BaseResult> syncRestaurantExtendedConfiguration(int restaurantId);
Observable<CheckVersionRequest> checkAppVersion(String version);
Observable<CheckVersionRequest> checkAppVersion(String version,int mobileType,int type, int brandId, int restaurantId);
Observable<Object> loginOut(RequestBody requestBody);
......
......@@ -8,6 +8,7 @@ import com.tbruyelle.rxpermissions2.RxPermissions;
import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.Query;
/**
......@@ -36,7 +37,7 @@ public interface NewMainContract {
Observable<BaseResult> syncRestaurantExtendedConfiguration(int restaurantId);
Observable<CheckVersionRequest> checkAppVersion(String version);
Observable<CheckVersionRequest> checkAppVersion(String version, int mobileType, int type, int brandId, int restaurantId);
Observable<Object> loginOut(RequestBody requestBody);
......
......@@ -71,9 +71,9 @@ public class HomeModel extends BaseModel implements HomeContract.Model {
}
@Override
public Observable<CheckVersionRequest> checkAppVersion(String version) {
public Observable<CheckVersionRequest> checkAppVersion(String version,int mobileType,int type, int brandId, int restaurantId) {
return mRepositoryManager.obtainRetrofitService(MainService.class)
.checkAppVersion(version);
.checkAppVersion(version,mobileType,type,brandId,restaurantId);
}
@Override
......
......@@ -57,9 +57,9 @@ public class NewMainModel extends BaseModel implements NewMainContract.Model {
}
@Override
public Observable<CheckVersionRequest> checkAppVersion(String version) {
public Observable<CheckVersionRequest> checkAppVersion(String version, int mobileType, int type, int brandId, int restaurantId) {
return mRepositoryManager.obtainRetrofitService(MainService.class)
.checkAppVersion(version);
.checkAppVersion(version,mobileType,type,brandId,restaurantId);
}
@Override
......
......@@ -21,9 +21,9 @@ import retrofit2.http.Query;
*/
public interface MainService {
@Headers({"Domain-Name: update_version"})
@GET("system/checkAppVersion" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<CheckVersionRequest> checkAppVersion(@Query("version") String version);
@Headers({"Domain-Name: system_url"})
@GET("system/checkAppVersionGsa" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<CheckVersionRequest> checkAppVersion(@Query("version") String version,@Query("mobileType") int mobileType,@Query("type") int type,@Query("brandId") int brandId,@Query("restaurantId") int restaurantId );
@FormUrlEncoded
@POST(Api.sync_restaurant_base_table_configuration + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
......
......@@ -9,7 +9,6 @@ import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.constans.HttpsConstans;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.common.webview.WebviewHelper;
import com.gingersoft.gsa.cloud.component.ComponentName;
......@@ -18,9 +17,6 @@ import com.gingersoft.gsa.cloud.main.mvp.model.bean.CheckVersionRequest;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.MainBusinessBean;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.MainActivity;
import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.HomeFragment;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.jess.arms.di.scope.FragmentScope;
import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager;
......@@ -71,7 +67,8 @@ public class HomePresenter extends BasePresenter<HomeContract.Model, HomeContrac
@Inject
public HomePresenter(HomeContract.Model model, HomeContract.View rootView) {
super(model, rootView);
HomeFragment homeFragment = (HomeFragment) rootView;;
HomeFragment homeFragment = (HomeFragment) rootView;
;
this.IActivity = (MainActivity) homeFragment.getActivity();
}
......@@ -162,7 +159,10 @@ public class HomePresenter extends BasePresenter<HomeContract.Model, HomeContrac
}
public void checkAppVersion() {
mModel.checkAppVersion(DeviceUtils.getVersionName(mApplication) + "|" + DeviceUtils.getVersionCode(mApplication))
mModel.checkAppVersion(DeviceUtils.getVersionName(mApplication) + "|" + DeviceUtils.getVersionCode(mApplication),
2,2,
RestaurantInfoManager.newInstance().getBrandId(),
RestaurantInfoManager.newInstance().getRestaurantId())
.subscribeOn(Schedulers.io())
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
......
......@@ -8,15 +8,11 @@ import android.text.TextUtils;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.common.webview.WebviewHelper;
import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.main.mvp.contract.NewMainContract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.CheckVersionRequest;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.NewMainActivity;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager;
......@@ -97,7 +93,15 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa
}
public void checkAppVersion() {
mModel.checkAppVersion(DeviceUtils.getVersionName(mApplication) + "|" + DeviceUtils.getVersionCode(mApplication))
// RequestBody requestBody = new FormBody.Builder()
// .add("version", )
// .add("type", "2")
// .build();
mModel.checkAppVersion(DeviceUtils.getVersionName(mApplication) + "|" + DeviceUtils.getVersionCode(mApplication),
2,
2,
RestaurantInfoManager.newInstance().getBrandId(),
RestaurantInfoManager.newInstance().getRestaurantId())
.subscribeOn(Schedulers.io())
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
......@@ -326,7 +330,7 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa
//
// @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.showMessage(LanguageUtils.get_language_system( "external.storage.permission.hint", ArmsUtils.getString(mApplication, R.string.queue_write_external_storage_permission_hint)));
// mRootView.killMyself();
// }
//
......
......@@ -8,16 +8,12 @@ import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.core.settlement.SettlementReport;
import com.gingersoft.gsa.cloud.common.utils.JsonUtils;
import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.SettlementReportActivity;
import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItem5Adapter;
import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItemAdapter;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem3;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem5;
import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
......@@ -206,7 +202,7 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
} else if (info.getErrCode().equals("restaurant.operation.0007")) {
SendSettlement.DataBean data = info.getData();
if (data != null) {
showSettlementErrorDialog(info.getErrMsg() + ",清機失敗,訂單號\n" + data.getOrderNo());
showSettlementErrorDialog(info.getErrMsg() + ",未完結訂單號\n" + data.getOrderNo());
}
} else {
if (!TextUtils.isEmpty(info.getErrMsg())) {
......
......@@ -111,7 +111,7 @@ public class LanguageActivity extends BaseActivity<LanguagePresenter> implements
killMyself();
}
});
mTopBar.setTitle(LanguageUtils.get_language_system(this, "funcSelect.settlement", "語言")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
mTopBar.setTitle(LanguageUtils.get_language_system( "funcSelect.settlement", "語言")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
}
@Override
......
......@@ -71,6 +71,11 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements
@Override
public void configImmersionBar(ImmersionBar immersionBar) {
immersionBar.init();
}
@Override
public int initView(@Nullable Bundle savedInstanceState) {
return R.layout.main_activity_main; //如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
......
......@@ -93,7 +93,7 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem
killMyself();
}
});
mTopBar.setTitle(LanguageUtils.get_language_system(this, "funcSelect.settlement", "清機")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
mTopBar.setTitle(LanguageUtils.get_language_system( "funcSelect.settlement", "清機")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
}
@OnClick({R2.id.btn_settlement_report})
......@@ -144,7 +144,7 @@ public class SettlementActivity extends BaseActivity<SettlementPresenter> implem
public void returnSettlementData(SettlementReport datasBean) {
this.mSettlementReportBean = datasBean;
if (mSettlementReportBean.getRestaurantOperation() != null) {
String lastSettlementText = LanguageUtils.get_language_system(this, "", "上次清機時間:");
String lastSettlementText = LanguageUtils.get_language_system( "", "上次清機時間:");
setLastTime(lastSettlementText + TimeUtils.getStringByFormat(mSettlementReportBean.getRestaurantOperation().getOperationTime(), TimeUtils.DEFAULT_DATE_FORMAT));
}
}
......
......@@ -39,6 +39,7 @@ import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement;
import com.gingersoft.gsa.cloud.main.mvp.presenter.SettlementReportPresenter;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.contract.PayMethodContract;
import com.gingersoft.gsa.cloud.print.bean.PrintContent;
import com.gingersoft.gsa.cloud.print.bean.adapter.PrintContentAdapter;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem5;
......@@ -197,7 +198,7 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
showMessage("暫無可印報表");
}
});
mTopBar.setTitle(LanguageUtils.get_language_system(this, "function.order.detail2", "清機報表")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
mTopBar.setTitle(LanguageUtils.get_language_system( "function.order.detail2", "清機報表")).setTextColor(ArmsUtils.getColor(this, R.color.theme_white_color));
}
@OnClick({R2.id.btn_send_settlement})
......@@ -306,38 +307,38 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
List<SectionTextItem5> settlementReportItem5s = new ArrayList<>();
String lastSettlementText = LanguageUtils.get_language_system(this, "", "上次清機時間:");
String dailyBusinessReportText = LanguageUtils.get_language_system(this, "", "每日營業報表");
String byBusinessDateText = LanguageUtils.get_language_system(this, "", "由營業日期:");
String toBusinessDateText = LanguageUtils.get_language_system(this, "", "到營業日期:");
String headcountOrAverageConsumptionText = LanguageUtils.get_language_system(this, "", "統計:");
String totalText = LanguageUtils.get_language_system(this, "", "總計");
String canteenText = LanguageUtils.get_language_system(this, "", "堂食");
String takewayText = LanguageUtils.get_language_system(this, "", "外賣");
String selfFetchingText = LanguageUtils.get_language_system(this, "", "自取");
String projectTotalSalesText = LanguageUtils.get_language_system(this, "total.project.sales", "項目銷售總額");
String discountText = LanguageUtils.get_language_system(this, "", "折扣");
String serviceFeeText = LanguageUtils.get_language_system(this, "", "服務費");
String deliveryFeeText = LanguageUtils.get_language_system(this, "", "送貨費");
String orderCountallText = LanguageUtils.get_language_system(this, "order.countall_litter", "賬單小數");
String netTurnoverText = LanguageUtils.get_language_system(this, "net.turnover", "營業金額淨值");
String cashAuditText = LanguageUtils.get_language_system(this, "cash.audit", "現金核數");
String analysisStatisticsText = LanguageUtils.get_language_system(this, "analysis.statistics", "分析統計");
String totalbillAmountText = LanguageUtils.get_language_system(this, "total.bill.amount", "賬單金額總數");
String numberBillsOrAverageText = LanguageUtils.get_language_system(this, "number.bills.or.average", "賬單數目/平均");
String headcountAndAverageConsumptionText = LanguageUtils.get_language_system(this, "headcount.or.average.consumption", "人數/平均消費");
String billStatusText = LanguageUtils.get_language_system(this, "", "賬單現況");
// String outstandingBillText = LanguageUtils.get_language_system(this, "", "未完成賬單");
// String billsReceivedText = LanguageUtils.get_language_system(this, "", "已完成賬單");
String outstandingBillText = LanguageUtils.get_language_system(this, "", "未完成賬單");
String billsReceivedText = LanguageUtils.get_language_system(this, "", "已完成賬單");
String cumulativeTurnoverMonthText = LanguageUtils.get_language_system(this, "", "本月累計營業額");
String endReportText = LanguageUtils.get_language_system(this, "", "報表完結");
String readersText = LanguageUtils.get_language_system(this, "", "讀取人員");
String lastSettlementText = LanguageUtils.get_language_system( "", "上次清機時間:");
String dailyBusinessReportText = LanguageUtils.get_language_system( "", "每日營業報表");
String byBusinessDateText = LanguageUtils.get_language_system( "", "由營業日期:");
String toBusinessDateText = LanguageUtils.get_language_system( "", "到營業日期:");
String headcountOrAverageConsumptionText = LanguageUtils.get_language_system( "", "統計:");
String totalText = LanguageUtils.get_language_system( "", "總計");
String canteenText = LanguageUtils.get_language_system( "", "堂食");
String takewayText = LanguageUtils.get_language_system( "", "外賣");
String selfFetchingText = LanguageUtils.get_language_system( "", "自取");
String projectTotalSalesText = LanguageUtils.get_language_system( "total.project.sales", "項目銷售總額");
String discountText = LanguageUtils.get_language_system( "", "折扣");
String serviceFeeText = LanguageUtils.get_language_system( "", "服務費");
String deliveryFeeText = LanguageUtils.get_language_system( "", "送貨費");
String orderCountallText = LanguageUtils.get_language_system( "order.countall_litter", "賬單小數");
String netTurnoverText = LanguageUtils.get_language_system( "net.turnover", "營業金額淨值");
String cashAuditText = LanguageUtils.get_language_system( "cash.audit", "現金核數");
String analysisStatisticsText = LanguageUtils.get_language_system( "analysis.statistics", "分析統計");
String totalbillAmountText = LanguageUtils.get_language_system( "total.bill.amount", "賬單金額總數");
String numberBillsOrAverageText = LanguageUtils.get_language_system( "number.bills.or.average", "賬單數目/平均");
String headcountAndAverageConsumptionText = LanguageUtils.get_language_system( "headcount.or.average.consumption", "人數/平均消費");
String billStatusText = LanguageUtils.get_language_system( "", "賬單現況");
// String outstandingBillText = LanguageUtils.get_language_system( "", "未完成賬單");
// String billsReceivedText = LanguageUtils.get_language_system( "", "已完成賬單");
String outstandingBillText = LanguageUtils.get_language_system( "", "未完成賬單");
String billsReceivedText = LanguageUtils.get_language_system( "", "已完成賬單");
String cumulativeTurnoverMonthText = LanguageUtils.get_language_system( "", "本月累計營業額");
String endReportText = LanguageUtils.get_language_system( "", "報表完結");
String readersText = LanguageUtils.get_language_system( "", "讀取人員");
SettlementReport.RestaurantOperationBean restaurantOperationBean = datasBean.getRestaurantOperation();
if (restaurantOperationBean != null) {
......@@ -357,7 +358,7 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
settlementReportItem5s.add(new SectionTextItem5(netTurnoverText, null, null, null, cashStr + df.format(voBean.getTotamount())));
// if (voBean.getPayNum() > 0) {
// String creditCardText = LanguageUtils.get_language_system(this, "credit.card", "信用卡");
// String creditCardText = LanguageUtils.get_language_system( "credit.card", "信用卡");
// SectionTextItem5 printItem = new SectionTextItem5(creditCardText, String.valueOf(voBean.getPayNum()), null,null,"$" + df.format(voBean.getPayamount()));
// settlementReportItem5s.add(printItem);
// }
......@@ -377,10 +378,10 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
if (cashList != null && cashList.size() > 0) {
for (int i = 0; i < cashList.size(); i++) {
SettlementReport.CashBean cashBean = cashList.get(i);
if (cashBean.getPayType() == PayMethod.PAY_TYPE_CASH) {
if (cashBean.getPayType() == PayMethodContract.PAY_METHOD_ID_1103) {
/**現金詳情*/
String cashDetailText = LanguageUtils.get_language_system(this, "credit.cash.detail", "現金詳情");
String cashText = LanguageUtils.get_language_system(this, "credit.cash", "現金");
String cashDetailText = LanguageUtils.get_language_system( "credit.cash.detail", "現金詳情");
String cashText = LanguageUtils.get_language_system( "credit.cash", "現金");
settlementReportItem5s.add(new SectionTextItem5("==============================================================", null, null, null, null));
settlementReportItem5s.add(new SectionTextItem5(null, null, cashDetailText, null, null));
settlementReportItem5s.add(new SectionTextItem5(cashText, null, String.valueOf(cashBean.getPayNum()), null, cashStr + df.format(cashBean.getPayAmount())));
......
......@@ -173,7 +173,7 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
@Override
public void initImmersionBar() {
ImmersionBar.setTitleBar(this, slideMenu);
// ImmersionBar.setTitleBar(this, slideMenu);
}
@Override
......
......@@ -15,6 +15,7 @@ import androidx.annotation.Nullable;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.common.utils.okhttpUtils.OkHttp3Utils;
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.main.R;
......
......@@ -288,7 +288,7 @@ public class TableManageActivity extends BaseFragmentActivity<TableManagePresent
case ADD_TABLE_SUCCESS:
case UPDATE_TABLE_SUCCESS:
AddTableFragment addTableFragment = (AddTableFragment) fragment;
addTableFragment.pop();
addTableFragment.killMyself();
if (tableListFragment != null) {
tableListFragment.updateTableData(mTableAreaList, tables);
}
......@@ -338,22 +338,4 @@ public class TableManageActivity extends BaseFragmentActivity<TableManagePresent
mPresenter.getGetTablesDataDisposable().dispose();
}
}
public List<TableArea> getTableAreaList() {
return mTableAreaList;
}
public List<TableManagerItem> getTableList() {
return mTableList;
}
public boolean isRadioEdit() {
TableListFragment tableListFragment = findFragment(TableListFragment.class);
if (tableListFragment != null) {
return tableListFragment.isRadioEdit();
} else {
return false;
}
}
}
......@@ -10,39 +10,33 @@ import android.view.View;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCUtil;
import com.gingersoft.gsa.cloud.common.constans.AppConstans;
import com.gingersoft.gsa.cloud.common.constans.PrintConstans;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.loadsir.pos.BasePosCallback;
import com.gingersoft.gsa.cloud.common.loadsir.pos.PosPayStatusExceptionCallback;
import com.gingersoft.gsa.cloud.common.loadsir.pos.PosPayMatterCallback;
import com.gingersoft.gsa.cloud.common.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.component.ComponentAction;
import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.order.bean.event.MealPayResultParam;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.pay.PayAction;
import com.gingersoft.gsa.cloud.pay.R;
import com.gingersoft.gsa.cloud.pay.R2;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.di.component.DaggerPayResultComponent;
import com.gingersoft.gsa.cloud.pay.mvp.contract.PayResultContract;
import com.gingersoft.gsa.cloud.pay.mvp.presenter.PayResultPresenter;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.AdjustTipRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.RetrievalRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.AdjustTipRespose;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.SaleRespose;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.constant.HywebActionStatusCode;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.pos.AdjustTipRequest;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.pos.RetrievalRequest;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.response.pos.SaleRespose;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.constant.HywebActionStatusCode;
import com.gingersoft.gsa.cloud.pay.util.PayMethodUtils;
import com.gingersoft.gsa.cloud.print.bean.PrintContent;
import com.gingersoft.gsa.cloud.print.bean.adapter.PrintContentAdapter;
......@@ -56,12 +50,9 @@ import com.kingja.loadsir.core.LoadService;
import com.kingja.loadsir.core.LoadSir;
import com.qmuiteam.qmui.alpha.QMUIAlphaButton;
import com.qmuiteam.qmui.widget.QMUITopBar;
import java.util.List;
import butterknife.BindView;
import butterknife.OnClick;
import static com.jess.arms.utils.Preconditions.checkNotNull;
......@@ -152,7 +143,7 @@ public class PayResultActivity extends BaseFragmentActivity<PayResultPresenter>
callback1.showFinalStrategy(true);
}
//支付状态异常 重试查询
retrievalStatus(PosAction.SALE);
retrievalStatus(PayAction.SALE);
retryCount--;
}
});
......@@ -192,7 +183,7 @@ public class PayResultActivity extends BaseFragmentActivity<PayResultPresenter>
llBottom.setVisibility(View.VISIBLE);
btnComplate.setVisibility(View.VISIBLE);
} else if (HywebActionStatusCode.withException(mSaleRespose.getSTATUS())) {
loadService.showCallback(PosPayStatusExceptionCallback.class);
loadService.showCallback(PosPayMatterCallback.class);
llBottom.setVisibility(View.INVISIBLE);
btnComplate.setVisibility(View.INVISIBLE);
}
......@@ -212,7 +203,7 @@ public class PayResultActivity extends BaseFragmentActivity<PayResultPresenter>
return drawable;
}
private void retrievalStatus(PosAction posAction) {
private void retrievalStatus(PayAction posAction) {
RetrievalRequest retrievalRequest = new RetrievalRequest();
retrievalRequest.setTXN_ID(mMealPayResultParam.getTxnId());
// PosPay.retrieval(mContext, this, mMealPayResultParam.getMealOrderPayRequest().getOrderId(), posAction, retrievalRequest, new OnPosActionListener() {
......@@ -370,7 +361,7 @@ public class PayResultActivity extends BaseFragmentActivity<PayResultPresenter>
}
private void printBill() {
PrintContent printContent = new PrintContentAdapter().adaptationBillContent(DoshokuOrder.getInstance(),mMealPayResultParam.getTableBean());
PrintContent printContent = new PrintContentAdapter().adaptationBillContent(MealOrder.getInstance(),mMealPayResultParam.getTableBean());
CC.obtainBuilder(ComponentName.COMPONENT_PRINT)
.setActionName("printActivity")
.addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_BILL)
......@@ -380,7 +371,7 @@ public class PayResultActivity extends BaseFragmentActivity<PayResultPresenter>
.callAsyncCallbackOnMainThread((cc, result) -> {
Log.e("error", "是否成功打印:" + result.isSuccess());
//清空開檯數據
DoshokuOrder.getInstance().initialization();
MealOrder.getInstance().initialization();
setResult(Activity.RESULT_OK, null);
killMyself();
});
......
......@@ -28,34 +28,34 @@ public class LocationPrintStatus {
case 1://打印机?作正常
return true;
case 2://打印机准备中
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.prepare", "打印機準備中"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.prepare", "打印機準備中"));
break;
case 3://通讯异常
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "printer.abnormal.communication", "打印機通訊異常"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "printer.abnormal.communication", "打印機通訊異常"));
break;
case 4://缺纸
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.out.of.paper", "打印機缺紙"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.out.of.paper", "打印機缺紙"));
break;
case 5://过热
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.overheat", "打印機過熱"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.overheat", "打印機過熱"));
break;
case 6://开盖
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.open.cover", "打印機開蓋"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.open.cover", "打印機開蓋"));
break;
case 7://切?异常
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.cutter.abnormality", "打印機切刀異常"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.cutter.abnormality", "打印機切刀異常"));
break;
case 8://切?恢复
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.cutter.recovery", "打印機切刀恢復"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.cutter.recovery", "打印機切刀恢復"));
break;
case 9://未检测到?标
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.not.black.mark", "打印機未檢測到黑標"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.not.black.mark", "打印機未檢測到黑標"));
break;
case 505://未检测到打印机
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.not.detected", "未檢測到打印機"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.not.detected", "未檢測到打印機"));
break;
case 507://打印机固件升级失败
ArmsUtils.makeText(context, LanguageUtils.get_language_system(context, "print.fixed.upgrade.failed", "打印機固定升級失敗"));
ArmsUtils.makeText(context, LanguageUtils.get_language_system( "print.fixed.upgrade.failed", "打印機固定升級失敗"));
break;
}
return false;
......@@ -70,19 +70,19 @@ public class LocationPrintStatus {
// N5PrintCallback printCallBack = new N5PrintCallback(context);
return true;
case -1009: //打印未完成
String notCompleted = LanguageUtils.get_language_system(context, "print.not.completed", "打印未完成");
String notCompleted = LanguageUtils.get_language_system( "print.not.completed", "打印未完成");
ArmsUtils.makeText(context, notCompleted);
break;
case -1005: //打印机缺纸
String noPaper = LanguageUtils.get_language_system(context, "printer.no.paper", "打印機缺紙");
String noPaper = LanguageUtils.get_language_system( "printer.no.paper", "打印機缺紙");
ArmsUtils.makeText(context, noPaper);
break;
case -1008: //打印机过热
String printerOverheated = LanguageUtils.get_language_system(context, "printer.overheated", "打印機過熱");
String printerOverheated = LanguageUtils.get_language_system( "printer.overheated", "打印機過熱");
ArmsUtils.makeText(context, printerOverheated);
break;
case -1001: // 打印失败
String printFailed = LanguageUtils.get_language_system(context, "print.failed", "打印失敗");
String printFailed = LanguageUtils.get_language_system( "print.failed", "打印失敗");
ArmsUtils.makeText(context, printFailed);
break;
case -1: //其他错误
......
......@@ -10,18 +10,12 @@ import com.gingersoft.gsa.cloud.common.constans.ExpandConstant;
import com.gingersoft.gsa.cloud.common.core.delivery.OrderDetails;
import com.gingersoft.gsa.cloud.common.core.member.MemberInfo;
import com.gingersoft.gsa.cloud.common.core.restaurant.utils.RestaurantExpandInfoUtils;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.gingersoft.gsa.cloud.order.billItem.BillItem;
import com.gingersoft.gsa.cloud.order.cart.ShoppingCart;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.print.bean.PrintBillContent;
import com.gingersoft.gsa.cloud.print.bean.base.PrintBillItem;
import com.gingersoft.gsa.cloud.print.bean.base.PrintFoodItem;
import com.joe.print.mvp.model.bean.BillingBean;
import com.joe.print.mvp.model.bean.HtmlLable;
import com.joe.print.mvp.print.common.HtmlContract;
......@@ -96,8 +90,8 @@ public class PrintBill extends PrinterRoot<PrintBillContent> {
* 訂單
*/
String orderNum = "單號:";
if (TextUtil.isNotEmptyOrNullOrUndefined(DoshokuOrder.getInstance().getOrderNo())) {
orderNum = "單號:" + DoshokuOrder.getInstance().getOrderNo();
if (TextUtil.isNotEmptyOrNullOrUndefined(MealOrder.getInstance().getOrderNo())) {
orderNum = "單號:" + MealOrder.getInstance().getOrderNo();
}
htmlLables.addAll(getRowInformation(new HtmlLable[]{new HtmlLable(LABLE_COLUMN, "餐檯:" + mPrintBillContent.getTableName())}, 24));
htmlLables.addAll(getRowInformation(new HtmlLable[]{new HtmlLable(LABLE_COLUMN, "人數:" + mPrintBillContent.getPerson())}, 24));
......@@ -244,13 +238,13 @@ public class PrintBill extends PrinterRoot<PrintBillContent> {
private OrderDetails.DataBean getOrderMemberInfo() {
OrderDetails.DataBean dataBean = new OrderDetails.DataBean();
MemberInfo memberInfo = DoshokuOrder.getInstance().getMemberInfo();
MemberInfo memberInfo = MealOrder.getInstance().getMemberInfo();
if (memberInfo != null) {
dataBean.setMEMBER_NAME(memberInfo.getMemberName());
dataBean.setPHONE(memberInfo.getPhone());
dataBean.setNowPoints(DoshokuOrder.getInstance().getNowPoints());
dataBean.setAddPoints(DoshokuOrder.getInstance().getAddPoints());
dataBean.setOldPoints(DoshokuOrder.getInstance().getOldPoints());
dataBean.setNowPoints(MealOrder.getInstance().getNowPoints());
dataBean.setAddPoints(MealOrder.getInstance().getAddPoints());
dataBean.setOldPoints(MealOrder.getInstance().getOldPoints());
}
return dataBean;
}
......
......@@ -13,6 +13,7 @@ import com.gingersoft.gsa.cloud.common.utils.PrintTransitUtils;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.contract.PayMethodContract;
import com.gingersoft.gsa.cloud.print.bean.PrintCleanMachineContent;
import com.joe.print.mvp.model.bean.HtmlLable;
import com.joe.print.mvp.print.common.HtmlContract;
......@@ -182,7 +183,7 @@ public class PrintCleanMachine extends PrinterRoot<PrintCleanMachineContent> {
new HtmlLable.Attributes(ATTRIBUTES_ALIGN, value_align_center, HtmlContract.value_type_string)));
for (SettlementReport.CashBean cashBean : cashs) {
if (cashBean.getPayType() == PayMethod.PAY_TYPE_CASH) {
if (cashBean.getPayType() == PayMethodContract.PAY_METHOD_ID_1103) {
htmlLables.addAll(getRowInformation(new HtmlLable[]{
new HtmlLable(LABLE_COLUMN, cashBean.getPayName()),
new HtmlLable(LABLE_COLUMN, String.valueOf(cashBean.getPayNum()), new HtmlLable.Attributes(ATTRIBUTES_OFFSET, value_offset_percentage60)),
......
......@@ -9,10 +9,9 @@ import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.print.bean.PrintServingPaperContent;
import com.gingersoft.gsa.cloud.print.bean.base.PrintFoodItem;
import com.joe.print.R;
......@@ -59,8 +58,8 @@ public class PrintServe extends PrinterRoot<PrintServingPaperContent> {
if (mPrintServingPaperContent == null) {
return new String[]{"<html><body></body></html>"};
}
List<OrderDetail> foodList = DoshokuOrder.getInstance().getShoppingCart().getOrderCommodityList();
TableBean.DataBean tableBean = DoshokuOrder.getInstance().getOpenTableInfo();
List<OrderDetail> foodList = MealOrder.getInstance().getShoppingCart().getOrderCommodityList();
TableBean.DataBean tableBean = MealOrder.getInstance().getOpenTableInfo();
if (foodList.size() == 0 || tableBean == null) {
return new String[]{"<html><body></body></html>"};
......@@ -102,8 +101,8 @@ public class PrintServe extends PrinterRoot<PrintServingPaperContent> {
* 訂單
*/
String orderNum = "單號:";
if (TextUtil.isNotEmptyOrNullOrUndefined(DoshokuOrder.getInstance().getOrderNo())) {
orderNum = "單號:" + DoshokuOrder.getInstance().getOrderNo();
if (TextUtil.isNotEmptyOrNullOrUndefined(MealOrder.getInstance().getOrderNo())) {
orderNum = "單號:" + MealOrder.getInstance().getOrderNo();
}
htmlLables.addAll(getRowInformation(new HtmlLable[]{new HtmlLable(LABLE_COLUMN, "餐檯:" + mPrintServingPaperContent.getTableName())}, 24));
htmlLables.addAll(getRowInformation(new HtmlLable[]{new HtmlLable(LABLE_COLUMN, "人數:" + mPrintServingPaperContent.getPerson())}, 24));
......
......@@ -8,16 +8,10 @@ import android.widget.LinearLayout;
import com.gingersoft.gsa.cloud.common.constans.AppConstans;
import com.gingersoft.gsa.cloud.common.constans.ExpandConstant;
import com.gingersoft.gsa.cloud.common.core.restaurant.utils.RestaurantExpandInfoUtils;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.gingersoft.gsa.cloud.order.billItem.BillItem;
import com.gingersoft.gsa.cloud.order.cart.ShoppingCart;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.print.bean.PrintSlipContent;
import com.gingersoft.gsa.cloud.print.bean.base.PrintBillItem;
import com.gingersoft.gsa.cloud.print.bean.base.PrintFoodItem;
......
package com.joe.print.mvp.print;
import android.util.SparseArray;
import com.gingersoft.gsa.cloud.common.constans.PrintConstans;
/**
* @作者: bin
* @創建時間: 2021-03-26 18:23
* @更新時間: 2021-03-26 18:23
* @描述:
*/
public class PrinterFactory {
private static SparseArray<PrinterRoot> mPrinters = new SparseArray<>();
static {
mPrinters.put(PrintConstans.PRINT_TEST, new PrintTest());
mPrinters.put(PrintConstans.PRINT_SERVE, new PrintServe());
mPrinters.put(PrintConstans.PRINT_SLIP, new PrintSlip());
mPrinters.put(PrintConstans.PRINT_BILL, new PrintBill());
mPrinters.put(PrintConstans.PRINT_KITCHEN, new PrintPrjKitchen());
mPrinters.put(PrintConstans.PRINT_CLEAN_MACHINE, new PrintCleanMachine());
mPrinters.put(PrintConstans.PRINT_OTHER_ORDER, new PrintOtherOrder());
mPrinters.put(PrintConstans.PRINT_INSTRUCTION, new PrintInstruction());
mPrinters.put(PrintConstans.PRINT_OTHER_CLOSING, new PrintOtherOrderClosing());
mPrinters.put(PrintConstans.PRINT_SKYORDER_QRCODE, new PrintQRCode());
}
public static PrinterRoot create(int type){
PrinterRoot printerRoot = mPrinters.get(type);
return printerRoot;
}
}
......@@ -108,24 +108,9 @@ public abstract class PrinterRoot<T extends PrintContent> implements PrintExecut
final static String DELIMITER = "/";//將打印位置區分開來。。。。,暫時只有廚房單用到
private static SparseArray<PrinterRoot> mPrinterStrategy = new SparseArray<>();
static {
mPrinterStrategy.put(PrintConstans.PRINT_TEST, new PrintTest());
mPrinterStrategy.put(PrintConstans.PRINT_SERVE, new PrintServe());
mPrinterStrategy.put(PrintConstans.PRINT_SLIP, new PrintSlip());
mPrinterStrategy.put(PrintConstans.PRINT_BILL, new PrintBill());
mPrinterStrategy.put(PrintConstans.PRINT_KITCHEN, new PrintPrjKitchen());
mPrinterStrategy.put(PrintConstans.PRINT_CLEAN_MACHINE, new PrintCleanMachine());
mPrinterStrategy.put(PrintConstans.PRINT_OTHER_ORDER, new PrintOtherOrder());
mPrinterStrategy.put(PrintConstans.PRINT_INSTRUCTION, new PrintInstruction());
mPrinterStrategy.put(PrintConstans.PRINT_OTHER_CLOSING, new PrintOtherOrderClosing());
mPrinterStrategy.put(PrintConstans.PRINT_SKYORDER_QRCODE, new PrintQRCode());
}
public static PrinterRoot getPrinterByType(int type, PrintContent content) {
if (mPrinterStrategy.indexOfKey(type) >= 0) {
PrinterRoot printerRoot = mPrinterStrategy.get(type);
PrinterRoot printerRoot = PrinterFactory.create(type);
if (printerRoot != null) {
printerRoot.setPrintContent(content);
return printerRoot;
}
......@@ -601,7 +586,33 @@ public abstract class PrinterRoot<T extends PrintContent> implements PrintExecut
TextView tvRemark = view.findViewById(R.id.tv_print_model_remark);
//訂單類型
tvOrderType.setText(data.getShowTextByOrderType());
// String payType = "";
tvClosingTime.setVisibility(View.GONE);
// if (data.getOrderPayType() == 1) {
// //貨到付款
// payType = "貨到付款";
// } else if (data.getOrderPayType() == 0) {
// payType = "店內支付";
// } else if (data.getOrderPayType() == 2) {
// if (data.getPayMultiple() != null) {
// StringBuilder payName = new StringBuilder();
// for (OrderDetails.DataBean.PayMultiple payMultiple : data.getPayMultiple()) {
// payName.append(payMultiple.getPayName());
// payName.append(",");
// }
// if (payName.length() > 0) {
// payName.deleteCharAt(payName.length() - 1);
// }
// payType = "在線支付:" + payName.toString();
// } else {
// payType = "在線支付";
// }
// //支付時間,只有在線支付有
// if (!TextUtil.isEmptyOrNullOrUndefined(data.getPayTime())) {
// tvClosingTime.setText("支付時間:" + data.getPayTime());
// tvClosingTime.setVisibility(View.VISIBLE);
// }
// }
if (data.getOrderPayType() == 2) {
//支付時間,只有在線支付有
if (!TextUtil.isEmptyOrNullOrUndefined(data.getPayTime())) {
......@@ -645,7 +656,9 @@ public abstract class PrinterRoot<T extends PrintContent> implements PrintExecut
if (data.getTakeFoodCode() == null || data.getTakeFoodCode().equals("0")) {
tvTakeFoodCode.setVisibility(View.GONE);
}
tvCreateTime.setText("開單時間:" + TimeUtils.parseTimeRepeat(data.getCREATE_TIME(), TimeUtils.DEFAULT_DATE_FORMAT));
//備註
if (!TextUtil.isEmptyOrNullOrUndefined(data.getRemark())) {
tvRemark.setText("備註:" + data.getRemark());
......@@ -680,7 +693,7 @@ public abstract class PrinterRoot<T extends PrintContent> implements PrintExecut
if (data.getPHONE() != null && data.getPHONE().length() > 0) {
tvMemberPhone.setText("會員電話:" + getReplaceAfter(data.getPHONE()));
}
tvMemberNum.setText("會員號碼:" +getReplaceAfter(data.getMemberPhone()));
// tvMemberNum.setText("會員號碼: "+data.get());
ll_member_info.setVisibility(View.VISIBLE);
} else {
ll_member_info.setVisibility(View.GONE);
......@@ -727,7 +740,6 @@ public abstract class PrinterRoot<T extends PrintContent> implements PrintExecut
if (data.getPHONE() != null && data.getPHONE().length() > 0) {
tvMemberPhone.setText("會員電話:" + getReplaceAfter(data.getPHONE()));
}
tvMemberNum.setText("會員號碼:" +getReplaceAfter(data.getMemberPhone()));
} else {
view.setVisibility(View.GONE);
}
......
......@@ -101,7 +101,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override
public void setupActivityComponent(@NonNull AppComponent appComponent) {
LoganManager.w_code(TAG, "setupActivityComponent");
LoganManager.w_printer(TAG, "setupActivityComponent");
DaggerPrintComponent //如找不到该类,请编译一下项目
.builder()
.appComponent(appComponent)
......@@ -112,7 +112,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override
public int initView(@Nullable Bundle savedInstanceState) {
LoganManager.w_code(TAG, "initView");
LoganManager.w_printer(TAG, "initView");
getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
| WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
return 0;//R.layout.print_bitmap;如果你不需要框架帮你设置 setContentView(id) 需要 自行设置,请返回 0
......@@ -120,7 +120,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override
public void configImmersionBar(ImmersionBar immersionBar) {
LoganManager.w_code(TAG, "configImmersionBar");
LoganManager.w_printer(TAG, "configImmersionBar");
immersionBar
.fitsSystemWindows(true)
.statusBarColor(R.color.trans)
......@@ -130,7 +130,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override
public void initData(@Nullable Bundle savedInstanceState) {
LoganManager.w_code(TAG, "initData");
LoganManager.w_printer(TAG, "initData");
PrinterFlowProxy.newInstance().registerPrinterFlowListener(printerFlowListener);
}
......@@ -227,7 +227,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
private void actionPrinter() {
LoganManager.w_code(TAG, "actionPrinter start");
LoganManager.w_printer(TAG, "actionPrinter start");
showPrintLoadingDialog();
......@@ -243,7 +243,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
//初始化打印配置
initPrintConfig(printContent);
LoganManager.w_code(TAG, "actionPrinter end");
LoganManager.w_printer(TAG, "actionPrinter end");
}
private void showPrintLoadingDialog() {
......@@ -273,7 +273,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
private void initPrintConfig(PrintContent printContent) {
LoganManager.w_code(TAG, "initPrintConfig start");
LoganManager.w_printer(TAG, "initPrintConfig start");
//開始
PrinterFlowProxy.newInstance().dispatchPrinterDataBefore(type, type, GsonUtils.GsonString(printContent), GsonUtils.GsonString(defaultPrint));
......@@ -307,7 +307,10 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
printByDevice(defaultPrint);
}
LoganManager.w_code(TAG, "initPrintConfig end");
if (defaultPrint != null) {
LoganManager.w_printer(TAG, "initPrintConfig defaultPrint-->" + defaultPrint.toString());
}
LoganManager.w_printer(TAG, "initPrintConfig end");
}
/**
......@@ -397,7 +400,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
* @param defaultPrint 打印機
*/
private void printByDevice(PrinterDeviceBean defaultPrint) {
LoganManager.w_code(TAG, "printByDevice start");
LoganManager.w_printer(TAG, "printByDevice start");
//獲取對應的打印類
if (printerInIt instanceof PrintInstruction) {
//開錢箱
......@@ -446,7 +449,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
printFailure("未找到對應的打印類型");
}
}
LoganManager.w_code(TAG, "printByDevice end");
LoganManager.w_printer(TAG, "printByDevice end");
}
/**
......
......@@ -134,6 +134,8 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
private int flipPosition = 0;//數量大於1是否翻轉
private String[] languageType = new String[]{"1"};
private String oldName;
public static List<String> printTypes = Arrays.asList("網路打印", "本機打印", "USB打印", "PRJ模式");
private List<String> fontSize = Arrays.asList("預設", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30");
private List<String> booleanSelect = Arrays.asList("預設", "是", "否");
......@@ -159,7 +161,6 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
String[] ips = new String[4];
//如果不為空,則是編輯打印機,初始化信息
if (printerDeviceBean != null) {
//初始化頁面數據項
mEdPrintName.setText(String.valueOf(printerDeviceBean.getName()));
ips = printerDeviceBean.getIp().split("[.]");
etPort.setText(printerDeviceBean.getPort() + "");
......@@ -175,6 +176,7 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
} else {
modifierFontSize = Integer.parseInt(printerDeviceBean.getModifierFont());
}
if (printerDeviceBean.getPrinterName() != null) {
mTvModel.setTextColor(getResources().getColor(R.color.color_3c));
mTvModel.setText(printerDeviceBean.getPrinterName());
......@@ -561,7 +563,7 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
* 添加或測試打印機
*/
private void addOrTestPrint(View v) {
LoganManager.w_code(TAG, "addOrTestPrint start");
LoganManager.w_printer(TAG, "addOrTestPrint start");
if (!editTextIsNull(mEdPrintName)) {
ToastUtils.show(mContext, "請輸入打印機名稱");
return;
......@@ -597,7 +599,13 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
}
hideKeyBoard();
printerDeviceBean.setName(mEdPrintName.getText().toString().trim());
oldName = printerDeviceBean.getName();
final String newName = mEdPrintName.getText().toString().trim();
if (oldName.equals(newName)) {
printerDeviceBean.setName("");
} else {
printerDeviceBean.setName(mEdPrintName.getText().toString().trim());
}
printerDeviceBean.setRestaurantId(RestaurantInfoManager.newInstance().getRestaurantId());
//飛單打印機
......@@ -652,7 +660,8 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
}
} else if (v.getId() == R.id.print_test) {
//打印測試
LoganManager.w_code(TAG, "打印測試 start");
LoganManager.w_printer(TAG, "打印測試 start");
LoganManager.w_printer(TAG, "打印測試 printerDeviceBean->" + printerDeviceBean.toString());
CC.obtainBuilder(ComponentName.COMPONENT_PRINT)
.addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_TEST)
.addParam("deviceBean", printerDeviceBean)
......@@ -663,10 +672,10 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
// if (!result.isSuccess()) {
// ToastUtils.show(this, "打印失敗");
// }
LoganManager.w_code(TAG, "打印測試 end");
LoganManager.w_printer(TAG, "打印測試 end");
});
}
LoganManager.w_code(TAG, "addOrTestPrint end");
LoganManager.w_printer(TAG, "addOrTestPrint end");
}
......
......@@ -13,32 +13,30 @@
<application android:networkSecurityConfig="@xml/network_android">
<activity android:name=".mvp.ui.activity.CoordinatorlayoutActivity" />
<activity
android:name=".mvp.ui.activity.TableActivity"
android:name=".mvp.ui.activity.table.TableActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" />
<activity
android:name=".mvp.ui.activity.MealStandActivity"
android:name=".mvp.ui.activity.meal.MealStandActivity"
android:screenOrientation="portrait" />
<activity
android:name=".mvp.ui.activity.OrderContentActivity"
android:name=".mvp.ui.activity.meal.MealBillActivity"
android:screenOrientation="portrait" />
<activity
android:name=".mvp.ui.activity.OrderPayActivity"
android:name=".mvp.ui.activity.meal.MealPayActivity"
android:screenOrientation="portrait"
android:launchMode="singleTop"/>
<activity
android:name=".mvp.ui.activity.orderManager.OrderDetailActivity"
android:name=".mvp.ui.activity.order.OrderDetailActivity"
android:screenOrientation="portrait"
android:launchMode="singleTop"/>
<activity
android:name=".mvp.ui.activity.orderManager.OrderCenterActivity"
android:name=".mvp.ui.activity.order.OrderCenterActivity"
android:screenOrientation="portrait"
android:launchMode="singleTop"/>
<activity
android:name=".mvp.ui.activity.SoldoutCtrlActivity"
android:name=".mvp.ui.activity.meal.MealSoldoutActivity"
android:screenOrientation="portrait" />
<meta-data
android:name="com.gingersoft.gsa.cloud.common.config.globalconfig.GlobalConfiguration"
......
......@@ -2,27 +2,40 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.gingersoft.gsa.cloud.table">
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<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.app.GsaCloudApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/table_app_name"
android:supportsRtl="true"
android:networkSecurityConfig="@xml/network_android"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".mvp.ui.activity.CoordinatorlayoutActivity" />
<activity
android:name=".mvp.ui.activity.orderManager.OrderDetailActivity"
android:launchMode="singleTop"/>
android:name=".mvp.ui.activity.meal.MealStandActivity"
android:screenOrientation="portrait" />
<activity
android:name=".mvp.ui.activity.orderManager.OrderCenterActivity"
android:launchMode="singleTop"/>
android:name=".mvp.ui.activity.order.OrderDetailActivity"
android:launchMode="singleTop" />
<activity
android:name=".mvp.ui.activity.OrderPayActivity"
android:name=".mvp.ui.activity.order.OrderCenterActivity"
android:launchMode="singleTop" />
<activity
android:name=".mvp.ui.activity.meal.MealPayActivity"
android:launchMode="singleTop"
android:screenOrientation="portrait" />
<activity android:name="com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity" />
<activity android:name="com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity"
<activity android:name=".mvp.ui.activity.meal.MealSoldoutActivity" />
<activity
android:name=".mvp.ui.activity.table.TableActivity"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
......@@ -37,18 +50,9 @@
android:value="ConfigModule" />
<meta-data
android:name="design_width_in_dp"
android:value="360"/>
android:value="360" />
<meta-data
android:name="design_height_in_dp"
android:value="640"/>
android:value="640" />
</application>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<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" />
</manifest>
\ No newline at end of file
</manifest>
package com.gingersoft.gsa.cloud.table;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent;
import com.etps.aca.lib.activity.CommandActivity;
import com.gingersoft.gsa.cloud.common.function.FModule;
import com.gingersoft.gsa.cloud.component.ComponentAction;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.order.order.TakeawayOrder;
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.OrderPayActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderDetailActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealBillActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealPayActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealSoldoutActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.order.OrderCenterActivity;
import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils;
......@@ -113,14 +109,14 @@ public class ComponentTable implements IComponent {
}
case ComponentAction.Table.INT_ORDER:
//初始化堂食賬單類
DoshokuOrder.getInstance().initialization();
MealOrder.getInstance().initialization();
//初始化外賣賬單類
TakeawayOrder.getInstance().initialization();
break;
case ComponentAction.Table.KILL_MEAL_ORDER_PAY:
AppManager appManager = ArmsUtils.obtainAppComponentFromContext(context).appManager();
appManager.killActivity(OrderPayActivity.class);
appManager.killActivity(OrderContentActivity.class);
appManager.killActivity(MealPayActivity.class);
appManager.killActivity(MealBillActivity.class);
appManager.killActivity(MealStandActivity.class);
break;
default:
......@@ -154,7 +150,7 @@ public class ComponentTable implements IComponent {
}
private void openSoldoutCtrlActivity(CC cc) {
CCUtil.navigateTo(cc, SoldoutCtrlActivity.class);
CCUtil.navigateTo(cc, MealSoldoutActivity.class);
CC.sendCCResult(cc.getCallId(), CCResult.success());
}
......@@ -169,7 +165,7 @@ public class ComponentTable implements IComponent {
}
private void openOrderPayActivity(CC cc) {
CCUtil.navigateTo(cc, OrderPayActivity.class);
CCUtil.navigateTo(cc, MealPayActivity.class);
CC.sendCCResult(cc.getCallId(), CCResult.success());
}
......
......@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.AllOrderModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.AllOrderContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllOrderFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.order.AllOrderFragment;
/**
......
......@@ -9,7 +9,7 @@ import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.AllTableModule;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionTableFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.table.RegionTableFragment;
/**
......
......@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.InputTableModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.InputTableContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.InputTableFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.table.InputTableFragment;
/**
......
package com.gingersoft.gsa.cloud.table.di.component;
import com.gingersoft.gsa.cloud.table.di.module.OrderContentModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity;
import com.gingersoft.gsa.cloud.table.di.module.MealBillModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealBillContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealBillActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.ActivityScope;
......@@ -23,17 +23,17 @@ import dagger.Component;
* ================================================
*/
@ActivityScope
@Component(modules = OrderContentModule.class, dependencies = AppComponent.class)
public interface OrderContentComponent {
void inject(OrderContentActivity activity);
@Component(modules = MealBillModule.class, dependencies = AppComponent.class)
public interface MealBillComponent {
void inject(MealBillActivity activity);
@Component.Builder
interface Builder {
@BindsInstance
OrderContentComponent.Builder view(OrderContentContract.View view);
MealBillComponent.Builder view(MealBillContract.View view);
OrderContentComponent.Builder appComponent(AppComponent appComponent);
MealBillComponent.Builder appComponent(AppComponent appComponent);
OrderContentComponent build();
MealBillComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.MealDiscountModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealDiscountContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.mealstand.MealDiscountFragment;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/17/2021 10:46
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@FragmentScope
@Component(modules = MealDiscountModule.class, dependencies = AppComponent.class)
public interface MealDiscountComponent {
void inject(MealDiscountFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
MealDiscountComponent.Builder view(MealDiscountContract.View view);
MealDiscountComponent.Builder appComponent(AppComponent appComponent);
MealDiscountComponent build();
}
}
\ No newline at end of file
......@@ -5,11 +5,11 @@ import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.FineItemAllModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.FineItemAllContract;
import com.gingersoft.gsa.cloud.table.di.module.MealFineAllModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealFineAllContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemAllFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.mealstand.MealFineAllFragment;
/**
......@@ -25,17 +25,17 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemAllFragment;
* ================================================
*/
@FragmentScope
@Component(modules = FineItemAllModule.class, dependencies = AppComponent.class)
public interface FineItemAllComponent {
void inject(FineItemAllFragment fragment);
@Component(modules = MealFineAllModule.class, dependencies = AppComponent.class)
public interface MealFineAllComponent {
void inject(MealFineAllFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
FineItemAllComponent.Builder view(FineItemAllContract.View view);
MealFineAllComponent.Builder view(MealFineAllContract.View view);
FineItemAllComponent.Builder appComponent(AppComponent appComponent);
MealFineAllComponent.Builder appComponent(AppComponent appComponent);
FineItemAllComponent build();
MealFineAllComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.mealstand.MealFineFragment;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.MealFineModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealFineContract;
import com.jess.arms.di.scope.FragmentScope;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/24/2021 18:33
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@FragmentScope
@Component(modules = MealFineModule.class, dependencies = AppComponent.class)
public interface MealFineComponent {
void inject(MealFineFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
MealFineComponent.Builder view(MealFineContract.View view);
MealFineComponent.Builder appComponent(AppComponent appComponent);
MealFineComponent build();
}
}
\ No newline at end of file
......@@ -3,11 +3,11 @@ package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.gingersoft.gsa.cloud.table.mvp.contract.FineItemOneselfContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemOneselfFragment;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealFineOneselfContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.mealstand.MealFineOneselfFragment;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.FineItemOneselfModule;
import com.gingersoft.gsa.cloud.table.di.module.MealFineOneselfModule;
import com.jess.arms.di.scope.FragmentScope;
......@@ -25,17 +25,17 @@ import com.jess.arms.di.scope.FragmentScope;
* ================================================
*/
@FragmentScope
@Component(modules = FineItemOneselfModule.class, dependencies = AppComponent.class)
public interface FineItemOneselfComponent {
void inject(FineItemOneselfFragment fragment);
@Component(modules = MealFineOneselfModule.class, dependencies = AppComponent.class)
public interface MealFineOneselfComponent {
void inject(MealFineOneselfFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
FineItemOneselfComponent.Builder view(FineItemOneselfContract.View view);
MealFineOneselfComponent.Builder view(MealFineOneselfContract.View view);
FineItemOneselfComponent.Builder appComponent(AppComponent appComponent);
MealFineOneselfComponent.Builder appComponent(AppComponent appComponent);
FineItemOneselfComponent build();
MealFineOneselfComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.component;
import com.gingersoft.gsa.cloud.table.di.module.OrderPayModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity;
import com.gingersoft.gsa.cloud.table.di.module.MealPayModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealPayContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealPayActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.ActivityScope;
......@@ -23,17 +23,17 @@ import dagger.Component;
* ================================================
*/
@ActivityScope
@Component(modules = OrderPayModule.class, dependencies = AppComponent.class)
public interface OrderPayComponent {
void inject(OrderPayActivity activity);
@Component(modules = MealPayModule.class, dependencies = AppComponent.class)
public interface MealPayComponent {
void inject(MealPayActivity activity);
@Component.Builder
interface Builder {
@BindsInstance
OrderPayComponent.Builder view(OrderPayContract.View view);
MealPayComponent.Builder view(MealPayContract.View view);
OrderPayComponent.Builder appComponent(AppComponent appComponent);
MealPayComponent.Builder appComponent(AppComponent appComponent);
OrderPayComponent build();
MealPayComponent build();
}
}
\ No newline at end of file
......@@ -2,9 +2,9 @@ package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.gingersoft.gsa.cloud.table.di.module.SoldoutCtrlModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.SoldoutCtrlContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity;
import com.gingersoft.gsa.cloud.table.di.module.MealSoldoutModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealSoldoutContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealSoldoutActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.ActivityScope;
......@@ -22,17 +22,17 @@ import com.jess.arms.di.scope.ActivityScope;
* ================================================
*/
@ActivityScope
@Component(modules = SoldoutCtrlModule.class, dependencies = AppComponent.class)
public interface SoldoutCtrlComponent {
void inject(SoldoutCtrlActivity activity);
@Component(modules = MealSoldoutModule.class, dependencies = AppComponent.class)
public interface MealSoldoutComponent {
void inject(MealSoldoutActivity activity);
@Component.Builder
interface Builder {
@BindsInstance
SoldoutCtrlComponent.Builder view(SoldoutCtrlContract.View view);
MealSoldoutComponent.Builder view(MealSoldoutContract.View view);
SoldoutCtrlComponent.Builder appComponent(AppComponent appComponent);
MealSoldoutComponent.Builder appComponent(AppComponent appComponent);
SoldoutCtrlComponent build();
MealSoldoutComponent build();
}
}
\ No newline at end of file
......@@ -2,7 +2,7 @@ package com.gingersoft.gsa.cloud.table.di.component;
import com.gingersoft.gsa.cloud.table.di.module.MealStandModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealStandActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.ActivityScope;
......
package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.discount.NomalDiscountFragment;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.NomalDiscountModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.NomalDiscountContract;
import com.jess.arms.di.scope.FragmentScope;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@FragmentScope
@Component(modules = NomalDiscountModule.class, dependencies = AppComponent.class)
public interface NomalDiscountComponent {
void inject(NomalDiscountFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
NomalDiscountComponent.Builder view(NomalDiscountContract.View view);
NomalDiscountComponent.Builder appComponent(AppComponent appComponent);
NomalDiscountComponent build();
}
}
\ No newline at end of file
......@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.OrderCenterModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderCenterContract;
import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.order.OrderCenterActivity;
/**
......
......@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.OrderDetailModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract;
import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderDetailActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.order.OrderDetailActivity;
/**
......
package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.RiceponMemberDialogModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.RiceponMemberDialogContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.mealstand.RiceponMemberDialogFragment;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/24/2021 16:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@FragmentScope
@Component(modules = RiceponMemberDialogModule.class, dependencies = AppComponent.class)
public interface RiceponMemberDialogComponent {
void inject(RiceponMemberDialogFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
RiceponMemberDialogComponent.Builder view(RiceponMemberDialogContract.View view);
RiceponMemberDialogComponent.Builder appComponent(AppComponent appComponent);
RiceponMemberDialogComponent build();
}
}
\ No newline at end of file
......@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.TableModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract;
import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
/**
......
package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.TableModeModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.TableModeContract;
import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableModeActivity;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/08/2021 14:08
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
@Component(modules = TableModeModule.class, dependencies = AppComponent.class)
public interface TableModeComponent {
void inject(TableModeActivity activity);
@Component.Builder
interface Builder {
@BindsInstance
TableModeComponent.Builder view(TableModeContract.View view);
TableModeComponent.Builder appComponent(AppComponent appComponent);
TableModeComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
import com.gingersoft.gsa.cloud.ui.adapter.TagViewAdapter;
import com.gingersoft.gsa.cloud.ui.bean.TagViewItem;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
......@@ -16,8 +14,6 @@ import com.gingersoft.gsa.cloud.table.mvp.model.CouponModel;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
/**
* ================================================
......
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract;
import com.gingersoft.gsa.cloud.table.mvp.model.OrderContentModel;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealBillContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealBillModel;
import dagger.Binds;
import dagger.Module;
......@@ -21,8 +21,8 @@ import dagger.Module;
* ================================================
*/
@Module
public abstract class OrderContentModule {
public abstract class MealBillModule {
@Binds
abstract OrderContentContract.Model bindOrderContentModel(OrderContentModel model);
abstract MealBillContract.Model bindMealBillModel(MealBillModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.ui.bean.TagViewItem;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealDiscountContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealDiscountModel;
import java.util.ArrayList;
import java.util.List;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/17/2021 10:46
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class MealDiscountModule {
@Binds
abstract MealDiscountContract.Model bindMealDiscountModel(MealDiscountModel model);
// @FragmentScope
// @Provides
// static List<String> provideTabTitleList(){
// return new ArrayList<>();
// }
}
\ No newline at end of file
......@@ -3,8 +3,8 @@ package com.gingersoft.gsa.cloud.table.di.module;
import dagger.Binds;
import dagger.Module;
import com.gingersoft.gsa.cloud.table.mvp.contract.FineItemAllContract;
import com.gingersoft.gsa.cloud.table.mvp.model.FineItemAllModel;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealFineAllContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealFineAllModel;
/**
......@@ -20,8 +20,8 @@ import com.gingersoft.gsa.cloud.table.mvp.model.FineItemAllModel;
* ================================================
*/
@Module
public abstract class FineItemAllModule {
public abstract class MealFineAllModule {
@Binds
abstract FineItemAllContract.Model bindFineItemAllModel(FineItemAllModel model);
abstract MealFineAllContract.Model bindMealFineAllModel(MealFineAllModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.model.MealFineModel;
import dagger.Binds;
import dagger.Module;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealFineContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/24/2021 18:33
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class MealFineModule {
@Binds
abstract MealFineContract.Model bindFineModel(MealFineModel model);
}
\ No newline at end of file
......@@ -3,8 +3,8 @@ package com.gingersoft.gsa.cloud.table.di.module;
import dagger.Binds;
import dagger.Module;
import com.gingersoft.gsa.cloud.table.mvp.contract.FineItemOneselfContract;
import com.gingersoft.gsa.cloud.table.mvp.model.FineItemOneselfModel;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealFineOneselfContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealFineOneselfModel;
/**
......@@ -20,8 +20,8 @@ import com.gingersoft.gsa.cloud.table.mvp.model.FineItemOneselfModel;
* ================================================
*/
@Module
public abstract class FineItemOneselfModule {
public abstract class MealFineOneselfModule {
@Binds
abstract FineItemOneselfContract.Model bindFineItemOneselfModel(FineItemOneselfModel model);
abstract MealFineOneselfContract.Model bindMealFineOneselfModel(MealFineOneselfModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract;
import com.gingersoft.gsa.cloud.table.mvp.model.OrderPayModel;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealPayContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealPayModel;
import dagger.Binds;
import dagger.Module;
......@@ -21,8 +21,8 @@ import dagger.Module;
* ================================================
*/
@Module
public abstract class OrderPayModule {
public abstract class MealPayModule {
@Binds
abstract OrderPayContract.Model bindOrderPayModel(OrderPayModel model);
abstract MealPayContract.Model bindMealPayModel(MealPayModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.contract.SoldoutCtrlContract;
import com.gingersoft.gsa.cloud.table.mvp.model.SoldoutCtrlModel;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealSoldoutContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealSoldoutModel;
import dagger.Binds;
import dagger.Module;
......@@ -20,8 +20,8 @@ import dagger.Module;
* ================================================
*/
@Module
public abstract class SoldoutCtrlModule {
public abstract class MealSoldoutModule {
@Binds
abstract SoldoutCtrlContract.Model bindSoldoutCtrlModel(SoldoutCtrlModel model);
abstract MealSoldoutContract.Model bindMealSoldoutModel(MealSoldoutModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import android.content.Context;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealStandModel;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.SoldoutCtrFood;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ComboAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.DiscountAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodGroupAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ModifierAdapter;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.di.scope.ActivityScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.model.MealStandModel;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import javax.inject.Named;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 12/27/2019 19:17
* Created by MVPArmsTemplate on 04/17/2021 10:40
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
......@@ -44,7 +43,7 @@ import dagger.Provides;
public abstract class MealStandModule {
@Binds
abstract MealStandContract.Model bindMealStandModel(MealStandModel model);
abstract MealStandContract.Model bindSetMealModel(MealStandModel model);
@ActivityScope
@Provides
......@@ -74,12 +73,6 @@ public abstract class MealStandModule {
@ActivityScope
@Provides
static List<Discount> provideDiscountList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static List<SoldoutCtrFood> provideSoldoutCtrList() {
return new ArrayList<>();
}
......@@ -110,8 +103,16 @@ public abstract class MealStandModule {
@ActivityScope
@Provides
static DiscountAdapter provideDiscountAdapter(MealStandContract.View IView, List<Discount> discountList) {
return new DiscountAdapter(IView.getActivity(), discountList);
@Named("comboGridLayoutManager")
static GridLayoutManager provideComboRecycleLayoutManager(MealStandContract.View IView) {
return new GridLayoutManager(IView.getActivity(), 1, LinearLayoutManager.HORIZONTAL, false);
}
@ActivityScope
@Provides
@Named("modifierGridLayoutManager")
static GridLayoutManager provideModifierRecycleLayoutManager(MealStandContract.View IView) {
return new GridLayoutManager(IView.getActivity(), 1, LinearLayoutManager.HORIZONTAL, false);
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.model.NomalDiscountModel;
import com.gingersoft.gsa.cloud.ui.adapter.TagViewAdapter;
import com.gingersoft.gsa.cloud.ui.bean.TagViewItem;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.contract.NomalDiscountContract;
import java.util.ArrayList;
import java.util.List;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class NomalDiscountModule {
@Binds
abstract NomalDiscountContract.Model bindBillDiscountModel(NomalDiscountModel model);
@FragmentScope
@Provides
static List<TagViewItem> provideBillDiscountList(){
return new ArrayList<>();
}
@FragmentScope
@Provides
static TagViewAdapter provideBillDiscountAdapter(List<TagViewItem> billDiscountList){
return new TagViewAdapter(billDiscountList);
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.MemberInfoAdapter;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.contract.RiceponMemberDialogContract;
import com.gingersoft.gsa.cloud.table.mvp.model.RiceponMemberDialogModel;
import java.util.ArrayList;
import java.util.List;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/24/2021 16:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class RiceponMemberDialogModule {
@Binds
abstract RiceponMemberDialogContract.Model bindRiceponMemberDialogModel(RiceponMemberDialogModel model);
@FragmentScope
@Provides
static List<SectionTextItem> provideMemberInfoList() {
return new ArrayList<>();
}
@FragmentScope
@Provides
static MemberInfoAdapter provideMemberInfoAdapter(List<SectionTextItem> memberInfoList) {
return new MemberInfoAdapter(memberInfoList);
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.jess.arms.di.scope.ActivityScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.contract.TableModeContract;
import com.gingersoft.gsa.cloud.table.mvp.model.TableModeModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/08/2021 14:08
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class TableModeModule {
@Binds
abstract TableModeContract.Model bindTableModeModel(TableModeModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.mvp.action.discount;
import android.app.Activity;
import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
import com.gingersoft.gsa.cloud.order.bean.discount.MemberWalletCoupon;
import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.order.discount.NomalDiscount;
import com.jess.arms.utils.ArmsUtils;
import java.util.List;
import lombok.Builder;
import lombok.Setter;
/**
* @author : bin
* @create date: 2020-10-27
* @update date: 2020-10-27
* @description:賬單優惠券邏輯
*/
public class BillCouponAction implements Strategy<MemberCoupon> {
@Builder
@Setter
public class BillCouponAction implements Strategy<MemberWalletCoupon> {
private Activity mContext;
private Activity context;
/**
* 賬單優惠券列表
*/
private List<NomalDiscount> mNomalDiscountList;
private List<NomalDiscount> nomalDiscountList;
private OnCallBackListener mListener;
private double wholeAmount;
public BillCouponAction(Activity context, OnCallBackListener listener) {
this.mContext = context;
this.mListener = listener;
}
private OnCallBackListener listener;
private String cashStr;
public void setNomalDiscountList(List<NomalDiscount> nomalDiscountList) {
this.mNomalDiscountList = nomalDiscountList;
}
@Override
public void action(MemberCoupon discount) {
if (mListener == null) {
public void action(MemberWalletCoupon coupon) {
if (listener == null) {
return;
}
if (coupon.getBillMinAmount() > wholeAmount) {
//小於最小賬單金額
ArmsUtils.makeText(context, "小於最小賬單金額" + cashStr + coupon.getBillMinAmount() + " 無法使用此優惠券");
return;
}
listener.preformAddCoupon(coupon.clone());
}
@Override
......@@ -46,16 +55,10 @@ public class BillCouponAction implements Strategy<MemberCoupon> {
}
private void exclusiveDiscount(MemberCoupon discount) {
if (mListener != null) {
}
}
public interface OnCallBackListener {
void exclusiveRemoveOthers(List<NomalDiscount> nomalDiscountList);
void preformAddDiscount(MemberCoupon discount);
void preformAddCoupon(MemberWalletCoupon walletCoupon);
}
}
......@@ -12,40 +12,45 @@ import com.jess.arms.utils.ArmsUtils;
import java.util.List;
import lombok.Builder;
import lombok.Setter;
/**
* @author : bin
* @create date: 2020-10-27
* @update date: 2020-10-27
* @description:賬單折扣邏輯
*/
@Builder
@Setter
public class BillDiscountAction implements Strategy<Discount> {
private Activity mContext;
private Activity context;
/**
* 賬單折扣列表
*/
private List<NomalDiscount> mNomalDiscountList;
private List<NomalDiscount> nomalDiscountList;
private OnCallBackListener mListener;
private double wholeAmount;
public BillDiscountAction(Activity context, OnCallBackListener listener) {
this.mContext = context;
this.mListener = listener;
}
private OnCallBackListener listener;
public void setNomalDiscountList(List<NomalDiscount> nomalDiscountList) {
this.mNomalDiscountList = nomalDiscountList;
}
private String cashStr ;
@Override
public void action(Discount discount) {
if (mListener == null) {
if (listener == null) {
return;
}
if (discount.getMinBillAmount() > wholeAmount) {
//小於最小賬單金額
ArmsUtils.makeText(context, "小於最小賬單金額" + cashStr + discount.getMinBillAmount() + " 無法使用此折扣");
return;
}
if (isOnlyOnce(discount)) {
//此折扣只一次
ArmsUtils.makeText(mContext, "此折扣只一次");
ArmsUtils.makeText(context, "此折扣只一次");
return;
}
boolean hasExclusive = hasExclusiveDiscount();
......@@ -54,7 +59,7 @@ public class BillDiscountAction implements Strategy<Discount> {
exclusiveDiscount(discount);
return;
} else {
if (discount.getExclusive() == 1 && mNomalDiscountList.size() > 0) {
if (nomalDiscountList != null && discount.getExclusive() == 1 && nomalDiscountList.size() > 0) {
//獨佔折扣
exclusiveDiscount(discount);
return;
......@@ -71,7 +76,7 @@ public class BillDiscountAction implements Strategy<Discount> {
//
// break;
default:
mListener.preformAddDiscount(discount.clone());
listener.preformAddDiscount(discount.clone());
break;
}
}
......@@ -82,7 +87,7 @@ public class BillDiscountAction implements Strategy<Discount> {
}
private void exclusiveDiscount(Discount discount) {
if (mListener != null) {
if (listener != null) {
showExclusiveTipDialog(discount);
}
}
......@@ -93,7 +98,7 @@ public class BillDiscountAction implements Strategy<Discount> {
* @return
*/
private boolean hasExclusiveDiscount() {
for (NomalDiscount nomalDiscount : mNomalDiscountList) {
for (NomalDiscount nomalDiscount : nomalDiscountList) {
if (nomalDiscount.getDiscount().getExclusive() == 1) {
return true;
}
......@@ -109,7 +114,7 @@ public class BillDiscountAction implements Strategy<Discount> {
*/
private boolean isOnlyOnce(Discount discount) {
if (discount.getOnlyOnce() == 1) {
for (NomalDiscount nomalDiscount : mNomalDiscountList) {
for (NomalDiscount nomalDiscount : nomalDiscountList) {
Discount item = nomalDiscount.getDiscount();
if (discount.getId().longValue() == item.getId().longValue()) {
return true;
......@@ -126,15 +131,15 @@ public class BillDiscountAction implements Strategy<Discount> {
* @param discount
*/
private void showCustomAmountDialog(Discount discount, boolean exclusiveReplace) {
CommonTipDialog.showEditDialog(mContext, discount.getRemark(), "請輸入折扣金額", InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL, new CommonTipDialog.OnEditTextListener() {
CommonTipDialog.showEditDialog(context, discount.getRemark(), "請輸入折扣金額", InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL, new CommonTipDialog.OnEditTextListener() {
@Override
public void inputText(String text) {
discount.setAmount(Double.parseDouble(text));
if (mListener != null) {
if (listener != null) {
if (exclusiveReplace) {
mListener.exclusiveRemoveOthers(mNomalDiscountList);
listener.exclusiveRemoveOthers(nomalDiscountList);
}
mListener.preformAddDiscount(discount.clone());
listener.preformAddDiscount(discount.clone());
}
}
});
......@@ -146,17 +151,17 @@ public class BillDiscountAction implements Strategy<Discount> {
* @param discount
*/
private void showKeyboardDialog(Discount discount, boolean exclusiveReplace) {
new KeyboardDialog(mContext)
new KeyboardDialog(context)
.build()
.setOnCallBackListener(new KeyboardDialog.OnCallBackListener() {
@Override
public void onSure(String number) {
discount.setAmount(Double.parseDouble(number));
if (mListener != null) {
if (listener != null) {
if (exclusiveReplace) {
mListener.exclusiveRemoveOthers(mNomalDiscountList);
listener.exclusiveRemoveOthers(nomalDiscountList);
}
mListener.preformAddDiscount(discount.clone());
listener.preformAddDiscount(discount.clone());
}
}
})
......@@ -169,7 +174,7 @@ public class BillDiscountAction implements Strategy<Discount> {
* @param discount
*/
private void showExclusiveTipDialog(Discount discount) {
CommonTipDialog.showDoubtDialog2(mContext, "有獨佔折扣,是否替換", new CommonTipDialog.OnCallbackListener() {
CommonTipDialog.showDoubtDialog2(context, "有獨佔折扣,是否替換", new CommonTipDialog.OnCallbackListener() {
@Override
public void onSure() {
switch (discount.getType()) {
......@@ -183,8 +188,8 @@ public class BillDiscountAction implements Strategy<Discount> {
//
// break;
default:
mListener.exclusiveRemoveOthers(mNomalDiscountList);
mListener.preformAddDiscount(discount.clone());
listener.exclusiveRemoveOthers(nomalDiscountList);
listener.preformAddDiscount(discount.clone());
break;
}
}
......
package com.gingersoft.gsa.cloud.table.mvp.action.discount;
import android.app.Activity;
import android.text.InputType;
import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
import com.gingersoft.gsa.cloud.order.bean.discount.MemberWalletCoupon;
import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.order.discount.NomalDiscount;
import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
import com.gingersoft.gsa.cloud.ui.widget.dialog.KeyboardDialog;
import com.gingersoft.gsa.cloud.common.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.jess.arms.utils.ArmsUtils;
import java.util.List;
import lombok.Builder;
import lombok.Setter;
/**
* @author : bin
* @create date: 2020-10-27
* @update date: 2020-10-27
* @description:食品優惠券邏輯
*/
public class MealCouponAction implements Strategy<MemberCoupon> {
@Builder
@Setter
public class MealCouponAction implements Strategy<MemberWalletCoupon> {
private Activity mContext;
private Activity context;
/**
* 食品優惠券列表
* 選中的食品或套餐組
*/
private List<NomalDiscount> mNomalDiscountList;
private List<OrderDetail> selectMixOrderMealList;
private OnCallBackListener mListener;
private OnCallBackListener listener;
public MealCouponAction(Activity context, OnCallBackListener listener) {
this.mContext = context;
this.mListener = listener;
}
public void setNomalDiscountList(List<NomalDiscount> nomalDiscountList) {
this.mNomalDiscountList = nomalDiscountList;
}
private String cashStr ;
@Override
public void action(MemberCoupon discount) {
if (mListener == null) {
public void action(MemberWalletCoupon coupon) {
if (listener == null || selectMixOrderMealList == null || selectMixOrderMealList.size() == 0) {
return;
}
double mixTotalAomout = getMixTotalAomout(selectMixOrderMealList);
// if(coupon.getAmount() > mixTotalAomout){
// //金額折扣總額不能超過 套餐總金額
// ArmsUtils.makeText(context, "優惠券金額不可以超過食品總金額!");
// return;
// }
if (coupon.getBillMinAmount() > mixTotalAomout) {
//最小金額
ArmsUtils.makeText(context, "小於最小金額" +cashStr+ coupon.getBillMinAmount() + " 無法使用此食品優惠券");
return;
}
listener.preformAddCoupon(coupon.clone());
}
@Override
......@@ -51,30 +58,23 @@ public class MealCouponAction implements Strategy<MemberCoupon> {
}
private void exclusiveDiscount(MemberCoupon discount) {
if (mListener != null) {
}
}
/**
* 是否有獨佔折扣
* 獲取套餐總金額
*
* @param mixOrderMealList
* @return
*/
private boolean hasExclusiveDiscount() {
for (NomalDiscount nomalDiscount : mNomalDiscountList) {
if (nomalDiscount.getDiscount().getExclusive() == 1) {
return true;
}
private double getMixTotalAomout(List<OrderDetail> mixOrderMealList) {
double mixTotalAomout = 0.0;
for (OrderDetail orderDetail : mixOrderMealList) {
mixTotalAomout = MoneyUtil.sum(mixTotalAomout, orderDetail.getPrice());
}
return false;
return mixTotalAomout;
}
public interface OnCallBackListener {
void exclusiveRemoveOthers(List<NomalDiscount> nomalDiscountList);
void preformAddDiscount(MemberCoupon discount);
void preformAddCoupon(MemberWalletCoupon discount);
}
}
......@@ -14,54 +14,48 @@ import com.jess.arms.utils.ArmsUtils;
import java.util.List;
import lombok.Builder;
import lombok.Setter;
/**
* @author : bin
* @create date: 2020-10-28
* @update date: 2020-10-28
* @description:美食折扣邏輯
*/
@Builder
@Setter
public class MealDiscountAction implements Strategy<Discount> {
private Activity mContext;
private Activity context;
/**
* 選中的食品或套餐組
*/
private List<OrderDetail> mSelectMixOrderMealList;
private List<MultyDiscount> mMultyDiscountList;
private List<OrderDetail> selectMixOrderMealList;
private MealDiscountAction.OnCallBackListener mListener;
private MealDiscountAction.OnCallBackListener listener;
public MealDiscountAction(Activity context, List<MultyDiscount> multyDiscountList, MealDiscountAction.OnCallBackListener listener) {
this.mContext = context;
this.mMultyDiscountList = multyDiscountList;
this.mListener = listener;
}
public void setSelectMixOrderMealList(List<OrderDetail> selectMixOrderMealList) {
this.mSelectMixOrderMealList = selectMixOrderMealList;
}
private String cashStr ;
@Override
public void action(Discount discount) {
if (mListener == null || mSelectMixOrderMealList == null || mSelectMixOrderMealList.size() == 0) {
if (listener == null || selectMixOrderMealList == null || selectMixOrderMealList.size() == 0) {
return;
}
double mixTotalAomout = getMixTotalAomout(mSelectMixOrderMealList);
double mixTotalAomout = getMixTotalAomout(selectMixOrderMealList);
if(discount.getType() == 0 && discount.getAmount() > mixTotalAomout){
//金額折扣總額不能超過 食品總金額
ArmsUtils.makeText(mContext, "折扣金額不可以超過食品總金額!");
ArmsUtils.makeText(context, "折扣金額不可以超過食品總金額!");
return;
}
if (discount.getMinBillAmount() > mixTotalAomout) {
//最小賬單金額
ArmsUtils.makeText(mContext, "小於最小賬單金額$" + discount.getMinBillAmount() + " 無法使用此折扣");
ArmsUtils.makeText(context, "小於最小賬單金額" +cashStr+ discount.getMinBillAmount() + " 無法使用此折扣");
return;
}
if (isOnlyOnce(discount)) {
//此折扣只一次
ArmsUtils.makeText(mContext, "此折扣只一次");
ArmsUtils.makeText(context, "此折扣只一次");
return;
}
boolean hasExclusive = hasExclusiveDiscount();
......@@ -88,7 +82,7 @@ public class MealDiscountAction implements Strategy<Discount> {
//
// break;
default:
mListener.preformAddDiscount(discount.clone());
listener.preformAddDiscount(discount.clone());
break;
}
}
......@@ -99,7 +93,7 @@ public class MealDiscountAction implements Strategy<Discount> {
}
private void exclusiveDiscount(Discount discount) {
if (mListener != null) {
if (listener != null) {
showExclusiveTipDialog(discount);
}
}
......@@ -111,7 +105,7 @@ public class MealDiscountAction implements Strategy<Discount> {
* @return
*/
private boolean hasExclusiveDiscount() {
for (OrderDetail orderMealItem : mSelectMixOrderMealList) {
for (OrderDetail orderMealItem : selectMixOrderMealList) {
if (orderMealItem.getDiscount() != null && orderMealItem.getDiscount().getExclusive() == 1) {
return true;
}
......@@ -127,7 +121,7 @@ public class MealDiscountAction implements Strategy<Discount> {
*/
private boolean isOnlyOnce(Discount discount) {
if (discount.getOnlyOnce() == 1) {
for (OrderDetail orderMealItem : mSelectMixOrderMealList) {
for (OrderDetail orderMealItem : selectMixOrderMealList) {
Discount item = orderMealItem.getDiscount();
if (item != null && discount.getId().longValue() == item.getId().longValue()) {
return true;
......@@ -144,15 +138,15 @@ public class MealDiscountAction implements Strategy<Discount> {
* @param discount
*/
private void showCustomAmountDialog(Discount discount, boolean exclusiveReplace) {
CommonTipDialog.showEditDialog(mContext, discount.getRemark(), "請輸入折扣金額", InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL, new CommonTipDialog.OnEditTextListener() {
CommonTipDialog.showEditDialog(context, discount.getRemark(), "請輸入折扣金額", InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL, new CommonTipDialog.OnEditTextListener() {
@Override
public void inputText(String text) {
discount.setAmount(Double.parseDouble(text));
if (mListener != null) {
if (listener != null) {
if (exclusiveReplace) {
mListener.exclusiveRemoveOthers();
listener.exclusiveRemoveOthers();
}
mListener.preformAddDiscount(discount.clone());
listener.preformAddDiscount(discount.clone());
}
}
});
......@@ -164,17 +158,17 @@ public class MealDiscountAction implements Strategy<Discount> {
* @param discount
*/
private void showKeyboardDialog(Discount discount, boolean exclusiveReplace) {
new KeyboardDialog(mContext)
new KeyboardDialog(context)
.build()
.setOnCallBackListener(new KeyboardDialog.OnCallBackListener() {
@Override
public void onSure(String number) {
discount.setAmount(Double.parseDouble(number));
if (mListener != null) {
if (listener != null) {
if (exclusiveReplace) {
mListener.exclusiveRemoveOthers();
listener.exclusiveRemoveOthers();
}
mListener.preformAddDiscount(discount.clone());
listener.preformAddDiscount(discount.clone());
}
}
})
......@@ -187,7 +181,7 @@ public class MealDiscountAction implements Strategy<Discount> {
* @param discount
*/
private void showExclusiveTipDialog(Discount discount) {
CommonTipDialog.showDoubtDialog2(mContext, "有獨佔折扣,是否替換", new CommonTipDialog.OnCallbackListener() {
CommonTipDialog.showDoubtDialog2(context, "有獨佔折扣,是否替換", new CommonTipDialog.OnCallbackListener() {
@Override
public void onSure() {
switch (discount.getType()) {
......@@ -201,8 +195,8 @@ public class MealDiscountAction implements Strategy<Discount> {
//
// break;
default:
mListener.exclusiveRemoveOthers();
mListener.preformAddDiscount(discount.clone());
listener.exclusiveRemoveOthers();
listener.preformAddDiscount(discount.clone());
break;
}
}
......@@ -216,7 +210,7 @@ public class MealDiscountAction implements Strategy<Discount> {
*/
private int getDiscountSize() {
int size = 0;
for (OrderDetail orderMealItem : mSelectMixOrderMealList) {
for (OrderDetail orderMealItem : selectMixOrderMealList) {
if (orderMealItem.getDiscount() != null) {
size++;
}
......
package com.gingersoft.gsa.cloud.pay.pos;
package com.gingersoft.gsa.cloud.table.mvp.action.meal;
/**
* @作者: bin
* @創建時間: 2021-04-13 17:44
* @更新時間: 2021-04-13 17:44
* @創建時間: 2021-04-27 16:31
* @更新時間: 2021-04-27 16:31
* @描述:
*/
public class RealPayPos {
public class PrinterAction {
......
......@@ -2,17 +2,15 @@ package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.text.TextUtils;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.common.utils.AppDevices;
import com.gingersoft.gsa.cloud.pay.bean.PosActionStatusExceptionParam;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.VoidRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.VoidRespose;
import com.gingersoft.gsa.cloud.pay.PayAction;
import com.gingersoft.gsa.cloud.pay.PaymentCommand;
import com.gingersoft.gsa.cloud.pay.RequestParms;
import com.gingersoft.gsa.cloud.pay.ResultCallback;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.pos.VoidRequest;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.jess.arms.base.BaseFragmentActivity;
......@@ -20,6 +18,8 @@ import com.jess.arms.mvp.IView;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
import java.util.List;
/**
* @作者: bin
* @創建時間: 2021-01-15 15:19
......@@ -56,8 +56,8 @@ public class CancelOrder implements Strategy<OrderManagerResponse> {
dialogBuilder.setMessage("是否取消訂單?");
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
if (datasBean.withHywebPay() && AppDevices.isHywebPos()) {
hywebOrderCancle(datasBean);
if (AppDevices.isPosPay()) {
posOrderCancle(datasBean);
} else {
if (cancelListener != null) {
cancelListener.cancel(datasBean.getId());
......@@ -68,7 +68,7 @@ public class CancelOrder implements Strategy<OrderManagerResponse> {
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
private void hywebOrderCancle(OrderManagerResponse datasBean) {
private void posOrderCancle(OrderManagerResponse datasBean) {
GetTxnIdRequest txnIdRequest = new GetTxnIdRequest();
txnIdRequest.setOrderId(datasBean.getId());
if (!TextUtils.isEmpty(datasBean.getTableNumber())) {
......@@ -78,7 +78,57 @@ public class CancelOrder implements Strategy<OrderManagerResponse> {
}
txnIdRequest.setAmount(datasBean.getAmount());
VoidRequest voidRequest = new VoidRequest();
// PosPay.voidO(mActivity, mRootView, voidRequest, txnIdRequest, new OnPosActionListener<VoidRespose>() {
int payType = 1106;
List<OrderManagerResponse.OrderPayBean> orderPays = datasBean.getOrderPays();
for (int i = 0; i < orderPays.size(); i++) {
final OrderManagerResponse.OrderPayBean orderPayBean = orderPays.get(i);
if (AppDevices.isYedpay()) {
payType = orderPayBean.getPayType();
}
}
RequestParms build = RequestParms.builder()
.action(PayAction.REFUND)
.orderId(datasBean.getId())
.tableId(datasBean.getTableId())
.tableExtId(datasBean.getTableNumber())
.payMoney(datasBean.getAmount())
.refundReason("客戶退款")
.resultCallback(new ResultCallback() {
@Override
public void onSuccess() {
if (cancelListener != null) {
cancelListener.refeshOrders();
}
}
@Override
public void onFailure(Throwable t) {
}
@Override
public void fakePayment() {
if (cancelListener != null) {
cancelListener.cancel(datasBean.getId());
}
}
@Override
public void hybridPayment(List<PayMethod> payMethods) {
}
})
.build();
PaymentCommand.newInstance().action(mActivity.getSupportFragmentManager(), build);
// PosPay.builder()
// .context(GsaCloudApplication.getAppContext())
// .lifecycleView(mRootView)
// .posRequest(voidRequest)
// .bgRequest(txnIdRequest)
// .callback(new PosCallbackListener<VoidRespose>() {
//
// @Override
// public void onPosSuccess(VoidRespose response) {
......
......@@ -7,11 +7,11 @@ import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.order.bean.response.OrderResponse;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
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.orderManager.OrderCenterActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.order.OrderCenterActivity;
import com.jess.arms.base.BaseFragmentActivity;
import com.jess.arms.mvp.IView;
......@@ -36,9 +36,9 @@ public class ModifyOrderAction implements Strategy<OrderManagerResponse> {
@Override
public void action(OrderManagerResponse orderItem) {
DoshokuOrder doshokuOrder = DoshokuOrder.getInstance();
MealOrder mealOrder = MealOrder.getInstance();
//設置為修改訂單操作
doshokuOrder.setModifyOrder(true);
mealOrder.setModifyOrder(true);
/**
* 緩存訂單信息
*/
......@@ -51,8 +51,8 @@ public class ModifyOrderAction implements Strategy<OrderManagerResponse> {
if (orderItem.getDiscountDetails() != null) {
orderBean.setDiscountDetails(orderItem.getDiscountDetails());
}
doshokuOrder.setOrderId(orderItem.getId());
doshokuOrder.setOrderPlaced(orderBean);
mealOrder.setOrderId(orderItem.getId());
mealOrder.setOrderPlaced(orderBean);
// TableBean.DataBean tableBean = new TableBean.DataBean(orderItem.getRestaurantTable());
TableBean.DataBean tableBean = null;
......@@ -68,14 +68,14 @@ public class ModifyOrderAction implements Strategy<OrderManagerResponse> {
}
tableBean.setId(orderItem.getTableId());
tableBean.setPerson(orderItem.getPerson());
doshokuOrder.setOpenTableInfo(tableBean);
mealOrder.setOpenTableInfo(tableBean);
List<OrderResponse.OrderDetailsBean> orderDetailsBeans = orderItem.getOrderDetails();
List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(orderDetailsBeans));
doshokuOrder.getShoppingCart().addCommodityList(orderDetailList);
mealOrder.getShoppingCart().addCommodityList(orderDetailList);
if (orderItem.getMemberInfo() != null) {
doshokuOrder.setMemberInfo(orderItem.getMemberInfo());
mealOrder.setMemberInfo(orderItem.getMemberInfo());
}
Intent intent = new Intent(mActivity, MealStandActivity.class);
......
......@@ -2,7 +2,6 @@ package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.text.TextUtils;
import android.util.Log;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.constans.PrintConstans;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
......@@ -16,11 +15,8 @@ import com.gingersoft.gsa.cloud.order.billItem.BillItem;
import com.gingersoft.gsa.cloud.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.order.cart.ShoppingCart;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.gingersoft.gsa.cloud.print.bean.PrintContent;
import com.gingersoft.gsa.cloud.print.bean.adapter.PrintContentAdapter;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
......@@ -64,14 +60,14 @@ public class PrintOrderAction implements Strategy<OrderManagerResponse> {
private void startPrintOrder(OrderManagerResponse orderDetailItem, List<OrderDetail> orderDetailList) {
DoshokuOrder doshokuOrder = DoshokuOrder.getInstance();
ShoppingCart shoppingCart = doshokuOrder.getShoppingCart();
MealOrder mealOrder = MealOrder.getInstance();
ShoppingCart shoppingCart = mealOrder.getShoppingCart();
double wholeAmount = getWholeAmount(orderDetailList);
doshokuOrder.setOrderId(orderDetailItem.getId());
doshokuOrder.setOrderNo(orderDetailItem.getOrderNo());
doshokuOrder.setNewFoodList(orderDetailList);
mealOrder.setOrderId(orderDetailItem.getId());
mealOrder.setOrderNo(orderDetailItem.getOrderNo());
mealOrder.setNewFoodList(orderDetailList);
shoppingCart.setOrderCommodityList(orderDetailList);
shoppingCart.setBillItemList(getOrderMoneyList(orderDetailItem, wholeAmount));
shoppingCart.setWholeAmount(wholeAmount);
......@@ -83,34 +79,34 @@ public class PrintOrderAction implements Strategy<OrderManagerResponse> {
if (!TextUtils.isEmpty(orderDetailItem.getCreateTime())) {
dataBean.setCreateTime(TimeUtils.getStringByFormat(new Date(orderDetailItem.getCreateTime()), TimeUtils.DEFAULT_DATE_FORMAT_YMDHM));
}
doshokuOrder.setOpenTableInfo(dataBean);
mealOrder.setOpenTableInfo(dataBean);
if (orderDetailItem.getMemberInfo() != null) {
doshokuOrder.setMemberInfo(orderDetailItem.getMemberInfo());
mealOrder.setMemberInfo(orderDetailItem.getMemberInfo());
} else {
doshokuOrder.setIntegralQrcode(orderDetailItem.getVerifyCode());
mealOrder.setIntegralQrcode(orderDetailItem.getVerifyCode());
}
List<PayMethod> payMethodList = getPayMethodList(orderDetailItem.getOrderPays());
if (payMethodList != null) {
//設置打印所需支付方式
doshokuOrder.setBillMoney(payMethodList);
mealOrder.setBillMoney(payMethodList);
}
if (orderDetailItem.withHywebPay() && AppDevices.isHywebPos()) {
printPosStub(orderDetailItem,doshokuOrder,dataBean);
printPosStub(orderDetailItem,mealOrder,dataBean);
}else {
printBill(orderDetailItem,doshokuOrder, dataBean,false);
printBill(orderDetailItem,mealOrder, dataBean,false);
}
}
private void printPosStub(OrderManagerResponse orderDetailItem, DoshokuOrder doshokuOrder, TableBean.DataBean dataBean) {
private void printPosStub(OrderManagerResponse orderDetailItem, MealOrder mealOrder, TableBean.DataBean dataBean) {
// PosPay.printStub(mActivity, mRootView, orderDetailItem.getPayTxnId(), new OnPosActionListener() {
// @Override
// public void onPosSuccess(HywebPosResponse response) {
// if(printlListener != null){
// printlListener.printPosStubResult(true);
// }
// printBill(orderDetailItem,doshokuOrder, dataBean,true);
// printBill(orderDetailItem,mealOrder, dataBean,true);
// }
//
// @Override
......@@ -118,12 +114,12 @@ public class PrintOrderAction implements Strategy<OrderManagerResponse> {
// if(printlListener != null){
// printlListener.printPosStubResult(false);
// }
// printBill(orderDetailItem,doshokuOrder, dataBean,true);
// printBill(orderDetailItem,mealOrder, dataBean,true);
// }
//
// @Override
// public void onPosInvalid(String e) {
// printBill(orderDetailItem,doshokuOrder, dataBean,true);
// printBill(orderDetailItem,mealOrder, dataBean,true);
// }
//
// @Override
......@@ -136,20 +132,20 @@ public class PrintOrderAction implements Strategy<OrderManagerResponse> {
// });
}
private void printBill(OrderManagerResponse orderDetailItem,DoshokuOrder doshokuOrder, TableBean.DataBean dataBean,boolean printStub) {
PrintContent printContent = new PrintContentAdapter().adaptationBillContent(doshokuOrder, dataBean);
private void printBill(OrderManagerResponse orderDetailItem, MealOrder mealOrder, TableBean.DataBean dataBean, boolean printStub) {
PrintContent printContent = new PrintContentAdapter().adaptationBillContent(mealOrder, dataBean);
CC.obtainBuilder(ComponentName.COMPONENT_PRINT)
.setActionName("printActivity")
.addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_BILL)
.addParam(PrintConstans.PRINT_CONTENT, printContent)
.addParam(PrintConstans.PRINT_ORDER_NO,doshokuOrder.getOrderNo())
.addParam(PrintConstans.PRINT_ORDER_NO,mealOrder.getOrderNo())
.build()
.callAsyncCallbackOnMainThread((cc, result) -> {
Log.e("error", "是否成功打印:" + result.isSuccess());
if (printStub) {
printPosStub(orderDetailItem,doshokuOrder,dataBean);
printPosStub(orderDetailItem,mealOrder,dataBean);
}
doshokuOrder.initialization();
mealOrder.initialization();
});
}
......
package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.text.TextUtils;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.pay.bean.PosActionStatusExceptionParam;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.RefundRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.RefundRespose;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.pos.RefundRequest;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.jess.arms.base.BaseFragmentActivity;
......
package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.text.TextUtils;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.common.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.pay.bean.PosActionStatusExceptionParam;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.AdjustTipRequest;
import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.AdjustTipRespose;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.device.pos.hyweb.bean.request.pos.AdjustTipRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.gingersoft.gsa.cloud.ui.widget.dialog.KeyboardDialog;
import com.jess.arms.base.BaseFragmentActivity;
......
......@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.action.table;
import android.app.Activity;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
/**
......@@ -10,7 +11,7 @@ import com.gingersoft.gsa.cloud.common.core.table.TableBean;
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-轉台{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
* 描述:餐檯模式-轉台{@link TableActivity}
*/
public class MoveTableAction extends TableAction {
......
......@@ -8,14 +8,15 @@ import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.order.bean.response.OrderResponse;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.order.order.MealOrder;
import com.gingersoft.gsa.cloud.print.bean.PrintContent;
import com.gingersoft.gsa.cloud.print.bean.adapter.PrintContentAdapter;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.action.OnNetworkCallbackListener;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse;
import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil;
import com.gingersoft.gsa.cloud.table.mvp.presenter.TablePresenter;
import com.gingersoft.gsa.cloud.table.mvp.presenter.table.TablePresenter;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
......@@ -28,7 +29,7 @@ import java.util.List;
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-打印上菜紙{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
* 描述:餐檯模式-打印上菜紙{@link TableActivity}
*/
public class PrintServingPaperAction extends TableAction {
......@@ -73,10 +74,10 @@ public class PrintServingPaperAction extends TableAction {
if (respose.isSuccess()) {
DoshokuOrder doshokuOrder = DoshokuOrder.getInstance();
doshokuOrder.setOpenTableInfo(new TableBean.DataBean());
MealOrder mealOrder = MealOrder.getInstance();
mealOrder.setOpenTableInfo(new TableBean.DataBean());
TableBean.DataBean tableInfo = doshokuOrder.getOpenTableInfo();
TableBean.DataBean tableInfo = mealOrder.getOpenTableInfo();
tableInfo.setPerson(0);
OrderResponse orderBean = respose.getData();
......@@ -90,16 +91,16 @@ public class PrintServingPaperAction extends TableAction {
List<OrderResponse.OrderDetailsBean> orderDetailsBeans = respose.getData().getOrderDetails();
//緩存訂單信息
doshokuOrder.setOrderPlaced(new OrderResponse(orderBean));
mealOrder.setOrderPlaced(new OrderResponse(orderBean));
//緩存食品信息
List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(orderDetailsBeans));
doshokuOrder.getShoppingCart().setOrderCommodityList(orderDetailList);
mealOrder.getShoppingCart().setOrderCommodityList(orderDetailList);
} else {
doshokuOrder.setOrderPlaced(null);
doshokuOrder.getShoppingCart().setOrderCommodityList(new ArrayList<>());
mealOrder.setOrderPlaced(null);
mealOrder.getShoppingCart().setOrderCommodityList(new ArrayList<>());
}
doshokuOrder.setOpenTableInfo(tableBean);
mealOrder.setOpenTableInfo(tableBean);
printParper(tableBean);
} else {
......@@ -135,7 +136,7 @@ public class PrintServingPaperAction extends TableAction {
* 打印上菜紙
*/
private void printParper(TableBean.DataBean tableBean) {
PrintContent printContent = new PrintContentAdapter().adaptationServingPaperContent(DoshokuOrder.getInstance(), tableBean);
PrintContent printContent = new PrintContentAdapter().adaptationServingPaperContent(MealOrder.getInstance(), tableBean);
CC.obtainBuilder(ComponentName.COMPONENT_PRINT)
.setActionName("printActivity")
.addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_SERVE)
......@@ -144,7 +145,7 @@ public class PrintServingPaperAction extends TableAction {
.build()
.callAsyncCallbackOnMainThread((cc, result) -> {
//清空賬單數據
DoshokuOrder.getInstance().initialization();
MealOrder.getInstance().initialization();
cancel();
});
}
......
......@@ -18,7 +18,8 @@ import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.table.mvp.action.OnNetworkCallbackListener;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.FoodSummary;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.PrintQRCodeResponse;
import com.gingersoft.gsa.cloud.table.mvp.presenter.TablePresenter;
import com.gingersoft.gsa.cloud.table.mvp.presenter.table.TablePresenter;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.SkyOrderDialog;
import com.gingersoft.gsa.cloud.ui.widget.dialog.BaseRetryDialog;
import com.gingersoft.gsa.cloud.ui.widget.dialog.DialogAnimationListener;
......@@ -33,7 +34,7 @@ import java.util.List;
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-打印skyorder碼{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
* 描述:餐檯模式-打印skyorder碼{@link TableActivity}
*/
public class PrintSkyorderAction extends TableAction {
......
......@@ -4,6 +4,7 @@ import android.app.Activity;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
......@@ -12,7 +13,7 @@ import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-重置skyorder餐檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
* 描述:餐檯模式-重置skyorder餐檯{@link TableActivity}
*/
public class ResetSkyorderAction extends TableAction {
......
......@@ -4,6 +4,7 @@ import android.app.Activity;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
......@@ -12,7 +13,7 @@ import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-重置餐檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
* 描述:餐檯模式-重置餐檯{@link TableActivity}
*/
public class ResetTableAction extends TableAction {
......
......@@ -3,13 +3,14 @@ package com.gingersoft.gsa.cloud.table.mvp.action.table;
import android.app.Activity;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.table.TableActivity;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-分檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
* 描述:餐檯模式-分檯{@link TableActivity}
*/
public class SplitTableAction extends TableAction {
......
package com.gingersoft.gsa.cloud.table.mvp.model.constant;
package com.gingersoft.gsa.cloud.table.mvp.constant;
/**
* @author : bin
......@@ -13,4 +13,5 @@ public interface SkyOrderConstant {
String delivery_time_hour = "delivery_time_hour";
String delivery_time_minute = "delivery_time_minute";
}
package com.gingersoft.gsa.cloud.table.mvp.contract;
import android.widget.Chronometer;
import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse;
import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import io.reactivex.Observable;
import io.reactivex.Single;
import okhttp3.RequestBody;
......@@ -22,25 +26,27 @@ import okhttp3.RequestBody;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface BaseOrderContract {
public interface BaseMealContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void initAutoQuit();
void recordOperat(boolean isPressButtonSound);
void setFoodAdapter(DefaultAdapter adapter);
void setMealCartAdapter( DefaultAdapter adapter);
void setBillDetailAdapter(DefaultAdapter adapter);
void setOrderDetailAdapter(DefaultAdapter adapter);
void returnTableActivity(boolean initTable);
void returnBeforeActivity(boolean initTable);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
Observable<BaseResult> toOrderPay(RequestBody requestBody);
Observable<BaseResult> updateOrder(RequestBody formBody);
Observable<BaseOrderResponse> calculationPrice(long orderId);
Single<BaseResult> updateOrder(RequestBody formBody);
}
}
package com.gingersoft.gsa.cloud.table.mvp.contract;
import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
import com.gingersoft.gsa.cloud.order.bean.discount.MemberWalletCoupon;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
import com.kingja.loadsir.callback.Callback;
import com.kingja.loadsir.core.LoadService;
import com.kingja.loadsir.core.LoadSir;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.Single;
import retrofit2.http.Query;
/**
......@@ -33,7 +27,7 @@ public interface CouponContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void returnMemberCouponList(List<MemberCoupon> memberCoupons);
void returnMemberCouponList(List<MemberWalletCoupon> memberCoupons);
void showLoadSirSuccess();
......@@ -45,7 +39,7 @@ public interface CouponContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
Single<List<MemberCoupon>> getMemberWalletList(int brandId, long memberId, long limitType, long pageIndex, long pageSize);
Single<List<MemberWalletCoupon>> getMemberWalletList(int brandId, long memberId, long limitType, long pageIndex, long pageSize);
}
}
......@@ -2,16 +2,20 @@ package com.gingersoft.gsa.cloud.table.mvp.contract;
import android.content.Intent;
import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionTableFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.table.RegionTableFragment;
import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.Single;
import okhttp3.RequestBody;
......@@ -27,10 +31,12 @@ import okhttp3.RequestBody;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface OrderContentContract {
public interface MealBillContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends BaseOrderContract.View {
interface View extends BaseMealContract.View {
void initBillAmount(double wholeAmount, double totalAmount);
void returnTableList(List<TableBean.DataBean> dataBeanList);
......@@ -50,14 +56,8 @@ public interface OrderContentContract {
void setTopFunctionAdapter(DefaultAdapter adapter);
void setOrderDetailAdapter(DefaultAdapter adapter);
void setTopFunctionRecycleLayoutManager();
void setFoodRecycleLayoutManager(int orientation);
void setTopFunctionRecycleSpanCount(int size);
void setFoodRecycleSpanCount(int size);
void printSuccess();
......@@ -70,26 +70,26 @@ public interface OrderContentContract {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends BaseOrderContract.Model {
interface Model extends BaseMealContract.Model {
List<Discount> queryDB_DiscountList(byte discountScope, byte discountType);
// List<Discount> queryDB_DiscountList(byte discountScope, byte discountType);
Observable<BaseOrderResponse> createOrder(RequestBody requestBody);
Single<BaseOrderResponse> createOrder(RequestBody requestBody);
Observable<BaseOrderResponse> addFood(RequestBody requestBody);
Single<BaseOrderResponse> addOrderFood(RequestBody requestBody);
Observable<BaseOrderResponse> loadOrder(long orderId);
Single<BaseOrderResponse> loadOrder(long orderId);
Observable<BaseOrderResponse> printOrder(RequestBody request);
Single<BaseOrderResponse> printOrder(RequestBody request);
Observable<TableBean> getTables(int restaurantId);
Observable<BaseResult> getTable(int tableId, String tableNumber);
Single<BaseResult> getTable(int tableId, String tableNumber);
Observable<BaseOrderResponse> transferFood(RequestBody requestBody);
Single<BaseOrderResponse> transferFood(RequestBody requestBody);
Observable<BaseResult> getSplitTables(int tableId);
Single<BaseResult> getSplitTables(int tableId);
Observable<BaseResult> queryCoupon(int tableId,Long memberId,long couponMemberId ,String couponNo, int restaurantId);
Single<BaseResult> queryCoupon(int tableId, Long memberId, long couponMemberId, String couponNo, int restaurantId);
}
}
package com.gingersoft.supply_chain.mvp.contract;
package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
......@@ -8,7 +8,7 @@ import com.jess.arms.mvp.IModel;
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/08/2021 15:24
* Created by MVPArmsTemplate on 04/17/2021 10:46
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
......@@ -16,7 +16,7 @@ import com.jess.arms.mvp.IModel;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface InflowWaterContract {
public interface MealDiscountContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
......
......@@ -11,6 +11,9 @@ import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
import io.reactivex.Flowable;
import io.reactivex.Single;
/**
* ================================================
......@@ -24,7 +27,7 @@ import java.util.List;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface FineItemAllContract {
public interface MealFineAllContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
......
package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/24/2021 18:33
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface MealFineContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
}
}
......@@ -10,6 +10,8 @@ import com.jess.arms.mvp.IModel;
import java.util.List;
import io.reactivex.Single;
/**
* ================================================
......@@ -23,7 +25,7 @@ import java.util.List;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface FineItemOneselfContract {
public interface MealFineOneselfContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
......
......@@ -3,10 +3,13 @@ package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.Single;
import okhttp3.RequestBody;
/**
......@@ -21,12 +24,12 @@ import okhttp3.RequestBody;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface OrderPayContract {
interface View extends BaseOrderContract.View {
public interface MealPayContract {
interface View extends BaseMealContract.View {
void showTipDialog(String msg, String btnCancelInfo, String btnOkInfo);
void recordOperat(boolean isPressButtonSound);
void showStatusDialog(int operatType);
void showTipDialog(String msg, String btnCancelInfo, String btnOkInfo);
void paySuccess();
......@@ -34,14 +37,12 @@ public interface OrderPayContract {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends BaseOrderContract.Model {
interface Model extends BaseMealContract.Model {
Observable<BaseResult> getPayMethods(int brandId,int restaurantId,int payType);
Single<BaseResult> toOrderPay(RequestBody requestBody);
Observable<BaseResult> updateOrderPay(RequestBody requestBody);
Single<BaseResult> getPayMethods(int brandId,int restaurantId,int payType);
// Observable<Object> getN5SaleTxnId(String url);
//
// Observable<BaseResult> updateOrderStatus( RequestBody formBody);
Single<BaseResult> updateOrderPay(RequestBody requestBody);
}
}
......@@ -7,7 +7,8 @@ import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import java.util.List;
import androidx.recyclerview.widget.RecyclerView;
import io.reactivex.Observable;
import io.reactivex.Single;
import io.reactivex.Single;
import okhttp3.RequestBody;
......@@ -23,7 +24,7 @@ import okhttp3.RequestBody;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface SoldoutCtrlContract {
public interface MealSoldoutContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
......@@ -49,12 +50,6 @@ public interface SoldoutCtrlContract {
boolean isInitFineItemLayout();
void initFineItemTabBarViewPage();
void showFoodLayoutVisibility();
void showFineItemLayoutVisibility();
void showTvRestore(boolean show);
void showViewModeVisibility(int... viewMode);
......@@ -71,18 +66,18 @@ public interface SoldoutCtrlContract {
List<Food> queryDB_FoodListByIds(String [] ids);
Observable<BaseResult> getCurrentSoldoutFood(RequestBody requestBody);
Single<BaseResult> getCurrentSoldoutFood(RequestBody requestBody);
Observable<BaseResult> insertSoldoutCtrl(RequestBody requestBody, int operatTtpe, int type);
Single<BaseResult> insertSoldoutCtrl(RequestBody requestBody, int operatTtpe, int type);
Observable<BaseResult> restoreSoldoutCtrl( RequestBody requestBody);
Single<BaseResult> restoreSoldoutCtrl( RequestBody requestBody);
Observable<BaseResult> batchRestoreSoldoutCtrl( RequestBody requestBody);
Single<BaseResult> batchRestoreSoldoutCtrl( RequestBody requestBody);
Observable<BaseResult> updateInvisible( RequestBody requestBody);
Single<BaseResult> updateInvisible( RequestBody requestBody);
Observable<BaseResult> downFoodList(int restaurantId);
Single<BaseResult> downFoodList(int restaurantId);
Observable<BaseResult> downFoodModifier(int restaurantId);
Single<BaseResult> downFoodModifier(int restaurantId);
}
}
package com.gingersoft.gsa.cloud.table.mvp.contract;
import android.app.Activity;
import android.widget.BaseAdapter;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.member.MemberInfo;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.FoodCombo;
import com.gingersoft.gsa.cloud.database.bean.FoodModifier;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse;
import com.jess.arms.base.DefaultAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.meal.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.CancelFoodDialog;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import java.util.List;
import androidx.recyclerview.widget.RecyclerView;
import io.reactivex.Observable;
import io.reactivex.Single;
import okhttp3.RequestBody;
......@@ -27,7 +25,7 @@ import okhttp3.RequestBody;
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 12/27/2019 19:17
* Created by MVPArmsTemplate on 04/17/2021 10:40
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
......@@ -37,53 +35,17 @@ import okhttp3.RequestBody;
*/
public interface MealStandContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends BaseOrderContract.View {
interface View extends BaseMealContract.View {
boolean isInitFineItemLayout();
int getRestaurantId();
void initFineItemTabBarViewPage();
void updateMemberInfo(MemberInfo memberInfo);
void setCurrentFinePage();
void setPluMode();
void resetPluMode();
void recordOperat(boolean isPressButtonSound);
void setCurrViewMode(int... viewMode);
void showChoosePeopleNumDialog(boolean isNeedCancel);
void setPrinterLocalmachine(boolean isPrint);
void setTableInfoDialogAdapter(BaseAdapter adapter);
void setSelectFoodAdapter(RecyclerView.Adapter adapter);
void setFoodGroupAdapter(DefaultAdapter adapter);
void setFoodAdapter(DefaultAdapter adapter);
void setComboAdapter(DefaultAdapter adapter);
void setModifierAdapter(DefaultAdapter adapter);
void setDiscountAdapter(DefaultAdapter adapter);
void setSelectFoodRecycleLayoutManager();
void setFoodGroupRecycleLayoutManager(int orientation);
void setFoodRecycleLayoutManager(int orientation);
void setComboRecycleLayoutManager(int orientation);
void showCancelFoodDialog(OrderDetail deleteFood);
void setModifierRecycleLayoutManager(int orientation);
void setCustomFoodDialog(int customType, OrderDetail foodItem);
void setDiscountRecycleLayoutManager(int orientation);
CancelFoodDialog getCancelFoodDialog();
void setFoodGroupRecycleSpanCount(int size);
......@@ -93,58 +55,59 @@ public interface MealStandContract {
void setModifierRecycleSpanCount(int size);
void setDiscountRecycleSpanCount(int size);
void showViewModeVisibility(int... viewMode);
void showModifyLayoutVisibility(boolean show);
void showBtnMealModifyRestoreVisibility(boolean show);
void showStandOperLayoutVisibility(boolean show);
void setOrderFoodCount(String number);
void setMealRvScrollToPosition(int position);
int getCurrentViewMode();
List<Food> getFoodGroupList();
void setPluMode();
Activity getActivity();
void resetPluMode();
int getFromType();
void setMealRvScrollToPosition(int position);
void setModifierTop(int Margins);
void resetSelect(int position, Food datasBean);
void setCustomFoodDialog(int customType, OrderDetail foodItem);
}
void initFoodGroupAdapter(List<Food> foodGroupList);
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends BaseOrderContract.Model {
void updateCouponSelects(boolean sticky);
Observable<BaseResult> getCurrentSoldoutFood(RequestBody requestBody);
void notifyFoodGroupAdapter();
Observable<BaseResult> createOrder(RequestBody requestBody);
void notifyFoodAdapter();
Observable<BaseResult> addFood(RequestBody requestBody);
void notifyComboAdapterAdapter();
Observable<BaseOrderResponse> loadOrder(long orderId);
void notifyModifierAdapterAdapter();
// Observable<BaseOrderResponse> deleteFood(List<Map<Byte, DeleteOrderRequest>> mapsDelete, long orderId, byte type, int reasonId);
Observable<BaseOrderResponse> deleteFood(RequestBody requestBody);
Activity getActivity();
Observable<BaseOrderResponse> printOrder(RequestBody requestBody);
int getFromType();
void clearKeyBoardInput();
}
Observable<BaseResult> getRestaurantFoodReason(int brandId, int restaurantId, int type);
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends BaseMealContract.Model {
Observable<BaseResult> queryMember(int type, String parm, String shopName,int tableId,String tableNumber);
Single<BaseResult> getCurrentSoldoutFood(RequestBody requestBody);
Observable<BaseResult> memberUse(int tableId, String tableNumber, long memberId);
Single<BaseResult> createOrder(RequestBody requestBody);
Observable<BaseResult> memberUseCancel(int tableId, String tableNumber, long memberId);
Single<BaseResult> addOrderFood(RequestBody requestBody);
List<Food> queryDB_AllFoodList();
Single<BaseResult> getRestaurantFoodReason(int brandId, int restaurantId, int type);
List<Food> queryDB_FoodGroupList(int foodSummary);
List<Food> queryDB_FoodList(long parentId,int foodSummary);
List<Food> queryDB_FoodList(long parentId, int foodSummary);
Food queryFoodByFlu(String plu);
List<Modifier> queryDB_ModifierList(long fid, int mode);
......@@ -152,8 +115,7 @@ public interface MealStandContract {
List<FoodCombo> isComboFood(long fid);
List<FoodModifier> queryDB_FoodModifierList(long fid);
List<Discount> queryDB_DiscountList(byte discountScope, byte discountType);
}
}
package com.gingersoft.gsa.cloud.table.mvp.contract;
import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
import com.kingja.loadsir.callback.Callback;
import java.util.List;
import io.reactivex.Single;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface NomalDiscountContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void returnBillCoupon(List<Discount> discounts);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
List<Discount> queryDB_DiscountList(byte discountScope, byte discountType);
}
}
......@@ -2,13 +2,13 @@ package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllOrderFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.order.AllOrderFragment;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.Single;
/**
......@@ -41,15 +41,15 @@ public interface OrderCenterContract {
int getPageSize();
void setOnCheckedChangedListener(OrderManagerResponse checkOrderBean);
void setOnCheckedChangedListener(OrderManagerResponse checkedOrder);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
Observable<BaseResult> loadOrderList(int restaurantId, String orderType,String status, int pageIndex, int pageSize);
Single<BaseResult> loadOrderList(int restaurantId, String orderType,String status, int pageIndex, int pageSize);
Observable<BaseResult> cancelOrder(long orderId, int restaurantId, String orderType,String status);
Single<BaseResult> cancelOrder(long orderId, int restaurantId, String orderType,String status);
}
}
......@@ -4,7 +4,7 @@ import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
import io.reactivex.Observable;
import io.reactivex.Single;
/**
......@@ -40,8 +40,8 @@ public interface OrderDetailContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
Observable<BaseResult> getOrderDetailItem(long orderId);
Single<BaseResult> getOrderDetailItem(long orderId);
Observable<BaseResult> cancelOrder(long orderId);
Single<BaseResult> cancelOrder(long orderId);
}
}
package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.member.MemberInfo;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
import io.reactivex.Observable;
import io.reactivex.Single;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/24/2021 16:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface RiceponMemberDialogContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void returnMemberInfo(MemberInfo memberInfo);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
Single<BaseResult> queryMember(int type, String parm, String shopName, int tableId, String tableNumber);
}
}
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