问题修复

This commit is contained in:
hayu 2025-07-24 00:51:26 +08:00
parent c4b373e07d
commit 3eecdcb1f2
4 changed files with 420 additions and 9 deletions

View File

@ -70,4 +70,24 @@ export function getAuthInfo(data) {
method: 'POST',
data
})
}
}
// 获取装卸单列表
export function getHandlingOrderList(query) {
return request({
url: '/material/back_apply_info/getHandlingOrderList',
method: 'get',
params: query
})
}
export function uploadSort(data) {
return request({
url: '/material/back_apply_info/uploadSort',
method: 'post',
data: data
})
}

View File

@ -0,0 +1,389 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<!-- <el-form-item label="申请时间">-->
<!-- <el-date-picker-->
<!-- v-model="queryParams.time"-->
<!-- type="daterange"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- style="width: 240px"-->
<!-- ></el-date-picker>-->
<!-- </el-form-item>-->
<el-form-item label="关键字" prop="keyWord">
<el-input
v-model="queryParams.keyWord"
placeholder="请输入关键字"
clearable
maxlength="50"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-table
border
:data="tableList"
v-loading="loading"
ref="multipleTable"
@selection-change="handleSelectionChange"
row-key="id"
>
<el-table-column label="序号" width="60" align="center" type="index">
<template slot-scope="scope">
<span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column label="工程名称" align="center" prop="proName" show-overflow-tooltip />
<el-table-column label="车牌号" align="center" prop="carCode" show-overflow-tooltip />
<el-table-column label="联系人" align="center" prop="linkMan" show-overflow-tooltip />
<el-table-column label="联系电话" align="center" prop="phone" show-overflow-tooltip />
<el-table-column label="保存日期" align="center" prop="reserveDate" show-overflow-tooltip />
<el-table-column label="排号" align="center" prop="sort" show-overflow-tooltip />
<el-table-column label="操作" align="center" width="150">
<template slot-scope="{ row }">
<el-button size="mini" v-if="row.sort===null" type="success" @click="handleView(row)">排号</el-button>
</template>
</el-table-column>
</el-table>
<pagination
:total="total"
v-show="total > 0"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 审核排号 -->
<el-dialog title="审核排号" :visible.sync="viewDialogVisible" width="500px" append-to-body>
<el-form :model="viewForm" label-width="60px" class="view-dialog-form">
<el-form-item label="排号:">
<!-- 限制只能输入数字并禁止输入其他字符 -->
<el-input
v-model.number="viewForm.sort"
@input="handleSortInput"
placeholder="请输入数字"
></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="viewDialogVisible = false">关闭</el-button>
<!-- 使用 type="primary" 并通过 style 设置背景颜色 -->
<el-button
type="primary"
@click="confirmAction"
style="background-color: #409EFF; color: white;"
>
确认
</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import {
getAuthDetail,
getLeasePublishAuthList,
getTeamList,
sumbitAuthData,
uploadIdCard,
getAuthInfo, getHandlingOrderList, uploadSort
} from '@/api/materialsStation/auth'
import { getToken } from '@/utils/auth'
import { validateIdCard } from '@/utils/bonus'
import vueEasyPrint from 'vue-easy-print'
import {acceptInnerVerifyer} from "@/api/purchase/goodsAccept";
export default {
components: { vueEasyPrint },
name: 'IdCardUploadComponent',
data() {
return {
//
single: true,
//
multiple: true,
total: 0, //
loading: false, //
showSearch: true, //
tableList: [], //
queryTime: [], //
selectList: [], //
url: null,
fileName: null,
//
queryParams: {
pageNum: 1,
pageSize: 10,
time: null,
keyWord: '',
taskStatus: ''
},
//
open: false,
dialogForm: {
maTypeName: null,
maTypeId: null,
typeId: null,
supplierId: null,
qrNum: null,
remark: null
},
fileList: [],
uploadList: [],
titles: '',
authDialogVisible: false,
currentRow: null, //
materialReceivers: [],
viewDialogVisible: false,
viewForm: {
sort: null,
id: null // id
},
pdfPreviewVisible: false,
pdfViewerUrl: '',
isEditMode: false, //
dialogTitle: '新增授权', //
isBatchMode: false, //
selectedItems: [], //
authorizeVisible: false, //
authorizeData: {
leaseUnit: '',
leaseProject: '',
detailsList: [],
userName: '',
createTime: ''
}
}
},
created() {
this.getList()
},
watch: {
//
authDialogVisible(newVal) {
if (!newVal) {
//
this.resetUploadState()
this.$refs.authFormRef.resetFields() //
}
}
},
methods: {
//
handleSortInput(value) {
this.viewForm.sort = value.replace(/[^0-9]/g, '');
},
//
selectable(row) {
return row.authId === null
},
//
getList() {
this.loading = true
const params = {
keyWord: this.queryParams.keyWord,
// startTime: this.queryParams.time && this.queryParams.time[0],
// endTime: this.queryParams.time && this.queryParams.time[1],
pageSize: this.queryParams.pageSize,
pageNum: this.queryParams.pageNum
}
getHandlingOrderList(params).then(response => {
this.tableList = response.data.rows
this.total = response.data.total
this.loading = false
// -
this.$nextTick(() => {
this.selectList = []
this.selectedItems = [] //
this.$refs.multipleTable.clearSelection()
})
})
},
confirmAction() {
const param = {
id: this.viewForm.id,
sort: this.viewForm.sort
}
uploadSort(param).then(response => {
if (response.code === 200) {
this.$modal.msgSuccess(response.msg)
this.viewDialogVisible = false
this.getList() //
} else {
this.$modal.msgError(response.msg)
}
})
},
//
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
//
resetQuery() {
this.queryParams.time = []
this.resetForm('queryForm')
this.queryParams.keyWord = ''
this.queryParams.taskStatus = ''
this.handleQuery()
},
//
handleView(row) {
this.viewDialogVisible = true
this.viewForm.sort = row.sort //
this.viewForm.id = row.id // id
},
//
formatTime(time) {
const date = new Date(time)
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
return `${year}${month}${day}`
},
}
}
</script>
<style lang="scss" scoped>
/* 批量授权标签容器 */
.selected-items-container {
max-height: 150px;
overflow-y: auto;
border: 1px solid #ebeef5;
padding: 10px;
border-radius: 4px;
margin-top: 10px;
}
/* 批量授权标签 */
.selected-item-tag {
margin-right: 10px;
margin-bottom: 5px;
}
/* 批量授权标题 */
.batch-title {
font-size: 16px;
margin-bottom: 10px;
color: #333;
}
.el-upload.is-disabled {
opacity: 0.7;
cursor: not-allowed;
}
/* 弹窗标题样式 */
.el-dialog__header {
border-bottom: 1px solid #eee;
}
.el-dialog__title {
font-size: 18px;
font-weight: bold;
color: #333;
}
/* 查看对话框样式 */
.view-dialog-form {
margin-left: 0px;
}
.id-photo-view {
display: flex;
justify-content: center;
align-items: center;
}
.file-size {
color: #999;
font-size: 12px;
margin-left: 5px;
}
/* 图片预览模态框样式 */
.image-preview-modal {
width: 80%;
max-width: 800px;
}
.image-preview-modal .el-message-box__content {
display: flex;
justify-content: center;
padding: 20px;
}
/* PDF预览对话框样式 */
.pdf-preview-dialog .el-dialog__body {
padding: 10px;
}
/* 调整表单整体左移 */
.auth-dialog-form {
margin-left: 0px;
}
/* 调整领料人列表标签位置 */
.receiver-list-label {
margin-left: -10px;
}
/* 调整表格位置 */
.receiver-table-item {
margin-left: -30px;
}
/* 表格样式调整 */
.receiver-table {
margin-left: -30px;
width: calc(100% + 30px);
}
.id-photo-upload {
display: flex;
justify-content: space-around;
gap: 10px;
}
.upload-item {
display: flex;
align-items: center;
gap: 5px;
}
.upload-status {
color: #67c23a;
font-weight: bold;
font-size: 14px;
}
.uploadImg {
padding-top: 20px;
display: flex;
align-items: center;
justify-content: center;
}
.boxCode {
margin-top: 10px;
padding-bottom: 20px;
font-size: 18px;
}
::v-deep.el-table .fixed-width .el-button--mini {
width: 60px !important;
margin-bottom: 10px;
}
</style>

View File

@ -10,6 +10,7 @@
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 240px"
:clearable="false"
></el-date-picker>
</el-form-item>

View File

@ -17,6 +17,7 @@
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 240px"
:clearable="false"
></el-date-picker>
</el-form-item>
@ -62,7 +63,7 @@
<span>{{ (queryParams.pageNum - 1) * queryParams.pageSize + scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column align="center" width="100" label="申请时间" prop="createTime" />
<el-table-column align="center" width="100" label="发布时间" prop="releaseTime" />
<el-table-column label="申请人" width="100" align="center" prop="createBy" :show-overflow-tooltip="true" />
<el-table-column
label="实施单位"
@ -71,13 +72,13 @@
width="150px"
:show-overflow-tooltip="true"
/>
<el-table-column
label="合同主体"
align="center"
prop="contractPart"
width="150px"
:show-overflow-tooltip="true"
/>
<!-- <el-table-column-->
<!-- label="合同主体"-->
<!-- align="center"-->
<!-- prop="contractPart"-->
<!-- width="150px"-->
<!-- :show-overflow-tooltip="true"-->
<!-- />-->
<el-table-column
label="租赁单位"
align="center"