package com.bonait.bnframework.modules.home.fragment.mode;

import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;

import androidx.annotation.Nullable;

import com.bonait.bnframework.R;
import com.bonait.bnframework.business.ExecuteTheRecipe;
import com.bonait.bnframework.common.constant.ConfigName;
import com.bonait.bnframework.common.helper.I.MyClickListener;
import com.bonait.bnframework.common.utils.ToastUtils;

import java.util.ArrayList;
import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;

public class newhuoli_control extends LinearLayout {
    @BindView(R.id.close_out)
    LinearLayout close_out;
    @BindView(R.id.colse)
    ImageView colse;
    @BindView(R.id.hl1)
    ImageView hl1;
    @BindView(R.id.hl2)
    ImageView hl2;
    @BindView(R.id.hl3)
    ImageView hl3;
    @BindView(R.id.hl4)
    ImageView hl4;
    @BindView(R.id.hl5)
    ImageView hl5;
    @BindView(R.id.hl6)
    ImageView hl6;
    @BindView(R.id.hl7)
    ImageView hl7;
    @BindView(R.id.hl8)
    ImageView hl8;

    List<ImageView> ImageViews=new ArrayList<>();
    /**
     * 当前状态
     */
    public boolean Status=false;
    /**
     * 当前火力级别
     */
    public int level=0;
    /**
     * 点击事件
     */
    public MyClickListener mListener=null;
    private View root;

    public newhuoli_control(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
        root= LayoutInflater.from(context).inflate(R.layout.item_huolikongzhi1, this);
        ButterKnife.bind(this, root);
        Init();
    }

    boolean isClick=true;
    public void Init()
    {
        if(this.getTag()!=null)
        {
            isClick=false;
        }

        ImageViews.add(hl1);
        ImageViews.add(hl2);
        ImageViews.add(hl3);
        ImageViews.add(hl4);
        ImageViews.add(hl5);
        ImageViews.add(hl6);
        ImageViews.add(hl7);
        ImageViews.add(hl8);

//        ImageViews.get(0).setVisibility(View.GONE);
//        ImageViews.get(1).setVisibility(View.GONE);
//        ImageViews.get(2).setVisibility(View.GONE);


        if(ConfigName.getInstance().HeatingGear.get(ConfigName.getInstance().HuoLi)!=null)
        {
            int k= ConfigName.getInstance().HeatingGear.get(ConfigName.getInstance().HuoLi);
            for (int i = 0; i<ImageViews.size(); i++)
            {
                if((i)>(k-1))
                {
                    ImageViews.get(i).setVisibility(View.GONE);
                }
            }
        }

        //设置 关闭
        SetLevel(0);
    }

    @OnClick({R.id.colse,
            R.id.hl1,R.id.hl2,R.id.hl3,R.id.hl4,R.id.hl5,R.id.hl6,R.id.hl7,R.id.hl8})
    public void onViewClicked(View view) {
//        if(isClick==false)
//        {
//            return;
//        }
        if (view.getId()!=R.id.colse)
        {
            Object OBJ = ExecuteTheRecipe.getListingValue("搅拌");
            if (!(OBJ != null && (boolean) OBJ)) {
                ToastUtils.warning("请先打开搅拌！");
                return;
            }
        }
        switch (view.getId()) {
            case R.id.colse://选择菜谱按钮点击
                if(Status)
                {
                    SetLevel(0);
                }else
                {
                    SetLevel(1);
                }
                break;
            case R.id.hl1:
                SetLevel(1);
                break;
            case R.id.hl2:
                SetLevel(2);
                break;
            case R.id.hl3:
                SetLevel(3);
                break;
            case R.id.hl4:
                SetLevel(4);
                break;
            case R.id.hl5:
                SetLevel(5);
                break;
            case R.id.hl6:
                SetLevel(6);
                break;
            case R.id.hl7:
                SetLevel(7);
                break;
            case R.id.hl8:
                SetLevel(8);
                break;
        }

        if(mListener!=null)
        {
            mListener.clickListener(root,level);
        }
    }

    /**
     * 设置级别
     * @param value
     */
    public void SetLevel(int value)
    {
        level=value;
        colse.setVisibility(View.VISIBLE);
        close_out.setVisibility(View.VISIBLE);
        if(value==1)
        {
            Status=true;

            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl2);
            hl3.setImageResource(R.mipmap.hl2);
            hl4.setImageResource(R.mipmap.hl2);
            hl5.setImageResource(R.mipmap.hl2);
            hl6.setImageResource(R.mipmap.hl2);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }else if(value==2)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl2);
            hl4.setImageResource(R.mipmap.hl2);
            hl5.setImageResource(R.mipmap.hl2);
            hl6.setImageResource(R.mipmap.hl2);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }else if(value==3)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl1);
            hl4.setImageResource(R.mipmap.hl2);
            hl5.setImageResource(R.mipmap.hl2);
            hl6.setImageResource(R.mipmap.hl2);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }else if(value==4)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl1);
            hl4.setImageResource(R.mipmap.hl1);
            hl5.setImageResource(R.mipmap.hl2);
            hl6.setImageResource(R.mipmap.hl2);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }else if(value==5)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl1);
            hl4.setImageResource(R.mipmap.hl1);
            hl5.setImageResource(R.mipmap.hl1);
            hl6.setImageResource(R.mipmap.hl2);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }
        else if(value==6)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl1);
            hl4.setImageResource(R.mipmap.hl1);
            hl5.setImageResource(R.mipmap.hl1);
            hl6.setImageResource(R.mipmap.hl1);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }
        else if(value==7)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl1);
            hl4.setImageResource(R.mipmap.hl1);
            hl5.setImageResource(R.mipmap.hl1);
            hl6.setImageResource(R.mipmap.hl1);
            hl7.setImageResource(R.mipmap.hl1);
            hl8.setImageResource(R.mipmap.hl2);
        }
        else if(value==8)
        {
            Status=true;
            colse.setImageResource(R.mipmap.huoli_open);
            hl1.setImageResource(R.mipmap.hl1);
            hl2.setImageResource(R.mipmap.hl1);
            hl3.setImageResource(R.mipmap.hl1);
            hl4.setImageResource(R.mipmap.hl1);
            hl5.setImageResource(R.mipmap.hl1);
            hl6.setImageResource(R.mipmap.hl1);
            hl7.setImageResource(R.mipmap.hl1);
            hl8.setImageResource(R.mipmap.hl1);
        }else
        {
            Status=false;
            colse.setVisibility(View.INVISIBLE);
            close_out.setVisibility(View.INVISIBLE);
            colse.setImageResource(R.mipmap.huoli_close);
            hl1.setImageResource(R.mipmap.hl2);
            hl2.setImageResource(R.mipmap.hl2);
            hl3.setImageResource(R.mipmap.hl2);
            hl4.setImageResource(R.mipmap.hl2);
            hl5.setImageResource(R.mipmap.hl2);
            hl6.setImageResource(R.mipmap.hl2);
            hl7.setImageResource(R.mipmap.hl2);
            hl8.setImageResource(R.mipmap.hl2);
        }
    }
}
