MainActivity.java 15.5 KB
package com.huaheng.mmsrf;

import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;

import com.huaheng.mmsrf.activity.car.ScanningCarkListActivity;
import com.huaheng.mmsrf.activity.punch.PunchActivity;
import com.huaheng.mmsrf.activity.punch.ScanActivity;
import com.huaheng.mmsrf.activity.punch.ScanCodeActivity;
import com.huaheng.mmsrf.activity.receipt.InBoxListActivity;
import com.huaheng.mmsrf.activity.receipt.ReceiptListActivity;
import com.huaheng.mmsrf.activity.receipt.ScanBoxListActivity;
import com.huaheng.mmsrf.activity.receipt.WebActivity;
import com.huaheng.mmsrf.activity.scheduler.CompleteSchedulerDetailActivity;
import com.huaheng.mmsrf.activity.scheduler.SchedulerHeaderActivity;

import com.huaheng.mmsrf.activity.scheduler.SchedulerSearchActivity;
import com.huaheng.mmsrf.activity.work.ManualWorkListActivity;
import com.huaheng.mmsrf.activity.work.NewsOrderActivity;
import com.huaheng.mmsrf.activity.work.PrintlWorkListActivity;
import com.huaheng.mmsrf.activity.work.WorkActivity;
import com.huaheng.mmsrf.activity.work.WorkApprovedActivity;

import com.huaheng.mmsrf.adapter.RecyclerViewAdapter;
import com.huaheng.mmsrf.bean.Constant;
import com.huaheng.mmsrf.util.WMSUtils;

import java.util.ArrayList;

import butterknife.BindView;
import butterknife.ButterKnife;


/**
 * Created by youjie on 2020/12/10
 */
public class MainActivity extends com.huaheng.mmsrf.activity.model.CommonActivity {


    @BindView(R.id.receiptRecycleView)
    RecyclerView receiptRecycleView;
    @BindView(R.id.shipmentRecycleView)
    RecyclerView shipmentRecycleView;
    @BindView(R.id.inventoryRecycleView)
    RecyclerView inventoryRecycleView;
    @BindView(R.id.otherView)
    RecyclerView otherView;
//    @BindView(R.id.basicRecycleView)
//    RecyclerView basicRecycleView;
//    @BindView(R.id.taskRecycleView)
//    RecyclerView taskRecycleView;

    private GridLayoutManager receiptLayoutManager, shipmentLayoutManager, tasktLayoutManager, inventoryLayoutManager, basicLayoutManager,otherLayoutManger;
    private int spanCount = 4;
    private com.huaheng.mmsrf.adapter.RecyclerViewAdapter receiptAdapter, shipmentAdapter, taskAdapter, inventoryAdapter, basicAdapter,otherAdapter;
    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> receiptBeans, shipmentBeans, taskBeans, inventoryBeans, basicBeans,otherBeans;
    private String roleCode;
    private String printFlag;
    private String orgCode;

    @Override
    protected void initActivityOnCreate(Bundle savedInstanceState) {
        super.initActivityOnCreate(savedInstanceState);
        setContentView(R.layout.activity_main3);
        ButterKnife.bind(this);
        setTitle(mContext.getString(R.string.main_page));
        setBackImage(View.GONE);
        initView();
    }


    private void initView() {
        roleCode =  WMSUtils.getData(Constant.ROLE_CODE);
        printFlag =  WMSUtils.getData(Constant.PRINT_FLAG);
        orgCode =  WMSUtils.getData(Constant.ORG_CODE);
        receiptLayoutManager = new GridLayoutManager(mContext, spanCount);
        shipmentLayoutManager = new GridLayoutManager(mContext, spanCount);
        inventoryLayoutManager = new GridLayoutManager(mContext, spanCount);
        otherLayoutManger = new GridLayoutManager(mContext, spanCount);
//        basicLayoutManager = new GridLayoutManager(mContext, spanCount);
//        tasktLayoutManager = new GridLayoutManager(mContext, spanCount);
        receiptAdapter = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter(mContext, 1);
        shipmentAdapter = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter(mContext, 1);
        inventoryAdapter = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter(mContext, 1);
        otherAdapter = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter(mContext, 1);
        basicAdapter = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter(mContext, 1);
        taskAdapter = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter(mContext, 1);
        receiptRecycleView.setLayoutManager(receiptLayoutManager);
        receiptRecycleView.setAdapter(receiptAdapter);
        shipmentRecycleView.setLayoutManager(shipmentLayoutManager);
        shipmentRecycleView.setAdapter(shipmentAdapter);
        inventoryRecycleView.setLayoutManager(inventoryLayoutManager);
        inventoryRecycleView.setAdapter(inventoryAdapter);
        otherView.setLayoutManager(otherLayoutManger);
        otherView.setAdapter(otherAdapter);
//        basicRecycleView.setLayoutManager(basicLayoutManager);
//        basicRecycleView.setAdapter(basicAdapter);
//        taskRecycleView.setLayoutManager(tasktLayoutManager);
//        taskRecycleView.setAdapter(taskAdapter);
        receiptBeans = buildMenuBeans();
        shipmentBeans = buildShipmentMenuBeans();
        inventoryBeans = buildInventoryMenuBeans();
        otherBeans = buildOtherMenuBeans();
        basicBeans = buildBasicMenuBeans();
        taskBeans = buildTaskMenuBeans();
        if (receiptBeans != null) {
            receiptAdapter.setList(receiptBeans);
        }
        if (shipmentBeans != null) {
            shipmentAdapter.setList(shipmentBeans);
        }
        if (inventoryBeans != null) {
            inventoryAdapter.setList(inventoryBeans);
        }
        if (otherBeans != null) {
            otherAdapter.setList(otherBeans);
        }
//        if (basicBeans != null) {
//            basicAdapter.setList(basicBeans);
//        }
//        if (taskBeans != null) {
//            taskAdapter.setList(taskBeans);
//        }
        receiptAdapter.setOnItemClickListener(listener1);
        shipmentAdapter.setOnItemClickListener(listener2);
        inventoryAdapter.setOnItemClickListener(listener3);
        otherAdapter.setOnItemClickListener(listener_other);
//        taskAdapter.setOnItemClickListener(listener5);
//        basicAdapter.setOnItemClickListener(listener4);
    }

    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> buildMenuBeans() {
        ArrayList <com.huaheng.mmsrf.bean.MenuBean> menuBeans = new ArrayList <>();
        ArrayList <String> menuList = com.huaheng.mmsrf.util.MenuConstant.getMenuList(mContext);
        ArrayList <Drawable> drawableList = com.huaheng.mmsrf.util.MenuConstant.getMenuDrawable(mContext);
        com.huaheng.mmsrf.bean.MenuBean menuBean;
        for (int i = 0; i < menuList.size(); i++) {
            menuBean = new com.huaheng.mmsrf.bean.MenuBean(drawableList.get(i), menuList.get(i));
            menuBeans.add(menuBean);
        }
        return menuBeans;
    }

    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> buildShipmentMenuBeans() {
        ArrayList <com.huaheng.mmsrf.bean.MenuBean> menuBeans = new ArrayList <>();
        ArrayList <String> menuList = com.huaheng.mmsrf.util.MenuConstant.getShipmentMenuList(mContext, roleCode);
        ArrayList <Drawable> drawableList = com.huaheng.mmsrf.util.MenuConstant.getShipmentMenuDrawable(mContext);
        com.huaheng.mmsrf.bean.MenuBean menuBean;
        for (int i = 0; i < menuList.size(); i++) {
            menuBean = new com.huaheng.mmsrf.bean.MenuBean(drawableList.get(i), menuList.get(i));
            menuBeans.add(menuBean);
        }
        return menuBeans;
    }

    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> buildInventoryMenuBeans() {
        ArrayList <com.huaheng.mmsrf.bean.MenuBean> menuBeans = new ArrayList <>();
        ArrayList <String> menuList = com.huaheng.mmsrf.util.MenuConstant.getInventoryMenuList(mContext);
        ArrayList <Drawable> drawableList = com.huaheng.mmsrf.util.MenuConstant.getInventoryMenuDrawable(mContext);
        com.huaheng.mmsrf.bean.MenuBean menuBean;
        for (int i = 0; i < menuList.size(); i++) {
            menuBean = new com.huaheng.mmsrf.bean.MenuBean(drawableList.get(i), menuList.get(i));
            menuBeans.add(menuBean);
        }
        return menuBeans;
    }

    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> buildOtherMenuBeans() {
        ArrayList <com.huaheng.mmsrf.bean.MenuBean> menuBeans = new ArrayList <>();
        ArrayList <String> menuList = com.huaheng.mmsrf.util.MenuConstant.getOtherMenuList(mContext);
        ArrayList <Drawable> drawableList = com.huaheng.mmsrf.util.MenuConstant.getOtherMenuDrawable(mContext);
        com.huaheng.mmsrf.bean.MenuBean menuBean;
        for (int i = 0; i < menuList.size(); i++) {
            menuBean = new com.huaheng.mmsrf.bean.MenuBean(drawableList.get(i), menuList.get(i));
            menuBeans.add(menuBean);
        }
        return menuBeans;
    }

    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> buildBasicMenuBeans() {
        ArrayList <com.huaheng.mmsrf.bean.MenuBean> menuBeans = new ArrayList <>();
        ArrayList <String> menuList = com.huaheng.mmsrf.util.MenuConstant.getBasicMenuList(mContext);
        ArrayList <Drawable> drawableList = com.huaheng.mmsrf.util.MenuConstant.getBasicMenuDrawable(mContext);
        com.huaheng.mmsrf.bean.MenuBean menuBean;
        for (int i = 0; i < menuList.size(); i++) {
            menuBean = new com.huaheng.mmsrf.bean.MenuBean(drawableList.get(i), menuList.get(i));
            menuBeans.add(menuBean);
        }
        return menuBeans;
    }

    private ArrayList <com.huaheng.mmsrf.bean.MenuBean> buildTaskMenuBeans() {
        ArrayList <com.huaheng.mmsrf.bean.MenuBean> menuBeans = new ArrayList <>();
        ArrayList <String> menuList = com.huaheng.mmsrf.util.MenuConstant.getTaskMenuList(mContext);
        ArrayList <Drawable> drawableList = com.huaheng.mmsrf.util.MenuConstant.getTaskMenuDrawable(mContext);
        com.huaheng.mmsrf.bean.MenuBean menuBean;
        for (int i = 0; i < menuList.size(); i++) {
            menuBean = new com.huaheng.mmsrf.bean.MenuBean(drawableList.get(i), menuList.get(i));
            menuBeans.add(menuBean);
        }
        return menuBeans;
    }

    private com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener listener1 = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener() {
        @Override
        public void onItemClick(int position) {
            com.huaheng.mmsrf.bean.MenuBean bean = receiptBeans.get(position);
            String name = bean.getName();
            if (name.equals(mContext.getString(R.string.work_report))) {
              if (orgCode!=null&&orgCode.length()>5){
                  String code=orgCode.substring(0,6);
                  if ("A01A03".equals(code)){
                      WMSUtils.startActivity(mContext, SchedulerHeaderActivity.class);
                  }else{
                      WMSUtils.showShort("只有生产部才有报工权限");
                  }
              } else{
                  WMSUtils.showShort("只有生产部才有报工权限");
              }
            }if(name.equals(mContext.getString(R.string.work_report_manual))) {
              WMSUtils.startActivity(mContext, ManualWorkListActivity.class);
            }if(name.equals(mContext.getString(R.string.work_report_scan))) {
                WMSUtils.startActivity(mContext, CompleteSchedulerDetailActivity.class);
            } if (name.equals(mContext.getString(R.string.work_search))) {
                WMSUtils.startActivity(mContext, SchedulerSearchActivity.class);
            }

        }
    };

    private com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener listener2 = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener() {
        @Override
        public void onItemClick(int position) {
            com.huaheng.mmsrf.bean.MenuBean bean = shipmentBeans.get(position);
            String name = bean.getName();
            if (name.equals(mContext.getString(R.string.time_report))) {
                WMSUtils.startActivity(mContext, WorkActivity.class);
            } else if (name.equals(mContext.getString(R.string.time_verify))) {
                if(!"normal".equals(roleCode)) {
                    WMSUtils.startActivity(mContext, WorkApprovedActivity.class);
                } else {
                    WMSUtils.showShort("用户没有权限");
                }
            }
//            else if (name.equals(mContext.getString(R.string.part_print))) {
//                WMSUtils.startActivity(mContext, PrintlWorkListActivity.class);
//            }
        }
    };

    private RecyclerViewAdapter.OnRecyclerViewItemClickListener listener3 = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener() {
        @Override
        public void onItemClick(int position) {
            com.huaheng.mmsrf.bean.MenuBean bean = inventoryBeans.get(position);
            String name = bean.getName();
            if (name.equals(mContext.getString(R.string.scan_code))) {
                WMSUtils.startActivity(mContext, ScanCodeActivity.class);
            }
            if (name.equals(mContext.getString(R.string.setting))) {
                WMSUtils.startActivity(mContext, SettingsActivity.class);
            }
            if (name.equals(mContext.getString(R.string.notification))) {
                WMSUtils.startActivity(mContext, NewsOrderActivity.class);
            }
            if (name.equals(mContext.getString(R.string.punch))) {
                WMSUtils.startActivity(mContext, ScanActivity.class);
            }
        }
    };

    private RecyclerViewAdapter.OnRecyclerViewItemClickListener listener_other = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener() {
        @Override
        public void onItemClick(int position) {
            com.huaheng.mmsrf.bean.MenuBean bean = otherBeans.get(position);
            String name = bean.getName();
            if (name.equals(mContext.getString(R.string.part_print))) {
                if("1".equals(printFlag)) {
                    WMSUtils.startActivity(mContext, PrintlWorkListActivity.class);
                }else{
                    WMSUtils.showShort("用户没有权限");
                }
            }else if(name.equals(mContext.getString(R.string.side_receipt))) {
                WMSUtils.startActivity(mContext, ReceiptListActivity.class);
            }else if(name.equals(mContext.getString(R.string.scanning_car))) {
                //WMSUtils.startActivity(mContext, ScanningCarkListActivity.class);
                WMSUtils.startActivity(mContext, InBoxListActivity.class);
            }else if(name.equals(mContext.getString(R.string.scanning_car_list))) {
                //WMSUtils.startActivity(mContext, ScanningCarkListActivity.class);
                WMSUtils.startActivity(mContext, ScanBoxListActivity.class);
            }

        }
    };

    private com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener listener4 = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener() {
        @Override
        public void onItemClick(int position) {
            com.huaheng.mmsrf.bean.MenuBean bean = basicBeans.get(position);
            String name = bean.getName();
           if (name.equals(mContext.getString(R.string.setting))) {
                com.huaheng.mmsrf.util.WMSUtils.startActivity(mContext, com.huaheng.mmsrf.SettingsActivity.class);
           }

        }
    };

    private com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener listener5 = new com.huaheng.mmsrf.adapter.RecyclerViewAdapter.OnRecyclerViewItemClickListener() {
        @Override
        public void onItemClick(int position) {
            com.huaheng.mmsrf.bean.MenuBean bean = taskBeans.get(position);
            String name = bean.getName();
            if (name.equals(mContext.getString(R.string.task_manager))) {

            }
        }
    };


}