Commit 24b35f43 by Wyh

1、修復首頁權限問題

parent 2588c6c2
......@@ -4,6 +4,7 @@ buildscript {
ext.kotlin_version = '1.4.21'
repositories {
maven { url "http://lib.gcssloop.com/repository/gcssloop-central/" }
maven { url 'https://maven.google.com' }
// maven { url 'https://maven.aliyun.com/repository/gradle-plugin' } //gradle 国内镜像仓
maven { url 'https://maven.aliyun.com/repository/google' } //google 国内镜像仓
......
ext.alwaysLib = true //虽然apply了cc-settings-2.gradle,但一直作为library编译,否则别的组件依赖此module时会报错
apply from: rootProject.file('cc-settings.gradle')
apply plugin: 'com.jakewharton.butterknife'
......
apply from: rootProject.file('cc-settings.gradle')
ext.alwaysLib = true //虽然apply了cc-settings-2.gradle,但一直作为library编译,否则别的组件依赖此module时会报错
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.jakewharton.butterknife'
......
......@@ -42,7 +42,8 @@ public class ComponentMain implements IComponent {
new FModule("main/manager/discout", R.drawable.ic_discount_management, R.drawable.ic_discount_management_close),
new FModule("main/manager/soldoutCtr", R.drawable.ic_sell_off_manger, R.drawable.ic_sell_off_manger),
new FModule("main/manager/qrCode", R.drawable.ic_qr_code, R.drawable.ic_qr_code),
new FModule("main/manager/purchase", R.drawable.ic_purchase, R.drawable.ic_purchase)
new FModule("main/manager/purchase", R.drawable.ic_purchase, R.drawable.ic_purchase),
new FModule("main/manager/configurationList", R.drawable.ic_purchase, R.drawable.ic_purchase)
};
/**
* 首頁- 員工管理
......
......@@ -37,7 +37,6 @@ import com.gingersoft.gsa.cloud.common.function.jump.ActivityJumpBean;
import com.gingersoft.gsa.cloud.common.function.jump.ActivityJumpStrategy;
import com.gingersoft.gsa.cloud.common.logan.LoganManager;
import com.gingersoft.gsa.cloud.common.service.IServiceManager;
import com.gingersoft.gsa.cloud.common.utils.AppDevices;
import com.gingersoft.gsa.cloud.common.utils.JsonUtils;
import com.gingersoft.gsa.cloud.common.utils.encryption.Aes;
import com.gingersoft.gsa.cloud.common.utils.toast.ToastUtils;
......@@ -51,7 +50,6 @@ import com.gingersoft.gsa.cloud.main.di.component.DaggerNewMainComponent;
import com.gingersoft.gsa.cloud.main.mvp.contract.NewMainContract;
import com.gingersoft.gsa.cloud.main.mvp.model.bean.MainSideMenuBean;
import com.gingersoft.gsa.cloud.main.mvp.presenter.NewMainPresenter;
import com.gingersoft.gsa.cloud.main.mvp.ui.activity.menu.FoodMenuManageActivity;
import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.MainOrderingAdapter;
import com.gingersoft.gsa.cloud.main.mvp.ui.adapter.MainSideMenuAdapter;
import com.gingersoft.gsa.cloud.main.mvp.ui.fragment.MainTopFragment;
......@@ -66,6 +64,8 @@ import com.lihang.ShadowLayout;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.tbruyelle.rxpermissions2.RxPermissions;
import org.jetbrains.annotations.NotNull;
import java.util.ArrayList;
import java.util.List;
......@@ -201,7 +201,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
protected void onResume() {
super.onResume();
initService();
initFuncationData();
initFunctionData();
if (HttpsConstans.getIsFormal() != HttpsConstans.FORMAL) {
tvVersionName.setText("v_" + DeviceUtils.getVersionName(this) + "\u3000Beta");
} else {
......@@ -273,73 +273,65 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
refresh.finishRefresh();
}
private void initFuncationData() {
List<Function> functions = new ArrayList<>();
private void initFunctionData() {
//點餐
List<Function> orderFunctions = FunctionManager.getDefault().getFunctionByResModule(this, ComponentMain.main.class, ComponentMain.main.order, "order");
if (orderFunctions.size() > 0) {
functions.addAll(orderFunctions);
sl_order.setVisibility(View.VISIBLE);
initFunction(orderFunctions, sl_order, mTvFunctionNames[0], R.layout.main_home_funcation_item, rvOrdering, 4);
} else {
sl_order.setVisibility(View.INVISIBLE);
sl_order.setVisibility(View.GONE);
}
List<Function> managerFuncations = FunctionManager.getDefault().getFunctionByResModule(this, ComponentMain.main.class, ComponentMain.main.manager, "manager");
managerFuncations.add(new Function(171, 163, 5, "配置列表", R.drawable.ic_expand_list, 0));
if (managerFuncations.size() > 0) {
functions.addAll(managerFuncations);
ll_management.setVisibility(View.VISIBLE);
//管理
List<Function> managerFunctions = FunctionManager.getDefault().getFunctionByResModule(this, ComponentMain.main.class, ComponentMain.main.manager, "manager");
if (managerFunctions.size() > 0) {
initFunction(managerFunctions, ll_management, mTvFunctionNames[1], R.layout.main_home_management_funcation_item, rvManagement, 5);
} else {
ll_management.setVisibility(View.GONE);
}
//員工管理
List<Function> employeeFuncations = FunctionManager.getDefault().getFunctionByResModule(this, ComponentMain.main.class, ComponentMain.main.employee, "employee");
if (employeeFuncations.size() > 0) {
functions.addAll(employeeFuncations);
ll_staff_management.setVisibility(View.VISIBLE);
initFunction(orderFunctions, ll_staff_management, mTvFunctionNames[2], R.layout.main_home_management_funcation_item, rvStaffManagement, 4);
} else {
ll_staff_management.setVisibility(View.GONE);
}
}
//將功能列表數據分組
SparseArray<String> parents = new SparseArray<>(3);
SparseArray<List<Function>> funMap = new SparseArray<>();
for (Function function : functions) {
if (function.getParentId() == 0) {
//父模塊
parents.put(function.getId(), function.getResName());
} else {
if (funMap.get(function.getParentId()) == null) {
List<Function> functionList = new ArrayList<>();
functionList.add(function);
funMap.put(function.getParentId(), functionList);
} else {
funMap.get(function.getParentId()).add(function);
}
private void initFunction(List<Function> functions, View parentLayout, TextView title, int itemLayoutId, RecyclerView rvItem, int itemRowSize) {
Function parentFunction = null;
for (Function orderFunction : functions) {
if (orderFunction.getParentId() == 0) {
parentFunction = orderFunction;
break;
}
}
if (orderFunctions.size() > 0) {
initAdapter(parents, funMap, 0, R.layout.main_home_funcation_item, rvOrdering, 4);
}
if (managerFuncations.size() > 0) {
initAdapter(parents, funMap, 1, R.layout.main_home_management_funcation_item, rvManagement, 5);
}
if (employeeFuncations.size() > 0) {
initAdapter(parents, funMap, 2, R.layout.main_home_management_funcation_item, rvStaffManagement, 4);
if (parentFunction != null) {
parentLayout.setVisibility(View.VISIBLE);
title.setText(parentFunction.getResName());
functions.remove(parentFunction);
MainOrderingAdapter adapter = new MainOrderingAdapter(itemLayoutId, functions);
rvItem.setLayoutManager(getLayoutManager(itemRowSize));
adapter.setOnItemClickListener((adapter1, view, position) -> functionClick(adapter.getItem(position).getResName(), adapter.getItem(position).getStatus()));
rvItem.setAdapter(adapter);
}
}
private void initAdapter(SparseArray<String> parents, SparseArray<List<Function>> funMap, int i, int p, RecyclerView rvOrdering, int i2) {
@NotNull
private GridLayoutManager getLayoutManager(int i) {
return new GridLayoutManager(mContext, i) {
@Override
public boolean canScrollVertically() {
return false;
}
};
}
private void initAdapter(SparseArray<String> parents, SparseArray<List<Function>> funMap, int i, int itemLayoutId, RecyclerView rvOrdering, int itemRowCount) {
if (funMap.size() > i && parents.size() > i) {
mTvFunctionNames[i].setText(parents.get(parents.keyAt(i)));
List<Function> mOrderingMeals = funMap.get(parents.keyAt(i));
MainOrderingAdapter adapter = new MainOrderingAdapter(p, mOrderingMeals);
rvOrdering.setLayoutManager(new GridLayoutManager(mContext, i2) {
@Override
public boolean canScrollVertically() {
return false;
}
});
MainOrderingAdapter adapter = new MainOrderingAdapter(itemLayoutId, mOrderingMeals);
rvOrdering.setLayoutManager(getLayoutManager(itemRowCount));
adapter.setOnItemClickListener((adapter1, view, position) -> {
functionClick(mOrderingMeals.get(position).getResName(), mOrderingMeals.get(position).getStatus());
});
......@@ -419,15 +411,10 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
@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
......@@ -476,7 +463,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == ResultConstans.DOWNLOAD_PAGE_BACK) {
initFuncationData();
initFunctionData();
}
}
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
......@@ -70,6 +71,51 @@
android:name="com.gingersoft.gsa.cloud.main.mvp.ui.fragment.MainTopFragment"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<!-- 點餐模塊-->
<com.lihang.ShadowLayout
android:id="@+id/layout_ordering_meals"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/main_top_fragment"
android:layout_marginLeft="@dimen/dp_10"
android:layout_marginRight="@dimen/dp_10"
android:visibility="gone"
app:hl_cornerRadius="@dimen/dp_4"
app:hl_dy="@dimen/main_shadow_dy"
app:hl_shadowBackColor="@color/white"
app:hl_shadowColor="@color/shadow_color"
app:hl_shadowLimit="@dimen/main_shadow_limit">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="@dimen/dp_15"
android:paddingBottom="@dimen/dp_20">
<TextView
android:id="@+id/tv_function_name1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_22"
android:textColor="#181818"
android:textSize="@dimen/dp_17" />
<View
android:layout_width="match_parent"
android:layout_height="@dimen/dp_1"
android:layout_marginTop="@dimen/dp_11"
android:background="#F0F0F0" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_ordering_meals"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/main_recyclerview_marginLeft"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginRight="@dimen/main_recyclerview_marginRight" />
</LinearLayout>
</com.lihang.ShadowLayout>
<com.lihang.ShadowLayout
android:layout_width="match_parent"
......@@ -101,7 +147,8 @@
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_15"
android:textColor="#181818"
android:textSize="@dimen/dp_14" />
android:textSize="@dimen/dp_14"
tools:text="管理" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_management"
......@@ -133,7 +180,8 @@
android:layout_marginTop="@dimen/dp_20"
android:textColor="#181818"
android:textSize="@dimen/dp_14"
android:visibility="visible" />
android:visibility="visible"
tools:text="員工管理" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_staff_management"
......@@ -146,51 +194,7 @@
</LinearLayout>
</LinearLayout>
</com.lihang.ShadowLayout>
<!-- 點餐模塊-->
<com.lihang.ShadowLayout
android:id="@+id/layout_ordering_meals"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/main_top_fragment"
android:layout_marginLeft="@dimen/dp_10"
android:layout_marginRight="@dimen/dp_10"
android:visibility="visible"
app:hl_cornerRadius="@dimen/dp_4"
app:hl_dy="@dimen/main_shadow_dy"
app:hl_shadowBackColor="@color/white"
app:hl_shadowColor="@color/shadow_color"
app:hl_shadowLimit="@dimen/main_shadow_limit">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="@dimen/dp_15"
android:paddingBottom="@dimen/dp_20">
<TextView
android:id="@+id/tv_function_name1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_22"
android:textColor="#181818"
android:textSize="@dimen/dp_17" />
<View
android:layout_width="match_parent"
android:layout_height="@dimen/dp_1"
android:layout_marginTop="@dimen/dp_11"
android:background="#F0F0F0" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_ordering_meals"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/main_recyclerview_marginLeft"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginRight="@dimen/main_recyclerview_marginRight" />
</LinearLayout>
</com.lihang.ShadowLayout>
</RelativeLayout>
</com.gingersoft.gsa.cloud.ui.view.MyScrollView>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
......
ext.alwaysLib = true //虽然apply了cc-settings-2.gradle,但一直作为library编译,否则别的组件依赖此module时会报错
apply from: rootProject.file("cc-settings.gradle")
apply plugin: 'com.jakewharton.butterknife'
android {
......
ext.alwaysLib = true //虽然apply了cc-settings-2.gradle,但一直作为library编译,否则别的组件依赖此module时会报错
apply from: rootProject.file('cc-settings.gradle')
apply plugin: 'com.jakewharton.butterknife'
......
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