From a296223898d61a9838bbd35ed75c87575e308a36 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期五, 07 十一月 2025 17:19:38 +0800
Subject: [PATCH] 1
---
项目代码/WMS/WIDESEA_WMSClient/src/components/basic/ViewGrid/ViewGrid.vue | 297 +++++++++++++----------------------------------------------
1 files changed, 65 insertions(+), 232 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/components/basic/ViewGrid/ViewGrid.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/components/basic/ViewGrid/ViewGrid.vue"
index 5be6e89..1665712 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/components/basic/ViewGrid/ViewGrid.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/components/basic/ViewGrid/ViewGrid.vue"
@@ -2,29 +2,17 @@
<div class="layout-container">
<a :href="exportHref" ref="export"></a>
<!--寮�鍚噿鍔犺浇2020.12.06 -->
- <vol-box
- :on-model-close="closeCustomModel"
- v-model="viewModel"
- :height="520"
- :width="500"
- :padding="0"
- :lazy="true"
- title="璁剧疆"
- >
+ <vol-box :on-model-close="closeCustomModel" v-model="viewModel" :height="520" :width="500" :padding="0" :lazy="true"
+ title="璁剧疆">
<template #content>
<custom-column :view-columns="viewColumns"></custom-column>
</template>
<template #footer>
<div style="text-align: center">
- <el-button type="default" size="small" @click="closeCustomModel"
- ><i class="el-icon-close"></i>鍙栨秷</el-button
- >
- <el-button type="success" size="small" @click="initViewColumns(true)"
- ><i class="el-icon-refresh"></i>閲嶇疆</el-button
- >
- <el-button type="primary" size="small" @click="saveColumnConfig"
- ><i class="el-icon-check"></i>纭畾</el-button
- >
+ <el-button type="default" size="small" @click="closeCustomModel"><i class="el-icon-close"></i>鍙栨秷</el-button>
+ <el-button type="success" size="small" @click="initViewColumns(true)"><i
+ class="el-icon-refresh"></i>閲嶇疆</el-button>
+ <el-button type="primary" size="small" @click="saveColumnConfig"><i class="el-icon-check"></i>纭畾</el-button>
</div>
</template>
</vol-box>
@@ -34,28 +22,13 @@
<!--2020.10.31娣诲姞瀵煎叆鍓嶇殑鏂规硶-->
<!--寮�鍚噿鍔犺浇2020.12.06 -->
<!-- 2022.01.08澧炲姞鏄庣粏琛ㄥ鍏ュ垽鏂� -->
- <vol-box
- v-if="upload.url"
- v-model="upload.excel"
- :height="350"
- :width="600"
- :lazy="true"
- :title="(boxModel ? detailOptions.cnName : table.cnName) + '-瀵煎叆'"
- >
- <UploadExcel
- ref="upload_excel"
- @importExcelAfter="importExcelAfter"
- :importExcelBefore="importExcelBefore"
- :url="upload.url"
- :template="upload.template"
- ></UploadExcel>
+ <vol-box v-if="upload.url" v-model="upload.excel" :height="350" :width="600" :lazy="true"
+ :title="(boxModel ? detailOptions.cnName : table.cnName) + '-瀵煎叆'">
+ <UploadExcel ref="upload_excel" @importExcelAfter="importExcelAfter" :importExcelBefore="importExcelBefore"
+ :url="upload.url" :template="upload.template"></UploadExcel>
</vol-box>
<!--澶撮儴鑷畾涔夌粍浠�-->
- <component
- :is="dynamicComponent.gridHeader"
- ref="gridHeader"
- @parentCall="parentCall"
- ></component>
+ <component :is="dynamicComponent.gridHeader" ref="gridHeader" @parentCall="parentCall"></component>
<!--涓荤晫闈㈡煡璇笌table琛ㄥ崟甯冨眬-->
<div class="view-container">
<!-- 2020.09.11澧炲姞鍥哄畾鏌ヨ琛ㄥ崟 -->
@@ -63,15 +36,8 @@
<div class="grid-search">
<div :class="[fiexdSearchForm ? 'fiexd-search-box' : 'search-box']" v-show="searchBoxShow">
<!-- 2020.09.13澧炲姞formFileds鎷煎啓閿欒鍏煎澶勭悊 -->
- <vol-form
- ref="searchForm"
- :load-key="false"
- style="padding: 0 15px"
- :label-width="labelWidth"
- :formRules="searchFormOptions"
- :formFields="searchFormFields"
- :select2Count="select2Count"
- >
+ <vol-form ref="searchForm" :load-key="false" style="padding: 0 15px" :label-width="labelWidth"
+ :formRules="searchFormOptions" :formFields="searchFormFields" :select2Count="select2Count">
<template #footer>
<div v-if="!fiexdSearchForm" class="form-closex">
<el-button size="small" type="primary" plain @click="search">
@@ -99,15 +65,9 @@
</div>
<!--蹇�熸煡璇㈠瓧娈�-->
<div class="search-line" v-if="!fiexdSearchForm && !searchBoxShow">
- <QuickSearch
- v-if="singleSearch"
- :searchFormOptions="searchFormOptions"
- :searchFormFields="searchFormFields"
- :select2Count="select2Count"
- :label-width="labelWidth"
- :queryFields="queryFields"
- @tiggerPress="quickSearchKeyPress"
- ></QuickSearch>
+ <QuickSearch v-if="singleSearch" :searchFormOptions="searchFormOptions" :searchFormFields="searchFormFields"
+ :select2Count="select2Count" :label-width="labelWidth" :queryFields="queryFields"
+ @tiggerPress="quickSearchKeyPress"></QuickSearch>
</div>
<!--鎿嶄綔鎸夐挳缁�-->
<!-- 2020.11.29澧炲姞鏌ヨ鐣岄潰hidden灞炴�� -->
@@ -116,8 +76,7 @@
<template :key="bIndex" v-for="(btn, bIndex) in buttons.slice(0, maxBtnLength)">
<el-dropdown size="small" v-if="btn.data" :split-button="false">
<el-button :color="btn.color" :dark="false" :type="btn.type" :plain="btn.plain">
- {{ btn.name }}<i class="el-icon-arrow-down el-icon--right"></i
- ></el-button>
+ {{ btn.name }}<i class="el-icon-arrow-down el-icon--right"></i></el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item v-for="(item, index) in btn.data" :key="index">
@@ -129,28 +88,13 @@
</el-dropdown-menu>
</template>
</el-dropdown>
- <el-button
- v-else
- :type="btn.type"
- size="small"
- :color="btn.color"
- :dark="false"
- :class="btn.class"
- :plain="btn.plain"
- v-show="!btn.hidden"
- @click="onClick(btn.onClick)"
- >
+ <el-button v-else :type="btn.type" size="small" :color="btn.color" :dark="false" :class="btn.class"
+ :plain="btn.plain" v-show="!btn.hidden" @click="onClick(btn.onClick)">
<i :class="btn.icon"></i> {{ btn.name }}
</el-button>
</template>
- <el-button
- type="default"
- style="padding: 0px 10px"
- size="small"
- :plain="true"
- v-if="showCustom"
- @click="showCustomModel"
- >
+ <el-button type="default" style="padding: 0px 10px" size="small" :plain="true" v-if="showCustom"
+ @click="showCustomModel">
<i class="el-icon-s-grid"></i>
</el-button>
<el-dropdown size="small" @click="changeDropdown" v-if="buttons.length > maxBtnLength">
@@ -159,15 +103,9 @@
</el-button>
<template #dropdown>
<el-dropdown-menu>
- <el-dropdown-item
- @click="changeDropdown(item.name)"
- :name="item.name"
- v-show="!item.hidden"
- v-for="(item, dIndex) in buttons.slice(maxBtnLength, buttons.length)"
- :key="dIndex"
- >
- <i :class="item.icon"></i> {{ item.name }}</el-dropdown-item
- >
+ <el-dropdown-item @click="changeDropdown(item.name)" :name="item.name" v-show="!item.hidden"
+ v-for="(item, dIndex) in buttons.slice(maxBtnLength, buttons.length)" :key="dIndex">
+ <i :class="item.icon"></i> {{ item.name }}</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
@@ -175,54 +113,27 @@
</div>
<!-- 鍒嗗壊浣嶇疆 -->
- <vol-box
- v-if="boxInit"
- v-model="boxModel"
- :title="boxOptions.title"
- :width="boxOptions.width"
- :height="boxOptions.height"
- :modal="boxOptions.modal"
- :draggable="boxOptions.draggable"
- :padding="0"
- :on-model-close="onGridModelClose"
- @fullscreen="fullscreen"
- >
+ <vol-box v-if="boxInit" v-model="boxModel" :title="boxOptions.title" :width="boxOptions.width"
+ :height="boxOptions.height" :modal="boxOptions.modal" :draggable="boxOptions.draggable" :padding="0"
+ :on-model-close="onGridModelClose" @fullscreen="fullscreen">
<!--鏄庣粏澶撮儴鑷畾涔夌粍浠�-->
<template #content>
<div class="box-com vol-edit-box">
<div class="vol-edit-content">
- <component
- :is="dynamicComponent.modelHeader"
- ref="modelHeader"
- @parentCall="parentCall"
- ></component>
+ <component :is="dynamicComponent.modelHeader" ref="modelHeader" @parentCall="parentCall"></component>
<!-- <div v-show="isBoxAudit" class="flow-step">
<div v-for="(item, index) in workFlowSteps" :key="index">
{{ item.stepName }}
</div>
</div> -->
<div class="item form-item">
- <vol-form
- ref="form"
- :editor="editor"
- :load-key="false"
- :label-width="boxOptions.labelWidth"
- :formRules="editFormOptions"
- :formFields="editFormFields"
- :select2Count="select2Count"
- ></vol-form>
+ <vol-form ref="form" :editor="editor" :load-key="false" :label-width="boxOptions.labelWidth"
+ :formRules="editFormOptions" :formFields="editFormFields" :select2Count="select2Count"></vol-form>
</div>
<!--鏄庣粏body鑷畾涔夌粍浠�-->
- <component
- :is="dynamicComponent.modelBody"
- ref="modelBody"
- @parentCall="parentCall"
- ></component>
- <div
- v-show="hasDetail"
- v-if="detail.columns && detail.columns.length > 0"
- class="grid-detail table-item item"
- >
+ <component :is="dynamicComponent.modelBody" ref="modelBody" @parentCall="parentCall"></component>
+ <div v-show="hasDetail" v-if="detail.columns && detail.columns.length > 0"
+ class="grid-detail table-item item">
<div class="toolbar">
<div class="title form-text">
<span>
@@ -232,57 +143,26 @@
</div>
<!--鏄庣粏琛ㄦ牸鎸夐挳-->
<div class="btns" v-show="!isBoxAudit">
- <el-button
- v-for="(btn, bIndex) in detailOptions.buttons"
- :key="bIndex"
- :plain="btn.plain"
- v-show="!(typeof btn.hidden == 'boolean' && btn.hidden)"
- @click="onClick(btn.onClick)"
- size="small"
- ><i :class="btn.icon"></i>{{ btn.name }}</el-button
- >
+ <el-button v-for="(btn, bIndex) in detailOptions.buttons" :key="bIndex" :plain="btn.plain"
+ v-show="!(typeof btn.hidden == 'boolean' && btn.hidden)" @click="onClick(btn.onClick)"
+ size="small"><i :class="btn.icon"></i>{{ btn.name }}</el-button>
</div>
</div>
- <vol-table
- ref="detail"
- @loadBefore="loadInternalDetailTableBefore"
- @loadAfter="loadDetailTableAfter"
- @rowChange="detailRowOnChange"
- @rowClick="detailRowOnClick"
- :url="detailOptions.url"
- :load-key="false"
- :index="true"
- :tableData="detailOptions.data"
- :columns="detailOptions.columns"
- :pagination="detailOptions.pagination"
- :height="detailOptions.height"
- :single="detailOptions.single"
- :pagination-hide="detailOptions.paginationHide"
- :defaultLoadPage="detailOptions.load"
- :beginEdit="detailOptions.beginEdit"
- :endEditBefore="detailOptions.endEditBefore"
- :endEditAfter="detailOptions.endEditAfter"
- :double-edit="detailOptions.doubleEdit"
- :column-index="detailOptions.columnIndex"
- :ck="detailOptions.ck"
- :text-inline="detailOptions.textInline"
- :select2Count="select2Count"
- :selectable="detailSelectable"
- :spanMethod="detailSpanMethod"
- ></vol-table>
+ <vol-table ref="detail" @loadBefore="loadInternalDetailTableBefore" @loadAfter="loadDetailTableAfter"
+ @rowChange="detailRowOnChange" @rowClick="detailRowOnClick" :url="detailOptions.url" :load-key="false"
+ :index="true" :tableData="detailOptions.data" :columns="detailOptions.columns"
+ :pagination="detailOptions.pagination" :height="detailOptions.height" :single="detailOptions.single"
+ :pagination-hide="detailOptions.paginationHide" :defaultLoadPage="detailOptions.load"
+ :beginEdit="detailOptions.beginEdit" :endEditBefore="detailOptions.endEditBefore"
+ :endEditAfter="detailOptions.endEditAfter" :double-edit="detailOptions.doubleEdit"
+ :column-index="detailOptions.columnIndex" :ck="detailOptions.ck"
+ :text-inline="detailOptions.textInline" :select2Count="select2Count" :selectable="detailSelectable"
+ :spanMethod="detailSpanMethod"></vol-table>
</div>
- <component
- :is="dynamicComponent.modelFooter"
- ref="modelFooter"
- @parentCall="parentCall"
- ></component>
+ <component :is="dynamicComponent.modelFooter" ref="modelFooter" @parentCall="parentCall"></component>
</div>
<div class="vol-edit-box-right">
- <component
- :is="dynamicComponent.modelRight"
- ref="modelRight"
- @parentCall="parentCall"
- ></component>
+ <component :is="dynamicComponent.modelRight" ref="modelRight" @parentCall="parentCall"></component>
</div>
</div>
</template>
@@ -291,26 +171,14 @@
<el-button size="small" type="primary" plain @click="onGridModelClose(false)">
<i class="el-icon-close">鍏抽棴</i>
</el-button>
- <el-button
- size="small"
- type="primary"
- v-show="auditParam.showViewButton"
- @click="auditParam.model = true"
- >
+ <el-button size="small" type="primary" v-show="auditParam.showViewButton" @click="auditParam.model = true">
<i class="el-icon-view">瀹℃壒</i>
</el-button>
</div>
<div v-show="!isBoxAudit">
- <el-button
- v-for="(btn, bIndex) in boxButtons"
- :key="bIndex"
- :type="btn.type"
- size="small"
- :plain="btn.plain"
- v-show="!(typeof btn.hidden == 'boolean' && btn.hidden)"
- :disabled="btn.hasOwnProperty('disabled') && !!btn.disabled"
- @click="onClick(btn.onClick)"
- >
+ <el-button v-for="(btn, bIndex) in boxButtons" :key="bIndex" :type="btn.type" size="small"
+ :plain="btn.plain" v-show="!(typeof btn.hidden == 'boolean' && btn.hidden)"
+ :disabled="btn.hasOwnProperty('disabled') && !!btn.disabled" @click="onClick(btn.onClick)">
<i :class="btn.icon"></i>{{ btn.name }}
</el-button>
<el-button size="small" type="primary" plain @click="onGridModelClose(false)">
@@ -322,61 +190,26 @@
</div>
<!--body鑷畾涔夌粍浠�-->
<div class="grid-body">
- <component
- :is="dynamicComponent.gridBody"
- ref="gridBody"
- @parentCall="parentCall"
- ></component>
+ <component :is="dynamicComponent.gridBody" ref="gridBody" @parentCall="parentCall"></component>
</div>
<!--table琛ㄦ牸-->
<div class="grid-container">
<!-- 2021.05.02澧炲姞鏍戝舰缁撴瀯 rowKey -->
- <vol-table
- ref="table"
- :single="single"
- :rowKey="rowKey"
- :loadTreeChildren="loadTreeTableChildren"
- @loadBefore="loadTableBefore"
- @loadAfter="loadTableAfter"
- @rowChange="rowOnChange"
- @rowClick="rowOnClick"
- @rowDbClick="rowOnDbClick"
- @selectionChange="selectionOnChange"
- :tableData="[]"
- :linkView="linkData"
- :columns="columns"
- :pagination="pagination"
- :height="height"
- :max-height="tableMaxHeight"
- :pagination-hide="paginationHide"
- :url="url"
- :load-key="false"
- :defaultLoadPage="load"
- :double-edit="doubleEdit"
- :index="doubleEdit"
- :beginEdit="tableBeginEdit"
- :endEditBefore="tableEndEditBefore"
- :column-index="columnIndex"
- :text-inline="textInline"
- :ck="ck"
- :select2Count="select2Count"
- :selectable="selectable"
- :spanMethod="spanMethod"
- :lazy="lazy"
- :defaultExpandAll="defaultExpandAll"
- :expandRowKeys="expandRowKeys"
- :rowParentField="rowParentField"
- ></vol-table>
+ <vol-table ref="table" :single="single" :rowKey="rowKey" :loadTreeChildren="loadTreeTableChildren"
+ @loadBefore="loadTableBefore" @loadAfter="loadTableAfter" @rowChange="rowOnChange" @rowClick="rowOnClick"
+ @rowDbClick="rowOnDbClick" @selectionChange="selectionOnChange" :tableData="[]" :linkView="linkData"
+ :columns="columns" :pagination="pagination" :height="height" :max-height="tableMaxHeight"
+ :pagination-hide="paginationHide" :url="url" :load-key="false" :defaultLoadPage="load" :double-edit="doubleEdit"
+ :index="doubleEdit" :beginEdit="tableBeginEdit" :endEditBefore="tableEndEditBefore" :column-index="columnIndex"
+ :text-inline="textInline" :ck="ck" :select2Count="select2Count" :selectable="selectable"
+ :spanMethod="spanMethod" :lazy="lazy" :defaultExpandAll="defaultExpandAll" :expandRowKeys="expandRowKeys"
+ :rowParentField="rowParentField"></vol-table>
</div>
</div>
<!--footer鑷畾涔夌粍浠�-->
- <component
- :is="dynamicComponent.gridFooter"
- ref="gridFooter"
- @parentCall="parentCall"
- ></component>
+ <component :is="dynamicComponent.gridFooter" ref="gridFooter" @parentCall="parentCall"></component>
</div>
</template>
@@ -617,8 +450,8 @@
this.initDicKeys() //鍒濆涓嬫鏁版嵁婧�
this.onInited() //鍒濆鍖栧悗锛屽鏋滈渶瑕佸仛鍏朵粬澶勭悊鍦ㄦ墿灞曟柟娉曚腑瑕嗙洊姝ゆ柟娉�
},
- beforeUpdate: function () {},
- updated: function () {}
+ beforeUpdate: function () { },
+ updated: function () { }
}
import props from './props.js'
--
Gitblit v1.9.3