import React,{ useState,useEffect} from 'react';

import {getCheckPointAndCheckItemPage,delCheckPointAndCheckItemPage} from "@/api/checkPointManage.js";

import {getDeptClassDeptPage} from "@/api/groupManage.js";

import EditableFormTable from './table';

import { Input} from 'antd';
// import GroupIdentity from '../groupIdentity/groupIdentity';

const { Search } = Input;

const GroupIdentityAndGroup = () => {

  let [arr,setarr] = useState([]);
  let [pages,setpages] = useState({});
  let [ifUpdateList,setifUpdateList]=useState(false);
  let [ifRender,setifRender] = useState(false);
  const [searchKey,setsearchKey] = useState('');
 
  const columns = [
    {
      title: 'id',
      dataIndex: 'id',
      key: 'id',
      width:'10%',
      render: text => <a>{text}</a>,
    },
    {
      title: '查核要点ID',
      dataIndex: 'checkPointId',
      key: 'checkPointId',
      editable: true,
    },
    {
        title: '查核要点名',
        dataIndex: 'checkPointName',
        key: 'checkPointName',
        editable: true,
    },
    {
        title: '查核项ID',
        dataIndex: 'checkItemId',
        key: 'checkItemId',
        editable: true,
    },
    {
        title: '查核项名',
        dataIndex: 'checkItemName',
        key: 'checkItemName',
        editable: true,
    }
  ];



  const getData = async (pageObj)=>{
    let data = await getCheckPointAndCheckItemPage(pageObj);
    
    const renderData = data.data.data.list.map((item,index)=>{
          return {
              ...item,
              key:item['id'],
            //   editable: true,
          }
    })
    setarr(renderData);
    setpages({
        'currPage':data.data.data.currPage,
        'totalPage':data.data.data.totalPage,
        'totalCount':data.data.data.totalCount,
    });
    setifRender(false);
    setifRender(true);

  }

  const deleteCallback = (record)=>{
    // console.log('删除');
    delCheckPointAndCheckItemPage([record.id]).then(res=>{
        if(res.data.msg=="success"){
                getData();
        }
    })
  }


  const paginationCallback = (obj)=>{
    const {currPage} = obj;
    getData({page:currPage,pageSize:10,keyword:searchKey});
  }


  const onSearch = (searchKey)=>{
    //  console.log({searchKey});
    setsearchKey(searchKey);
     getData({
       'keyword':searchKey?searchKey:''
     });
  }
  
  useEffect(()=>{
    getData();
  },[]);

  return ( 
    <div className="app-container">
          <h1>查核要点与查核项</h1>
          <div style={{display:'flex',flexDirection:'row',marginBottom:16}}>
          {/* <Button onClick={handleAdd} type="primary" style={{ marginBottom: 16,marginRight:20 }}>
             新增查核项
          </Button> */}
          <Search style={{ width: 230 }} allowClear placeholder="请输入查核要点/查核项"  onSearch={onSearch} enterButton />
          </div>
          {
             ifRender&& <EditableFormTable columns={columns}  pages={pages} paginationCallback={paginationCallback}  data={arr} deleteCallback={deleteCallback} ifUpdateList={ifUpdateList}/>
          }
    </div>
  );
}

 
export default GroupIdentityAndGroup;