Commit 261b3c34 by 宁斌

新增餐檯管理頁,細項多選添加到最後面

parent 77a16245
......@@ -63,5 +63,8 @@ public interface DownloadContract {
Observable<BaseResult> downDiscount(int restaurantId);
Observable<BaseResult> downExpandInfo(int restaurantId);
Observable<BaseResult> downPrinterList(int restaurantId);
}
}
......@@ -113,5 +113,17 @@ public class DownloadModel extends BaseModel implements DownloadContract.Model {
.downDiscount(restaurantId);
}
@Override
public Observable<BaseResult> downExpandInfo(int restaurantId) {
return mRepositoryManager.obtainRetrofitService(DownloadService.class)
.downExpandInfo(restaurantId);
}
@Override
public Observable<BaseResult> downPrinterList(int restaurantId) {
return mRepositoryManager.obtainRetrofitService(DownloadService.class)
.downPrinterList(restaurantId);
}
}
\ No newline at end of file
......@@ -39,7 +39,6 @@ public class DownloadTaskImp implements Runnable {
// presenter.downFoodModifier();
// break;
// }
switch (request.getDownTag()) {
case 0:
presenter.downFun(request.getDownTag());
......@@ -62,6 +61,12 @@ public class DownloadTaskImp implements Runnable {
case 6:
presenter.downDiscount(request.getDownTag());
break;
case 7:
presenter.downExpandInfo(request.getDownTag());
break;
case 8:
presenter.downPrinterList(request.getDownTag());
break;
}
}
}
......@@ -40,4 +40,10 @@ public interface DownloadService {
@GET(Api.restaurant_discount + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> downDiscount(@Query("restaurantId") int restaurantId);
@GET(Api.expand_info + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> downExpandInfo(@Query("restaurantId") int restaurantId);
@GET(Api.printerDevice_list + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> downPrinterList(@Query("restaurantId") int restaurantId);
}
......@@ -217,7 +217,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
// functions.add(new Function((long) 142, 151, 5, "餐牌管理", R.drawable.ic_meals_menu_management));
functions.add(new Function((long) 142, 151, 5, "賬單管理", R.drawable.ic_meals_menu_management, 0));
functions.add(new Function((long) 142, 151, 5, "外賣接單", R.drawable.ic_takeaway_orders, 0));
functions.add(new Function((long) 143, 151, 5, "餐臺管理", R.drawable.ic_dining_table_management_close, 1));
functions.add(new Function((long) 143, 151, 5, "餐臺管理", R.drawable.ic_dining_table_management, 0));
functions.add(new Function((long) 144, 151, 5, "打印管理", R.drawable.ic_print_management, 0));
functions.add(new Function((long) 145, 151, 5, "支付管理", R.drawable.ic_pay_management_close, 1));
functions.add(new Function((long) 146, 151, 5, "折扣管理", R.drawable.ic_discount_management_close, 1));
......@@ -297,6 +297,11 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
.setActionName("showSoldoutCtrlActivity")
.build()
.call();
}else if(name.equals("餐臺管理")){
CC.obtainBuilder("Component.Manager")
.setActionName("showTableManageActivity")
.build()
.call();
}
}
......
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.gingersoft.gsa.cloud.manager">
<application>
<activity android:name=".mvp.ui.activity.TableManageActivity"></activity>
<!-- arms配置 -->
<meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value="ConfigModule" />
<meta-data
android:name="design_width_in_dp"
android:value="360" />
<meta-data
android:name="design_height_in_dp"
android:value="640" />
</application>
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<uses-permission android:name="android.permission.INTERNET" />
......
......@@ -2,15 +2,8 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.gingersoft.gsa.cloud.manager">
<application
android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:networkSecurityConfig="@xml/network_android"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<application>
<activity android:name=".mvp.ui.activity.TableManageActivity"></activity>
<!-- arms配置 -->
<meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
......@@ -20,14 +13,14 @@
android:value="360" />
<meta-data
android:name="design_height_in_dp"
android:value="540" />
android:value="640" />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
</manifest>
<uses-permission android:name="android.permission.INTERNET" />
</manifest>
\ No newline at end of file
......@@ -4,6 +4,7 @@ import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent;
import com.gingersoft.gsa.cloud.manager.mvp.ui.activity.TableManageActivity;
public class ComponentManager implements IComponent {
......@@ -26,8 +27,8 @@ public class ComponentManager implements IComponent {
public boolean onCall(CC cc) {
String actionName = cc.getActionName();
switch (actionName) {
case "showSoldoutCtrlActivity":
openSoldoutCtrlActivity(cc);
case "showTableManageActivity":
openTableManageActivity(cc);
break;
default:
//这个逻辑分支上没有调用CC.sendCCResult(...),是一种错误的示例
......@@ -38,9 +39,9 @@ public class ComponentManager implements IComponent {
return false;
}
private void openSoldoutCtrlActivity(CC cc) {
// CCUtil.navigateTo(cc, SoldoutCtrlActivity.class);
// CC.sendCCResult(cc.getCallId(), CCResult.success());
private void openTableManageActivity(CC cc) {
CCUtil.navigateTo(cc, TableManageActivity.class);
CC.sendCCResult(cc.getCallId(), CCResult.success());
}
......
package com.gingersoft.gsa.cloud.manager.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.manager.di.module.AddAreaModule;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddAreaContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.manager.mvp.ui.fragment.AddAreaFragment;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 = AddAreaModule.class, dependencies = AppComponent.class)
public interface AddAreaComponent {
void inject(AddAreaFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
AddAreaComponent.Builder view(AddAreaContract.View view);
AddAreaComponent.Builder appComponent(AppComponent appComponent);
AddAreaComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.manager.di.module.AddTableModule;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddTableContract;
import com.jess.arms.di.scope.FragmentScope;
import com.gingersoft.gsa.cloud.manager.mvp.ui.fragment.AddTableFragment;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 = AddTableModule.class, dependencies = AppComponent.class)
public interface AddTableComponent {
void inject(AddTableFragment fragment);
@Component.Builder
interface Builder {
@BindsInstance
AddTableComponent.Builder view(AddTableContract.View view);
AddTableComponent.Builder appComponent(AppComponent appComponent);
AddTableComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.jess.arms.di.component.AppComponent;
import com.gingersoft.gsa.cloud.manager.di.module.TableManageModule;
import com.gingersoft.gsa.cloud.manager.mvp.contract.TableManageContract;
import com.jess.arms.di.scope.ActivityScope;
import com.gingersoft.gsa.cloud.manager.mvp.ui.activity.TableManageActivity;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/13/2020 14:47
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
@Component(modules = TableManageModule.class, dependencies = AppComponent.class)
public interface TableManageComponent {
void inject(TableManageActivity activity);
@Component.Builder
interface Builder {
@BindsInstance
TableManageComponent.Builder view(TableManageContract.View view);
TableManageComponent.Builder appComponent(AppComponent appComponent);
TableManageComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.di.module;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddAreaContract;
import com.gingersoft.gsa.cloud.manager.mvp.model.AddAreaModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddAreaModule {
@Binds
abstract AddAreaContract.Model bindAddAreaModel(AddAreaModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.di.module;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddTableContract;
import com.gingersoft.gsa.cloud.manager.mvp.model.AddTableModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddTableModule {
@Binds
abstract AddTableContract.Model bindAddTableModel(AddTableModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.di.module;
import com.jess.arms.di.scope.ActivityScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.gsa.cloud.manager.mvp.contract.TableManageContract;
import com.gingersoft.gsa.cloud.manager.mvp.model.TableManageModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/13/2020 14:47
* <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 TableManageModule {
@Binds
abstract TableManageContract.Model bindTableManageModel(TableManageModel model);
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.mvp.contract;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddAreaContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
}
}
package com.gingersoft.gsa.cloud.manager.mvp.contract;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddTableContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
}
}
package com.gingersoft.gsa.cloud.manager.mvp.contract;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/13/2020 14:47
* <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 TableManageContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
}
}
package com.gingersoft.gsa.cloud.manager.mvp.model;
import android.app.Application;
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.manager.mvp.contract.AddAreaContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddAreaModel extends BaseModel implements AddAreaContract.Model {
@Inject
Gson mGson;
@Inject
Application mApplication;
@Inject
public AddAreaModel(IRepositoryManager repositoryManager) {
super(repositoryManager);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mGson = null;
this.mApplication = null;
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.mvp.model;
import android.app.Application;
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.manager.mvp.contract.AddTableContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddTableModel extends BaseModel implements AddTableContract.Model {
@Inject
Gson mGson;
@Inject
Application mApplication;
@Inject
public AddTableModel(IRepositoryManager repositoryManager) {
super(repositoryManager);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mGson = null;
this.mApplication = null;
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.mvp.model;
import android.app.Application;
import com.google.gson.Gson;
import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel;
import com.jess.arms.di.scope.ActivityScope;
import javax.inject.Inject;
import com.gingersoft.gsa.cloud.manager.mvp.contract.TableManageContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/13/2020 14:47
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
public class TableManageModel extends BaseModel implements TableManageContract.Model {
@Inject
Gson mGson;
@Inject
Application mApplication;
@Inject
public TableManageModel(IRepositoryManager repositoryManager) {
super(repositoryManager);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mGson = null;
this.mApplication = null;
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.manager.mvp.presenter;
import android.app.Application;
import com.jess.arms.integration.AppManager;
import com.jess.arms.di.scope.FragmentScope;
import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.http.imageloader.ImageLoader;
import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import javax.inject.Inject;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddAreaContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddAreaPresenter extends BasePresenter<AddAreaContract.Model, AddAreaContract.View> {
@Inject
RxErrorHandler mErrorHandler;
@Inject
Application mApplication;
@Inject
ImageLoader mImageLoader;
@Inject
AppManager mAppManager;
@Inject
public AddAreaPresenter(AddAreaContract.Model model, AddAreaContract.View rootView) {
super(model, rootView);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mErrorHandler = null;
this.mAppManager = null;
this.mImageLoader = null;
this.mApplication = null;
}
}
package com.gingersoft.gsa.cloud.manager.mvp.presenter;
import android.app.Application;
import com.jess.arms.integration.AppManager;
import com.jess.arms.di.scope.FragmentScope;
import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.http.imageloader.ImageLoader;
import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import javax.inject.Inject;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddTableContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 AddTablePresenter extends BasePresenter<AddTableContract.Model, AddTableContract.View> {
@Inject
RxErrorHandler mErrorHandler;
@Inject
Application mApplication;
@Inject
ImageLoader mImageLoader;
@Inject
AppManager mAppManager;
@Inject
public AddTablePresenter(AddTableContract.Model model, AddTableContract.View rootView) {
super(model, rootView);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mErrorHandler = null;
this.mAppManager = null;
this.mImageLoader = null;
this.mApplication = null;
}
}
package com.gingersoft.gsa.cloud.manager.mvp.presenter;
import android.app.Application;
import com.jess.arms.integration.AppManager;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.mvp.BasePresenter;
import com.jess.arms.http.imageloader.ImageLoader;
import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import javax.inject.Inject;
import com.gingersoft.gsa.cloud.manager.mvp.contract.TableManageContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/13/2020 14:47
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
public class TableManagePresenter extends BasePresenter<TableManageContract.Model, TableManageContract.View> {
@Inject
RxErrorHandler mErrorHandler;
@Inject
Application mApplication;
@Inject
ImageLoader mImageLoader;
@Inject
AppManager mAppManager;
@Inject
public TableManagePresenter(TableManageContract.Model model, TableManageContract.View rootView) {
super(model, rootView);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mErrorHandler = null;
this.mAppManager = null;
this.mImageLoader = null;
this.mApplication = null;
}
}
package com.gingersoft.gsa.cloud.manager.mvp.ui.activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.FrameLayout;
import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.manager.R2;
import com.gingersoft.gsa.cloud.manager.mvp.ui.fragment.AddAreaFragment;
import com.gingersoft.gsa.cloud.manager.mvp.ui.fragment.AddTableFragment;
import com.gingersoft.gsa.cloud.ui.utils.AnimateUtils;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils;
import com.gingersoft.gsa.cloud.manager.di.component.DaggerTableManageComponent;
import com.gingersoft.gsa.cloud.manager.mvp.contract.TableManageContract;
import com.gingersoft.gsa.cloud.manager.mvp.presenter.TableManagePresenter;
import com.gingersoft.gsa.cloud.manager.R;
import com.qmuiteam.qmui.alpha.QMUIAlphaTextView;
import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import butterknife.BindView;
import butterknife.OnClick;
import static com.jess.arms.utils.Preconditions.checkNotNull;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/13/2020 14:47
* <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 class TableManageActivity extends BaseActivity<TableManagePresenter> implements TableManageContract.View {
@BindView(R2.id.topbar)
QMUITopBar mTopBar;
@BindView(R2.id.section_layout)
QMUIStickySectionLayout section_layout;
@BindView(R2.id.tv_add_area)
QMUIAlphaTextView tv_add_area;
@BindView(R2.id.tv_add_table)
QMUIAlphaTextView tv_add_table;
@BindView(R2.id.frameLayout)
FrameLayout frameLayout;
private Fragment mCurrentFragment;
private AddAreaFragment mAddAreaFragment;
private AddTableFragment mAddTableFragment;
@Override
public void setupActivityComponent(@NonNull AppComponent appComponent) {
DaggerTableManageComponent //如找不到该类,请编译一下项目
.builder()
.appComponent(appComponent)
.view(this)
.build()
.inject(this);
}
@Override
public int initView(@Nullable Bundle savedInstanceState) {
return R.layout.activity_table_manage; //如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
@Override
public void initData(@Nullable Bundle savedInstanceState) {
}
@Override
public void initIntent() {
}
@Override
public void initTopBar() {
mTopBar.removeAllLeftViews();
mTopBar.removeAllRightViews();
if (mCurrentFragment == null) {
mTopBar.setBackgroundColor(ContextCompat.getColor(this, R.color.theme_color));
mTopBar.addLeftBackImageButton().setOnClickListener(v -> killMyself());
mTopBar.setTitle("餐檯管理");
} else if (mCurrentFragment instanceof AddAreaFragment) {
Button leftButton = mTopBar.addLeftTextButton("取消", R.id.qmui_topbar_item_left_back);
leftButton.setTextColor(ContextCompat.getColor(this, R.color.theme_white_color));
leftButton.setOnClickListener(v -> {
backTableManage();
});
Button rightButton = mTopBar.addRightTextButton("保存", R.id.qmui_dialog_edit_right_icon);
rightButton.setTextColor(ContextCompat.getColor(this, R.color.theme_white_color));
rightButton.setOnClickListener(v -> {
});
mTopBar.setTitle("添加區域");
} else if (mCurrentFragment instanceof AddTableFragment) {
Button leftButton = mTopBar.addLeftTextButton("取消", R.id.qmui_topbar_item_left_back);
leftButton.setTextColor(ContextCompat.getColor(this, R.color.theme_white_color));
leftButton.setOnClickListener(v -> {
backTableManage();
});
Button rightButton = mTopBar.addRightTextButton("保存", R.id.qmui_dialog_edit_right_icon);
rightButton.setTextColor(ContextCompat.getColor(this, R.color.theme_white_color));
rightButton.setOnClickListener(v -> {
});
mTopBar.setTitle("添加餐檯");
}
}
@Override
public void initLanguage() {
}
@Override
public void initLayoutParams() {
}
@Override
public void initLayoutVisible() {
}
@OnClick(R2.id.tv_add_area)
void onClickAddArea() {
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
hideFragment(transaction);
if (mAddAreaFragment == null) {
addAddAreaFragment(transaction);
} else {
showFragment(transaction, mAddAreaFragment);
}
transaction.commit();
initTopBar();
AnimateUtils.animateUp(frameLayout, 300);
}
@OnClick(R2.id.tv_add_table)
void onClickAddTable() {
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
hideFragment(transaction);
if (mAddTableFragment == null) {
addAddTableFragment(transaction);
} else {
showFragment(transaction, mAddTableFragment);
}
transaction.commit();
initTopBar();
AnimateUtils.animateUp(frameLayout, 300);
}
private void addAddAreaFragment(FragmentTransaction transaction) {
mAddAreaFragment = AddAreaFragment.newInstance();
mCurrentFragment = mAddAreaFragment;
transaction.add(R.id.frameLayout, mAddAreaFragment, AddAreaFragment.class.getName());
}
private void addAddTableFragment(FragmentTransaction transaction) {
mAddTableFragment = AddTableFragment.newInstance();
mCurrentFragment = mAddTableFragment;
transaction.add(R.id.frameLayout, mAddTableFragment, AddAreaFragment.class.getName());
}
private void hideFragment(FragmentTransaction transaction) {
if (mAddAreaFragment != null) {
transaction.hide(mAddAreaFragment);
AnimateUtils.animateDown(frameLayout, 300);
}
if (mAddTableFragment != null) {
transaction.hide(mAddTableFragment);
AnimateUtils.animateDown(frameLayout, 300);
}
}
private void showFragment(FragmentTransaction transaction, Fragment fragment) {
mCurrentFragment = fragment;
transaction.show(fragment);
}
@Override
public void showLoading(String message) {
if (message != null)
LoadingDialog.showDialogForLoading(this, message, true);
else
LoadingDialog.showDialogForLoading(this);
}
@Override
public void hideLoading() {
LoadingDialog.cancelDialogForLoading();
}
@Override
public void showMessage(@NonNull String message) {
checkNotNull(message);
ArmsUtils.makeText(this, message);
}
@Override
public void launchActivity(@NonNull Intent intent) {
checkNotNull(intent);
ArmsUtils.startActivity(intent);
}
@Override
public void killMyself() {
finish();
}
@Override
public void onBackPressed() {
if (mCurrentFragment == null) {
killMyself();
} else if (mCurrentFragment instanceof AddAreaFragment || mCurrentFragment instanceof AddTableFragment) {
backTableManage();
}
}
private void backTableManage(){
mCurrentFragment = null;
initTopBar();
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction transaction = fragmentManager.beginTransaction();
hideFragment(transaction);
}
}
package com.gingersoft.gsa.cloud.manager.mvp.ui.adapter.soldout;
import android.content.Context;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter;
import java.util.List;
import butterknife.BindView;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2018/6/27
* 修订历史:2018/6/27
* 描述:
*/
public class CurrentSlodoutFoodAdapter extends DefaultAdapter<Object> {
public CurrentSlodoutFoodAdapter(List<Object> infos) {
super(infos);
}
@Override
public BaseHolder<Object> getHolder(View v, int viewType) {
return null;
}
@Override
public int getLayoutId(int viewType) {
return 0;
}
//
// private Context mContext;
// private View convertView;
// //字体大小
// private int mFoodlListFontSize;
//
// private int select_position = 0;
//
// public void setSelectPosition(int select_position) {
// this.select_position = select_position;
// set_SelectPosition();
// }
//
// private void set_SelectPosition() {
//
// //查找自己的
// if (select_position == -1 || mInfos == null || mInfos.size() < 1) {
// return;
// }
//
// List<CurrentSoldoutFood.DatasBean> datasBeans = mInfos;
//
// for (int i = 0; i < datasBeans.size(); i++) {
// if (i == select_position) {
// datasBeans.get(i).setSelected(2);
// } else {
// datasBeans.get(i).setSelected(0);
// }
// }
// }
//
// public CurrentSlodoutFoodAdapter(Context context, List<CurrentSoldoutFood.DatasBean> infos, int foodlListFontSize) {
// super(infos);
// this.mContext = context;
// this.mFoodlListFontSize = foodlListFontSize;
// }
//
// @Override
// public int getItemCount() {
// return mInfos.size();
// }
//
// @Override
// public BaseHolder<CurrentSoldoutFood.DatasBean> getHolder(View v, int viewType) {
// convertView = v;
// return new DateTimeItemHolder(v);
// }
//
// @Override
// public int getLayoutId(int viewType) {
// return R.layout.item_current_soldout_food;
// }
//
// class DateTimeItemHolder extends BaseHolder<CurrentSoldoutFood.DatasBean> {
//
// @BindView(R.id.rl_select)
// RelativeLayout rl_select;
// @BindView(R.id.tv_number)
// TextView tv_number;
// @BindView(R.id.tv_name)
// TextView tv_name;
// @BindView(R.id.tv_value)
// TextView tv_value;
//
// public DateTimeItemHolder(View itemView) {
// super(itemView);
// }
//
// @Override
// public void setData(CurrentSoldoutFood.DatasBean datasBean, int position) {
//
// String name = datasBean.getName();
// if (name != null) {
// tv_name.setText(name);
// }
//
// if (datasBean.getItemdesc1() == null || datasBean.getItemdesc1().equals("0")) {
// tv_number.setText("");
// } else {
// tv_number.setText("1");
// }
//
// String qtyValue = String.valueOf(datasBean.getOR_Qty());
//
// if (datasBean.getOR_Qty() == 0) {
// qtyValue = "暫停";
// } else {
// if (datasBean.getOR_Qty() - datasBean.getUsed_Qty() == 0) {
// qtyValue = "售罄";
// }
// }
//
// tv_value.setText(qtyValue);
//
// //显示
// convertView.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// int selected = datasBean.getSelected();
// switch (selected) {
// case 0://未选 中。黑底白字
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// case 1://选中,第一层选中.
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.theme_color));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// case 2://选中,作为主体被选中
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.colorAccent));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// }
//
// //设置字体
// tv_value.setTextSize(mFoodlListFontSize);
// tv_name.setTextSize(mFoodlListFontSize);
// tv_number.setTextSize(mFoodlListFontSize);
//
// rl_select.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// if (mOnItemClickListener != null)
// mOnItemClickListener.onItemClick(datasBean, position);
// }
// });
// }
// }
//
//
// public int getSelectPosition() {
// return this.select_position;
// }
//
// private OnItemClickListener mOnItemClickListener;
//
// public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
// mOnItemClickListener = onItemClickListener;
// }
//
// public interface OnItemClickListener {
//
// void onItemClick(CurrentSoldoutFood.DatasBean datasBean, int position);
//
// }
//
}
package com.gingersoft.gsa.cloud.manager.mvp.ui.fragment;
import android.content.Intent;
import android.os.Bundle;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseFragment;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils;
import com.gingersoft.gsa.cloud.manager.di.component.DaggerAddAreaComponent;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddAreaContract;
import com.gingersoft.gsa.cloud.manager.mvp.presenter.AddAreaPresenter;
import com.gingersoft.gsa.cloud.manager.R;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import static com.jess.arms.utils.Preconditions.checkNotNull;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 class AddAreaFragment extends BaseFragment<AddAreaPresenter> implements AddAreaContract.View {
public static AddAreaFragment newInstance() {
AddAreaFragment fragment = new AddAreaFragment();
return fragment;
}
@Override
public void setupFragmentComponent(@NonNull AppComponent appComponent) {
DaggerAddAreaComponent //如找不到该类,请编译一下项目
.builder()
.appComponent(appComponent)
.view(this)
.build()
.inject(this);
}
@Override
public View initView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_add_area, container, false);
}
@Override
public void initData(@Nullable Bundle savedInstanceState) {
}
@Override
public void setData(@Nullable Object data) {
}
@Override
public void showLoading(String message) {
if (message != null)
LoadingDialog.showDialogForLoading(mContext, message, true);
else
LoadingDialog.showDialogForLoading(mContext);
}
@Override
public void hideLoading() {
LoadingDialog.cancelDialogForLoading();
}
@Override
public void showMessage(@NonNull String message) {
checkNotNull(message);
ArmsUtils.makeText(mContext, message);
}
@Override
public void launchActivity(@NonNull Intent intent) {
checkNotNull(intent);
ArmsUtils.startActivity(intent);
}
@Override
public void killMyself() {
}
}
package com.gingersoft.gsa.cloud.manager.mvp.ui.fragment;
import android.content.Intent;
import android.os.Bundle;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import com.gingersoft.gsa.cloud.manager.R2;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseFragment;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils;
import com.gingersoft.gsa.cloud.manager.di.component.DaggerAddTableComponent;
import com.gingersoft.gsa.cloud.manager.mvp.contract.AddTableContract;
import com.gingersoft.gsa.cloud.manager.mvp.presenter.AddTablePresenter;
import com.gingersoft.gsa.cloud.manager.R;
import com.qmuiteam.qmui.util.QMUIDeviceHelper;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.util.QMUIResHelper;
import com.qmuiteam.qmui.widget.QMUILoadingView;
import com.qmuiteam.qmui.widget.grouplist.QMUICommonListItemView;
import com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.core.content.ContextCompat;
import butterknife.BindDimen;
import butterknife.BindView;
import static com.jess.arms.utils.Preconditions.checkNotNull;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/14/2020 10:16
* <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 class AddTableFragment extends BaseFragment<AddTablePresenter> implements AddTableContract.View {
@BindView(R2.id.groupListView)
QMUIGroupListView mGroupListView;
public static AddTableFragment newInstance() {
AddTableFragment fragment = new AddTableFragment();
return fragment;
}
@Override
public void setupFragmentComponent(@NonNull AppComponent appComponent) {
DaggerAddTableComponent //如找不到该类,请编译一下项目
.builder()
.appComponent(appComponent)
.view(this)
.build()
.inject(this);
}
@Override
public View initView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_add_table, container, false);
}
@Override
public void initData(@Nullable Bundle savedInstanceState) {
initGroupListView();
}
private void initGroupListView() {
int height = QMUIResHelper.getAttrDimen(getContext(), com.qmuiteam.qmui.R.attr.qmui_list_item_height);
QMUICommonListItemView itemRedPoint4 = mGroupListView.createItemView(null,
"區域",
"大廳",
QMUICommonListItemView.HORIZONTAL,
QMUICommonListItemView.ACCESSORY_TYPE_CHEVRON,
height);
itemRedPoint4.setTipPosition(QMUICommonListItemView.TIP_POSITION_RIGHT);
QMUICommonListItemView tableNameItemView = mGroupListView.createItemView("餐檯名稱");
tableNameItemView.setAccessoryType(QMUICommonListItemView.ACCESSORY_TYPE_CUSTOM);
EditText tableNameEditText = new EditText(getActivity());
tableNameEditText.setHint("必填");
tableNameEditText.setTextSize(QMUIDisplayHelper.dpToPx(8));
tableNameEditText.setBackgroundColor(ContextCompat.getColor(mContext, R.color.trans));
tableNameItemView.addAccessoryCustomView(tableNameEditText);
QMUICommonListItemView peopleNumberItemView = mGroupListView.createItemView("就餐人數");
peopleNumberItemView.setAccessoryType(QMUICommonListItemView.ACCESSORY_TYPE_CUSTOM);
EditText peopleNumberEditText = new EditText(getActivity());
peopleNumberEditText.setHint("必填");
peopleNumberEditText.setTextSize(QMUIDisplayHelper.dpToPx(8));
peopleNumberEditText.setBackgroundColor(ContextCompat.getColor(mContext, R.color.trans));
peopleNumberItemView.addAccessoryCustomView(peopleNumberEditText);
QMUICommonListItemView serverchargeItemView = mGroupListView.createItemView("服務費");
serverchargeItemView.setAccessoryType(QMUICommonListItemView.ACCESSORY_TYPE_CUSTOM);
EditText serverchargeEditText = new EditText(getActivity());
serverchargeEditText.setHint("0");
serverchargeEditText.setTextSize(QMUIDisplayHelper.dpToPx(8));
serverchargeEditText.setBackgroundColor(ContextCompat.getColor(mContext, R.color.trans));
serverchargeItemView.addAccessoryCustomView(serverchargeEditText);
QMUICommonListItemView tableSortItemView = mGroupListView.createItemView("餐桌排序");
tableSortItemView.setAccessoryType(QMUICommonListItemView.ACCESSORY_TYPE_CUSTOM);
EditText tableSortEditText = new EditText(getActivity());
tableSortEditText.setHint("100");
tableSortEditText.setTextSize(QMUIDisplayHelper.dpToPx(8));
tableSortEditText.setBackgroundColor(ContextCompat.getColor(mContext, R.color.trans));
tableSortItemView.addAccessoryCustomView(tableSortEditText);
int size = QMUIDisplayHelper.dp2px(getContext(), 20);
QMUIGroupListView.newSection(getContext())
.setLeftIconSize(size, ViewGroup.LayoutParams.WRAP_CONTENT)
.addItemView(itemRedPoint4, new View.OnClickListener() {
@Override
public void onClick(View v) {
}
})
.addItemView(tableNameItemView, null)
.addItemView(peopleNumberItemView, null)
.addItemView(serverchargeItemView, null)
.addItemView(tableSortItemView, null)
.setMiddleSeparatorInset(QMUIDisplayHelper.dp2px(getContext(), 16), 0)
.addTo(mGroupListView);
}
@Override
public void setData(@Nullable Object data) {
}
@Override
public void showLoading(String message) {
if (message != null)
LoadingDialog.showDialogForLoading(mContext, message, true);
else
LoadingDialog.showDialogForLoading(mContext);
}
@Override
public void hideLoading() {
LoadingDialog.cancelDialogForLoading();
}
@Override
public void showMessage(@NonNull String message) {
checkNotNull(message);
ArmsUtils.makeText(mContext, message);
}
@Override
public void launchActivity(@NonNull Intent intent) {
checkNotNull(intent);
ArmsUtils.startActivity(intent);
}
@Override
public void killMyself() {
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:innerRadiusRatio="3"
android:shape="oval"
android:thicknessRatio="20"
android:useLevel="false">
<solid android:color="#FF3333" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.qmuiteam.qmui.widget.QMUITopBar
android:id="@+id/topbar"
android:layout_width="match_parent"
android:layout_height="?attr/qmui_topbar_height"
app:qmui_topbar_title_color="@color/theme_white_color" />
<com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout
android:id="@+id/section_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/tv_add_area"
android:layout_width="@dimen/dp_65"
android:layout_height="@dimen/dp_65"
android:layout_toLeftOf="@+id/tv_add_table"
android:layout_marginRight="@dimen/dp_15"
android:layout_marginBottom="@dimen/dp_20"
android:layout_alignParentBottom="true"
android:text="@string/manager_area"
android:textSize="@dimen/sp_14"
android:textColor="@color/theme_white_color"
android:gravity="center"
android:background="@drawable/ui_shape_theme_oval"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/tv_add_table"
android:layout_width="@dimen/dp_65"
android:layout_height="@dimen/dp_65"
android:layout_marginBottom="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_20"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="@string/manager_add"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"
android:gravity="center"
android:background="@drawable/manage_shape_add_btn_oval"/>
<FrameLayout
android:id="@+id/frameLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height" />
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/theme_background_color">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="區域"
android:gravity="center"
android:textSize="@dimen/sp_20"></TextView>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<com.qmuiteam.qmui.widget.QMUIWindowInsetLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/theme_background_color">
<com.qmuiteam.qmui.widget.grouplist.QMUIGroupListView
android:id="@+id/groupListView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
<resources>
<string name="manager_app_name">GSA-Manager</string>
<string name="manager_area">區域</string>
<string name="manager_add">添加</string>
</resources>
......@@ -93,12 +93,12 @@ public class PrintServe extends PrinterRoot {
orderNum.setText(MyOrderManage.getInstance().getOrderId() + "");
}
BigDecimal totalAmount = new BigDecimal(0);
for (OrderDetail OrderDetail : foodList) {
totalAmount = MoneyUtil.sum(totalAmount, MoneyUtil.priceCalculation(OrderDetail.getPrice(), OrderDetail.getNumber()));
}
// BigDecimal totalAmount = new BigDecimal(0);
// for (OrderDetail OrderDetail : foodList) {
// totalAmount = MoneyUtil.sum(totalAmount, MoneyUtil.priceCalculation(OrderDetail.getPrice(), OrderDetail.getNumber()));
// }
//總金額
mTvTotalAmount.setText(totalAmount + "");
mTvTotalAmount.setText(MyOrderManage.getInstance().getTotalAmount() + "");
//加载条形码
// ImageView ivBarCode = view.findViewById(R.id.iv_bar_code);
// ivBarCode.setImageBitmap(BitmapUtil.generateBitmap("12312112131", 2, 450, 150));
......
......@@ -11,6 +11,8 @@ import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.base.adapter.print.BillAdapter;
import com.gingersoft.gsa.cloud.base.adapter.print.FoodAdapter;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.BillingBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
......@@ -18,6 +20,7 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.constans.AppConstans;
import com.joe.print.R;
import java.math.BigDecimal;
......@@ -39,7 +42,11 @@ public class PrintSlip extends PrinterRoot {
//這裡可能還需要加上廚房單的內容,有未送單的食品時。
PrintKitchen kitchen = new PrintKitchen();
Map<String, List<Bitmap>> bitmapMaps = new HashMap<>(kitchen.getPrintBitmap(mContext));
merge2ResultMap(bitmapMaps, "", bitmaps);
if (bitmapMaps.size() == 0) {
bitmapMaps.put("", bitmaps);
} else {
merge2ResultMap(bitmapMaps, "", bitmaps);
}
return bitmapMaps;
}
......@@ -50,7 +57,7 @@ public class PrintSlip extends PrinterRoot {
* @return
*/
private Bitmap getServeBitmap(Context context) {
List<OrderDetail> foodList = MyOrderManage.getInstance().getNewFoodList();
List<OrderDetail> foodList = MyOrderManage.getInstance().getOrderFoodList();
if (foodList == null || foodList.size() <= 0) {
return null;
}
......@@ -79,6 +86,12 @@ public class PrintSlip extends PrinterRoot {
rvFood.setAdapter(foodAdapter);
List<BillingBean> billingBeans = new ArrayList<>();
if (MyOrderManage.getInstance().getOrderMoneyList().size() > 0) {
for (BillOrderMoney item : MyOrderManage.getInstance().getOrderMoneyList()) {
billingBeans.add(new BillingBean(item.getTitle(), item.getMoney()));
}
}
if (billingBeans.size() <= 0) {
line_food_info.setVisibility(View.GONE);
} else {
......@@ -95,12 +108,12 @@ public class PrintSlip extends PrinterRoot {
orderNum.setText(MyOrderManage.getInstance().getOrderId() + "");
}
BigDecimal totalAmount = new BigDecimal(0);
for (OrderDetail OrderDetail : foodList) {
totalAmount = MoneyUtil.sum(totalAmount, MoneyUtil.priceCalculation(OrderDetail.getPrice(), OrderDetail.getNumber()));
}
// BigDecimal totalAmount = new BigDecimal(0);
// for (OrderDetail OrderDetail : foodList) {
// totalAmount = MoneyUtil.sum(totalAmount, MoneyUtil.priceCalculation(OrderDetail.getPrice(), OrderDetail.getNumber()));
// }
//總金額
mTvTotalAmount.setText(totalAmount + "");
mTvTotalAmount.setText(MyOrderManage.getInstance().getTotalAmount() + "");
//加载条形码
// ImageView ivBarCode = view.findViewById(R.id.iv_bar_code);
// ivBarCode.setImageBitmap(BitmapUtil.generateBitmap("12312112131", 2, 450, 150));
......
......@@ -15,6 +15,7 @@ import com.gingersoft.gsa.cloud.base.adapter.print.BillTypeAdapter;
import com.gingersoft.gsa.cloud.base.adapter.print.FoodAdapter;
import com.gingersoft.gsa.cloud.base.adapter.print.KitChenPrintFoodAdapter;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.BillingBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
......@@ -23,10 +24,12 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.PrintTransitUtils;
import com.gingersoft.gsa.cloud.base.utils.log.LogUtil;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.base.utils.view.ImageUtils;
import com.gingersoft.gsa.cloud.base.utils.view.LayoutToBitmapUtils;
import com.gingersoft.gsa.cloud.base.widget.NoScrollRecyclerView;
import com.joe.print.R;
import java.math.BigDecimal;
......@@ -42,6 +45,7 @@ import java.util.Objects;
*/
public class PrintUtils {
private static final String TAG = "PrintUtils";
private static int paperWidth = 380;
/**
......@@ -226,8 +230,14 @@ public class PrintUtils {
rvFood.setAdapter(foodAdapter);
List<BillingBean> billingBeans = new ArrayList<>();
if (MyOrderManage.getInstance().getOrderMoneyList().size() > 0) {
for (BillOrderMoney item : MyOrderManage.getInstance().getOrderMoneyList()) {
billingBeans.add(new BillingBean(item.getTitle(), item.getMoney()));
}
}
LogUtil.d(TAG,"getPrintBitmap OrderMoneyList size: "+ MyOrderManage.getInstance().getOrderMoneyList().size());
// billingBeans.add(new BillingBean("合計", 58.88));
// billingBeans.add(new BillingBean("10%服務費", 5.08));
billingBeans.add(new BillingBean("10%服務費", 5.08));
// billingBeans.add(new BillingBean("賬單小數", -0.06));
if (billingBeans.size() <= 0) {
line_food_info.setVisibility(View.GONE);
......@@ -297,6 +307,11 @@ public class PrintUtils {
rvFood.setAdapter(foodAdapter);
List<BillingBean> billingBeans = new ArrayList<>();
if (MyOrderManage.getInstance().getOrderMoneyList().size() > 0) {
for (BillOrderMoney item : MyOrderManage.getInstance().getOrderMoneyList()) {
billingBeans.add(new BillingBean(item.getTitle(), item.getMoney()));
}
}
// billingBeans.add(new BillingBean("合計", 58.88));
// billingBeans.add(new BillingBean("10%服務費", 5.08));
// billingBeans.add(new BillingBean("賬單小數", -0.06));
......
......@@ -43,7 +43,7 @@ android {
/**
* 版本号
*/
schemaVersion 5
schemaVersion 7
/**
* greendao输出dao的数据库操作实体类文件夹(相对路径 包名+自定义路径名称,包将创建于包名的直接路径下)
*/
......
......@@ -26,6 +26,12 @@ public interface Api {
String food_modifiere_relation = "food/modifierDetail";
//餐廳折扣
String restaurant_discount = "RestaurantDiscount/list";
//獲取餐廳擴展表數據
String expand_info = "restaurant/ext/list";
//獲取餐廳打印機列表
String printerDevice_list = "PrinterDevice/list";
//日誌上傳
String upload_app_log = "public/cloud/gsa/upload";
}
......@@ -21,6 +21,10 @@ public class BillAdapter extends BaseQuickAdapter<BillingBean, BaseViewHolder> {
@Override
protected void convert(BaseViewHolder helper, BillingBean item) {
helper.setText(R.id.tv_total_text, item.getOptionName());
helper.setText(R.id.tv_total, "$" + item.getTotalAmount());
if (item.getTotalAmount() < 0) {
helper.setText(R.id.tv_total, "-$" + Math.abs(item.getTotalAmount()));
} else if(item.getTotalAmount() > 0){
helper.setText(R.id.tv_total, "$" + item.getTotalAmount());
}
}
}
......@@ -18,7 +18,7 @@ import com.elvishew.xlog.printer.file.clean.FileLastModifiedCleanStrategy;
import com.elvishew.xlog.printer.file.naming.DateFileNameGenerator;
import com.gingersoft.gsa.cloud.base.BuildConfig;
import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.common.bean.CurrentAndroidSetting;
import com.gingersoft.gsa.cloud.function.FunctionStyleUtils;
import com.gingersoft.gsa.cloud.base.utils.AidlUtil;
import com.gingersoft.gsa.cloud.constans.Constans;
import com.gingersoft.gsa.cloud.constans.HttpsConstans;
......@@ -64,7 +64,7 @@ public class GsaCloudApplication extends BaseApplication {
public static int REQUEST_TIMEOUT = 15;
public static boolean isLogin = false;
public static CurrentAndroidSetting androidSetting;
public static FunctionStyleUtils androidSetting;
public static String userName = "";
/**
* 商米:V2、V2_PRO N5:N5
......@@ -116,7 +116,7 @@ public class GsaCloudApplication extends BaseApplication {
//初始化crash記錄
AppCrashHandler.getInstance().init(this);
androidSetting = new CurrentAndroidSetting();
androidSetting = new FunctionStyleUtils();
}
public Activity getCurrentActivity() {
......
......@@ -104,6 +104,10 @@ public class OrderDetail implements Serializable {
*/
private long productId;
/**
* 父级商品ID
*/
private long parentProductId;
/**
* 商品組id
*/
private long topId;
......@@ -487,6 +491,14 @@ public class OrderDetail implements Serializable {
this.productId = productId;
}
public long getParentProductId() {
return parentProductId;
}
public void setParentProductId(long parentProductId) {
this.parentProductId = parentProductId;
}
public void setUnit_price(double unit_price) {
this.unit_price = unit_price;
}
......@@ -602,10 +614,11 @@ public class OrderDetail implements Serializable {
//已到結尾或者下一個食品是主食品
for (int i = 0; i < orderList.size(); i++) {
OrderBean.OrderDetailsBean orderDetailsBean = orderList.get(i);
OrderDetail orderDetail = new OrderDetail();
orderDetail.setOrderId(orderDetailsBean.getOrderId());
orderDetail.setId(orderDetailsBean.getId());
orderDetail.setProductId(orderDetailsBean.getProductId());
orderDetail.setOrderId(orderDetailsBean.getOrderId());
orderDetail.setParentId(orderDetailsBean.getParentId());
orderDetail.setTopId(orderDetailsBean.getTopId());
orderDetail.setProductName(orderDetailsBean.getProductName());
......@@ -620,6 +633,10 @@ public class OrderDetail implements Serializable {
orderDetail.setItemType(getItemType(orderDetailsBean, parentOrderDetail));
orderDetailList.add(orderDetail);
// if (orderDetail.isIsfood()) {
// parentOrderDetail = null;
// }
if (orderDetail.getItemType() == 1) {
parentId = orderDetail.getId();
discountSourcePrice = 0;
......@@ -639,7 +656,7 @@ public class OrderDetail implements Serializable {
orderDetailList.add(discountTransOrderDetail(discount, false, parentId, discountSourcePrice));
}
}
}else {
} else {
orderDetail.setDiscountStatus(0);
}
......@@ -733,7 +750,7 @@ public class OrderDetail implements Serializable {
* @param isRvMealClicked
* @return
*/
public static OrderDetail comboTransOrderDetail(ComboItem foodCombo, long id, int number,
public static OrderDetail comboTransOrderDetail(ComboItem foodCombo, long id, long productId, int number,
int prop, boolean isRvMealClicked) {
OrderDetail orderDetail = new OrderDetail();
orderDetail.setProductName(foodCombo.getName());
......@@ -745,6 +762,7 @@ public class OrderDetail implements Serializable {
orderDetail.setProductId(foodCombo.getFid());
}
orderDetail.setParentId(id);
orderDetail.setParentProductId(productId);
orderDetail.setUnit_price(foodCombo.getPrice());
orderDetail.setPrice(number * orderDetail.getUnit_price());
orderDetail.setNumber(number);
......@@ -773,12 +791,13 @@ public class OrderDetail implements Serializable {
* @param number
* @return
*/
public static OrderDetail modifierTransOrderDetail(Modifier modifier, long id, int number) {
public static OrderDetail modifierTransOrderDetail(Modifier modifier, long id, long productId, int number) {
OrderDetail orderDetail = new OrderDetail();
orderDetail.setProductName(modifier.getModifierName());
orderDetail.setTopId(modifier.getTopId());
orderDetail.setParentId(id);
orderDetail.setProductId(modifier.getMid());
orderDetail.setParentProductId(productId);
orderDetail.setUnit_price(modifier.getPrice());
orderDetail.setPrice(number * orderDetail.getUnit_price());
orderDetail.setNumber(number);
......
package com.gingersoft.gsa.cloud.base.common.bean;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.database.bean.ExpandInfo;
import java.util.List;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-05-11
* 修订历史:2020-05-11
* 描述:餐廳擴展信息工具類
*/
public class RestaurantExpandInfoUtils {
/**
* 保存常用信息
* @param expandInfoList
*/
public static void setCommonExpandInfo(List<ExpandInfo> expandInfoList){
for (ExpandInfo expandInfo : expandInfoList) {
if (expandInfo.getSettingName().equals("Rounding")) {
MoneyUtil.rounding = expandInfo.getValueInt();
}
if (expandInfo.getSettingName().equals("RoundingDecimal")) {
MoneyUtil.RoundingDecimal = expandInfo.getValueInt();
}
if (expandInfo.getSettingName().equals("ItemDecimals")) {
MoneyUtil.ItemDecimals = expandInfo.getValueInt();
}
}
}
}
......@@ -60,6 +60,7 @@ public class TableBean {
* id : 25839
* tableName : ceshitai1*
* restaurantId : 26
* orderId : 21568
* qrCode : d662883361ef0e815f12b7cf46763bba
* seatCount : 99
* createTime : Dec 28, 2019 3:37:41 PM
......@@ -77,6 +78,7 @@ public class TableBean {
private int id;
private String tableName;
private int restaurantId;
private Long orderId;
private String qrCode;
private int seatCount;
private String createTime;
......@@ -114,6 +116,7 @@ public class TableBean {
public DataBean(DataBean dataBean) {
this.id = dataBean.id;
this.tableName = dataBean.tableName;
this.orderId = dataBean.orderId;
this.restaurantId = dataBean.restaurantId;
this.qrCode = dataBean.qrCode;
this.seatCount = dataBean.seatCount;
......@@ -161,6 +164,14 @@ public class TableBean {
this.tableName = tableName;
}
public Long getOrderId() {
return orderId;
}
public void setOrderId(Long orderId) {
this.orderId = orderId;
}
public int getRestaurantId() {
return restaurantId;
}
......
......@@ -60,6 +60,8 @@ public class MyOrderManage {
protected List<BillOrderMoney> orderMoneyList = new ArrayList<>();
/**本次支付方式,用於打印*/
private List<PayMethod> billMoney = new ArrayList<>();
/**總金額*/
private double totalAmount = 0.0;
/**記錄修改訂單操作*/
private boolean modifyOrder = false;
......@@ -1026,6 +1028,7 @@ public class MyOrderManage {
if (billMoney != null) {
billMoney.clear();
}
totalAmount = 0.0;
orderBean = null;
modifyOrder = false;
}
......@@ -1164,6 +1167,14 @@ public class MyOrderManage {
this.orderMoneyList = orderMoneyList;
}
public double getTotalAmount() {
return totalAmount;
}
public void setTotalAmount(double totalAmount) {
this.totalAmount = totalAmount;
}
//
// public List<DatasBean> getComboOrders() {
// return comboOrders;
......
......@@ -15,9 +15,9 @@ import static java.math.BigDecimal.ROUND_HALF_UP;
public class MoneyUtil {
// 總金額小數位
public static int rounding = 0, RoundingDecimal = 1;
public static Integer rounding = 0, RoundingDecimal = 1;
// (直接截取) : 食品 細項 折扣 會員折扣 合計 服務費
public static int ItemDecimals = 2;
public static Integer ItemDecimals = 2;
public static double get_ItemDecimals_money(double money) {
double rMoney = money;
......
......@@ -12,6 +12,5 @@ public class AppConstans {
public static final String VIBRATION_PROGRESS = "vibration_progress";//震动强度
public static final String PRESSSOUND_PROGRESS = "presssound_progress";//按键音量
public static final String CARSH_STR = "$";
}
......@@ -9,6 +9,7 @@ public class HttpsConstans {
public static final String ROOT_SERVER_ADDRESS_FORMAL_SZ = "http://gingersoft.tpddns.cn:58201/ricepon-cloud-gsa/api/";//深圳服务器
public static final String ROOT_SERVER_ADDRESS_FORMAL_HK = "http://a.ricepon.com:58201/ricepon-cloud-gsa/api/";//香港服务器
public static String ROOT_SERVER_YOU_CHANG_HK = "http://192.168.1.142:9012/api/"; //友常本地
public static String ROOT_SERVER_SHI_WEI_HK = "http://192.168.1.154:9012/api/"; //世維本地
public static String ROOT_SETTLEMENT_REPORT_SERVER_ADDRESS_FORMAL = "http://a.ricepon.com:58201/";//清機接口地址
......
......@@ -21,22 +21,29 @@ public class ExpandInfo {
@Id(autoincrement = true)
private Long id;
private int restaurant_id;
private int restaurantId;
/**功能建名称*/
private String settingName;
/**功能值*/
private Integer valueInt;
private String valueChar;
private Date valueDatetime;
private String valueDatetime;
/**功能说明*/
private String remark;
@Generated(hash = 1943112611)
public ExpandInfo(Long id, int restaurant_id, String settingName,
Integer valueInt, String valueChar, Date valueDatetime, String remark) {
@Generated(hash = 1553907136)
public ExpandInfo(Long id, int restaurantId, String settingName,
Integer valueInt, String valueChar, String valueDatetime,
String remark) {
this.id = id;
this.restaurant_id = restaurant_id;
this.restaurantId = restaurantId;
this.settingName = settingName;
this.valueInt = valueInt;
this.valueChar = valueChar;
......@@ -49,6 +56,12 @@ public class ExpandInfo {
}
public Long getId() {
return this.id;
}
......@@ -57,14 +70,15 @@ public class ExpandInfo {
this.id = id;
}
public int getRestaurant_id() {
return restaurant_id;
public int getRestaurantId() {
return restaurantId;
}
public void setRestaurant_id(int restaurant_id) {
this.restaurant_id = restaurant_id;
public void setRestaurantId(int restaurantId) {
this.restaurantId = restaurantId;
}
public String getSettingName() {
return settingName;
}
......@@ -89,14 +103,6 @@ public class ExpandInfo {
this.valueChar = valueChar;
}
public Date getValueDatetime() {
return valueDatetime;
}
public void setValueDatetime(Date valueDatetime) {
this.valueDatetime = valueDatetime;
}
public String getRemark() {
return remark;
}
......@@ -104,4 +110,12 @@ public class ExpandInfo {
public void setRemark(String remark) {
this.remark = remark;
}
public String getValueDatetime() {
return valueDatetime;
}
public void setValueDatetime(String valueDatetime) {
this.valueDatetime = valueDatetime;
}
}
......@@ -14,10 +14,10 @@ import org.greenrobot.greendao.identityscope.IdentityScopeType;
// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.
/**
* Master of DAO (schema version 5): knows all DAOs.
* Master of DAO (schema version 7): knows all DAOs.
*/
public class DaoMaster extends AbstractDaoMaster {
public static final int SCHEMA_VERSION = 5;
public static final int SCHEMA_VERSION = 7;
/** Creates underlying database table using DAOs. */
public static void createAllTables(Database db, boolean ifNotExists) {
......
......@@ -25,11 +25,11 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
*/
public static class Properties {
public final static Property Id = new Property(0, Long.class, "id", true, "_id");
public final static Property Restaurant_id = new Property(1, int.class, "restaurant_id", false, "RESTAURANT_ID");
public final static Property RestaurantId = new Property(1, int.class, "restaurantId", false, "RESTAURANT_ID");
public final static Property SettingName = new Property(2, String.class, "settingName", false, "SETTING_NAME");
public final static Property ValueInt = new Property(3, Integer.class, "valueInt", false, "VALUE_INT");
public final static Property ValueChar = new Property(4, String.class, "valueChar", false, "VALUE_CHAR");
public final static Property ValueDatetime = new Property(5, java.util.Date.class, "valueDatetime", false, "VALUE_DATETIME");
public final static Property ValueDatetime = new Property(5, String.class, "valueDatetime", false, "VALUE_DATETIME");
public final static Property Remark = new Property(6, String.class, "remark", false, "REMARK");
}
......@@ -47,11 +47,11 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
String constraint = ifNotExists? "IF NOT EXISTS ": "";
db.execSQL("CREATE TABLE " + constraint + "\"EXPAND_INFO\" (" + //
"\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id
"\"RESTAURANT_ID\" INTEGER NOT NULL ," + // 1: restaurant_id
"\"RESTAURANT_ID\" INTEGER NOT NULL ," + // 1: restaurantId
"\"SETTING_NAME\" TEXT," + // 2: settingName
"\"VALUE_INT\" INTEGER," + // 3: valueInt
"\"VALUE_CHAR\" TEXT," + // 4: valueChar
"\"VALUE_DATETIME\" INTEGER," + // 5: valueDatetime
"\"VALUE_DATETIME\" TEXT," + // 5: valueDatetime
"\"REMARK\" TEXT);"); // 6: remark
}
......@@ -69,7 +69,7 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
if (id != null) {
stmt.bindLong(1, id);
}
stmt.bindLong(2, entity.getRestaurant_id());
stmt.bindLong(2, entity.getRestaurantId());
String settingName = entity.getSettingName();
if (settingName != null) {
......@@ -86,9 +86,9 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
stmt.bindString(5, valueChar);
}
java.util.Date valueDatetime = entity.getValueDatetime();
String valueDatetime = entity.getValueDatetime();
if (valueDatetime != null) {
stmt.bindLong(6, valueDatetime.getTime());
stmt.bindString(6, valueDatetime);
}
String remark = entity.getRemark();
......@@ -105,7 +105,7 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
if (id != null) {
stmt.bindLong(1, id);
}
stmt.bindLong(2, entity.getRestaurant_id());
stmt.bindLong(2, entity.getRestaurantId());
String settingName = entity.getSettingName();
if (settingName != null) {
......@@ -122,9 +122,9 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
stmt.bindString(5, valueChar);
}
java.util.Date valueDatetime = entity.getValueDatetime();
String valueDatetime = entity.getValueDatetime();
if (valueDatetime != null) {
stmt.bindLong(6, valueDatetime.getTime());
stmt.bindString(6, valueDatetime);
}
String remark = entity.getRemark();
......@@ -142,11 +142,11 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
public ExpandInfo readEntity(Cursor cursor, int offset) {
ExpandInfo entity = new ExpandInfo( //
cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id
cursor.getInt(offset + 1), // restaurant_id
cursor.getInt(offset + 1), // restaurantId
cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // settingName
cursor.isNull(offset + 3) ? null : cursor.getInt(offset + 3), // valueInt
cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4), // valueChar
cursor.isNull(offset + 5) ? null : new java.util.Date(cursor.getLong(offset + 5)), // valueDatetime
cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // valueDatetime
cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6) // remark
);
return entity;
......@@ -155,11 +155,11 @@ public class ExpandInfoDao extends AbstractDao<ExpandInfo, Long> {
@Override
public void readEntity(Cursor cursor, ExpandInfo entity, int offset) {
entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0));
entity.setRestaurant_id(cursor.getInt(offset + 1));
entity.setRestaurantId(cursor.getInt(offset + 1));
entity.setSettingName(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2));
entity.setValueInt(cursor.isNull(offset + 3) ? null : cursor.getInt(offset + 3));
entity.setValueChar(cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4));
entity.setValueDatetime(cursor.isNull(offset + 5) ? null : new java.util.Date(cursor.getLong(offset + 5)));
entity.setValueDatetime(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5));
entity.setRemark(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6));
}
......
package com.gingersoft.gsa.cloud.database.greendao;
import android.database.Cursor;
import android.database.sqlite.SQLiteStatement;
import org.greenrobot.greendao.AbstractDao;
import org.greenrobot.greendao.Property;
import org.greenrobot.greendao.internal.DaoConfig;
import org.greenrobot.greendao.database.Database;
import org.greenrobot.greendao.database.DatabaseStatement;
import com.gingersoft.gsa.cloud.database.bean.ExpandInfo;
// THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT.
/**
* DAO for table "EXPAND_SETTING".
*/
public class ExpandSettingDao extends AbstractDao<ExpandInfo, Long> {
public static final String TABLENAME = "EXPAND_SETTING";
/**
* Properties of entity ExpandInfo.<br/>
* Can be used for QueryBuilder and for referencing column names.
*/
public static class Properties {
public final static Property Id = new Property(0, Long.class, "id", true, "_id");
public final static Property Restaurant_id = new Property(1, int.class, "restaurant_id", false, "RESTAURANT_ID");
public final static Property SettingName = new Property(2, String.class, "settingName", false, "SETTING_NAME");
public final static Property ValueInt = new Property(3, Integer.class, "valueInt", false, "VALUE_INT");
public final static Property ValueChar = new Property(4, String.class, "valueChar", false, "VALUE_CHAR");
public final static Property ValueDatetime = new Property(5, java.util.Date.class, "valueDatetime", false, "VALUE_DATETIME");
public final static Property Remark = new Property(6, String.class, "remark", false, "REMARK");
}
public ExpandSettingDao(DaoConfig config) {
super(config);
}
public ExpandSettingDao(DaoConfig config, DaoSession daoSession) {
super(config, daoSession);
}
/** Creates the underlying database table. */
public static void createTable(Database db, boolean ifNotExists) {
String constraint = ifNotExists? "IF NOT EXISTS ": "";
db.execSQL("CREATE TABLE " + constraint + "\"EXPAND_SETTING\" (" + //
"\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id
"\"RESTAURANT_ID\" INTEGER NOT NULL ," + // 1: restaurant_id
"\"SETTING_NAME\" TEXT," + // 2: settingName
"\"VALUE_INT\" INTEGER," + // 3: valueInt
"\"VALUE_CHAR\" TEXT," + // 4: valueChar
"\"VALUE_DATETIME\" INTEGER," + // 5: valueDatetime
"\"REMARK\" TEXT);"); // 6: remark
}
/** Drops the underlying database table. */
public static void dropTable(Database db, boolean ifExists) {
String sql = "DROP TABLE " + (ifExists ? "IF EXISTS " : "") + "\"EXPAND_SETTING\"";
db.execSQL(sql);
}
@Override
protected final void bindValues(DatabaseStatement stmt, ExpandInfo entity) {
stmt.clearBindings();
Long id = entity.getId();
if (id != null) {
stmt.bindLong(1, id);
}
stmt.bindLong(2, entity.getRestaurant_id());
String settingName = entity.getSettingName();
if (settingName != null) {
stmt.bindString(3, settingName);
}
Integer valueInt = entity.getValueInt();
if (valueInt != null) {
stmt.bindLong(4, valueInt);
}
String valueChar = entity.getValueChar();
if (valueChar != null) {
stmt.bindString(5, valueChar);
}
java.util.Date valueDatetime = entity.getValueDatetime();
if (valueDatetime != null) {
stmt.bindLong(6, valueDatetime.getTime());
}
String remark = entity.getRemark();
if (remark != null) {
stmt.bindString(7, remark);
}
}
@Override
protected final void bindValues(SQLiteStatement stmt, ExpandInfo entity) {
stmt.clearBindings();
Long id = entity.getId();
if (id != null) {
stmt.bindLong(1, id);
}
stmt.bindLong(2, entity.getRestaurant_id());
String settingName = entity.getSettingName();
if (settingName != null) {
stmt.bindString(3, settingName);
}
Integer valueInt = entity.getValueInt();
if (valueInt != null) {
stmt.bindLong(4, valueInt);
}
String valueChar = entity.getValueChar();
if (valueChar != null) {
stmt.bindString(5, valueChar);
}
java.util.Date valueDatetime = entity.getValueDatetime();
if (valueDatetime != null) {
stmt.bindLong(6, valueDatetime.getTime());
}
String remark = entity.getRemark();
if (remark != null) {
stmt.bindString(7, remark);
}
}
@Override
public Long readKey(Cursor cursor, int offset) {
return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0);
}
@Override
public ExpandInfo readEntity(Cursor cursor, int offset) {
ExpandInfo entity = new ExpandInfo( //
cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id
cursor.getInt(offset + 1), // restaurant_id
cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2), // settingName
cursor.isNull(offset + 3) ? null : cursor.getInt(offset + 3), // valueInt
cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4), // valueChar
cursor.isNull(offset + 5) ? null : new java.util.Date(cursor.getLong(offset + 5)), // valueDatetime
cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6) // remark
);
return entity;
}
@Override
public void readEntity(Cursor cursor, ExpandInfo entity, int offset) {
entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0));
entity.setRestaurant_id(cursor.getInt(offset + 1));
entity.setSettingName(cursor.isNull(offset + 2) ? null : cursor.getString(offset + 2));
entity.setValueInt(cursor.isNull(offset + 3) ? null : cursor.getInt(offset + 3));
entity.setValueChar(cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4));
entity.setValueDatetime(cursor.isNull(offset + 5) ? null : new java.util.Date(cursor.getLong(offset + 5)));
entity.setRemark(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6));
}
@Override
protected final Long updateKeyAfterInsert(ExpandInfo entity, long rowId) {
entity.setId(rowId);
return rowId;
}
@Override
public Long getKey(ExpandInfo entity) {
if(entity != null) {
return entity.getId();
} else {
return null;
}
}
@Override
public boolean hasKey(ExpandInfo entity) {
return entity.getId() != null;
}
@Override
protected final boolean isEntityUpdateable() {
return true;
}
}
package com.gingersoft.gsa.cloud.database.utils;
import android.content.Context;
import android.util.Log;
import com.gingersoft.gsa.cloud.database.DaoManager;
import com.gingersoft.gsa.cloud.database.bean.ExpandInfo;
import java.util.List;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-01-02
* 修订历史:2020-01-02
* 描述:
*/
public class ExpandInfoDaoUtils {
private static final String TAG = ExpandInfoDaoUtils.class.getSimpleName();
private DaoManager mManager;
public ExpandInfoDaoUtils(Context context){
mManager = DaoManager.getInstance();
mManager.init(context);
}
/**
* 完成Function记录的插入,如果表未创建,先创建Function表
* @param expandInfo
* @return
*/
public boolean insertExpandInfo(ExpandInfo expandInfo){
boolean flag = false;
flag = mManager.getDaoSession().getExpandInfoDao().insert(expandInfo) == -1 ? false : true;
Log.i(TAG, "insert expandInfo :" + flag + "-->" + expandInfo.toString());
return flag;
}
/**
* 插入多条数据,在子线程操作
* @param expandInfoList
* @return
*/
public boolean insertMultExpandInfo(final List<ExpandInfo> expandInfoList) {
boolean flag = false;
try {
mManager.getDaoSession().runInTx(new Runnable() {
@Override
public void run() {
for (ExpandInfo expandInfo : expandInfoList) {
mManager.getDaoSession().insertOrReplace(expandInfo);
}
}
});
flag = true;
} catch (Exception e) {
e.printStackTrace();
}
return flag;
}
/**
* 修改一条数据
* @param expandInfo
* @return
*/
public boolean updateExpandInfo(ExpandInfo expandInfo){
boolean flag = false;
try {
mManager.getDaoSession().update(expandInfo);
flag = true;
}catch (Exception e){
e.printStackTrace();
}
return flag;
}
/**
* 删除单条记录
* @param expandInfo
* @return
*/
public boolean deleteExpandInfo(ExpandInfo expandInfo){
boolean flag = false;
try {
//按照id删除
mManager.getDaoSession().delete(expandInfo);
flag = true;
}catch (Exception e){
e.printStackTrace();
}
return flag;
}
/**
* 删除所有记录
* @return
*/
public boolean deleteAll(){
boolean flag = false;
try {
//按照id删除
mManager.getDaoSession().deleteAll(ExpandInfo.class);
flag = true;
}catch (Exception e){
e.printStackTrace();
}
return flag;
}
/**
* 查询所有记录
* @return
*/
public List<ExpandInfo> queryAllExpandInfo(){
return mManager.getDaoSession().loadAll(ExpandInfo.class);
}
/**
* 根据主键id查询记录
* @param key
* @return
*/
public ExpandInfo queryExpandInfoById(long key){
return mManager.getDaoSession().load(ExpandInfo.class, key);
}
/**
* 使用native sql进行查询操作
*/
public List<ExpandInfo> queryExpandInfoByNativeSql(String sql, String[] conditions){
return mManager.getDaoSession().queryRaw(ExpandInfo.class, sql, conditions);
}
}
......@@ -247,6 +247,7 @@ public class ModifierDaoUtils {
/**
* 使用queryBuilder进行查询食品
*
* @return
*/
public List<Modifier> queryModifierByModModCommVisibleQueryBuilder() {
......
package com.gingersoft.gsa.cloud.database.utils;//package com.gingersoft.gsa.cloud.database.utils;
//
//import android.content.Context;
//import android.util.Log;
//
//import com.gingersoft.gsa.cloud.database.DaoManager;
//import com.gingersoft.gsa.cloud.database.greendao.FunctionDao;
//
//import org.greenrobot.greendao.AbstractDao;
//
///**
// * Created by Wyh on 2020/1/17.
// */
//public class PrinterDeviceDaoUtils {
//
// private static final String TAG = FunctionDaoUtils.class.getSimpleName();
// private DaoManager mManager;
//
// public PrinterDeviceDaoUtils(Context context) {
// mManager = DaoManager.getInstance();
// mManager.init(context);
// }
//
//
// /**
// * 完成Function记录的插入,如果表未创建,先创建Function表
// * @return
// */
// public boolean insertFunction(AbstractDao entity){
// boolean flag = false;
// flag = mManager.getDaoSession().getFunctionDao().insert(function) == -1 ? false : true;
// Log.i(TAG, "insert function :" + flag + "-->" + function.toString());
// return flag;
// }
//
// /**
// * 插入多条数据,在子线程操作
// * @param functionList
// * @return
// */
// public boolean insertMultFunction(final List<Function> functionList) {
// boolean flag = false;
// try {
// mManager.getDaoSession().runInTx(new Runnable() {
// @Override
// public void run() {
// for (Function Function : functionList) {
// mManager.getDaoSession().insertOrReplace(Function);
// }
// }
// });
// flag = true;
// } catch (Exception e) {
// e.printStackTrace();
// }
// return flag;
// }
//
// /**
// * 修改一条数据
// * @param function
// * @return
// */
// public boolean updateFunction(Function function){
// boolean flag = false;
// try {
// mManager.getDaoSession().update(function);
// flag = true;
// }catch (Exception e){
// e.printStackTrace();
// }
// return flag;
// }
//
// /**
// * 删除单条记录
// * @param function
// * @return
// */
// public boolean deleteFunction(Function function){
// boolean flag = false;
// try {
// //按照id删除
// mManager.getDaoSession().delete(function);
// flag = true;
// }catch (Exception e){
// e.printStackTrace();
// }
// return flag;
// }
//
// /**
// * 删除所有记录
// * @return
// */
// public boolean deleteAll(){
// boolean flag = false;
// try {
// //按照id删除
// mManager.getDaoSession().deleteAll(Function.class);
// flag = true;
// }catch (Exception e){
// e.printStackTrace();
// }
// return flag;
// }
//
// /**
// * 查询所有记录
// * @return
// */
// public List<Function> queryAllFunction(){
// return mManager.getDaoSession().loadAll(Function.class);
// }
//
// /**
// * 根据主键id查询记录
// * @param key
// * @return
// */
// public Function queryFunctionById(long key){
// return mManager.getDaoSession().load(Function.class, key);
// }
//
// /**
// * 使用native sql进行查询操作
// */
// public List<Function> queryFunctionByNativeSql(String sql, String[] conditions){
// return mManager.getDaoSession().queryRaw(Function.class, sql, conditions);
// }
//
// /**
// * 使用queryBuilder进行查询
// * @return
// */
// public List<Function> queryFunctionByQueryBuilder(long FunctionId){
// QueryBuilder<Function> queryBuilder = mManager.getDaoSession().queryBuilder(Function.class);
// return queryBuilder.where(FunctionDao.Properties.Id.eq(FunctionId)).list();
//// return queryBuilder.where(FunctionDao.Properties._id.ge(id)).list();
// }
//
//
//}
import android.content.Context;
import android.util.Log;
import com.gingersoft.gsa.cloud.database.DaoManager;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.gingersoft.gsa.cloud.database.greendao.PrinterDeviceBeanDao;
import org.greenrobot.greendao.AbstractDao;
import org.greenrobot.greendao.query.QueryBuilder;
import java.util.List;
/**
* Created by Wyh on 2020/1/17.
*/
public class PrinterDeviceDaoUtils {
private static final String TAG = PrinterDeviceDaoUtils.class.getSimpleName();
private DaoManager mManager;
public PrinterDeviceDaoUtils(Context context) {
mManager = DaoManager.getInstance();
mManager.init(context);
}
/**
* 完成PrinterDeviceBean记录的插入,如果表未创建,先创建PrinterDeviceBean表
* @return
*/
public boolean insertPrinterDeviceBean(PrinterDeviceBean printerDevice){
boolean flag = false;
flag = mManager.getDaoSession().getPrinterDeviceBeanDao().insert(printerDevice) == -1 ? false : true;
Log.i(TAG, "insert printerDevice :" + flag + "-->" + printerDevice.toString());
return flag;
}
/**
* 插入多条数据,在子线程操作
* @param printerDeviceList
* @return
*/
public boolean insertMultPrinterDeviceBean(final List<PrinterDeviceBean> printerDeviceList) {
boolean flag = false;
try {
mManager.getDaoSession().runInTx(new Runnable() {
@Override
public void run() {
for (PrinterDeviceBean PrinterDeviceBean : printerDeviceList) {
mManager.getDaoSession().insertOrReplace(PrinterDeviceBean);
}
}
});
flag = true;
} catch (Exception e) {
e.printStackTrace();
}
return flag;
}
/**
* 修改一条数据
* @param printerDevice
* @return
*/
public boolean updatePrinterDeviceBean(PrinterDeviceBean printerDevice){
boolean flag = false;
try {
mManager.getDaoSession().update(printerDevice);
flag = true;
}catch (Exception e){
e.printStackTrace();
}
return flag;
}
/**
* 删除单条记录
* @param printerDevice
* @return
*/
public boolean deletePrinterDeviceBean(PrinterDeviceBean printerDevice){
boolean flag = false;
try {
//按照id删除
mManager.getDaoSession().delete(printerDevice);
flag = true;
}catch (Exception e){
e.printStackTrace();
}
return flag;
}
/**
* 删除所有记录
* @return
*/
public boolean deleteAll(){
boolean flag = false;
try {
//按照id删除
mManager.getDaoSession().deleteAll(PrinterDeviceBean.class);
flag = true;
}catch (Exception e){
e.printStackTrace();
}
return flag;
}
/**
* 查询所有记录
* @return
*/
public List<PrinterDeviceBean> queryAllPrinterDeviceBean(){
return mManager.getDaoSession().loadAll(PrinterDeviceBean.class);
}
/**
* 根据主键id查询记录
* @param key
* @return
*/
public PrinterDeviceBean queryPrinterDeviceBeanById(long key){
return mManager.getDaoSession().load(PrinterDeviceBean.class, key);
}
/**
* 使用native sql进行查询操作
*/
public List<PrinterDeviceBean> queryPrinterDeviceBeanByNativeSql(String sql, String[] conditions){
return mManager.getDaoSession().queryRaw(PrinterDeviceBean.class, sql, conditions);
}
/**
* 使用queryBuilder进行查询
* @return
*/
public List<PrinterDeviceBean> queryPrinterDeviceBeanByQueryBuilder(long PrinterDeviceBeanId){
QueryBuilder<PrinterDeviceBean> queryBuilder = mManager.getDaoSession().queryBuilder(PrinterDeviceBean.class);
return queryBuilder.where(PrinterDeviceBeanDao.Properties.Id.eq(PrinterDeviceBeanId)).list();
}
}
package com.gingersoft.gsa.cloud.base.common.bean;
package com.gingersoft.gsa.cloud.function;
import android.content.Context;
import android.util.DisplayMetrics;
......@@ -6,9 +6,7 @@ import android.util.Log;
import com.jess.arms.utils.DeviceUtils;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
/**
......@@ -19,7 +17,7 @@ import java.util.Set;
* 描述:
*/
public class CurrentAndroidSetting {
public class FunctionStyleUtils {
private int ID;
private String TableNumPadChar;
......@@ -249,7 +247,7 @@ public class CurrentAndroidSetting {
private int screen_h = 1920;
private int screen_density_dpi;
public void adjustSize(Context context, CurrentAndroidSetting setting) {
public void adjustSize(Context context, FunctionStyleUtils setting) {
DisplayMetrics metrics = DeviceUtils.getDisplayMetrics(context);
screen_w = metrics.widthPixels;
screen_h = metrics.heightPixels;
......
package com.gingersoft.gsa.cloud.constans;
package com.gingersoft.gsa.cloud.function;
/**
* 作者:ELEGANT_BIN
......@@ -9,6 +9,8 @@ package com.gingersoft.gsa.cloud.constans;
*/
public interface StyleConstans {
String width = "w";
String height = "h";
String front_size = "fs";
String front_color = "fc";
String backgroup_color = "bc";
......
......@@ -6,6 +6,8 @@ import android.app.Application;
import android.os.Bundle;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.CommonConfiguration;
import com.gingersoft.gsa.cloud.database.utils.FoodComboDaoUtils;
import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils;
......@@ -33,14 +35,19 @@ public class MyActivityLifecycle implements Application.ActivityLifecycleCallbac
@Override
public void onActivityResumed(Activity activity) {
String name = activity.getClass().getSimpleName();
if(name.equals("NewMainActivity")){
String name = activity.getClass().getSimpleName();
if (name.equals("NewMainActivity")) {
//每次到首頁都更新食品套餐,細項對應ID備用
FoodComboDaoUtils foodComboDaoUtils = new FoodComboDaoUtils(activity);
CommonConfiguration.getInstance().saveComboIdConfiguration(foodComboDaoUtils.queryAllCombo());
ModifierDaoUtils modifierDaoUtils = new ModifierDaoUtils(activity);
CommonConfiguration.getInstance().saveModifierTopIdConfiguration(modifierDaoUtils.queryAllModifier());
} else if (name.equals("TableActivity")) {
//清空賬單數據
MyOrderManage.getInstance().clear();
//清空開檯數據
OpenTableManage.getDefault().clear();
}
GsaCloudApplication.getAppContext().setCurrentActivity(activity);
}
......
package com.gingersoft.gsa.cloud.ui.utils;
import android.util.Log;
import android.view.View;
import android.view.animation.AlphaAnimation;
import android.view.animation.Animation;
import android.view.animation.AnimationSet;
import android.view.animation.DecelerateInterpolator;
import android.view.animation.TranslateAnimation;
import com.gingersoft.gsa.cloud.ui.widget.dialog.ChooseRestaurantDialog;
import com.qmuiteam.qmui.QMUILog;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-05-14
* 修订历史:2020-05-14
* 描述:動畫相關工具類
*/
public class AnimateUtils {
/**
* 升起动画
* @param contentView
* @param duration
*/
public static void animateUp(View contentView, long duration) {
if (contentView == null) {
return;
}
TranslateAnimation translate = new TranslateAnimation(
Animation.RELATIVE_TO_SELF, 0f, Animation.RELATIVE_TO_SELF, 0f,
Animation.RELATIVE_TO_SELF, 1f, Animation.RELATIVE_TO_SELF, 0f
);
AlphaAnimation alpha = new AlphaAnimation(0, 1);
AnimationSet set = new AnimationSet(true);
set.addAnimation(translate);
set.addAnimation(alpha);
set.setInterpolator(new DecelerateInterpolator());
set.setDuration(duration);
set.setFillAfter(true);
contentView.startAnimation(set);
}
/**
* 降下动画
*
* @param contentView
* @param duration
*/
public static void animateDown(View contentView, long duration) {
if (contentView == null) {
return;
}
TranslateAnimation translate = new TranslateAnimation(
Animation.RELATIVE_TO_SELF, 0f, Animation.RELATIVE_TO_SELF, 0f,
Animation.RELATIVE_TO_SELF, 0f, Animation.RELATIVE_TO_SELF, 1f
);
AlphaAnimation alpha = new AlphaAnimation(1, 0);
AnimationSet set = new AnimationSet(true);
set.addAnimation(translate);
set.addAnimation(alpha);
set.setInterpolator(new DecelerateInterpolator());
set.setDuration(duration);
set.setFillAfter(true);
contentView.startAnimation(set);
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:innerRadiusRatio="3"
android:shape="oval"
android:thicknessRatio="20"
android:useLevel="false">
<solid android:color="@color/theme_color" />
</shape>
\ No newline at end of file
......@@ -118,7 +118,7 @@ public interface MealStandContract {
Observable<BaseRespose> printOrder(RequestBody requestBody);
Observable<FoodReason> getRestaurantFoodReason(int restaurantId, int type);
Observable<FoodReason> getRestaurantFoodReason(int brandId ,int restaurantId, int type);
List<Food> queryDB_FoodGroupList();
......
......@@ -67,6 +67,8 @@ public interface TableContract {
Observable<TableDetail> getTable(int tableId);
Observable<BaseRespose> getOrderById(long orderId);
Observable<BaseRespose> openTable(RequestBody requestBody);
Observable<BaseRespose> turnTable(RequestBody requestBody);
......
......@@ -162,9 +162,9 @@ public class MealStandModel extends BaseModel implements MealStandContract.Model
}
@Override
public Observable<FoodReason> getRestaurantFoodReason(int restaurantId, int type) {
public Observable<FoodReason> getRestaurantFoodReason(int brandId,int restaurantId, int type) {
return mRepositoryManager.obtainRetrofitService(MealService.class)
.getRestaurantFoodReason(restaurantId,type);
.getRestaurantFoodReason(brandId,restaurantId,type);
}
@Override
......
......@@ -5,6 +5,7 @@ import android.app.Application;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.service.OrderService;
import com.gingersoft.gsa.cloud.table.mvp.model.service.TableService;
import com.google.gson.Gson;
import com.jess.arms.integration.IRepositoryManager;
......@@ -64,6 +65,12 @@ public class TableModel extends BaseModel implements TableContract.Model {
}
@Override
public Observable<BaseRespose> getOrderById(long orderId) {
return mRepositoryManager.obtainRetrofitService(OrderService.class)
.getOrderById(orderId);
}
@Override
public Observable<BaseRespose> openTable(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(TableService.class)
.openTable(requestBody);
......
......@@ -16,6 +16,8 @@ import java.util.Map;
public class AddOrderRequest {
private long orderId;
/**賬單小數*/
private Double rounding;
/**整單折扣ID*/
private Long discountId;
private Map<String, List<OrderBean.OrderDetailsBean>> maps;
......@@ -28,6 +30,14 @@ public class AddOrderRequest {
this.orderId = orderId;
}
public Double getRounding() {
return rounding;
}
public void setRounding(Double rounding) {
this.rounding = rounding;
}
public Long getDiscountId() {
return discountId;
}
......@@ -48,6 +58,7 @@ public class AddOrderRequest {
public String toString() {
return "AddOrderRequest{" +
"orderId=" + orderId +
", rounding=" + rounding +
", discountId=" + discountId +
", maps=" + maps +
'}';
......
......@@ -19,6 +19,8 @@ public class CreateOrderRequest {
private int tableId;
private String tableName;
private int restaurantId;
/**賬單小數*/
private Double rounding;
/**整單折扣ID*/
private Long discountId;
private Map<Long, List<OrderBean.OrderDetailsBean>> orderDetails;
......@@ -55,6 +57,14 @@ public class CreateOrderRequest {
this.restaurantId = restaurantId;
}
public Double getRounding() {
return rounding;
}
public void setRounding(Double rounding) {
this.rounding = rounding;
}
public Long getDiscountId() {
return discountId;
}
......@@ -142,6 +152,7 @@ public class CreateOrderRequest {
// }
// }
@Override
public String toString() {
return "CreateOrderRequest{" +
......@@ -149,6 +160,7 @@ public class CreateOrderRequest {
", tableId=" + tableId +
", tableName='" + tableName + '\'' +
", restaurantId=" + restaurantId +
", rounding=" + rounding +
", discountId=" + discountId +
", orderDetails=" + orderDetails +
'}';
......
......@@ -53,7 +53,6 @@ public interface MealService {
// @FormUrlEncoded
@POST("orderDetails/delete" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> deleteFood(@Body RequestBody requestBody);
// Observable<BaseResult> deleteFood(@Field("mapsDelete") List<Map<Byte, DeleteOrderRequest>> mapsDelete,@Field("orderId") long orderId,@Field("type") byte type,@Field("reasonId") int reasonId);
@FormUrlEncoded
@POST("order/calculation/price" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
......@@ -63,7 +62,7 @@ public interface MealService {
Observable<BaseRespose> printOrder(@Body RequestBody requestBody);
@GET("restaurantFoodReason/config/list" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<FoodReason> getRestaurantFoodReason(@Query("restaurantId") int restaurantId, @Query("type") int type);
Observable<FoodReason> getRestaurantFoodReason(@Query("brandId") int brandId , @Query("restaurantId") int restaurantId, @Query("type") int type);
@POST("restaurantTable/transfer" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseRespose> transferFood(@Body RequestBody requestBody);
......
package com.gingersoft.gsa.cloud.table.mvp.model.service;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
......@@ -24,6 +25,9 @@ public interface OrderService {
@GET("order/pay/success" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> getOrderDetail(@Query("orderId") long orderId);
@GET("order/findOrderById" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseRespose> getOrderById(@Query("orderId") long orderId);
@FormUrlEncoded
@POST("order/cancel" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> cancelOrder(@Field("orderId") long orderId);
......
......@@ -24,17 +24,18 @@ public class OrderAssemblyUtil {
OrderDetail order = orderDetails.get(i);
if (order.getItemType() == 1) {
newOrderDetails.add(order);
newOrderDetails.addAll(getOrdersItem2ByParentId(orderDetails, order.getId(), i));
newOrderDetails.addAll(getOrdersItem2ByParentId(orderDetails, order.getId(),order.getProductId(), i));
}
}
return newOrderDetails;
}
private static List<OrderDetail> getOrdersItem2ByParentId(List<OrderDetail> orderDetails, long id, int startIndex) {
private static List<OrderDetail> getOrdersItem2ByParentId(List<OrderDetail> orderDetails, long id, long productId,int startIndex) {
List<OrderDetail> orders = new ArrayList<>();
for (int i = startIndex; i < orderDetails.size(); i++) {
OrderDetail item = orderDetails.get(i);
if (item.getItemType() == 3 && item.getParentId() == id) {
item.setParentProductId(productId);
//添加主食品細項
orders.add(item);
}
......@@ -43,19 +44,21 @@ public class OrderAssemblyUtil {
for (int i = startIndex; i < orderDetails.size(); i++) {
OrderDetail item = orderDetails.get(i);
if (item.getItemType() == 2 && item.getParentId() == id) {
item.setParentProductId(productId);
//添加子食品
orders.add(item);
orders.addAll(getOrdersItem3ByParentId(orderDetails,item.getId(),i));
orders.addAll(getOrdersItem3ByParentId(orderDetails,item.getId(),item.getProductId(),i));
}
}
return orders;
}
private static List<OrderDetail> getOrdersItem3ByParentId(List<OrderDetail> orderDetails, long id, int startIndex) {
private static List<OrderDetail> getOrdersItem3ByParentId(List<OrderDetail> orderDetails, long id, long productId, int startIndex) {
List<OrderDetail> orders = new ArrayList<>();
for (int i = startIndex; i < orderDetails.size(); i++) {
OrderDetail item = orderDetails.get(i);
if (item.getItemType() == 3 && item.getParentId() == id) {
item.setParentProductId(productId);
//添加子食品細項
orders.add(item);
}
......
......@@ -132,6 +132,9 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
addSentOrderMoney();
addOrderRounding();
//設置賬單總金額
myOrderManage.setTotalAmount(getTotalAmount());
}
@Override
......@@ -409,13 +412,15 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
/**
* 更新賬單小數
* 更新賬單小數(在最後一行)
*/
protected void updateOrderRounding(){
for (BillOrderMoney orderMoney: mOrderMoneyList) {
if(orderMoney.getType() == BillOrderMoney.ROUNDING_TYPE){
mOrderMoneyList.remove(orderMoney);
for (BillOrderMoney item: mOrderMoneyList) {
if(item.getType() == BillOrderMoney.ROUNDING_TYPE){
mOrderMoneyList.remove(item);
mOrderMoneyAdapter.notifyDataSetChanged();
addOrderRounding();
break;
}
}
}
......@@ -473,6 +478,19 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
/**
* 獲取賬單小數
* @return
*/
private Double getRounding(){
for (BillOrderMoney item: mOrderMoneyList) {
if(item.getType() == BillOrderMoney.ROUNDING_TYPE){
return item.getMoney();
}
}
return null;
}
/**
* 獲取食品總數量
*
* @return
......@@ -549,6 +567,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
request.setPerson(OpenTableManage.getDefault().getPeopleNumber());
request.setTableId(OpenTableManage.getDefault().getTableBean().getId());
request.setTableName(OpenTableManage.getDefault().getTableBean().getTableName());
request.setRounding(getRounding());
request.setRestaurantId(restaurantId);
Discount orderDiscount = getNesOrderDiscount();
if (orderDiscount != null) {
......@@ -561,6 +580,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
AddOrderRequest request = new AddOrderRequest();
request.setMaps(orderDetailBeanToAddFoodRequest(foodList));
request.setOrderId(MyOrderManage.getInstance().getOrderId());
request.setRounding(getRounding());
Discount orderDiscount = getNesOrderDiscount();
if (orderDiscount != null) {
request.setDiscountId(orderDiscount.getId());
......
......@@ -6,6 +6,8 @@ import android.content.Context;
import android.text.TextUtils;
import android.view.View;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
......@@ -33,6 +35,8 @@ import org.simple.eventbus.EventBus;
import java.util.ArrayList;
import java.util.List;
import static com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity.MODIFIER_TYPE;
/**
* ================================================
......@@ -147,7 +151,7 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
}
private void addModifierItem(Modifier datasBean) {
String OR_Qty = datasBean.getMaxNumber();
String OR_Qty = datasBean.getCurrentMaxNumber();
int Qty = datasBean.getNumber();
boolean isSoldout = false;
......@@ -157,8 +161,8 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
isSoldout = Integer.parseInt(OR_Qty) <= Qty;
}
if (isSoldout) {
String msg = LanguageUtils.get_language_system(mApplication, "meal.Qty.short", "["+datasBean+"]數量不足(meal.Qty.short)");
CommonTipDialog.showSurpisedDialog(IActivity,msg,null,null,null,null,null);
String msg = LanguageUtils.get_language_system(mApplication, "meal.Qty.short", "[" + datasBean.getModifierName() + "]數量不足");
CommonTipDialog.showSurpisedDialog(IActivity, msg, null, null, null, null, null);
} else {
EventBus.getDefault().post(datasBean, MealConstant.ADD_FOOD_MODIFIER);
}
......@@ -179,42 +183,6 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
}
}
// private void showInputNumberDialog(Modifier datasBean, Context context) {
// //选择沽清的数量
// ChooseNumberDialog inputNumberDialog = new ChooseNumberDialog(context);
// inputNumberDialog.builder();
// inputNumberDialog.setOnClickListener(new ChooseNumberDialog.OnClickListener() {
// @Override
// public void onComfirmClick(String number) {
//// EventBus.getDefault().post(new InsertSoldoutCtrlEvent(datasBean.getMID(), number), "InsertSoldoutCtrlEvent");
// }
//
// @Override
// public void onBackPage() {
//
// }
// });
// inputNumberDialog.setType(2);
// inputNumberDialog.setCancelable(true);
// inputNumberDialog.show();
// }
// private boolean isStopOpeart(Modifier datasBean) {
// boolean isStopOpeart = false;
//// if (mCurrentSlodoutFoodList_Full != null && mCurrentSlodoutFoodList_Full.size() > 0) {
//// for (SoldoutCtrFood.DatasBean csf : mCurrentSlodoutFoodList_Full) {
//// if (csf.getItemID().equals(datasBean.getMID()) && csf.getType().equals("M")) {
//// if (!TextUtils.isEmpty(csf.get_QtyName())) {
//// isStopOpeart = true;
//// //暂停或者售罄直接提示恢复
//// EventBus.getDefault().post(csf, "toRestoreBeforeEvent");
//// }
//// }
//// }
//// }
// return isStopOpeart;
// }
public void initModMsgFineItemData(long mid) {
mFineItemOneLastPosition = -1;
......@@ -303,19 +271,116 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
mFineItemTwoList.clear();
mFineItemTwoList.addAll(modifierList);
mRootView.setFineItemKindItemRecycleSpanCount(mFineItemTwoList.size());
updateChildModifierSlodoutFoodList_Full();
mFineItemTwoAdapter.notifyDataSetChanged();
mRootView.getRecycle_fine_item_kind_item().setVisibility(View.VISIBLE);
mRootView.getRecycle_fine_adll().setVisibility(View.INVISIBLE);
}
public void updateCurrentSlodoutFoodList_Full(List<SoldoutCtrFood> event) {
this.mCurrentSlodoutFoodList_Full = event;
mFineItemAllAdapter.setCurrentSlodoutFoodList_Full(event);
/**
* 更新細項組獲細項沽清數據
*
* @param soldoutCtrList
*/
public void updateParentModifierSlodoutFoodList_Full(List<SoldoutCtrFood> soldoutCtrList) {
this.mCurrentSlodoutFoodList_Full = soldoutCtrList;
clearParentModifierSoldoutCtrData();
setParentModifierSoldoutCtrData(soldoutCtrList);
mFineItemAllAdapter.setCurrentSlodoutFoodList_Full(soldoutCtrList);
mFineItemAllAdapter.notifyDataSetChanged();
}
mFineItemTwoAdapter.setCurrentSlodoutFoodList_Full(event);
mFineItemTwoAdapter.notifyDataSetChanged();
/**
* 更新細項組下具體細項數據
*/
public void updateChildModifierSlodoutFoodList_Full() {
clearChildModifierSoldoutCtrData();
setChildModifierSoldoutCtrData(mCurrentSlodoutFoodList_Full);
}
private void setParentModifierSoldoutCtrData(List<SoldoutCtrFood> soldoutCtrList) {
for (SoldoutCtrFood scc : soldoutCtrList) {
for (Modifier modifier : mFineItemOneList) {
if (scc.getType() == MODIFIER_TYPE && scc.getModifierId() != null && modifier.getMid() == scc.getModifierId()) {
String qty = scc.getQtyName();
modifier.setMaxNumber(qty);
modifier.setCurrentMaxNumber(qty);
setModifierMaxQty(modifier);
}
}
}
}
private void setChildModifierSoldoutCtrData(List<SoldoutCtrFood> soldoutCtrList) {
for (SoldoutCtrFood scc : soldoutCtrList) {
for (Modifier modifier : mFineItemTwoList) {
if (scc.getType() == MODIFIER_TYPE && scc.getModifierId() != null && modifier.getMid() == scc.getModifierId()) {
String qty = scc.getQtyName();
modifier.setMaxNumber(qty);
modifier.setCurrentMaxNumber(qty);
setModifierMaxQty(modifier);
}
}
}
}
private void clearParentModifierSoldoutCtrData() {
for (Modifier modifier : mFineItemOneList) {
modifier.setMaxNumber("");
modifier.setCurrentMaxNumber("");
}
}
private void clearChildModifierSoldoutCtrData() {
for (Modifier modifier : mFineItemTwoList) {
modifier.setMaxNumber("");
modifier.setCurrentMaxNumber("");
}
}
public void setModifierMaxQty(Modifier modfier) {
int currentSelectNumber = 0;
for (int i = 0; i < getNewOrderFoodLists().size(); i++) {
OrderDetail orderFood = getNewOrderFoodLists().get(i);
if (orderFood.getMid() == modfier.getMid()) {
currentSelectNumber += orderFood.getNumber();
}
}
String User_Qty = modfier.getMaxNumber();
if (!User_Qty.equals("") && !User_Qty.equals("售罄") && !User_Qty.equals("暫停")) {
int maxQty = Integer.parseInt(User_Qty);
if (maxQty > 0) {
int Currrent_OR_Qty = maxQty - currentSelectNumber;
if (Currrent_OR_Qty < 1) {
modfier.setCurrentMaxNumber("售罄");
} else {
modfier.setCurrentMaxNumber(Currrent_OR_Qty + "");
}
}
}
}
/**
* 返回未送單食品列表
*
* @return
*/
protected List<OrderDetail> getNewOrderFoodLists() {
List<OrderDetail> orderDetails = new ArrayList<>();
for (int i = 0; i < MyOrderManage.getInstance().getOrderFoodList().size(); i++) {
OrderDetail orderDetail = MyOrderManage.getInstance().getOrderFoodList().get(i);
if (orderDetail.isNew()) {
orderDetails.add(orderDetail);
}
}
return orderDetails;
}
private void setFid(List<Modifier> fineItemList, long fid) {
......
......@@ -576,6 +576,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
@Override
public void onItemClick(Discount item, int position) {
addOrderDiscount(item, 0, false);
updateOrderMoneyItem();
}
});
}
......
......@@ -433,7 +433,7 @@ public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Mode
filterSlodoutData(false);
//更新細項沽清數據
IActivity.updateCurrentSlodoutFoodList_Full(mCurrentSlodoutFoodList_Full);
IActivity.setFineItemSlodoutListFull(mCurrentSlodoutFoodList_Full);
} else {
if (mCurrentSlodoutFoodList_Full.size() > 0) {
......@@ -441,7 +441,7 @@ public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Mode
}
//更新細項沽清數據
IActivity.updateCurrentSlodoutFoodList_Full(mCurrentSlodoutFoodList_Full);
IActivity.setFineItemSlodoutListFull(mCurrentSlodoutFoodList_Full);
if (mCurrentSlodoutFoodList.size() > 0) {
mCurrentSlodoutFoodList.clear();
......
......@@ -262,7 +262,9 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
@Override
public void onError(Throwable t) {
super.onError(t);
mRootView.getCurrentTableFragment().showEmptyView(false, 0, t);
if (mRootView.getCurrentTableFragment() != null) {
mRootView.getCurrentTableFragment().showEmptyView(false, 0, t);
}
resetRefreshLayout();
}
......@@ -287,6 +289,75 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
});
}
public void loadOrderToPrint(int tableId, Long orderId) {
if (orderId == null)
return;
mModel.getOrderById(orderId)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> mRootView.hideLoading())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<BaseRespose>(mErrorHandler) {
@Override
public void onNext(@NonNull BaseRespose respose) {
if (respose.isSuccess()) {
OpenTableManage.getDefault().setPeopleNumber(0);
//設置當前開台數據1584427984728 1584428017196 1584428086282
TableBean.DataBean dataBean = getTableById(tableId);
TableBean.DataBean openTableBean = null;
if (dataBean != null) {
openTableBean = new TableBean.DataBean(dataBean);
}
OrderBean orderBean = respose.getData();
if (orderBean != null && respose.getData().getOrderDetails() != null) {
if (respose.getData().getCreateTime() != null && openTableBean != null) {
//將開台時間設置為訂單創建時間
openTableBean.setCreateTime(TimeUtils.getFormatTime(respose.getData().getCreateTime(), TimeUtils.DEFAULT_DATE_FORMAT));
}
OpenTableManage.getDefault().setPeopleNumber(orderBean.getPerson());
List<OrderBean.OrderDetailsBean> orderDetailsBeans = respose.getData().getOrderDetails();
//緩存訂單信息
MyOrderManage.getInstance().setOrderBean(new OrderBean(orderBean));
//緩存食品信息
List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(orderDetailsBeans));
MyOrderManage.getInstance().setOrderFoodList(orderDetailList);
} else {
MyOrderManage.getInstance().setOrderBean(null);
MyOrderManage.getInstance().setOrderFoodList(new ArrayList<>());
}
OpenTableManage.getDefault().setTableBean(openTableBean);
printParper();
} else {
CommonTipDialog.showSurpisedDialog(IActivity, respose.getErrMsg(), null, null, null, null, null);
}
}
/**
* 打印上菜紙
*/
private void printParper() {
CC.obtainBuilder("Component.Print")
.setActionName("printActivity")
.addParam("type", 1)
.build()
.callAsyncCallbackOnMainThread((cc, result) -> {
//清空賬單數據
MyOrderManage.getInstance().clear();
//清空開檯數據
OpenTableManage.getDefault().clear();
mRootView.canceOperat();
});
}
});
}
public void openTable(int tableId) {
RequestBody requestBody = new FormBody.Builder()
......@@ -550,13 +621,13 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
// }
// }
// break;
// case TableOperatTypeConstant.print_parper_2:
// for (int i = 0; i < datasBeans.size(); i++) {
// if (!datasBeans.get(i).isUsing() && datasBeans.get(i).getOrderid() > 0 && (datasBeans.get(i).getStatus() != 0 || datasBeans.get(i).getSplitStatus() == 1)) {
// mTableList.add(datasBeans.get(i));
// }
// }
// break;
case TableOperatTypeConstant.print_parper_2:
for (int i = 0; i < mTableList.size(); i++) {
if (mTableList.get(i).getStatus() != 0) {
filterTableBeanList.add(mTableList.get(i));
}
}
break;
case TableOperatTypeConstant.init_table_3:
for (int i = 0; i < mTableList.size(); i++) {
if (mTableList.get(i).getUseStatus() == 1) {
......@@ -625,7 +696,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
break;
case TableOperatTypeConstant.print_parper_2:
loadOrderToPrint(dataBean.getId(), dataBean.getOrderId());
break;
case TableOperatTypeConstant.init_table_3:
initTable(dataBean.getId(), true);
......
......@@ -195,7 +195,7 @@ public class OrderContentActivity extends BaseActivity<OrderContentPresenter> im
} else {
btn_order_count.setVisibility(View.INVISIBLE);
}
tv_whole.setText("合計 $" + mPresenter.getFoodTotal());
tv_whole.setText("合計 $" + mPresenter.getFoodTotal());
tv_total.setText("$" + mPresenter.getTotalAmount());
}
......
......@@ -223,7 +223,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
} else {
btn_order_count.setVisibility(View.INVISIBLE);
}
tv_whole.setText("合計 $" + mPresenter.getFoodTotal());
tv_whole.setText("合計 $" + mPresenter.getFoodTotal());
tv_total.setText("$" + mPresenter.getTotalAmount());
setDifferenceText();
}
......
......@@ -39,6 +39,7 @@ import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseActivity;
import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.base.delegate.IActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
......@@ -370,6 +371,7 @@ public class SoldoutCtrlActivity extends BaseActivity<SoldoutCtrlPresenter> impl
modMsgFineItemFragment.onModMsgMidEvent(0);
mInitModData = true;
}
setFineItemSlodoutListFull(mPresenter.getCurrentSlodoutFoodList_Full());
showViewModeVisibility(MealConstant.fine_ViewMode);
break;
}
......@@ -610,7 +612,7 @@ public class SoldoutCtrlActivity extends BaseActivity<SoldoutCtrlPresenter> impl
});
}
public void updateCurrentSlodoutFoodList_Full(List<SoldoutCtrFood> currentSlodoutFoodListc_Full) {
public void setFineItemSlodoutListFull(List<SoldoutCtrFood> currentSlodoutFoodListc_Full) {
if (modMsgFineItemFragment != null) {
modMsgFineItemFragment.updateCurrentSlodoutFoodList_Full(currentSlodoutFoodListc_Full);
}
......
......@@ -164,10 +164,6 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
super.onResume();
//開始刷新餐檯數據
onStartRefreshTableData();
//清空賬單數據
MyOrderManage.getInstance().clear();
//清空開檯數據
OpenTableManage.getDefault().clear();
}
@Override
......
......@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.ui.adapter;
import android.content.Context;
import android.graphics.Color;
import android.text.TextUtils;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
......@@ -239,26 +240,37 @@ public class FineItemOneAdapter extends DefaultAdapter<Modifier> {
/**
* 设置当前状态
*/
for (SoldoutCtrFood sc : mCurrentSlodoutFoodList_Full) {
if (sc.getType() == SoldoutCtrlActivity.MODIFIER_TYPE && sc.getModifierId().equals(datasBean.getMid())) {
String name = sc.getQtyName();
if (name.equals("")) {
tv_soldout.setVisibility(View.INVISIBLE);
} else {
if (sc.getQtyName().equalsIgnoreCase("售罄")) {
iv_qtySold.setVisibility(View.VISIBLE);
datasBean.setSoldout(true);
} else if (sc.getQtyName().equalsIgnoreCase("暫停")) {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(name);
} else {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(name);
datasBean.setMaxNumber(name);
}
}
String qty = datasBean.getCurrentMaxNumber();
if (TextUtils.isEmpty(qty)) {
tv_soldout.setVisibility(View.INVISIBLE);
} else {
if (qty.equalsIgnoreCase("售罄")) {
iv_qtySold.setVisibility(View.VISIBLE);
} else {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(qty);
}
}
// for (SoldoutCtrFood sc : mCurrentSlodoutFoodList_Full) {
// if (sc.getType() == SoldoutCtrlActivity.MODIFIER_TYPE && sc.getModifierId().equals(datasBean.getMid())) {
// String name = sc.getQtyName();
// if (name.equals("")) {
// tv_soldout.setVisibility(View.INVISIBLE);
// } else {
// if (sc.getQtyName().equalsIgnoreCase("售罄")) {
// iv_qtySold.setVisibility(View.VISIBLE);
// datasBean.setSoldout(true);
// } else if (sc.getQtyName().equalsIgnoreCase("暫停")) {
// tv_soldout.setVisibility(View.VISIBLE);
// tv_soldout.setText(name);
// } else {
// tv_soldout.setVisibility(View.VISIBLE);
// tv_soldout.setText(name);
// datasBean.setMaxNumber(name);
// }
// }
// }
// }
}
}
......
......@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.ui.adapter;
import android.content.Context;
import android.graphics.Color;
import android.text.TextUtils;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
......@@ -277,26 +278,37 @@ public class FineItemTwoAdapter extends DefaultAdapter<Modifier> {
/**
* 设置当前状态
*/
for (SoldoutCtrFood sc : mCurrentSlodoutFoodList_Full) {
if (sc.getType() == SoldoutCtrlActivity.MODIFIER_TYPE && sc.getModifierId().equals(datasBean.getMid())) {
String name = sc.getQtyName();
if (name.equals("")) {
tv_soldout.setVisibility(View.INVISIBLE);
} else {
if (sc.getQtyName().equalsIgnoreCase("售罄")) {
iv_qtySold.setVisibility(View.VISIBLE);
datasBean.setSoldout(true);
} else if (sc.getQtyName().equalsIgnoreCase("暫停")) {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(name);
} else {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(name);
datasBean.setMaxNumber(name);
}
}
String qty = datasBean.getCurrentMaxNumber();
if (TextUtils.isEmpty(qty)) {
tv_soldout.setVisibility(View.INVISIBLE);
} else {
if (qty.equalsIgnoreCase("售罄")) {
iv_qtySold.setVisibility(View.VISIBLE);
} else {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(qty);
}
}
// for (SoldoutCtrFood sc : mCurrentSlodoutFoodList_Full) {
// if (sc.getType() == SoldoutCtrlActivity.MODIFIER_TYPE && sc.getModifierId().equals(datasBean.getMid())) {
// String name = sc.getQtyName();
// if (name.equals("")) {
// tv_soldout.setVisibility(View.INVISIBLE);
// } else {
// if (sc.getQtyName().equalsIgnoreCase("售罄")) {
// iv_qtySold.setVisibility(View.VISIBLE);
// datasBean.setSoldout(true);
// } else if (sc.getQtyName().equalsIgnoreCase("暫停")) {
// tv_soldout.setVisibility(View.VISIBLE);
// tv_soldout.setText(name);
// } else {
// tv_soldout.setVisibility(View.VISIBLE);
// tv_soldout.setText(name);
// datasBean.setMaxNumber(name);
// }
// }
// }
// }
}
}
//
......
......@@ -160,12 +160,12 @@ public class ModifierAdapter extends DefaultAdapter<Modifier> {
// tv_soldout.setVisibility(View.INVISIBLE);
// }
String qty = datasBean.getMaxNumber();
String qty = datasBean.getCurrentMaxNumber();
if (qty.equals("")) {
tv_soldout.setVisibility(View.INVISIBLE);
} else {
tv_soldout.setVisibility(View.VISIBLE);
tv_soldout.setText(datasBean.getMaxNumber());
tv_soldout.setText(datasBean.getCurrentMaxNumber());
}
tv_soldout.setMaxHeight(OrderNumberChildShowSize);
......
......@@ -402,9 +402,9 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
if (orderItem != null && orderItem.isNew()) {
mInfos.remove(i);
notifyItemChanged(i);
Food orderBean = mMealStandPresenter.getOrderFoodById(orderItem.getId());
Food orderBean = mMealStandPresenter.getFoodByFid(orderItem.getId());
if (orderBean != null) {
mMealStandPresenter.setFoodMaxQty(orderBean,false);
mMealStandPresenter.setFoodMaxQty(orderBean);
}
}
}
......@@ -467,9 +467,9 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
setMyOrderManageSelectPosition();
if (mMealStandActivity != null)
if (mMealStandActivity != null) {
mMealStandActivity.showViewModeVisibility(MealConstant.food_group_ViewMode, MealConstant.food_ViewMode);
}
return select_position;
}
......@@ -482,19 +482,20 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
switch (orderDetail.getItemType()) {
case 1:
//第一层下方有细项 从下方往上删
// if (select_end_position != 0 && select_end_position > select_position) {
if (select_full_end_position != 0 && select_full_end_position > select_position) {
for (int i = select_full_end_position; i > select_position; i--) {
OrderDetail orderBean = mInfos.get(i);
boolean isParentChild = orderBean.getParentIndex() == orderDetail.getMyIndex();
if (orderBean.getItemType() == 3 && !isParentChild) {
//第二层 下面有第三层子项也要一并删除
removeAllChild3ByCombo(orderBean);
} else {
mInfos.remove(i);
notifyItemChanged(i);
if (orderBean.isNew()) {
if (orderBean.getItemType() == 2 && !isParentChild) {
//第二层 下面有第三层子项也要一并删除
removeAllChild3ByCombo(orderBean);
} else {
mInfos.remove(i);
notifyItemChanged(i);
}
break;
}
break;
}
} else {
//第一层没有子食品 直接退出
......@@ -507,19 +508,17 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
hasChild3Food(orderDetail)) {
//第二层 下面有第三层子项也要一并删除
for (int i = select_end_position; i >= select_position; i--) {
mInfos.remove(i);
notifyItemChanged(i);
if (mInfos.get(i).isNew()) {
mInfos.remove(i);
notifyItemChanged(i);
break;
}
}
} else {
// if (mInfos.get(select_position).comid.equals("discount")) {
// //如果刪除的是折扣,這裡初始化父食品D標識
// int parent_index = mInfos.get(select_position).getParent_index() -1;
// if (parent_index > -1 && parent_index < mInfos.size()) {
// mInfos.get(parent_index).setDiscount_double1(true);
// }
// }
mInfos.remove(select_position);
notifyItemChanged(select_position);
if (mInfos.get(select_position).isNew()) {
mInfos.remove(select_position);
notifyItemChanged(select_position);
}
}
break;
case 3:
......@@ -591,7 +590,7 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
boolean remove = false;
for (int i = mInfos.size() - 1; i >= 0; i--) {
boolean accordChild3 = mInfos.get(i).getParentIndex() == orderDetail.getParentIndex() || mInfos.get(i).getMyIndex() == orderDetail.getParentIndex();
if (mInfos.get(i).getItemType() != 1 && accordChild3) {
if (mInfos.get(i).getItemType() == 3 && accordChild3) {
mInfos.remove(i);
notifyItemChanged(i);
remove = true;
......@@ -705,7 +704,6 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
OrderDetail myorder = mInfos.get(i);
t = t + 1;
if (myorder != null) {
switch (myorder.getItemType()) {
case 1:
parent_index = parent_index + 1;
......@@ -776,6 +774,17 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
}
}
while (checkOrder.getItemType() != 1) {
// checkOrder.setSelected(3);
select_full_end_position = k;
k = k + 1;
if (k < mInfos.size()) {
checkOrder = mInfos.get(k);
} else {
break;
}
}
if (resetMultipleSelected()) {
//再次點擊直接恢復
notifyDataSetChanged();
......@@ -784,8 +793,6 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
while (checkOrder.getItemType() != 1) {
checkOrder.setSelected(3);
select_full_end_position = k;
k = k + 1;
if (k < mInfos.size()) {
checkOrder = mInfos.get(k);
} else {
......@@ -983,10 +990,10 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
return edgeIndex;
}
public boolean canDeleteFood(){
public boolean canDeleteFood() {
boolean can = false;
for (OrderDetail item: mInfos) {
if(item.getSelected() != 0){
for (OrderDetail item : mInfos) {
if (item.getSelected() != 0) {
can = true;
}
}
......@@ -996,6 +1003,19 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
return can;
}
public boolean canDeleteChildItem() {
int start_position = select_full_start_position;
int end_position = select_full_end_position;
for (int i = mInfos.size() - 1; i >= 0; i--) {
if (start_position <= i && i <= end_position) {
if (mInfos.get(i).isNew()) {
return true;
}
}
}
return false;
}
public List<OrderDetail> getInfos() {
return mInfos;
}
......
......@@ -98,7 +98,7 @@ public class FineItemAllFragment extends BaseFragment<FineItemAllPresenter> impl
if (event == null) {
return;
}
mPresenter.updateCurrentSlodoutFoodList_Full(event);
mPresenter.updateParentModifierSlodoutFoodList_Full(event);
}
public void onModSasteEvent(long mid) {
......@@ -115,6 +115,13 @@ public class FineItemAllFragment extends BaseFragment<FineItemAllPresenter> impl
mPresenter.initModMsgFineItemData(mid);
}
public void onModCommMidEvent(long mid) {
// if (mid == 0) {
// return;
// }
mPresenter.initModCommFineItemKindData(mid);
}
@Override
public void showLoading(String message) {
......@@ -226,4 +233,7 @@ public class FineItemAllFragment extends BaseFragment<FineItemAllPresenter> impl
//使dialog的生命周期与Fragment同步
hideLoading();
}
}
......@@ -26,6 +26,8 @@
android:layout_marginRight="@dimen/dp_5"
android:layout_toLeftOf="@+id/tv_value"
android:layout_toRightOf="@+id/tv_number"
android:ellipsize="end"
android:maxLines="1"
android:text=""
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/theme_black"
......
......@@ -276,81 +276,77 @@
android:layout_alignParentRight="true"
android:visibility="invisible">
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/btn_select_all"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#00B9F7"
android:gravity="center"
android:text="@string/all_selection"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"/>
android:textSize="@dimen/sp_14"
android:visibility="gone"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/btn_anti_selection"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#00B9F7"
android:gravity="center"
android:text="@string/anti_selection"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"/>
android:textSize="@dimen/sp_14"
android:visibility="gone"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/btn_taste"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#00B9F7"
android:gravity="center"
android:drawablePadding="0dp"
android:drawableLeft="@mipmap/meal_fine_taste"
android:text="@string/taste"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14" />
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/btn_msg"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#7D8888"
android:drawableLeft="@mipmap/meal_fine_info"
android:gravity="center"
android:text="@string/msg"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/btn_delete"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#FF5024"
android:drawableLeft="@mipmap/meal_fine_delete"
android:gravity="center"
android:text="@string/remove"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14" />
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/btn_end"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="@color/Grass_green"
android:drawableLeft="@mipmap/meal_fine_end"
android:gravity="center"
android:text="@string/end"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14" />
......@@ -496,6 +492,16 @@
android:background="@color/theme_white_color"
android:visibility="gone">
<ImageView
android:id="@+id/iv_fine_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/normal_space"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_black_back"
android:visibility="visible" />
<com.gingersoft.gsa.cloud.ui.view.PagerSlidingTabStrip xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/tabs_fine"
android:layout_width="wrap_content"
......
......@@ -98,7 +98,7 @@
<string name="Addordelete">加/減</string>
<string name="taste">口味</string>
<string name="msg">訊息</string>
<string name="all_selection"></string>
<string name="all_selection"></string>
<string name="anti_selection">反選</string>
<string name="remove">刪除</string>
<string name="end">完成</string>
......
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.gingersoft.gsa.cloud.user.login">
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.gingersoft.gsa.cloud.user.login">
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application
android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/user_login_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".mvp.ui.activity.mvp.ui.activity.LoginActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.SwitchServerActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.WelcomeActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<application
android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/user_login_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".mvp.ui.activity.mvp.ui.activity.LoginActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.SwitchServerActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.WelcomeActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".mvp.ui.activity.mvp.ui.activity.LoginOutActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.RecoverPasswordActivity" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".mvp.ui.activity.mvp.ui.activity.LoginOutActivity" />
<activity android:name=".mvp.ui.activity.mvp.ui.activity.RecoverPasswordActivity"/>
<meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value="ConfigModule" />
<meta-data
android:name="design_width_in_dp"
android:value="360" />
<meta-data
android:name="design_height_in_dp"
android:value="540" />
</application>
<meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value="ConfigModule" />
<meta-data
android:name="design_width_in_dp"
android:value="360"/>
<meta-data
android:name="design_height_in_dp"
android:value="640"/>
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
</manifest>
\ No newline at end of file
......@@ -72,7 +72,7 @@ public class SwitchServerActivity extends BaseActivity<SwitchServerPresenter> im
tvNowServer.setText("當前服務器:" + nowServer);
rbHK.setText("香港服務器:" + HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL_HK);
rbSZ.setText("深圳服務器:" + HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL_SZ);
rb_youchang_hk.setText("友常本地:" + HttpsConstans.ROOT_SERVER_YOU_CHANG_HK);
rb_youchang_hk.setText("世維本地:" + HttpsConstans.ROOT_SERVER_YOU_CHANG_HK);
if (nowServer.equals(HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL_SZ)) {
rbSZ.setChecked(true);
} else if (nowServer.equals(HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL_HK)) {
......@@ -86,7 +86,7 @@ public class SwitchServerActivity extends BaseActivity<SwitchServerPresenter> im
} else if (rbHK.isChecked()) {
HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL = HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL_HK;
}else {
HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL = HttpsConstans.ROOT_SERVER_YOU_CHANG_HK;
HttpsConstans.ROOT_SERVER_ADDRESS_FORMAL = HttpsConstans.ROOT_SERVER_SHI_WEI_HK;
}
GsaCloudApplication.setGlobalDomain();
finish();
......
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