<div :class="{ 'grid': true, 'show-paging-bar': isEnablePagingBar, 'hidden-paging-bar': !isEnablePagingBar }">
    <i-form>
    <el-table v-if="isDisplay === true"
        :default-sort="{ prop: minorSortPSDEF, order: Object.is(minorSortDir, 'ASC') ? 'ascending' : Object.is(minorSortDir, 'DESC') ? 'descending' : '' }"  
        @sort-change="onSortChange($event)"  
        :border="isDragendCol"
        :highlight-current-row ="isSingleSelect"
        :row-class-name="getRowClassName.bind(_self)"
        :cell-class-name="getCellClassName.bind(_self)"
        size="mini"
        stripe
        :height="tableHeight"
        @row-click="rowClick($event)"  
        @select-all="selectAll($event)"  
        @select="select($event)"  
        @row-class-name="onRowClassName($event)"  
        @row-dblclick="rowDBLClick($event)"  
        ref='multipleTable' :data="items" :show-header="!isHideHeader">
            <template slot="empty">
                无数据 
                <span class="quick-toolbar">
                </span>
            </template>
            <template v-if="!isSingleSelect">
                <el-table-column align="center" type='selection' :width="checkboxColWidth"></el-table-column>
            </template>
            <template v-if="getColumnState('id')">
                <el-table-column show-overflow-tooltip :prop="'id'" :label="$t('entities.case.testmaingrid_grid.columns.id')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.id')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <span>{{row.id}}</span>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('pri')">
                <el-table-column show-overflow-tooltip :prop="'pri'" :label="$t('entities.case.testmaingrid_grid.columns.pri')" :width="70"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.pri')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.pri" tag='Testcase__pri' codelistType='STATIC' ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('title')">
                <el-table-column show-overflow-tooltip :prop="'title'" :label="$t('entities.case.testmaingrid_grid.columns.title')" :min-width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.title')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <app-column-link deKeyField='case' :context="JSON.parse(JSON.stringify(context))" :viewparams="JSON.parse(JSON.stringify(viewparams))" :data="row" :linkview="{viewname: 'case-main-dashboard-view', height: 0,width: 0,title: $t('entities.case.views.maindashboardview.title'),placement: 'DRAWER_TOP', isRedirectView: false,deResParameters: [
            { pathName: 'products', parameterName: 'product' },
            ]
            ,parameters: [
            { pathName: 'cases', parameterName: 'case' },
            { pathName: 'maindashboardview', parameterName: 'maindashboardview' }
            ]}" valueitem="srfkey">
                            <span>{{row.title}}</span>
                        </app-column-link >
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('type')">
                <el-table-column show-overflow-tooltip :prop="'type'" :label="$t('entities.case.testmaingrid_grid.columns.type')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.type')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.type" tag='Testcase__type' codelistType='STATIC' ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('openedby')">
                <el-table-column show-overflow-tooltip :prop="'openedby'" :label="$t('entities.case.testmaingrid_grid.columns.openedby')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.openedby')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.openedby" tag='UserRealName' codelistType='DYNAMIC' renderMode="STR" valueSeparator="," textSeparator="," ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('assignedto')">
                <el-table-column show-overflow-tooltip :prop="'assignedto'" :label="$t('entities.case.testmaingrid_grid.columns.assignedto')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.assignedto')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.assignedto" tag='UserRealName' codelistType='DYNAMIC' renderMode="STR" valueSeparator="," textSeparator="," ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('lastrunner')">
                <el-table-column show-overflow-tooltip :prop="'lastrunner'" :label="$t('entities.case.testmaingrid_grid.columns.lastrunner')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.lastrunner')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.lastrunner" tag='UserRealName' codelistType='DYNAMIC' renderMode="STR" valueSeparator="," textSeparator="," ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('lastrundate')">
                <el-table-column show-overflow-tooltip :prop="'lastrundate'" :label="$t('entities.case.testmaingrid_grid.columns.lastrundate')" :width="160"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.lastrundate')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <app-format-data format="YYYY-MM-DD HH:mm:ss" :data="row.lastrundate"></app-format-data>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('lastrunresult')">
                <el-table-column show-overflow-tooltip :prop="'lastrunresult'" :label="$t('entities.case.testmaingrid_grid.columns.lastrunresult')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.lastrunresult')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.lastrunresult" tag='Testcase__result' codelistType='STATIC' ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('status1')">
                <el-table-column show-overflow-tooltip :prop="'status1'" :label="$t('entities.case.testmaingrid_grid.columns.status1')" :width="100"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.status1')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template >
            <codelist :value="row.status1" tag='TestCaseStatusGrid' codelistType='STATIC' ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('tobugcnt')">
                <el-table-column show-overflow-tooltip :prop="'tobugcnt'" :label="$t('entities.case.testmaingrid_grid.columns.tobugcnt')" :width="50"  :align="'left'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.tobugcnt')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <span>{{row.tobugcnt}}</span>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('resultcnt')">
                <el-table-column show-overflow-tooltip :prop="'resultcnt'" :label="$t('entities.case.testmaingrid_grid.columns.resultcnt')" :width="50"  :align="'left'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.resultcnt')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <span>{{row.resultcnt}}</span>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('casesteps')">
                <el-table-column show-overflow-tooltip :prop="'casesteps'" :label="$t('entities.case.testmaingrid_grid.columns.casesteps')" :width="50"  :align="'left'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.casesteps')}}
                      </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <span>{{row.casesteps}}</span>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('uagridcolumn1')">
                <el-table-column :column-key="'uagridcolumn1'" fixed="right" :label="$t('entities.case.testmaingrid_grid.columns.uagridcolumn1')" :width="180"  :align="'center'">
                    <template v-slot:header="{column}">
                      <span class="column-header ">
                        {{$t('entities.case.testmaingrid_grid.columns.uagridcolumn1')}}
                      </span>
                    </template>
                    <template slot-scope="scope">
                        <div style="text-align: center;">
                          <a v-show="scope.row.confirmChange.visabled" :disabled="scope.row.confirmChange.disabled" @click="uiAction(scope.row, 'confirmChange', $event)" :title="$t('entities.case.testmaingrid_grid.uiactions.case_confirmchange')">
                            <i class='fa fa-check-square-o'></i>
                            
                          </a>
                          <divider v-show="scope.row.NewBugByCaseResult.visabled" type='vertical'></divider>
                          <a v-show="scope.row.NewBugByCaseResult.visabled" :disabled="scope.row.NewBugByCaseResult.disabled" @click="uiAction(scope.row, 'NewBugByCaseResult', $event)" :title="$t('entities.case.testmaingrid_grid.uiactions.case_newbugbycaseresult')">
                            <i class='fa fa-bug'></i>
                            
                          </a>
                          <divider v-show="scope.row.CASEOpenTestRunResultView.visabled" type='vertical'></divider>
                          <a v-show="scope.row.CASEOpenTestRunResultView.visabled" :disabled="scope.row.CASEOpenTestRunResultView.disabled" @click="uiAction(scope.row, 'CASEOpenTestRunResultView', $event)" :title="$t('entities.case.testmaingrid_grid.uiactions.case_caseopentestrunresultview')">
                            <i class='fa fa-stack-overflow'></i>
                            
                          </a>
                          <divider v-show="scope.row.CaseExecute.visabled" type='vertical'></divider>
                          <a v-show="scope.row.CaseExecute.visabled" :disabled="scope.row.CaseExecute.disabled" @click="uiAction(scope.row, 'CaseExecute', $event)" :title="$t('entities.case.testmaingrid_grid.uiactions.case_caseexecute')">
                            <i class='fa fa-play-circle-o'></i>
                            
                          </a>
                          <divider v-show="scope.row.unlinkCase.visabled" type='vertical'></divider>
                          <a v-show="scope.row.unlinkCase.visabled" :disabled="scope.row.unlinkCase.disabled" @click="uiAction(scope.row, 'unlinkCase', $event)" :title="$t('entities.case.testmaingrid_grid.uiactions.case_unlinkcase')">
                            <i class='fa fa-unlink'></i>
                            
                          </a>
                        </div>
                    </template>
                </el-table-column>
            </template>
            <template v-if="adaptiveState">
                <el-table-column></el-table-column>
            </template>
    </el-table>
    <row class='grid-pagination' v-show="items.length > 0">
        <page class='pull-right' @on-change="pageOnChange($event)" 
            @on-page-size-change="onPageSizeChange($event)"
            :transfer="true" :total="totalRecord"
            show-sizer :current="curPage" :page-size="limit"
            :page-size-opts="[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]" show-elevator show-total>
            <span>
                <span class="page-column">
                    <poptip transfer placement="top-start">
                        <i-button icon="md-menu">{{$t('app.gridpage.choicecolumns')}}</i-button>
                        <div slot="content">
                            <template v-for="col in allColumns">
                                <div :key="col.name"><el-checkbox v-model="col.show" @change="onColChange()">{{$t(col.langtag)}}</el-checkbox></div>
                            </template>
                        </div>
                    </poptip>
                </span>
                <span v-if="selections.length > 0" class="batch-toolbar">
                </span>
                <span class="page-button"><i-button icon="md-refresh" :title="$t('app.gridpage.refresh')" @click="pageRefresh()"></i-button></span>&nbsp;
                <span>
                    {{$t('app.gridpage.show')}}&nbsp;
                    <span>
                        <template v-if="items.length === 1">
                        1
                        </template>
                        <template v-else>
                            <span>{{(curPage - 1) * limit + 1}}&nbsp;-&nbsp;{{totalRecord > curPage * limit ? curPage * limit : totalRecord}}</span>
                        </template>
                    </span>&nbsp;
                    {{$t('app.gridpage.records')}}，{{$t('app.gridpage.totle')}}&nbsp;{{totalRecord}}&nbsp;{{$t('app.gridpage.records')}}
                </span>
            </span>
        </page>
    </row>
  </i-form>
</div>