| | |
| | | <template> |
| | | <div> |
| | | <a-card |
| | | :bordered="true" |
| | | style="height: 50%" |
| | | > |
| | | <a-row type="flex"> |
| | | <a-col><a-button |
| | | type="primary" |
| | | @click="handleAdd(da)" |
| | | >新建</a-button></a-col> |
| | | <a-col><a-button |
| | | type="primary" |
| | | @click="handleEdit(selectedRows)" |
| | | >编辑</a-button></a-col> |
| | | <a-col><a-button |
| | | type="primary" |
| | | @click="batchDel(da)" |
| | | >删除</a-button></a-col> |
| | | <a-col style="left: 5%"><a-button type="primary">模板</a-button></a-col> |
| | | <a-col style="left: 5%"><a-button type="primary">导入</a-button></a-col> |
| | | <a-col style="left: 5%"><a-button type="primary">导出</a-button></a-col> |
| | | </a-row> |
| | | </a-card> |
| | | <a-row |
| | | type="flex" |
| | | :gutter="16" |
| | | > |
| | | <a-col |
| | | :md="5" |
| | | :sm="24" |
| | | <a-card :bordered="false" title='计量单位'> |
| | | <!-- 查询区域 --> |
| | | <div class="table-page-search-wrapper"> |
| | | <a-form |
| | | layout="inline" |
| | | @keyup.enter.native="searchQuery" |
| | | > |
| | | |
| | | <MomUnitListLeft |
| | | ref="MomUnitListLeft" |
| | | class="MomUnitListLeft" |
| | | @treeSelect="treeSelect" |
| | | /> |
| | | |
| | | </a-col> |
| | | <a-col |
| | | :md="24 - 5" |
| | | :sm="24" |
| | | <a-row :gutter="24"> |
| | | |
| | | <a-col |
| | | :xl="6" |
| | | :lg="7" |
| | | :md="8" |
| | | :sm="24" |
| | | > |
| | | <a-form-item label="单位编码"> |
| | | <j-input |
| | | placeholder="请输入单位编码" |
| | | v-model="queryParam.num" |
| | | ></j-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | <template> |
| | | <a-col |
| | | :xl="6" |
| | | :lg="7" |
| | | :md="8" |
| | | :sm="24" |
| | | > |
| | | <a-form-item label="单位名称"> |
| | | <j-input |
| | | placeholder="请输入单位名称" |
| | | v-model="queryParam.name" |
| | | ></j-input> |
| | | </a-form-item> |
| | | </a-col> |
| | | </template> |
| | | <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> |
| | | </span> |
| | | </a-col> |
| | | </a-row> |
| | | </a-form> |
| | | </div> |
| | | <!-- 查询区域-END --> |
| | | |
| | | <!-- 操作按钮区域 --> |
| | | <div class="table-operator"> |
| | | <a-button |
| | | @click="handleAdd" |
| | | type="primary" |
| | | icon="plus" |
| | | >新增</a-button> |
| | | <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;" |
| | | > |
| | | <MomUnitListRight |
| | | ref="MomUnitListRight" |
| | | class="MomUnitListRight" |
| | | @searchkeys="selectedKeys" |
| | | /> |
| | | </a-col> |
| | | </a-row> |
| | | <mom-unit-modal |
| | | <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:true}" |
| | | 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-dropdown> |
| | | <a class="ant-dropdown-link">更多 <a-icon type="down" /></a> |
| | | <a-menu slot="overlay"> |
| | | <a-menu-item> |
| | | <a @click="handleDetail(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> |
| | | |
| | | </a-table> |
| | | </div> |
| | | |
| | | <unit-modal |
| | | ref="modalForm" |
| | | @ok="modalFormOk" |
| | | ></mom-unit-modal> |
| | | </div> |
| | | ></unit-modal> |
| | | </a-card> |
| | | </template> |
| | | |
| | | <script> |
| | | import MomUnitListLeft from './modules/unit/MomUnitListLeft' |
| | | import MomUnitListRight from './modules/unit/MomUnitListRight' |
| | | import MomUnitModal from './modules/unit/MomUnitModal' |
| | | |
| | | import '@assets/less/TableExpand.less' |
| | | import { mixinDevice } from '@/utils/mixin' |
| | | import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
| | | import { deleteAction } from '@/api/manage' |
| | | import UnitModal from './modules/unit/UnitModal' |
| | | |
| | | export default { |
| | | name: 'MomUnitList', |
| | | mixins: [JeecgListMixin], |
| | | components: { MomUnitListLeft, MomUnitListRight, MomUnitModal }, |
| | | name: 'EquipmentImportanceList', |
| | | mixins: [JeecgListMixin, mixinDevice], |
| | | components: { |
| | | UnitModal |
| | | }, |
| | | data() { |
| | | return { |
| | | description: '计量单位页面', |
| | | currentOrgCode: '', |
| | | selectedRowKeys: [], |
| | | selectedRows: [], |
| | | description: '计量单位管理页面', |
| | | // 表头 |
| | | columns: [ |
| | | { |
| | | title: '#', |
| | | dataIndex: '', |
| | | key: 'rowIndex', |
| | | width: 60, |
| | | align: "center", |
| | | customRender: function (t, r, index) { |
| | | return parseInt(index) + 1; |
| | | } |
| | | }, |
| | | { |
| | | title: ' 计量单位编码', |
| | | align: "center", |
| | | dataIndex: 'num' |
| | | }, |
| | | { |
| | | title: '计量单位名称', |
| | | align: "center", |
| | | dataIndex: 'name' |
| | | }, |
| | | { |
| | | title: '创建人', |
| | | align: "center", |
| | | dataIndex: 'createBy' |
| | | }, |
| | | { |
| | | title: '创建日期', |
| | | align: "center", |
| | | dataIndex: 'createTime' |
| | | }, |
| | | { |
| | | title: '更新人', |
| | | align: "center", |
| | | dataIndex: 'updateBy' |
| | | }, |
| | | { |
| | | title: '更新日期', |
| | | align: "center", |
| | | dataIndex: 'updateTime' |
| | | }, |
| | | { |
| | | title: '备注', |
| | | align: "center", |
| | | dataIndex: 'remark' |
| | | }, |
| | | |
| | | { |
| | | title: '操作', |
| | | dataIndex: 'action', |
| | | align: "center", |
| | | fixed: "right", |
| | | width: 147, |
| | | scopedSlots: { customRender: 'action' } |
| | | } |
| | | ], |
| | | url: { |
| | | list: '/base/getTree', |
| | | deleteBatch: '/base/unit/deleteMomUnit', |
| | | list: "/base/unit/list", |
| | | delete: "/base/unit/delete", |
| | | deleteBatch: "/base/unit/deleteBatch", |
| | | exportXlsUrl: "/eam/equipmentImportance/exportXls", |
| | | importExcelUrl: "/eam/equipmentImportance/importExcel", |
| | | |
| | | }, |
| | | da: [], |
| | | dictOptions: {}, |
| | | superFieldList: [], |
| | | } |
| | | }, |
| | | |
| | | methods: { |
| | | //新增数据(新建按钮触发) |
| | | handleAdd(da) { |
| | | if (this.da.length <= 0) { |
| | | this.$message.warning('请选择一个树节点!') |
| | | return |
| | | } else { |
| | | this.$refs.modalForm.add(da, { cb: this.callback }) |
| | | } |
| | | }, |
| | | //修改数据(修改按钮触发) |
| | | handleEdit(selectedRows) { |
| | | if (this.selectedRows.length <= 0) { |
| | | this.$message.warning('请选择一条需要修改的计量单位!') |
| | | return |
| | | } else if (this.selectedRows.length > 1) { |
| | | this.$message.warning('注意:只能选择一条计量单位进行修改!') |
| | | return |
| | | } else { |
| | | this.$refs.modalForm.edit(selectedRows, { cb: this.callback }) |
| | | } |
| | | }, |
| | | //批量删除右侧数据(删除按钮触发) |
| | | batchDel(da) { |
| | | if (!this.url.deleteBatch) { |
| | | this.$message.error('请设置url.deleteBatch属性!') |
| | | return |
| | | } |
| | | if (this.selectedRowKeys.length <= 0) { |
| | | this.$message.warning('请选择一条记录!') |
| | | return |
| | | } else { |
| | | var ids = '' |
| | | for (var a = 0; a < this.selectedRowKeys.length; a++) { |
| | | ids += this.selectedRowKeys[a] + ',' |
| | | } |
| | | var that = this |
| | | this.$confirm({ |
| | | title: '确认删除', |
| | | content: '是否删除选中数据?', |
| | | onOk: function () { |
| | | that.loading = true |
| | | deleteAction(that.url.deleteBatch, { ids: ids }) |
| | | .then((res) => { |
| | | if (res.success) { |
| | | that.$message.success(res.message) |
| | | } else { |
| | | that.$message.warning(res.message) |
| | | } |
| | | }) |
| | | .finally(() => { |
| | | that.loading = false |
| | | //重新计算分页问题 |
| | | that.reCalculatePage(that.selectedRowKeys.length) |
| | | that.onClearSelected() |
| | | that.$refs.MomUnitListRight.loadData({ id: da.id }) |
| | | that.loadTree() |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | }, |
| | | //重新计算分页 |
| | | reCalculatePage(count) { |
| | | //总数量-count |
| | | let total = this.ipagination.total - count |
| | | //获取删除后的分页数 |
| | | let currentIndex = Math.ceil(total / this.ipagination.pageSize) |
| | | //删除后的分页数<所在当前页 |
| | | if (currentIndex < this.ipagination.current) { |
| | | this.ipagination.current = currentIndex |
| | | } |
| | | console.log('currentIndex', currentIndex) |
| | | }, |
| | | //清除右侧选中项 |
| | | onClearSelected() { |
| | | this.selectedRowKeys = [] |
| | | this.selectedRows = [] |
| | | }, |
| | | //左右联动(da为左侧选中树的数据,子控件中返回) |
| | | treeSelect(da) { |
| | | let id = da.id |
| | | this.da = da |
| | | this.onClearSelected() |
| | | this.$refs.MomUnitListRight.loadData({ unitCategoryId: id }) |
| | | }, |
| | | //右侧列表选中事件 |
| | | selectedKeys(selectedRowKeys, selectedRows) { |
| | | this.selectedRowKeys = selectedRowKeys |
| | | this.selectedRows = selectedRows |
| | | }, |
| | | //加载左侧树 |
| | | loadTree() { |
| | | this.$refs.MomUnitListLeft.queryTreeData() |
| | | }, |
| | | //新增编辑保存后回调函数回显页面数据 |
| | | callback(id) { |
| | | this.$refs.MomUnitListRight.loadData({ id: id }) |
| | | this.$refs.MomUnitListRight.getList() |
| | | created() { |
| | | // this.getSuperFieldList(); |
| | | }, |
| | | computed: { |
| | | importExcelUrl: function () { |
| | | return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; |
| | | }, |
| | | }, |
| | | methods: { |
| | | // initDictConfig() { |
| | | // }, |
| | | // getSuperFieldList() { |
| | | // let fieldList = []; |
| | | // fieldList.push({ type: 'string', value: 'num', text: '重要度编码', dictCode: '' }) |
| | | // fieldList.push({ type: 'string', value: 'name', text: '重要度名称', dictCode: '' }) |
| | | // fieldList.push({ type: 'string', value: 'remark', text: '备注', dictCode: '' }) |
| | | // fieldList.push({ type: 'string', value: 'createBy', text: '创建人', dictCode: '' }) |
| | | // fieldList.push({ type: 'datetime', value: 'createTime', text: '创建日期' }) |
| | | // fieldList.push({ type: 'string', value: 'updateBy', text: '更新人', dictCode: '' }) |
| | | // fieldList.push({ type: 'datetime', value: 'updateTime', text: '更新日期' }) |
| | | // this.superFieldList = fieldList |
| | | // } |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped> |