¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <a-card :bordered="false"> |
| | | <!-- æ¥è¯¢åºå --> |
| | | <div class="table-page-search-wrapper"> |
| | | <a-form |
| | | layout="inline" |
| | | @keyup.enter.native="searchQuery" |
| | | > |
| | | <a-row :gutter="24"> |
| | | <a-col |
| | | :xl="6" |
| | | :lg="7" |
| | | :md="8" |
| | | :sm="24" |
| | | > |
| | | <a-form-item label="æ§å¶ç³»ç»ç±»å"> |
| | | <a-auto-complete |
| | | v-model="queryParam.driveType" |
| | | :data-source="driveTypeList" |
| | | placeholder="è¯·éæ©æ§å¶ç³»ç»ç±»å" |
| | | :filter-option="filterOption" |
| | | :allowClear="true" |
| | | /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :xl="4" |
| | | :lg="4" |
| | | :md="4" |
| | | :sm="24" |
| | | > |
| | | <a-form-item label="æ¥è¦å·"> |
| | | <a-input |
| | | placeholder="请è¾å
¥æ¥è¦å·" |
| | | v-model="queryParam.alarmCode" |
| | | ></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col |
| | | :xl="4" |
| | | :lg="4" |
| | | :md="4" |
| | | :sm="24" |
| | | > |
| | | <a-form-item label="æ¥è¦å
容"> |
| | | <a-input |
| | | placeholder="请è¾å
¥æ¥è¦å
容" |
| | | v-model="queryParam.alarmContent" |
| | | ></a-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col |
| | | :xl="4" |
| | | :lg="4" |
| | | :md="4" |
| | | :sm="24" |
| | | > |
| | | <span |
| | | style="float: left;overflow: hidden;" |
| | | class="table-page-search-submitButtons" |
| | | > |
| | | <a-button |
| | | type="primary" |
| | | @click="searchQuery" |
| | | icon="search" |
| | | >æ¥è¯¢</a-button> |
| | | <a-button |
| | | type="primary" |
| | | @click="searchReset" |
| | | icon="reload" |
| | | style="margin-left: 8px" |
| | | >éç½®</a-button> |
| | | </span> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- æ¥è¯¢åºå-END --> |
| | | |
| | | <!-- æä½æé®åºå --> |
| | | <div class="table-operator"> |
| | | <a-button |
| | | @click="handleAddTRype" |
| | | type="primary" |
| | | icon="plus" |
| | | >æ°å¢</a-button> |
| | | <!--<a-button--> |
| | | <!--@click="handleAdd"--> |
| | | <!--type="primary"--> |
| | | <!--icon="plus"--> |
| | | <!-->è®¾å¤æ°å¢</a-button>--> |
| | | <!--<a-upload--> |
| | | <!--name="file"--> |
| | | <!--:showUploadList="false"--> |
| | | <!--:multiple="false"--> |
| | | <!--:headers="tokenHeader"--> |
| | | <!--:action="importExcelUrl"--> |
| | | <!--@change="handleImportExcel"--> |
| | | <!-->--> |
| | | <!--<a-button--> |
| | | <!--type="primary"--> |
| | | <!--icon="import"--> |
| | | <!-->导å
¥</a-button>--> |
| | | <!--</a-upload>--> |
| | | <a-dropdown v-if="selectedRowKeys.length > 0"> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item |
| | | key="1" |
| | | @click="batchDel" |
| | | > |
| | | <a-icon type="delete" />å é¤ |
| | | </a-menu-item> |
| | | </a-menu> |
| | | <a-button style="margin-left: 8px"> æ¹éæä½ |
| | | <a-icon type="down" /> |
| | | </a-button> |
| | | </a-dropdown> |
| | | </div> |
| | | |
| | | <!-- tableåºå-begin --> |
| | | <div> |
| | | <div |
| | | class="ant-alert ant-alert-info" |
| | | style="margin-bottom: 16px;" |
| | | > |
| | | <i class="anticon anticon-info-circle ant-alert-icon"></i> 已鿩 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项 |
| | | <a |
| | | style="margin-left: 24px" |
| | | @click="onClearSelected" |
| | | >æ¸
空</a> |
| | | </div> |
| | | |
| | | <a-table |
| | | ref="table" |
| | | size="middle" |
| | | :scroll="{x:'max-content',y:465}" |
| | | bordered |
| | | rowKey="id" |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="ipagination" |
| | | :loading="loading" |
| | | :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}" |
| | | class="j-table-force-nowrap" |
| | | @change="handleTableChange" |
| | | > |
| | | |
| | | <span |
| | | slot="action" |
| | | slot-scope="text, record" |
| | | > |
| | | <a @click="handleEdit(record)">ç¼è¾</a> |
| | | |
| | | <a-divider type="vertical" /> |
| | | <a-popconfirm |
| | | title="ç¡®å®å é¤å?" |
| | | @confirm="() => handleDelete(record.id)" |
| | | > |
| | | <a>å é¤</a> |
| | | </a-popconfirm> |
| | | </span> |
| | | |
| | | </a-table> |
| | | </div> |
| | | |
| | | <!--<alarm-manager-modal ref="modalForm" @ok="modalFormOk"></alarm-manager-modal>--> |
| | | <alarm-manager-form ref="modalFormType" @ok="modalFormOk" :driveTypeList="driveTypeList" :filterOption="filterOption"></alarm-manager-form> |
| | | <alarm-manager-edit ref="modalFormEdit" @ok="modalFormOk"></alarm-manager-edit> |
| | | </a-card> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import '@/assets/less/TableExpand.less' |
| | | import { mixinDevice } from '@/utils/mixin' |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | // import MdcDriveTypeParamConfigModal from './modules/mdcDriveTypeParamConfig/MdcDriveTypeParamConfigModal' |
| | | import AlarmManagerModal from './modules/alarmManager/alarmManagerModal' |
| | | import AlarmManagerForm from './modules/alarmManager/alarmManagerForm' |
| | | import AlarmManagerEdit from './modules/alarmManager/alarmManagerEdit' |
| | | import { filterMultiDictText } from '@/components/dict/JDictSelectUtil' |
| | | import { filterObj } from '@/utils/util'; |
| | | import api from '@/api/mdc' |
| | | export default { |
| | | name: 'AlarmManager', |
| | | mixins: [JeecgListMixin, mixinDevice], |
| | | components: { |
| | | AlarmManagerEdit, |
| | | AlarmManagerForm, |
| | | AlarmManagerModal |
| | | }, |
| | | data() { |
| | | return { |
| | | description: 'æ¥è¦å·ç®¡ççé¢', |
| | | /* å页忰 */ |
| | | ipagination:{ |
| | | current: 1, |
| | | pageSize: 30, |
| | | pageSizeOptions: ['30', '50', '100'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + "-" + range[1] + " å
±" + total + "æ¡" |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | // 表头 |
| | | columns: [ |
| | | { |
| | | title: '#', |
| | | dataIndex: '', |
| | | key: 'rowIndex', |
| | | width: 60, |
| | | align: "center", |
| | | customRender: function (t, r, index) { |
| | | return parseInt(index) + 1; |
| | | } |
| | | }, |
| | | { |
| | | title: 'æ¥è¦å·', |
| | | align: "center", |
| | | // sorter: true, |
| | | dataIndex: 'alarmCode', |
| | | width:400 |
| | | }, |
| | | { |
| | | title: 'æ¥è¦å
容', |
| | | align: "center", |
| | | // sorter: true, |
| | | dataIndex: 'alarmContent', |
| | | width:400 |
| | | }, |
| | | |
| | | { |
| | | title: '设å¤é©±å¨ç±»å', |
| | | align: "center", |
| | | // sorter: true, |
| | | dataIndex: 'driveType', |
| | | width:400 |
| | | }, |
| | | // { |
| | | // title: 'æ¯å¦è¿æ»¤', |
| | | // align: "center", |
| | | // dataIndex: 'isUse', |
| | | // customRender: (text) => (text ? filterMultiDictText(this.dictOptions['isUse'], text) : ''), |
| | | // }, |
| | | { |
| | | dataIndex:'isUse_dictText', |
| | | title: 'æ¯å¦å¯ç¨', |
| | | align: "center", |
| | | width:380 |
| | | // dictCode:'alarm_is_use' |
| | | }, |
| | | { |
| | | title: 'æä½', |
| | | dataIndex: 'action', |
| | | align: "center", |
| | | fixed: "right", |
| | | width: 150, |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | ], |
| | | url: { |
| | | list: "/mdc/mdcAlarmInfo/list", |
| | | delete: "/mdc/mdcAlarmInfo/delete", |
| | | deleteBatch: "/mdc/mdcAlarmInfo/deleteBatch", |
| | | importExcelUrl: "mdc/mdcDriveTypeParamConfig/importExcel", |
| | | |
| | | }, |
| | | dictOptions: {}, |
| | | superFieldList: [], |
| | | driveTypeList:[] |
| | | } |
| | | }, |
| | | created() { |
| | | this.$set(this.dictOptions, 'isUse', [{ text: 'æ¯', value: '0' }, { text: 'å¦', value: '-1' }]) |
| | | this.getSuperFieldList(); |
| | | this.getDriveTypeByApi() |
| | | }, |
| | | computed: { |
| | | // importExcelUrl: function () { |
| | | // return `${window._CONFIG['domianURL']}${this.url.importExcelUrl}`; |
| | | // }, |
| | | }, |
| | | methods: { |
| | | handleEdit: function (record) { |
| | | this.$refs.modalFormEdit.edit(record); |
| | | this.$refs.modalFormEdit.title = "ç¼è¾"; |
| | | this.$refs.modalFormEdit.disableSubmit = false; |
| | | }, |
| | | handleAddTRype(){ |
| | | this.$refs.modalFormType.add(); |
| | | this.$refs.modalFormType.title = "æ°å¢"; |
| | | this.$refs.modalFormType.disableSubmit = false |
| | | }, |
| | | initDictConfig() { |
| | | }, |
| | | getSuperFieldList() { |
| | | let fieldList = []; |
| | | fieldList.push({ type: 'string', value: 'alarmCode', text: 'æ¥è¦å·', dictCode: '' }) |
| | | fieldList.push({ type: 'string', value: 'alarmDescription', text: 'æ¥è¦å
容', dictCode: '' }) |
| | | fieldList.push({ type: 'int', value: 'driveType', text: '设å¤é©±å¨ç±»å', dictCode: '' }) |
| | | fieldList.push({ type: 'switch', value: 'isUse', text: 'æ¯å¦å¯ç¨' }) |
| | | this.superFieldList = fieldList |
| | | }, |
| | | |
| | | getQueryParams() { |
| | | // éåæ¥è¯¢æ¡ä»¶ |
| | | let sqp = {} |
| | | if (this.superQueryParams) { |
| | | sqp['superQueryParams'] = encodeURI(this.superQueryParams) |
| | | sqp['superQueryMatchType'] = this.superQueryMatchType |
| | | } |
| | | var param = Object.assign(sqp, this.queryParam, {}, this.filters) |
| | | param.field = this.getQueryField() |
| | | param.pageNo = this.ipagination.current |
| | | param.pageSize = this.ipagination.pageSize |
| | | return filterObj(param) |
| | | }, |
| | | /** |
| | | * è°ç¨æ¥å£è·åæ§å¶ç³»ç»ç±»å |
| | | */ |
| | | getDriveTypeByApi(){ |
| | | api.getDriveTypeApi().then((res)=>{ |
| | | this.driveTypeList=res.result.map(item=>item.value) |
| | | }) |
| | | }, |
| | | /** |
| | | * èæ³è¾å
¥æ¡çéåè½ |
| | | * @param input è¾å
¥çå
容 |
| | | * @param option é
ç½® |
| | | * @returns {boolean} 夿æ¯å¦çé |
| | | */ |
| | | filterOption(input, option) { |
| | | return ( |
| | | option.componentOptions.children[0].text.toUpperCase().indexOf(input.toUpperCase()) >= 0 |
| | | ); |
| | | }, |
| | | |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | @import '~@assets/less/common.less'; |
| | | </style> |