Commit 33afd942 by Wyh

Merge remote-tracking branch 'origin/dev' into dev

parents 432aae5f 689f9821
...@@ -86,7 +86,7 @@ ...@@ -86,7 +86,7 @@
</provider> </provider>
<activity <activity
android:name=".mvp.ui.activity.mvp.ui.activity.WelcomeActivity" android:name=".mvp.ui.activity.WelcomeActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait"> android:screenOrientation="portrait">
<intent-filter> <intent-filter>
...@@ -103,17 +103,17 @@ ...@@ -103,17 +103,17 @@
android:exported="true" /> android:exported="true" />
<activity <activity
android:name=".mvp.ui.activity.mvp.ui.activity.LoginActivity" android:name=".mvp.ui.activity.LoginActivity"
android:launchMode="singleTop" android:launchMode="singleTop"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".mvp.ui.activity.mvp.ui.activity.SwitchServerActivity" android:name=".mvp.ui.activity.SwitchServerActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".mvp.ui.activity.mvp.ui.activity.RecoverPasswordActivity" android:name=".mvp.ui.activity.RecoverPasswordActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".mvp.ui.activity.mvp.ui.activity.ChooseRestaurantActivity" android:name=".mvp.ui.activity.ChooseRestaurantActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<meta-data <meta-data
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
android:resizeableActivity="true" android:resizeableActivity="true"
android:roundIcon="@mipmap/ic_launcher" android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"> android:supportsRtl="true">
<activity android:name=".mvp.ui.activity.mvp.ui.activity.WelcomeActivity"> <activity android:name=".mvp.ui.activity.WelcomeActivity">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
...@@ -28,19 +28,19 @@ ...@@ -28,19 +28,19 @@
</intent-filter> </intent-filter>
</activity> </activity>
<activity <activity
android:name=".mvp.ui.activity.mvp.ui.activity.LoginActivity" android:name=".mvp.ui.activity.LoginActivity"
android:launchMode="singleTask" /> android:launchMode="singleTask" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.SwitchServerActivity" /> <activity android:name=".mvp.ui.activity.SwitchServerActivity" />
<!-- HywebPOS支付頁 --> <!-- HywebPOS支付頁 -->
<activity <activity
android:name="com.etps.aca.lib.activity.CommandActivity" android:name="com.etps.aca.lib.activity.CommandActivity"
android:exported="true" /> android:exported="true" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.ChooseRestaurantActivity" /> <activity android:name=".mvp.ui.activity.ChooseRestaurantActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.LoginOutActivity" /> <activity android:name=".mvp.ui.activity.LoginOutActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.RecoverPasswordActivity" /> <activity android:name=".mvp.ui.activity.RecoverPasswordActivity" />
<meta-data <meta-data
android:name="com.gingersoft.gsa.cloud.common.config.globalconfig.GlobalConfiguration" android:name="com.gingersoft.gsa.cloud.common.config.globalconfig.GlobalConfiguration"
......
package com.gingersoft.gsa.cloud.login; package com.gingersoft.gsa.cloud.login;
import android.content.Intent; import android.content.Intent;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult; import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil; import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent; import com.billy.cc.core.component.IComponent;
import com.etps.aca.lib.activity.CommandActivity; import com.etps.aca.lib.activity.CommandActivity;
import com.gingersoft.gsa.cloud.app.GsaCloudApplication; import com.gingersoft.gsa.cloud.app.GsaCloudApplication;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.component.ComponentAction; import com.gingersoft.gsa.cloud.component.ComponentAction;
import com.gingersoft.gsa.cloud.component.ComponentName; import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.ChooseRestaurantActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.ChooseRestaurantActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.LoginActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.SwitchServerActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.SwitchServerActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.WelcomeActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.WelcomeActivity;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.command.CommandImpl; import com.gingersoft.gsa.cloud.pay.pos.hyweb.command.CommandImpl;
public class ComponentLogin implements IComponent { public class ComponentLogin implements IComponent {
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.component; package com.gingersoft.gsa.cloud.login.di.component;
import dagger.Component; import dagger.Component;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.module.ChooseRestaurantModule; import com.gingersoft.gsa.cloud.login.di.module.ChooseRestaurantModule;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.ChooseRestaurantActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.ChooseRestaurantActivity;
@ActivityScope @ActivityScope
@Component(modules = ChooseRestaurantModule.class,dependencies = AppComponent.class) @Component(modules = ChooseRestaurantModule.class,dependencies = AppComponent.class)
......
...@@ -2,13 +2,12 @@ package com.gingersoft.gsa.cloud.login.di.component; ...@@ -2,13 +2,12 @@ package com.gingersoft.gsa.cloud.login.di.component;
import dagger.BindsInstance; import dagger.BindsInstance;
import dagger.Component; import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.login.di.module.LoginModule; import com.gingersoft.gsa.cloud.login.di.module.LoginModule;
import com.gingersoft.gsa.cloud.login.mvp.contract.LoginContract; import com.gingersoft.gsa.cloud.login.mvp.contract.LoginContract;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.LoginActivity;
/** /**
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.component; package com.gingersoft.gsa.cloud.login.di.component;
import dagger.Component; import dagger.Component;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.module.RecoverPasswordModule; import com.gingersoft.gsa.cloud.login.di.module.RecoverPasswordModule;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.RecoverPasswordActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.RecoverPasswordActivity;
@ActivityScope @ActivityScope
@Component(modules = RecoverPasswordModule.class,dependencies = AppComponent.class) @Component(modules = RecoverPasswordModule.class,dependencies = AppComponent.class)
......
...@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.login.di.module.SwitchServerModule; ...@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.login.di.module.SwitchServerModule;
import com.gingersoft.gsa.cloud.login.mvp.contract.SwitchServerContract; import com.gingersoft.gsa.cloud.login.mvp.contract.SwitchServerContract;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.SwitchServerActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.SwitchServerActivity;
/** /**
......
package com.gingersoft.gsa.cloud.login.di.component; package com.gingersoft.gsa.cloud.login.di.component;
import com.gingersoft.gsa.cloud.login.di.module.WelcomeModule; import com.gingersoft.gsa.cloud.login.di.module.WelcomeModule;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.WelcomeActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.WelcomeActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import dagger.Component; import dagger.Component;
@ActivityScope @ActivityScope
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.module; package com.gingersoft.gsa.cloud.login.di.module;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import dagger.Module; import dagger.Module;
import dagger.Provides; import dagger.Provides;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.ChooseRestaurantContract; import com.gingersoft.gsa.cloud.login.mvp.contract.ChooseRestaurantContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.model.ChooseRestaurantModel; import com.gingersoft.gsa.cloud.login.mvp.model.ChooseRestaurantModel;
@Module @Module
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.module; package com.gingersoft.gsa.cloud.login.di.module;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import dagger.Module; import dagger.Module;
import dagger.Provides; import dagger.Provides;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.RecoverPasswordContract; import com.gingersoft.gsa.cloud.login.mvp.contract.RecoverPasswordContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.model.RecoverPasswordModel; import com.gingersoft.gsa.cloud.login.mvp.model.RecoverPasswordModel;
@Module @Module
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract; package com.gingersoft.gsa.cloud.login.mvp.contract;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.restaurant.bean.BrandsBean; import com.gingersoft.gsa.cloud.common.core.restaurant.bean.BrandsBean;
......
...@@ -4,10 +4,8 @@ import android.app.Dialog; ...@@ -4,10 +4,8 @@ import android.app.Dialog;
import android.content.Intent; import android.content.Intent;
import android.view.Gravity; import android.view.Gravity;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.core.login.LoginBean; import com.gingersoft.gsa.cloud.common.core.login.LoginBean;
import com.gingersoft.gsa.cloud.common.core.restaurant.BrandInfo; import com.gingersoft.gsa.cloud.common.core.restaurant.BrandInfo;
...@@ -24,14 +22,13 @@ import com.gingersoft.gsa.cloud.component.ComponentName; ...@@ -24,14 +22,13 @@ import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.login.R; import com.gingersoft.gsa.cloud.login.R;
import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean; import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean;
import com.gingersoft.gsa.cloud.login.mvp.presenter.BaseLoginPresenter; import com.gingersoft.gsa.cloud.login.mvp.presenter.BaseLoginPresenter;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.ChooseRestaurantActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.ChooseRestaurantActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.LoginActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.SwitchServerActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.SwitchServerActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.LoginLimitAdapter; import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.LoginLimitAdapter;
import com.gingersoft.gsa.cloud.ui.utils.DialogUtils; import com.gingersoft.gsa.cloud.ui.utils.DialogUtils;
import com.gingersoft.gsa.cloud.ui.widget.dialog.ChooseRestaurantDialog; import com.gingersoft.gsa.cloud.ui.widget.dialog.ChooseRestaurantDialog;
import com.jess.arms.base.BaseActivity; import com.jess.arms.base.BaseActivity;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract; package com.gingersoft.gsa.cloud.login.mvp.contract;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.model; package com.gingersoft.gsa.cloud.login.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.restaurant.bean.BrandsBean; import com.gingersoft.gsa.cloud.common.core.restaurant.bean.BrandsBean;
import com.gingersoft.gsa.cloud.login.mvp.server.LoginService; import com.gingersoft.gsa.cloud.login.mvp.server.LoginService;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.ChooseRestaurantContract; import com.gingersoft.gsa.cloud.login.mvp.contract.ChooseRestaurantContract;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.integration.IRepositoryManager; import com.jess.arms.integration.IRepositoryManager;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.model; package com.gingersoft.gsa.cloud.login.mvp.model;
import android.app.Application; import android.app.Application;
import com.google.gson.Gson; import com.google.gson.Gson;
...@@ -8,7 +8,7 @@ import com.jess.arms.mvp.BaseModel; ...@@ -8,7 +8,7 @@ import com.jess.arms.mvp.BaseModel;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import javax.inject.Inject; import javax.inject.Inject;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.RecoverPasswordContract; import com.gingersoft.gsa.cloud.login.mvp.contract.RecoverPasswordContract;
@ActivityScope @ActivityScope
......
...@@ -3,7 +3,6 @@ package com.gingersoft.gsa.cloud.login.mvp.presenter; ...@@ -3,7 +3,6 @@ package com.gingersoft.gsa.cloud.login.mvp.presenter;
import android.app.Activity; import android.app.Activity;
import android.app.Application; import android.app.Application;
import android.content.Intent; import android.content.Intent;
import com.gingersoft.gsa.cloud.app.GsaCloudApplication; import com.gingersoft.gsa.cloud.app.GsaCloudApplication;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.constans.AppConstans; import com.gingersoft.gsa.cloud.common.constans.AppConstans;
...@@ -15,20 +14,15 @@ import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils; ...@@ -15,20 +14,15 @@ import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.common.utils.okhttpUtils.OkHttp3Utils; import com.gingersoft.gsa.cloud.common.utils.okhttpUtils.OkHttp3Utils;
import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean; import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean;
import com.gingersoft.gsa.cloud.login.mvp.contract.BaseLoginContract; import com.gingersoft.gsa.cloud.login.mvp.contract.BaseLoginContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.LoginActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.utils.DeviceUtils; import com.jess.arms.utils.DeviceUtils;
import com.jess.arms.utils.RxLifecycleUtils; import com.jess.arms.utils.RxLifecycleUtils;
import java.util.List; import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.annotations.NonNull; import io.reactivex.annotations.NonNull;
import io.reactivex.schedulers.Schedulers; import io.reactivex.schedulers.Schedulers;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.presenter; package com.gingersoft.gsa.cloud.login.mvp.presenter;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.restaurant.bean.BrandsBean; import com.gingersoft.gsa.cloud.common.core.restaurant.bean.BrandsBean;
import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils; import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil; import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean; import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.ChooseRestaurantContract; import com.gingersoft.gsa.cloud.login.mvp.contract.ChooseRestaurantContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.LoginActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
...@@ -16,11 +15,8 @@ import com.jess.arms.http.imageloader.ImageLoader; ...@@ -16,11 +15,8 @@ import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.utils.RxLifecycleUtils; import com.jess.arms.utils.RxLifecycleUtils;
import java.util.List; import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.annotations.NonNull; import io.reactivex.annotations.NonNull;
import io.reactivex.schedulers.Schedulers; import io.reactivex.schedulers.Schedulers;
......
...@@ -2,22 +2,19 @@ package com.gingersoft.gsa.cloud.login.mvp.presenter; ...@@ -2,22 +2,19 @@ package com.gingersoft.gsa.cloud.login.mvp.presenter;
import android.app.Application; import android.app.Application;
import android.text.TextUtils; import android.text.TextUtils;
import com.gingersoft.gsa.cloud.app.GsaCloudApplication; import com.gingersoft.gsa.cloud.app.GsaCloudApplication;
import com.gingersoft.gsa.cloud.common.oaId.DeviceID; import com.gingersoft.gsa.cloud.common.oaId.DeviceID;
import com.gingersoft.gsa.cloud.common.utils.LanguageUtils; import com.gingersoft.gsa.cloud.common.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.login.R; import com.gingersoft.gsa.cloud.login.R;
import com.gingersoft.gsa.cloud.login.mvp.contract.LoginContract; import com.gingersoft.gsa.cloud.login.mvp.contract.LoginContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity.LoginActivity; import com.gingersoft.gsa.cloud.login.mvp.ui.activity.LoginActivity;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.PermissionUtil; import com.jess.arms.utils.PermissionUtil;
import com.tbruyelle.rxpermissions2.RxPermissions; import com.tbruyelle.rxpermissions2.RxPermissions;
import java.util.List; import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import me.jessyan.rxerrorhandler.core.RxErrorHandler; import me.jessyan.rxerrorhandler.core.RxErrorHandler;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.presenter; package com.gingersoft.gsa.cloud.login.mvp.presenter;
import android.app.Application; import android.app.Application;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.mvp.BasePresenter; import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import me.jessyan.rxerrorhandler.core.RxErrorHandler; import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import javax.inject.Inject; import javax.inject.Inject;
import com.gingersoft.gsa.cloud.login.mvp.contract.RecoverPasswordContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.RecoverPasswordContract;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity; package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.app.Activity; import android.app.Activity;
import android.app.Dialog; import android.app.Dialog;
...@@ -7,13 +7,11 @@ import android.os.Bundle; ...@@ -7,13 +7,11 @@ import android.os.Bundle;
import android.view.Gravity; import android.view.Gravity;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.RecyclerView;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.constans.AppConstans; import com.gingersoft.gsa.cloud.common.constans.AppConstans;
import com.gingersoft.gsa.cloud.common.core.restaurant.BrandInfo; import com.gingersoft.gsa.cloud.common.core.restaurant.BrandInfo;
...@@ -29,11 +27,11 @@ import com.gingersoft.gsa.cloud.common.utils.other.TextUtil; ...@@ -29,11 +27,11 @@ import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.component.ComponentName; import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.login.R; import com.gingersoft.gsa.cloud.login.R;
import com.gingersoft.gsa.cloud.login.R2; import com.gingersoft.gsa.cloud.login.R2;
import com.gingersoft.gsa.cloud.login.di.component.DaggerChooseRestaurantComponent;
import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean; import com.gingersoft.gsa.cloud.login.mvp.bean.LoginLimitBean;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.component.DaggerChooseRestaurantComponent; import com.gingersoft.gsa.cloud.login.di.module.ChooseRestaurantModule;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.module.ChooseRestaurantModule; import com.gingersoft.gsa.cloud.login.mvp.contract.ChooseRestaurantContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.ChooseRestaurantContract; import com.gingersoft.gsa.cloud.login.mvp.presenter.ChooseRestaurantPresenter;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.presenter.ChooseRestaurantPresenter;
import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.LoginLimitAdapter; import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.LoginLimitAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.BasTextSectiontAdapter; import com.gingersoft.gsa.cloud.ui.adapter.BasTextSectiontAdapter;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionHeader; import com.gingersoft.gsa.cloud.ui.bean.view.SectionHeader;
...@@ -48,15 +46,11 @@ import com.qmuiteam.qmui.widget.QMUITopBar; ...@@ -48,15 +46,11 @@ import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.section.QMUISection; import com.qmuiteam.qmui.widget.section.QMUISection;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionAdapter; import com.qmuiteam.qmui.widget.section.QMUIStickySectionAdapter;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout; import com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import javax.inject.Inject; import javax.inject.Inject;
import butterknife.BindView; import butterknife.BindView;
import static com.jess.arms.utils.Preconditions.checkNotNull; import static com.jess.arms.utils.Preconditions.checkNotNull;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity; package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.annotation.SuppressLint; import android.annotation.SuppressLint;
import android.app.Activity; import android.app.Activity;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity; package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.app.Activity; import android.app.Activity;
import android.os.Bundle; import android.os.Bundle;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity; package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.gingersoft.gsa.cloud.login.R; import com.gingersoft.gsa.cloud.login.R;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.component.DaggerRecoverPasswordComponent; import com.gingersoft.gsa.cloud.login.di.component.DaggerRecoverPasswordComponent;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.di.module.RecoverPasswordModule; import com.gingersoft.gsa.cloud.login.di.module.RecoverPasswordModule;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.contract.RecoverPasswordContract; import com.gingersoft.gsa.cloud.login.mvp.contract.RecoverPasswordContract;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.presenter.RecoverPasswordPresenter; import com.gingersoft.gsa.cloud.login.mvp.presenter.RecoverPasswordPresenter;
import com.jess.arms.base.BaseActivity; import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import static com.jess.arms.utils.Preconditions.checkNotNull; import static com.jess.arms.utils.Preconditions.checkNotNull;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity; package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity; package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.animation.AnimatorSet; import android.animation.AnimatorSet;
import android.animation.ObjectAnimator; import android.animation.ObjectAnimator;
...@@ -41,6 +41,7 @@ import com.gingersoft.gsa.cloud.login.mvp.bean.GuideBean; ...@@ -41,6 +41,7 @@ import com.gingersoft.gsa.cloud.login.mvp.bean.GuideBean;
import com.gingersoft.gsa.cloud.login.mvp.contract.LoginInterfaceImpl; import com.gingersoft.gsa.cloud.login.mvp.contract.LoginInterfaceImpl;
import com.gingersoft.gsa.cloud.login.mvp.contract.WelcomeContract; import com.gingersoft.gsa.cloud.login.mvp.contract.WelcomeContract;
import com.gingersoft.gsa.cloud.login.mvp.presenter.WelcomePresenter; import com.gingersoft.gsa.cloud.login.mvp.presenter.WelcomePresenter;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.ChooseRestaurantActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.GuideAdapter; import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.GuideAdapter;
import com.gingersoft.gsa.cloud.ui.widget.Indicator.UIndicator; import com.gingersoft.gsa.cloud.ui.widget.Indicator.UIndicator;
import com.gyf.immersionbar.ImmersionBar; import com.gyf.immersionbar.ImmersionBar;
...@@ -137,7 +138,7 @@ public class WelcomeActivity extends LoginInterfaceImpl<WelcomePresenter> implem ...@@ -137,7 +138,7 @@ public class WelcomeActivity extends LoginInterfaceImpl<WelcomePresenter> implem
intent.putExtra("form", clazz.getName()); intent.putExtra("form", clazz.getName());
launchActivity(intent); launchActivity(intent);
} else { } else {
startActivity(new Intent(mContext, LoginActivity.class)); startActivity(new Intent(mContext,LoginActivity.class));
} }
} else { } else {
startActivity(new Intent(mContext, LoginActivity.class)); startActivity(new Intent(mContext, LoginActivity.class));
......
...@@ -3,7 +3,6 @@ ...@@ -3,7 +3,6 @@
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/theme_background_color"
android:orientation="vertical"> android:orientation="vertical">
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
...@@ -16,5 +15,6 @@ ...@@ -16,5 +15,6 @@
android:id="@+id/section_layout" android:id="@+id/section_layout"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants" /> android:descendantFocusability="blocksDescendants"
android:background="@color/theme_background_color"/>
</LinearLayout> </LinearLayout>
\ No newline at end of file
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
android:id="@+id/iv_recover_pwd_back" android:id="@+id/iv_recover_pwd_back"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:paddingLeft="@dimen/dp_15" android:paddingLeft="@dimen/dp_15"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
android:src="@drawable/ic_black_back" android:src="@drawable/ic_black_back"
custom:layout_constraintLeft_toLeftOf="parent" custom:layout_constraintLeft_toLeftOf="parent"
custom:layout_constraintTop_toTopOf="parent" /> custom:layout_constraintTop_toTopOf="parent" />
......
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
<activity <activity
android:name=".mvp.ui.activity.NewMainActivity" android:name=".mvp.ui.activity.NewMainActivity"
android:launchMode="singleTask" android:launchMode="singleTask"
android:alwaysRetainTaskState="true"
android:theme="@style/MainTheme"> android:theme="@style/MainTheme">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
......
...@@ -56,9 +56,9 @@ public class ComponentMain implements IComponent { ...@@ -56,9 +56,9 @@ public class ComponentMain implements IComponent {
*/ */
public static final FModule[] employee = { public static final FModule[] employee = {
new FModule("main/employee", 0, 0), new FModule("main/employee", 0, 0),
new FModule("main/employee/management", R.drawable.ic_staff_management, R.drawable.ic_staff_management_close), new FModule("main/employee/management", R.drawable.ic_staff_management_close, R.drawable.ic_staff_management_close),
new FModule("main/employee/delivery", R.drawable.ic_authority_management, R.drawable.ic_authority_management_close), new FModule("main/employee/delivery", R.drawable.ic_authority_management_close, R.drawable.ic_authority_management_close),
new FModule("main/employee/operationRecord", R.drawable.ic_operation_record, R.drawable.ic_operation_record_close) new FModule("main/employee/operationRecord", R.drawable.ic_operation_record_close, R.drawable.ic_operation_record_close)
}; };
} }
...@@ -135,9 +135,6 @@ public class ComponentMain implements IComponent { ...@@ -135,9 +135,6 @@ public class ComponentMain implements IComponent {
Intent intent = new Intent(cc.getContext(), NewMainActivity.class); Intent intent = new Intent(cc.getContext(), NewMainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
cc.getContext().startActivity(intent); cc.getContext().startActivity(intent);
// CCUtil.createNavigateIntent(cc, NewMainActivity.class);
// CC.sendCCResult(cc.getCallId(), CCResult.success());
} }
} }
...@@ -49,7 +49,7 @@ public interface BusinessReportContract { ...@@ -49,7 +49,7 @@ public interface BusinessReportContract {
interface Model extends IModel { interface Model extends IModel {
Observable<MainBusinessBean> getRestaurantBusinessAmount(Map<String, String> map); Observable<MainBusinessBean> getRestaurantBusinessAmount(Map<String, String> map);
Observable<BusinessDetailsBean> getRestaurantBusinessDetails(Map<String, String> map); // Observable<BusinessDetailsBean> getRestaurantBusinessDetails(Map<String, String> map);
Observable<DaySalesReportBean> getDaySalesReport(Map<String, String> map); Observable<DaySalesReportBean> getDaySalesReport(Map<String, String> map);
......
...@@ -40,7 +40,7 @@ public interface SalesContract { ...@@ -40,7 +40,7 @@ public interface SalesContract {
interface Model extends IModel { interface Model extends IModel {
Observable<SalesFoodsBean> getSalesReportInfo(Map<String, Object> map); Observable<SalesFoodsBean> getSalesReportInfo(Map<String, Object> map);
Observable<SalesFoodsBean> getSalesReportInfo(RequestBody requestBody); // Observable<SalesFoodsBean> getSalesReportInfo(RequestBody requestBody);
Observable<DeliveryLineChartBean> getDeliveryOrderCurveInfo(Map<String, Object> map); Observable<DeliveryLineChartBean> getDeliveryOrderCurveInfo(Map<String, Object> map);
......
...@@ -59,11 +59,11 @@ public class BusinessReportModel extends BaseModel implements BusinessReportCont ...@@ -59,11 +59,11 @@ public class BusinessReportModel extends BaseModel implements BusinessReportCont
.getRestaurantAmount(map); .getRestaurantAmount(map);
} }
@Override // @Override
public Observable<BusinessDetailsBean> getRestaurantBusinessDetails(Map<String, String> map) { // public Observable<BusinessDetailsBean> getRestaurantBusinessDetails(Map<String, String> map) {
return mRepositoryManager.obtainRetrofitService(MainReportService.class) // return mRepositoryManager.obtainRetrofitService(MainReportService.class)
.getRestaurantDetails(map); // .getRestaurantDetails(map);
} // }
@Override @Override
public Observable<DaySalesReportBean> getDaySalesReport(Map<String, String> map) { public Observable<DaySalesReportBean> getDaySalesReport(Map<String, String> map) {
......
...@@ -57,11 +57,11 @@ public class SalesModel extends BaseModel implements SalesContract.Model { ...@@ -57,11 +57,11 @@ public class SalesModel extends BaseModel implements SalesContract.Model {
.getSalesReportInfo(map); .getSalesReportInfo(map);
} }
@Override // @Override
public Observable<SalesFoodsBean> getSalesReportInfo(RequestBody requestBody) { // public Observable<SalesFoodsBean> getSalesReportInfo(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(MainReportService.class) // return mRepositoryManager.obtainRetrofitService(MainReportService.class)
.getSalesReportInfo(requestBody); // .getSalesReportInfo(requestBody);
} // }
@Override @Override
public Observable<DeliveryLineChartBean> getDeliveryOrderCurveInfo(Map<String, Object> map) { public Observable<DeliveryLineChartBean> getDeliveryOrderCurveInfo(Map<String, Object> map) {
......
...@@ -41,9 +41,9 @@ public interface MainReportService { ...@@ -41,9 +41,9 @@ public interface MainReportService {
Observable<SalesFoodsBean> getSalesReportInfo(@QueryMap Map<String, Object> map); Observable<SalesFoodsBean> getSalesReportInfo(@QueryMap Map<String, Object> map);
//銷售分析報表 //銷售分析報表
@Headers({"Domain-Name: wechat_report"}) // @Headers({"Domain-Name: wechat_report"})
@POST("report/findFoodTop" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) // @POST("report/findFoodTop" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<SalesFoodsBean> getSalesReportInfo(@Body RequestBody requestBody); // Observable<SalesFoodsBean> getSalesReportInfo(@Body RequestBody requestBody);
//外送訂單折線圖 //外送訂單折線圖
@Headers({"Domain-Name: gsa_report"}) @Headers({"Domain-Name: gsa_report"})
...@@ -60,10 +60,10 @@ public interface MainReportService { ...@@ -60,10 +60,10 @@ public interface MainReportService {
@GET("restaurantOperation/business" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @GET("restaurantOperation/business" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<MainBusinessBean> getRestaurantReport(@Query("restaurantId") String restaurantId); Observable<MainBusinessBean> getRestaurantReport(@Query("restaurantId") String restaurantId);
//營業詳情 // //營業詳情
@Headers({"Domain-Name: gsa_report"}) // @Headers({"Domain-Name: gsa_report"})
@GET("restaurantOperation/business/dtails" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) // @GET("restaurantOperation/business/dtails" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BusinessDetailsBean> getRestaurantDetails(@QueryMap Map<String, String> map); // Observable<BusinessDetailsBean> getRestaurantDetails(@QueryMap Map<String, String> map);
//營業金額 //營業金額
@Headers({"Domain-Name: gsa_report"}) @Headers({"Domain-Name: gsa_report"})
...@@ -78,12 +78,12 @@ public interface MainReportService { ...@@ -78,12 +78,12 @@ public interface MainReportService {
@GET("user/resource/list" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @GET("user/resource/list" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<String> getRestaurantFunList(@Query("restaurantId") String restaurantId); Observable<String> getRestaurantFunList(@Query("restaurantId") String restaurantId);
//每日營業詳情 //每日營業詳情,賬單分析
@Headers({"Domain-Name: gsa_report"}) @Headers({"Domain-Name: gsa_report"})
@GET("cloudGsaReport/daySalesReport" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @GET("cloudGsaReport/daySalesReport" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<DaySalesReportBean> getDaySalesReport(@QueryMap Map<String, String> map); Observable<DaySalesReportBean> getDaySalesReport(@QueryMap Map<String, String> map);
//賬單分析 //營業金額淨值
@Headers({"Domain-Name: gsa_report"}) @Headers({"Domain-Name: gsa_report"})
@GET("cloudGsaReport/orderAnalysis" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @GET("cloudGsaReport/orderAnalysis" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<OrderAnalysisBean> getOrderAnalysis(@QueryMap Map<String, String> map); Observable<OrderAnalysisBean> getOrderAnalysis(@QueryMap Map<String, String> map);
......
...@@ -17,11 +17,10 @@ import com.gingersoft.gsa.cloud.main.mvp.contract.HomeContract; ...@@ -17,11 +17,10 @@ import com.gingersoft.gsa.cloud.main.mvp.contract.HomeContract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.CheckVersionRequest; 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.model.bean.MainBusinessBean;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.MainActivity; import com.gingersoft.gsa.cloud.main.mvp.ui.activity.MainActivity;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.NewMainActivity;
import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.HomeFragment; 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.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay; import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.HywebPosResponse; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.jess.arms.di.scope.FragmentScope; import com.jess.arms.di.scope.FragmentScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
...@@ -246,33 +245,33 @@ public class HomePresenter extends BasePresenter<HomeContract.Model, HomeContrac ...@@ -246,33 +245,33 @@ public class HomePresenter extends BasePresenter<HomeContract.Model, HomeContrac
public void onNext(@NonNull BaseResult info) { public void onNext(@NonNull BaseResult info) {
if (info != null && info.isSuccess()) { if (info != null && info.isSuccess()) {
if (info.getData() != null) { if (info.getData() != null) {
PosPay.settlement(IActivity, IActivity, new OnPosActionListener() { // PosPay.settlement(IActivity, IActivity, new OnPosActionListener() {
@Override // @Override
public void onPosSuccess(HywebPosResponse response) { // public void onPosSuccess(HywebPosResponse response) {
mRootView.showMessage("清機成功!"); // mRootView.showMessage("清機成功!");
updateSettlementOperation(restaurantId, GsonUtils.GsonString(response), 1); // updateSettlementOperation(restaurantId, GsonUtils.GsonString(response), 1);
} // }
//
@Override // @Override
public void onPosException(Exception e) { // public void onPosException(HywebPosResponse response,Exception e) {
mRootView.showMessage("清機Exception :" + e.getMessage()); // mRootView.showMessage("清機Exception :" + e.getMessage());
updateSettlementOperation(restaurantId, e.getMessage(), 0); // updateSettlementOperation(restaurantId, e.getMessage(), 0);
} // }
//
@Override // @Override
public void onPosInvalid(String e) { // public void onPosInvalid(String e) {
mRootView.showMessage(e); // mRootView.showMessage(e);
updateSettlementOperation(restaurantId, e, 2); // updateSettlementOperation(restaurantId, e, 2);
} // }
//
@Override // @Override
public void onUpdateStatusSuccess(HywebPosResponse response) { // public void onUpdateStatusSuccess(HywebPosResponse response) {
} // }
//
@Override // @Override
public void onUpdateStatusError(Throwable e) { // public void onUpdateStatusError(Throwable e) {
} // }
}); // });
} }
} else { } else {
mRootView.showMessage("調起POS清機失敗"); mRootView.showMessage("調起POS清機失敗");
......
...@@ -16,7 +16,7 @@ import com.gingersoft.gsa.cloud.main.mvp.model.bean.CheckVersionRequest; ...@@ -16,7 +16,7 @@ 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.main.mvp.ui.activity.NewMainActivity;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener; import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay; import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.HywebPosResponse; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.HywebPosResponse;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
...@@ -180,33 +180,33 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa ...@@ -180,33 +180,33 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa
public void onNext(@NonNull BaseResult info) { public void onNext(@NonNull BaseResult info) {
if (info != null && info.isSuccess()) { if (info != null && info.isSuccess()) {
if (info.getData() != null) { if (info.getData() != null) {
PosPay.settlement(IActivity, IActivity, new OnPosActionListener() { // PosPay.settlement(IActivity, IActivity, new OnPosActionListener() {
@Override // @Override
public void onPosSuccess(HywebPosResponse response) { // public void onPosSuccess(HywebPosResponse response) {
mRootView.showMessage("清機成功!"); // mRootView.showMessage("清機成功!");
updateSettlementOperation(restaurantId, GsonUtils.GsonString(response), 1); // updateSettlementOperation(restaurantId, GsonUtils.GsonString(response), 1);
} // }
//
@Override // @Override
public void onPosException(Exception e) { // public void onPosException(HywebPosResponse response,Exception e) {
mRootView.showMessage("清機Exception :" + e.getMessage()); // mRootView.showMessage("清機Exception :" + e.getMessage());
updateSettlementOperation(restaurantId, e.getMessage(), 0); // updateSettlementOperation(restaurantId, e.getMessage(), 0);
} // }
//
@Override // @Override
public void onPosInvalid(String e) { // public void onPosInvalid(String e) {
mRootView.showMessage(e); // mRootView.showMessage(e);
updateSettlementOperation(restaurantId, e, 2); // updateSettlementOperation(restaurantId, e, 2);
} // }
//
@Override // @Override
public void onUpdateStatusSuccess(HywebPosResponse response) { // public void onUpdateStatusSuccess(HywebPosResponse response) {
} // }
//
@Override // @Override
public void onUpdateStatusError(Throwable e) { // public void onUpdateStatusError(Throwable e) {
} // }
}); // });
} }
} else { } else {
mRootView.showMessage("調起POS清機失敗"); mRootView.showMessage("調起POS清機失敗");
......
...@@ -5,12 +5,8 @@ import android.app.Application; ...@@ -5,12 +5,8 @@ import android.app.Application;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager; import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.utils.JsonUtils; import com.gingersoft.gsa.cloud.common.utils.JsonUtils;
import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementContract; import com.gingersoft.gsa.cloud.main.mvp.contract.SettlementContract;
import com.gingersoft.gsa.cloud.common.core.settlement.SettlementReport; import com.gingersoft.gsa.cloud.common.core.settlement.SettlementReport;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.HywebPosResponse;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
...@@ -24,8 +20,6 @@ import io.reactivex.annotations.NonNull; ...@@ -24,8 +20,6 @@ import io.reactivex.annotations.NonNull;
import io.reactivex.schedulers.Schedulers; import io.reactivex.schedulers.Schedulers;
import me.jessyan.rxerrorhandler.core.RxErrorHandler; import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import me.jessyan.rxerrorhandler.handler.ErrorHandleSubscriber; import me.jessyan.rxerrorhandler.handler.ErrorHandleSubscriber;
import okhttp3.FormBody;
import okhttp3.RequestBody;
/** /**
......
...@@ -16,7 +16,7 @@ import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItem5Adapter ...@@ -16,7 +16,7 @@ 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.main.mvp.ui.adapter.SettlementReportItemAdapter;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener; import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay; import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.HywebPosResponse; 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.SectionTextItem3;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem5; import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem5;
import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog; import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
...@@ -230,33 +230,33 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon ...@@ -230,33 +230,33 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
public void onNext(@NonNull BaseResult info) { public void onNext(@NonNull BaseResult info) {
if (info != null && info.isSuccess()) { if (info != null && info.isSuccess()) {
if (info.getData() != null) { if (info.getData() != null) {
PosPay.settlement(IActivity, mRootView, new OnPosActionListener() { // PosPay.settlement(IActivity, mRootView, new OnPosActionListener() {
@Override // @Override
public void onPosSuccess(HywebPosResponse response) { // public void onPosSuccess(HywebPosResponse response) {
mRootView.showMessage("清機成功!"); // mRootView.showMessage("清機成功!");
updateSettlementOperation(restaurantId, GsonUtils.GsonString(response), 1); // updateSettlementOperation(restaurantId, GsonUtils.GsonString(response), 1);
} // }
//
@Override // @Override
public void onPosException(Exception e) { // public void onPosException(HywebPosResponse response,Exception e) {
mRootView.showMessage("清機Exception :" + e.getMessage()); // mRootView.showMessage("清機Exception :" + e.getMessage());
updateSettlementOperation(restaurantId, e.getMessage(), 0); // updateSettlementOperation(restaurantId, e.getMessage(), 0);
} // }
//
@Override // @Override
public void onPosInvalid(String e) { // public void onPosInvalid(String e) {
mRootView.showMessage(e); // mRootView.showMessage(e);
updateSettlementOperation(restaurantId, e, 2); // updateSettlementOperation(restaurantId, e, 2);
} // }
//
@Override // @Override
public void onUpdateStatusSuccess(HywebPosResponse response) { // public void onUpdateStatusSuccess(HywebPosResponse response) {
} // }
//
@Override // @Override
public void onUpdateStatusError(Throwable e) { // public void onUpdateStatusError(Throwable e) {
} // }
}); // });
} }
} else { } else {
mRootView.showMessage("調起POS清機失敗"); mRootView.showMessage("調起POS清機失敗");
......
...@@ -4,6 +4,7 @@ import android.content.Intent; ...@@ -4,6 +4,7 @@ import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.widget.BaseAdapter; import android.widget.BaseAdapter;
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils; import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.main.R; import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.R2; import com.gingersoft.gsa.cloud.main.R2;
...@@ -13,6 +14,7 @@ import com.gingersoft.gsa.cloud.main.mvp.presenter.MainPresenter; ...@@ -13,6 +14,7 @@ import com.gingersoft.gsa.cloud.main.mvp.presenter.MainPresenter;
import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.HomeFragment; import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.HomeFragment;
import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.MyFragment; import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.MyFragment;
import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.ReportListFragment; import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.ReportListFragment;
import com.gyf.immersionbar.ImmersionBar;
import com.jess.arms.base.BaseFragmentActivity; import com.jess.arms.base.BaseFragmentActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
...@@ -67,6 +69,7 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements ...@@ -67,6 +69,7 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements
.inject(this); .inject(this);
} }
@Override @Override
public int initView(@Nullable Bundle savedInstanceState) { public int initView(@Nullable Bundle savedInstanceState) {
return R.layout.main_activity_main; //如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0 return R.layout.main_activity_main; //如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
...@@ -87,7 +90,6 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements ...@@ -87,7 +90,6 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements
return HomeFragment.newInstance(); return HomeFragment.newInstance();
case 1: case 1:
return ReportListFragment.newInstance(); return ReportListFragment.newInstance();
case 2:
default: default:
return MyFragment.newInstance(); return MyFragment.newInstance();
} }
...@@ -95,7 +97,7 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements ...@@ -95,7 +97,7 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements
@Override @Override
public int getCount() { public int getCount() {
return 3; return 2;
} }
@Override @Override
...@@ -124,15 +126,15 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements ...@@ -124,15 +126,15 @@ public class MainActivity extends BaseFragmentActivity<MainPresenter> implements
.setSelectedDrawable(ContextCompat.getDrawable(mContext, R.drawable.ic_selected_report)) .setSelectedDrawable(ContextCompat.getDrawable(mContext, R.drawable.ic_selected_report))
.setText(getString(R.string.report)) .setText(getString(R.string.report))
.build(mContext); .build(mContext);
QMUITab my = builder // QMUITab my = builder
.setNormalDrawable(ContextCompat.getDrawable(mContext, R.drawable.ic_normal_my)) // .setNormalDrawable(ContextCompat.getDrawable(mContext, R.drawable.ic_normal_my))
.setSelectedDrawable(ContextCompat.getDrawable(mContext, R.drawable.ic_selected_my)) // .setSelectedDrawable(ContextCompat.getDrawable(mContext, R.drawable.ic_selected_my))
.setText(getString(R.string.my)) // .setText(getString(R.string.my))
.build(mContext); // .build(mContext);
mTabSegment.addTab(home) mTabSegment.addTab(home)
.addTab(report) .addTab(report);
.addTab(my); // .addTab(my);
} }
......
...@@ -241,7 +241,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl ...@@ -241,7 +241,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
// mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_setting, "查看日誌")); // mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_setting, "查看日誌"));
mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_setting, "切換環境")); mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_setting, "切換環境"));
} }
// mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_setting, "上傳日誌")); mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_setting, "上傳日誌"));
mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_settlement_report, "清機")); mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_settlement_report, "清機"));
if (AppDevices.isHywebPos()) { if (AppDevices.isHywebPos()) {
mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_settlement_report, "N5清機")); mainSideMenuBeans.add(new MainSideMenuBean(R.drawable.ic_settlement_report, "N5清機"));
...@@ -387,7 +387,6 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl ...@@ -387,7 +387,6 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
// mActivityJumpStrategy.put(function, new IntentJumpStrategy()); // mActivityJumpStrategy.put(function, new IntentJumpStrategy());
// } // }
// } // }
} }
} }
......
...@@ -4,11 +4,13 @@ import android.content.Intent; ...@@ -4,11 +4,13 @@ import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.util.TypedValue; import android.util.TypedValue;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import androidx.viewpager.widget.ViewPager; import androidx.viewpager.widget.ViewPager;
import com.gingersoft.gsa.cloud.main.R; import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.R2; import com.gingersoft.gsa.cloud.main.R2;
import com.gingersoft.gsa.cloud.main.di.component.DaggerReportComponent; import com.gingersoft.gsa.cloud.main.di.component.DaggerReportComponent;
...@@ -24,9 +26,12 @@ import com.jess.arms.base.BaseFragmentActivity; ...@@ -24,9 +26,12 @@ import com.jess.arms.base.BaseFragmentActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.widget.QMUITopBar; import com.qmuiteam.qmui.widget.QMUITopBar;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import butterknife.BindView; import butterknife.BindView;
import static com.jess.arms.utils.Preconditions.checkNotNull; import static com.jess.arms.utils.Preconditions.checkNotNull;
...@@ -84,8 +89,10 @@ public class ReportActivity extends BaseFragmentActivity<ReportPresenter> implem ...@@ -84,8 +89,10 @@ public class ReportActivity extends BaseFragmentActivity<ReportPresenter> implem
titles.add("銷售分析"); titles.add("銷售分析");
titles.add("支付分析"); titles.add("支付分析");
BusinessReportFragment businessReportFragment = BusinessReportFragment.newInstance();
List<Fragment> mFragments = new ArrayList<>(); List<Fragment> mFragments = new ArrayList<>();
mFragments.add(BusinessReportFragment.newInstance()); mFragments.add(businessReportFragment);
mFragments.add(SalesFragment.newInstance()); mFragments.add(SalesFragment.newInstance());
mFragments.add(PaymentMethodReportFragment.newInstance()); mFragments.add(PaymentMethodReportFragment.newInstance());
//实例化适配器 //实例化适配器
......
...@@ -228,8 +228,6 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese ...@@ -228,8 +228,6 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
private void showSendSettlementDialog() { private void showSendSettlementDialog() {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(this); QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(this);
dialogBuilder.setTitle("溫馨提示"); dialogBuilder.setTitle("溫馨提示");
dialogBuilder.setMessage("是否確認清機"); dialogBuilder.setMessage("是否確認清機");
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> { dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
mPresenter.sendSettlement(type); mPresenter.sendSettlement(type);
......
...@@ -21,10 +21,6 @@ public class MainOrderingAdapter extends BaseQuickAdapter<Function, BaseViewHold ...@@ -21,10 +21,6 @@ public class MainOrderingAdapter extends BaseQuickAdapter<Function, BaseViewHold
super(layoutResId, data); super(layoutResId, data);
} }
// public MainOrderingAdapter(@Nullable List<SectionItem> data) {
// super(R.layout.main_home_funcation_item, data);
// }
@Override @Override
protected void convert(BaseViewHolder helper, Function item) { protected void convert(BaseViewHolder helper, Function item) {
helper.setImageResource(R.id.iv_main_home_item_function_icon, item.getIcRes()); helper.setImageResource(R.id.iv_main_home_item_function_icon, item.getIcRes());
......
...@@ -4,6 +4,7 @@ import android.content.Intent; ...@@ -4,6 +4,7 @@ import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.os.Message; import android.os.Message;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.LinearLayout; import android.widget.LinearLayout;
...@@ -109,6 +110,9 @@ public class BusinessReportFragment extends BaseFragment<BusinessReportPresenter ...@@ -109,6 +110,9 @@ public class BusinessReportFragment extends BaseFragment<BusinessReportPresenter
private int manyDay = 7; private int manyDay = 7;
private String restaurantId; private String restaurantId;
private boolean mChartFocus;
public static BusinessReportFragment newInstance() { public static BusinessReportFragment newInstance() {
BusinessReportFragment fragment = new BusinessReportFragment(); BusinessReportFragment fragment = new BusinessReportFragment();
return fragment; return fragment;
...@@ -138,51 +142,37 @@ public class BusinessReportFragment extends BaseFragment<BusinessReportPresenter ...@@ -138,51 +142,37 @@ public class BusinessReportFragment extends BaseFragment<BusinessReportPresenter
mTvStartTime.setText(TimeUtils.getOldDate(-manyDay + 1)); mTvStartTime.setText(TimeUtils.getOldDate(-manyDay + 1));
mTvEndTime.setText(TimeUtils.getOldDate(0)); mTvEndTime.setText(TimeUtils.getOldDate(0));
//处理报表滑动过程中和页面滑动出现冲突
mLineChart.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
mLineChart.requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_POINTER_UP:
mLineChart.requestDisallowInterceptTouchEvent(false);
break;
case MotionEvent.ACTION_CANCEL:
mLineChart.requestDisallowInterceptTouchEvent(false);
break;
}
return false;
}
});
}
@Override
public void onLazyInitView(@Nullable Bundle savedInstanceState) {
super.onLazyInitView(savedInstanceState);
getInfo(); getInfo();
} }
/**
* 通过此方法可以使 Fragment 能够与外界做一些交互和通信, 比如说外部的 Activity 想让自己持有的某个 Fragment 对象执行一些方法,
* 建议在有多个需要与外界交互的方法时, 统一传 {@link Message}, 通过 what 字段来区分不同的方法, 在 {@link #setData(Object)}
* 方法中就可以 {@code switch} 做不同的操作, 这样就可以用统一的入口方法做多个不同的操作, 可以起到分发的作用
* <p>
* 调用此方法时请注意调用时 Fragment 的生命周期, 如果调用 {@link #setData(Object)} 方法时 {@link Fragment#onCreate(Bundle)} 还没执行
* 但在 {@link #setData(Object)} 里却调用了 Presenter 的方法, 是会报空的, 因为 Dagger 注入是在 {@link Fragment#onCreate(Bundle)} 方法中执行的
* 然后才创建的 Presenter, 如果要做一些初始化操作,可以不必让外部调用 {@link #setData(Object)}, 在 {@link #initData(Bundle)} 中初始化就可以了
* <p>
* Example usage:
* <pre>
* public void setData(@Nullable Object data) {
* if (data != null && data instanceof Message) {
* switch (((Message) data).what) {
* case 0:
* loadData(((Message) data).arg1);
* break;
* case 1:
* refreshUI();
* break;
* default:
* //do something
* break;
* }
* }
* }
*
* // call setData(Object):
* Message data = new Message();
* data.what = 0;
* data.arg1 = 1;
* fragment.setData(data);
* </pre>
*
* @param data 当不需要参数时 {@code data} 可以为 {@code null}
*/
@Override @Override
public void setData(@Nullable Object data) { public void setData(@Nullable Object data) {
} }
@Override @Override
public void showLoading(String message) { public void showLoading(String message) {
if (message != null) if (message != null)
......
...@@ -40,6 +40,7 @@ import com.gingersoft.gsa.cloud.common.function.jump.ActivityJumpStrategy; ...@@ -40,6 +40,7 @@ import com.gingersoft.gsa.cloud.common.function.jump.ActivityJumpStrategy;
import com.gingersoft.gsa.cloud.common.leaks.WeakHandler; import com.gingersoft.gsa.cloud.common.leaks.WeakHandler;
import com.gingersoft.gsa.cloud.common.logan.LoganManager; import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.service.ICommandService; import com.gingersoft.gsa.cloud.common.service.ICommandService;
import com.gingersoft.gsa.cloud.common.service.IServiceManager;
import com.gingersoft.gsa.cloud.common.utils.AppDevices; import com.gingersoft.gsa.cloud.common.utils.AppDevices;
import com.gingersoft.gsa.cloud.common.utils.JsonUtils; import com.gingersoft.gsa.cloud.common.utils.JsonUtils;
import com.gingersoft.gsa.cloud.common.utils.StytemUtils; import com.gingersoft.gsa.cloud.common.utils.StytemUtils;
...@@ -104,7 +105,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -104,7 +105,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
* ================================================ * ================================================
* 首頁 * 首頁
*/ */
public class HomeFragment extends BaseFragment<HomePresenter> implements HomeContract.View, View.OnClickListener , Handler.Callback{ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeContract.View, View.OnClickListener {
@BindView(R2.id.rv_side_menu) @BindView(R2.id.rv_side_menu)
RecyclerView mRvSideMenu; RecyclerView mRvSideMenu;
...@@ -171,13 +172,13 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon ...@@ -171,13 +172,13 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
} }
@Override @Override
public View initView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { public void initImmersionBar() {
return inflater.inflate(R.layout.main_fragment_home, container, false); ImmersionBar.setTitleBar(this, slideMenu);
} }
@Override @Override
public boolean handleMessage(@NonNull Message msg) { public View initView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return false; return inflater.inflate(R.layout.main_fragment_home, container, false);
} }
@Override @Override
...@@ -185,16 +186,10 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon ...@@ -185,16 +186,10 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
super.onActivityCreated(savedInstanceState); super.onActivityCreated(savedInstanceState);
mPresenter.checkAppVersion(); mPresenter.checkAppVersion();
mPresenter.syncRestaurantExtendedConfiguration(); mPresenter.syncRestaurantExtendedConfiguration();
WeakHandler weakHandler = new WeakHandler(this);
weakHandler.sendEmptyMessage(0);
} }
@Override @Override
public void initData(@Nullable Bundle savedInstanceState) { public void initData(@Nullable Bundle savedInstanceState) {
ImmersionBar.with(_mActivity).titleBar(R.id.cl_title_layout).init();
ImmersionBar.with(_mActivity).titleBar(R.id.side_layout).navigationBarAlpha(1).init();
//初始化側邊欄菜單項 //初始化側邊欄菜單項
initSideMenu(); initSideMenu();
...@@ -208,7 +203,7 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon ...@@ -208,7 +203,7 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
// msg.what = 0; // msg.what = 0;
// mainTopFragment.setData(msg); // mainTopFragment.setData(msg);
// } // }
EventBus.getDefault().post(true,"onRefreshReport"); EventBus.getDefault().post(true, "onRefreshReport");
}); });
refresh.setEnableLoadMore(false); refresh.setEnableLoadMore(false);
// initFuncationData(); // initFuncationData();
...@@ -228,7 +223,7 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon ...@@ -228,7 +223,7 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
} }
@Subscriber(tag = "onFinishRefresh") @Subscriber(tag = "onFinishRefresh")
private void onFinishRefresh(boolean state){ private void onFinishRefresh(boolean state) {
refresh.finishRefresh(); refresh.finishRefresh();
} }
...@@ -251,25 +246,8 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon ...@@ -251,25 +246,8 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
} }
private void initService() { private void initService() {
boolean deliveryOrderServiceRunning = StytemUtils.isServiceRunning("com.gingersoft.gsa.cloud.common.service.ICommandService", _mActivity); IServiceManager.startICommandService(GsaCloudApplication.getAppContext());
if (!deliveryOrderServiceRunning) { IServiceManager.startPrjService(GsaCloudApplication.getAppContext());
Intent service = new Intent(GsaCloudApplication.getAppContext(), ICommandService.class);
service.putExtra(ICommandService.CONNECTION_TYPE, ICommandService.mCurrConnectionType);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
mContext.startForegroundService(service);
} else {
mContext.startService(service);
}
}
boolean prjServiceRunning = StytemUtils.isServiceRunning("com.joe.print.mvp.print.service.PrjService", _mActivity);
if (!prjServiceRunning) {
//開啟Prj打印服務
CC.obtainBuilder(ComponentName.COMPONENT_PRINT)
.setActionName("openPrintService")
.build()
.call();
}
} }
/** /**
...@@ -374,6 +352,9 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon ...@@ -374,6 +352,9 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements HomeCon
List<Function> employeeFuncations = FunctionManager.getDefault().getFunctionByResModule(_mActivity, ComponentMain.main.class, ComponentMain.main.employee, "employee"); List<Function> employeeFuncations = FunctionManager.getDefault().getFunctionByResModule(_mActivity, ComponentMain.main.class, ComponentMain.main.employee, "employee");
if (employeeFuncations.size() > 0) { if (employeeFuncations.size() > 0) {
for (Function function : employeeFuncations) {
function.setStatus(0);
}
functions.addAll(employeeFuncations); functions.addAll(employeeFuncations);
ll_staff_management.setVisibility(View.VISIBLE); ll_staff_management.setVisibility(View.VISIBLE);
} else { } else {
......
...@@ -41,7 +41,6 @@ public class MyFragment extends BaseFragment<MyPresenter> implements MyContract. ...@@ -41,7 +41,6 @@ public class MyFragment extends BaseFragment<MyPresenter> implements MyContract.
@BindView(R2.id.main_personal_center_rv) @BindView(R2.id.main_personal_center_rv)
RecyclerView rvMyList; RecyclerView rvMyList;
public static MyFragment newInstance() { public static MyFragment newInstance() {
MyFragment fragment = new MyFragment(); MyFragment fragment = new MyFragment();
return fragment; return fragment;
......
...@@ -5,6 +5,7 @@ import android.graphics.Color; ...@@ -5,6 +5,7 @@ import android.graphics.Color;
import android.os.Bundle; import android.os.Bundle;
import android.os.Message; import android.os.Message;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.TextView; import android.widget.TextView;
...@@ -108,6 +109,29 @@ public class PaymentMethodReportFragment extends BaseFragment<PaymentMethodRepor ...@@ -108,6 +109,29 @@ public class PaymentMethodReportFragment extends BaseFragment<PaymentMethodRepor
mTvStartTime.setText(TimeUtils.getOldDate(-7)); mTvStartTime.setText(TimeUtils.getOldDate(-7));
mTvEndTime.setText(TimeUtils.getOldDate(0)); mTvEndTime.setText(TimeUtils.getOldDate(0));
//处理报表滑动过程中和页面滑动出现冲突
chart.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
chart.requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_POINTER_UP:
chart.requestDisallowInterceptTouchEvent(false);
break;
case MotionEvent.ACTION_CANCEL:
chart.requestDisallowInterceptTouchEvent(false);
break;
}
return false;
}
});
}
@Override
public void onLazyInitView(@Nullable Bundle savedInstanceState) {
super.onLazyInitView(savedInstanceState);
getPayMenthInfo(); getPayMenthInfo();
} }
......
...@@ -5,6 +5,7 @@ import android.graphics.Color; ...@@ -5,6 +5,7 @@ import android.graphics.Color;
import android.os.Bundle; import android.os.Bundle;
import android.os.Message; import android.os.Message;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.LinearLayout; import android.widget.LinearLayout;
...@@ -134,46 +135,34 @@ public class SalesFragment extends BaseFragment<SalesPresenter> implements Sales ...@@ -134,46 +135,34 @@ public class SalesFragment extends BaseFragment<SalesPresenter> implements Sales
mTvEndTime.setText(TimeUtils.getOldDate(0)); mTvEndTime.setText(TimeUtils.getOldDate(0));
startEndTimePickerView.setOnUpdateTimePicker(onUpdateTimePicker); startEndTimePickerView.setOnUpdateTimePicker(onUpdateTimePicker);
//处理报表滑动过程中和页面滑动出现冲突
salesChart.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
salesChart.requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_POINTER_UP:
salesChart.requestDisallowInterceptTouchEvent(false);
break;
case MotionEvent.ACTION_CANCEL:
salesChart.requestDisallowInterceptTouchEvent(false);
break;
}
return false;
}
});
}
@Override
public void onLazyInitView(@Nullable Bundle savedInstanceState) {
super.onLazyInitView(savedInstanceState);
getSaleReport(); getSaleReport();
getDeliveryReport(); getDeliveryReport();
} }
/**
* 通过此方法可以使 Fragment 能够与外界做一些交互和通信, 比如说外部的 Activity 想让自己持有的某个 Fragment 对象执行一些方法,
* 建议在有多个需要与外界交互的方法时, 统一传 {@link Message}, 通过 what 字段来区分不同的方法, 在 {@link #setData(Object)}
* 方法中就可以 {@code switch} 做不同的操作, 这样就可以用统一的入口方法做多个不同的操作, 可以起到分发的作用
* <p>
* 调用此方法时请注意调用时 Fragment 的生命周期, 如果调用 {@link #setData(Object)} 方法时 {@link Fragment#onCreate(Bundle)} 还没执行
* 但在 {@link #setData(Object)} 里却调用了 Presenter 的方法, 是会报空的, 因为 Dagger 注入是在 {@link Fragment#onCreate(Bundle)} 方法中执行的
* 然后才创建的 Presenter, 如果要做一些初始化操作,可以不必让外部调用 {@link #setData(Object)}, 在 {@link #initData(Bundle)} 中初始化就可以了
* <p>
* Example usage:
* <pre>
* public void setData(@Nullable Object data) {
* if (data != null && data instanceof Message) {
* switch (((Message) data).what) {
* case 0:
* loadData(((Message) data).arg1);
* break;
* case 1:
* refreshUI();
* break;
* default:
* //do something
* break;
* }
* }
* }
*
* // call setData(Object):
* Message data = new Message();
* data.what = 0;
* data.arg1 = 1;
* fragment.setData(data);
* </pre>
*
* @param data 当不需要参数时 {@code data} 可以为 {@code null}
*/
@Override @Override
public void setData(@Nullable Object data) { public void setData(@Nullable Object data) {
......
...@@ -18,6 +18,6 @@ ...@@ -18,6 +18,6 @@
android:id="@+id/section_kitchen_prj" android:id="@+id/section_kitchen_prj"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="?attr/qmui_topbar_height"/> android:layout_marginTop="@dimen/head_height"/>
</LinearLayout> </LinearLayout>
\ No newline at end of file
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/report_topbar" android:id="@+id/report_topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
<com.google.android.material.tabs.TabLayout <com.google.android.material.tabs.TabLayout
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" /> android:layout_height="@dimen/head_height" />
<TextView <TextView
android:id="@+id/tv_settlement_time" android:id="@+id/tv_settlement_time"
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" /> android:layout_height="@dimen/head_height" />
<include layout="@layout/layout_settlement_report" /> <include layout="@layout/layout_settlement_report" />
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
android:id="@+id/sv_cross_days" android:id="@+id/sv_cross_days"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height" android:layout_marginTop="@dimen/head_height"
android:background="@color/theme_white_color" android:background="@color/theme_white_color"
android:fillViewport="true" android:fillViewport="true"
android:visibility="gone"> android:visibility="gone">
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!--<androidx.recyclerview.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android"-->
<!-- xmlns:tools="http://schemas.android.com/tools"-->
<!-- android:id="@+id/recycler_report"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- android:orientation="vertical">-->
<!--</androidx.recyclerview.widget.RecyclerView>-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:descendantFocusability="afterDescendants"
android:orientation="vertical"> android:orientation="vertical">
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topBar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/pickerview_topbar_height" android:layout_height="@dimen/head_height"
app:qmui_topbar_text_btn_color_state_list="@color/theme_white_color"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
<androidx.recyclerview.widget.RecyclerView <com.google.android.material.tabs.TabLayout
android:id="@+id/recycler_report" android:id="@+id/table_layout"
android:layout_width="match_parent"
android:layout_height="@dimen/tabIndicator_height"
android:background="@color/white"
app:tabIndicator="@drawable/tablayout_indicator"
app:tabIndicatorColor="@color/theme_color"
app:tabIndicatorFullWidth="false"/>
<androidx.viewpager.widget.ViewPager
android:id="@+id/report_viewpager"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" /> android:layout_height="match_parent" />
</LinearLayout> </LinearLayout>
\ No newline at end of file
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
android:id="@+id/scrollView" android:id="@+id/scrollView"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height" android:layout_marginTop="@dimen/head_height"
android:layout_marginBottom="@dimen/dp_45" android:layout_marginBottom="@dimen/dp_45"
android:background="@color/theme_white_color" android:background="@color/theme_white_color"
android:descendantFocusability="beforeDescendants" android:descendantFocusability="beforeDescendants"
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar_language" android:id="@+id/topbar_language"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
......
...@@ -64,12 +64,9 @@ public class TableManagePresenter extends BasePresenter<TableManageContract.Mode ...@@ -64,12 +64,9 @@ public class TableManagePresenter extends BasePresenter<TableManageContract.Mode
private GetTableTimer tableTimer; private GetTableTimer tableTimer;
private Disposable mGetTablesDataDisposable; private Disposable mGetTablesDataDisposable;
private TableManageActivity IActivity;
@Inject @Inject
public TableManagePresenter(TableManageContract.Model model, TableManageContract.View rootView) { public TableManagePresenter(TableManageContract.Model model, TableManageContract.View rootView) {
super(model, rootView); super(model, rootView);
this.IActivity = (TableManageActivity) rootView;
} }
@Override @Override
......
...@@ -109,22 +109,6 @@ public class TableManageActivity extends BaseFragmentActivity<TableManagePresent ...@@ -109,22 +109,6 @@ public class TableManageActivity extends BaseFragmentActivity<TableManagePresent
if (findFragment(TableListFragment.class) == null) { if (findFragment(TableListFragment.class) == null) {
loadRootFragment(Window.ID_ANDROID_CONTENT, TableListFragment.newInstance()); loadRootFragment(Window.ID_ANDROID_CONTENT, TableListFragment.newInstance());
} }
// generateSystemAlert();
}
private void generateSystemAlert() {
//Activity Context
WindowManager wm = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
//Application Context
//WindowManager wm = (WindowManager) getApplicationContext().getSystemService(Context.WINDOW_SERVICE);
final WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.type = WindowManager.LayoutParams.TYPE_SYSTEM_ALERT;
params.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
params.width = WindowManager.LayoutParams.MATCH_PARENT;
params.height = 500;
params.gravity = Gravity.CENTER;
final View view = LayoutInflater.from(this).inflate(R.layout.window_system_alert, null);
wm.addView(view, params);
} }
public void initGetTableTimer() { public void initGetTableTimer() {
......
...@@ -30,6 +30,7 @@ import com.jess.arms.di.component.AppComponent; ...@@ -30,6 +30,7 @@ import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.util.QMUIResHelper; import com.qmuiteam.qmui.util.QMUIResHelper;
import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.QMUITopBarLayout; import com.qmuiteam.qmui.widget.QMUITopBarLayout;
import com.qmuiteam.qmui.widget.grouplist.QMUICommonListItemView; import com.qmuiteam.qmui.widget.grouplist.QMUICommonListItemView;
import com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView; import com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView;
...@@ -56,7 +57,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -56,7 +57,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
public class AddAreaFragment extends BaseFragment<AddAreaPresenter> implements AddAreaContract.View { public class AddAreaFragment extends BaseFragment<AddAreaPresenter> implements AddAreaContract.View {
@BindView(R2.id.topbar) @BindView(R2.id.topbar)
QMUITopBarLayout mTopBar; QMUITopBar mTopBar;
@BindView(R2.id.groupListView) @BindView(R2.id.groupListView)
QMUIGroupListView mGroupListView; QMUIGroupListView mGroupListView;
......
...@@ -34,6 +34,7 @@ import com.jess.arms.di.component.AppComponent; ...@@ -34,6 +34,7 @@ import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.util.QMUIResHelper; import com.qmuiteam.qmui.util.QMUIResHelper;
import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.QMUITopBarLayout; import com.qmuiteam.qmui.widget.QMUITopBarLayout;
import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet;
import com.qmuiteam.qmui.widget.grouplist.QMUICommonListItemView; import com.qmuiteam.qmui.widget.grouplist.QMUICommonListItemView;
...@@ -59,7 +60,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -59,7 +60,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
public class AddTableFragment extends BaseFragment<AddTablePresenter> implements AddTableContract.View { public class AddTableFragment extends BaseFragment<AddTablePresenter> implements AddTableContract.View {
@BindView(R2.id.topbar) @BindView(R2.id.topbar)
QMUITopBarLayout mTopBar; QMUITopBar mTopBar;
@BindView(R2.id.groupListView) @BindView(R2.id.groupListView)
QMUIGroupListView mGroupListView; QMUIGroupListView mGroupListView;
......
...@@ -42,6 +42,7 @@ import com.jess.arms.utils.ArmsUtils; ...@@ -42,6 +42,7 @@ import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.KeyboardChangeHelper; import com.jess.arms.utils.KeyboardChangeHelper;
import com.qmuiteam.qmui.alpha.QMUIAlphaFrameLayout; import com.qmuiteam.qmui.alpha.QMUIAlphaFrameLayout;
import com.qmuiteam.qmui.widget.QMUIEmptyView; import com.qmuiteam.qmui.widget.QMUIEmptyView;
import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.QMUITopBarLayout; import com.qmuiteam.qmui.widget.QMUITopBarLayout;
import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.api.RefreshLayout;
import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener;
...@@ -75,7 +76,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -75,7 +76,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
public class AreaListFragment extends BaseFragment<AreaListPresenter> implements AreaListContract.View { public class AreaListFragment extends BaseFragment<AreaListPresenter> implements AreaListContract.View {
@BindView(R2.id.topbar) @BindView(R2.id.topbar)
QMUITopBarLayout mTopBar; QMUITopBar mTopBar;
@BindView(R2.id.recycler_area) @BindView(R2.id.recycler_area)
RecyclerView recycler_area; RecyclerView recycler_area;
@BindView(R2.id.refreshLayout) @BindView(R2.id.refreshLayout)
......
...@@ -50,6 +50,7 @@ import com.jess.arms.di.component.AppComponent; ...@@ -50,6 +50,7 @@ import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.widget.QMUIEmptyView; import com.qmuiteam.qmui.widget.QMUIEmptyView;
import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.QMUITopBarLayout; import com.qmuiteam.qmui.widget.QMUITopBarLayout;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog; import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
...@@ -92,7 +93,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -92,7 +93,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
public class TableListFragment extends BaseFragment<TableListPresenter> implements TableListContract.View { public class TableListFragment extends BaseFragment<TableListPresenter> implements TableListContract.View {
@BindView(R2.id.topbar) @BindView(R2.id.topbar)
QMUITopBarLayout mTopBar; QMUITopBar mTopBar;
@BindView(R2.id.fl_section_layout) @BindView(R2.id.fl_section_layout)
FrameLayout fl_section_layout; FrameLayout fl_section_layout;
@BindView(R2.id.section_table) @BindView(R2.id.section_table)
...@@ -145,11 +146,6 @@ public class TableListFragment extends BaseFragment<TableListPresenter> implemen ...@@ -145,11 +146,6 @@ public class TableListFragment extends BaseFragment<TableListPresenter> implemen
} }
@Override @Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
}
@Override
public View initView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { public View initView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_table_list, container, false); return inflater.inflate(R.layout.fragment_table_list, container, false);
} }
......
...@@ -5,16 +5,16 @@ ...@@ -5,16 +5,16 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/theme_background_color"> android:background="@color/theme_background_color">
<com.qmuiteam.qmui.widget.QMUITopBarLayout <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
<com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView <com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView
android:id="@+id/groupListView" android:id="@+id/groupListView"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height"/> android:layout_marginTop="@dimen/head_height"/>
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout> </com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
...@@ -5,15 +5,16 @@ ...@@ -5,15 +5,16 @@
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/theme_background_color"> android:background="@color/theme_background_color">
<com.qmuiteam.qmui.widget.QMUITopBarLayout <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" /> android:layout_height="@dimen/head_height"
app:qmui_topbar_title_color="@color/theme_white_color" />
<com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView <com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView
android:id="@+id/groupListView" android:id="@+id/groupListView"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height"/> android:layout_marginTop="@dimen/head_height"/>
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout> </com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<FrameLayout <FrameLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height"> android:layout_marginTop="@dimen/head_height">
<com.qmuiteam.qmui.widget.QMUIEmptyView <com.qmuiteam.qmui.widget.QMUIEmptyView
android:id="@+id/emptyView" android:id="@+id/emptyView"
...@@ -160,10 +160,10 @@ ...@@ -160,10 +160,10 @@
android:src="@drawable/add_white" /> android:src="@drawable/add_white" />
</com.qmuiteam.qmui.alpha.QMUIAlphaFrameLayout> </com.qmuiteam.qmui.alpha.QMUIAlphaFrameLayout>
<com.qmuiteam.qmui.widget.QMUITopBarLayout <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout> </com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<RelativeLayout <RelativeLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height" android:layout_marginTop="@dimen/head_height"
android:background="@color/theme_background_color"> android:background="@color/theme_background_color">
<FrameLayout <FrameLayout
...@@ -106,10 +106,10 @@ ...@@ -106,10 +106,10 @@
</LinearLayout> </LinearLayout>
</RelativeLayout> </RelativeLayout>
<com.qmuiteam.qmui.widget.QMUITopBarLayout <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout> </com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<com.qmuiteam.qmui.widget.QMUITopBar <com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar" android:id="@+id/topbar"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height" android:layout_height="@dimen/head_height"
android:background="@color/theme_color" android:background="@color/theme_color"
app:qmui_topbar_title_color="@color/theme_white_color" /> app:qmui_topbar_title_color="@color/theme_white_color" />
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<application> <application>
<activity <activity
android:name=".mvp.ui.activity.PrintActivity" android:name=".mvp.ui.activity.PrintActivity"
android:launchMode="singleInstance" android:launchMode="singleTop"
android:theme="@style/print_TranslucentTheme" /> android:theme="@style/print_TranslucentTheme" />
<activity <activity
......
...@@ -6,6 +6,7 @@ import com.billy.cc.core.component.CC; ...@@ -6,6 +6,7 @@ import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult; import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil; import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent; import com.billy.cc.core.component.IComponent;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.component.ComponentName; import com.gingersoft.gsa.cloud.component.ComponentName;
import com.joe.print.mvp.print.printerManger.PrjPtinterManager; import com.joe.print.mvp.print.printerManger.PrjPtinterManager;
import com.joe.print.mvp.print.service.PrjService; import com.joe.print.mvp.print.service.PrjService;
...@@ -15,6 +16,7 @@ import com.joe.print.mvp.ui.activity.PrinterListActivity; ...@@ -15,6 +16,7 @@ import com.joe.print.mvp.ui.activity.PrinterListActivity;
public class PrintComponent implements IComponent { public class PrintComponent implements IComponent {
private final String TAG = getClass().getSimpleName();
@Override @Override
public String getName() { public String getName() {
...@@ -35,6 +37,7 @@ public class PrintComponent implements IComponent { ...@@ -35,6 +37,7 @@ public class PrintComponent implements IComponent {
@Override @Override
public boolean onCall(CC cc) { public boolean onCall(CC cc) {
String actionName = cc.getActionName(); String actionName = cc.getActionName();
LoganManager.w_code(TAG, "onCall->actionName->" + actionName);
switch (actionName) { switch (actionName) {
case "killPrintActivity": case "killPrintActivity":
...@@ -117,7 +120,9 @@ public class PrintComponent implements IComponent { ...@@ -117,7 +120,9 @@ public class PrintComponent implements IComponent {
// //将cc的callId传给Activity,登录完成后通过这个callId来回传结果 // //将cc的callId传给Activity,登录完成后通过这个callId来回传结果
// intent.putExtra("callId", cc.getCallId()); // intent.putExtra("callId", cc.getCallId());
// context.startActivity(intent); // context.startActivity(intent);
LoganManager.w_code(TAG, "print start" );
CCUtil.navigateTo(cc, PrintActivity.class); CCUtil.navigateTo(cc, PrintActivity.class);
LoganManager.w_code(TAG, "print end" );
//返回true,不立即调用CC.sendCCResult //返回true,不立即调用CC.sendCCResult
return true; return true;
} }
......
...@@ -28,9 +28,11 @@ import com.gingersoft.gsa.cloud.print.PrintExecutor; ...@@ -28,9 +28,11 @@ import com.gingersoft.gsa.cloud.print.PrintExecutor;
import com.gingersoft.gsa.cloud.print.PrintSocketHolder; import com.gingersoft.gsa.cloud.print.PrintSocketHolder;
import com.gingersoft.gsa.cloud.print.bean.PrintContent; import com.gingersoft.gsa.cloud.print.bean.PrintContent;
import com.gingersoft.gsa.cloud.print.bean.PrjBean; import com.gingersoft.gsa.cloud.print.bean.PrjBean;
import com.gyf.immersionbar.ImmersionBar;
import com.jess.arms.base.BaseActivity; import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.joe.print.R;
import com.joe.print.di.component.DaggerPrintComponent; import com.joe.print.di.component.DaggerPrintComponent;
import com.joe.print.mvp.contract.PrintContract; import com.joe.print.mvp.contract.PrintContract;
import com.joe.print.mvp.presenter.PrintPresenter; import com.joe.print.mvp.presenter.PrintPresenter;
...@@ -99,6 +101,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -99,6 +101,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void setupActivityComponent(@NonNull AppComponent appComponent) { public void setupActivityComponent(@NonNull AppComponent appComponent) {
LoganManager.w_code(TAG, "setupActivityComponent");
DaggerPrintComponent //如找不到该类,请编译一下项目 DaggerPrintComponent //如找不到该类,请编译一下项目
.builder() .builder()
.appComponent(appComponent) .appComponent(appComponent)
...@@ -109,13 +112,25 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -109,13 +112,25 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public int initView(@Nullable Bundle savedInstanceState) { public int initView(@Nullable Bundle savedInstanceState) {
LoganManager.w_code(TAG, "initView");
getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE
| WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH); | WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
return 0;//R.layout.print_bitmap;如果你不需要框架帮你设置 setContentView(id) 需要 自行设置,请返回 0 return 0;//R.layout.print_bitmap;如果你不需要框架帮你设置 setContentView(id) 需要 自行设置,请返回 0
} }
@Override @Override
public void configImmersionBar(ImmersionBar immersionBar) {
LoganManager.w_code(TAG, "configImmersionBar");
immersionBar
.fitsSystemWindows(true)
.statusBarColor(R.color.trans)
.statusBarDarkFont(true)
.init();
}
@Override
public void initData(@Nullable Bundle savedInstanceState) { public void initData(@Nullable Bundle savedInstanceState) {
LoganManager.w_code(TAG, "initData");
PrinterFlowProxy.newInstance().registerPrinterFlowListener(printerFlowListener); PrinterFlowProxy.newInstance().registerPrinterFlowListener(printerFlowListener);
} }
...@@ -127,7 +142,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -127,7 +142,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void connectionSuccess() { public void connectionSuccess() {
if(printerLoadingDialog == null){ if (printerLoadingDialog == null) {
return; return;
} }
printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_PRINTING, PrinterLoadingDialog.STATUS_SUCCESS, null); printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_PRINTING, PrinterLoadingDialog.STATUS_SUCCESS, null);
...@@ -135,7 +150,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -135,7 +150,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void connectionError(Exception e) { public void connectionError(Exception e) {
if(printerLoadingDialog == null){ if (printerLoadingDialog == null) {
return; return;
} }
printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_PRINTING, PrinterLoadingDialog.STATUS_ERROR, e.getMessage()); printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_PRINTING, PrinterLoadingDialog.STATUS_ERROR, e.getMessage());
...@@ -148,7 +163,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -148,7 +163,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void onPrinterDataBefore(int orderType, int printType, String printerData, String printerDeviceInfo) { public void onPrinterDataBefore(int orderType, int printType, String printerData, String printerDeviceInfo) {
if(printerLoadingDialog == null){ if (printerLoadingDialog == null) {
return; return;
} }
printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_CONNECTING, PrinterLoadingDialog.STATUS_SUCCESS, null); printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_CONNECTING, PrinterLoadingDialog.STATUS_SUCCESS, null);
...@@ -156,7 +171,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -156,7 +171,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void onPrinterBitmapBefore(int orderType, int printType, String directoryName, List<Bitmap> bitmaps) { public void onPrinterBitmapBefore(int orderType, int printType, String directoryName, List<Bitmap> bitmaps) {
if(printerLoadingDialog == null){ if (printerLoadingDialog == null) {
return; return;
} }
printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_CONNECTING, PrinterLoadingDialog.STATUS_SUCCESS, null); printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_CONNECTING, PrinterLoadingDialog.STATUS_SUCCESS, null);
...@@ -165,7 +180,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -165,7 +180,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void onPrintSuccess() { public void onPrintSuccess() {
printerResult = true; printerResult = true;
if(printerLoadingDialog == null){ if (printerLoadingDialog == null) {
return; return;
} }
printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_RESULT, PrinterLoadingDialog.STATUS_SUCCESS, null); printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_RESULT, PrinterLoadingDialog.STATUS_SUCCESS, null);
...@@ -174,7 +189,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -174,7 +189,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
@Override @Override
public void onPrintError(Exception e, int errorCode) { public void onPrintError(Exception e, int errorCode) {
if(printerLoadingDialog == null){ if (printerLoadingDialog == null) {
return; return;
} }
printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_RESULT, PrinterLoadingDialog.STATUS_ERROR, e.getMessage()); printerLoadingDialog.setStep(PrinterLoadingDialog.PROGRESS_RESULT, PrinterLoadingDialog.STATUS_ERROR, e.getMessage());
...@@ -212,6 +227,8 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -212,6 +227,8 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
private void actionPrinter() { private void actionPrinter() {
LoganManager.w_code(TAG, "actionPrinter start");
showPrintLoadingDialog(); showPrintLoadingDialog();
callId = CCUtil.getNavigateCallId(this); callId = CCUtil.getNavigateCallId(this);
...@@ -225,6 +242,8 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -225,6 +242,8 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
printerInIt = PrinterRoot.getPrinterByType(type, printContent); printerInIt = PrinterRoot.getPrinterByType(type, printContent);
//初始化打印配置 //初始化打印配置
initPrintConfig(printContent); initPrintConfig(printContent);
LoganManager.w_code(TAG, "actionPrinter end");
} }
private void showPrintLoadingDialog() { private void showPrintLoadingDialog() {
...@@ -253,6 +272,9 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -253,6 +272,9 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
private PrinterDeviceBean defaultPrint; private PrinterDeviceBean defaultPrint;
private void initPrintConfig(PrintContent printContent) { private void initPrintConfig(PrintContent printContent) {
LoganManager.w_code(TAG, "initPrintConfig start");
//開始 //開始
PrinterFlowProxy.newInstance().dispatchPrinterDataBefore(type, type, GsonUtils.GsonString(printContent), GsonUtils.GsonString(defaultPrint)); PrinterFlowProxy.newInstance().dispatchPrinterDataBefore(type, type, GsonUtils.GsonString(printContent), GsonUtils.GsonString(defaultPrint));
...@@ -284,6 +306,8 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -284,6 +306,8 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
defaultPrint = MyPrintUtils.configPrinterProperties(printCurrencyBean, defaultPrint); defaultPrint = MyPrintUtils.configPrinterProperties(printCurrencyBean, defaultPrint);
printByDevice(defaultPrint); printByDevice(defaultPrint);
} }
LoganManager.w_code(TAG, "initPrintConfig end");
} }
/** /**
...@@ -373,6 +397,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -373,6 +397,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
* @param defaultPrint 打印機 * @param defaultPrint 打印機
*/ */
private void printByDevice(PrinterDeviceBean defaultPrint) { private void printByDevice(PrinterDeviceBean defaultPrint) {
LoganManager.w_code(TAG, "printByDevice start");
//獲取對應的打印類 //獲取對應的打印類
if (printerInIt instanceof PrintInstruction) { if (printerInIt instanceof PrintInstruction) {
//開錢箱 //開錢箱
...@@ -421,6 +446,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print ...@@ -421,6 +446,7 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
printFailure("未找到對應的打印類型"); printFailure("未找到對應的打印類型");
} }
} }
LoganManager.w_code(TAG, "printByDevice end");
} }
/** /**
......
...@@ -24,6 +24,7 @@ import com.billy.cc.core.component.CC; ...@@ -24,6 +24,7 @@ import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.constans.PrintConstans; import com.gingersoft.gsa.cloud.common.constans.PrintConstans;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager; import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.core.user.UserContext; import com.gingersoft.gsa.cloud.common.core.user.UserContext;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.utils.other.TextUtil; import com.gingersoft.gsa.cloud.common.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils; import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.component.ComponentName; import com.gingersoft.gsa.cloud.component.ComponentName;
...@@ -560,6 +561,7 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem ...@@ -560,6 +561,7 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
* 添加或測試打印機 * 添加或測試打印機
*/ */
private void addOrTestPrint(View v) { private void addOrTestPrint(View v) {
LoganManager.w_code(TAG, "addOrTestPrint start");
if (!editTextIsNull(mEdPrintName)) { if (!editTextIsNull(mEdPrintName)) {
ToastUtils.show(mContext, "請輸入打印機名稱"); ToastUtils.show(mContext, "請輸入打印機名稱");
return; return;
...@@ -650,6 +652,7 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem ...@@ -650,6 +652,7 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
} }
} else if (v.getId() == R.id.print_test) { } else if (v.getId() == R.id.print_test) {
//打印測試 //打印測試
LoganManager.w_code(TAG, "打印測試 start");
CC.obtainBuilder(ComponentName.COMPONENT_PRINT) CC.obtainBuilder(ComponentName.COMPONENT_PRINT)
.addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_TEST) .addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_TEST)
.addParam("deviceBean", printerDeviceBean) .addParam("deviceBean", printerDeviceBean)
...@@ -660,9 +663,11 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem ...@@ -660,9 +663,11 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
// if (!result.isSuccess()) { // if (!result.isSuccess()) {
// ToastUtils.show(this, "打印失敗"); // ToastUtils.show(this, "打印失敗");
// } // }
LoganManager.w_code(TAG, "打印測試 end");
}); });
} }
LoganManager.w_code(TAG, "addOrTestPrint end");
} }
private boolean editTextIsNull(TextView edit) { private boolean editTextIsNull(TextView edit) {
......
...@@ -3,6 +3,15 @@ ...@@ -3,6 +3,15 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<!-- <ImageView-->
<!-- android:id="@+id/iv_img"-->
<!-- android:layout_width="@dimen/dp_58"-->
<!-- android:layout_height="@dimen/dp_58"-->
<!-- android:layout_marginTop="@dimen/dp_8"-->
<!-- android:layout_marginRight="@dimen/dp_8"-->
<!-- android:scaleType="fitXY"-->
<!-- android:src="@drawable/awe" />-->
<ImageView <ImageView
android:id="@+id/iv_img" android:id="@+id/iv_img"
android:layout_width="@dimen/dp_58" android:layout_width="@dimen/dp_58"
......
package com.gingersoft.gsa.cloud.table.app.printer;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2019/6/18
* 修订历史:2019/6/18
* 描述:
*/
public class PrintPaymentStub {
private String EVENT_NAME;
private String TXN_ID;
private boolean IS_REPRINT;
public String getEVENT_NAME() {
return EVENT_NAME;
}
public void setEVENT_NAME(String EVENT_NAME) {
this.EVENT_NAME = EVENT_NAME;
}
public String getTXN_ID() {
return TXN_ID;
}
public void setTXN_ID(String TXN_ID) {
this.TXN_ID = TXN_ID;
}
public boolean isIS_REPRINT() {
return IS_REPRINT;
}
public void setIS_REPRINT(boolean IS_REPRINT) {
this.IS_REPRINT = IS_REPRINT;
}
@Override
public String toString() {
return "PrintPaymentStub{" +
"EVENT_NAME='" + EVENT_NAME + '\'' +
", TXN_ID='" + TXN_ID + '\'' +
", IS_REPRINT=" + IS_REPRINT +
'}';
}
}
...@@ -3,13 +3,13 @@ package com.gingersoft.gsa.cloud.table.di.component; ...@@ -3,13 +3,13 @@ package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance; import dagger.BindsInstance;
import dagger.Component; import dagger.Component;
import com.gingersoft.gsa.cloud.table.mvp.contract.RegionFragmentContract; import com.gingersoft.gsa.cloud.table.mvp.contract.RegionTableContract;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.AllTableModule; import com.gingersoft.gsa.cloud.table.di.module.AllTableModule;
import com.jess.arms.di.scope.FragmentScope; import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionTableFragment;
/** /**
...@@ -27,12 +27,12 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionFragment; ...@@ -27,12 +27,12 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionFragment;
@FragmentScope @FragmentScope
@Component(modules = AllTableModule.class, dependencies = AppComponent.class) @Component(modules = AllTableModule.class, dependencies = AppComponent.class)
public interface AllTableComponent { public interface AllTableComponent {
void inject(RegionFragment fragment); void inject(RegionTableFragment fragment);
@Component.Builder @Component.Builder
interface Builder { interface Builder {
@BindsInstance @BindsInstance
AllTableComponent.Builder view(RegionFragmentContract.View view); AllTableComponent.Builder view(RegionTableContract.View view);
AllTableComponent.Builder appComponent(AppComponent appComponent); AllTableComponent.Builder appComponent(AppComponent appComponent);
......
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.BillDiscountModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.BillDiscountContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.discount.BillDiscountFragment;
/**
* ================================================
* 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 = BillDiscountModule.class, dependencies = AppComponent.class)
public interface BillDiscountComponent {
void inject(BillDiscountFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
BillDiscountComponent.Builder view(BillDiscountContract.View view);
BillDiscountComponent.Builder appComponent(AppComponent appComponent);
BillDiscountComponent build();
}
}
\ No newline at end of file
...@@ -2,21 +2,22 @@ package com.gingersoft.gsa.cloud.table.di.component; ...@@ -2,21 +2,22 @@ package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance; import dagger.BindsInstance;
import dagger.Component; import dagger.Component;
import dagger.Subcomponent;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.table.di.module.StateTableModule; import com.gingersoft.gsa.cloud.table.di.module.CouponModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.StateTableContract; import com.gingersoft.gsa.cloud.table.mvp.contract.CouponContract;
import com.jess.arms.di.scope.FragmentScope; import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.StateTableFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.discount.CouponFragment;
/** /**
* ================================================ * ================================================
* Description: * Description:
* <p> * <p>
* Created by MVPArmsTemplate on 12/28/2019 17:33 * Created by MVPArmsTemplate on 04/02/2021 17:28
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <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">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a> * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
...@@ -25,17 +26,17 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.StateTableFragment; ...@@ -25,17 +26,17 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.StateTableFragment;
* ================================================ * ================================================
*/ */
@FragmentScope @FragmentScope
@Component(modules = StateTableModule.class, dependencies = AppComponent.class) @Component(modules = CouponModule.class, dependencies = AppComponent.class)
public interface StateTableComponent { public interface CouponComponent {
void inject(StateTableFragment fragment); void inject(CouponFragment fragment);
@Component.Builder @Component.Builder
interface Builder { interface Builder {
@BindsInstance @BindsInstance
StateTableComponent.Builder view(StateTableContract.View view); CouponComponent.Builder view(CouponContract.View view);
StateTableComponent.Builder appComponent(AppComponent appComponent); CouponComponent.Builder appComponent(AppComponent appComponent);
StateTableComponent build(); CouponComponent build();
} }
} }
\ No newline at end of file
...@@ -3,8 +3,8 @@ package com.gingersoft.gsa.cloud.table.di.module; ...@@ -3,8 +3,8 @@ package com.gingersoft.gsa.cloud.table.di.module;
import dagger.Binds; import dagger.Binds;
import dagger.Module; import dagger.Module;
import com.gingersoft.gsa.cloud.table.mvp.contract.RegionFragmentContract; import com.gingersoft.gsa.cloud.table.mvp.contract.RegionTableContract;
import com.gingersoft.gsa.cloud.table.mvp.model.RegionFragmentModel; import com.gingersoft.gsa.cloud.table.mvp.model.RegionTableModel;
/** /**
...@@ -23,5 +23,5 @@ import com.gingersoft.gsa.cloud.table.mvp.model.RegionFragmentModel; ...@@ -23,5 +23,5 @@ import com.gingersoft.gsa.cloud.table.mvp.model.RegionFragmentModel;
public abstract class AllTableModule { public abstract class AllTableModule {
@Binds @Binds
abstract RegionFragmentContract.Model bindAllTableModel(RegionFragmentModel model); abstract RegionTableContract.Model bindAllTableModel(RegionTableModel model);
} }
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module; package com.gingersoft.gsa.cloud.table.di.module;
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; import dagger.Binds;
import dagger.Module; import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.contract.BillDiscountContract;
import com.gingersoft.gsa.cloud.table.mvp.model.BillDiscountModel;
import com.gingersoft.gsa.cloud.table.mvp.contract.StateTableContract; import java.util.ArrayList;
import com.gingersoft.gsa.cloud.table.mvp.model.StateTableModel; import java.util.List;
/** /**
* ================================================ * ================================================
* Description: * Description:
* <p> * <p>
* Created by MVPArmsTemplate on 12/28/2019 17:33 * Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <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">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a> * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
...@@ -20,8 +29,21 @@ import com.gingersoft.gsa.cloud.table.mvp.model.StateTableModel; ...@@ -20,8 +29,21 @@ import com.gingersoft.gsa.cloud.table.mvp.model.StateTableModel;
* ================================================ * ================================================
*/ */
@Module @Module
public abstract class StateTableModule { public abstract class BillDiscountModule {
@Binds @Binds
abstract StateTableContract.Model bindStateTableModel(StateTableModel model); abstract BillDiscountContract.Model bindBillDiscountModel(BillDiscountModel 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.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;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.table.mvp.contract.CouponContract;
import com.gingersoft.gsa.cloud.table.mvp.model.CouponModel;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:28
* <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 CouponModule {
@Binds
abstract CouponContract.Model bindCouponModel(CouponModel model);
@FragmentScope
@Provides
static List<TagViewItem> provideMemberCouponList(){
return new ArrayList<>();
}
@FragmentScope
@Provides
static TagViewAdapter provideMemberCouponAdapter(List<TagViewItem> memberCouponList){
return new TagViewAdapter(memberCouponList);
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module; package com.gingersoft.gsa.cloud.table.di.module;
import android.content.Context;
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.contract.MealStandContract;
import com.gingersoft.gsa.cloud.table.mvp.model.MealStandModel; 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 java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import javax.inject.Named;
import dagger.Binds; import dagger.Binds;
import dagger.Module; import dagger.Module;
import dagger.Provides;
/** /**
...@@ -25,4 +45,73 @@ public abstract class MealStandModule { ...@@ -25,4 +45,73 @@ public abstract class MealStandModule {
@Binds @Binds
abstract MealStandContract.Model bindMealStandModel(MealStandModel model); abstract MealStandContract.Model bindMealStandModel(MealStandModel model);
@ActivityScope
@Provides
@Named("foodGroupList")
static List<Food> provideFoodGroupList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
@Named("foodList")
static List<Food> provideFoodList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static List<ComboItem> provideFoodCombo() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static List<Modifier> provideModifierList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static List<Discount> provideDiscountList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static List<SoldoutCtrFood> provideSoldoutCtrList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static FoodGroupAdapter provideFoodGroupAdapter(MealStandContract.View IView, @Named("foodGroupList") List<Food> foodGroupList) {
return new FoodGroupAdapter(IView.getActivity(), foodGroupList, IView.getFromType());
}
@ActivityScope
@Provides
static FoodAdapter provideFoodAdapter(MealStandContract.View IView, @Named("foodList") List<Food> foodList) {
return new FoodAdapter(IView.getActivity(), foodList, IView.getFromType());
}
@ActivityScope
@Provides
static ComboAdapter provideComboAdapter(MealStandContract.View IView, List<ComboItem> comboItemList) {
return new ComboAdapter(IView.getActivity(), comboItemList);
}
@ActivityScope
@Provides
static ModifierAdapter provideModifierAdapter(MealStandContract.View IView, List<Modifier> modifierList) {
return new ModifierAdapter(IView.getActivity(), modifierList);
}
@ActivityScope
@Provides
static DiscountAdapter provideDiscountAdapter(MealStandContract.View IView, List<Discount> discountList) {
return new DiscountAdapter(IView.getActivity(), discountList);
}
} }
\ No newline at end of file
...@@ -35,15 +35,4 @@ public abstract class TableModule { ...@@ -35,15 +35,4 @@ public abstract class TableModule {
@Binds @Binds
abstract TableContract.Model bindTableModel(TableModel model); abstract TableContract.Model bindTableModel(TableModel model);
@ActivityScope
@Provides
static List<Food> provideFoodList() {
return new ArrayList<>();
}
@ActivityScope
@Provides
static FoodAdapter provideFoodAdapter(Context context, List<Food> foodList, int fromType) {
return new FoodAdapter(context, foodList, fromType);
}
} }
\ 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.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.order.discount.NomalDiscount;
import java.util.List;
/**
* @author : bin
* @create date: 2020-10-27
* @update date: 2020-10-27
* @description:賬單優惠券邏輯
*/
public class BillCouponAction implements Strategy<MemberCoupon> {
private Activity mContext;
/**
* 賬單優惠券列表
*/
private List<NomalDiscount> mNomalDiscountList;
private OnCallBackListener mListener;
public BillCouponAction(Activity context, OnCallBackListener listener) {
this.mContext = context;
this.mListener = listener;
}
public void setNomalDiscountList(List<NomalDiscount> nomalDiscountList) {
this.mNomalDiscountList = nomalDiscountList;
}
@Override
public void action(MemberCoupon discount) {
if (mListener == null) {
return;
}
}
@Override
public void destroy() {
}
private void exclusiveDiscount(MemberCoupon discount) {
if (mListener != null) {
}
}
public interface OnCallBackListener {
void exclusiveRemoveOthers(List<NomalDiscount> nomalDiscountList);
void preformAddDiscount(MemberCoupon discount);
}
}
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.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.jess.arms.utils.ArmsUtils;
import java.util.List;
/**
* @author : bin
* @create date: 2020-10-27
* @update date: 2020-10-27
* @description:食品優惠券邏輯
*/
public class MealCouponAction implements Strategy<MemberCoupon> {
private Activity mContext;
/**
* 食品優惠券列表
*/
private List<NomalDiscount> mNomalDiscountList;
private OnCallBackListener mListener;
public MealCouponAction(Activity context, OnCallBackListener listener) {
this.mContext = context;
this.mListener = listener;
}
public void setNomalDiscountList(List<NomalDiscount> nomalDiscountList) {
this.mNomalDiscountList = nomalDiscountList;
}
@Override
public void action(MemberCoupon discount) {
if (mListener == null) {
return;
}
}
@Override
public void destroy() {
}
private void exclusiveDiscount(MemberCoupon discount) {
if (mListener != null) {
}
}
/**
* 是否有獨佔折扣
*
* @return
*/
private boolean hasExclusiveDiscount() {
for (NomalDiscount nomalDiscount : mNomalDiscountList) {
if (nomalDiscount.getDiscount().getExclusive() == 1) {
return true;
}
}
return false;
}
public interface OnCallBackListener {
void exclusiveRemoveOthers(List<NomalDiscount> nomalDiscountList);
void preformAddDiscount(MemberCoupon discount);
}
}
...@@ -10,13 +10,12 @@ import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener; ...@@ -10,13 +10,12 @@ import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosAction; import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.PosPay; import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment; import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.request.bg.GetTxnIdRequest; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.request.pos.VoidRequest; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.VoidRequest;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.VoidRespose; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.VoidRespose;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse; import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.jess.arms.base.BaseFragmentActivity; import com.jess.arms.base.BaseFragmentActivity;
import com.jess.arms.base.delegate.IActivity;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog; import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction; import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
...@@ -79,59 +78,59 @@ public class CancelOrder implements Strategy<OrderManagerResponse> { ...@@ -79,59 +78,59 @@ public class CancelOrder implements Strategy<OrderManagerResponse> {
} }
txnIdRequest.setAmount(datasBean.getAmount()); txnIdRequest.setAmount(datasBean.getAmount());
VoidRequest voidRequest = new VoidRequest(); VoidRequest voidRequest = new VoidRequest();
PosPay.voidO(mActivity, mRootView, voidRequest, txnIdRequest, new OnPosActionListener<VoidRespose>() { // PosPay.voidO(mActivity, mRootView, voidRequest, txnIdRequest, new OnPosActionListener<VoidRespose>() {
//
@Override // @Override
public void onPosSuccess(VoidRespose response) { // public void onPosSuccess(VoidRespose response) {
LoganManager.w_order(TAG, "onPosSuccess: " + response.toString()); // LoganManager.w_order(TAG, "onPosSuccess: " + response.toString());
if (cancelListener != null) { // if (cancelListener != null) {
cancelListener.refeshOrders(); // cancelListener.refeshOrders();
} // }
} // }
//
@Override // @Override
public void onPosException(Exception e) { // public void onPosException(VoidRespose response, Exception e) {
LoganManager.w_order(TAG, "onPosException: " + e.getMessage()); // LoganManager.w_order(TAG, "onPosException: " + e.getMessage());
PosActionStatusExceptionFragment statusExceptionFragment = (PosActionStatusExceptionFragment) mActivity.findFragment(PosActionStatusExceptionFragment.class); // PosActionStatusExceptionFragment statusExceptionFragment = (PosActionStatusExceptionFragment) mActivity.findFragment(PosActionStatusExceptionFragment.class);
if (statusExceptionFragment == null) { // if (statusExceptionFragment == null) {
PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam(); // PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam();
statusExceptionParam.setTxnId(datasBean.getPayTxnId()); // statusExceptionParam.setTxnId(datasBean.getPayTxnId());
statusExceptionParam.setAmount(datasBean.getAmount()); // statusExceptionParam.setAmount(datasBean.getAmount());
statusExceptionParam.setOrderId(datasBean.getId()); // statusExceptionParam.setOrderId(datasBean.getId());
statusExceptionParam.setOrderNo(datasBean.getOrderNo()); // statusExceptionParam.setOrderNo(datasBean.getOrderNo());
statusExceptionParam.setPayMethodName("VISA測試"); // statusExceptionParam.setPayMethodName("VISA測試");
statusExceptionParam.setPosAction(PosAction.VOID); // statusExceptionParam.setPosAction(PosAction.VOID);
mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam)); // mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam));
}else{ // }else{
mActivity.start(statusExceptionFragment); // mActivity.start(statusExceptionFragment);
} // }
} // }
//
@Override // @Override
public void onPosInvalid(String e) { // public void onPosInvalid(String e) {
LoganManager.w_order(TAG, "onPosInvalid: " + e); // LoganManager.w_order(TAG, "onPosInvalid: " + e);
} // }
//
@Override // @Override
public void onUpdateStatusSuccess(VoidRespose response) { // public void onUpdateStatusSuccess(VoidRespose response) {
LoganManager.w_order(TAG, "onUpdateStatusSuccess: " + response.toString()); // LoganManager.w_order(TAG, "onUpdateStatusSuccess: " + response.toString());
} // }
//
@Override // @Override
public void onUpdateStatusError(Throwable e) { // public void onUpdateStatusError(Throwable e) {
LoganManager.w_order(TAG, "onUpdateStatusError: " + e.getMessage()); // LoganManager.w_order(TAG, "onUpdateStatusError: " + e.getMessage());
if (mActivity.findFragment(PosActionStatusExceptionFragment.class) == null) { // if (mActivity.findFragment(PosActionStatusExceptionFragment.class) == null) {
PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam(); // PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam();
statusExceptionParam.setTxnId(datasBean.getPayTxnId()); // statusExceptionParam.setTxnId(datasBean.getPayTxnId());
statusExceptionParam.setAmount(datasBean.getAmount()); // statusExceptionParam.setAmount(datasBean.getAmount());
statusExceptionParam.setOrderId(datasBean.getId()); // statusExceptionParam.setOrderId(datasBean.getId());
statusExceptionParam.setOrderNo(datasBean.getOrderNo()); // statusExceptionParam.setOrderNo(datasBean.getOrderNo());
statusExceptionParam.setPayMethodName("VISA測試"); // statusExceptionParam.setPayMethodName("VISA測試");
statusExceptionParam.setPosAction(PosAction.VOID); // statusExceptionParam.setPosAction(PosAction.VOID);
mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam)); // mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam));
} // }
} // }
}); // });
} }
private OnCancelListener cancelListener; private OnCancelListener cancelListener;
......
package com.gingersoft.gsa.cloud.table.mvp.action.order; package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.app.Activity;
import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.text.TextUtils; 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; import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.patterns.Strategy; import com.gingersoft.gsa.cloud.common.patterns.Strategy;
import com.gingersoft.gsa.cloud.common.utils.AppDevices;
import com.gingersoft.gsa.cloud.common.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.component.ComponentName;
import com.gingersoft.gsa.cloud.order.bean.response.OrderResponse; import com.gingersoft.gsa.cloud.order.bean.response.OrderResponse;
import com.gingersoft.gsa.cloud.order.cart.ShoppingCart;
import com.gingersoft.gsa.cloud.order.commodity.OrderDetail; import com.gingersoft.gsa.cloud.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.order.order.DoshokuOrder; import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
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.hywebpos.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; 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.model.utils.OrderAssemblyUtil;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity;
import com.jess.arms.base.BaseFragmentActivity; import com.jess.arms.base.BaseFragmentActivity;
import com.jess.arms.base.delegate.IActivity;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
......
package com.gingersoft.gsa.cloud.table.mvp.action.order; package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.content.Context;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
...@@ -21,10 +20,9 @@ import com.gingersoft.gsa.cloud.order.order.DoshokuOrder; ...@@ -21,10 +20,9 @@ import com.gingersoft.gsa.cloud.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod; import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener; import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosPay; import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.HywebPosResponse; 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.PrintContent;
import com.gingersoft.gsa.cloud.print.bean.adapter.PrintContentAdapter; import com.gingersoft.gsa.cloud.print.bean.adapter.PrintContentAdapter;
import com.gingersoft.gsa.cloud.table.mvp.action.table.TableAction;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse; 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.model.utils.OrderAssemblyUtil;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem3; import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem3;
...@@ -106,36 +104,36 @@ public class PrintOrderAction implements Strategy<OrderManagerResponse> { ...@@ -106,36 +104,36 @@ public class PrintOrderAction implements Strategy<OrderManagerResponse> {
} }
private void printPosStub(OrderManagerResponse orderDetailItem, DoshokuOrder doshokuOrder, TableBean.DataBean dataBean) { private void printPosStub(OrderManagerResponse orderDetailItem, DoshokuOrder doshokuOrder, TableBean.DataBean dataBean) {
PosPay.printStub(mActivity, mRootView, orderDetailItem.getPayTxnId(), new OnPosActionListener() { // PosPay.printStub(mActivity, mRootView, orderDetailItem.getPayTxnId(), new OnPosActionListener() {
@Override // @Override
public void onPosSuccess(HywebPosResponse response) { // public void onPosSuccess(HywebPosResponse response) {
if(printlListener != null){ // if(printlListener != null){
printlListener.printPosStubResult(true); // printlListener.printPosStubResult(true);
} // }
printBill(orderDetailItem,doshokuOrder, dataBean,true); // printBill(orderDetailItem,doshokuOrder, dataBean,true);
} // }
//
@Override // @Override
public void onPosException(Exception e) { // public void onPosException(HywebPosResponse response, Exception e) {
if(printlListener != null){ // if(printlListener != null){
printlListener.printPosStubResult(false); // printlListener.printPosStubResult(false);
} // }
printBill(orderDetailItem,doshokuOrder, dataBean,true); // printBill(orderDetailItem,doshokuOrder, dataBean,true);
} // }
//
@Override // @Override
public void onPosInvalid(String e) { // public void onPosInvalid(String e) {
printBill(orderDetailItem,doshokuOrder, dataBean,true); // printBill(orderDetailItem,doshokuOrder, dataBean,true);
} // }
//
@Override // @Override
public void onUpdateStatusSuccess(HywebPosResponse response) { // public void onUpdateStatusSuccess(HywebPosResponse response) {
} // }
//
@Override // @Override
public void onUpdateStatusError(Throwable e) { // public void onUpdateStatusError(Throwable e) {
} // }
}); // });
} }
private void printBill(OrderManagerResponse orderDetailItem,DoshokuOrder doshokuOrder, TableBean.DataBean dataBean,boolean printStub) { private void printBill(OrderManagerResponse orderDetailItem,DoshokuOrder doshokuOrder, TableBean.DataBean dataBean,boolean printStub) {
......
package com.gingersoft.gsa.cloud.table.mvp.action.order; package com.gingersoft.gsa.cloud.table.mvp.action.order;
import android.app.Activity;
import android.content.Context;
import android.text.TextUtils; import android.text.TextUtils;
import com.gingersoft.gsa.cloud.common.logan.LoganManager; import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.patterns.Strategy; import com.gingersoft.gsa.cloud.common.patterns.Strategy;
...@@ -10,9 +8,9 @@ import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener; ...@@ -10,9 +8,9 @@ import com.gingersoft.gsa.cloud.pay.pos.OnPosActionListener;
import com.gingersoft.gsa.cloud.pay.pos.PosAction; import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.PosPay; import com.gingersoft.gsa.cloud.pay.pos.PosPay;
import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment; import com.gingersoft.gsa.cloud.pay.pos.fragment.PosActionStatusExceptionFragment;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.request.bg.GetTxnIdRequest; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.bg.GetTxnIdRequest;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.request.pos.RefundRequest; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.request.pos.RefundRequest;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.bean.response.pos.RefundRespose; import com.gingersoft.gsa.cloud.pay.pos.hyweb.bean.response.pos.RefundRespose;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse; import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.OrderManagerResponse;
import com.jess.arms.base.BaseFragmentActivity; import com.jess.arms.base.BaseFragmentActivity;
...@@ -76,63 +74,63 @@ public class RefundOrder implements Strategy<OrderManagerResponse> { ...@@ -76,63 +74,63 @@ public class RefundOrder implements Strategy<OrderManagerResponse> {
RefundRequest refundRequest = new RefundRequest(); RefundRequest refundRequest = new RefundRequest();
refundRequest.setPAYMENT_APP_ID(getPaymentAppIdByPays(datasBean.getOrderPays())); refundRequest.setPAYMENT_APP_ID(getPaymentAppIdByPays(datasBean.getOrderPays()));
refundRequest.setTXN_AMT(datasBean.getAmount()); refundRequest.setTXN_AMT(datasBean.getAmount());
PosPay.refund(mActivity, mRootView, refundRequest, txnIdRequest, new OnPosActionListener<RefundRespose>() { // PosPay.refund(mActivity, mRootView, refundRequest, txnIdRequest, new OnPosActionListener<RefundRespose>() {
//
@Override // @Override
public void onPosSuccess(RefundRespose response) { // public void onPosSuccess(RefundRespose response) {
LoganManager.w_order(TAG, "onPosSuccess: " + response.toString()); // LoganManager.w_order(TAG, "onPosSuccess: " + response.toString());
if(refundListener != null){ // if(refundListener != null){
refundListener.refeshOrders(); // refundListener.refeshOrders();
} // }
} // }
//
@Override // @Override
public void onPosException(Exception e) { // public void onPosException(RefundRespose response,Exception e) {
LoganManager.w_order(TAG, "onPosException: " + e.getMessage()); // LoganManager.w_order(TAG, "onPosException: " + e.getMessage());
PosActionStatusExceptionFragment statusExceptionFragment = (PosActionStatusExceptionFragment) mActivity.findFragment(PosActionStatusExceptionFragment.class); // PosActionStatusExceptionFragment statusExceptionFragment = (PosActionStatusExceptionFragment) mActivity.findFragment(PosActionStatusExceptionFragment.class);
if (statusExceptionFragment == null) { // if (statusExceptionFragment == null) {
PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam(); // PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam();
statusExceptionParam.setTxnId(datasBean.getPayTxnId()); // statusExceptionParam.setTxnId(datasBean.getPayTxnId());
statusExceptionParam.setAmount(datasBean.getAmount()); // statusExceptionParam.setAmount(datasBean.getAmount());
statusExceptionParam.setOrderId(datasBean.getId()); // statusExceptionParam.setOrderId(datasBean.getId());
statusExceptionParam.setOrderNo(datasBean.getOrderNo()); // statusExceptionParam.setOrderNo(datasBean.getOrderNo());
statusExceptionParam.setPayMethodName("VISA測試"); // statusExceptionParam.setPayMethodName("VISA測試");
statusExceptionParam.setPosAction(PosAction.REFUND); // statusExceptionParam.setPosAction(PosAction.REFUND);
mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam)); // mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam));
}else { // }else {
mActivity.start(statusExceptionFragment); // mActivity.start(statusExceptionFragment);
} // }
} // }
//
@Override // @Override
public void onPosInvalid(String e) { // public void onPosInvalid(String e) {
LoganManager.w_order(TAG, "onPosInvalid: " + e); // LoganManager.w_order(TAG, "onPosInvalid: " + e);
} // }
//
@Override // @Override
public void onUpdateStatusSuccess(RefundRespose response) { // public void onUpdateStatusSuccess(RefundRespose response) {
LoganManager.w_order(TAG, "onUpdateStatusSuccess: " + response.toString()); // LoganManager.w_order(TAG, "onUpdateStatusSuccess: " + response.toString());
} // }
//
//
@Override // @Override
public void onUpdateStatusError(Throwable e) { // public void onUpdateStatusError(Throwable e) {
LoganManager.w_order(TAG, "onUpdateStatusError: " + e.getMessage()); // LoganManager.w_order(TAG, "onUpdateStatusError: " + e.getMessage());
PosActionStatusExceptionFragment statusExceptionFragment = (PosActionStatusExceptionFragment) mActivity.findFragment(PosActionStatusExceptionFragment.class); // PosActionStatusExceptionFragment statusExceptionFragment = (PosActionStatusExceptionFragment) mActivity.findFragment(PosActionStatusExceptionFragment.class);
if (statusExceptionFragment == null) { // if (statusExceptionFragment == null) {
PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam(); // PosActionStatusExceptionParam statusExceptionParam = new PosActionStatusExceptionParam();
statusExceptionParam.setTxnId(datasBean.getPayTxnId()); // statusExceptionParam.setTxnId(datasBean.getPayTxnId());
statusExceptionParam.setAmount(datasBean.getAmount()); // statusExceptionParam.setAmount(datasBean.getAmount());
statusExceptionParam.setOrderId(datasBean.getId()); // statusExceptionParam.setOrderId(datasBean.getId());
statusExceptionParam.setOrderNo(datasBean.getOrderNo()); // statusExceptionParam.setOrderNo(datasBean.getOrderNo());
statusExceptionParam.setPayMethodName("VISA測試"); // statusExceptionParam.setPayMethodName("VISA測試");
statusExceptionParam.setPosAction(PosAction.REFUND); // statusExceptionParam.setPosAction(PosAction.REFUND);
mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam)); // mActivity.loadRootFragment(R.id.rl_container, PosActionStatusExceptionFragment.newInstance(statusExceptionParam));
}else{ // }else{
mActivity.start(statusExceptionFragment); // mActivity.start(statusExceptionFragment);
} // }
} // }
}); // });
} }
private String getPaymentAppIdByPays(List<OrderManagerResponse.OrderPayBean> orderPays) { private String getPaymentAppIdByPays(List<OrderManagerResponse.OrderPayBean> orderPays) {
......
package com.gingersoft.gsa.cloud.table.mvp.contract; package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.jess.arms.base.DefaultAdapter; import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
import com.kingja.loadsir.callback.Callback;
import java.util.List;
/** /**
* ================================================ * ================================================
* Description: * Description:
* <p> * <p>
* Created by MVPArmsTemplate on 12/28/2019 17:33 * Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <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">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a> * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
...@@ -17,16 +22,14 @@ import com.jess.arms.mvp.IModel; ...@@ -17,16 +22,14 @@ import com.jess.arms.mvp.IModel;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a> * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================ * ================================================
*/ */
public interface StateTableContract { public interface BillDiscountContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息 //对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView { interface View extends IView {
void returnBillCoupon(List<Discount> discounts);
void setStateTableAdapter(DefaultAdapter adapter);
} }
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存 //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel { interface Model extends IModel {
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.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
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;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:28
* <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 CouponContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void returnMemberCouponList(List<MemberCoupon> memberCoupons);
void showLoadSirSuccess();
void showLoadSirCall(Class<? extends Callback> call);
LoadService getLoadService();
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
Single<List<MemberCoupon>> getMemberWalletList(int brandId, long memberId, long limitType, long pageIndex, long pageSize);
}
}
...@@ -5,6 +5,7 @@ import android.widget.BaseAdapter; ...@@ -5,6 +5,7 @@ import android.widget.BaseAdapter;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.member.MemberInfo; 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.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Discount; import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
...@@ -104,10 +105,13 @@ public interface MealStandContract { ...@@ -104,10 +105,13 @@ public interface MealStandContract {
void setMealRvScrollToPosition(int position); void setMealRvScrollToPosition(int position);
List<Food> getFoodGroupList();
Activity getActivity(); Activity getActivity();
void setModifierTop(int Margins); int getFromType();
void setModifierTop(int Margins);
void setCustomFoodDialog(int customType, OrderDetail foodItem); void setCustomFoodDialog(int customType, OrderDetail foodItem);
} }
......
...@@ -4,9 +4,9 @@ import android.content.Intent; ...@@ -4,9 +4,9 @@ import android.content.Intent;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.table.TableBean; import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionFragment;
import com.gingersoft.gsa.cloud.database.bean.Discount; 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.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import java.util.List; import java.util.List;
...@@ -34,7 +34,7 @@ public interface OrderContentContract { ...@@ -34,7 +34,7 @@ public interface OrderContentContract {
void returnTableList(List<TableBean.DataBean> dataBeanList); void returnTableList(List<TableBean.DataBean> dataBeanList);
RegionFragment getCurrentTableFragment(); RegionTableFragment getCurrentTableFragment();
void clickTableItem(TableBean.DataBean dataBean); void clickTableItem(TableBean.DataBean dataBean);
......
...@@ -17,11 +17,11 @@ import com.jess.arms.mvp.IModel; ...@@ -17,11 +17,11 @@ import com.jess.arms.mvp.IModel;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a> * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================ * ================================================
*/ */
public interface RegionFragmentContract { public interface RegionTableContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息 //对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView { interface View extends IView {
void showEmptyView(boolean isSuccess, int size, Throwable t); void showLoadSirCall(boolean isSuccess, int size, Throwable t);
void setAllTableAdapter(DefaultAdapter adapter); void setAllTableAdapter(DefaultAdapter adapter);
} }
......
...@@ -4,7 +4,7 @@ import com.gingersoft.gsa.cloud.common.bean.BaseResult; ...@@ -4,7 +4,7 @@ import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.table.TableBean; import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse; import com.gingersoft.gsa.cloud.table.mvp.model.bean.response.BaseOrderResponse;
import com.gingersoft.gsa.cloud.table.mvp.action.table.TableAction; import com.gingersoft.gsa.cloud.table.mvp.action.table.TableAction;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.RegionTableFragment;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
...@@ -37,7 +37,7 @@ public interface TableContract { ...@@ -37,7 +37,7 @@ public interface TableContract {
void returnTableList(List<TableBean.DataBean> dataBeanList); void returnTableList(List<TableBean.DataBean> dataBeanList);
RegionFragment getCurrentTableFragment(); RegionTableFragment getCurrentTableFragment();
void clickTableItem(TableBean.DataBean dataBean); void clickTableItem(TableBean.DataBean dataBean);
......
...@@ -2,20 +2,27 @@ package com.gingersoft.gsa.cloud.table.mvp.model; ...@@ -2,20 +2,27 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.table.mvp.contract.StateTableContract; import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.gingersoft.gsa.cloud.database.utils.DiscountDaoUtils;
import com.gingersoft.gsa.cloud.table.mvp.model.utils.MealConditionFilterUtils;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.jess.arms.di.scope.FragmentScope;
import com.jess.arms.integration.IRepositoryManager; import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel; import com.jess.arms.mvp.BaseModel;
import com.jess.arms.di.scope.FragmentScope;
import javax.inject.Inject; import javax.inject.Inject;
import com.gingersoft.gsa.cloud.table.mvp.contract.BillDiscountContract;
import java.util.List;
/** /**
* ================================================ * ================================================
* Description: * Description:
* <p> * <p>
* Created by MVPArmsTemplate on 12/28/2019 17:33 * Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <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">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a> * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
...@@ -24,14 +31,14 @@ import javax.inject.Inject; ...@@ -24,14 +31,14 @@ import javax.inject.Inject;
* ================================================ * ================================================
*/ */
@FragmentScope @FragmentScope
public class StateTableModel extends BaseModel implements StateTableContract.Model { public class BillDiscountModel extends BaseModel implements BillDiscountContract.Model {
@Inject @Inject
Gson mGson; Gson mGson;
@Inject @Inject
Application mApplication; Application mApplication;
@Inject @Inject
public StateTableModel(IRepositoryManager repositoryManager) { public BillDiscountModel(IRepositoryManager repositoryManager) {
super(repositoryManager); super(repositoryManager);
} }
...@@ -41,4 +48,11 @@ public class StateTableModel extends BaseModel implements StateTableContract.Mod ...@@ -41,4 +48,11 @@ public class StateTableModel extends BaseModel implements StateTableContract.Mod
this.mGson = null; this.mGson = null;
this.mApplication = null; this.mApplication = null;
} }
@Override
public List<Discount> queryDB_DiscountList(byte discountScope, byte discountType) {
DiscountDaoUtils discountDaoUtils = new DiscountDaoUtils(mApplication);
List<Discount> discountList = discountDaoUtils.queryDiscountByQueryBuilder();
return MealConditionFilterUtils.discountConditionFilter(discountList,discountScope,discountType);
}
} }
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
import com.gingersoft.gsa.cloud.common.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.table.mvp.model.service.MealService;
import com.gingersoft.gsa.cloud.table.mvp.model.service.MemberService;
import com.google.gson.Gson;
import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel;
import com.jess.arms.di.scope.FragmentScope;
import javax.inject.Inject;
import com.gingersoft.gsa.cloud.table.mvp.contract.CouponContract;
import java.util.ArrayList;
import java.util.List;
import io.reactivex.Single;
import io.reactivex.functions.Function;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:28
* <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
public class CouponModel extends BaseModel implements CouponContract.Model {
@Inject
Gson mGson;
@Inject
Application mApplication;
@Inject
public CouponModel(IRepositoryManager repositoryManager) {
super(repositoryManager);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mGson = null;
this.mApplication = null;
}
@Override
public Single<List<MemberCoupon>> getMemberWalletList(int brandId, long memberId, long limitType, long pageIndex, long pageSize) {
return mRepositoryManager.obtainRetrofitService(MemberService.class)
.getMemberWalletList(brandId, memberId, limitType, pageIndex, pageSize)
.map(new Function<BaseResult, List<MemberCoupon>>() {
@Override
public List<MemberCoupon> apply(BaseResult result) throws Exception {
if (result.isSuccess()) {
return GsonUtils.jsonToList(result.getData(), MemberCoupon.class);
} else {
return new ArrayList<>();
}
}
});
}
}
\ No newline at end of file
...@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model; ...@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.table.mvp.contract.RegionTableContract;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.jess.arms.integration.IRepositoryManager; import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel; import com.jess.arms.mvp.BaseModel;
...@@ -10,8 +11,6 @@ import com.jess.arms.di.scope.FragmentScope; ...@@ -10,8 +11,6 @@ import com.jess.arms.di.scope.FragmentScope;
import javax.inject.Inject; import javax.inject.Inject;
import com.gingersoft.gsa.cloud.table.mvp.contract.RegionFragmentContract;
/** /**
* ================================================ * ================================================
...@@ -26,14 +25,14 @@ import com.gingersoft.gsa.cloud.table.mvp.contract.RegionFragmentContract; ...@@ -26,14 +25,14 @@ import com.gingersoft.gsa.cloud.table.mvp.contract.RegionFragmentContract;
* ================================================ * ================================================
*/ */
@FragmentScope @FragmentScope
public class RegionFragmentModel extends BaseModel implements RegionFragmentContract.Model { public class RegionTableModel extends BaseModel implements RegionTableContract.Model {
@Inject @Inject
Gson mGson; Gson mGson;
@Inject @Inject
Application mApplication; Application mApplication;
@Inject @Inject
public RegionFragmentModel(IRepositoryManager repositoryManager) { public RegionTableModel(IRepositoryManager repositoryManager) {
super(repositoryManager); super(repositoryManager);
} }
......
...@@ -2,8 +2,6 @@ package com.gingersoft.gsa.cloud.table.mvp.model.bean.response; ...@@ -2,8 +2,6 @@ package com.gingersoft.gsa.cloud.table.mvp.model.bean.response;
import android.text.TextUtils; import android.text.TextUtils;
import androidx.annotation.Nullable;
import com.gingersoft.gsa.cloud.common.core.member.MemberInfo; import com.gingersoft.gsa.cloud.common.core.member.MemberInfo;
import com.gingersoft.gsa.cloud.common.core.table.TableBean; import com.gingersoft.gsa.cloud.common.core.table.TableBean;
import com.gingersoft.gsa.cloud.common.oaId.DeviceID; import com.gingersoft.gsa.cloud.common.oaId.DeviceID;
...@@ -12,7 +10,7 @@ import com.gingersoft.gsa.cloud.order.bean.response.OrderDiscountResponse; ...@@ -12,7 +10,7 @@ import com.gingersoft.gsa.cloud.order.bean.response.OrderDiscountResponse;
import com.gingersoft.gsa.cloud.order.bean.response.OrderResponse; import com.gingersoft.gsa.cloud.order.bean.response.OrderResponse;
import com.gingersoft.gsa.cloud.pay.bean.PayMethod; import com.gingersoft.gsa.cloud.pay.bean.PayMethod;
import com.gingersoft.gsa.cloud.pay.pos.PosAction; import com.gingersoft.gsa.cloud.pay.pos.PosAction;
import com.gingersoft.gsa.cloud.pay.pos.hywebpos.constant.PayMethodConstant; import com.gingersoft.gsa.cloud.pay.pos.hyweb.constant.PayMethodConstant;
import java.io.Serializable; import java.io.Serializable;
import java.util.List; import java.util.List;
......
...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model.service; ...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model.service;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import io.reactivex.Observable; import io.reactivex.Observable;
import io.reactivex.Single;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager; import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
import retrofit2.http.GET; import retrofit2.http.GET;
import retrofit2.http.Headers; import retrofit2.http.Headers;
...@@ -27,4 +28,7 @@ public interface MemberService { ...@@ -27,4 +28,7 @@ public interface MemberService {
@GET("coupon/queryCoupon" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @GET("coupon/queryCoupon" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> queryCoupon(@Query("tableId") int tableId,@Query("memberId") Long memberId, @Query("couponMemberId") long couponMemberId,@Query("couponNo") String couponNo,@Query("restaurantId") int restaurantId); Observable<BaseResult> queryCoupon(@Query("tableId") int tableId,@Query("memberId") Long memberId, @Query("couponMemberId") long couponMemberId,@Query("couponNo") String couponNo,@Query("restaurantId") int restaurantId);
@Headers({"Domain-Name: ricepon_member"})
@GET("member/getMemberWalletList" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Single<BaseResult> getMemberWalletList(@Query("brandId") int brandId, @Query("memberId") long memberId, @Query("limitType") long limitType, @Query("pageIndex") long pageIndex, @Query("pageSize") long pageSize);
} }
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