Commit 704db78c by Wyh

'update.gitignore'

parent 41b458f0
...@@ -32,9 +32,6 @@ HELP.md ...@@ -32,9 +32,6 @@ HELP.md
*/build */build
*/build
*.iml
.gradle
/local.properties /local.properties
/.idea/libraries /.idea/libraries
/.idea/modules.xml /.idea/modules.xml
...@@ -50,6 +47,7 @@ gradlew ...@@ -50,6 +47,7 @@ gradlew
gradlew.bat gradlew.bat
/.gradle/ /.gradle/
/.idea/ /.idea/
/gradle/
local.properties local.properties
DaiJia.iml DaiJia.iml
*.txt
*.log
\ No newline at end of file
/build/ /build/
app.iml app.iml
proguard-rules.pro proguard-rules.pro
*.txt
*.log
\ No newline at end of file
...@@ -138,7 +138,7 @@ dependencies { ...@@ -138,7 +138,7 @@ dependencies {
addComponent 'component-delivery-pick' addComponent 'component-delivery-pick'
addComponent 'component-manager' addComponent 'component-manager'
addComponent 'component-coldchain' addComponent 'component-coldchain'
// addComponent 'component-supply-chain' addComponent 'component-supply-chain'
addComponent 'component-webview' addComponent 'component-webview'
addComponent 'component-scan' addComponent 'component-scan'
addComponent 'component-pay' addComponent 'component-pay'
......
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -3,13 +3,9 @@ package com.gingersoft.gsa.cloud.login.mvp.ui.activity; ...@@ -3,13 +3,9 @@ package com.gingersoft.gsa.cloud.login.mvp.ui.activity;
import android.animation.AnimatorSet; import android.animation.AnimatorSet;
import android.animation.ObjectAnimator; import android.animation.ObjectAnimator;
import android.content.Intent; import android.content.Intent;
import android.graphics.Color;
import android.os.Bundle; import android.os.Bundle;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log;
import android.view.View; import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.view.animation.Animation; import android.view.animation.Animation;
import android.view.animation.AnimationUtils; import android.view.animation.AnimationUtils;
import android.view.animation.DecelerateInterpolator; import android.view.animation.DecelerateInterpolator;
...@@ -17,18 +13,17 @@ import android.view.animation.ScaleAnimation; ...@@ -17,18 +13,17 @@ import android.view.animation.ScaleAnimation;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.ConstraintLayout; import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.viewpager2.widget.ViewPager2; import androidx.viewpager2.widget.ViewPager2;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.login.LoginBean; import com.gingersoft.gsa.cloud.common.core.login.LoginBean;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager; import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.gsa.cloud.common.core.user.UserConstans; import com.gingersoft.gsa.cloud.common.core.user.UserConstans;
import com.gingersoft.gsa.cloud.common.core.user.UserContext; import com.gingersoft.gsa.cloud.common.core.user.UserContext;
import com.gingersoft.gsa.cloud.common.core.user.state.LoginedState; import com.gingersoft.gsa.cloud.common.core.user.state.LoginedState;
import com.gingersoft.gsa.cloud.common.utils.encryption.Aes;
import com.gingersoft.gsa.cloud.common.utils.other.SPUtils; import com.gingersoft.gsa.cloud.common.utils.other.SPUtils;
import com.gingersoft.gsa.cloud.login.R; import com.gingersoft.gsa.cloud.login.R;
import com.gingersoft.gsa.cloud.login.R2; import com.gingersoft.gsa.cloud.login.R2;
...@@ -38,15 +33,11 @@ import com.gingersoft.gsa.cloud.login.mvp.bean.GuideBean; ...@@ -38,15 +33,11 @@ import com.gingersoft.gsa.cloud.login.mvp.bean.GuideBean;
import com.gingersoft.gsa.cloud.login.mvp.contract.LoginInterfaceImpl; import com.gingersoft.gsa.cloud.login.mvp.contract.LoginInterfaceImpl;
import com.gingersoft.gsa.cloud.login.mvp.contract.WelcomeContract; import com.gingersoft.gsa.cloud.login.mvp.contract.WelcomeContract;
import com.gingersoft.gsa.cloud.login.mvp.presenter.WelcomePresenter; import com.gingersoft.gsa.cloud.login.mvp.presenter.WelcomePresenter;
import com.gingersoft.gsa.cloud.login.mvp.ui.activity.ChooseRestaurantActivity;
import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.GuideAdapter; import com.gingersoft.gsa.cloud.login.mvp.ui.adapter.GuideAdapter;
import com.gingersoft.gsa.cloud.ui.widget.Indicator.UIndicator; import com.gingersoft.gsa.cloud.ui.widget.Indicator.UIndicator;
import com.gyf.immersionbar.ImmersionBar; import com.gyf.immersionbar.ImmersionBar;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.StatusBarUtil;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.util.QMUIStatusBarHelper;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
......
...@@ -2,13 +2,12 @@ package com.gingersoft.gsa.cloud.main.mvp.contract; ...@@ -2,13 +2,12 @@ package com.gingersoft.gsa.cloud.main.mvp.contract;
import com.gingersoft.gsa.cloud.common.bean.BaseResult; import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.CheckVersionRequest; import com.gingersoft.gsa.cloud.main.mvp.model.bean.CheckVersionRequest;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import com.tbruyelle.rxpermissions2.RxPermissions; import com.tbruyelle.rxpermissions2.RxPermissions;
import io.reactivex.Observable; import io.reactivex.Observable;
import okhttp3.RequestBody; import okhttp3.RequestBody;
import retrofit2.http.Query;
/** /**
......
...@@ -59,7 +59,7 @@ public class NewMainModel extends BaseModel implements NewMainContract.Model { ...@@ -59,7 +59,7 @@ public class NewMainModel extends BaseModel implements NewMainContract.Model {
@Override @Override
public Observable<CheckVersionRequest> checkAppVersion(String version, int mobileType, int type, int brandId, int restaurantId) { public Observable<CheckVersionRequest> checkAppVersion(String version, int mobileType, int type, int brandId, int restaurantId) {
return mRepositoryManager.obtainRetrofitService(MainService.class) return mRepositoryManager.obtainRetrofitService(MainService.class)
.checkAppVersion(version,mobileType,type,brandId,restaurantId); .checkAppVersion(version, mobileType, type, brandId, restaurantId);
} }
@Override @Override
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
<application android:networkSecurityConfig="@xml/network_android"> <application android:networkSecurityConfig="@xml/network_android">
<activity android:name=".mvp.ui.activity.SupplyChainMainActivity" <activity android:name=".mvp.ui.activity.SupplyChainMainActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|stateVisible"/> android:windowSoftInputMode="adjustResize|stateVisible"/>
<meta-data <meta-data
......
...@@ -13,7 +13,9 @@ ...@@ -13,7 +13,9 @@
<application <application
android:name="com.gingersoft.gsa.cloud.app.GsaCloudApplication" android:name="com.gingersoft.gsa.cloud.app.GsaCloudApplication"
android:networkSecurityConfig="@xml/network_android"> android:networkSecurityConfig="@xml/network_android">
<activity android:name=".mvp.ui.activity.SupplyChainMainActivity"> <activity android:name=".mvp.ui.activity.SupplyChainMainActivity"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize|stateVisible">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.VIEW" /> <action android:name="android.intent.action.VIEW" />
......
package com.gingersoft.supply_chain.di.module;
import com.jess.arms.di.scope.FragmentScope;
import dagger.Binds;
import dagger.Module;
import dagger.Provides;
import com.gingersoft.supply_chain.mvp.contract.InflowWaterContract;
import com.gingersoft.supply_chain.mvp.model.InflowWaterModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/08/2021 15:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class InflowWaterModule {
@Binds
abstract InflowWaterContract.Model bindInflowWaterModel(InflowWaterModel model);
}
\ No newline at end of file
package com.gingersoft.supply_chain.mvp.contract;
import com.jess.arms.mvp.IView;
import com.jess.arms.mvp.IModel;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/08/2021 15:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface InflowWaterContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
}
}
...@@ -29,8 +29,11 @@ public interface WarehousingOrderListContract { ...@@ -29,8 +29,11 @@ public interface WarehousingOrderListContract {
interface View extends IView { interface View extends IView {
void loadList(WarehousingOrderListAdapter adapter); void loadList(WarehousingOrderListAdapter adapter);
void setDefaultPageState(WarehousingOrderListAdapter adapter);
/** /**
* 關閉加載動畫 * 關閉加載動畫
*
* @param isNoMore 是否還有更多 true 沒有更多了 * @param isNoMore 是否還有更多 true 沒有更多了
*/ */
void finishLoad(boolean isNoMore); void finishLoad(boolean isNoMore);
......
package com.gingersoft.supply_chain.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.supply_chain.mvp.contract.InflowWaterContract;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 05/08/2021 15:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@FragmentScope
public class InflowWaterModel extends BaseModel implements InflowWaterContract.Model {
@Inject
Gson mGson;
@Inject
Application mApplication;
@Inject
public InflowWaterModel(IRepositoryManager repositoryManager) {
super(repositoryManager);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mGson = null;
this.mApplication = null;
}
}
\ No newline at end of file
...@@ -102,6 +102,7 @@ public class WarehousingOrderListPresenter extends BasePresenter<WarehousingOrde ...@@ -102,6 +102,7 @@ public class WarehousingOrderListPresenter extends BasePresenter<WarehousingOrde
} else { } else {
if (pageIndex == 0) { if (pageIndex == 0) {
warehousingOrderListAdapter.setList(warehousingOrderListBean.getPurchaseWarehousingOrdersVO()); warehousingOrderListAdapter.setList(warehousingOrderListBean.getPurchaseWarehousingOrdersVO());
mRootView.setDefaultPageState(warehousingOrderListAdapter);
} else { } else {
warehousingOrderListAdapter.addData(warehousingOrderListBean.getPurchaseWarehousingOrdersVO()); warehousingOrderListAdapter.addData(warehousingOrderListBean.getPurchaseWarehousingOrdersVO());
mRootView.finishLoad(CollectionUtils.isNullOrEmpty(warehousingOrderListBean.getPurchaseWarehousingOrdersVO())); mRootView.finishLoad(CollectionUtils.isNullOrEmpty(warehousingOrderListBean.getPurchaseWarehousingOrdersVO()));
......
...@@ -28,6 +28,7 @@ import com.gingersoft.supply_chain.mvp.ui.fragment.supplier.SupplierListFragment ...@@ -28,6 +28,7 @@ import com.gingersoft.supply_chain.mvp.ui.fragment.supplier.SupplierListFragment
import com.gingersoft.supply_chain.mvp.ui.fragment.warehouse.SnInOutboundRecordsFragment; import com.gingersoft.supply_chain.mvp.ui.fragment.warehouse.SnInOutboundRecordsFragment;
import com.gingersoft.supply_chain.mvp.ui.fragment.warehouse.WareHouseListFragment; import com.gingersoft.supply_chain.mvp.ui.fragment.warehouse.WareHouseListFragment;
import com.gingersoft.supply_chain.mvp.ui.fragment.warehouse.WarehousingOrderListFragment; import com.gingersoft.supply_chain.mvp.ui.fragment.warehouse.WarehousingOrderListFragment;
import com.gingersoft.supply_chain.mvp.ui.widget.UpdateRestaurantInfoPop;
import com.jess.arms.di.component.AppComponent; import com.jess.arms.di.component.AppComponent;
import com.lxj.xpopup.XPopup; import com.lxj.xpopup.XPopup;
import com.lxj.xpopup.impl.ConfirmPopupView; import com.lxj.xpopup.impl.ConfirmPopupView;
...@@ -149,12 +150,7 @@ public class FunctionListFragment extends BaseSupplyChainFragment<FunctionListPr ...@@ -149,12 +150,7 @@ public class FunctionListFragment extends BaseSupplyChainFragment<FunctionListPr
} }
break; break;
case "設置": case "設置":
ConfirmPopupView po = new XPopup.Builder(requireContext()).asConfirm("修改餐廳信息", null, null, null, new OnConfirmListener() { new XPopup.Builder(requireContext()).asCustom(new UpdateRestaurantInfoPop(requireContext())).show();
@Override
public void onConfirm() {
}
}, null, false, R.layout.layout_update_restaurant_info);
break; break;
default: default:
......
...@@ -87,7 +87,6 @@ public class InflowWaterFragment extends BaseSupplyChainFragment<InflowWaterPres ...@@ -87,7 +87,6 @@ public class InflowWaterFragment extends BaseSupplyChainFragment<InflowWaterPres
wareHousingDetailsAdapter.setType(currentIndex); wareHousingDetailsAdapter.setType(currentIndex);
wareHousingDetailsAdapter.setList(warehouseDetailsBeans); wareHousingDetailsAdapter.setList(warehouseDetailsBeans);
} }
Log.e("eee", "是否顯示:" + CollectionUtils.isNotNullOrEmpty(warehouseDetailsBeans));
if (CollectionUtils.isNotNullOrEmpty(warehouseDetailsBeans)) { if (CollectionUtils.isNotNullOrEmpty(warehouseDetailsBeans)) {
loadService.showSuccess(); loadService.showSuccess();
} else { } else {
......
...@@ -4,6 +4,7 @@ import android.os.Bundle; ...@@ -4,6 +4,7 @@ import android.os.Bundle;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
import android.widget.EditText; import android.widget.EditText;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
...@@ -70,6 +71,13 @@ public class SnInOutboundRecordsFragment extends BaseSupplyChainFragment<SnInOut ...@@ -70,6 +71,13 @@ public class SnInOutboundRecordsFragment extends BaseSupplyChainFragment<SnInOut
public void initData(@Nullable Bundle savedInstanceState) { public void initData(@Nullable Bundle savedInstanceState) {
loadService = LoadSir.getDefault().register(rvInoutBoundRecordList); loadService = LoadSir.getDefault().register(rvInoutBoundRecordList);
// srlInoutBoundRecord.setPrimaryColorsId(R.color.trans, R.color.black); // srlInoutBoundRecord.setPrimaryColorsId(R.color.trans, R.color.black);
edInoutBoundSearch.setOnEditorActionListener((v, actionId, event) -> {
if (actionId == EditorInfo.IME_ACTION_SEARCH) {
hideSoftInput();
mPresenter.getFoodInOutBoundRecordBySnCode(edInoutBoundSearch.getText().toString());
}
return false;
});
initTopBar(supplyTopBar, getString(R.string.str_title_sn_query)); initTopBar(supplyTopBar, getString(R.string.str_title_sn_query));
} }
......
...@@ -224,8 +224,8 @@ public class WarehousingOrderDetailsFragment extends BaseSupplyChainFragment<War ...@@ -224,8 +224,8 @@ public class WarehousingOrderDetailsFragment extends BaseSupplyChainFragment<War
*/ */
private void showScanPopup(int position, PurchaseFoodBean infoVosBean) { private void showScanPopup(int position, PurchaseFoodBean infoVosBean) {
List<PurchaseFoodEncodeSn> foodEncodeSns = infoVosBean.getPurchaseFoodEncodeSn(); List<PurchaseFoodEncodeSn> foodEncodeSns = infoVosBean.getPurchaseFoodEncodeSn();
ScanSnPopup scanSnPopup = new ScanSnPopup(this, infoVosBean.getName(), foodEncodeSns, true) ScanSnPopup scanSnPopup = new ScanSnPopup(this, infoVosBean.getName(), foodEncodeSns, true);
.setOnDeleteListener((snCode, snPosition) -> foodEncodeSns.remove(snCode)); // .setOnDeleteListener((snCode, snPosition) -> foodEncodeSns.remove(snCode));
scanSnPopup.setOnScanResultListener((popup, scanResult) -> { scanSnPopup.setOnScanResultListener((popup, scanResult) -> {
//當前食材infoVosBean裡面有個sn碼集合,將scanResult添加進去 //當前食材infoVosBean裡面有個sn碼集合,將scanResult添加進去
infoVosBean.setPurchaseFoodEncodeSn(scanResult); infoVosBean.setPurchaseFoodEncodeSn(scanResult);
......
...@@ -47,16 +47,7 @@ import static com.gingersoft.supply_chain.mvp.ui.fragment.food.FoodIngredientsFr ...@@ -47,16 +47,7 @@ import static com.gingersoft.supply_chain.mvp.ui.fragment.food.FoodIngredientsFr
/** /**
* ================================================ * Description: 入庫單列表
* Description:
* <p>
* Created by MVPArmsTemplate on 04/28/2021 19:21
* <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 WarehousingOrderListFragment extends BaseSupplyChainFragment<WarehousingOrderListPresenter> implements WarehousingOrderListContract.View, View.OnClickListener { public class WarehousingOrderListFragment extends BaseSupplyChainFragment<WarehousingOrderListPresenter> implements WarehousingOrderListContract.View, View.OnClickListener {
...@@ -97,12 +88,9 @@ public class WarehousingOrderListFragment extends BaseSupplyChainFragment<Wareho ...@@ -97,12 +88,9 @@ public class WarehousingOrderListFragment extends BaseSupplyChainFragment<Wareho
loadOrderList(); loadOrderList();
}); });
smartRefreshLayout.setOnRefreshListener(refreshLayout -> loadOrderList()); smartRefreshLayout.setOnRefreshListener(refreshLayout -> loadOrderList());
smartRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { smartRefreshLayout.setOnLoadMoreListener(refreshLayout -> {
@Override
public void onLoadMore(@NonNull RefreshLayout refreshLayout) {
mPresenter.pageIndex++; mPresenter.pageIndex++;
loadOrderList(); loadOrderList();
}
}); });
supplyTopBar.addRightImageButton(R.drawable.ic_circle_new_food_ingredient, R.id.topbar_right_add_button).setOnClickListener(this); supplyTopBar.addRightImageButton(R.drawable.ic_circle_new_food_ingredient, R.id.topbar_right_add_button).setOnClickListener(this);
loadOrderList(); loadOrderList();
...@@ -127,15 +115,17 @@ public class WarehousingOrderListFragment extends BaseSupplyChainFragment<Wareho ...@@ -127,15 +115,17 @@ public class WarehousingOrderListFragment extends BaseSupplyChainFragment<Wareho
@Override @Override
public void loadList(WarehousingOrderListAdapter warehousingOrderListAdapter) { public void loadList(WarehousingOrderListAdapter warehousingOrderListAdapter) {
finishLoad(false); finishLoad(false);
setDefaultPageState(warehousingOrderListAdapter);
warehousingOrderListAdapter.setOnItemClickListener((adapter, view, position) -> start(WarehousingOrderDetailsFragment.newInstance(warehousingOrderListAdapter.getItem(position).getId(), warehousingOrderListAdapter.getItem(position).getStorageType())));
rvSecondCategory.setAdapter(warehousingOrderListAdapter);
}
@Override
public void setDefaultPageState(WarehousingOrderListAdapter warehousingOrderListAdapter) {
if (warehousingOrderListAdapter.getItemCount() <= 0) { if (warehousingOrderListAdapter.getItemCount() <= 0) {
loadService.showCallback(EmptyCallback.class); loadService.showCallback(EmptyCallback.class);
} else { } else {
loadService.showSuccess(); loadService.showSuccess();
} }
warehousingOrderListAdapter.setOnItemClickListener((adapter, view, position) -> {
start(WarehousingOrderDetailsFragment.newInstance(warehousingOrderListAdapter.getItem(position).getId(), warehousingOrderListAdapter.getItem(position).getStorageType()));
});
rvSecondCategory.setAdapter(warehousingOrderListAdapter);
} }
@Override @Override
......
...@@ -85,7 +85,6 @@ public class ScanSnView extends FrameLayout { ...@@ -85,7 +85,6 @@ public class ScanSnView extends FrameLayout {
* 確認回調 * 確認回調
*/ */
private ScanSnPopup.OnScanResultListener onScanResultListener; private ScanSnPopup.OnScanResultListener onScanResultListener;
/** /**
* 初始時snCode的數量,點擊取消時,如果現有的sn數量和剛開始的一樣多,就不提示 * 初始時snCode的數量,點擊取消時,如果現有的sn數量和剛開始的一樣多,就不提示
*/ */
...@@ -198,9 +197,9 @@ public class ScanSnView extends FrameLayout { ...@@ -198,9 +197,9 @@ public class ScanSnView extends FrameLayout {
}); });
adapter.setOnItemChildClickListener((adapter1, view, position) -> { adapter.setOnItemChildClickListener((adapter1, view, position) -> {
if (view.getId() == R.id.iv_sn_code_delete) { if (view.getId() == R.id.iv_sn_code_delete) {
//刪除SN碼
PurchaseFoodEncodeSn item = adapter.getItem(position); PurchaseFoodEncodeSn item = adapter.getItem(position);
if (item.newAdd) { if (item.newAdd) {
onSingerResultListener.onScanValue(false, item, adapter.getItemCount());
if (onDeleteSnCodeListener != null) { if (onDeleteSnCodeListener != null) {
onDeleteSnCodeListener.onDelete(item, position); onDeleteSnCodeListener.onDelete(item, position);
} }
...@@ -208,6 +207,7 @@ public class ScanSnView extends FrameLayout { ...@@ -208,6 +207,7 @@ public class ScanSnView extends FrameLayout {
newCodeSize--; newCodeSize--;
} }
adapter1.removeAt(position); adapter1.removeAt(position);
onSingerResultListener.onScanValue(false, item, adapter.getItemCount());
setConfirmBtnState(); setConfirmBtnState();
} else { } else {
ToastUtils.show(getContext(), getString(R.string.str_already_warehousing_dont_delete)); ToastUtils.show(getContext(), getString(R.string.str_already_warehousing_dont_delete));
......
...@@ -2,12 +2,25 @@ package com.gingersoft.supply_chain.mvp.ui.widget; ...@@ -2,12 +2,25 @@ package com.gingersoft.supply_chain.mvp.ui.widget;
import android.content.Context; import android.content.Context;
import android.view.View; import android.view.View;
import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import com.gingersoft.gsa.cloud.common.core.restaurant.BrandInfo;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfo;
import com.gingersoft.gsa.cloud.common.core.restaurant.RestaurantInfoManager;
import com.gingersoft.supply_chain.R; import com.gingersoft.supply_chain.R;
import com.lxj.xpopup.core.CenterPopupView; import com.gingersoft.supply_chain.R2;
import com.gingersoft.supply_chain.mvp.content.PurchaseConstant;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import com.lxj.xpopup.impl.ConfirmPopupView; import com.lxj.xpopup.impl.ConfirmPopupView;
import com.qmuiteam.qmui.alpha.QMUIAlphaButton;
import java.util.Objects;
import butterknife.BindView;
import butterknife.ButterKnife;
/** /**
* @author 宇航. 1239658231@qq.com * @author 宇航. 1239658231@qq.com
...@@ -18,6 +31,23 @@ import com.lxj.xpopup.impl.ConfirmPopupView; ...@@ -18,6 +31,23 @@ import com.lxj.xpopup.impl.ConfirmPopupView;
*/ */
public class UpdateRestaurantInfoPop extends ConfirmPopupView { public class UpdateRestaurantInfoPop extends ConfirmPopupView {
@BindView(R2.id.tv_title)
TextView tvTitle;
@BindView(R2.id.tv_content)
TextView tvContent;
@BindView(R2.id.layout_brand_input)
TextInputLayout layoutBrandInput;
@BindView(R2.id.layout_restaurant_input)
TextInputLayout layoutRestaurantInput;
@BindView(R2.id.tv_confirm)
QMUIAlphaButton tvConfirm;
@BindView(R2.id.tv_cancel)
QMUIAlphaButton tvCancel;
@BindView(R2.id.ed_brand_input)
TextInputEditText edBrandInput;
@BindView(R2.id.ed_restaurant_input)
TextInputEditText edRestaurantInput;
public UpdateRestaurantInfoPop(@NonNull Context context) { public UpdateRestaurantInfoPop(@NonNull Context context) {
super(context, R.layout.layout_update_restaurant_info); super(context, R.layout.layout_update_restaurant_info);
} }
...@@ -26,11 +56,11 @@ public class UpdateRestaurantInfoPop extends ConfirmPopupView { ...@@ -26,11 +56,11 @@ public class UpdateRestaurantInfoPop extends ConfirmPopupView {
@Override @Override
protected void onCreate() { protected void onCreate() {
super.onCreate(); super.onCreate();
findViewById(R.id.tv_confirm).setOnClickListener(new OnClickListener() { ButterKnife.bind(this);
@Override tvConfirm.setOnClickListener(v -> {
public void onClick(View v) { RestaurantInfoManager.newInstance().setBrandInfo(new BrandInfo(Integer.parseInt(Objects.requireNonNull(edBrandInput.getText()).toString()), ""));
RestaurantInfoManager.newInstance().setResturantInfo(new RestaurantInfo(Integer.parseInt(String.valueOf(edRestaurantInput.getText())), "", ""));
} dismiss();
}); });
} }
} }
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
app:layout_constraintTop_toBottomOf="@id/tv_content"> app:layout_constraintTop_toBottomOf="@id/tv_content">
<com.google.android.material.textfield.TextInputEditText <com.google.android.material.textfield.TextInputEditText
android:id="@+id/ed_brand_input"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:hint="請輸入品牌ID" android:hint="請輸入品牌ID"
...@@ -57,6 +58,7 @@ ...@@ -57,6 +58,7 @@
app:layout_constraintTop_toBottomOf="@id/layout_brand_input"> app:layout_constraintTop_toBottomOf="@id/layout_brand_input">
<com.google.android.material.textfield.TextInputEditText <com.google.android.material.textfield.TextInputEditText
android:id="@+id/ed_restaurant_input"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:hint="請輸入餐廳ID" android:hint="請輸入餐廳ID"
......
...@@ -336,6 +336,10 @@ public class MealStandPresenter extends BaseMealPresenter<MealStandContract.Mode ...@@ -336,6 +336,10 @@ public class MealStandPresenter extends BaseMealPresenter<MealStandContract.Mode
}); });
} }
/**
* 點選購物車
* @param rvSelectMeal
*/
public void initSelectMealAdapter(RecyclerView rvSelectMeal) { public void initSelectMealAdapter(RecyclerView rvSelectMeal) {
if (mMealCartAdapter != null) { if (mMealCartAdapter != null) {
//設置子父級下標 //設置子父級下標
...@@ -430,6 +434,7 @@ public class MealStandPresenter extends BaseMealPresenter<MealStandContract.Mode ...@@ -430,6 +434,7 @@ public class MealStandPresenter extends BaseMealPresenter<MealStandContract.Mode
return; return;
} }
if (datasBean.getIsParent() == 0) { if (datasBean.getIsParent() == 0) {
//食品組,也是食品。加載下面的食品列表
switchFoodByParentId(datasBean.getId()); switchFoodByParentId(datasBean.getId());
} else { } else {
mCurrentOrderDetailBean = OrderDetail.foodTransOrderDetails(datasBean, 1); mCurrentOrderDetailBean = OrderDetail.foodTransOrderDetails(datasBean, 1);
...@@ -472,7 +477,7 @@ public class MealStandPresenter extends BaseMealPresenter<MealStandContract.Mode ...@@ -472,7 +477,7 @@ public class MealStandPresenter extends BaseMealPresenter<MealStandContract.Mode
//设置当前操作的套餐细项 //设置当前操作的套餐细项
long id = mCurrentOrderDetailBean.isNew() ? mCurrentOrderDetailBean.getProductId() : mCurrentOrderDetailBean.getId(); long id = mCurrentOrderDetailBean.isNew() ? mCurrentOrderDetailBean.getProductId() : mCurrentOrderDetailBean.getId();
mCurrentOrderDetailBean = OrderDetail.comboTransOrderDetail(datasBean, id, mCurrentOrderDetailBean.getProductId(), 1, OrderDetail.COMBO_PROP, RvMealClicked); mCurrentOrderDetailBean = OrderDetail.comboTransOrderDetail(datasBean, id, mCurrentOrderDetailBean.getProductId(), 1, OrderDetail.COMBO_PROP, RvMealClicked);
//添加子项 //添加子项,將套餐和默認的細項添加到購物車
addComboItem(mCurrentOrderDetailBean); addComboItem(mCurrentOrderDetailBean);
//沽清子食品沽清數 //沽清子食品沽清數
updateComboItemSoldoutCtrData(); updateComboItemSoldoutCtrData();
......
...@@ -101,15 +101,7 @@ import butterknife.OnLongClick; ...@@ -101,15 +101,7 @@ import butterknife.OnLongClick;
/** /**
* ================================================ * ================================================
* Description: * Description:餐牌頁面
* <p>
* Created by MVPArmsTemplate on 04/17/2021 10:40
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/ */
public class MealStandActivity extends BaseMealActivity<MealStandPresenter> implements MealStandContract.View, PagerGridLayoutManager.PageListener { public class MealStandActivity extends BaseMealActivity<MealStandPresenter> implements MealStandContract.View, PagerGridLayoutManager.PageListener {
...@@ -345,15 +337,18 @@ public class MealStandActivity extends BaseMealActivity<MealStandPresenter> impl ...@@ -345,15 +337,18 @@ public class MealStandActivity extends BaseMealActivity<MealStandPresenter> impl
private void initAdapter() { private void initAdapter() {
mPresenter.initSelectMealAdapter(rvMealCart); mPresenter.initSelectMealAdapter(rvMealCart);
if (mFoodGroupAdapter != null) { if (mFoodGroupAdapter != null) {
//食品組
rvFoodGroup.setAdapter(mFoodGroupAdapter); rvFoodGroup.setAdapter(mFoodGroupAdapter);
} }
if (mFoodAdapter != null) { if (mFoodAdapter != null) {
rvFood.setAdapter(mFoodAdapter); rvFood.setAdapter(mFoodAdapter);
} }
if (mComboAdapter != null) { if (mComboAdapter != null) {
//套餐
rvCombo.setAdapter(mComboAdapter); rvCombo.setAdapter(mComboAdapter);
} }
if (mModifierAdapter != null) { if (mModifierAdapter != null) {
//細項
rvModifier.setAdapter(mModifierAdapter); rvModifier.setAdapter(mModifierAdapter);
} }
} }
......
...@@ -57,7 +57,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -57,7 +57,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: 訂單列表頁#顯示每個餐廳下所有已結賬單 * Description: 賬單管理——訂單列表頁#顯示每個餐廳下所有已結賬單
* <p> * <p>
* Created by MVPArmsTemplate on 03/13/2020 14:28 * Created by MVPArmsTemplate on 03/13/2020 14:28
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -39,7 +39,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -39,7 +39,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 賬單折扣 (賬單內容頁面)(整個訂單折扣)
* <p> * <p>
* Created by MVPArmsTemplate on 04/02/2021 17:26 * Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -50,16 +50,8 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -50,16 +50,8 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * Description:會員錢包優惠券
* Description:
* <p>
* Created by MVPArmsTemplate on 04/02/2021 17:28 * Created by MVPArmsTemplate on 04/02/2021 17:28
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/ */
public class CouponFragment extends BaseFragment<CouponPresenter> implements CouponContract.View { public class CouponFragment extends BaseFragment<CouponPresenter> implements CouponContract.View {
......
...@@ -44,7 +44,7 @@ import butterknife.BindView; ...@@ -44,7 +44,7 @@ import butterknife.BindView;
* @作者: bin * @作者: bin
* @創建時間: 2021-04-02 17:14 * @創建時間: 2021-04-02 17:14
* @更新時間: 2021-04-02 17:14 * @更新時間: 2021-04-02 17:14
* @描述: * @描述: 折扣dialog 整單
*/ */
public class DiscountDialogFragment extends BaseDialogFragment<BasePresenter> { public class DiscountDialogFragment extends BaseDialogFragment<BasePresenter> {
......
...@@ -37,7 +37,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -37,7 +37,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 食品折扣
* <p> * <p>
* Created by MVPArmsTemplate on 04/02/2021 17:26 * Created by MVPArmsTemplate on 04/02/2021 17:26
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -48,6 +48,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -48,6 +48,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a> * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================ * ================================================
*/ */
@Deprecated
public class MealDiscountFragment extends BaseFragment<MealDiscountPresenter> implements MealDiscountContract.View { public class MealDiscountFragment extends BaseFragment<MealDiscountPresenter> implements MealDiscountContract.View {
@BindView(R2.id.tabLayout) @BindView(R2.id.tabLayout)
......
...@@ -41,7 +41,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -41,7 +41,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 公共細項 (口味、訊息)
* <p> * <p>
* Created by MVPArmsTemplate on 02/19/2020 22:15 * Created by MVPArmsTemplate on 02/19/2020 22:15
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -30,7 +30,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -30,7 +30,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 套餐子項
* <p> * <p>
* Created by MVPArmsTemplate on 02/19/2020 22:16 * Created by MVPArmsTemplate on 02/19/2020 22:16
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -60,7 +60,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -60,7 +60,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 會員dialog
* <p> * <p>
* Created by MVPArmsTemplate on 04/24/2021 16:24 * Created by MVPArmsTemplate on 04/24/2021 16:24
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -41,7 +41,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -41,7 +41,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 餐檯頁面——編號
* <p> * <p>
* Created by MVPArmsTemplate on 12/28/2019 17:32 * Created by MVPArmsTemplate on 12/28/2019 17:32
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -51,7 +51,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull; ...@@ -51,7 +51,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/** /**
* ================================================ * ================================================
* Description: * Description: 餐檯——全部、狀態
* <p> * <p>
* Created by MVPArmsTemplate on 12/28/2019 17:33 * Created by MVPArmsTemplate on 12/28/2019 17:33
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a> * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
......
...@@ -87,8 +87,7 @@ ...@@ -87,8 +87,7 @@
android:text="恢復" android:text="恢復"
android:textAllCaps="false" android:textAllCaps="false"
android:textColor="@color/theme_black" android:textColor="@color/theme_black"
android:textSize="@dimen/sp_12" android:textSize="@dimen/sp_12" />
android:visibility="gone" />
<TextView <TextView
android:id="@+id/btn_meal_discount" android:id="@+id/btn_meal_discount"
......
...@@ -7,8 +7,8 @@ ext { ...@@ -7,8 +7,8 @@ ext {
targetSdkVersion : 29, targetSdkVersion : 29,
//正式版: 1.0.3 3 //正式版: 1.0.3 3
//內部測試版:1.2.0 20 //內部測試版:1.2.0 20
versionCode : 33, //38 versionCode : 34, //38
versionName : "1.3.3" //1.3.8 versionName : "1.3.4_1" //1.3.8
] ]
version = [ version = [
......
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
# AndroidX package structure to make it clearer which packages are bundled with the
# Android operating system, and which are packaged with your app's APK
# https://developer.android.com/topic/libraries/support-library/androidx-rn
android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
android.injected.testOnly=false
GROUP=com.qmuiteam
QMUI_VERSION=2.0.0-alpha05
QMUI_ARCH_VERSION=2.0.0-alpha05
QMUI_LINT_VERSION = 1.1.0
QMUI_SKIN_MAKER_VERSION = 0.0.1
POM_GIT_URL=https://github.com/Tencent/QMUI_Android/
POM_SITE_URL=https://qmuiteam.com/android
BUILD_TYPE = release
#dokit全局配置
# 插件开关
DOKIT_PLUGIN_SWITCH=true
# 插件日志
DOKIT_LOG_SWITCH=true
# webview 的全限定名
DOKIT_WEBVIEW_CLASS_NAME=com/didichuxing/doraemonkit/widget/webview/MyWebView
#dokit 慢函数开关
DOKIT_METHOD_SWITCH=true
#dokit 函数调用栈层级
DOKIT_METHOD_STACK_LEVEL=4
#0:调用栈模式 打印函数调用栈 需添加指定入口 默认为application onCreate 和attachBaseContext
#1:普通模式 运行时打印某个函数的耗时 全局业务代码函数插入
DOKIT_METHOD_STRATEGY=0
#利用Gradle worker API实现并行执行kapt任务。
kapt.use.worker.api=true
#避免执行注解处理。
kapt.include.compile.classpath=false
#org.gradle.jvmargs=-Xmx1536m
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=4096m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.configureondemand=true
android.enableAapt2=false
\ No newline at end of file
#!/usr/bin/env sh
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
echo "$*"
}
die () {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
APP_ARGS=$(save "$@")
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi
exec "$JAVACMD" "$@"
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
...@@ -14,8 +14,10 @@ import androidx.annotation.NonNull; ...@@ -14,8 +14,10 @@ import androidx.annotation.NonNull;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.dianping.logan.Logan; import com.dianping.logan.Logan;
import com.dianping.logan.OnLoganProtocolStatus; import com.dianping.logan.OnLoganProtocolStatus;
import com.didichuxing.doraemonkit.DoraemonKit;
import com.gingersoft.gsa.cloud.common.BuildConfig; import com.gingersoft.gsa.cloud.common.BuildConfig;
import com.gingersoft.gsa.cloud.common.R; import com.gingersoft.gsa.cloud.common.R;
import com.gingersoft.gsa.cloud.common.config.DoraemonKitConfig;
import com.gingersoft.gsa.cloud.common.config.LoganConfig; import com.gingersoft.gsa.cloud.common.config.LoganConfig;
import com.gingersoft.gsa.cloud.common.config.expandconfig.ExpandInfoSetting; import com.gingersoft.gsa.cloud.common.config.expandconfig.ExpandInfoSetting;
import com.gingersoft.gsa.cloud.common.config.expandconfig.FunctionExtendedConfiguration; import com.gingersoft.gsa.cloud.common.config.expandconfig.FunctionExtendedConfiguration;
......
...@@ -8,6 +8,6 @@ package com.gingersoft.gsa.cloud.common.config; ...@@ -8,6 +8,6 @@ package com.gingersoft.gsa.cloud.common.config;
*/ */
public class DoraemonKitConfig { public class DoraemonKitConfig {
public static final String PRODUCE_ID = "72c44cfa50ce2d7325e407bf31d93173"; public static final String PRODUCE_ID = "a2c0fbec622f212793af6d7b6a434a12";
} }
...@@ -117,6 +117,9 @@ public class TableBean { ...@@ -117,6 +117,9 @@ public class TableBean {
private String createTime; private String createTime;
private String createBy; private String createBy;
private int posTableId; private int posTableId;
/**
* 服務費比例
*/
private int serviceCharge; private int serviceCharge;
private long memberId; private long memberId;
/** /**
......
...@@ -24,7 +24,13 @@ public class DeleteOrderRequest { ...@@ -24,7 +24,13 @@ public class DeleteOrderRequest {
@Data @Data
public static class DeleteBean { public static class DeleteBean {
/**
* 刪除的食品id
*/
private long id; private long id;
/**
* 刪除的食品數量
*/
private int number; private int number;
} }
} }
...@@ -63,7 +63,7 @@ public class ShoppingCart { ...@@ -63,7 +63,7 @@ public class ShoppingCart {
* *
* @see NomalDiscount * @see NomalDiscount
* @see MemberLevelDiscount * @see MemberLevelDiscount
* @see MemberCouponDiscount * @see MemberWalletCouponDiscount
*/ */
protected List<MultyDiscount> multyDiscountList; protected List<MultyDiscount> multyDiscountList;
/** /**
......
...@@ -82,6 +82,7 @@ public class MealOrder extends BaseOrder { ...@@ -82,6 +82,7 @@ public class MealOrder extends BaseOrder {
public static final int DISCOUNT_ITEM_TAG = 11; public static final int DISCOUNT_ITEM_TAG = 11;
private boolean billHasChanged = false; private boolean billHasChanged = false;
/** /**
* 訂單管理用到
* 記錄修改訂單操作 * 記錄修改訂單操作
* false#送單 * false#送單
* true#修改訂單 * true#修改訂單
......
...@@ -28,6 +28,11 @@ public class PaymentCommand { ...@@ -28,6 +28,11 @@ public class PaymentCommand {
private PaymentCommand() { private PaymentCommand() {
} }
/**
* 發起操作(支付、退款...)
* @param fragmentManager
* @param requestParms
*/
public void action(FragmentManager fragmentManager, RequestParms requestParms) { public void action(FragmentManager fragmentManager, RequestParms requestParms) {
final PayMethod currPosPaymethod = requestParms.getCurrPosPaymethod(); final PayMethod currPosPaymethod = requestParms.getCurrPosPaymethod();
if (currPosPaymethod != null) { if (currPosPaymethod != null) {
...@@ -41,6 +46,11 @@ public class PaymentCommand { ...@@ -41,6 +46,11 @@ public class PaymentCommand {
} }
} }
/**
* 當操作異常 (查詢狀態、更新狀態)
* @param fragmentManager
* @param requestParms
*/
public void matter(FragmentManager fragmentManager, RequestParms requestParms) { public void matter(FragmentManager fragmentManager, RequestParms requestParms) {
final PosMatterFragment posMatterFragment = PosMatterFragmentFactory.createPosMatterFragment(requestParms); final PosMatterFragment posMatterFragment = PosMatterFragmentFactory.createPosMatterFragment(requestParms);
posMatterFragment.show(fragmentManager, posMatterFragment.getClass().getSimpleName()); posMatterFragment.show(fragmentManager, posMatterFragment.getClass().getSimpleName());
......
package com.gingersoft.gsa.cloud.pay.device.pos; package com.gingersoft.gsa.cloud.pay.device.pos;
import androidx.fragment.app.FragmentActivity;
import androidx.fragment.app.FragmentManager; import androidx.fragment.app.FragmentManager;
import com.gingersoft.gsa.cloud.pay.RequestParms; import com.gingersoft.gsa.cloud.pay.RequestParms;
......
...@@ -49,7 +49,6 @@ public class RefundActionImpl extends IHywebAction<RefundRespose> { ...@@ -49,7 +49,6 @@ public class RefundActionImpl extends IHywebAction<RefundRespose> {
@Override @Override
public void onPosActionBefore() { public void onPosActionBefore() {
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(mGetTxnIdRequest)); RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(mGetTxnIdRequest));
String json = GsonUtils.GsonString(mGetTxnIdRequest); String json = GsonUtils.GsonString(mGetTxnIdRequest);
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
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