merge and update dashboard detail

This commit is contained in:
gtz217 2022-03-16 20:11:30 +08:00
commit 2f19b50e20
37 changed files with 678 additions and 666 deletions

View File

@ -115,6 +115,10 @@ export default {
design: {
zh: '设计',
en: 'Design'
},
refresh: {
zh: '刷新',
en: 'Refresh'
}
},
navbar: {

View File

@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2021-03-04 16:13:51
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 10:17:01
* @LastEditTime: 2022-03-16 10:10:59
* @Description: file content
*/
export default {
@ -31,6 +31,7 @@ export default {
Tips: 'Tips',
TipsBefore: 'Are you sure you want to delete',
TipsStorageBefore: 'Confirm to add location:',
PleaseAddLocationFirst: 'Please Add Location First!',
Description: 'Description',
Remarks: 'Remarks',
Yes: 'Yes',
@ -169,7 +170,13 @@ export default {
processEquipment: 'Process Equipment',
sheCode: 'Shelf Code',
sheName: 'Shelf Name',
locaNum: 'Location Number'
locaNum: 'Location Number',
addLocation: 'Add Location',
columnMark: 'Column Mark',
rowMark: 'Row Mark',
status: 'Status',
man: 'Man',
woman: 'Woman'
},
storageBox: {
name: 'Name',

View File

@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2022-03-15 16:42:34
* @LastEditors: gtz
* @LastEditTime: 2022-03-16 19:08:39
* @LastEditTime: 2022-03-16 20:01:32
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\lang\i18n\en\module\dashboard.js
*/
@ -13,12 +13,11 @@ export default {
title: 'WMS Inventory Information',
pageHeader: 'No.',
pageFooter: ' Page',
currLocation: 'Current Location',
isEmpty: 'Is Empty',
status: 'Status',
storageBoxCode: 'Cassette Code',
empty: 'Empty',
notEmpty: 'Not Empty',
initialize: 'Initialize',
finish: 'Finish'
name: 'Location Name',
attribute: 'Location Attribute',
cassetteStatus: 'Cassette Status',
workOrderNo: 'Work Order Number'
}

View File

@ -2,7 +2,8 @@
* @Author: gtz
* @Date: 2021-03-04 16:13:51
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 10:16:52
* @LastEditTime: 2022-03-16 10:10:43
* @Description: file content
*/
export default {
visual: {
@ -30,6 +31,7 @@ export default {
Tips: '提示',
TipsBefore: '确定删除',
TipsStorageBefore: '确定添加库位:',
PleaseAddLocationFirst: '请先添加库位!',
Description: '描述',
Remarks: '备注',
Or: '或',
@ -159,7 +161,9 @@ export default {
processEquipment: '工艺设备',
sheCode: '货架编码',
sheName: '货架名',
locaNum: '库存数量'
locaNum: '库存数量',
man: '男',
woman: '女'
},
storageBox: {
name: '存储箱名称',

View File

@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2022-03-15 16:42:34
* @LastEditors: gtz
* @LastEditTime: 2022-03-16 19:08:19
* @LastEditTime: 2022-03-16 20:01:27
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\lang\i18n\zh\module\dashboard.js
*/
@ -13,12 +13,11 @@ export default {
title: 'WMS库存信息',
pageHeader: '第',
pageFooter: '页',
currLocation: '当前库位',
isEmpty: '是否为空',
status: '状态',
storageBoxCode: '存储箱编码',
empty: '空箱',
notEmpty: '有货',
initialize: '初始化',
finish: '完成'
name: '库位名',
attribute: '库位属性',
cassetteStatus: '存储箱状态',
workOrderNo: '工单号'
}

View File

@ -1,8 +1,8 @@
<!--
* @Author: DY
* @Date: 2021-12-16 15:41:11
* @LastEditors: DY
* @LastEditTime: 2022-03-03 15:26:05
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 09:04:30
* @Description: E10
-->
<template>
@ -84,18 +84,18 @@ export default {
},
created() {
// this.getEqList()
this.getList()
// this.getList()
},
methods: {
async getEqList() {
const res = await equipmentList({
current: 1,
size: 999
})
if (res.code === 0) {
this.eqList = res.data
}
},
// async getEqList() {
// const res = await equipmentList({
// current: 1,
// size: 999
// })
// if (res.code === 0) {
// this.eqList = res.data
// }
// },
toE10() {
this.$router.push({
name: 'E10'

View File

@ -1,8 +1,8 @@
<!--
* @Author: DY
* @Date: 2021-12-16 15:41:11
* @LastEditors: DY
* @LastEditTime: 2022-03-03 15:26:28
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 09:04:19
* @Description: MCBF
-->
<template>
@ -83,18 +83,18 @@ export default {
},
created() {
// this.getEqList()
this.getList()
// this.getList()
},
methods: {
async getEqList() {
const res = await equipmentList({
current: 1,
size: 999
})
if (res.code === 0) {
this.eqList = res.data
}
},
// async getEqList() {
// const res = await equipmentList({
// current: 1,
// size: 999
// })
// if (res.code === 0) {
// this.eqList = res.data
// }
// },
toE10() {
this.$router.push({
name: 'E10'

View File

@ -1,8 +1,8 @@
<!--
* @Author: DY
* @Date: 2021-12-16 15:41:11
* @LastEditors: DY
* @LastEditTime: 2022-03-03 15:26:44
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 09:04:09
* @Description: MTTR
-->
<template>
@ -83,18 +83,18 @@ export default {
},
created() {
// this.getEqList()
this.getList()
// this.getList()
},
methods: {
async getEqList() {
const res = await equipmentList({
current: 1,
size: 999
})
if (res.code === 0) {
this.eqList = res.data
}
},
// async getEqList() {
// const res = await equipmentList({
// current: 1,
// size: 999
// })
// if (res.code === 0) {
// this.eqList = res.data
// }
// },
toE10() {
this.$router.push({
name: 'E10'

View File

@ -1,8 +1,8 @@
<!--
* @Author: DY
* @Date: 2021-12-16 15:41:11
* @LastEditors: DY
* @LastEditTime: 2022-03-03 15:26:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 09:03:58
* @Description: OEE
-->
<template>
@ -83,18 +83,18 @@ export default {
},
created() {
// this.getEqList()
this.getList()
// this.getList()
},
methods: {
async getEqList() {
const res = await equipmentList({
current: 1,
size: 999
})
if (res.code === 0) {
this.eqList = res.data
}
},
// async getEqList() {
// const res = await equipmentList({
// current: 1,
// size: 999
// })
// if (res.code === 0) {
// this.eqList = res.data
// }
// },
toE10() {
this.$router.push({
name: 'E10'

View File

@ -1,8 +1,8 @@
<!--
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: DY
* @LastEditTime: 2022-03-03 16:22:24
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 09:03:35
* @Description: E10详情表格
-->
<template>
@ -108,15 +108,15 @@ export default {
this.listQuery.startTime = this.time1
this.listQuery.endTime = this.time2
this.listQuery.equipmentName = this.equipmentName
getE10StackDetail(this.listQuery).then(res => {
if (res.data !== []) {
this.list = res.data.detail.records
this.total = res.data.detail.total
this.list.forEach(item => {
item.equipmentName = this.equipmentName
})
}
})
// getE10StackDetail(this.listQuery).then(res => {
// if (res.data !== []) {
// this.list = res.data.detail.records
// this.total = res.data.detail.total
// this.list.forEach(item => {
// item.equipmentName = this.equipmentName
// })
// }
// })
}
}
}

View File

@ -1,8 +1,8 @@
<!--
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: DY
* @LastEditTime: 2022-03-03 16:46:06
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 09:03:23
* @Description: Mttr详情表格
-->
<template>
@ -109,12 +109,12 @@ export default {
this.listQuery.startTime = this.time1
this.listQuery.endTime = this.time2
this.listQuery.equipmentName = this.equipmentName
getMttrDetail(this.listQuery).then(res => {
if (res.data !== []) {
this.list = res.data.detail.records
this.total = res.data.detail.total
}
})
// getMttrDetail(this.listQuery).then(res => {
// if (res.data !== []) {
// this.list = res.data.detail.records
// this.total = res.data.detail.total
// }
// })
}
}
}

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-11 10:55:27
* @LastEditTime: 2022-03-16 14:11:09
* @Description:
-->
<template>
@ -226,7 +226,7 @@ export default {
this.dataForm = res.data
})
} else {
this.dataForm.registerTime = this.moment().format('YYYY-MM-DD HH:mm:ss')
this.dataForm.registerTime = this.moment()
}
})
},

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-03-11 11:24:48
* @LastEditTime: 2022-03-16 09:54:40
* @Description:
-->
<template>
@ -11,7 +11,6 @@
:model="formData"
:inline="true"
size="medium"
label-width="80px"
>
<el-form-item :label="$t('module.basicData.ScrapInfo.PlateId')" prop="substrateId">
<el-input v-model="formData.substrateId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.PlateId')])" style="width:200px" clearable />

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-09 16:53:23
* @LastEditTime: 2022-03-16 14:30:59
* @Description:
-->
<template>
@ -15,7 +15,7 @@
<el-input v-model="dataForm.name" :placeholder="$i18nForm(['placeholder.input', $t('module.art.processList.processName')])" clearable />
</el-form-item>
<el-form-item :label="$t('module.art.processList.processEq')" prop="equipmentIds">
<el-select v-model="dataForm.equipmentIds" clearable filterable multiple>
<el-select v-model="dataForm.equipmentIds" clearable filterable multiple @change="$forceUpdate()">
<el-option v-for="item in eqList" :key="item.id" :value="item.id" :label="item.name" />
</el-select>
</el-form-item>

View File

@ -1,8 +1,8 @@
<!--
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-04 10:06:01
* @LastEditors: fzq
* @LastEditTime: 2022-03-15 18:33:01
* @Description:
-->
<template>
@ -169,10 +169,10 @@ export default {
}]
},
sexOptions: [{
'label': '男',
'label': this.$t('module.basicData.cache.man'),
'value': 1
}, {
'label': '女',
'label': this.$t('module.basicData.cache.woman'),
'value': 0
}],
onDutyOptions: [{

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-03-14 10:35:17
* @LastEditTime: 2022-03-16 09:45:43
* @Description:
-->
<template>
@ -12,7 +12,6 @@
:model="formData"
:inline="true"
size="medium"
label-width="100px"
>
<el-form-item :label="$t('module.basicData.Warehouse.TaskType')" prop="taskType">
<el-select v-model="formData.taskType" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskType')])" clearable>

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-03-14 10:37:13
* @LastEditTime: 2022-03-16 09:46:13
* @Description:
-->
<template>
@ -12,7 +12,6 @@
:model="formData"
:inline="true"
size="medium"
label-width="100px"
>
<el-form-item :label="$t('module.basicData.Warehouse.TaskType')" prop="taskType">
<el-select v-model="formData.taskType" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.Warehouse.TaskType')])" clearable>

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-03-14 10:35:21
* @LastEditTime: 2022-03-16 09:46:19
* @Description:
-->
<template>
@ -13,7 +13,6 @@
:model="listQuery"
:inline="true"
size="medium"
label-width="100px"
>
<el-form-item :label="$t('module.art.processList.processName')" prop="key">
<el-select

View File

@ -2,12 +2,12 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-03-14 09:33:28
* @LastEditTime: 2022-03-16 09:45:26
* @Description:
-->
<template>
<div class="app-container">
<el-form ref="listQuery" :model="listQuery" :inline="true" label-width="120px" @keyup.enter.native="getList()">
<el-form ref="listQuery" :model="listQuery" :inline="true" @keyup.enter.native="getList()">
<el-form-item :label="$t('module.basicData.Warehouse.StorageBoxNumber')" prop="code">
<el-select
v-model="listQuery.code"

View File

@ -2,12 +2,12 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-01-17 14:06:53
* @LastEditTime: 2022-03-16 09:46:26
* @Description:
-->
<template>
<div class="app-container">
<el-form ref="listQuery" :model="listQuery" :inline="true" label-width="120px" @keyup.enter.native="getList()">
<el-form ref="listQuery" :model="listQuery" :inline="true" @keyup.enter.native="getList()">
<el-form-item :label="$t('module.basicData.Warehouse.LocationName')" prop="currLocationId">
<el-select
v-model="listQuery.currLocationId"

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-14 10:55:22
* @LastEditTime: 2022-03-16 09:49:10
* @Description:
-->
<template>
@ -15,7 +15,7 @@
ref="dataForm"
:model="dataForm"
size="medium"
label-width="110px"
label-width="170px"
label-position="left"
>
<el-col :span="12">

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-01-14 15:55:39
* @LastEditTime: 2022-03-16 09:50:12
* @Description:
-->
<template>
@ -15,7 +15,7 @@
ref="dataForm"
:model="dataForm"
size="medium"
label-width="110px"
label-width="160px"
label-position="left"
>
<el-col :span="8">

View File

@ -2,20 +2,21 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-01-13 16:22:39
* @LastEditTime: 2022-03-16 09:50:58
* @Description:
-->
<template>
<el-dialog
:title="'btn.see' | i18nFilter"
:visible.sync="visible"
width="60%"
>
<el-row :gutter="10">
<el-form
ref="dataForm"
:model="dataForm"
size="medium"
label-width="110px"
label-width="170px"
label-position="left"
>
<el-col :span="8">

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 14:15:30
* @LastEditTime: 2022-03-16 09:52:07
* @Description:
-->
<template>
@ -65,11 +65,6 @@ const tableProps = [
prop: 'name',
label: i18n.t('module.basicData.cache.LocationName'),
align: 'center'
},
{
prop: 'shelfName',
label: i18n.t('module.basicData.cache.locationType'),
align: 'center'
}
]

View File

@ -1,8 +1,8 @@
<!--
* @Author: gtz
* @Date: 2022-03-12 14:17:55
* @LastEditors: gtz
* @LastEditTime: 2022-03-12 14:23:43
* @LastEditors: zwq
* @LastEditTime: 2022-03-16 14:18:33
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\views\basicData\Warehouse\components\PublishTask.vue
-->
@ -21,13 +21,13 @@
label-position="left"
>
<el-form-item :label="$t('module.basicData.Warehouse.startPosition')" prop="startPosition">
<el-input v-model="dataForm.startPosition" readonly :style="{width: '100%'}" />
<el-input v-model="dataForm.startPosition" :style="{width: '100%'}" />
</el-form-item>
<el-form-item :label="$t('module.basicData.Warehouse.endPosition')" prop="endPosition">
<el-input v-model="dataForm.endPosition" readonly :style="{width: '100%'}" />
<el-input v-model="dataForm.endPosition" :style="{width: '100%'}" />
</el-form-item>
<el-form-item :label="$t('module.basicData.Warehouse.taskType')" prop="taskType">
<el-input v-model="dataForm.taskType" readonly :style="{width: '100%'}" />
<el-input v-model="dataForm.taskType" :style="{width: '100%'}" />
</el-form-item>
</el-form>
</el-row>

View File

@ -1,8 +1,8 @@
<!--
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: fzq
* @LastEditTime: 2022-03-10 18:44:36
* @LastEditors: zwq
* @LastEditTime: 2022-03-16 09:47:25
* @Description:
-->
<template>
@ -10,7 +10,7 @@
:title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter"
:visible.sync="visible"
>
<el-form ref="dataForm" :model="dataForm" :rules="dataRule" label-width="120px" @keyup.enter.native="dataFormSubmit()">
<el-form ref="dataForm" :model="dataForm" :rules="dataRule" @keyup.enter.native="dataFormSubmit()">
<el-form-item :label="$t('module.basicData.Warehouse.LocationName')" prop="currLocationId">
<el-select
v-model="dataForm.currLocationId"

View File

@ -1,17 +1,17 @@
<!--
* @Author: gtz
* @Date: 2022-03-03 09:16:10
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 14:27:57
* @LastEditors: gtz
* @LastEditTime: 2022-03-16 19:25:19
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\views\dashboard\index.vue
* @FilePath: \mt-ck-wms-ui\src\views\basicData\Warehouse\components\processStorageLink.vue
-->
<template>
<div class="dashboard-container">
<el-card class="dashboard-main">
<el-row class="dashboard-title">
<div class="dashboard-header-line" />
<div class="dashboard-header-title">WMS库存信息</div>
<div class="dashboard-header-title">{{ $t('module.dashboard.title') }}</div>
</el-row>
<el-row class="dashboard-legend">
<div
@ -45,20 +45,13 @@
<el-select
v-model="current"
size="mini"
placeholder="请选择库存范围"
@change="handleChange"
>
<el-option
v-for="item in totalPage"
:key="'select' + item"
:label="'第' + item + '页'"
:value="item"
/>
><el-option v-for="item in totalPage" :key="'select' + item" :label="$t('module.dashboard.pageHeader') + item + $t('module.dashboard.pageFooter')" :value="item" />
</el-select>
</div>
</el-row>
<el-row
v-if="current * 80 < shelfList[0].rowList[0].portList.length"
v-if="current * 80 < shelfVoList[0].rowVoList[0].portVoList.length"
class="dashboard-layout"
:gutter="12"
>
@ -70,14 +63,14 @@
>
<el-row>
<el-col
v-for="(i, index) in shelfList"
v-for="(i, index) in shelfVoList"
:key="item + 'shelf' + i.id"
:span="12"
class="dashboard-layout-shelf"
>
<el-row>
<el-col
v-for="z in i.rowList"
v-for="z in i.rowVoList"
:key="item + 'shelf' + i + 'row' + z.id"
:span="12"
class="dashboard-layout-row"
@ -89,43 +82,41 @@
:style="{
background:
portAttributeObj[
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute
],
cursor:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
? 'not-allowed'
: 'pointer',
color:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
? '#A2A8B5'
: '',
border:
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
? '1px solid red' : ''
}"
@click="
setType(
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
]
)
"
>
<div v-if="z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0] ? cassetteStatusObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0].status] : ''}" />
{{ z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3 ? z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
<div v-if="z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0] ? cassetteStatusObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0].status] : ''}" />
{{ z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3 ? z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
</div>
</el-col>
</el-row>
<div class="dashboard-layout-footer">
{{
"第" + bottomIndex[index] + "排(" + ((current - 1) * 4 + item) + ")"
}}
{{ $t(bottomIndex[index]) + '(' + ((current - 1) * 4 + item) + ')' }}
</div>
</el-col>
</el-row>
@ -134,7 +125,7 @@
<el-row v-else class="dashboard-layout" :gutter="12">
<el-col
v-for="item in Math.ceil(
(shelfList[0].rowList[0].portList.length - (current - 1) * 80) / 20
(shelfVoList[0].rowVoList[0].portVoList.length - (current - 1) * 80) / 20
)"
:key="'shelfbox' + item"
class="dashboard-layout-shelf-box"
@ -142,7 +133,7 @@
>
<el-row>
<el-col
v-for="(i, index) in shelfList"
v-for="(i, index) in shelfVoList"
:key="item + 'shelf' + i.id"
:span="12"
class="dashboard-layout-shelf"
@ -151,14 +142,14 @@
v-if="
item <
Math.ceil(
(shelfList[0].rowList[0].portList.length -
(shelfVoList[0].rowVoList[0].portVoList.length -
(current - 1) * 80) /
20
)
"
>
<el-col
v-for="z in i.rowList"
v-for="z in i.rowVoList"
:key="item + 'shelf' + i + 'row' + z.id"
:span="12"
class="dashboard-layout-row"
@ -170,48 +161,48 @@
:style="{
background:
portAttributeObj[
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute
],
cursor:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
? 'not-allowed'
: 'pointer',
color:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
? '#A2A8B5'
: '',
border:
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
? '1px solid red' : ''
}"
@click="
setType(
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
]
)
"
>
<div v-if="z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0] ? cassetteStatusObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0].status] : ''}" />
{{ z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3 ? z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
<div v-if="z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0] ? cassetteStatusObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0].status] : ''}" />
{{ z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3 ? z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
</div>
</el-col>
</el-row>
<el-row v-else>
<el-col
v-for="z in i.rowList"
v-for="z in i.rowVoList"
:key="item + 'shelf' + i + 'row' + z.id"
:span="12"
class="dashboard-layout-row"
>
<div
v-for="x in shelfList[0].rowList[0].portList.length -
v-for="x in shelfVoList[0].rowVoList[0].portVoList.length -
(item - 1) * 20 -
(current - 1) * 80"
:key="item + 'shelf' + i + 'row' + z + 'item' + x"
@ -219,43 +210,41 @@
:style="{
background:
portAttributeObj[
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute
],
cursor:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
? 'not-allowed'
: 'pointer',
color:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
? '#A2A8B5'
: '',
border:
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
? '1px solid red' : ''
}"
@click="
setType(
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
]
)
"
>
<div v-if="z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0] ? cassetteStatusObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteList[0].status] : ''}" />
{{ z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3 ? z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
<div v-if="z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3" class="dashboard-layout-item-cricle" :style="{background: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0] ? cassetteStatusObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].cassetteVoList[0].status] : ''}" />
{{ z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute !== 3 ? z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].name : 'XXXX' }}
</div>
</el-col>
</el-row>
<div class="dashboard-layout-footer">
{{
"第" + bottomIndex[index] + "排(" + ((current - 1) * 4 + item) + ")"
}}
{{ $t(bottomIndex[index]) + '(' + ((current - 1) * 4 + item) + ')' }}
</div>
</el-col>
</el-row>
@ -271,6 +260,7 @@
</template>
<script>
import { getPortList } from '@/api/dashboard'
import { batchListAdd } from '@/api/basicData/Warehouse/StorageBoxInfo'
import testdata from './testdata'
import processStorageType from './processStorageType'
@ -283,13 +273,15 @@ export default {
},
created() {
this.id = this.$route.query.id
this.totalPage = Math.ceil(
this.shelfList[0].rowList[0].portList.length / 80
)
this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
this.init()
},
methods: {
init() {
getPortList().then(res => {
this.shelfVoList = res.data[0].shelfVoList
this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
})
this.selectStorageList.splice(0, this.selectStorageList.length)
},
setType(item) {
@ -312,29 +304,37 @@ export default {
console.log(v)
},
submitLinkList() {
const tipArr = this.selectStorageList.map(item => {
return item.locationName
})
const obj = {
workSequenId: this.id,
processLocationStorageList: this.selectStorageList
}
this.$confirm(`${this.$t('module.basicData.visual.TipsStorageBefore')}[${tipArr.join(',')}]?`, this.$t('module.basicData.visual.Tips'), {
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
type: 'warning'
}).then(() => {
batchListAdd(obj).then(res => {
this.$message({
message: this.$t('module.basicData.visual.success'),
type: 'success',
duration: 1500,
onClose: () => {
this.selectStorageList.splice(0, this.selectStorageList.length)
}
})
if (this.selectStorageList.length) {
const tipArr = this.selectStorageList.map(item => {
return item.locationName
})
}).catch(() => {})
const obj = {
workSequenId: this.id,
processLocationStorageList: this.selectStorageList
}
this.$confirm(`${this.$t('module.basicData.visual.TipsStorageBefore')}[${tipArr.join(',')}]?`, this.$t('module.basicData.visual.Tips'), {
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'),
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
type: 'warning'
}).then(() => {
batchListAdd(obj).then(res => {
this.$message({
message: this.$t('module.basicData.visual.success'),
type: 'success',
duration: 1500,
onClose: () => {
this.init()
}
})
})
}).catch(() => {})
} else {
this.$message({
message: this.$t('module.basicData.visual.PleaseAddLocationFirst'),
type: 'warning',
duration: 1500
})
}
},
goback() {
this.selectStorageList.splice(0, this.selectStorageList.length)

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 11:02:46
* @LastEditTime: 2022-03-16 09:47:01
* @Description:
-->
<template>
@ -15,7 +15,6 @@
:model="dataForm"
size="medium"
:rules="dataRule"
label-width="110px"
label-position="left"
>
<el-form-item :label="$t('module.basicData.Warehouse.SelectStorageType')" prop="portAttrId">

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: gtz
* @LastEditTime: 2022-03-16 19:13:47
* @LastEditTime: 2022-03-16 20:06:20
* @Description:
-->
<template>
@ -10,23 +10,26 @@
:title="'btn.detail' | i18nFilter"
:visible.sync="visible"
>
<el-form ref="dataForm" :model="dataForm" label-width="100px">
<el-form-item :label="$t('module.dashboard.currLocation')" prop="currLocation">
{{ dataForm.currLocation }}
<el-form ref="dataForm" :model="dataForm" label-width="150px">
<el-form-item :label="$t('module.dashboard.name')" prop="name">
{{ dataForm.name }}
</el-form-item>
<el-form-item :label="$t('module.dashboard.attribute')" prop="attribute">
{{ dataForm.attribute ? portAttributeObj[dataForm.attribute] : '' }}
</el-form-item>
<el-form-item :label="$t('module.dashboard.cassetteStatus')" prop="cassetteVoList">
{{ dataForm.cassetteVoList.length && dataForm.cassetteVoList[0].status ? cassetteStatusObj[dataForm.cassetteVoList[0].status] : '' }}
</el-form-item>
<el-form-item :label="$t('module.dashboard.workOrderNo')" prop="workOrderNo">
{{ dataForm.workOrderNo }}
</el-form-item>
<el-form-item :label="$t('module.dashboard.storageBoxCode')" prop="storageBoxCode">
{{ dataForm.storageBoxCode }}
</el-form-item>
<el-form-item :label="$t('module.dashboard.isEmpty')" prop="isEmpty">
{{ dataForm.isEmpty >= 0 ? emptyDict[dataForm.isEmpty] : '' }}
</el-form-item>
<el-form-item :label="$t('module.dashboard.status')" prop="status">
{{ dataForm.status >= 0 ? statusDict[dataForm.status] : '' }}
</el-form-item>
</el-form>
<div class="drawer-footer">
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
</div>
</span>
</el-dialog>
</template>
@ -48,32 +51,25 @@ export default {
storageBoxId: null,
updateTime: null
},
emptyDict: {
0: this.$t('module.dashboard.empty'),
1: this.$t('module.dashboard.notEmpty')
cassetteStatusObj: {
'1': 'Empty Cassette',
'2': 'Dummy Cassette',
'3': 'OK Cassette',
'4': 'NOK Cassette'
},
statusDict: {
0: this.$t('module.dashboard.initialize'),
1: this.$t('module.dashboard.finish')
portAttributeObj: {
1: 'Working Port',
2: 'Buffer Port',
3: 'Exception Port'
}
}
},
methods: {
init(data) {
this.visible = true
console.log(data)
this.visible = true
this.dataForm = data
}
}
}
</script>
<style scoped>
.drawer-footer {
width: 100%;
margin-top: 50px;
border-top: 1px solid #e8e8e8;
padding: 10px 50px;
text-align: left;
background: #fff;
}
</style>

View File

@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2022-03-03 09:16:10
* @LastEditors: gtz
* @LastEditTime: 2022-03-16 19:12:35
* @LastEditTime: 2022-03-16 20:07:40
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\views\dashboard\index.vue
-->
@ -23,9 +23,10 @@
{{ item.name }}
</div>
<div class="dashboard-legend-search">
<el-select v-model="current" size="mini" placeholder="请选择库存范围" @change="handleChange">
<el-select v-model="current" size="mini" @change="handleChange">
<el-option v-for="item in totalPage" :key="'select' + item" :label="$t('module.dashboard.pageHeader') + item + $t('module.dashboard.pageFooter')" :value="item" />
</el-select>
<el-button type="primary" @click="refresh">{{ 'btn.refresh' | i18nFilter }}</el-button>
</div>
</el-row>
<el-row v-if="current * 80 < shelfVoList[0].rowVoList[0].portVoList.length" class="dashboard-layout" :gutter="12">
@ -92,34 +93,28 @@ export default {
},
created() {
this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
getPortList().then(res => {
console.log(res.data[0].shelfVoList)
this.shelfVoList = res.data[0].shelfVoList.map(item => {
item.rowVoList.map(i => {
i.portVoList.map(z => {
if (!(z.attribute)) {
z.attribute = 0
}
return z
})
return i
})
return item
})
this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
})
this.init()
},
methods: {
init() {
getPortList().then(res => {
this.shelfVoList = res.data[0].shelfVoList
this.totalPage = Math.ceil(this.shelfVoList[0].rowVoList[0].portVoList.length / 80)
})
},
handleChange(v) {
console.log(v)
},
handlePort(z, x) {
getPortDetail(z.portVoList[x].id).then(res => {
getPortDetail(z.portVoList[x - 1].id).then(res => {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init(res.data)
this.$refs.addOrUpdate.init({ ...(res.data), ...z.portVoList[x - 1] })
})
})
},
refresh() {
this.init()
}
}
}

View File

@ -2,20 +2,21 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 10:50:00
* @LastEditTime: 2022-03-16 14:17:40
* @Description:
-->
<template>
<el-dialog
:title="'btn.see' | i18nFilter"
:visible.sync="visible"
width="70%"
>
<el-row :gutter="10">
<el-form
ref="dataForm"
:model="dataForm"
size="medium"
label-width="110px"
label-width="180px"
label-position="left"
>
<el-col :span="8">
@ -115,6 +116,7 @@
<script>
import { ExecutionInfoDetail } from '@/api/orderManage/00A'
import { timeFormatter } from '@/filters'
export default {
data() {
@ -123,7 +125,6 @@ export default {
dataForm: {
id: 0,
name: undefined,
createTime: undefined,
priority: '',
actualQuantity: '',
startProduceTime: '',
@ -151,6 +152,8 @@ export default {
res.data.type = this.statusfilter('orderType', res.data.type)
res.data.priority = this.statusfilter('priority', res.data.priority)
res.data.triggerOrigin = this.statusfilter('triggerOrigin', res.data.triggerOrigin)
res.data.finishProduceTime = timeFormatter(res.data.finishProduceTime)
res.data.startProduceTime = timeFormatter(res.data.startProduceTime)
res.data.ProcessOrNot = res.data.processId ? '是' : '否'
this.dataForm = res.data
})

View File

@ -2,20 +2,21 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-03-09 16:40:11
* @LastEditTime: 2022-03-16 14:17:37
* @Description:
-->
<template>
<el-dialog
:title="'btn.see' | i18nFilter"
:visible.sync="visible"
width="70%"
>
<el-row :gutter="10">
<el-form
ref="dataForm"
:model="dataForm"
size="medium"
label-width="110px"
label-width="180px"
label-position="left"
>
<el-col :span="8">
@ -105,6 +106,7 @@
<script>
import { ProcessInfoDetail } from '@/api/orderManage/00A'
import { timeFormatter } from '@/filters'
export default {
data() {
@ -113,7 +115,6 @@ export default {
dataForm: {
id: 0,
name: undefined,
createTime: undefined,
priority: '',
actualQuantity: '',
startProduceTime: '',
@ -140,6 +141,7 @@ export default {
res.data.type = this.statusfilter('orderType', res.data.type)
res.data.priority = this.statusfilter('priority', res.data.priority)
res.data.triggerOrigin = this.statusfilter('triggerOrigin', res.data.triggerOrigin)
res.data.startProduceTime = timeFormatter(res.data.startProduceTime)
this.dataForm = res.data
})
}

View File

@ -1,7 +1,7 @@
<!--
* @Date: 2021-01-07 20:09:37
* @LastEditors: zwq
* @LastEditTime: 2022-03-10 14:25:50
* @LastEditTime: 2022-03-16 10:02:41
* @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue
* @Description:
-->
@ -13,7 +13,7 @@
width="160"
>
<div>
<el-select v-model="value" placeholder="请选择">
<el-select v-model="value" :placeholder="$t('module.basicData.Warehouse.RelateProcess')">
<el-option
v-for="item in options"
:key="item.id"
@ -23,8 +23,8 @@
</el-select>
</div>
<div style="text-align: right; margin: 0">
<el-button size="mini" type="text" @click="visible = false">取消</el-button>
<el-button type="primary" size="mini" @click="emitClick">确定</el-button>
<el-button size="mini" type="text" @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
<el-button type="primary" size="mini" @click="emitClick">{{ 'btn.confirm' | i18nFilter }}</el-button>
</div>
<el-button slot="reference" type="text">{{ $t('module.basicData.Warehouse.RelateProcess') }}</el-button>
</el-popover>

View File

@ -4,7 +4,7 @@
* @Author: fzq
* @Date: 2022-03-05 17:45:46
* @LastEditors: fzq
* @LastEditTime: 2022-03-07 09:19:34
* @LastEditTime: 2022-03-16 16:11:55
-->
<template>
<!-- <el-dialog
@ -40,7 +40,7 @@
</template>
<script>
import { updateSubstrate, listSubstrate } from '@/api/report-manage/report'
import { updateSubstrate } from '@/api/report-manage/report'
export default {
props: {
@ -55,15 +55,18 @@ export default {
return {
visible: false,
dataForm: {
id: '',
substrateCode: '',
location: '',
storeTime: '',
substrateStatus: '',
code: '',
storageBoxId: '',
storageCode: '',
interCode: ''
// substrateCode: '',
// location: '',
// storeTime: '',
// substrateStatus: '',
// code: '',
// storageBoxId: '',
// storageCode: '',
// interCode: '',
// id: '',
// current: 1,
// size: 10,
// locationStorageSubID: ''
},
list: {
id: '',
@ -107,22 +110,25 @@ export default {
// })
// })
// },
init(id) {
init(data) {
// this.dataForm.id = id || ''
this.dataForm.storageBoxId = this.$route.query.id
this.dataForm.storageCode = this.$route.query.code
// console.log(this.$route.query)
// this.dataForm.id = this.$route.query.id
// this.dataForm.substrateCode = this.$route.query.substrateCode
// this.dataForm.locationStorageSubID = this.$route.query.locationStorageSubID
this.dataForm = data
this.visible = true
// console.log(this.dataForm)
listSubstrate(this.dataForm).then(res => {
console.log(res.data[0])
this.dataForm.id = res.data[0].id
this.dataForm.location = res.data[0].location
this.dataForm.storeTime = res.data[0].storeTime
this.dataForm.substrateCode = res.data[0].substrateCode
this.dataForm.substrateStatus = res.data[0].substrateStatus
this.dataForm.interCode = res.data[0].interCode
// console.log(this.dataForm)
})
// listSubstrate(this.dataForm).then(res => {
// // console.log(res)
// this.dataForm.id = res.data[0].id
// this.dataForm.location = res.data[0].location
// this.dataForm.storeTime = res.data[0].storeTime
// this.dataForm.substrateCode = res.data[0].substrateCode
// this.dataForm.substrateStatus = res.data[0].substrateStatus
// this.dataForm.interCode = res.data[0].interCode
// // console.log(this.dataForm)
// })
},
//
dataFormSubmit() {
@ -132,10 +138,10 @@ export default {
'substrateStatus': this.dataForm.substrateStatus,
'storeTime': this.dataForm.storeTime,
'id': this.dataForm.id,
'substrateCode': this.dataForm.substrateCode,
'code': this.dataForm.substrateCode,
'location': this.dataForm.location,
'interCode': this.dataForm.interCode,
'storageBoxId': this.dataForm.storageBoxId
'storageBoxFid': this.dataForm.storageBoxFid
}
console.log(data)
updateSubstrate(data).then(res => {

View File

@ -4,7 +4,7 @@
* @Author: fzq
* @Date: 2022-03-05 14:35:07
* @LastEditors: fzq
* @LastEditTime: 2022-03-05 16:44:43
* @LastEditTime: 2022-03-16 16:13:58
-->
<template>
<span>
@ -26,7 +26,8 @@ export default {
name: 'viewSubstrate',
query: {
id: this.injectData.id,
code: this.injectData.code
code: this.injectData.code,
locationStorageSubID: this.injectData.locationStorageSubID
}
})
}

View File

@ -4,7 +4,7 @@
* @Author: fzq
* @Date: 2022-03-05 15:55:45
* @LastEditors: fzq
* @LastEditTime: 2022-03-11 11:08:53
* @LastEditTime: 2022-03-16 16:09:15
-->
<template>
<div class="app-container">
@ -29,7 +29,7 @@
@clickBtn="handleClick"
/>
</base-table>
<edit-substrate v-if="addOrUpdateVisible" :id="listQuery.id" ref="addOrUpdate" @refreshDataList="getList" />
<edit-substrate v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getList" />
</div>
</template>
@ -104,7 +104,7 @@ export default {
return {
addOrUpdateVisible: false,
num: '',
storageCode: this.$t('module.basicData.visual.TipsBefore'),
storageCode: this.$t('module.basicData.visual.storageCode'),
tableBtn,
trueWidth: 200,
tableProps,
@ -113,14 +113,17 @@ export default {
listQuery: {
current: 1,
size: 10,
storageBoxCode: '',
storageBoxId: ''
}
locationStorageSubID: ''
// storageBoxCode: '',
// storageBoxId: ''
},
count: 0
}
},
created() {
this.listQuery.storageBoxCode = this.$route.query.code
this.listQuery.storageBoxId = this.$route.query.id
// this.listQuery.storageBoxId = this.$route.query.id
this.listQuery.locationStorageSubID = this.$route.query.locationStorageSubID
this.getList()
},
methods: {
@ -131,7 +134,7 @@ export default {
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'),
type: 'warning'
}).then(() => {
// console.log(raw.data)
// console.log(raw.data)
deleSubstrate(raw.data).then(response => {
this.$message({
message: this.$t('module.basicData.visual.success'),
@ -144,16 +147,18 @@ export default {
})
}).catch(() => {})
} else {
this.addNew(raw.data.id)
// this.count = raw.data._pageIndex
// console.log(this.count)
this.addNew(raw.data)
}
},
getList() {
this.listLoading = true
this.num = this.listQuery.storageBoxCode
this.listQuery.code = this.$route.query.code
console.log(this.listQuery)
// console.log(this.listQuery)
listSubstrate(this.listQuery).then(response => {
console.log(response)
// console.log(response)
if (response.data) {
this.list = response.data
console.log(this.list)