package com.example.bpa.view.from;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;

import com.example.bpa.LoginActivity;
import com.example.bpa.R;
import com.example.bpa.config.ConfigName;
import com.example.bpa.db.QueryDB;
import com.example.bpa.db.mode.BPA_MATERIAL;
import com.example.bpa.db.mode.BPA_USER;
import com.example.bpa.helper.T;
import com.example.bpa.view.adapter.wl_adapter;
import com.example.bpa.view.inteface.MyClickListener;

import java.util.ArrayList;

/**
 * 物料管理
 */
public class wlgl_activity extends AppCompatActivity implements View.OnClickListener, MyClickListener {

    //region 变量
    /**
     * 返回按钮
     */
    ImageView gongneng_fanhui;
    /**
     * 标题设置
     */
    TextView gongneng_title;
    //edittext buttonadd ListView datatab
    //endregion
    /**
     * 输入框
     */
    TextView edittext;
    /**
     * 增加按钮
     */
    Button buttonadd;
    /**
     * 表格显示
     */
    ListView datatab;
    /**
     * 物料数据
     */
    ArrayList<BPA_MATERIAL> bpa_materials=new ArrayList<>();
    //region 操作变量

    //endregion

    //region 私有函数
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_wlgl);
        Init();
        initEvents();
    }
    //endregion

    //region 公共函数

    /**
     * 初始化
     */
    private void Init(){
        gongneng_fanhui = this.findViewById(R.id.gongneng_fanhui);
        gongneng_title = this.findViewById(R.id.gongneng_title);
        edittext= this.findViewById(R.id.edittext);
        buttonadd= this.findViewById(R.id.buttonadd);
        datatab= this.findViewById(R.id.datatab);
        //通过Activity.getIntent()获取当前页面接收到的Intent。 getXxxExtra方法获取Intent传递过来的数据
        String msg=getIntent().getStringExtra("data");
        gongneng_title.setText(msg);
        Initdata();
    }

    /**
     * 初始化按钮事件
     */
    private void initEvents() {
        gongneng_fanhui.setOnClickListener(this);
        buttonadd.setOnClickListener(this);
    }

    /**
     * 初始化数据加载
     */
    public void Initdata()
    {
        try{
            bpa_materials= QueryDB.GetMaterialALL();
            wl_adapter adapter = new wl_adapter(wlgl_activity.this, R.layout.wl_item, bpa_materials,this);
            datatab.setAdapter(adapter);
        }catch(Exception e){

        }
    }
    //endregion

    //region 点击事件
    /**
     * 本页面点击事件监听
     *
     * @param v
     */
    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.gongneng_fanhui://返回按钮
                this.finish();
                break;
            case R.id.buttonadd://增加按钮点击
                String name= edittext.getText().toString();
                if(name.isEmpty()){
                    T.show(this, "物料名称不能为空!");
                    return;
                }
                if(QueryDB.GetMaterialIs(name)){
                    T.show(this, "物料名称重复,请重新输入后重试!");
                    return;
                }
                BPA_MATERIAL bpa_material=new BPA_MATERIAL();
                bpa_material.name=name;
                bpa_material.imgUrl="";
                bpa_material.deviceID= ConfigName.getInstance().DeviceId;
                bpa_material.userID=ConfigName.getInstance().user.userID;
                QueryDB.AddMaterial(bpa_material);
                T.show(this, "新增成功!");
                Initdata();
                break;
        }
    }

    /**
     * 接口方法，响应ListView按钮点击事件
     */
    @Override
    public void clickListener(View v,Object data) {
        switch (v.getId())
        {
            case R.id.button_item://删除按钮
                QueryDB.DeleteMaterial((BPA_MATERIAL)data);
                Initdata();
                break;
        }
    }
    //endregion
}