设备管理

This commit is contained in:
2023-03-16 09:50:39 +08:00
parent 8b6fb450a6
commit be87c64a8d
9 changed files with 293 additions and 407 deletions

View File

@@ -47,14 +47,6 @@ export function savaDeviceItem(data) {
})
}
export function getItemByDeviceId(data) {
return request({
url: 'api/device/getItemByDeviceId',
method: 'post',
data
})
}
export function copyAdd(data) {
return request({
url: 'api/device/copyAdd',
@@ -70,4 +62,4 @@ export function queryById(device_id) {
})
}
export default { add, edit, del, getWorkprocedure, getItemByDevice, savaDeviceItem, getItemByDeviceId, copyAdd, queryById }
export default { add, edit, del, getWorkprocedure, getItemByDevice, savaDeviceItem, copyAdd, queryById }

View File

@@ -26,17 +26,6 @@
</div>
<!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'-->
<crudOperation :permission="permission">
<el-button
slot="right"
class="filter-item"
type="success"
icon="el-icon-position"
size="mini"
:disabled="crud.selections.length !== 1"
@click="addItem(crud.selections[0])"
>
设备扩展项
</el-button>
<el-button
slot="right"
class="filter-item"
@@ -69,30 +58,38 @@
<el-form-item label="设备名称" prop="device_name">
<el-input v-model="form.device_name" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备型号">
<el-input v-model="form.device_model" style="width: 370px;" />
<el-form-item label="生产区域" prop="product_area">
<el-input v-model="form.product_area" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备产能">
<el-input v-model="form.productivity" type="number" oninput="value = value.replace(/[^\d]/g, '')" style="width: 370px;" />
<el-form-item label="设备编码2">
<el-input v-model="form.device_code2" style="width: 370px;" />
</el-form-item>
<el-form-item label="所属工序">
<el-select v-model="form.workprocedure_id" filterable clearable class="filter-item" style="width: 370px">
<el-option
v-for="item in workList"
:key="item.workprocedure_id"
:label="item.workprocedure_name"
:value="item.workprocedure_id"
/>
</el-select>
<el-form-item label="设备来料仓上限数" prop="inupperlimit_qty">
<el-input v-model="form.inupperlimit_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="外部编码">
<el-input v-model="form.extend_code" style="width: 370px;" />
<el-form-item label="设备来料仓下限数" prop="inlowerlimit_qty">
<el-input v-model="form.inlowerlimit_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备产品仓上限数" prop="outupperlimit_qty">
<el-input v-model="form.outupperlimit_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备产品仓下限数" prop="outlowerlimit_qty">
<el-input v-model="form.outlowerlimit_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备初始来料仓数" prop="deviceinitinstor_qty">
<el-input v-model="form.deviceinitinstor_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备实时来料仓数" prop="deviceinstor_qty">
<el-input v-model="form.deviceinstor_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="设备实时产品仓数" prop="deviceoutstor_qty">
<el-input v-model="form.deviceoutstor_qty" style="width: 370px;" />
</el-form-item>
<el-form-item label="是否人工" prop="is_artificial">
<el-input v-model="form.is_artificial" style="width: 370px;" />
</el-form-item>
<!-- <el-form-item label="设备档案标识">
未设置字典,请手动设置 Select
</el-form-item>-->
<el-form-item label="备注">
<el-input v-model="form.remark" :rows="3" type="textarea" style="width: 370px;" />
<el-input v-model="form.remark" style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -103,32 +100,27 @@
<!--表格渲染-->
<el-table ref="table" v-loading="crud.loading" :data="crud.data" size="mini" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
<el-table-column type="selection" width="55" />
<el-table-column prop="device_code" label="设备编码" />
<el-table-column prop="device_name" label="设备名称" min-width="200" show-overflow-tooltip />
<el-table-column prop="productivity" label="设备产能" />
<el-table-column prop="produceorder_code" label="工单编号" />
<template v-for="(item, index) in tableLabel">
<el-table-column
v-if="item.show"
:key="index"
:show-overflow-tooltip="true"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
/>
</template>
<el-table-column label="是否启用" align="center" prop="is_active">
<el-table-column prop="device_code" label="设备编码" width="100px" show-overflow-tooltip/>
<el-table-column prop="device_name" label="设备名称" />
<el-table-column prop="product_area" label="生产区域" />
<el-table-column prop="device_code2" label="设备编码2" />
<el-table-column prop="inupperlimit_qty" label="设备来料仓上限数" width="120px"/>
<el-table-column prop="inlowerlimit_qty" label="设备来料仓下限数" width="120px"/>
<el-table-column prop="outupperlimit_qty" label="设备产品仓上限数" width="120px"/>
<el-table-column prop="outlowerlimit_qty" label="设备产品仓下限数" width="120px"/>
<el-table-column prop="deviceinitinstor_qty" label="设备初始来料仓数" width="120px"/>
<el-table-column prop="deviceinstor_qty" label="设备实时来料仓数" width="120px"/>
<el-table-column prop="deviceoutstor_qty" label="设备实时产品仓数" width="120px"/>
<el-table-column prop="is_artificial" label="是否人工" >
<template slot-scope="scope">
<el-switch
v-model="scope.row.is_active"
active-color="#409EFF"
inactive-color="#F56C6C"
active-value="1"
inactive-value="0"
@change="changeEnabled(scope.row, scope.row.is_active)"
/>
{{scope.row.is_artificial=='1'?'是':'否'}}
</template>
</el-table-column>
<el-table-column prop="remark" label="备注" width="120px" show-overflow-tooltip/>
<el-table-column prop="create_name" label="创建人" />
<el-table-column prop="create_time" label="创建时间" width="120px" show-overflow-tooltip/>
<el-table-column prop="update_name" label="修改人" />
<el-table-column prop="update_time" label="修改时间" width="120px" show-overflow-tooltip/>
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
<template slot-scope="scope">
<udOperation
@@ -157,16 +149,19 @@ import pagination from '@crud/Pagination'
import DeviceItemDialog from '@/views/wms/pdm/device/DeviceItemDialog'
import DeviceInfoDialog from '@/views/wms/pdm/device/DeviceInfoDialog'
import CopyDialog from '@/views/wms/pdm/device/CopyDialog'
import crudSectattr from '@/api/wms/basedata/st/sectattr'
const defaultForm = { device_id: null, device_code: null, device_name: null, device_model: null, workprocedure_id: null, extend_code: null, devicebill_id: null, remark: null, is_active: null, create_id: null, create_name: null, create_time: null, is_delete: null, productivity: null }
const defaultForm = {device_code: null, device_name: null, product_area: null, workprocedure_id: null, ext_code: null,
material_id: null, workorder_code: null, device_code2: null, inupperlimit_qty: null, inlowerlimit_qty: null,
outupperlimit_qty: null, outlowerlimit_qty: null, deviceinitinstor_qty: null, deviceinstor_qty: null,
deviceoutstor_qty: null, is_artificial: null, remark: null, create_id: null, create_name: null, create_time: null,
update_id: null, update_name: null, update_time: null, is_delete: null }
export default {
name: 'Device',
components: { pagination, crudOperation, rrOperation, udOperation, DeviceItemDialog, CopyDialog, DeviceInfoDialog },
mixins: [presenter(), header(), form(defaultForm), crud()],
dicts: ['is_used'],
cruds() {
return CRUD({ title: '生产设备', url: 'api/device', idField: 'device_id', sort: 'device_id,desc',
return CRUD({ title: '生产设备', url: 'api/device', idField: 'device_code', sort: 'device_code,desc',
optShow: {
add: true,
edit: false,
@@ -188,6 +183,33 @@ export default {
],
device_name: [
{ required: true, message: '设备名称不能为空', trigger: 'blur' }
],
product_area: [
{ required: true, message: '生产区域不能为空', trigger: 'blur' }
],
inupperlimit_qty: [
{ required: true, message: '设备来料仓上限数不能为空', trigger: 'blur' }
],
inlowerlimit_qty: [
{ required: true, message: '设备来料仓下限数不能为空', trigger: 'blur' }
],
outupperlimit_qty: [
{ required: true, message: '设备产品仓上限数不能为空', trigger: 'blur' }
],
outlowerlimit_qty: [
{ required: true, message: '设备产品仓下限数不能为空', trigger: 'blur' }
],
deviceinitinstor_qty: [
{ required: true, message: '设备初始来料仓数不能为空', trigger: 'blur' }
],
deviceinstor_qty: [
{ required: true, message: '设备实时来料仓数不能为空', trigger: 'blur' }
],
deviceoutstor_qty: [
{ required: true, message: '设备实时产品仓数不能为空', trigger: 'blur' }
],
is_artificial: [
{ required: true, message: '是否人工不能为空', trigger: 'blur' }
]
}
}
@@ -197,12 +219,10 @@ export default {
},
methods: {
changeHeader(search, workprocedure_id) {
this.getHeader(search, workprocedure_id)
this.crud.toQuery()
},
// 钩子在获取表格数据之前执行false 则代表不获取数据
[CRUD.HOOK.beforeRefresh]() {
this.getHeader(this.query.search, this.query.workprocedure_id)
return true
},
// 改变状态
@@ -237,14 +257,11 @@ export default {
}
})
},
getWorkprocedure() {
getWorkprocedure() { // 获取工序下拉框
crudDevice.getWorkprocedure().then(res => {
this.workList = res
})
},
addItem(data) {
this.$refs.child.setForm(data)
},
deviceInfo(data) {
this.$refs.child1.setForm(data)
},
@@ -254,11 +271,6 @@ export default {
},
querytable() {
this.crud.toQuery()
},
getHeader(search, workprocedure_id) {
crudDevice.getItemByDeviceId({ search: search, workprocedure_id: workprocedure_id }).then(res => {
this.tableLabel = res.newArray
})
}
}
}