This commit is contained in:
bb_pan 2025-12-29 17:27:48 +08:00
parent ca92d0be29
commit f9bf1e9185
4 changed files with 185 additions and 16 deletions

View File

@ -36,6 +36,15 @@ export function getSltInfo(params){
}) })
} }
// 协议书详情
export function getSltAgreementBookApi(data){
return request({
url: '/material/slt_agreement_info/getSltAgreementBook',
method: 'post',
data: data
})
}
// 查询材料站结算待审核详情(仅需 sltApplyCode // 查询材料站结算待审核详情(仅需 sltApplyCode
export function getClzSettledInfo(sltApplyCode) { export function getClzSettledInfo(sltApplyCode) {
return request({ return request({

View File

@ -134,6 +134,7 @@
<!-- <el-button type="primary" plain size="mini" @click="openPrintDialog(scope.row)">协议书</el-button> --> <!-- <el-button type="primary" plain size="mini" @click="openPrintDialog(scope.row)">协议书</el-button> -->
<el-button type="primary" plain size="mini" @click="handleDetails(scope.row)">维修单查看</el-button> <el-button type="primary" plain size="mini" @click="handleDetails(scope.row)">维修单查看</el-button>
<el-button type="primary" plain size="mini" @click="handleTransfer(scope.row)">直转查看</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -360,6 +361,84 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-dialog> </el-dialog>
<!-- 直转查看 -->
<el-dialog :visible.sync="transferView" width="80%" append-to-body>
<el-form :model="transferQuery" size="small" inline @submit.native.prevent>
<el-form-item label="关键字" prop="keyWord">
<el-input
v-model="transferQuery.keyWord"
placeholder="请输入关键字"
clearable
style="width: 240px"
/>
</el-form-item>
<!-- 表单按钮 -->
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="getTransferList">查询</el-button>
<el-button icon="el-icon-refresh" @click="handleTransferReset">重置</el-button>
</el-form-item>
</el-form>
<el-table
:data="transferList"
highlight-current-row
style="width: 100%"
v-loading="isLoading"
:max-height="650"
>
<el-table-column
type="index"
width="55"
label="序号"
align="center"
:index="index => (transferQuery.pageNum - 1) * transferQuery.pageSize + index + 1"
/>
<el-table-column
v-for="(column, index) in transferColumns"
:show-overflow-tooltip="column.showTooltip"
:key="column.prop"
:label="column.label"
:prop="column.prop"
:width="column.width"
align="center"
>
<!-- 插槽 -->
<template v-slot="{ row }" v-if="column.prop == 'status'">
<span>
<el-tag v-if="row.status == '0'" type="warning" size="mini" style="margin-right: 5px">待审核</el-tag>
<el-tag v-else-if="row.status == '1'" size="mini" style="margin-right: 5px">审核中</el-tag>
<el-tag v-else-if="row.status == '2'" type="success" size="mini" style="margin-right: 5px">
已完成
</el-tag>
<el-tag v-else-if="row.status == '3'" type="danger" size="mini" style="margin-right: 5px">
已驳回
</el-tag>
</span>
</template>
</el-table-column>
<!-- 操作 -->
<el-table-column label="操作" align="center" width="180">
<template v-slot="{ row }">
<el-button type="primary" size="mini" @click="handleTransferView(row)">
查看
</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<pagination
v-show="transferTotal > 0"
:total="transferTotal"
:page.sync="transferQuery.pageNum"
:limit.sync="transferQuery.pageSize"
@pagination="getTransferList"
/>
<div slot="footer" class="dialog-footer" style="text-align: right">
<el-button @click="transferView = false"> </el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
@ -384,6 +463,8 @@ import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css' import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import printJS from 'print-js' import printJS from 'print-js'
import ExcelJS from 'exceljs' import ExcelJS from 'exceljs'
import { getReceiveList } from '@/api/business/index'
import { import {
Document, Document,
Packer, Packer,
@ -494,6 +575,27 @@ export default {
{ label: '管理模式', prop: 'manageType' }, { label: '管理模式', prop: 'manageType' },
], ],
repairViewList: [], repairViewList: [],
transferView: false,
transferQuery: {
pageNum: 1,
pageSize: 10,
keyWord: '',
auditProId: '',
auditUnitId: '',
},
transferColumns: [
{ label: '申请时间', prop: 'createTime', width: '100' },
{ label: '申请人', prop: 'createName', width: '90', showTooltip: true },
{ label: '转出单位', prop: 'backUnitName' },
{ label: '转出工程', prop: 'backProName' },
{ label: '转入单位', prop: 'leaseUnitName' },
{ label: '转入工程', prop: 'leaseProName' },
{ label: '物资类型', prop: 'typeName', showTooltip: true },
{ label: '状态', prop: 'status', width: '80' },
{ label: '业务联单', prop: 'businessCode', showTooltip: true },
],
transferList: [],
transferTotal: 0,
} }
}, },
// updated() { // updated() {
@ -691,6 +793,49 @@ export default {
this.repairDialogVisible = true this.repairDialogVisible = true
this.getRepairList() this.getRepairList()
}, },
handleTransfer(row) {
this.transferQuery.keyWord = ''
this.transferQuery.pageNum = 1
this.transferQuery.pageSize = 10
this.transferQuery.auditProId = row.projectId
this.transferQuery.auditUnitId = row.unitId
this.transferView = true
this.getTransferList(row)
},
async getTransferList(row) {
try {
this.isLoading = true
const res = await getReceiveList(this.transferQuery)
console.log('🚀 ~ 获取列表 ~ res:', res)
this.transferList = res.rows || []
this.transferTotal = res.total || 0
} catch (error) {
console.log('🚀 ~ 获取列表 ~ error:', error)
this.transferList = []
this.transferTotal = 0
} finally {
this.isLoading = false
}
},
handleTransferReset() {
this.transferQuery.keyWord = ''
this.transferQuery.pageNum = 1
this.transferQuery.pageSize = 10
this.getTransferList()
},
handleTransferView(row) {
this.transferView = false
this.$router.push({
name: 'direct-rotation-apply',
query: {
id: row.id,
flowId: row.flowId,
taskId: row.id,
type: 'detail',
nodeId: row.nodeId
}
})
},
async getRepairList() { async getRepairList() {
try { try {
this.isLoading = true this.isLoading = true

View File

@ -51,11 +51,11 @@
<span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span> <span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="标准箱类型" align="center" prop="boxType" show-overflow-tooltip> <!-- <el-table-column label="标准箱类型" align="center" prop="boxType" show-overflow-tooltip>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.qr_box_type" :value="scope.row.boxType"/> <dict-tag :options="dict.type.qr_box_type" :value="scope.row.boxType"/>
</template> </template>
</el-table-column> </el-table-column> -->
<el-table-column label="标准箱名称" align="center" prop="boxName" show-overflow-tooltip/> <el-table-column label="标准箱名称" align="center" prop="boxName" show-overflow-tooltip/>
<el-table-column label="标准箱编码" align="center" prop="boxCode" show-overflow-tooltip/> <el-table-column label="标准箱编码" align="center" prop="boxCode" show-overflow-tooltip/>
<el-table-column label="标准箱机具数" align="center" prop="devNum" show-overflow-tooltip/> <el-table-column label="标准箱机具数" align="center" prop="devNum" show-overflow-tooltip/>
@ -164,7 +164,7 @@ export default {
endTime: '', endTime: '',
keyWord: '', keyWord: '',
startTime: '', startTime: '',
// taskStatus: 3, boxType: 1
}, },
open:false, open:false,
queryDialogForm:{ queryDialogForm:{

View File

@ -39,6 +39,12 @@
<el-button type="success" icon="el-icon-plus" size="mini" @click="handleAdd">新增</el-button> <el-button type="success" icon="el-icon-plus" size="mini" @click="handleAdd">新增</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport">导出数据</el-button>
</el-col>
</el-row>
<el-table border :data="tableList" v-loading="loading" @selection-change="handleSelectionChange"> <el-table border :data="tableList" v-loading="loading" @selection-change="handleSelectionChange">
<el-table-column label="序号" align="center" type="index"> <el-table-column label="序号" align="center" type="index">
<template slot-scope="scope"> <template slot-scope="scope">
@ -121,12 +127,7 @@
</template> </template>
<script> <script>
import { import { getQrCodeBoxListApi, addQrCodeBoxApi, delQrCodeBoxApi, getNumListApi } from '@/api/ma/standardBox'
getQrCodeBoxListApi,
addQrCodeBoxApi,
delQrCodeBoxApi,
getNumListApi
} from '@/api/ma/standardBox'
import QRCode from 'qrcodejs2' import QRCode from 'qrcodejs2'
export default { export default {
@ -148,7 +149,7 @@ export default {
endTime: '', endTime: '',
keyWord: '', keyWord: '',
startTime: '', startTime: '',
boxType: 2, boxType: 2
}, },
open: false, open: false,
queryDialogForm: { queryDialogForm: {
@ -357,12 +358,26 @@ export default {
}, },
// //
handleExport() { handleExport() {
console.log('数据导出') try {
// this.download( const formatTime = date => {
// "/material/purchase_check_info/export", const year = date.getFullYear()
// { ...this.queryParams}, const month = String(date.getMonth() + 1).padStart(2, '0')
// `_${new Date().getTime()}.xlsx` const day = String(date.getDate()).padStart(2, '0')
// ); const hours = String(date.getHours()).padStart(2, '0')
const minutes = String(date.getMinutes()).padStart(2, '0')
const seconds = String(date.getSeconds()).padStart(2, '0')
return `${year}${month}${day}_${hours}${minutes}${seconds}`
}
const currentTime = formatTime(new Date())
let fileName = `立体库标准箱_${currentTime}.xLsx`
let url = '/material/bm_qrcode_box/exportDetails'
const params = { ...this.queryParams }
console.log('🚀 ~ 导出 ~ params:', params)
this.download(url, params, fileName)
} catch (error) {
console.log('导出数据失败', error)
}
}, },
// //
handleSelectionChange(list) { handleSelectionChange(list) {