¶Ô±ÈÐÂÎļþ |
| | |
| | | <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="æ¥æååå·"> |
| | | <j-input placeholder="请è¾å
¥æ¥æååå·" v-model="queryParam.orderCode"></j-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :xl="6" :lg="7" :md="8" :sm="24"> |
| | | <a-form-item label="å®¡æ ¸ç¶æ"> |
| | | <j-dict-select-tag placeholder="è¯·éæ©å®¡æ ¸ç¶æ" v-model="queryParam.orderStatus" |
| | | dictCode="approval_status"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :xl="6" :lg="7" :md="8" :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> |
| | | <!-- <a @click="handleToggleSearch" style="margin-left: 8px">--> |
| | | <!-- {{ toggleSearchStatus ? 'æ¶èµ·' : 'å±å¼' }}--> |
| | | <!-- <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />--> |
| | | <!-- </a>--> |
| | | </span> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- æ¥è¯¢åºå-END --> |
| | | |
| | | <!-- æä½æé®åºå --> |
| | | <div class="table-operator"> |
| | | <a-button @click="handleAdd" type="primary" icon="plus">æ°å¢</a-button> |
| | | |
| | | </div> |
| | | |
| | | <!-- tableåºå-begin --> |
| | | <div> |
| | | |
| | | |
| | | <a-table |
| | | ref="table" |
| | | size="middle" |
| | | bordered |
| | | rowKey="id" |
| | | class="j-table-force-nowrap" |
| | | :scroll="{x:true}" |
| | | :columns="columns" |
| | | :dataSource="dataSource" |
| | | :pagination="ipagination" |
| | | :loading="loading" |
| | | :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange, type:'radio'}" |
| | | :customRow="clickThenSelect" |
| | | @change="handleTableChange"> |
| | | |
| | | <span slot="action" slot-scope="text, record"> |
| | | <a @click="handleDetail(record)">详æ
</a> |
| | | <span v-if="record.orderStatus === '1'"> |
| | | <a-divider type="vertical" /> |
| | | <a-popconfirm title="ç¡®å®æäº¤å?" @confirm="() => handleSubmit(record)"> |
| | | <a>æäº¤</a> |
| | | </a-popconfirm> |
| | | <a-divider type="vertical" /> |
| | | <a-dropdown> |
| | | <a class="ant-dropdown-link">æ´å¤<a-icon type="down" /></a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a @click="handleEdit(record)">ç¼è¾</a> |
| | | </a-menu-item> |
| | | <a-menu-item> |
| | | <a-popconfirm title="ç¡®å®å é¤å?" @confirm="() => handleDelete(record.id)"> |
| | | <a>å é¤</a> |
| | | </a-popconfirm> |
| | | </a-menu-item> |
| | | </a-menu> |
| | | </a-dropdown> |
| | | </span> |
| | | </span> |
| | | |
| | | </a-table> |
| | | </div> |
| | | |
| | | <a-tabs defaultActiveKey="1"> |
| | | <a-tab-pane tab="æ¥æç³è¯·åæç»" key="1"> |
| | | <LossboundDetailList ref="lossboundDetailList" :mainId="lossboundDetailMainId" /> |
| | | </a-tab-pane> |
| | | </a-tabs> |
| | | |
| | | <lossbound-modal ref="modalForm" @ok="modalFormOk"></lossbound-modal> |
| | | </a-card> |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import LossboundModal from './modules/LossboundModal' |
| | | import { deleteAction, getAction } from '@/api/manage' |
| | | import LossboundDetailList from './LossboundDetailList.vue' |
| | | import '@/assets/less/TableExpand.less' |
| | | |
| | | export default { |
| | | name: 'LooboundList', |
| | | mixins: [JeecgListMixin], |
| | | components: { |
| | | LossboundDetailList, |
| | | LossboundModal |
| | | }, |
| | | data() { |
| | | return { |
| | | description: 'tms_outbound_order管ç页é¢', |
| | | // 表头 |
| | | columns: [ |
| | | { |
| | | title: 'æ¥æååå·', |
| | | align: 'center', |
| | | dataIndex: 'orderCode' |
| | | }, |
| | | { |
| | | title: 'å®¡æ ¸ç¶æ', |
| | | align: 'center', |
| | | dataIndex: 'orderStatus_dictText' |
| | | }, |
| | | { |
| | | title: 'ç»æäºº', |
| | | align: 'center', |
| | | dataIndex: 'handler_dictText' |
| | | }, |
| | | { |
| | | title: 'å®¡æ ¸äºº', |
| | | align: 'center', |
| | | dataIndex: 'reviewer_dictText' |
| | | }, |
| | | { |
| | | title: 'å®¡æ ¸æ¶é´', |
| | | align: 'center', |
| | | dataIndex: 'auditDate' |
| | | }, |
| | | { |
| | | title: 'å®¡æ ¸æè§', |
| | | align: 'center', |
| | | dataIndex: 'approvalOpinion' |
| | | }, |
| | | { |
| | | title: '夿³¨', |
| | | align: 'center', |
| | | dataIndex: 'remark' |
| | | }, |
| | | { |
| | | title: 'æä½', |
| | | dataIndex: 'action', |
| | | align: 'center', |
| | | fixed: 'right', |
| | | width: 147, |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | ], |
| | | url: { |
| | | list: '/tms/toolsLossBound/list', |
| | | delete: '/tms/toolsLossBound/delete', |
| | | submit: '/tms/toolsLossBound/submit', |
| | | deleteBatch: '/tms/toolsLossBound/deleteBatch', |
| | | exportXlsUrl: '/tms/toolsLossBound/exportXls', |
| | | importExcelUrl: 'tms/toolsLossBound/importExcel' |
| | | }, |
| | | /* å页忰 */ |
| | | ipagination: { |
| | | current: 1, |
| | | pageSize: 5, |
| | | pageSizeOptions: ['5', '10', '50'], |
| | | showTotal: (total, range) => { |
| | | return range[0] + '-' + range[1] + ' å
±' + total + 'æ¡' |
| | | }, |
| | | showQuickJumper: true, |
| | | showSizeChanger: true, |
| | | total: 0 |
| | | }, |
| | | selectedMainId: '', |
| | | superFieldList: [], |
| | | lossboundDetailMainId: '' |
| | | } |
| | | }, |
| | | created() { |
| | | this.getSuperFieldList() |
| | | }, |
| | | computed: { |
| | | importExcelUrl: function() { |
| | | return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}` |
| | | } |
| | | }, |
| | | methods: { |
| | | // handleEdit: function (record) { |
| | | // this.$refs.modalForm.edit(record); |
| | | // this.$refs.modalForm.title = "ç¼è¾"; |
| | | // this.$refs.modalForm.disableSubmit = false; |
| | | // }, |
| | | // handleAdd: function () { |
| | | // this.$refs.modalForm.add(); |
| | | // this.$refs.modalForm.title = "æ°å¢"; |
| | | // this.$refs.modalForm.disableSubmit = false; |
| | | // }, |
| | | modalFormOk() { |
| | | this.$refs.lossboundDetailList.clearList() |
| | | this.loadData() |
| | | }, |
| | | searchReset() { |
| | | this.queryParam = {} |
| | | this.onClearSelected() |
| | | this.$refs.lossboundDetailList.clearList() |
| | | this.loadData(1) |
| | | }, |
| | | initDictConfig() { |
| | | }, |
| | | clickThenSelect(record) { |
| | | return { |
| | | on: { |
| | | click: () => { |
| | | this.onSelectChange(record.id.split(','), [record]) |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | onClearSelected() { |
| | | this.selectedRowKeys = [] |
| | | this.selectionRows = [] |
| | | this.selectedMainId = '' |
| | | this.lossboundDetailMainId = '' |
| | | }, |
| | | onSelectChange(selectedRowKeys, selectionRows) { |
| | | this.selectedMainId = selectedRowKeys[0] |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectionRows = selectionRows |
| | | this.lossboundDetailMainId = selectionRows[0]['id'] |
| | | }, |
| | | handleSubmit(record) { |
| | | getAction(this.url.submit, { id: record.id }).then((res) => { |
| | | if (res.success) { |
| | | this.$message.success(res.message) |
| | | this.loadData() |
| | | this.$refs.lossboundDetailList.clearList() |
| | | } else { |
| | | this.$message.warning(res.message) |
| | | } |
| | | }) |
| | | }, |
| | | handleDelete: function(id) { |
| | | if (!this.url.delete) { |
| | | this.$message.error('请设置url.delete屿§!') |
| | | return |
| | | } |
| | | var that = this |
| | | deleteAction(that.url.delete, { id: id }).then((res) => { |
| | | if (res.success) { |
| | | //éæ°è®¡ç®å页é®é¢ |
| | | that.reCalculatePage(1) |
| | | // that.$message.success(res.message); |
| | | that.$notification.success({ |
| | | message: 'æ¶æ¯', |
| | | description: res.message |
| | | }) |
| | | that.loadData() |
| | | this.$refs.lossboundDetailList.clearList() |
| | | } else { |
| | | // that.$message.warning(res.message); |
| | | that.$notification.warning({ |
| | | message: 'æ¶æ¯', |
| | | description: res.message |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | loadData(arg) { |
| | | if (!this.url.list) { |
| | | this.$message.error('请设置url.list屿§!') |
| | | return |
| | | } |
| | | //å è½½æ°æ® è¥ä¼ å
¥åæ°1åå 载第ä¸é¡µçå
容 |
| | | if (arg === 1) { |
| | | this.ipagination.current = 1 |
| | | } |
| | | this.onClearSelected() |
| | | var params = this.getQueryParams()//æ¥è¯¢æ¡ä»¶ |
| | | this.loading = true |
| | | getAction(this.url.list, params).then((res) => { |
| | | if (res.success) { |
| | | this.dataSource = res.result.records |
| | | this.ipagination.total = res.result.total |
| | | } |
| | | if (res.code === 510) { |
| | | this.$message.warning(res.message) |
| | | } |
| | | this.loading = false |
| | | }) |
| | | }, |
| | | getSuperFieldList() { |
| | | let fieldList = [] |
| | | fieldList.push({ type: 'string', value: 'orderCode', text: 'åºåºåç¼å·', dictCode: '' }) |
| | | |
| | | fieldList.push({ type: 'string', value: 'handler', text: 'ç»æäºº', dictCode: '' }) |
| | | fieldList.push({ type: 'sel_user', value: 'reviewer', text: 'å®¡æ ¸äºº' }) |
| | | fieldList.push({ type: 'string', value: 'orderStatus', text: 'å®¡æ ¸ç¶æ', dictCode: '' }) |
| | | fieldList.push({ type: 'date', value: 'auditDate', text: 'å®¡æ ¸æ¶é´' }) |
| | | fieldList.push({ type: 'string', value: 'approvalOpinion', text: 'å®¡æ ¸æè§', dictCode: '' }) |
| | | fieldList.push({ type: 'string', value: 'subjectMatter', text: 'é¢ç¨äºç±', dictCode: '' }) |
| | | fieldList.push({ type: 'date', value: 'outboundTime', text: 'åºåºæ¶é´' }) |
| | | fieldList.push({ type: 'string', value: 'remark', text: '夿³¨', dictCode: '' }) |
| | | fieldList.push({ type: 'string', value: 'createBy', text: 'æä½å', dictCode: '' }) |
| | | fieldList.push({ type: 'date', value: 'createTime', text: 'å建æ¶é´' }) |
| | | this.superFieldList = fieldList |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |
| | | @import '~@assets/less/common.less'; |
| | | </style> |