58 İşleme
test ... fzq

Yazar SHA1 Mesaj Tarih
Fanzink
c595794b1a Merge branch 'develop' into fzq 2022-05-30 13:42:36 +08:00
Fanzink
72ac5b9998 '修改导出后空白bug' 2022-05-30 13:41:50 +08:00
ddc3f5d49d Merge pull request '修改首页详情' (#82) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #82
2022-04-02 16:04:35 +08:00
zwq
db0a906323 修改首页详情 2022-04-02 16:04:07 +08:00
93a412d243 Merge pull request '修改bug' (#81) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #81
2022-03-28 13:56:31 +08:00
zwq
aa85593884 修改bug 2022-03-28 13:56:03 +08:00
a77918c059 Merge pull request 'fzq' (#80) from fzq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #80
2022-03-28 13:54:27 +08:00
Fanzink
d8336aced0 '修改存储箱字段' 2022-03-28 11:13:51 +08:00
Fanzink
43983bc929 '修改存储箱字段' 2022-03-28 11:12:03 +08:00
6d3309ed2b Merge pull request '修改bug' (#79) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #79
2022-03-22 11:27:14 +08:00
zwq
cae8938e22 修改bug 2022-03-22 11:26:34 +08:00
03b13c77aa Merge pull request 'fzq' (#78) from fzq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #78
2022-03-21 09:12:51 +08:00
Fanzink
985ec95bc6 Merge branch 'develop' into fzq 2022-03-20 09:50:51 +08:00
Fanzink
453f66b7b3 '更新字段' 2022-03-20 09:50:14 +08:00
47793c38da Merge pull request '修改bug' (#77) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #77
2022-03-19 13:52:17 +08:00
zwq
dcb7801d24 修改bug 2022-03-19 13:49:04 +08:00
f59fc1a594 Merge pull request 'gtz' (#76) from gtz into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #76
2022-03-18 16:37:14 +08:00
b2c50e8c56 merge 2022-03-18 16:36:37 +08:00
dd8e54f743 首页去除缓存 2022-03-18 16:29:54 +08:00
8142f16662 dashboard attribute number to string 2022-03-18 16:05:01 +08:00
5ec45b87ca Merge pull request 'fzq' (#75) from fzq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #75
2022-03-18 15:03:46 +08:00
Fanzink
445ad7f280 Merge branch 'develop' into fzq 2022-03-18 15:01:06 +08:00
Fanzink
15f9fb0f5b '改bug更新' 2022-03-18 15:00:32 +08:00
114bfeccf3 Merge pull request '修改bug' (#74) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #74
2022-03-18 09:50:40 +08:00
zwq
018695fe70 修改bug 2022-03-18 09:49:30 +08:00
9aaffbb8b4 Merge pull request '修改bug' (#73) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #73
2022-03-17 16:22:39 +08:00
zwq
2a2bd1d726 修改bug 2022-03-17 16:21:35 +08:00
dd029f2055 Merge pull request 'eqtyep default' (#72) from gtz into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #72
2022-03-17 14:01:10 +08:00
fe54918801 eqtyep default 2022-03-17 14:00:36 +08:00
ced191b4df Merge pull request '修改仓库样式' (#71) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #71
2022-03-17 10:59:56 +08:00
zwq
995db83484 修改仓库样式 2022-03-17 10:59:00 +08:00
40f426f7f5 Merge pull request 'base eq add' (#70) from gtz into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #70
2022-03-17 10:57:00 +08:00
61270a542d base eq 2022-03-17 10:56:24 +08:00
3ecaa99a8c Merge branch 'develop' into gtz 2022-03-17 10:52:41 +08:00
79238fca27 1 2022-03-17 10:52:22 +08:00
73d8951bbb Merge pull request '首页对接以及库位详情' (#69) from gtz into develop
Bazı kontroller başarısız oldu
continuous-integration/drone/push Build is failing
Reviewed-on: #69
2022-03-16 20:12:20 +08:00
2f19b50e20 merge and update dashboard detail 2022-03-16 20:11:30 +08:00
6d4594b338 update 2022-03-16 19:14:00 +08:00
d4168e6157 Merge pull request '修改bug' (#68) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #68
2022-03-16 16:19:42 +08:00
zwq
dfb1f3d97b 修改bug 2022-03-16 16:18:59 +08:00
26772a324a Merge pull request 'fzq' (#67) from fzq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #67
2022-03-16 16:17:35 +08:00
Fanzink
aae6117db7 Merge branch 'develop' into fzq 2022-03-16 16:15:16 +08:00
Fanzink
99f92f6891 '报表更新' 2022-03-16 16:14:50 +08:00
d8424e1752 Merge pull request '修改bug' (#66) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #66
2022-03-16 14:19:58 +08:00
zwq
598f49e378 修改bug 2022-03-16 14:19:28 +08:00
982c25fa0b Merge pull request '修改bug' (#65) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #65
2022-03-16 10:13:21 +08:00
zwq
2756e75aaf 修改bug 2022-03-16 10:12:36 +08:00
74883db1c0 Merge pull request 'fzq' (#64) from fzq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #64
2022-03-16 09:55:55 +08:00
643277e1c7 更新 'src/lang/i18n/zh/module/basicData.js' 2022-03-16 09:53:24 +08:00
4a834c3dc1 更新 'src/lang/i18n/en/module/basicData.js' 2022-03-16 09:53:04 +08:00
6b20524a5f 更新 'src/lang/i18n/zh/module/basicData.js' 2022-03-16 09:52:02 +08:00
Fanzink
f219b55d0c '更新' 2022-03-16 09:43:13 +08:00
Fanzink
79b7fe0eec '更新' 2022-03-16 09:41:00 +08:00
2329a20c4f Merge pull request 'zwq' (#63) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #63
2022-03-16 09:00:59 +08:00
zwq
7aba931c94 提交 2022-03-16 08:58:59 +08:00
zwq
176fd99cd1 Merge branch 'test' of http://git.picaiba.com/mt-ck-00a/mt-ck-wms-ui into zwq 2022-03-16 08:42:53 +08:00
77fbbb630b Merge pull request '仓库翻译' (#62) from zwq into develop
Tüm denetlemeler başarılı oldu
continuous-integration/drone/push Build is passing
Reviewed-on: #62
2022-03-15 17:04:29 +08:00
zwq
18b932afa1 仓库翻译 2022-03-15 17:04:06 +08:00
51 değiştirilmiş dosya ile 1689 ekleme ve 1104 silme

27
src/api/dashboard.js Normal dosya
Dosyayı Görüntüle

@@ -0,0 +1,27 @@
/*
* @Author: gtz
* @Date: 2022-03-16 16:08:06
* @LastEditors: gtz
* @LastEditTime: 2022-03-16 16:45:41
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\api\dashboard.js
*/
import request from '@/utils/request'
// 获取菜单列表
export function getPortList(data) {
return request({
url: '/api/wms/location/shelfList',
method: 'post',
data
})
}
// 获取菜单详情
export function getPortDetail(id) {
return request({
url: '/api/wms/storage/box/circ/info/getByLocationId',
method: 'post',
data: { id }
})
}

Dosyayı Görüntüle

@@ -2,13 +2,13 @@
* @Author: zwq
* @Date: 2022-01-17 14:55:09
* @LastEditors: zwq
* @LastEditTime: 2022-03-10 14:13:22
* @LastEditTime: 2022-03-28 13:52:12
* @Description:
*/
import request from '@/utils/request'
export function ProcessInfoList(data) { // 获取工单工艺列表
export function ProcessInfoList(data) { // 获取工单列表
return request({
url: '/api/wms/work/order/page',
method: 'post',

Dosyayı Görüntüle

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

Dosyayı Görüntüle

@@ -1,8 +1,8 @@
/*
* @Author: gtz
* @Date: 2021-03-04 16:13:51
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 10:17:01
* @LastEditors: fzq
* @LastEditTime: 2022-03-28 11:13:15
* @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',
@@ -55,7 +56,8 @@ export default {
location: 'Location',
locationTip: 'Click the picture below to select a point. After selecting a point, select a location in the pop-up box. If you do not select a location when adding a new point, you cannot select the next point. If you want to adjust the order of the points, drag the label at the bottom of the picture to the position you want to adjust. Click to confirm the submission point information and click Reset to reset the point information to the state when the pop-up box is opened',
locationInfo: 'Location Point Info',
storageCode: 'storageBoxCode'
storageCode: 'storageBoxCode',
storageBoxFid: 'StorageBox FID Code'
},
factory: {
placeholderName: 'Name Or Code',
@@ -169,7 +171,14 @@ 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',
locationNumber: 'Location Number'
},
storageBox: {
name: 'Name',
@@ -354,6 +363,11 @@ export default {
publishTask: 'Publish The Task',
startPosition: 'Start',
endPosition: 'End',
taskType: 'Task Type'
taskType: 'Task Type',
ExWarehouse: 'Ex Warehouse',
InWarehouse: 'In Warehouse',
Circulation: 'Circulation',
Initialization: 'Initialization',
Damage: 'Damage'
}
}

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2022-03-15 16:42:34
* @LastEditors: gtz
* @LastEditTime: 2022-03-15 16:58:26
* @LastEditTime: 2022-03-16 20:01:32
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\lang\i18n\en\module\dashboard.js
*/
@@ -12,5 +12,12 @@ export default {
second: 'Second Row',
title: 'WMS Inventory Information',
pageHeader: 'No.',
pageFooter: ' Page'
pageFooter: ' Page',
isEmpty: 'Is Empty',
status: 'Status',
storageBoxCode: 'Cassette Code',
name: 'Location Name',
attribute: 'Location Attribute',
cassetteStatus: 'Cassette Status',
workOrderNo: 'Work Order Number'
}

Dosyayı Görüntüle

@@ -1,8 +1,8 @@
/*
* @Author: gtz
* @Date: 2021-04-22 19:48:46
* @LastEditors: gtz
* @LastEditTime: 2021-04-23 14:36:08
* @LastEditors: fzq
* @LastEditTime: 2022-03-18 14:50:00
* @Description: file content
*/
@@ -11,7 +11,35 @@ export default {
reportName: 'Report name',
reportSort: 'Report Sort',
createTime: 'Create Date',
operation: 'Operation'
operation: 'Operation',
storageBoxNumber: 'StorageBox Number',
queryFiltering: 'Query Filtering',
storageBoxReport: 'StorageBoxReport'
},
inventory: {
code: 'Code',
status: 'Status',
inprocessCode: 'Inprocess Code',
nextprocessCode: 'Next Process Code',
currentLocation: 'Current Location',
storeTime: 'Store Time',
orderName: 'Order Name',
substrateDetails: 'Substrate Details',
viewSubstrates: 'View Substrates',
manual: 'Manual',
downl: 'Download'
},
substrate: {
substrateCode: 'SubstrateCode',
location: 'Location',
storeTime: 'Store Time',
substrateStatus: 'Substrate Status',
editSubstrate: 'Edit Substrate',
interCode: 'Inter Code',
subStorageStatus: 'Sub Storage Status',
load: 'Load',
unload: 'Unload',
machineHandID: 'Machine Hand ID'
},
reportSort: {
all: 'All'

Dosyayı Görüntüle

@@ -1,8 +1,9 @@
/*
* @Author: gtz
* @Date: 2021-03-04 16:13:51
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 10:16:52
* @LastEditors: fzq
* @LastEditTime: 2022-03-28 11:13:13
* * @Description: file content
*/
export default {
visual: {
@@ -30,6 +31,7 @@ export default {
Tips: '提示',
TipsBefore: '确定删除',
TipsStorageBefore: '确定添加库位:',
PleaseAddLocationFirst: '请先添加库位!',
Description: '描述',
Remarks: '备注',
Or: '或',
@@ -54,7 +56,8 @@ export default {
location: '库位',
locationTip: '点击下方图片选点,选点后在弹出框内选择库位,新增点位时未选择库位无法进行下一个选点,若想调整点位顺序可拖动图片下方的标签到你想调整的位置,点击确定提交点位信息,点击重置将点位信息重置到打开弹出框时的状态',
locationInfo: '库位点信息',
storageCode: '存储箱号'
storageCode: '存储箱号',
storageBoxFid: '存储箱名FID编码'
},
factory: {
placeholderName: '名称或编码',
@@ -159,7 +162,10 @@ export default {
processEquipment: '工艺设备',
sheCode: '货架编码',
sheName: '货架名',
locaNum: '库存数量'
locaNum: '库存数量',
man: '男',
woman: '女',
locationNumber: '库位编号'
},
storageBox: {
name: '存储箱名称',
@@ -361,6 +367,11 @@ export default {
publishTask: '发布任务',
startPosition: '起点',
endPosition: '终点',
taskType: '任务类型'
taskType: '任务类型',
ExWarehouse: '出库',
InWarehouse: '入库',
Circulation: '流转',
Initialization: '初始化',
Damage: '损坏'
}
}

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2022-03-15 16:42:34
* @LastEditors: gtz
* @LastEditTime: 2022-03-15 16:58:30
* @LastEditTime: 2022-03-16 20:01:27
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\lang\i18n\zh\module\dashboard.js
*/
@@ -12,5 +12,12 @@ export default {
second: '第二排',
title: 'WMS库存信息',
pageHeader: '第',
pageFooter: '页'
pageFooter: '页',
isEmpty: '是否为空',
status: '状态',
storageBoxCode: '存储箱编码',
name: '库位名',
attribute: '库位属性',
cassetteStatus: '存储箱状态',
workOrderNo: '工单号'
}

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2021-04-22 19:48:46
* @LastEditors: fzq
* @LastEditTime: 2022-03-06 16:50:50
* @LastEditTime: 2022-03-18 14:49:43
* @Description: file content
*/
@@ -13,7 +13,8 @@ export default {
createTime: '添加时间',
operation: '操作',
storageBoxNumber: '存储箱号',
queryFiltering: '查询过滤'
queryFiltering: '查询过滤',
storageBoxReport: '存储箱报表'
},
inventory: {
code: '存储箱号',
@@ -34,7 +35,11 @@ export default {
storeTime: '入库时间',
substrateStatus: '基板状态',
editSubstrate: '编辑基板',
interCode: '内部编码'
interCode: '内部编码',
subStorageStatus: '存取状态',
load: '上片',
unload: '下片',
machineHandID: '机械手ID'
},
reportSort: {
all: '全部'

Dosyayı Görüntüle

@@ -11,10 +11,10 @@
<div class="right-menu">
<div v-if="showhome" class="right-menu-back" @click="toHome">
<!-- <div v-if="showhome" class="right-menu-back" @click="toHome">
<svg-icon class="item-icon" icon-class="home" />
{{ 'navbar.homepage' | i18nFilter }}
</div>
</div> -->
<template>
<lang-select class="right-menu-item hover-effect" />

Dosyayı Görüntüle

@@ -57,19 +57,6 @@ export const constantRoutes = [
component: () => import('@/views/login/index'),
hidden: true
},
{
path: '/',
component: Layout,
redirect: '/dashboard',
children: [
{
path: 'dashboard',
component: () => import('@/views/dashboard/index'),
name: 'Dashboard',
meta: { title: routerTitle.dashboard?.[language] || routerTitle.dashboard.en, icon: 'form', iconPart: 'dashboard', affix: true, required: true, requireToken: true }
}
]
},
// {
// path: '/',
// component: () => import('@/views/ChoicePart'),
@@ -91,6 +78,20 @@ export const constantRoutes = [
component: () => import('@/views/error-page/401'),
hidden: true
},
{
path: '/dashboard',
component: Layout,
redirect: '/dashboard',
name: 'Dash',
children: [
{
path: 'dashboard',
component: () => import('@/views/dashboard/index'),
name: 'Dashboard',
meta: { title: routerTitle.dashboard?.[language] || routerTitle.dashboard.en, icon: 'form', affix: true, required: true, requireToken: true, noCache: true }
}
]
},
{
path: '/',
component: Layout,
@@ -215,6 +216,7 @@ export const constantRoutes = [
path: 'staff',
component: () => import('@/views/basicData/GroupModule/staff'),
name: 'staff',
hidden: true,
meta: { title: routerTitle.basicData.teamManage.staff?.[language] || routerTitle.basicData.teamManage.staff.en, icon: 'form', affix: true, required: true, requireToken: true }
},
{
@@ -516,7 +518,6 @@ export const constantRoutes = [
path: 'menumanager',
component: () => import('@/views/MenuManager'),
name: 'MenuManager',
hidden: true,
meta: { title: routerTitle.basic.menumanage?.[language] || routerTitle.basic.menumanage.en, icon: 'form', affix: true, required: true, requireToken: true }
},
{

Dosyayı Görüntüle

@@ -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'

Dosyayı Görüntüle

@@ -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'

Dosyayı Görüntüle

@@ -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'

Dosyayı Görüntüle

@@ -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'

Dosyayı Görüntüle

@@ -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
// })
// }
// })
}
}
}

Dosyayı Görüntüle

@@ -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
// }
// })
}
}
}

Dosyayı Görüntüle

@@ -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()
}
})
},

Dosyayı Görüntüle

@@ -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-28 13:52:30
* @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 />
@@ -38,8 +37,8 @@
/>
</el-select>
</el-form-item>
<el-form-item :label="$t('module.basicData.ScrapInfo.workOrderName')" prop="orderId">
<el-select v-model="formData.orderId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.workOrderName')])" clearable :style="{width: '100%'}" filterable>
<el-form-item :label="$t('module.basicData.ScrapInfo.workOrderName')" prop="workOrderId">
<el-select v-model="formData.workOrderId" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.ScrapInfo.workOrderName')])" clearable :style="{width: '100%'}" filterable>
<el-option
v-for="(item, index) in orderList"
:key="index"
@@ -89,7 +88,7 @@ import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn'
import { timeFormatter } from '@/filters'
import i18n from '@/lang'
import { getEqList } from '@/api/equipment/maintain'
import { ExecutionInfoList } from '@/api/orderManage/00A'
import { ProcessInfoList } from '@/api/orderManage/00A'
// import DictFilter from '@/components/BaseTable/subcomponents/DataDictFilter'
/**
* 表格表头配置项 TypeScript接口注释
@@ -183,7 +182,7 @@ export default {
formData: {
timeSlot: null,
substrateId: '',
orderId: '',
workOrderId: '',
equipmentId: '',
current: 1,
size: 10,
@@ -255,7 +254,7 @@ export default {
if (result1.code === 0) {
this.device = result1.data.records
}
const result2 = await ExecutionInfoList({
const result2 = await ProcessInfoList({
current: 1,
size: 999
})

Dosyayı Görüntüle

@@ -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>

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: fzq
* @LastEditTime: 2022-03-15 09:45:30
* @LastEditTime: 2022-03-19 10:25:46
* @Description:
-->
<template>
@@ -111,6 +111,11 @@ const tableProps = [
prop: 'statusName',
label: i18n.t('module.basicData.cache.status'),
align: 'center'
},
{
prop: 'locationNumber',
label: i18n.t('module.basicData.cache.locationNumber'),
align: 'center'
}
]
@@ -143,10 +148,11 @@ export default {
}],
listLoading: true,
listQuery: {
name: '',
current: 1,
size: 990,
shelfId: '',
id: ''
size: 20
// shelfId: '',
// id: ''
},
sheCode: this.$t('module.basicData.cache.sheCode'),
sheName: this.$t('module.basicData.cache.sheName'),
@@ -188,6 +194,7 @@ export default {
this.listLoading = true
this.listQuery.name = key
// shelfId与查询参数id关联
console.log(this.listQuery)
this.listQuery.id = this.listQuery.shelfId
locationList(this.listQuery).then(response => {
if (response.data.records) {

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: fzq
* @LastEditTime: 2022-03-15 09:54:52
* @LastEditTime: 2022-03-23 11:03:08
* @Description:
-->
<template>
@@ -35,7 +35,7 @@
<!-- <el-form-item :label="$t('module.basicData.cache.status')" prop="status">
<el-input v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.status')])" clearable />
</el-form-item> -->
<el-form-item :label="$t('module.basicData.cache.status')" prop="status">
<!-- <el-form-item :label="$t('module.basicData.cache.status')" prop="status">
<el-select v-model="dataForm.status">
<el-option
v-for="item in options"
@@ -44,6 +44,9 @@
:value="item.value"
/>
</el-select>
</el-form-item> -->
<el-form-item :label="$t('module.basicData.cache.locationNumber')" prop="locationNumber">
<el-input v-model="dataForm.locationNumber" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.locationNumber')])" clearable />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
@@ -75,7 +78,8 @@ export default {
locationNameAlias: '',
rowNum: '',
status: null,
locationType: ''
locationType: '',
locationNumber: 0
},
options: [
{
@@ -99,10 +103,13 @@ export default {
{ required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.cache.LocationCode')]), trigger: 'blur' }
],
layers: [
{ pattern: /^[1-9]\d*$/, message: this.$t('module.basicData.cache.warning'), trigger: 'blur' }
{ required: true, pattern: /^[1-9]\d*$/, message: this.$t('module.basicData.cache.warning'), trigger: 'blur' }
],
columns: [
{ pattern: /^[1-9]\d*$/, message: this.$t('module.basicData.cache.warning'), trigger: 'blur' }
{ required: true, pattern: /^[1-9]\d*$/, message: this.$t('module.basicData.cache.warning'), trigger: 'blur' }
],
locationNumber: [
{ required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.cache.locationNumber')]), trigger: 'blur' }
]
}
}
@@ -138,7 +145,8 @@ export default {
'shelfId': this.shelfId,
'id': this.dataForm.id,
'status': this.dataForm.status,
'locationType': this.dataForm.locationType
'locationType': this.dataForm.locationType,
'locationNumber': this.dataForm.locationNumber
}
if (this.dataForm.id) {
locationUpdate(data).then(res => {

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: fzq
* @LastEditTime: 2022-03-14 16:23:19
* @LastEditTime: 2022-03-23 11:04:20
* @Description:
-->
<template>
@@ -30,6 +30,9 @@
/>
</el-select>
</el-form-item>
<el-form-item :label="$t('module.basicData.visual.storageBoxFid')" prop="storageBoxFid">
<el-input v-model="dataForm.storageBoxFid" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.storageBoxFid')])" clearable />
</el-form-item>
<el-form-item :label="$t('module.basicData.visual.Remarks')" prop="note">
<el-input v-model="dataForm.note" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable />
</el-form-item>
@@ -54,7 +57,8 @@ export default {
code: '',
status: '',
enName: '',
note: ''
note: '',
storageBoxFid: ''
},
options: [
{

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: fzq
* @LastEditTime: 2022-03-10 10:55:34
* @LastEditTime: 2022-03-23 11:06:20
* @Description:
-->
<template>
@@ -101,6 +101,11 @@ const tableProps = [
filter: basicData('storage'),
align: 'center'
},
{
prop: 'storageBoxFid',
label: i18n.t('module.basicData.visual.storageBoxFid'),
align: 'center'
},
{
prop: 'note',
label: i18n.t('module.basicData.storageBox.remark'),
@@ -173,6 +178,7 @@ export default {
storageBoxList(this.listQuery).then(response => {
if (response.data.records) {
this.list = response.data.records
console.log(this.list)
} else {
this.list.splice(0, this.list.length)
}

Dosyayı Görüntüle

@@ -57,7 +57,7 @@
<!-- <el-form-item :label="$t('module.basicData.equipment.EquipmentType')" prop="equipmentType">
<el-input v-model="dataForm.equipmentType" :disabled="isdetail" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.equipment.EquipmentType')])" clearable :style="{width: '100%'}" />
</el-form-item> -->
<el-form-item :label="$t('module.basicData.equipment.EquipmentType')" prop="EquipmentType">
<el-form-item :label="$t('module.basicData.equipment.EquipmentType')" prop="equipmentType">
<el-select v-model="dataForm.equipmentType" :placeholder="this.$t('module.basicData.cache.logisticsEquipment')" default>
<el-option
v-for="item in options"
@@ -399,7 +399,7 @@ export default {
code: '',
enName: '',
abbr: '',
equipmentType: this.$t('module.basicData.cache.logisticsEquipment'),
equipmentType: '1',
spec: '',
createTime: '',
enterTime: '',
@@ -442,6 +442,11 @@ export default {
required: true,
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.equipment.EquipmentCode')]),
trigger: 'blur'
}],
equipmentType: [{
required: true,
message: this.$i18nForm(['placeholder.select', this.$t('module.basicData.equipment.EquipmentType')]),
trigger: 'blur'
}]
// maintenanceCycle: [{
// required: true,
@@ -581,6 +586,7 @@ export default {
})
})
} else {
console.log(data)
equipmentInfoAdd(data).then(res => {
this.$message({
message: this.$t('module.basicData.visual.success'),

Dosyayı Görüntüle

@@ -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: [{

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: zwq
* @Date: 2020-12-29 15:41:11
* @LastEditors: fzq
* @LastEditTime: 2022-03-10 13:43:01
* @LastEditTime: 2022-03-19 10:20:40
* @Description:
-->
<template>

Dosyayı Görüntüle

@@ -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-22 10:36:05
* @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>
@@ -195,20 +194,20 @@ export default {
size: 10
},
taskTypeList: [{
'label': '出库',
'label': i18n.t('module.basicData.Warehouse.ExWarehouse'),
'value': 0
}, {
'label': '入库',
'label': i18n.t('module.basicData.Warehouse.InWarehouse'),
'value': 1
}, {
'label': '流转',
'label': i18n.t('module.basicData.Warehouse.Circulation'),
'value': 2
}],
TaskStatusList: [{
'label': '初始化',
'label': i18n.t('module.basicData.Warehouse.Initialization'),
'value': 0
}, {
'label': '损坏',
'label': i18n.t('module.basicData.Warehouse.Damage'),
'value': 1
}],
VehicleNameList: [{

Dosyayı Görüntüle

@@ -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>

Dosyayı Görüntüle

@@ -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

Dosyayı Görüntüle

@@ -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"

Dosyayı Görüntüle

@@ -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"

Dosyayı Görüntüle

@@ -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">

Dosyayı Görüntüle

@@ -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">

Dosyayı Görüntüle

@@ -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">

Dosyayı Görüntüle

@@ -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-17 14:50:20
* @Description:
-->
<template>
@@ -62,14 +62,9 @@ const tableProps = [
align: 'center'
},
{
prop: 'name',
prop: 'locationName',
label: i18n.t('module.basicData.cache.LocationName'),
align: 'center'
},
{
prop: 'shelfName',
label: i18n.t('module.basicData.cache.locationType'),
align: 'center'
}
]

Dosyayı Görüntüle

@@ -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>

Dosyayı Görüntüle

@@ -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"

Dosyayı Görüntüle

@@ -1,17 +1,19 @@
<!--
* @Author: gtz
* @Date: 2022-03-03 09:16:10
* @LastEditors: zwq
* @LastEditTime: 2022-03-15 14:27:57
* @LastEditors: gtz
* @LastEditTime: 2022-03-18 16:33:59
* @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
@@ -38,27 +40,33 @@
<el-button type="primary" size="mini" @click="submitLinkList">{{
"btn.submit" | i18nFilter
}}</el-button>
<el-button type="warning" size="mini" @click="init()">{{ 'btn.reset' | i18nFilter }}</el-button>
<el-button type="success" size="mini" @click="goback()">{{ 'btn.back' | i18nFilter }}</el-button>
<el-button type="warning" size="mini" @click="init()">{{
"btn.reset" | i18nFilter
}}</el-button>
<el-button type="success" size="mini" @click="goback()">{{
"btn.back" | i18nFilter
}}</el-button>
</div>
<div class="dashboard-legend-search">
<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 +78,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,42 +97,88 @@
: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
].attribute === '3'
? 'not-allowed'
: 'pointer',
color:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
].attribute === '3'
? '#A2A8B5'
: '',
border:
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
? '1px solid red' : ''
border: selectStorageList.some(
StorageItem =>
StorageItem.locationId ===
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].id
)
? '2px dashed 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
]
: ''
}"
/>
<div
v-if="
StorageList.some(
StorageItem =>
StorageItem.id ===
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].id
)"
class="dashboard-layout-item-horn"
/>
{{
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>
@@ -134,7 +188,9 @@
<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 +198,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 +207,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 +226,91 @@
: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
].attribute === '3'
? 'not-allowed'
: 'pointer',
color:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
].attribute === '3'
? '#A2A8B5'
: '',
border:
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
? '1px solid red' : ''
border: selectStorageList.some(
StorageItem =>
StorageItem.locationId ===
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].id
)
? '2px dashed 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
]
: ''
}"
/>
<div
v-if="
StorageList.some(
StorageItem =>
StorageItem.id ===
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].id
)"
class="dashboard-layout-item-horn"
/>
{{
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,42 +318,88 @@
: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
].attribute === '3'
? 'not-allowed'
: 'pointer',
color:
z.portList[
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].attribute === 3
].attribute === '3'
? '#A2A8B5'
: '',
border:
selectStorageList.some(StorageItem=>StorageItem.locationId===z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].id)
? '1px solid red' : ''
border: selectStorageList.some(
StorageItem =>
StorageItem.locationId ===
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].id
)
? '2px dashed 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
]
: ''
}"
/>
<div
v-if="
StorageList.some(
StorageItem =>
StorageItem.id ===
z.portVoList[
(current - 1) * 80 + (item - 1) * 20 + (x - 1)
].id
)"
class="dashboard-layout-item-horn"
/>
{{
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>
@@ -271,6 +416,8 @@
</template>
<script>
import { getPortList } from '@/api/dashboard'
import { locationByProcessList } from '@/api/basicData/Warehouse/StorageBoxInfo'
import { batchListAdd } from '@/api/basicData/Warehouse/StorageBoxInfo'
import testdata from './testdata'
import processStorageType from './processStorageType'
@@ -284,22 +431,52 @@ export default {
created() {
this.id = this.$route.query.id
this.totalPage = Math.ceil(
this.shelfList[0].rowList[0].portList.length / 80
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
)
})
locationByProcessList({
current: 1,
size: 990,
workSequenId: this.id
}).then(response => {
if (response.data.records) {
this.StorageList = response.data.records
} else {
this.StorageList.splice(0, this.StorageList.length)
}
})
this.selectStorageList.splice(0, this.selectStorageList.length)
},
setType(item) {
if (item.attribute !== 3) {
if (this.selectStorageList.findIndex(StorageItem => StorageItem.locationId === item.id) + 1) {
this.selectStorageList.splice(this.selectStorageList.findIndex(StorageItem => StorageItem.locationId === item.id), 1)
if (item.attribute !== '3') {
if (
this.selectStorageList.findIndex(
StorageItem => StorageItem.locationId === item.id
) + 1
) {
this.selectStorageList.splice(
this.selectStorageList.findIndex(
StorageItem => StorageItem.locationId === item.id
),
1
)
} else {
const isExist = this.StorageList.some(
StorageItem =>
StorageItem.id === item.id
)
this.typeVisible = true
this.$nextTick(() => {
this.$refs.typeRef.init(item.id, item.name)
this.$refs.typeRef.init(item.id, item.name, item.attribute, isExist)
})
}
}
@@ -312,29 +489,49 @@ 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)
@@ -427,6 +624,7 @@ export default {
display: flex;
align-items: center;
justify-content: center;
position: relative;
.dashboard-layout-item-cricle {
display: inline-block;
width: 12px;
@@ -434,6 +632,16 @@ export default {
border-radius: 6px;
margin-right: 6px;
}
.dashboard-layout-item-horn {
position: absolute;
width: 0;
height: 0;
right: 0;
top: 0;
border-style: solid;
border-width: 14px 0px 0px 14px;
border-color: #0B58FF transparent transparent transparent;
}
}
}
}

Dosyayı Görüntüle

@@ -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-18 09:39:09
* @Description:
-->
<template>
@@ -15,13 +15,12 @@
:model="dataForm"
size="medium"
:rules="dataRule"
label-width="110px"
label-position="left"
>
<el-form-item :label="$t('module.basicData.Warehouse.SelectStorageType')" prop="portAttrId">
<el-radio v-model="dataForm.portAttrId" :label="1">Working Port</el-radio>
<el-radio v-model="dataForm.portAttrId" :label="2">Buffer Port</el-radio>
<el-radio v-model="dataForm.portAttrId" :label="3">Exception Port</el-radio>
<el-radio v-model="dataForm.portAttrId" label="1">Working Port</el-radio>
<el-radio v-model="dataForm.portAttrId" label="2">Buffer Port</el-radio>
<el-radio v-model="dataForm.portAttrId" label="3">Exception Port</el-radio>
</el-form-item>
<el-form-item :label="$t('module.basicData.storageBox.name')" prop="storageId">
<el-select v-model="dataForm.storageId" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.name')])" clearable>
@@ -42,6 +41,7 @@
</template>
<script>
import { getPortDetail } from '@/api/dashboard'
import { storageBoxList } from '@/api/basicData/Cache/storageBox'
export default {
@@ -51,7 +51,7 @@ export default {
locationId: '',
locationName: '',
dataForm: {
portAttrId: 1,
portAttrId: '1',
storageId: ''
},
dataRule: {
@@ -66,7 +66,7 @@ export default {
}
},
methods: {
init(id, name) {
init(id, name, attribute, isExist) {
this.locationId = id
this.locationName = name
const listQuery = {
@@ -82,6 +82,16 @@ export default {
})
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
if (attribute) {
this.dataForm.portAttrId = attribute
} else {
this.dataForm.portAttrId = '1'
}
if (isExist) {
getPortDetail(id).then(res => {
if (res.code === 0) { this.dataForm.storageId = res.data.storageBoxId }
})
}
})
this.visible = true
},

Dosya farkı çok büyük olduğundan ihmal edildi Fark Yükle

Dosyayı Görüntüle

@@ -0,0 +1,157 @@
<!--
* @Author: zwq
* @Date: 2020-12-29 16:37:56
* @LastEditors: zwq
* @LastEditTime: 2022-04-02 15:57:14
* @Description:
-->
<template>
<el-dialog
:title="'btn.detail' | i18nFilter"
:visible.sync="visible"
width="70%"
>
<el-row :gutter="10">
<el-form ref="dataForm" :model="dataForm" label-width="150px">
<el-col :span="8">
<el-form-item :label="$t('module.dashboard.name')" prop="name">
{{ dataForm.name }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('module.dashboard.attribute')" prop="attribute">
{{ dataForm.attribute ? portAttributeObj[dataForm.attribute] : '' }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('module.dashboard.cassetteStatus')" prop="cassetteVoList">
{{ dataForm.cassetteVoList && dataForm.cassetteVoList.length && dataForm.cassetteVoList[0].status ? cassetteStatusObj[dataForm.cassetteVoList[0].status] : '' }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('module.dashboard.workOrderNo')" prop="workOrderNo">
{{ dataForm.workOrderNo }}
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('module.dashboard.storageBoxCode')" prop="storageBoxCode">
{{ dataForm.storageBoxCode }}
</el-form-item>
</el-col>
</el-form>
</el-row>
<base-table
:page="listQuery.current"
:limit="listQuery.size"
:table-config="tableProps"
:table-data="list"
:is-loading="listLoading"
/>
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button>
</span>
</el-dialog>
</template>
<script>
import i18n from '@/lang'
import { listSubstrate } from '@/api/report-manage/report'
import BaseTable from '@/components/BaseTable'
const tableProps = [
{
prop: 'substrateCode',
label: i18n.t('module.report.substrate.substrateCode'),
align: 'center'
},
{
prop: 'subPosition',
label: i18n.t('module.report.substrate.location'),
align: 'center'
},
{
prop: 'storeTime',
label: i18n.t('module.report.substrate.storeTime'),
align: 'center'
},
{
prop: 'status',
label: i18n.t('module.report.substrate.substrateStatus'),
align: 'center'
},
{
prop: 'subStorageStatusName',
label: i18n.t('module.report.substrate.subStorageStatus'),
align: 'center'
},
{
prop: 'machineHandID',
label: i18n.t('module.report.substrate.machineHandID'),
align: 'center'
}
]
export default {
components: { BaseTable },
data() {
return {
visible: false,
tableProps,
list: [],
listLoading: true,
listQuery: {
current: 1,
size: 500,
locationStorageSubID: ''
},
dataForm: {
code: null,
createTime: null,
currLocation: null,
currLocationId: null,
id: null,
isEmpty: null,
status: null,
storageBoxCode: null,
storageBoxId: null,
updateTime: null
},
cassetteStatusObj: {
'1': 'Empty Cassette',
'2': 'Dummy Cassette',
'3': 'OK Cassette',
'4': 'NOK Cassette'
},
portAttributeObj: {
1: 'Working Port',
2: 'Buffer Port',
3: 'Exception Port'
}
}
},
methods: {
init(data) {
console.log(data)
this.visible = true
this.dataForm = data
this.listQuery.locationStorageSubID = data.locationStorageSubId
this.listLoading = true
listSubstrate(this.listQuery).then(response => {
if (response.data) {
this.list = response.data
for (var x = 0; x < this.list.length; x++) {
if (this.list[x].subStorageStatus === 1) {
this.list[x].subStorageStatusName = this.$t('module.report.substrate.load')
} else if (this.list[x].subStorageStatus === 2) {
this.list[x].subStorageStatusName = this.$t('module.report.substrate.unload')
}
}
} else {
this.list.splice(0, this.list.length)
}
this.listLoading = false
})
}
}
}
</script>

Dosyayı Görüntüle

@@ -2,7 +2,7 @@
* @Author: gtz
* @Date: 2022-03-03 09:16:10
* @LastEditors: gtz
* @LastEditTime: 2022-03-15 16:47:57
* @LastEditTime: 2022-03-18 16:29:33
* @Description: file content
* @FilePath: \mt-ck-wms-ui\src\views\dashboard\index.vue
-->
@@ -23,20 +23,21 @@
{{ 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 < shelfList[0].rowList[0].portList.length" class="dashboard-layout" :gutter="12">
<el-row v-if="current * 80 < shelfVoList[0].rowVoList[0].portVoList.length" class="dashboard-layout" :gutter="12">
<el-col v-for="item in 4" :key="'shelfbox' + item" class="dashboard-layout-shelf-box" :span="6">
<el-row>
<el-col v-for="(i, index) in shelfList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
<el-col 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" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
<div v-for="x in 20" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? 'not-allowed' : 'pointer', color: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? '#A2A8B5' : ''}">
<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' }}
<el-col v-for="z in i.rowVoList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
<div v-for="x in 20" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? 'not-allowed' : 'pointer', color: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? '#A2A8B5' : ''}" @click="handlePort(z, x)">
<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>
@@ -48,22 +49,22 @@
</el-col>
</el-row>
<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)" :key="'shelfbox' + item" class="dashboard-layout-shelf-box" :span="6">
<el-col v-for="item in Math.ceil((shelfVoList[0].rowVoList[0].portVoList.length - (current - 1) * 80) / 20)" :key="'shelfbox' + item" class="dashboard-layout-shelf-box" :span="6">
<el-row>
<el-col v-for="(i, index) in shelfList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
<el-row v-if="item < Math.ceil((shelfList[0].rowList[0].portList.length - (current - 1) * 80) / 20)">
<el-col v-for="z in i.rowList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
<div v-for="x in 20" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? 'not-allowed' : 'pointer', color: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? '#A2A8B5' : ''}">
<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' }}
<el-col v-for="(i, index) in shelfVoList" :key="item + 'shelf' + i.id" :span="12" class="dashboard-layout-shelf">
<el-row v-if="item < Math.ceil((shelfVoList[0].rowVoList[0].portVoList.length - (current - 1) * 80) / 20)">
<el-col v-for="z in i.rowVoList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
<div v-for="x in 20" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? 'not-allowed' : 'pointer', color: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? '#A2A8B5' : ''}" @click="handlePort(z, x)">
<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" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
<div v-for="x in shelfList[0].rowList[0].portList.length - (item - 1) * 20 - (current - 1) * 80" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? 'not-allowed' : 'pointer', color: z.portList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === 3 ? '#A2A8B5' : ''}">
<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' }}
<el-col v-for="z in i.rowVoList" :key="item + 'shelf' + i + 'row' + z.id" :span="12" class="dashboard-layout-row">
<div v-for="x in shelfVoList[0].rowVoList[0].portVoList.length - (item - 1) * 20 - (current - 1) * 80" :key="item + 'shelf' + i + 'row' + z + 'item' + x" class="dashboard-layout-item" :style="{background: portAttributeObj[z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute], cursor: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? 'not-allowed' : 'pointer', color: z.portVoList[(current - 1) * 80 + (item - 1) * 20 + (x - 1)].attribute === '3' ? '#A2A8B5' : ''}" @click="handlePort(z, x)">
<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>
@@ -75,24 +76,45 @@
</el-col>
</el-row>
</el-card>
<port-detail ref="addOrUpdate" />
</div>
</template>
<script>
import testdata from './testdata'
import { getPortList, getPortDetail } from '@/api/dashboard'
import portDetail from './components/PortDetail'
export default {
name: 'Dashboard',
components: { portDetail },
data() {
return testdata
},
created() {
console.log(this.shelfList)
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)
})
},
handleChange(v) {
console.log(v)
},
handlePort(z, x) {
getPortDetail(z.portVoList[x - 1].id).then(res => {
this.addOrUpdateVisible = true
this.$nextTick(() => {
this.$refs.addOrUpdate.init({ ...(res.data), ...z.portVoList[x - 1] })
})
})
},
refresh() {
this.init()
}
}
}

Dosya farkı çok büyük olduğundan ihmal edildi Fark Yükle

Dosyayı Görüntüle

@@ -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
})

Dosyayı Görüntüle

@@ -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
})
}

Dosyayı Görüntüle

@@ -1,7 +1,7 @@
<!--
* @Date: 2021-01-07 20:09:37
* @LastEditors: zwq
* @LastEditTime: 2022-03-10 14:25:50
* @LastEditTime: 2022-03-19 13:47:06
* @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>
@@ -59,6 +59,7 @@ export default {
}).then(response => {
this.options = response.data.records
})
this.value = this.injectData.processId
},
emitClick() {
const data = {

Dosyayı Görüntüle

@@ -4,7 +4,7 @@
* @Author: fzq
* @Date: 2022-03-04 20:54:54
* @LastEditors: fzq
* @LastEditTime: 2022-03-07 09:46:36
* @LastEditTime: 2022-05-30 13:40:33
-->
<template>
<div class="app-container">
@@ -198,7 +198,8 @@ export default {
let fileName = ''
const contentDisposition = res.headers['content-disposition']
if (contentDisposition) {
fileName = contentDisposition.slice(contentDisposition.indexOf('filename=') + 9)
// fileName = contentDisposition.slice(contentDisposition.indexOf('filename=') + 9)
fileName = this.$t('module.report.reportList.storageBoxReport') + '.xlsx'
}
const blob = new Blob([res.data])
const reader = new FileReader()
@@ -222,6 +223,7 @@ export default {
// link.click()
// URL.revokeObjectURL(link.href)
// }
this.getList()
})
}
// 新增 / 修改

Dosyayı Görüntüle

@@ -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-20 09:35:03
-->
<template>
<!-- <el-dialog
@@ -19,17 +19,33 @@
<el-form-item :label="$t('module.report.substrate.substrateCode')" prop="substrateCode">
<el-input v-model="dataForm.substrateCode" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.substrateCode')])" clearable />
</el-form-item>
<el-form-item :label="$t('module.report.substrate.location')" prop="location">
<el-input v-model="dataForm.location" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.location')])" clearable />
<el-form-item :label="$t('module.report.substrate.location')" prop="subPosition">
<el-input v-model="dataForm.subPosition" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.location')])" clearable />
</el-form-item>
<el-form-item :label="$t('module.report.substrate.storeTime')" prop="storeTime">
<el-input v-model="dataForm.storeTime" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.storeTime')])" clearable />
</el-form-item>
<el-form-item :label="$t('module.report.substrate.substrateStatus')" prop="substrateStatus">
<el-input v-model="dataForm.substrateStatus" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.substrateStatus')])" clearable />
<el-form-item :label="$t('module.report.substrate.substrateStatus')" prop="status">
<el-input v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.substrateStatus')])" clearable />
</el-form-item>
<el-form-item :label="$t('module.report.substrate.interCode')" prop="interCode">
<!-- <el-form-item :label="$t('module.report.substrate.interCode')" prop="interCode">
<el-input v-model="dataForm.interCode" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.interCode')])" clearable />
</el-form-item> -->
<!-- <el-form-item :label="$t('module.report.substrate.subStorageStatus')" prop="subStorageStatus">
<el-input v-model="dataForm.subStorageStatus" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.subStorageStatus')])" clearable />
</el-form-item> -->
<el-form-item :label="$t('module.report.substrate.subStorageStatus')" prop="subStorageStatus">
<el-select v-model="dataForm.subStorageStatus" :placeholder="this.$t('module.report.substrate.subStorageStatus')" default>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item :label="$t('module.report.substrate.machineHandID')" prop="machineHandID">
<el-input v-model="dataForm.machineHandID" :placeholder="$i18nForm(['placeholder.input', $t('module.report.substrate.machineHandID')])" clearable />
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
@@ -40,7 +56,7 @@
</template>
<script>
import { updateSubstrate, listSubstrate } from '@/api/report-manage/report'
import { updateSubstrate } from '@/api/report-manage/report'
export default {
props: {
@@ -55,19 +71,32 @@ export default {
return {
visible: false,
dataForm: {
id: '',
substrateCode: '',
location: '',
storeTime: '',
substrateStatus: '',
code: '',
storageBoxId: '',
storageCode: '',
interCode: ''
// substrateCode: '',
// locationName: '',
// storeTime: '',
// substrateStatus: '',
// code: '',
// storageBoxId: '',
// storageCode: '',
// interCode: '',
// id: '',
// current: 1,
// size: 10,
// locationStorageSubID: ''
},
options: [
{
value: 1,
label: this.$t('module.report.substrate.load')
},
{
value: 2,
label: this.$t('module.report.substrate.unload')
}
],
list: {
id: '',
location: '',
locationName: '',
storeTime: '',
substrateCode: '',
substrateStatus: ''
@@ -75,12 +104,6 @@ export default {
dataRule: {
substrateCode: [
{ required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.report.substrate.substrateCode')]), trigger: 'blur' }
],
code: [
{ required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.report.substrate.substrateCode')]), trigger: 'blur' }
],
interCode: [
{ required: true, message: this.$i18nForm(['placeholder.input', this.$t('module.report.substrate.substrateCode')]), trigger: 'blur' }
]
}
}
@@ -107,35 +130,40 @@ 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() {
this.$refs['dataForm'].validate((valid) => {
if (valid) {
const data = {
'substrateStatus': this.dataForm.substrateStatus,
'status': this.dataForm.status,
'storeTime': this.dataForm.storeTime,
'id': this.dataForm.id,
'substrateCode': this.dataForm.substrateCode,
'location': this.dataForm.location,
'interCode': this.dataForm.interCode,
'storageBoxId': this.dataForm.storageBoxId
'subPosition': this.dataForm.subPosition,
// 'interCode': this.dataForm.interCode,
'storageBoxFid': this.dataForm.storageBoxFid,
'machineHandID': this.dataForm.machineHandID,
'subStorageStatus': this.dataForm.subStorageStatus
}
console.log(data)
updateSubstrate(data).then(res => {

Dosyayı Görüntüle

@@ -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
}
})
}

Dosyayı Görüntüle

@@ -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-20 09:35:05
-->
<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>
@@ -71,7 +71,7 @@ const tableProps = [
align: 'center'
},
{
prop: 'location',
prop: 'subPosition',
label: i18n.t('module.report.substrate.location'),
align: 'center'
},
@@ -81,9 +81,19 @@ const tableProps = [
align: 'center'
},
{
prop: 'substrateStatus',
prop: 'status',
label: i18n.t('module.report.substrate.substrateStatus'),
align: 'center'
},
{
prop: 'subStorageStatusName',
label: i18n.t('module.report.substrate.subStorageStatus'),
align: 'center'
},
{
prop: 'machineHandID',
label: i18n.t('module.report.substrate.machineHandID'),
align: 'center'
}
]
@@ -104,7 +114,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 +123,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 +144,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,18 +157,27 @@ 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
for (var x = 0; x < this.list.length; x++) {
if (this.list[x].subStorageStatus === 1) {
this.list[x].subStorageStatusName = this.$t('module.report.substrate.load')
} else if (this.list[x].subStorageStatus === 2) {
this.list[x].subStorageStatusName = this.$t('module.report.substrate.unload')
}
}
console.log(this.list)
} else {
this.list.splice(0, this.list.length)