Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
template_vue
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
胡宝山
template_vue
Commits
ddcfdaa1
Commit
ddcfdaa1
authored
Aug 01, 2023
by
刘宇扬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
设备入库
parent
64d81f60
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
231 additions
and
114 deletions
+231
-114
magnagement.js
src/api/magnagement.js
+1
-1
boundManagement.vue
src/views/equipment/boundManagement.vue
+1
-1
income.vue
src/views/equipment/income.vue
+166
-54
management.vue
src/views/equipment/management.vue
+63
-58
No files found.
src/api/magnagement.js
View file @
ddcfdaa1
...
...
@@ -48,7 +48,7 @@ export function recycle(data) {
// 逻辑删除基础信息接口
export
function
deletedevice
(
id
)
{
return
request
({
url
:
'/wbwarehouse/delete/'
+
id
,
url
:
'/wbwarehouse/delete
Logical
/'
+
id
,
method
:
'delete'
})
}
...
...
src/views/equipment/boundManagement.vue
View file @
ddcfdaa1
...
...
@@ -440,7 +440,7 @@ export default {
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
title
=
'
编辑基础信息表单
'
this
.
title
=
'
库存管理
'
const
id
=
row
.
businessId
getDetailById
(
id
).
then
(
res
=>
{
this
.
form
=
res
.
data
...
...
src/views/equipment/income.vue
View file @
ddcfdaa1
...
...
@@ -14,70 +14,93 @@
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"40"
>
<el-col
:span=
"12"
style=
"padding-left: 10%;"
>
<el-form-item
label=
"位置:"
style=
"flex-basis: 50%;"
prop=
"plocation"
>
<el-input
ref=
"input3"
v-model=
"form.plocation"
placeholder=
"请输入位置"
:style=
"
{ width: '400px', height: '30px' }" :maxlength="10" @keyup.enter.native="handelTab(3,$event)" />
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-row>
<el-col
:span=
"12"
style=
"padding-left: 8.6%;"
>
<el-form-item
label=
"厚度:"
style=
"flex-basis: 50%;"
prop=
"phd"
>
<el-input
ref=
"input
4"
v-model=
"form.phd"
placeholder=
"请输入厚度"
:style=
"
{ width: '400px', height: '30px' }" :maxlength="10" @keyup.enter.native="handelTab(4
,$event)" />
<el-input
ref=
"input
3"
v-model=
"form.phd"
placeholder=
"请输入厚度"
:style=
"
{ width: '400px', height: '30px' }" :maxlength="10" @keyup.enter.native="handelTab(3
,$event)" />
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"40"
>
<el-col
:span=
"12"
style=
"padding-left: 10%;"
>
<el-form-item
label=
"psm:"
style=
"flex-basis: 50%;"
prop=
"psm"
>
<el-input
ref=
"input5"
v-model=
"form.psm"
placeholder=
"请输入psm"
:style=
"
{ width: '400px', height: '30px' }" :maxlength="50" @keyup.enter.native="handelTab(5,$event)" />
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"pzl:"
style=
"flex-basis: 50%;"
prop=
"pzl"
>
<el-input
ref=
"input6"
v-model=
"form.pzl"
placeholder=
"请输入pzl"
:style=
"
{ width: '400px', height: '30px' }" :maxlength="10" @keyup.enter.native="handelTab(6,$event)" />
</el-form-item>
<el-col
:span=
"12"
style=
"padding-left: 8.6%;"
>
<el-button
type=
"primary"
@
click=
"handleConfirm"
>
确认
</el-button>
</el-col>
</el-row>
</el-form>
<!--
<div
class=
"mb12 font-small-bold"
style=
"display: flex; padding-left: 12%;"
>
设备入库列表
</div>
-->
<el-table
border
:data=
"tableData"
style=
"width: 100%; "
>
<el-table-column
type=
"index"
label=
"序号"
width=
"80"
/>
<el-table-column
label=
"pn"
prop=
"businessId"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
pn
||
'-'
}}
</
template
>
</el-table-column>
<el-table-column
label=
"lot"
prop=
"lot"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
lot
||
'-'
}}
</
template
>
</el-table-column>
<el-table-column
label=
"厚度"
prop=
"phd"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
phd
||
'-'
}}
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
class-name=
"small-padding fixed-width"
width=
"180px"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
style=
"color: #49cec9"
@
click=
"handleUpdate(scope.row)"
>
修改
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rule"
label-width=
"80px"
>
<el-row>
<el-col
:span=
"12"
style=
"padding-left: 8.6%;"
>
<el-form-item
label=
"
prank:"
style=
"flex-basis: 50%;"
prop=
"prank
"
>
<el-input
ref=
"input7"
v-model=
"form.prank"
placeholder=
"请输入prank"
:style=
"
{ width: '400px', height: '30px' }" :maxlength="10" @keyup.enter.native="handelTab(7
,$event)" />
<el-form-item
label=
"
位置:"
style=
"flex-basis: 50%;"
prop=
"plocation
"
>
<el-input
v-model=
"form.plocation"
placeholder=
"请输入位置"
:style=
"{ width: '400px', height: '30px' }"
:maxlength=
"10"
@
keyup
.
enter
.
native=
"handelTab(3
,$event)"
/>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
class=
"button"
>
<el-button
type=
"primary"
@
click=
"submitForm"
>
提交
</el-button>
</div>
</el-form>
</div>
</template>
<
script
>
import
{
add
,
updatadevice
}
from
'@/api/magnagement'
import
{
add
}
from
'@/api/magnagement'
export
default
{
name
:
'Role'
,
data
()
{
return
{
index
:
0
,
flag
:
false
,
form
:
{
pn
:
''
,
lot
:
''
,
plocation
:
''
,
phd
:
''
,
psm
:
''
,
pzl
:
''
,
prank
:
''
,
flag
:
1
,
ptype
:
1
,
pstatus
:
0
},
tableData
:
[],
// 表格数据
selectedRows
:
[],
showForm
:
false
,
// 控制表单显示与隐藏
selectedItem
:
null
,
// 存储当前被选中的表格行数据
rule
:
{
pn
:
[{
required
:
true
,
message
:
'请输入pn'
,
trigger
:
'blur'
}],
lot
:
[{
required
:
true
,
message
:
'请输入lot'
,
trigger
:
'blur'
}],
plocation
:
[{
required
:
true
,
message
:
'请输入位置'
,
trigger
:
'blur'
}],
phd
:
[{
pattern
:
/^
\d
+$/
,
message
:
'仅能输入数字'
,
trigger
:
'change'
}],
psm
:
[{
pattern
:
/^
\d
+$/
,
message
:
'仅能输入数字'
,
trigger
:
'change'
}],
pzl
:
[{
pattern
:
/^
\d
+$/
,
message
:
'仅能输入数字'
,
trigger
:
'change'
}],
prank
:
[{
pattern
:
/^
\d
+$/
,
message
:
'仅能输入数字'
,
trigger
:
'change'
}]
phd
:
[{
pattern
:
/^
\d
+$/
,
message
:
'仅能输入数字'
,
trigger
:
'change'
}]
}
}
},
...
...
@@ -90,6 +113,104 @@ export default {
this
.
init
()
},
methods
:
{
handleDelete
(
row
)
{
// 检查选中行是否已存在于selectedRows数组中
const
index
=
this
.
selectedRows
.
findIndex
(
selectedRow
=>
selectedRow
===
row
)
if
(
index
!==
-
1
)
{
// 从selectedRows数组中移除选中行
this
.
selectedRows
.
splice
(
index
,
1
)
}
else
{
// 将选中行添加到selectedRows数组中
this
.
selectedRows
.
push
(
row
)
}
// 从tableData数组中删除选中行
this
.
tableData
=
this
.
tableData
.
filter
(
row
=>
!
this
.
selectedRows
.
includes
(
row
))
// 清空selectedRows数组
this
.
selectedRows
=
[]
},
handleUpdate
(
row
)
{
this
.
form
.
pn
=
row
.
pn
this
.
form
.
lot
=
row
.
lot
this
.
form
.
phd
=
row
.
phd
this
.
tableData
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
pn
===
row
.
pn
)
{
this
.
form
.
index
=
index
}
})
console
.
log
(
'form.index'
,
this
.
form
)
// console.log('tableData', this.tableData)
// this.selectedItem = { ...row } // 存储当前被选中的表格行数据
// this.showForm = true // 显示表单
},
handleConfirm
()
{
this
.
flag
=
false
const
{
pn
,
lot
,
plocation
,
phd
}
=
this
.
form
if
(
pn
&&
lot
)
{
// 检查输入框是否为空
const
newRow
=
{
pn
,
lot
,
phd
,
plocation
}
if
(
this
.
form
.
index
===
undefined
)
{
if
(
this
.
tableData
.
length
)
{
this
.
tableData
.
forEach
((
item
,
index
)
=>
{
console
.
log
(
'item'
,
item
)
console
.
log
(
'pn'
,
this
.
form
.
pn
)
if
(
item
.
pn
===
this
.
form
.
pn
)
{
this
.
flag
=
true
this
.
index
=
index
+
1
}
})
if
(
this
.
flag
)
{
this
.
$message
.
warning
(
'与第'
+
this
.
index
+
'条pn值重复'
)
}
else
{
this
.
tableData
.
push
(
newRow
)
// 清空输入框
this
.
form
.
pn
=
''
this
.
form
.
lot
=
''
this
.
form
.
phd
=
''
this
.
form
.
plocation
=
''
}
}
else
{
this
.
tableData
.
push
(
newRow
)
// 清空输入框
this
.
form
.
pn
=
''
this
.
form
.
lot
=
''
this
.
form
.
phd
=
''
this
.
form
.
plocation
=
''
}
}
else
{
let
number
=
0
let
flag
=
false
console
.
log
(
'编辑'
)
this
.
tableData
.
forEach
((
item
,
index
)
=>
{
if
(
item
.
pn
===
this
.
form
.
pn
&&
index
!==
this
.
form
.
index
)
{
flag
=
true
number
=
index
+
1
}
})
if
(
flag
)
{
this
.
$message
.
warning
(
'与第'
+
number
+
'条pn值重复'
)
}
else
{
this
.
tableData
[
this
.
form
.
index
].
pn
=
this
.
form
.
pn
this
.
tableData
[
this
.
form
.
index
].
lot
=
this
.
form
.
lot
this
.
tableData
[
this
.
form
.
index
].
phd
=
this
.
form
.
phd
this
.
form
.
pn
=
''
this
.
form
.
lot
=
''
this
.
form
.
phd
=
''
this
.
form
.
plocation
=
''
this
.
form
.
index
=
undefined
}
}
}
},
focusNextInput
(
refName
)
{
this
.
$nextTick
(()
=>
{
this
.
$refs
[
refName
].
$refs
.
input
.
focus
()
...
...
@@ -133,28 +254,19 @@ export default {
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
valid
)
{
console
.
log
(
'form'
,
this
.
form
)
// 校验通过,提交表单或进行其他操作
if
(
this
.
form
.
businessId
!==
undefined
)
{
updatadevice
(
this
.
form
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
this
.
open
=
false
this
.
$message
.
success
(
'操作成功'
)
this
.
resetFrom
()
}
else
if
(
res
.
code
===
null
)
{
this
.
$message
.
error
(
res
.
message
)
}
this
.
tableData
.
forEach
(
item
=>
{
item
.
plocation
=
this
.
form
.
plocation
})
}
else
{
add
(
this
.
form
).
then
(
res
=>
{
console
.
log
(
'tableData'
,
this
.
tableData
)
add
(
this
.
tableData
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
this
.
open
=
false
this
.
$message
.
success
(
'操作成功'
)
this
.
resetFrom
()
this
.
tableData
=
[]
}
else
if
(
res
.
code
===
null
)
{
this
.
$message
.
error
(
res
.
message
)
}
})
}
}
else
{
// 校验失败,显示错误信息或进行其他操作
}
...
...
src/views/equipment/management.vue
View file @
ddcfdaa1
...
...
@@ -85,8 +85,14 @@
<span>
{{
scope
.
row
.
updateDate
|
transformDateByFormat
(
'YYYY-MM-DD HH:mm'
)
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"操作"
class-name=
"small-padding fixed-width"
width=
"1
2
0px"
>
<el-table-column
label=
"操作"
class-name=
"small-padding fixed-width"
width=
"1
8
0px"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
style=
"color: #49cec9"
@
click=
"handleUpdate(scope.row)"
>
修改
</el-button>
<el-button
:type=
"typeParent"
:size=
"size"
@
click=
"handleDetail(scope.row)"
>
详情
</el-button>
...
...
@@ -110,31 +116,27 @@
<!-- 添加或修改设备配置对话框 -->
<el-dialog
:title=
"title"
:visible
.
sync=
"open"
width=
"500px"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
size=
"small"
label-width=
"
80px"
>
<el-form-item
label=
"
名称"
prop=
"roleName
"
>
<el-input
v-model
.
trim=
"form.roleName"
show-word-limit
:maxlength=
"30"
placeholder=
"请输入设备名称
"
/>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
size=
"small"
label-width=
"
100px"
>
<el-form-item
label=
"
pn"
prop=
"pn
"
>
<el-input
ref=
"input1"
v-model
.
trim=
"form.pn"
:maxlength=
"30"
placeholder=
"请输入pn"
@
keyup
.
enter
.
native=
"handelTab(1,$event)
"
/>
</el-form-item>
<el-form-item
label=
"
设备来源"
prop=
"roleKey
"
>
<el-input
v-model
.
trim=
"form.roleKey"
show-word-limit
:maxlength=
"30"
placeholder=
"请输入设备来源
"
/>
<el-form-item
label=
"
lot"
prop=
"lot
"
>
<el-input
ref=
"input2"
v-model
.
trim=
"form.lot"
:maxlength=
"30"
placeholder=
"请输入lot"
@
keyup
.
enter
.
native=
"handelTab(2,$event)
"
/>
</el-form-item>
<el-form-item
label=
"
排序"
prop=
"roleSort
"
>
<el-input
-number
v-model=
"form.roleSort"
style=
"width: 100%"
controls-position=
"right"
:min=
"0
"
/>
<el-form-item
label=
"
plocation"
prop=
"plocation
"
>
<el-input
ref=
"input3"
v-model
.
trim=
"form.plocation"
:maxlength=
"30"
placeholder=
"请输入plocation"
@
keyup
.
enter
.
native=
"handelTab(3,$event)
"
/>
</el-form-item>
<el-form-item
label=
"设备批次"
>
<!-- <el-checkbox v-model="menuExpand" @change="handleCheckedTreeExpand($event, 'menu')">展开/折叠</el-checkbox>-->
<!-- <el-checkbox v-model="menuNodeAll" @change="handleCheckedTreeNodeAll($event, 'menu')">全选/全不选</el-checkbox>-->
<!-- <el-checkbox v-model="form.menuCheckStrictly" @change="handleCheckedTreeConnect($event, 'menu')">父子联动</el-checkbox>-->
<el-tree
ref=
"menu"
class=
"tree-border"
:data=
"menuOptions"
show-checkbox
node-key=
"id"
check-strictly
empty-text=
"加载中,请稍后"
:props=
"defaultProps"
@
check-change=
"handleMenuCheckChange"
/>
<el-form-item
label=
"厚度"
prop=
"phd"
>
<el-input
ref=
"input4"
v-model
.
trim=
"form.phd"
:maxlength=
"30"
placeholder=
"请输入厚度"
@
keyup
.
enter
.
native=
"handelTab(4,$event)"
/>
</el-form-item>
<el-form-item
label=
"psm"
prop=
"psm"
>
<el-input
ref=
"input5"
v-model
.
trim=
"form.psm"
:maxlength=
"30"
placeholder=
"请输入psm"
@
keyup
.
enter
.
native=
"handelTab(5,$event)"
/>
</el-form-item>
<el-form-item
label=
"pzl"
prop=
"pzl"
>
<el-input
ref=
"input6"
v-model
.
trim=
"form.pzl"
:maxlength=
"30"
placeholder=
"请输入pzl"
@
keyup
.
enter
.
native=
"handelTab(6,$event)"
/>
</el-form-item>
<el-form-item
label=
"parnk"
prop=
"prank"
>
<el-input
ref=
"input7"
v-model
.
trim=
"form.prank"
:maxlength=
"30"
placeholder=
"请输入prank"
@
keyup
.
enter
.
native=
"handelTab(7,$event)"
/>
</el-form-item>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
...
...
@@ -209,7 +211,7 @@ import {
getRole
,
updateRole
}
from
'@/api/system/role'
import
{
listdevice
,
deletedevice
,
exportdevice
}
from
'@/api/magnagement'
import
{
listdevice
,
deletedevice
,
exportdevice
,
getDetailById
,
updatadevice
,
add
}
from
'@/api/magnagement'
import
{
roleMenuTreeselect
,
roleMenuTreeselectMC
,
treeselect
as
menuTreeselect
}
from
'@/api/system/menu'
import
{
roleDeptTreeselect
,
treeselect
as
deptTreeselect
}
from
'@/api/system/dept'
export
default
{
...
...
@@ -320,7 +322,7 @@ export default {
lot
:
undefined
,
plocation
:
undefined
,
pstatus
:
0
,
ptype
:
2
,
ptype
:
1
,
delFlag
:
0
},
// 表单参数
...
...
@@ -335,15 +337,13 @@ export default {
},
// 表单校验
rules
:
{
roleName
:
[
{
required
:
true
,
message
:
'请输入角色名称'
,
trigger
:
'blur'
}
],
roleKey
:
[
{
required
:
true
,
message
:
'请输入权限字符'
,
trigger
:
'blur'
}
],
roleSort
:
[
{
required
:
true
,
message
:
'请输入角色排序'
,
trigger
:
'blur'
}
]
pn
:
[{
required
:
true
,
message
:
'请输入pn'
,
trigger
:
'blur'
}],
lot
:
[{
required
:
true
,
message
:
'请输入lot'
,
trigger
:
'blur'
}],
plocation
:
[{
required
:
true
,
message
:
'请输入plocation'
,
trigger
:
'blur'
}],
phd
:
[{
pattern
:
/^
[
0-9
]{1,9}(\.[
0-9
]{1,3})?
$/
,
message
:
'仅能输入数字和小数,限制三位小数'
,
trigger
:
'change'
}],
psm
:
[{
pattern
:
/^
[
0-9
]{1,9}(\.[
0-9
]{1,3})?
$/
,
message
:
'仅能输入数字和小数,限制三位小数'
,
trigger
:
'change'
}],
pzl
:
[{
pattern
:
/^
[
0-9
]{1,9}(\.[
0-9
]{1,3})?
$/
,
message
:
'仅能输入数字和小数,限制三位小数'
,
trigger
:
'change'
}],
prank
:
[{
pattern
:
/^
[
0-9
]{1,9}(\.[
0-9
]{1,3})?
$/
,
message
:
'仅能输入数字和小数,限制三位小数'
,
trigger
:
'change'
}]
},
deptOptions
:
[],
formData
:
{}
...
...
@@ -585,19 +585,11 @@ export default {
},
/** 修改按钮操作 */
handleUpdate
(
row
)
{
this
.
reset
()
const
roleId
=
row
.
businessId
||
this
.
ids
const
roleMenu
=
this
.
getRoleMenuTreeselect
(
roleId
)
getRole
(
roleId
).
then
(
response
=>
{
this
.
form
=
response
.
data
this
.
title
=
'设备管理'
const
id
=
row
.
businessId
getDetailById
(
id
).
then
(
res
=>
{
this
.
form
=
res
.
data
this
.
open
=
true
this
.
getMenuTreeselect
(
roleId
)
this
.
$nextTick
(()
=>
{
roleMenu
.
then
(
res
=>
{
this
.
$refs
.
menu
.
setCheckedKeys
(
res
.
data
.
checkedKeys
)
})
})
this
.
title
=
'修改角色'
})
},
/** 分配数据权限操作 选择菜单 */
...
...
@@ -628,24 +620,37 @@ export default {
},
/** 提交按钮 */
submitForm
:
function
()
{
this
.
$refs
[
'form'
].
validate
(
valid
=>
{
this
.
$refs
.
form
.
validate
((
valid
)
=>
{
if
(
valid
)
{
this
.
form
.
menuCheckStrictly
=
false
// 校验通过,提交表单或进行其他操作
console
.
log
(
'form'
,
this
.
form
)
if
(
this
.
form
.
businessId
!==
undefined
)
{
this
.
form
.
menuIds
=
this
.
getMenuAllCheckedKeys
()
updateRole
(
this
.
form
).
then
(
response
=>
{
this
.
msgSuccess
(
'修改成功'
)
console
.
log
(
'更新'
)
updatadevice
(
this
.
form
).
then
(
res
=>
{
console
.
log
(
'res'
,
res
)
if
(
res
.
code
===
200
)
{
this
.
open
=
false
this
.
$message
.
success
(
'操作成功'
)
this
.
getList
()
this
.
reFrom
()
}
else
if
(
res
.
code
===
null
)
{
this
.
$message
.
error
(
res
.
message
)
}
})
}
else
{
this
.
form
.
menuIds
=
this
.
getMenuAllCheckedKeys
()
addRole
(
this
.
form
).
then
(
response
=>
{
this
.
msgSuccess
(
'新增成功'
)
add
(
this
.
form
).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
this
.
open
=
false
this
.
$message
.
success
(
'操作成功'
)
this
.
getList
()
this
.
reFrom
()
}
else
if
(
res
.
code
===
null
)
{
this
.
$message
.
error
(
res
.
message
)
}
})
}
}
else
{
// 校验失败,显示错误信息或进行其他操作
}
})
},
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment