设备上下架开发
This commit is contained in:
parent
4c10944e92
commit
f9fa2c5c71
|
|
@ -52,6 +52,15 @@ export function removeDevice(data) {
|
|||
})
|
||||
}
|
||||
|
||||
//上下架(批量)
|
||||
export function updateUpDown(data) {
|
||||
return request({
|
||||
url: '/material-mall/dev/updateUpDown',
|
||||
method: 'post',
|
||||
data: data,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,286 +1,324 @@
|
|||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item prop="deviceName">
|
||||
<el-input
|
||||
v-model="queryParams.deviceName"
|
||||
placeholder="请输入装备名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
maxlength="20"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item prop="code">
|
||||
<el-input
|
||||
v-model="queryParams.code"
|
||||
placeholder="请输入装备编码"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
maxlength="20"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item prop="maStatus">
|
||||
<el-select
|
||||
v-model="queryParams.maStatus"
|
||||
placeholder="请选择装备状态"
|
||||
clearable
|
||||
style="width: 240px"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.ma_machine_status"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择装备分类" clearable>
|
||||
<el-option
|
||||
v-for="item in statusList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择装备型号" clearable>
|
||||
<el-option
|
||||
v-for="item in statusList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="dateRange">
|
||||
<el-date-picker
|
||||
v-model="dateRange"
|
||||
type="datetimerange"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</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="success" plain
|
||||
size="mini" @click="equipmentAdd"
|
||||
>装备新建</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning" plain
|
||||
icon="el-icon-download"
|
||||
size="mini"
|
||||
>批量上架</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning" plain
|
||||
icon="el-icon-download"
|
||||
size="mini"
|
||||
>批量下架</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-table v-loading="loading" :data="tableList" ref="multipleTable" row-key="maId" @selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" align="center" :reserve-selection="true" />
|
||||
<el-table-column label="序号" align="center" width="80" 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="deviceName" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备编码" align="center" prop="code" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备类目" align="center" prop="groupName" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备型号" align="center" prop="modelName" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备状态" align="center" prop="maStatus" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.ma_machine_status" :value="scope.row.maStatus"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="更新时间" align="center" prop="updateTime" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="操作" align="center" width="250">
|
||||
<template slot-scope="scope">
|
||||
<!-- <el-button
|
||||
size="mini"
|
||||
@click="handleView(scope.row)">
|
||||
查看
|
||||
</el-button> -->
|
||||
<el-button
|
||||
size="mini" type="primary"
|
||||
@click="handleUpdate(scope.row)">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini" type="warning" >
|
||||
下架
|
||||
</el-button>
|
||||
<el-button size="mini" type="danger" @click="delDev(scope.row)">
|
||||
删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item prop="deviceName">
|
||||
<el-input
|
||||
v-model="queryParams.deviceName"
|
||||
placeholder="请输入装备名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
maxlength="20"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item prop="code">
|
||||
<el-input
|
||||
v-model="queryParams.code"
|
||||
placeholder="请输入装备编码"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
maxlength="20"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item prop="maStatus">
|
||||
<el-select
|
||||
v-model="queryParams.maStatus"
|
||||
placeholder="请选择装备状态"
|
||||
clearable
|
||||
style="width: 240px"
|
||||
>
|
||||
<el-option
|
||||
v-for="dict in dict.type.ma_machine_status"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择装备分类" clearable>
|
||||
<el-option
|
||||
v-for="item in statusList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="status">
|
||||
<el-select v-model="queryParams.status" placeholder="请选择装备型号" clearable>
|
||||
<el-option
|
||||
v-for="item in statusList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item prop="dateRange">
|
||||
<el-date-picker
|
||||
v-model="dateRange"
|
||||
type="datetimerange"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
range-separator="至"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期">
|
||||
</el-date-picker>
|
||||
</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="success" plain
|
||||
size="mini" @click="equipmentAdd"
|
||||
>装备新建
|
||||
</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning" plain
|
||||
icon="el-icon-download"
|
||||
size="mini"
|
||||
@click="handleUpdateUpDown(null,2)"
|
||||
>批量上架</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="warning" plain
|
||||
icon="el-icon-download"
|
||||
size="mini"
|
||||
@click="handleUpdateUpDown(null,3)"
|
||||
>批量下架
|
||||
</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-table v-loading="loading" :data="tableList" ref="multipleTable" row-key="maId"
|
||||
@selection-change="handleSelectionChange" border>
|
||||
<el-table-column type="selection" width="55" align="center" :reserve-selection="true"/>
|
||||
<el-table-column label="序号" align="center" width="80" 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="deviceName" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备编码" align="center" prop="code" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备类目" align="center" prop="groupName" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备型号" align="center" prop="modelName" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="装备状态" align="center" prop="maStatus" :show-overflow-tooltip="true">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.ma_machine_status" :value="scope.row.maStatus"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="更新时间" align="center" prop="updateTime" width="150" :show-overflow-tooltip="true"/>
|
||||
<el-table-column label="操作" align="center" width="250">
|
||||
<template slot-scope="scope">
|
||||
<!-- <el-button
|
||||
size="mini"
|
||||
@click="handleView(scope.row)">
|
||||
查看
|
||||
</el-button> -->
|
||||
<el-button
|
||||
size="mini" type="primary"
|
||||
@click="handleUpdate(scope.row)">
|
||||
编辑
|
||||
</el-button>
|
||||
<el-button
|
||||
size="mini" type="warning">
|
||||
<span
|
||||
v-if="scope.row.maStatus == 2"
|
||||
@click="handleUpdateUpDown(scope.row,3)">
|
||||
下架
|
||||
</span>
|
||||
<span
|
||||
v-if="scope.row.maStatus == 3"
|
||||
@click="handleUpdateUpDown(scope.row,2)">
|
||||
上架
|
||||
</span>
|
||||
</el-button>
|
||||
<el-button size="mini" type="danger" @click="delDev(scope.row)">
|
||||
删除
|
||||
</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>
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getDevList,removeDevice } from "@/api/lessor/equipment";
|
||||
export default {
|
||||
name: "",
|
||||
dicts: ['ma_machine_status'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: false,
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
statusList:[{id:'1',name:'状态1'},{id:'2',name:'状态2'},{id:'3',name:'状态3'}],
|
||||
ids:[],
|
||||
// 总条数
|
||||
total: 0,
|
||||
//表格数据
|
||||
tableList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
dateRange:[],
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
deviceName:undefined,
|
||||
code:undefined,
|
||||
keyWord:undefined,
|
||||
status:undefined,
|
||||
},
|
||||
};
|
||||
<script>
|
||||
import {getDevList, removeDevice,updateUpDown} from "@/api/lessor/equipment";
|
||||
|
||||
export default {
|
||||
name: "",
|
||||
dicts: ['ma_machine_status'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: false,
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
statusList: [{id: '1', name: '状态1'}, {id: '2', name: '状态2'}, {id: '3', name: '状态3'}],
|
||||
ids: [],
|
||||
// 总条数
|
||||
total: 0,
|
||||
//表格数据
|
||||
tableList: [],
|
||||
maIds: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
dateRange: [],
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
deviceName: undefined,
|
||||
code: undefined,
|
||||
keyWord: undefined,
|
||||
status: undefined,
|
||||
},
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
if (this.dateRange.length > 0) {
|
||||
this.queryParams.startTime = this.dateRange[0]
|
||||
this.queryParams.endTime = this.dateRange[1]
|
||||
} else {
|
||||
this.queryParams.startTime = undefined
|
||||
this.queryParams.endTime = undefined
|
||||
}
|
||||
getDevList(this.queryParams).then(response => {
|
||||
this.tableList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
created() {
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.dateRange = []
|
||||
this.queryParams.keyWord = null;
|
||||
this.handleQuery();
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
if(this.dateRange.length>0){
|
||||
this.queryParams.startTime=this.dateRange[0]
|
||||
this.queryParams.endTime=this.dateRange[1]
|
||||
}else{
|
||||
this.queryParams.startTime=undefined
|
||||
this.queryParams.endTime=undefined
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.maId)
|
||||
this.single = selection.length != 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
//新增
|
||||
equipmentAdd() {
|
||||
let query = {}
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/lessor/equipmentDetail',
|
||||
query,
|
||||
})
|
||||
},
|
||||
//编辑
|
||||
handleUpdate(row) {
|
||||
console.log(row)
|
||||
let query = {maId: row.maId, isView: "false"}
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/lessor/equipmentDetail',
|
||||
query,
|
||||
})
|
||||
},
|
||||
// 上下架(批量)
|
||||
handleUpdateUpDown(row,maStatus) {
|
||||
this.$modal.confirm('是否确认?').then(() => {
|
||||
let maIds = []
|
||||
if (!row){
|
||||
maIds = this.ids
|
||||
} else {
|
||||
maIds.push(row.maId)
|
||||
}
|
||||
getDevList(this.queryParams).then(response => {
|
||||
this.tableList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
if (maIds.length == 0){
|
||||
this.$modal.msgError('请选择要操作的数据')
|
||||
return
|
||||
}
|
||||
return updateUpDown({maIds,maStatus})
|
||||
}).then(() => {
|
||||
this.handleQuery()
|
||||
}).catch(() => {
|
||||
})
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.dateRange=[]
|
||||
this.queryParams.keyWord=null;
|
||||
this.handleQuery();
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.maId)
|
||||
this.single = selection.length != 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
//新增
|
||||
equipmentAdd(){
|
||||
let query = {}
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/lessor/equipmentDetail',
|
||||
query,
|
||||
})
|
||||
},
|
||||
//编辑
|
||||
handleUpdate(row){
|
||||
console.log(row)
|
||||
let query = { maId:row.maId,isView:"false" }
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/lessor/equipmentDetail',
|
||||
query,
|
||||
})
|
||||
},
|
||||
//查看
|
||||
handleView(row){
|
||||
console.log(row)
|
||||
// let query = { Id:row.id,taskId: row.taskId,isView:"true" }
|
||||
// this.$tab.closeOpenPage({
|
||||
// path: '/purchase/goodsAcceptDetail',
|
||||
// query,
|
||||
// })
|
||||
},
|
||||
handleExport() {
|
||||
// this.download('/material/ma_machine/export', {
|
||||
// ...this.queryParams
|
||||
// }, `仓库管理_${new Date().getTime()}.xlsx`)
|
||||
},
|
||||
delDev(row){
|
||||
this.$modal.confirm('是否确认删除所选择的装备?').then(() => {
|
||||
return removeDevice([row.maId])
|
||||
}).then(() => {
|
||||
this.handleQuery()
|
||||
this.$message.success('删除成功!')
|
||||
}).catch(() => {
|
||||
})
|
||||
|
||||
}
|
||||
//查看
|
||||
handleView(row) {
|
||||
console.log(row)
|
||||
// let query = { Id:row.id,taskId: row.taskId,isView:"true" }
|
||||
// this.$tab.closeOpenPage({
|
||||
// path: '/purchase/goodsAcceptDetail',
|
||||
// query,
|
||||
// })
|
||||
},
|
||||
handleExport() {
|
||||
// this.download('/material/ma_machine/export', {
|
||||
// ...this.queryParams
|
||||
// }, `仓库管理_${new Date().getTime()}.xlsx`)
|
||||
},
|
||||
delDev(row) {
|
||||
this.$modal.confirm('是否确认删除所选择的装备?').then(() => {
|
||||
return removeDevice([row.maId])
|
||||
}).then(() => {
|
||||
this.handleQuery()
|
||||
this.$message.success('删除成功!')
|
||||
}).catch(() => {
|
||||
})
|
||||
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.uploadImg {
|
||||
padding-top: 20px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
}
|
||||
.deviceCode {
|
||||
margin-top: 10px;
|
||||
padding-bottom: 20px;
|
||||
font-size: 18px;
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.uploadImg {
|
||||
padding-top: 20px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.deviceCode {
|
||||
margin-top: 10px;
|
||||
padding-bottom: 20px;
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
::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;
|
||||
}
|
||||
::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;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
Loading…
Reference in New Issue