|
@@ -0,0 +1,652 @@
|
|
|
+<template>
|
|
|
+ <a-card :bordered="false">
|
|
|
+ <a-row :gutter="8" v-show="visible">
|
|
|
+ <!-- <a-col :span="4">
|
|
|
+ <a-tree
|
|
|
+ @expand="onExpand"
|
|
|
+ :expandedKeys="expandedKeys"
|
|
|
+ :autoExpandParent="true"
|
|
|
+ @select="onSelect"
|
|
|
+ :selectedKeys="selectedKeys"
|
|
|
+ :treeData="treeData"
|
|
|
+ />
|
|
|
+ </a-col>-->
|
|
|
+ <a-col :span="24">
|
|
|
+ <div>
|
|
|
+ <div class="table-page-search-wrapper">
|
|
|
+ <a-form layout="inline">
|
|
|
+ <a-row :gutter="48">
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="关键字">
|
|
|
+ <a-input v-model="queryParam.keyword" placeholder="名称/设备新号" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="设备旧号">
|
|
|
+ <a-input v-model="queryParam.zbh" placeholder="设备旧号" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="第一维修人">
|
|
|
+ <a-input v-model="queryParam.repairUserName" placeholder="第一维修人" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="第二维修人">
|
|
|
+ <a-input v-model="queryParam.repairUserSecondName" placeholder="第二维修人" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="设备等级">
|
|
|
+ <a-select v-model="queryParam.level" placeholder="请选择">
|
|
|
+ <a-select-option v-for="(label,value) in levelMap" :key="value" :label="label" :value="parseInt(value)">{{ label }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="自定义类型">
|
|
|
+ <a-select v-model="queryParam.useType" placeholder="请选择">
|
|
|
+ <a-select-option v-for="(label,value) in useTypeMap" :key="value" :label="label" :value="parseInt(value)">{{ label }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="规格型号">
|
|
|
+ <a-input v-model="queryParam.model" placeholder="规格型号" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="所属车间">
|
|
|
+ <a-select v-model="queryParam.positionId" placeholder="请选择">
|
|
|
+ <a-select-option v-for="({id,name}) in sbPositionData" :key="id" :label="name" :value="id">{{ name }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="生产商">
|
|
|
+ <a-input v-model="queryParam.producerName" placeholder="生产商名称" />
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="设备类型">
|
|
|
+ <a-tree-select style="width: 100%" :dropdownStyle="{ maxHeight: '400px', overflow: 'auto' }" :treeData="treeData" :treeNodeFilterProp="'title'" :showSearch="true" v-model="queryParam.typeId" placeholder="请选择">
|
|
|
+ </a-tree-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="设备状态">
|
|
|
+ <a-select v-model="queryParam.status" placeholder="请选择">
|
|
|
+ <a-select-option v-for="(label,value) in statusMap" :key="value" :defaultValue="DictCache.VALUE.SB_INFO_STATUS.IN_USE" :label="label" :value="parseInt(value)">{{ label }}
|
|
|
+ </a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6" :sm="24">
|
|
|
+ <a-form-item label="主子设备">
|
|
|
+ <a-select v-model="queryParam.isChild" placeholder="请选择">
|
|
|
+ <a-select-option value="1">子设备</a-select-option>
|
|
|
+ <a-select-option value="2">父设备</a-select-option>
|
|
|
+ <a-select-option value="3">普通设备</a-select-option>
|
|
|
+ </a-select>
|
|
|
+ </a-form-item>
|
|
|
+ </a-col>
|
|
|
+ <a-col :md="6 || 24" :sm="24">
|
|
|
+ <span class="table-page-search-submitButtons">
|
|
|
+ <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
|
|
|
+ <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
|
|
|
+ </span>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ </a-form>
|
|
|
+ </div>
|
|
|
+ <s-table ref="table" size="default" rowKey="id" :widthSpace="true" :columns="columns" :data="loadData" :alert="options.alert" :rowSelection="options.rowSelection" :scroll="{x: 1500, y: BaseTool.Constant.scrollY}" showPagination="auto">
|
|
|
+ <span slot="action" slot-scope="record">
|
|
|
+ <template>
|
|
|
+ <div>
|
|
|
+ <a @click="handleEdit(record)">保养</a>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </span>
|
|
|
+ <span slot="status" slot-scope="text">
|
|
|
+ <badge :status="DictCache.COLOR.SB_INFO_STATUS[text]" :text="statusMap[text]" />
|
|
|
+ </span>
|
|
|
+ </s-table>
|
|
|
+ </div>
|
|
|
+ </a-col>
|
|
|
+ </a-row>
|
|
|
+ <base-form ref="baseModal" @ok="handleOk" />
|
|
|
+ </a-card>
|
|
|
+
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import { STable, Ellipsis } from '@/components'
|
|
|
+import BaseForm from './modules/BatchBaseForm'
|
|
|
+import { getSbInfoPage, deleteSbInfos, fetchSbInfo, fetchSbInfos, exportSbInfo, exportSbFeeInfo } from '@/api/sb/info'
|
|
|
+import { queryDept } from '@/api/upms/dept'
|
|
|
+import { generateSbCodeAll } from '@/api/upms/code'
|
|
|
+import { fetchSbTypeTree } from '@/api/sb/type'
|
|
|
+import { querySbPosition } from '@/api/sb/position'
|
|
|
+
|
|
|
+export default {
|
|
|
+ name: 'SbInfoList',
|
|
|
+ components: {
|
|
|
+ STable,
|
|
|
+ Ellipsis,
|
|
|
+ BaseForm,
|
|
|
+ },
|
|
|
+ props: {
|
|
|
+ filter: {
|
|
|
+ type: Number,
|
|
|
+ default: -1,
|
|
|
+ },
|
|
|
+ useType: {
|
|
|
+ type: Number,
|
|
|
+ default: null,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ // 查询参数
|
|
|
+ queryParam: {
|
|
|
+ filter: this.filter,
|
|
|
+ useType: this.useType,
|
|
|
+ },
|
|
|
+ depreciationTypeMap: {},
|
|
|
+ visible: true,
|
|
|
+ sbPositionData: [],
|
|
|
+ levelMap: {},
|
|
|
+ unitMap: {},
|
|
|
+ areaList: {},
|
|
|
+ companyList: {},
|
|
|
+ projectList: {},
|
|
|
+ isChildMap: {},
|
|
|
+ isShowMap: {},
|
|
|
+ deptList: {},
|
|
|
+ confirmLoading: false,
|
|
|
+ useTypeMap: {},
|
|
|
+ statusMap: {},
|
|
|
+ expandedKeys: [],
|
|
|
+ selectedKeys: [],
|
|
|
+ sourceTypeMap: {},
|
|
|
+ treeData: [],
|
|
|
+ // 表头
|
|
|
+ columns: [
|
|
|
+ {
|
|
|
+ title: '序号',
|
|
|
+ dataIndex: 'index',
|
|
|
+ width: 100,
|
|
|
+ checked: true,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return `${
|
|
|
+ (this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1
|
|
|
+ }`
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '设备编号',
|
|
|
+ dataIndex: 'no',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '设备名称',
|
|
|
+ checked: true,
|
|
|
+ width: 200,
|
|
|
+ dataIndex: 'name',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '设备旧号',
|
|
|
+ dataIndex: 'zbh',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '设备类型',
|
|
|
+ checked: true,
|
|
|
+ dataIndex: 'type',
|
|
|
+ width: 150,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return record.typeName
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '设备等级',
|
|
|
+ checked: true,
|
|
|
+ dataIndex: 'level',
|
|
|
+ width: 120,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Object.getField(this.levelMap, text)
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '规格型号',
|
|
|
+ dataIndex: 'model',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '自定义类型',
|
|
|
+ checked: true,
|
|
|
+ dataIndex: 'useType',
|
|
|
+ width: 150,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Object.getField(this.useTypeMap, text)
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '维修负责人',
|
|
|
+ checked: true,
|
|
|
+ width: 150,
|
|
|
+ dataIndex: 'repairUserName',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '第二维修负责人',
|
|
|
+ checked: true,
|
|
|
+ width: 150,
|
|
|
+ dataIndex: 'repairUserNameSecond',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '所属车间',
|
|
|
+ checked: true,
|
|
|
+ width: 200,
|
|
|
+ dataIndex: 'positionName',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '使用机台',
|
|
|
+ checked: true,
|
|
|
+ width: 200,
|
|
|
+ dataIndex: 'saveUserName',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '生产商',
|
|
|
+ dataIndex: 'producerName',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '大小尺寸',
|
|
|
+ dataIndex: 'zz',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ title: '系列号(出厂编号)',
|
|
|
+ dataIndex: 'zzh',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ title: '是否显示',
|
|
|
+ dataIndex: 'isShow',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Object.getField(this.isShowMap, text)
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ title: '是否子设备',
|
|
|
+ dataIndex: 'isChild',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Object.getField(this.isChildMap, text)
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ {
|
|
|
+ title: '资产编号1',
|
|
|
+ dataIndex: 'financingNo',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '设备原值',
|
|
|
+ dataIndex: 'initialValue',
|
|
|
+ width: 100,
|
|
|
+ checked: true,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ return this.BaseTool.Amount.formatter(text)
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '购置日期',
|
|
|
+ dataIndex: 'buyDate',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '投用日期',
|
|
|
+ dataIndex: 'startDate',
|
|
|
+ width: 120,
|
|
|
+ checked: true,
|
|
|
+ },
|
|
|
+ /* {
|
|
|
+ title: '检定日期',
|
|
|
+ dataIndex: 'checkDate',
|
|
|
+ width: 150,
|
|
|
+ checked: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '检定周期',
|
|
|
+ dataIndex: 'checkPeriod',
|
|
|
+ width: 100,
|
|
|
+ checked: true,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ if (record.nextCheckDate == null) {
|
|
|
+ return '未知'
|
|
|
+ } else {
|
|
|
+ return text + '月'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '检定有效期',
|
|
|
+ dataIndex: 'nextCheckDate',
|
|
|
+ width: 150,
|
|
|
+ checked: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '检定截止',
|
|
|
+ dataIndex: 'restDay',
|
|
|
+ width: 100,
|
|
|
+ checked: true,
|
|
|
+ customRender: (text, record, index) => {
|
|
|
+ if (record.nextCheckDate == null) {
|
|
|
+ return '未知'
|
|
|
+ } else {
|
|
|
+ return this.BaseTool.Date.getCountBetween(new Date(), record.nextCheckDate, 1) + '天'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }, */
|
|
|
+ {
|
|
|
+ title: '状态',
|
|
|
+ checked: true,
|
|
|
+ dataIndex: 'status',
|
|
|
+ width: 100,
|
|
|
+ fixed: 'right',
|
|
|
+ scopedSlots: { customRender: 'status' },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '操作',
|
|
|
+ key: 'action',
|
|
|
+ checked: true,
|
|
|
+ fixed: 'right',
|
|
|
+ align: 'center',
|
|
|
+ width: '200',
|
|
|
+ scopedSlots: { customRender: 'action' },
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ // 加载数据方法 必须为 Promise 对象
|
|
|
+ loadData: (parameter) => {
|
|
|
+ parameter = {
|
|
|
+ ...parameter,
|
|
|
+ ...this.queryParam,
|
|
|
+ dataScope: {
|
|
|
+ sortBy: 'asc',
|
|
|
+ sortName: 'no',
|
|
|
+ },
|
|
|
+ }
|
|
|
+ return getSbInfoPage(Object.assign(parameter, this.queryParam)).then((res) => {
|
|
|
+ return res.data
|
|
|
+ })
|
|
|
+ },
|
|
|
+ selectedRowKeys: [],
|
|
|
+ selectedRows: [],
|
|
|
+
|
|
|
+ options: {
|
|
|
+ alert: {
|
|
|
+ show: true,
|
|
|
+ clear: () => {
|
|
|
+ this.selectedRowKeys = []
|
|
|
+ },
|
|
|
+ },
|
|
|
+ rowSelection: {
|
|
|
+ selectedRowKeys: this.selectedRowKeys,
|
|
|
+ onChange: this.onSelectChange,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ optionAlertShow: false,
|
|
|
+ }
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ this.tableOption()
|
|
|
+ this.depreciationTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_DEPRECIATIONTYPE)
|
|
|
+ this.levelMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_LEVEL)
|
|
|
+ this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_INFO_STATUS)
|
|
|
+ this.unitMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBINFO_UNIT)
|
|
|
+ this.sourceTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SBTYPE_SOURCETYPE)
|
|
|
+ this.useTypeMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_USE_TYPE)
|
|
|
+ this.isChildMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_IS_CHILD)
|
|
|
+ this.isShowMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.SB_IS_SHOW)
|
|
|
+ querySbPosition().then((res) => {
|
|
|
+ this.sbPositionData = res.data
|
|
|
+ })
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ tableOption() {
|
|
|
+ this.setTree()
|
|
|
+ if (!this.optionAlertShow) {
|
|
|
+ this.options = {
|
|
|
+ alert: {
|
|
|
+ show: true,
|
|
|
+ clear: () => {
|
|
|
+ this.selectedRowKeys = []
|
|
|
+ },
|
|
|
+ },
|
|
|
+ rowSelection: {
|
|
|
+ selectedRowKeys: this.selectedRowKeys,
|
|
|
+ onChange: this.onSelectChange,
|
|
|
+ getCheckboxProps: (record) => ({
|
|
|
+ props: {
|
|
|
+ disabled: false,
|
|
|
+ name: record.id,
|
|
|
+ },
|
|
|
+ }),
|
|
|
+ },
|
|
|
+ }
|
|
|
+ this.optionAlertShow = true
|
|
|
+ } else {
|
|
|
+ this.options = {
|
|
|
+ alert: false,
|
|
|
+ rowSelection: null,
|
|
|
+ }
|
|
|
+ this.optionAlertShow = false
|
|
|
+ }
|
|
|
+ },
|
|
|
+ batchDelete(id) {
|
|
|
+ let ids = []
|
|
|
+ if (this.BaseTool.String.isBlank(id)) {
|
|
|
+ const length = this.selectedRows.length
|
|
|
+ if (length === 0) {
|
|
|
+ this.$message.info('请选择要删除的记录')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ids = this.selectedRows.map((item) => item.id)
|
|
|
+ } else {
|
|
|
+ ids = [id]
|
|
|
+ }
|
|
|
+ deleteSbInfos(ids).then((res) => {
|
|
|
+ this.$message.info('删除成功')
|
|
|
+ this.handleOk()
|
|
|
+ this.$refs.table.clearSelected()
|
|
|
+ })
|
|
|
+ },
|
|
|
+ batchGenerate() {
|
|
|
+ this.confirmLoading = true
|
|
|
+ this.$message.info('正在生成请稍后')
|
|
|
+ generateSbCodeAll().then((res) => {
|
|
|
+ this.confirmLoading = false
|
|
|
+ this.$message.info('生成成功')
|
|
|
+ this.handleOk()
|
|
|
+ this.$refs.table.clearSelected()
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleEdit(record) {
|
|
|
+ fetchSbInfo({ id: record.id }).then((res) => {
|
|
|
+ this.visible = false
|
|
|
+ const modal = this.$refs.baseModal
|
|
|
+ modal.base(res.data)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handlePrint(record) {
|
|
|
+ this.visible = false
|
|
|
+ fetchSbInfo({ id: record.id }).then((res) => {
|
|
|
+ const modal = this.$refs.printInSbInfoBatch
|
|
|
+ modal.base([res.data])
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handlePrintBatch() {
|
|
|
+ this.visible = false
|
|
|
+ let ids = []
|
|
|
+ const length = this.selectedRows.length
|
|
|
+ if (length === 0) {
|
|
|
+ this.$message.info('请选择要打印的设备')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ids = this.selectedRows.map((item) => item.id)
|
|
|
+ fetchSbInfos(ids).then((res) => {
|
|
|
+ const modal = this.$refs.printInSbInfoBatch
|
|
|
+ modal.base(res.data)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleStart(record) {
|
|
|
+ const modal = this.$refs.baseModalStatusLog
|
|
|
+ modal.base(null, {
|
|
|
+ sbId: record.id,
|
|
|
+ sbNo: record.no,
|
|
|
+ changeUserId: this.$store.getters.userInfo.userId,
|
|
|
+ actualUser: this.$store.getters.userInfo.realName,
|
|
|
+ preStatus: record.status,
|
|
|
+ afterStatus: this.DictCache.VALUE.SB_INFO_STATUS.IN_USE,
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleStop(record) {
|
|
|
+ const modal = this.$refs.baseModalStatusLog
|
|
|
+ modal.base(null, {
|
|
|
+ sbId: record.id,
|
|
|
+ sbNo: record.no,
|
|
|
+ changeUserId: this.$store.getters.userInfo.userId,
|
|
|
+ actualUser: this.$store.getters.userInfo.realName,
|
|
|
+ preStatus: record.status,
|
|
|
+ afterStatus: this.DictCache.VALUE.SB_INFO_STATUS.IN_STOP,
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleAdd() {
|
|
|
+ this.visible = false
|
|
|
+ this.$refs.baseModal.base()
|
|
|
+ },
|
|
|
+ handleView(record) {
|
|
|
+ fetchSbInfo({ id: record.id }).then((res) => {
|
|
|
+ this.visible = false
|
|
|
+ const modal = this.$refs.detailModal
|
|
|
+ modal.base(res.data)
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ handleCopy(record) {
|
|
|
+ this.visible = false
|
|
|
+ fetchSbInfo({ id: record.id }).then((res) => {
|
|
|
+ const modal = this.$refs.baseModal
|
|
|
+ modal.base(res.data, 1)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleOk() {
|
|
|
+ this.visible = true
|
|
|
+ this.setTree()
|
|
|
+ this.$refs.table.refresh()
|
|
|
+ },
|
|
|
+ onSelectChange(selectedRowKeys, selectedRows) {
|
|
|
+ this.selectedRowKeys = selectedRowKeys
|
|
|
+ this.selectedRows = selectedRows
|
|
|
+ },
|
|
|
+ resetSearchForm() {
|
|
|
+ this.queryParam = {
|
|
|
+ filter: this.filter,
|
|
|
+ useType: this.useType,
|
|
|
+ }
|
|
|
+ this.visible = true
|
|
|
+ this.$refs.table.refresh(true)
|
|
|
+ },
|
|
|
+ doExport() {
|
|
|
+ const parameter = {
|
|
|
+ ...this.queryParam,
|
|
|
+ dataScope: {
|
|
|
+ sortBy: 'asc',
|
|
|
+ sortName: 'no',
|
|
|
+ },
|
|
|
+ }
|
|
|
+ exportSbInfo(parameter).then((file) => {
|
|
|
+ this.BaseTool.UPLOAD.downLoadExportExcel(file)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ doExportFee(id) {
|
|
|
+ let ids = []
|
|
|
+ if (this.BaseTool.String.isBlank(id)) {
|
|
|
+ const length = this.selectedRows.length
|
|
|
+ if (length === 0) {
|
|
|
+ this.$message.info('请选择要导出的记录')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ids = this.selectedRows.map((item) => item.id)
|
|
|
+ } else {
|
|
|
+ ids = [id]
|
|
|
+ }
|
|
|
+ exportSbFeeInfo({
|
|
|
+ sbIds: ids.join(','),
|
|
|
+ }).then((file) => {
|
|
|
+ this.BaseTool.UPLOAD.downLoadExportExcel(file)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ setTree(record = {}) {
|
|
|
+ queryDept({ nature: this.DictCache.VALUE.SYS_DEPT_NATURE.JITUAN }).then((res) => {
|
|
|
+ this.areaList = res.data
|
|
|
+ })
|
|
|
+ fetchSbTypeTree().then((res) => {
|
|
|
+ this.treeData = res.data
|
|
|
+ })
|
|
|
+ },
|
|
|
+ onSelect: function (selectedKeys, info) {
|
|
|
+ this.selectedKeys = selectedKeys
|
|
|
+ this.queryParam.typeId = selectedKeys.length > 0 ? selectedKeys[0] : ''
|
|
|
+ this.$refs.table.refresh(true)
|
|
|
+ },
|
|
|
+ onExpand(expandedKeys) {
|
|
|
+ this.expandedKeys = expandedKeys
|
|
|
+ this.autoExpandParent = false
|
|
|
+ },
|
|
|
+ handleRepairFilePreview(record) {
|
|
|
+ console.log(record, 87878)
|
|
|
+ this.$refs.previewModal.base(record.id, this.DictCache.VALUE.FILE_MODULE.SBINFO_REPAIRFILE)
|
|
|
+ },
|
|
|
+ handleRepairFileDownload(record) {
|
|
|
+ // this.$refs.downloadModal.base(record.id, this.DictCache.VALUE.FILE_MODULE.SBINFO_REPAIRFILE, getDownloadUrl(record.id))
|
|
|
+ },
|
|
|
+ handleUseFilePreview(record) {
|
|
|
+ this.$refs.previewModal.base(record.id, this.DictCache.VALUE.FILE_MODULE.SBINFO_USEFILE)
|
|
|
+ },
|
|
|
+ handleUseFileDownload(record) {
|
|
|
+ // this.$refs.downloadModal.base(record.id, this.DictCache.VALUE.FILE_MODULE.SBINFO_USEFILE, getDownloadUrl(record.id))
|
|
|
+ },
|
|
|
+ handleCheckFilePreview(record) {
|
|
|
+ this.$refs.previewModal.base(record.id, this.DictCache.VALUE.FILE_MODULE.SBINFO_RECHECKFILE)
|
|
|
+ },
|
|
|
+ handleCheckFileDownload(record) {
|
|
|
+ // this.$refs.downloadModal.base(record.id, this.DictCache.VALUE.FILE_MODULE.SBINFO_RECHECKFILE, getDownloadUrl(record.id))
|
|
|
+ },
|
|
|
+ doImport() {
|
|
|
+ this.$refs.importModal.base(null, null)
|
|
|
+ },
|
|
|
+ doImportForUpdate() {
|
|
|
+ this.$refs.importModalUpdate.base(null, null)
|
|
|
+ },
|
|
|
+ },
|
|
|
+}
|
|
|
+</script>
|