盘点报废+退料接收优化
This commit is contained in:
parent
5f5ba22e0d
commit
b7f45c8aed
|
|
@ -1,5 +1,5 @@
|
|||
module.exports = {
|
||||
tabWidth: 4,
|
||||
tabWidth: 2,
|
||||
semi: false,
|
||||
vueIndentScriptAndStyle: false,
|
||||
singleQuote: true,
|
||||
|
|
|
|||
|
|
@ -0,0 +1,77 @@
|
|||
import request from '@/utils/request';
|
||||
|
||||
//
|
||||
//获取机具类型树
|
||||
export function equipmentTypeTree(data) {
|
||||
return request({
|
||||
url: '/material/select/getDeviceTypeTree',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
//获取设备编号列表
|
||||
export function getMachineListByCode(query) {
|
||||
return request({
|
||||
url: '/material/base/machine/getMachineList',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
//新增盘带报废
|
||||
export function addScrapInfo(data) {
|
||||
return request({
|
||||
url: '/material/scrap/addList ',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
//获取盘带报废列表
|
||||
export function getInventoryList(query) {
|
||||
return request({
|
||||
url: '/material/scrap/inventoryList',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
//获取盘带报废详情
|
||||
export function getScrapInfo(query) {
|
||||
return request({
|
||||
url: '/material/scrap/getDetailsList',
|
||||
method: 'get',
|
||||
params: query
|
||||
});
|
||||
}
|
||||
|
||||
//修改盘带报废
|
||||
export function editScrapInfo(data) {
|
||||
return request({
|
||||
url: '/material/scrap/updateList ',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
//一级页面删除盘带报废
|
||||
export function applyRemove(data) {
|
||||
return request({
|
||||
url: '/material/scrap/delete ',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
//盘点报废通过与驳回
|
||||
export function inventoryPass(data) {
|
||||
return request({
|
||||
url: '/material/scrap/inventoryApprove',
|
||||
method: 'post',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 9.0 KiB |
|
|
@ -0,0 +1,37 @@
|
|||
// 下载blob文件
|
||||
export const downloadFile = ({ fileData, fileType, fileName }) => {
|
||||
const blob = new Blob([fileData], {
|
||||
type: fileType
|
||||
});
|
||||
const link = document.createElement('a');
|
||||
link.href = URL.createObjectURL(blob);
|
||||
link.download = fileName;
|
||||
link.style.display = 'none';
|
||||
document.body.appendChild(link);
|
||||
link.click();
|
||||
URL.revokeObjectURL(link.href);
|
||||
document.body.removeChild(link);
|
||||
};
|
||||
|
||||
// 通用a链接下载
|
||||
export const downloadFileByUrl = (url) => {
|
||||
const link = document.createElement('a');
|
||||
link.href = url; // 设置文件 URL
|
||||
link.download = ''; // 提供下载提示
|
||||
document.body.appendChild(link); // 将链接添加到 DOM
|
||||
link.click(); // 模拟点击下载
|
||||
document.body.removeChild(link); // 下载后移除链接
|
||||
};
|
||||
|
||||
// pdf、doc、docx等文件下载
|
||||
export const downloadFileData = ({ fileName, fileUrl }) => {
|
||||
const link = document.createElement('a');
|
||||
link.setAttribute('download', '');
|
||||
link.style.display = 'none';
|
||||
link.href = fileUrl;
|
||||
link.download = fileName;
|
||||
document.body.appendChild(link);
|
||||
link.click();
|
||||
// URL.revokeObjectURL(link.href)
|
||||
document.body.removeChild(link);
|
||||
};
|
||||
|
|
@ -107,6 +107,17 @@
|
|||
}}</span>
|
||||
</template> -->
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="工程名称"
|
||||
align="center"
|
||||
width="80"
|
||||
prop="lotName"
|
||||
show-overflow-tooltip
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{ lotName }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="类型名称"
|
||||
align="center"
|
||||
|
|
@ -748,6 +759,9 @@ export default {
|
|||
rejectTaskId: {
|
||||
type: [String, Number],
|
||||
},
|
||||
lotName: {
|
||||
type: String,
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
|
|
@ -984,7 +998,8 @@ export default {
|
|||
if (response.code == 200) {
|
||||
this.$modal.msgSuccess('操作成功')
|
||||
// this.back()
|
||||
this.$emit('goBackPage')
|
||||
// this.$emit('goBackPage')
|
||||
this.getList()
|
||||
}
|
||||
})
|
||||
},
|
||||
|
|
|
|||
|
|
@ -469,7 +469,7 @@ export default {
|
|||
// taskId: row.taskId,
|
||||
// },
|
||||
// })
|
||||
this.$emit('receiveReturn', row.id, row.taskId)
|
||||
this.$emit('receiveReturn', row)
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@
|
|||
:isView="isView"
|
||||
:rejectId="rejectId"
|
||||
:rejectTaskId="rejectTaskId"
|
||||
:lotName="lotName"
|
||||
@receiveView="receiveView"
|
||||
@receiveReturn="receiveReturn"
|
||||
@goBackPage="goBack"
|
||||
|
|
@ -36,6 +37,7 @@ export default {
|
|||
rejectId: '',
|
||||
rejectTaskId: '',
|
||||
isView: false,
|
||||
lotName: '', // 退料工程
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
|
|
@ -47,9 +49,10 @@ export default {
|
|||
this.isShowComponent = 'HandlePage'
|
||||
},
|
||||
// 退料操作
|
||||
receiveReturn(id, taskId) {
|
||||
this.rejectId = id
|
||||
this.rejectTaskId = taskId
|
||||
receiveReturn(row) {
|
||||
this.rejectId = row.id
|
||||
this.rejectTaskId = row.taskId
|
||||
this.lotName = row.lotName
|
||||
this.isView = false
|
||||
this.pageContent = '退料处理'
|
||||
this.isShowComponent = 'HandlePage'
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,424 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-form
|
||||
:model="queryParams"
|
||||
ref="queryForm"
|
||||
size="small"
|
||||
:inline="true"
|
||||
v-show="showSearch"
|
||||
label-width="100px"
|
||||
>
|
||||
<el-form-item>
|
||||
<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 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 prop="taskStatus">
|
||||
<el-select
|
||||
v-model="queryParams.taskStatus"
|
||||
placeholder="请选择状态"
|
||||
clearable
|
||||
filterable
|
||||
style="width: 240px"
|
||||
>
|
||||
<el-option label="进行中" value="0"></el-option>
|
||||
<el-option label="已通过" value="1"></el-option>
|
||||
<el-option label="已驳回" value="2"></el-option>
|
||||
</el-select>
|
||||
</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-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="primary"
|
||||
plain
|
||||
icon="el-icon-plus"
|
||||
size="mini"
|
||||
@click="handleAdd"
|
||||
>新增报废
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="success"
|
||||
@click="batchPass"
|
||||
icon="el-icon-check"
|
||||
size="mini"
|
||||
:disabled="multiple"
|
||||
>通过</el-button
|
||||
>
|
||||
</el-col>
|
||||
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="danger"
|
||||
@click="batchReject"
|
||||
icon="el-icon-close"
|
||||
size="mini"
|
||||
:disabled="multiple"
|
||||
>驳回</el-button
|
||||
>
|
||||
</el-col>
|
||||
<right-toolbar
|
||||
:showSearch.sync="showSearch"
|
||||
@queryTable="getList"
|
||||
></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table
|
||||
v-loading="loading"
|
||||
:data="typeList"
|
||||
row-key="id"
|
||||
@selection-change="handleSelectionChange"
|
||||
border
|
||||
>
|
||||
<el-table-column
|
||||
type="selection"
|
||||
width="55"
|
||||
align="center"
|
||||
:selectable="selectable"
|
||||
/>
|
||||
<el-table-column width="60" align="center" label="序号" 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="scrapCode"
|
||||
width="160"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="物资类型"
|
||||
align="center"
|
||||
prop="type"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="提交人"
|
||||
align="center"
|
||||
prop="createName"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="提交时间"
|
||||
align="center"
|
||||
prop="createTime"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="状态"
|
||||
align="center"
|
||||
prop="taskStatus"
|
||||
:show-overflow-tooltip="true"
|
||||
width="150"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.taskStatus == 0">进行中</span>
|
||||
<span v-if="scope.row.taskStatus == 1">已通过</span>
|
||||
<span v-if="scope.row.taskStatus == 2">已驳回</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
size="mini"
|
||||
style="margin-bottom: 10px"
|
||||
type="normal"
|
||||
@click="handleView(scope.row)"
|
||||
>查看</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
style="margin-bottom: 10px"
|
||||
type="primary"
|
||||
@click="handleUpdate(scope.row)"
|
||||
v-if="scope.row.taskStatus != 1"
|
||||
>编辑</el-button
|
||||
>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="danger"
|
||||
@click="handleDeletePurchase(scope.row)"
|
||||
v-if="scope.row.taskStatus != 1"
|
||||
>删除</el-button
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination
|
||||
v-show="total > 0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
getInventoryList,
|
||||
applyRemove,
|
||||
inventoryPass,
|
||||
} from '@/api/repairTest/inventoryScrap'
|
||||
|
||||
export default {
|
||||
name: 'Home',
|
||||
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
loadingTwo: true,
|
||||
updateTime: '',
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
showPeople: false,
|
||||
peopleOpen: false,
|
||||
// 总条数
|
||||
total: 0,
|
||||
totalTwo: 0,
|
||||
//搜索下拉数据
|
||||
typesList: [],
|
||||
modelList: [],
|
||||
// 字典表格数据
|
||||
typeList: [],
|
||||
getListPeople: [],
|
||||
configUserList: [],
|
||||
phoneNumbers: [],
|
||||
|
||||
userList: [],
|
||||
// 弹出层标题
|
||||
title: '',
|
||||
// 日期范围
|
||||
dateRange: [],
|
||||
statusDataRange: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
time: null, //申请时间
|
||||
keyword: '',
|
||||
taskStatus: null, //申请时间
|
||||
},
|
||||
form: {
|
||||
remark: '',
|
||||
},
|
||||
open: false,
|
||||
|
||||
checkDataInfo: {},
|
||||
// 供应商
|
||||
supplierStr: '',
|
||||
|
||||
// 领料任务详情数据
|
||||
leaseApplyData: {},
|
||||
sendTemp: [],
|
||||
// 编码管理查看弹窗
|
||||
showView: false,
|
||||
titleView: '',
|
||||
getListViewInfo: [],
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
// this.sendTemp = [];
|
||||
this.ids = selection.map((item) => item.taskId)
|
||||
// selection.forEach((item) => {
|
||||
// this.sendTemp.push({ id: item.id, taskId: item.taskId });
|
||||
// });
|
||||
this.single = selection.length != 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
|
||||
//是否可用勾选框
|
||||
selectable(row) {
|
||||
if (row.taskStatus == 0) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
},
|
||||
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,
|
||||
taskStatus: this.queryParams.taskStatus,
|
||||
}
|
||||
getInventoryList(params)
|
||||
.then((response) => {
|
||||
this.typeList = response.data.rows
|
||||
this.total = response.data.total
|
||||
this.loading = false
|
||||
})
|
||||
.catch(() => {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.queryParams.time = []
|
||||
this.resetForm('queryForm')
|
||||
this.queryParams.keyWord = ''
|
||||
this.handleQuery()
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.$emit('addTools')
|
||||
},
|
||||
/** 查看按钮操作 */
|
||||
handleView(row) {
|
||||
this.$emit('queryTools', row.taskId)
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.$emit('editTools', row.taskId, row.id)
|
||||
},
|
||||
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
taskId: '',
|
||||
remark: '',
|
||||
}
|
||||
this.resetForm('form')
|
||||
},
|
||||
|
||||
// 关闭弹窗并刷新页面
|
||||
closeDialogAndRefresh() {
|
||||
this.openPrint = false
|
||||
},
|
||||
|
||||
codeInfo(row) {
|
||||
this.showView = true
|
||||
this.titleView = '查看'
|
||||
this.getListViewInfo = row.maCodeVoList
|
||||
},
|
||||
|
||||
/** 删除按钮操作 */
|
||||
handleDeletePurchase(row) {
|
||||
this.$modal
|
||||
.confirm('是否确认删除所选择的数据项?')
|
||||
.then(function () {
|
||||
return applyRemove({ taskId: row.taskId })
|
||||
})
|
||||
.then(() => {
|
||||
this.getList()
|
||||
this.$modal.msgSuccess('删除成功')
|
||||
})
|
||||
.catch(() => {})
|
||||
},
|
||||
|
||||
//通过
|
||||
batchPass() {
|
||||
if (this.ids == 0) {
|
||||
this.$alert('未勾选数据', '提示', {
|
||||
type: 'warning',
|
||||
confirmButtonText: '确定',
|
||||
})
|
||||
return
|
||||
}
|
||||
inventoryPass({ idList: this.ids, status: 1 }).then((response) => {
|
||||
this.$modal.msgSuccess('通过成功')
|
||||
this.ids = []
|
||||
this.getList()
|
||||
this.$refs.multipleTable.clearSelection()
|
||||
})
|
||||
},
|
||||
|
||||
//驳回
|
||||
batchReject() {
|
||||
if (this.ids == 0) {
|
||||
this.$alert('未勾选数据', '提示', {
|
||||
type: 'warning',
|
||||
confirmButtonText: '确定',
|
||||
})
|
||||
return
|
||||
}
|
||||
inventoryPass({ idList: this.ids, status: 2 }).then((response) => {
|
||||
this.$modal.msgSuccess('驳回成功')
|
||||
this.ids = []
|
||||
this.getList()
|
||||
this.$refs.multipleTable.clearSelection()
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
// ::v-deep.el-table .fixed-width .el-button--mini {
|
||||
// width: 70px !important;
|
||||
// margin-bottom: 10px;
|
||||
// }
|
||||
|
||||
.image-type {
|
||||
/* 旋转图片 */
|
||||
transform: rotate(-90deg);
|
||||
/* 确保旋转后的图片不会超出容器 */
|
||||
max-width: 100%;
|
||||
/* 保持图片的宽高比 */
|
||||
width: 40px;
|
||||
height: 100px;
|
||||
}
|
||||
.sign-type {
|
||||
width: 100px;
|
||||
height: 40px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -0,0 +1,347 @@
|
|||
<template>
|
||||
<div>
|
||||
<el-form
|
||||
:model="maForm"
|
||||
ref="maForm"
|
||||
size="small"
|
||||
:inline="true"
|
||||
label-width="120px"
|
||||
>
|
||||
<el-form-item prop="keyword">
|
||||
<el-input
|
||||
v-model="maForm.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-item label="附件" prop="bmFileInfos">
|
||||
<el-upload
|
||||
:action="uploadUrl"
|
||||
:file-list="maForm.bmFileInfos"
|
||||
:show-file-list="true"
|
||||
:auto-upload="true"
|
||||
:key="uploadKey"
|
||||
:limit="5"
|
||||
list-type="picture-card"
|
||||
accept=".png, .jpg, .jpeg, .pdf"
|
||||
:class="{ disabledFbs: uploadDisabled }"
|
||||
:on-preview="picturePreviewFbs"
|
||||
>
|
||||
<!-- 文件格式下载,图片格式预览 -->
|
||||
<div slot="file" slot-scope="{ file }">
|
||||
<img
|
||||
v-if="isImage(file)"
|
||||
class="el-upload-list__item-thumbnail"
|
||||
:src="file.url"
|
||||
alt=""
|
||||
/>
|
||||
<div v-else class="picture-card-container">
|
||||
<img class="picture-card" :src="urlTemp" alt="" />
|
||||
<p class="file-name">{{ file.name }}</p>
|
||||
</div>
|
||||
<span class="el-upload-list__item-actions">
|
||||
<span
|
||||
v-if="updataIf(file)"
|
||||
class="el-upload-list__item-delete"
|
||||
@click="handleDownload(file)"
|
||||
>
|
||||
<i class="el-icon-download" />
|
||||
</span>
|
||||
<span
|
||||
v-else
|
||||
class="el-upload-list__item-preview"
|
||||
@click="picturePreviewFbs(file)"
|
||||
>
|
||||
<i class="el-icon-zoom-in" />
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
<i class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</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 v-loading="loading" :data="equipmentList">
|
||||
<el-table-column label="序号" align="center" type="index" />
|
||||
<el-table-column
|
||||
label="物资类型"
|
||||
align="center"
|
||||
prop="machineTypeName"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="规格型号"
|
||||
align="center"
|
||||
prop="specificationType"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="计量单位"
|
||||
align="center"
|
||||
prop="unitName"
|
||||
:show-overflow-tooltip="true"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="当前库存"
|
||||
align="center"
|
||||
prop="storageNum"
|
||||
:show-overflow-tooltip="true"
|
||||
>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="报废数量"
|
||||
align="center"
|
||||
prop="scrapNum"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="设备编码"
|
||||
align="center"
|
||||
prop="maCode"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
<el-table-column
|
||||
label="报废原因"
|
||||
align="center"
|
||||
prop="scrapReason"
|
||||
:show-overflow-tooltip="true"
|
||||
/>
|
||||
</el-table>
|
||||
<!-- 图片查看弹窗 -->
|
||||
<el-dialog :visible.sync="dialogVisible" width="600px" height="600px">
|
||||
<img width="100%" height="500px" :src="dialogImageUrl" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getScrapInfo } from '@/api/repairTest/inventoryScrap'
|
||||
import { downloadFile, downloadFileData } from '@/utils/download'
|
||||
import { getToken } from '@/utils/auth'
|
||||
export default {
|
||||
name: 'QueryTools',
|
||||
components: {
|
||||
// UploadImg,
|
||||
},
|
||||
props: {
|
||||
isView: {
|
||||
type: Boolean,
|
||||
default: () => {
|
||||
return false
|
||||
},
|
||||
},
|
||||
queryTaskId: {
|
||||
type: [String, Number],
|
||||
default: () => {
|
||||
return ''
|
||||
},
|
||||
},
|
||||
queryId: {
|
||||
type: [String, Number],
|
||||
default: () => {
|
||||
return ''
|
||||
},
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
//任务ID
|
||||
taskId: '',
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
|
||||
// 表格数据
|
||||
equipmentList: [],
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
rowData: {},
|
||||
maForm: {
|
||||
keyword: '',
|
||||
bmFileInfos: [],
|
||||
},
|
||||
urlTemp: '',
|
||||
//图片查看弹窗
|
||||
dialogImageUrl: '',
|
||||
dialogVisible: false,
|
||||
uploadKey: Date.now(),
|
||||
//上传
|
||||
// upload: {
|
||||
// // 设置上传的请求头部
|
||||
// headers: {Authorization: 'Bearer ' + getToken()},
|
||||
// // 上传的地址
|
||||
// url: process.env.VUE_APP_BASE_API + '/file/upload'
|
||||
// },
|
||||
uploadUrl: process.env.VUE_APP_BASE_API + '/system/user/imgUpLoad', // 上传的图片服务器地址
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
//图片上传1张后,隐藏上传框
|
||||
uploadDisabled() {
|
||||
return this.maForm.bmFileInfos && this.maForm.bmFileInfos.length <= 5
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
this.taskId = this.queryTaskId
|
||||
this.getTaskInfo()
|
||||
},
|
||||
methods: {
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.getTaskInfo()
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm('maForm')
|
||||
this.maForm.keyword = ''
|
||||
this.handleQuery()
|
||||
},
|
||||
//获取任务详情-列表数据
|
||||
getTaskInfo() {
|
||||
this.loading = true
|
||||
console.log('xxxxxxxxxxxxxxxxxxxxx', this.taskId)
|
||||
getScrapInfo({ taskId: this.taskId, keyword: this.maForm.keyword }).then(
|
||||
(response) => {
|
||||
this.equipmentList = response.data.scrapApplyDetailsList
|
||||
this.maForm.bmFileInfos = response.data.fileList
|
||||
this.loading = false
|
||||
},
|
||||
)
|
||||
},
|
||||
|
||||
isImage(file) {
|
||||
this.urlTemp = require('@/assets/images/file.png')
|
||||
if (this.updataIf(file)) {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
},
|
||||
|
||||
// 判断文件类型,图片预览,文件下载
|
||||
updataIf(e) {
|
||||
if (e.fileName) {
|
||||
const parts = e.fileName.split('.')
|
||||
const extension = parts.pop()
|
||||
if (
|
||||
extension === 'png' ||
|
||||
extension === 'jpeg' ||
|
||||
extension === 'jpg'
|
||||
) {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
const parts = e.name.split('.')
|
||||
const extension = parts.pop()
|
||||
if (
|
||||
extension === 'png' ||
|
||||
extension === 'jpeg' ||
|
||||
extension === 'jpg'
|
||||
) {
|
||||
return false
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//上传组件-图片查看
|
||||
picturePreviewFbs(file) {
|
||||
console.log('yyyyyyyyyy', file)
|
||||
this.dialogImageUrl = file.url.replaceAll('#', '%23')
|
||||
const parts = file.name.split('.')
|
||||
const extension = parts.pop()
|
||||
if (extension === 'pdf') {
|
||||
const windowName = file.name
|
||||
window.open(file.url, windowName)
|
||||
} else {
|
||||
this.dialogVisible = true
|
||||
}
|
||||
},
|
||||
handleDownload(file) {
|
||||
console.log(file)
|
||||
if (file.status === 'ready') {
|
||||
downloadFile({
|
||||
fileName: file.name,
|
||||
fileData: file.raw,
|
||||
fileType: 'application/vnd.ms-excel;charset=utf-8',
|
||||
})
|
||||
} else if (file.status === 'success') {
|
||||
downloadFileData({ fileName: file.name, fileUrl: file.url })
|
||||
// downloadFileData({ fileName: file.name,fileUrl:file.url })
|
||||
}
|
||||
},
|
||||
|
||||
/** 导出按钮操作 */
|
||||
// handleExport() {
|
||||
// this.download(
|
||||
// "/material/lease_apply_info/exportDetails",
|
||||
// { id: this.id },
|
||||
// `盘点报废详情_${new Date().getTime()}.xlsx`
|
||||
// );
|
||||
// },
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
::v-deep.disabledFbs {
|
||||
.el-upload--picture-card {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
::v-deep.el-table .fixed-width .el-button--mini {
|
||||
width: 60px !important;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
//隐藏图片上传框的css
|
||||
::v-deep.disabled {
|
||||
.el-upload--picture-card {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
.custom-textarea {
|
||||
width: 300px;
|
||||
height: 100px;
|
||||
}
|
||||
.accept-img {
|
||||
color: #409eff;
|
||||
|
||||
.a-two {
|
||||
margin-left: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.left-tip {
|
||||
font-size: 16px;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
</style>
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
export const config = {
|
||||
handleColShow: true, // 是否显示操作列
|
||||
pageShow: true, // 是否显示分页组件
|
||||
isSelShow: true,// 表格是否需要复选框
|
||||
isFormShow: true, // 是否显示表单查询组件
|
||||
handleWidth: '', // 操作列宽度
|
||||
formLabel: [
|
||||
{ f_label: '关键字', f_model: 'keyword', f_type: 'ipt' },
|
||||
{ f_label: '单位名称', f_model: 'backUnit', f_type: 'sel', f_selList: [] },
|
||||
{ f_label: '工程名称', f_model: 'backPro', f_type: 'sel', f_selList: [] },
|
||||
{ f_label: '工机具类型', f_model: 'type', f_type: 'selCas', f_selList: [], optionProps: { value: 'id', } },
|
||||
{ f_label: '报废单号', f_model: 'laiyuan', f_type: 'ipt', },
|
||||
{ f_label: '审批状态', f_model: 'taskStatus', f_type: 'sel', f_selList: [] },
|
||||
{ f_label: '报废类型', f_model: 'taskStatus', f_type: 'sel', f_selList: [] },
|
||||
{ f_label: '创建时间', f_model: 'time', f_type: 'date' },
|
||||
],
|
||||
columnsList: [
|
||||
// { t_width: '55px', t_props: '', t_label: '序号' },
|
||||
{ t_props: '', t_label: '预报废单号' },
|
||||
{ t_props: '', t_label: '机具类型' },
|
||||
{ t_props: '', t_label: '任务创建人' },
|
||||
{ t_props: '', t_label: '任务创建时间' },
|
||||
{ t_props: '', t_label: '审核状态' },
|
||||
],
|
||||
handleBtn: [
|
||||
{ btn_title: '查看', id: 1 },
|
||||
{ btn_title: '新增报废', id: 2 },
|
||||
{ btn_title: '驳回退料', id: 3 },
|
||||
{ btn_title: '审批详情', id: 4 },
|
||||
],
|
||||
}
|
||||
|
|
@ -1,51 +1,87 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<!-- 盘点报废 -->
|
||||
<TableModel :config="config" :handleWidth="`240px`">
|
||||
<template slot="export">
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-button
|
||||
plain
|
||||
size="mini"
|
||||
type="success"
|
||||
icon="el-icon-download"
|
||||
>导出数据</el-button
|
||||
>
|
||||
</el-row>
|
||||
</template>
|
||||
<!-- 列表操作栏 -->
|
||||
<template slot="handle" slot-scope="data">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
:key="btn.id"
|
||||
v-for="btn in config.handleBtn"
|
||||
@click="handleBtn(data, btn.id)"
|
||||
>
|
||||
{{ btn.btn_title }}
|
||||
</el-button>
|
||||
</template>
|
||||
</TableModel>
|
||||
</div>
|
||||
<!-- 盘点报废管理 -->
|
||||
<div class="app-container">
|
||||
<PageHeader
|
||||
v-if="isShowComponent != 'Home'"
|
||||
:pageContent="pageContent"
|
||||
@goBack="goBack"
|
||||
/>
|
||||
<component
|
||||
:is="isShowComponent"
|
||||
:isEdit="isEdit"
|
||||
:editTaskId="editTaskId"
|
||||
:editId="editId"
|
||||
:queryTaskId="queryTaskId"
|
||||
:queryId="queryId"
|
||||
:isView="isView"
|
||||
:codingTaskId="codingTaskId"
|
||||
@addTools="addTools"
|
||||
@editTools="editTools"
|
||||
@addToolsSuccess="addToolsSuccess"
|
||||
@queryTools="queryTools"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script>
|
||||
import { config } from './config'
|
||||
import TableModel from '@/components/TableModel'
|
||||
import PageHeader from '@/components/pageHeader'
|
||||
import Home from "./component/homeApply.vue"; // 主列表
|
||||
import AddTools from "./component/addToolsApply.vue"; // 新增机具 和 修改机具
|
||||
import QueryTools from "./component/queryToolsApply.vue"; // 查询机具 和 验收机具
|
||||
export default {
|
||||
name: 'Inventory',
|
||||
components: {
|
||||
TableModel,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
config,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleBtn() {},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
components: {
|
||||
Home,
|
||||
PageHeader,
|
||||
AddTools,
|
||||
QueryTools,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
isShowComponent: "Home",
|
||||
pageContent: "盘点报废申请",
|
||||
isEdit: false,
|
||||
editTaskId: "",
|
||||
editId: "",
|
||||
queryId: "",
|
||||
queryTaskId: "",
|
||||
isView: false,
|
||||
codingTaskId: "",
|
||||
};
|
||||
},
|
||||
|
||||
<style></style>
|
||||
methods: {
|
||||
/* 新增工机具 */
|
||||
addTools() {
|
||||
this.isEdit = false;
|
||||
this.editTaskId = "";
|
||||
this.queryTaskId = "";
|
||||
this.pageContent = "报废新增";
|
||||
this.isShowComponent = "AddTools";
|
||||
},
|
||||
/* 新增成功 */
|
||||
addToolsSuccess() {
|
||||
this.isShowComponent = "Home";
|
||||
},
|
||||
/* 编辑工机具 */
|
||||
editTools(taskId, id) {
|
||||
this.isEdit = true;
|
||||
this.pageContent = "报废编辑";
|
||||
this.editTaskId = taskId;
|
||||
this.editId = id;
|
||||
this.isShowComponent = "AddTools";
|
||||
},
|
||||
/* 查询工机具 */
|
||||
queryTools(taskId, id) {
|
||||
this.isView = true;
|
||||
this.pageContent = "详情信息";
|
||||
this.queryTaskId = taskId;
|
||||
this.queryId = id;
|
||||
this.isShowComponent = "QueryTools";
|
||||
},
|
||||
/* 返回按钮 */
|
||||
goBack() {
|
||||
this.isShowComponent = "Home";
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
@ -43,7 +43,7 @@ module.exports = {
|
|||
// target: `https://test-cc.zhgkxt.com`,//线上环境-南网
|
||||
// target: `https://z.csgmall.com.cn`,
|
||||
|
||||
target: `http://192.168.2.127:28080`, //超
|
||||
target: `http://192.168.2.131:28080`, //超
|
||||
// target: `http://10.40.92.81:28080`, //韩/
|
||||
// target: `http://192.168.2.82:28080`,//旭/
|
||||
// target: `http://192.168.2.248:28080`, //帅
|
||||
|
|
|
|||
Loading…
Reference in New Issue