盘点报废+退料接收优化
This commit is contained in:
parent
5f5ba22e0d
commit
b7f45c8aed
|
|
@ -1,5 +1,5 @@
|
||||||
module.exports = {
|
module.exports = {
|
||||||
tabWidth: 4,
|
tabWidth: 2,
|
||||||
semi: false,
|
semi: false,
|
||||||
vueIndentScriptAndStyle: false,
|
vueIndentScriptAndStyle: false,
|
||||||
singleQuote: true,
|
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>
|
}}</span>
|
||||||
</template> -->
|
</template> -->
|
||||||
</el-table-column>
|
</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
|
<el-table-column
|
||||||
label="类型名称"
|
label="类型名称"
|
||||||
align="center"
|
align="center"
|
||||||
|
|
@ -748,6 +759,9 @@ export default {
|
||||||
rejectTaskId: {
|
rejectTaskId: {
|
||||||
type: [String, Number],
|
type: [String, Number],
|
||||||
},
|
},
|
||||||
|
lotName: {
|
||||||
|
type: String,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
|
@ -984,7 +998,8 @@ export default {
|
||||||
if (response.code == 200) {
|
if (response.code == 200) {
|
||||||
this.$modal.msgSuccess('操作成功')
|
this.$modal.msgSuccess('操作成功')
|
||||||
// this.back()
|
// this.back()
|
||||||
this.$emit('goBackPage')
|
// this.$emit('goBackPage')
|
||||||
|
this.getList()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -469,7 +469,7 @@ export default {
|
||||||
// taskId: row.taskId,
|
// taskId: row.taskId,
|
||||||
// },
|
// },
|
||||||
// })
|
// })
|
||||||
this.$emit('receiveReturn', row.id, row.taskId)
|
this.$emit('receiveReturn', row)
|
||||||
},
|
},
|
||||||
/** 导出按钮操作 */
|
/** 导出按钮操作 */
|
||||||
handleExport() {
|
handleExport() {
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,7 @@
|
||||||
:isView="isView"
|
:isView="isView"
|
||||||
:rejectId="rejectId"
|
:rejectId="rejectId"
|
||||||
:rejectTaskId="rejectTaskId"
|
:rejectTaskId="rejectTaskId"
|
||||||
|
:lotName="lotName"
|
||||||
@receiveView="receiveView"
|
@receiveView="receiveView"
|
||||||
@receiveReturn="receiveReturn"
|
@receiveReturn="receiveReturn"
|
||||||
@goBackPage="goBack"
|
@goBackPage="goBack"
|
||||||
|
|
@ -36,6 +37,7 @@ export default {
|
||||||
rejectId: '',
|
rejectId: '',
|
||||||
rejectTaskId: '',
|
rejectTaskId: '',
|
||||||
isView: false,
|
isView: false,
|
||||||
|
lotName: '', // 退料工程
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|
@ -47,9 +49,10 @@ export default {
|
||||||
this.isShowComponent = 'HandlePage'
|
this.isShowComponent = 'HandlePage'
|
||||||
},
|
},
|
||||||
// 退料操作
|
// 退料操作
|
||||||
receiveReturn(id, taskId) {
|
receiveReturn(row) {
|
||||||
this.rejectId = id
|
this.rejectId = row.id
|
||||||
this.rejectTaskId = taskId
|
this.rejectTaskId = row.taskId
|
||||||
|
this.lotName = row.lotName
|
||||||
this.isView = false
|
this.isView = false
|
||||||
this.pageContent = '退料处理'
|
this.pageContent = '退料处理'
|
||||||
this.isShowComponent = 'HandlePage'
|
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>
|
<template>
|
||||||
<div class="app-container">
|
<!-- 盘点报废管理 -->
|
||||||
<!-- 盘点报废 -->
|
<div class="app-container">
|
||||||
<TableModel :config="config" :handleWidth="`240px`">
|
<PageHeader
|
||||||
<template slot="export">
|
v-if="isShowComponent != 'Home'"
|
||||||
<el-row :gutter="10" class="mb8">
|
:pageContent="pageContent"
|
||||||
<el-button
|
@goBack="goBack"
|
||||||
plain
|
/>
|
||||||
size="mini"
|
<component
|
||||||
type="success"
|
:is="isShowComponent"
|
||||||
icon="el-icon-download"
|
:isEdit="isEdit"
|
||||||
>导出数据</el-button
|
:editTaskId="editTaskId"
|
||||||
>
|
:editId="editId"
|
||||||
</el-row>
|
:queryTaskId="queryTaskId"
|
||||||
</template>
|
:queryId="queryId"
|
||||||
<!-- 列表操作栏 -->
|
:isView="isView"
|
||||||
<template slot="handle" slot-scope="data">
|
:codingTaskId="codingTaskId"
|
||||||
<el-button
|
@addTools="addTools"
|
||||||
size="mini"
|
@editTools="editTools"
|
||||||
type="text"
|
@addToolsSuccess="addToolsSuccess"
|
||||||
:key="btn.id"
|
@queryTools="queryTools"
|
||||||
v-for="btn in config.handleBtn"
|
/>
|
||||||
@click="handleBtn(data, btn.id)"
|
</div>
|
||||||
>
|
|
||||||
{{ btn.btn_title }}
|
|
||||||
</el-button>
|
|
||||||
</template>
|
|
||||||
</TableModel>
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { config } from './config'
|
import PageHeader from '@/components/pageHeader'
|
||||||
import TableModel from '@/components/TableModel'
|
import Home from "./component/homeApply.vue"; // 主列表
|
||||||
|
import AddTools from "./component/addToolsApply.vue"; // 新增机具 和 修改机具
|
||||||
|
import QueryTools from "./component/queryToolsApply.vue"; // 查询机具 和 验收机具
|
||||||
export default {
|
export default {
|
||||||
name: 'Inventory',
|
components: {
|
||||||
components: {
|
Home,
|
||||||
TableModel,
|
PageHeader,
|
||||||
},
|
AddTools,
|
||||||
data() {
|
QueryTools,
|
||||||
return {
|
},
|
||||||
config,
|
data() {
|
||||||
}
|
return {
|
||||||
},
|
isShowComponent: "Home",
|
||||||
methods: {
|
pageContent: "盘点报废申请",
|
||||||
handleBtn() {},
|
isEdit: false,
|
||||||
},
|
editTaskId: "",
|
||||||
}
|
editId: "",
|
||||||
</script>
|
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://test-cc.zhgkxt.com`,//线上环境-南网
|
||||||
// target: `https://z.csgmall.com.cn`,
|
// 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://10.40.92.81:28080`, //韩/
|
||||||
// target: `http://192.168.2.82:28080`,//旭/
|
// target: `http://192.168.2.82:28080`,//旭/
|
||||||
// target: `http://192.168.2.248:28080`, //帅
|
// target: `http://192.168.2.248:28080`, //帅
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue