<template>
    <div class="flex-container">
        <!-- 查询区域 -->
        <div class="table-page-search-wrapper">
            <!-- 搜索区域 -->
            <a-form layout="inline">
                <a-row :gutter="24">
                    <a-col :md="4" :sm="8">
                        <a-form-item  label="手机号：">
                            <a-input  placeholder="手机号" v-model="queryParam.phone"></a-input>
                        </a-form-item>
                    </a-col>

                    <span class="table-page-search-submitButtons" style="float: left; overflow: hidden;">
                        <a-col :md="6" :sm="24">
                            <a-button @click="search()" type="primary">查询</a-button>
                             <a-divider type="vertical"/>
                            <a-button @click="add()" type="primary">添加</a-button>
                            <a-dropdown>
                            <a-menu slot="overlay" @click="handleMenuClick">
                                <a-menu-item key="1" @click="handleSubmit1"><a-icon type="arrow-up"/>手机号码</a-menu-item>
                            </a-menu>
                            <a-button style="margin-left: 8px">导入<a-icon type="down"/></a-button>
                        </a-dropdown>

            <a-modal  
            :visible="modifyvisible2"  
            @cancel="createfunctionCancel"  
            html-type="submit"
             @ok="importfunctionOk" >
            <import-btn :url="importUrl" :responseFun="doPush">
                <a-tooltip placement="topLeft" title="导入文件" arrowPointAtCenter>
                    <a-row :gutter="24">
                        <a-col :md="24" :sm="12">
                            <p>
                                选择文件：
                                <a-button type="primary">选择文件</a-button>
                            </p>
                        </a-col>
                    </a-row>
                </a-tooltip>
            </import-btn>
            </a-modal>

                        </a-col>
                    </span>
                </a-row>
            </a-form>
           </div>

        <!--列表-->
        <s-table  :locale="emptyText" :columns="columns" :data="rowdata" bordered ref="table" size="small" class="flex-filling">
            <template slot="operation" slot-scope="text,record">
                    <a-popconfirm title="是否要删除此行？" @confirm="deleteActivity(record.id)">
                        <a>删除</a>
                    </a-popconfirm>
<!--                <a-divider type="vertical"/>-->
            </template>
        </s-table>

        <!--添加----弹框-->
        <a-modal :title="titleName" :visible="modifyvisible"  @ok="createfunctionOk" @cancel="createfunctionCancel" html-type="submit" width="840px">
            <a-form :form="Formtable">
                <a-form-item :labelCol="{span: 6}" :wrapperCol="{span: 8, offset: 1}" label="手机号">
                    <a-input  placeholder="手机号" v-model="modifyForm.phone" v-decorator="[ 'sort', {rules: [{ required: true, type:'number', message: '手机号！' ,whitespace:true,transform:(value)=> {return Number(value)}  }]} ]"></a-input>
                </a-form-item>
            </a-form>
        </a-modal>
    </div>
</template>

<script>
    import STable from '@/components/table';
    import {cloneObject,exportFile} from '@/utils/util';
    import {
      rhPhone,
      addData,
      deleteData,
    } from "../../../api/school-center/broadbandList/rhPhoneAPI";
       import ImportBtn from "../../../components/sysmanage/ImportBtn";
    export default {
        name: "RhPhone",
        components: {
            STable,
            ImportBtn,
        },
        data: function () {
            return {
                emptyText: {emptyText: '暂无数据'},
                previewVisible: false,
                previewImage: '',
                fileList: [
                ],
                apis:'',
                fileid:{},
                brackgroundurl:"manager/ciop/school/schoolManagement/qrcodeUpload",
                // form
                Formtable: this.$form.createForm(this, {name: 'Formtable'}),
                titleName:"",
                modifyForm: {
                  phone:"",
                },
                subNameList: [],
                packageName:[],
                chosePages:[],
                products:[],
                importUrl: "",
                //输入框列表
                queryParam: {
                  phone: '',
                },
                modifyvisible: false,
                modifyvisible2: false,
                visiblepicture: false,
                columns: [
                    {dataIndex: 'phone', width: 200, title: '手机号', align: "center"},
                    {
                        dataIndex: 'operation',
                        width: 200,
                        title: '操作',
                        align: "center",
                        scopedSlots: {customRender: 'operation'},
                        fixed: "right"
                    }]
                ,
                rowdata: parameter => {
                  const env = process.env.NODE_ENV; //获取当前环境
                  if (env === 'development') {     //测试环境默认添加前缀
                    this.apis = '/api/';
                  }
                  let params = {
                    pageNo: parameter.pageNo,
                    pageSize: parameter.pageSize
                  };
                  let obj = cloneObject(this.queryParam);
                  //表示
                  return rhPhone(Object.assign(params, obj)).then(res => {
                    let data = {};
                    if (res.page.state !== "success") {
                      this.$message.error("查询失败！", 5);
                      this.emptyText.emptyText = '查询失败！'
                      data = {
                        data: [],
                        pageSize: parameter.pageSize,
                        pageNo: 1,
                        totalCount: 0
                      };
                    } else {
                      data = {
                        data: res.page.data.records,
                        pageSize: parameter.pageSize,
                        pageNo: parameter.pageNo,
                        totalCount: res.page.data.total
                      };
                    }
                    return data;
                  });
                }
            }
        },
        methods:{
          search() {
              this.$refs.table.refresh({search: true})
          },
          add(){
              this.titleName="添加"
              this.modifyForm.phone = "";
              setTimeout(()=>{
                  this.Formtable.setFieldsValue({
                     phone:""
                  })
              },0)
              this.modifyvisible=true;
          },
          handleMenuClick(){
             this.modifyvisible2=true;
          },
            // 执行上传
            doPush(res) {
                if (!res || !res.response) {
                    this.$message.error("上传文件出错！", 10);
                    return false;
                }
                const response = res.response;
                if (response.state !== "success") {
                    this.$message.error(response.msg ? response.msg : "上传文件出错！", 10);
                    return false;
                }
                this.$message.success("上传成功！" + response.data, 5);
                this.search();
                this.modifyvisible2 = false;
            },
          importfunctionOk(){
           this.modifyvisible2 = false;
          },
           handleSubmit1() {
                this.importTile = "导入号码";
                this.importUrl = "manager/ciop/rhPhone/importAccNbr";
                this.modifyvisible2 = true;
            },
          //提交表单
          createfunctionOk(){
            let obj = cloneObject(this.modifyForm);
            addData(obj).then(res => {
              if (res.state == "success") {
                this.$notification.success({
                  message: "添加成功！",
                  description: "",
                  duration: 4
                });
              } else {
                let msg = res.msg != undefined ? res.msg : "删除成功！";
                this.$notification.error({
                  message: msg,
                  description: "",
                  duration: 4
                });
              }
              this.search();
            });
            this.modifyvisible=false;
          },
          createfunctionCancel(){
            this.modifyvisible=false;
            this.modifyvisible2=false;
          },
          deleteActivity(id){
            deleteData({id:id}).then(res => {
              if (res.state == "success") {
                this.$notification.success({
                  message: "删除成功！",
                  description: "",
                  duration: 4
                });
              } else {
                this.$notification.error({
                  message: "删除失败！",
                  description: "",
                  duration: 4
                });
              }
              this.search();
            });
          },
        }
    }
</script>

<style scoped>

</style>

