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
0a2545e6
Commit
0a2545e6
authored
Apr 10, 2025
by
罗林杰
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
完成B1,B2两种类型
parent
0c655a17
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
184 additions
and
211 deletions
+184
-211
A2CheckOrders.vue
src/views/sample/chCheckOrder/CheckOrders/A2CheckOrders.vue
+30
-13
B1CheckOrders.vue
src/views/sample/chCheckOrder/CheckOrders/B1CheckOrders.vue
+64
-94
B2CheckOrders.vue
src/views/sample/chCheckOrder/CheckOrders/B2CheckOrders.vue
+67
-94
index.vue
src/views/sample/chCheckOrder/index.vue
+23
-10
No files found.
src/views/sample/chCheckOrder/CheckOrders/A2CheckOrders.vue
View file @
0a2545e6
...
@@ -395,19 +395,6 @@ export default {
...
@@ -395,19 +395,6 @@ export default {
const
values
=
rowData
.
dictValue
.
split
(
','
)
const
values
=
rowData
.
dictValue
.
split
(
','
)
const
remarksValues
=
rowData
.
remarks
.
split
(
','
)
const
remarksValues
=
rowData
.
remarks
.
split
(
','
)
this
.
fixedColumnCount
=
values
.
length
this
.
fixedColumnCount
=
values
.
length
// 往table表格里放值,但排除row1表头
if
(
rowData
.
dictLabel
!==
'row1'
)
{
const
result
=
{}
for
(
let
j
=
0
;
j
<
values
.
length
;
j
++
)
{
result
[
j
]
=
values
[
j
]
}
this
.
tableData
.
push
(
result
)
const
remarks
=
{}
for
(
let
j
=
0
;
j
<
remarksValues
.
length
;
j
++
)
{
remarks
[
j
]
=
remarksValues
[
j
]
}
this
.
tableRemarks
.
push
(
remarks
)
}
if
(
rowData
.
dictLabel
===
'row1'
)
{
if
(
rowData
.
dictLabel
===
'row1'
)
{
// 获取表头数据 循环values
// 获取表头数据 循环values
for
(
let
i
=
0
;
i
<
values
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
values
.
length
;
i
++
)
{
...
@@ -419,6 +406,36 @@ export default {
...
@@ -419,6 +406,36 @@ export default {
}
}
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
}
}
// 往table表格里放值,但排除row1表头
if
(
rowData
.
dictLabel
!==
'row1'
)
{
const
result
=
{}
for
(
let
j
=
0
;
j
<
this
.
tableHeader
.
length
;
j
++
)
{
// i !== templateData.length - 1 代表着不是最后一行
// 处理固定列之外的列值 赋成空字符串
if
(
j
<
values
.
length
)
{
result
[
j
]
=
values
[
j
]
}
else
{
result
[
j
]
=
''
}
}
this
.
tableData
.
push
(
result
)
// 重新排序
this
.
tableData
=
this
.
tableData
.
map
(
row
=>
{
// 获取对象的键,并按升序排序
const
sortedKeys
=
Object
.
keys
(
row
).
map
(
Number
).
sort
((
a
,
b
)
=>
a
-
b
)
// 创建一个新对象,重新映射键
const
newRow
=
{}
sortedKeys
.
forEach
((
key
,
index
)
=>
{
newRow
[
index
]
=
row
[
key
]
// 从 0 开始映射
})
return
newRow
})
const
remarks
=
{}
for
(
let
j
=
0
;
j
<
remarksValues
.
length
;
j
++
)
{
remarks
[
j
]
=
remarksValues
[
j
]
}
this
.
tableRemarks
.
push
(
remarks
)
}
}
}
this
.
loading
=
false
this
.
loading
=
false
}
else
{
}
else
{
...
...
src/views/sample/chCheckOrder/CheckOrders/B1CheckOrders.vue
View file @
0a2545e6
...
@@ -122,7 +122,8 @@ export default {
...
@@ -122,7 +122,8 @@ export default {
maxTable
:
[],
maxTable
:
[],
minTable
:
[],
minTable
:
[],
// 列表备注数据
// 列表备注数据
tableRemarks
:
[]
tableRemarks
:
[],
allInRange
:
'OK'
}
}
},
},
watch
:
{
watch
:
{
...
@@ -213,67 +214,8 @@ export default {
...
@@ -213,67 +214,8 @@ export default {
}
}
},
},
methods
:
{
methods
:
{
verifyResult
(
rowData
,
columnData
,
column
,
index
)
{
handleInput
()
{
if
(
this
.
localVerifyResultFlag
[
index
]
===
true
)
{
this
.
allInRange
=
'OK'
// 遍历result
let
allInRange
=
'OK'
// 假设所有值都在范围内
// 获取当前行,如果第一个列的值为'Cpk',则进行校验
if
(
rowData
[
0
]
===
'Cpk'
)
{
// 校验表格数据
const
upperBound
=
this
.
tableRemarks
[
index
][
1
]
// 上限
const
lowerBound
=
this
.
tableRemarks
[
index
][
0
]
// 下限
// 检查 columnData 是否为数字
if
(
isNaN
(
Number
(
columnData
)))
{
allInRange
=
'NG'
// 如果 columnData 不是数字,直接返回 true
}
else
{
if
(
upperBound
!==
''
&&
upperBound
!==
''
)
{
if
(
Number
(
columnData
)
<
Number
(
lowerBound
)
||
Number
(
columnData
)
>
Number
(
upperBound
))
{
// 不在范围之间
allInRange
=
'NG'
}
else
{
allInRange
=
'OK'
}
}
}
}
// 如果当前行第一个值为'n='开头的字符串
if
(
rowData
[
0
].
startsWith
(
'n='
))
{
const
fourthRowData
=
this
.
tableData
[
3
][
column
.
property
]
// 第4行的数据
const
fifthRowData
=
this
.
tableData
[
4
][
column
.
property
]
// 第5行的数据
// 确保 fourthRowData 和 fifthRowData 是有效的数值
if
(
!
isNaN
(
Number
(
fourthRowData
))
&&
!
isNaN
(
Number
(
fifthRowData
)))
{
if
(
Number
(
columnData
)
<
Number
(
fourthRowData
)
&&
Number
(
columnData
)
>
Number
(
fifthRowData
))
{
// 当前列的数据不在第四行和第五行指定的范围内
allInRange
=
'OK'
}
else
{
allInRange
=
'NG'
}
}
else
{
// 如果 columnData 不是数字,直接返回 true
allInRange
=
'OK'
}
}
const
params
=
{
rowData
:
rowData
,
value
:
allInRange
}
this
.
$emit
(
'updateTableData'
,
params
)
}
else
if
(
this
.
localVerifyResultFlag
[
index
]
===
false
)
{
// 当为修改时 并且不需要校验的时候 直接返回数据的结果
if
(
this
.
updateFlag
===
true
)
{
return
rowData
[
rowData
.
length
-
1
]
}
}
},
// 处理输入事件 一旦输入 就把当前行改为需要校验结果列的行
handleInput
(
rowData
,
columnData
,
column
,
index
)
{
// 通知父组件进行修改校验结果列标志
const
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
verifyResultFlag
))
data
[
index
]
=
true
this
.
localVerifyResultFlag
=
data
this
.
$emit
(
'update:verify-result-flag'
,
data
)
// 校验结果列
this
.
verifyResult
(
rowData
,
columnData
,
column
,
index
)
},
},
// 初始化时 整个表格的数据校验
// 初始化时 整个表格的数据校验
dataVerify
(
rowData
,
columnData
,
column
,
index
)
{
dataVerify
(
rowData
,
columnData
,
column
,
index
)
{
...
@@ -285,8 +227,24 @@ export default {
...
@@ -285,8 +227,24 @@ export default {
if
(
columnData
===
''
||
columnData
===
null
||
columnData
===
undefined
)
{
if
(
columnData
===
''
||
columnData
===
null
||
columnData
===
undefined
)
{
return
false
return
false
}
}
// 判断校验结果
// 如果当前行第一个值为'n='开头的字符串
this
.
verifyResult
(
rowData
,
columnData
,
column
,
index
)
if
(
rowData
[
0
].
startsWith
(
'n='
))
{
const
fourthRowData
=
this
.
tableData
[
3
][
column
.
property
]
// 第4行的数据
const
fifthRowData
=
this
.
tableData
[
4
][
column
.
property
]
// 第5行的数据
// 确保 fourthRowData 和 fifthRowData 是有效的数值
if
(
!
isNaN
(
Number
(
fourthRowData
))
&&
!
isNaN
(
Number
(
fifthRowData
)))
{
if
(
Number
(
columnData
)
<=
Number
(
fourthRowData
)
&&
Number
(
columnData
)
>=
Number
(
fifthRowData
))
{
// 当前列的数据不在第四行和第五行指定的范围内
return
false
}
else
{
this
.
allInRange
=
'NG'
return
true
}
}
else
{
return
false
// 或者可以根据需求决定是否返回 true
}
}
// 获取当前行,如果第一个列的值为'Cpk',则进行校验
// 获取当前行,如果第一个列的值为'Cpk',则进行校验
if
(
rowData
[
0
]
===
'Cpk'
)
{
if
(
rowData
[
0
]
===
'Cpk'
)
{
// 校验表格数据
// 校验表格数据
...
@@ -294,35 +252,30 @@ export default {
...
@@ -294,35 +252,30 @@ export default {
const
lowerBound
=
this
.
tableRemarks
[
index
][
0
]
// 下限
const
lowerBound
=
this
.
tableRemarks
[
index
][
0
]
// 下限
// 检查 columnData 是否为数字
// 检查 columnData 是否为数字
if
(
isNaN
(
Number
(
columnData
)))
{
if
(
isNaN
(
Number
(
columnData
)))
{
this
.
allInRange
=
'NG'
if
(
Number
(
column
.
property
)
+
2
===
Number
(
this
.
tableHeader
.
length
))
{
this
.
$emit
(
'updateTableData'
,
this
.
allInRange
)
}
return
true
// 如果 columnData 不是数字,直接返回 true
return
true
// 如果 columnData 不是数字,直接返回 true
}
else
{
}
else
{
if
(
upperBound
!==
''
&&
upperBound
!==
''
)
{
if
(
upperBound
!==
''
&&
upperBound
!==
''
)
{
if
(
Number
(
columnData
)
<
Number
(
lowerBound
)
||
Number
(
columnData
)
>
Number
(
upperBound
))
{
if
(
Number
(
columnData
)
<
Number
(
lowerBound
)
||
Number
(
columnData
)
>
Number
(
upperBound
))
{
this
.
allInRange
=
'NG'
if
(
Number
(
column
.
property
)
+
2
===
this
.
tableHeader
.
length
)
{
this
.
$emit
(
'updateTableData'
,
this
.
allInRange
)
}
// 不在范围之间
// 不在范围之间
return
true
return
true
}
else
{
}
else
{
if
(
Number
(
column
.
property
)
+
2
===
this
.
tableHeader
.
length
)
{
// 在范围内
this
.
$emit
(
'updateTableData'
,
this
.
allInRange
)
}
return
false
return
false
}
}
}
}
}
}
}
}
// 如果当前行第一个值为'n='开头的字符串
if
(
rowData
[
0
].
startsWith
(
'n='
))
{
const
fourthRowData
=
this
.
tableData
[
3
][
column
.
property
]
// 第4行的数据
const
fifthRowData
=
this
.
tableData
[
4
][
column
.
property
]
// 第5行的数据
// 确保 fourthRowData 和 fifthRowData 是有效的数值
if
(
!
isNaN
(
Number
(
fourthRowData
))
&&
!
isNaN
(
Number
(
fifthRowData
)))
{
if
(
Number
(
columnData
)
<
Number
(
fourthRowData
)
&&
Number
(
columnData
)
>
Number
(
fifthRowData
))
{
// 当前列的数据不在第四行和第五行指定的范围内
return
false
}
else
{
return
true
}
}
else
{
return
false
// 或者可以根据需求决定是否返回 true
}
}
},
},
// 获取OCR模版配置
// 获取OCR模版配置
getDictOcrTemplate1
()
{
getDictOcrTemplate1
()
{
...
@@ -337,19 +290,6 @@ export default {
...
@@ -337,19 +290,6 @@ export default {
const
values
=
rowData
.
dictValue
.
split
(
','
)
const
values
=
rowData
.
dictValue
.
split
(
','
)
const
remarksValues
=
rowData
.
remarks
.
split
(
','
)
const
remarksValues
=
rowData
.
remarks
.
split
(
','
)
this
.
fixedColumnCount
=
values
.
length
this
.
fixedColumnCount
=
values
.
length
// 往table表格里放值,但排除row1表头
if
(
rowData
.
dictLabel
!==
'row1'
)
{
const
result
=
{}
for
(
let
j
=
0
;
j
<
values
.
length
;
j
++
)
{
result
[
j
]
=
values
[
j
]
}
this
.
tableData
.
push
(
result
)
const
remarks
=
{}
for
(
let
j
=
0
;
j
<
remarksValues
.
length
;
j
++
)
{
remarks
[
j
]
=
remarksValues
[
j
]
}
this
.
tableRemarks
.
push
(
remarks
)
}
if
(
rowData
.
dictLabel
===
'row1'
)
{
if
(
rowData
.
dictLabel
===
'row1'
)
{
// 获取表头数据 循环values
// 获取表头数据 循环values
for
(
let
i
=
0
;
i
<
values
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
values
.
length
;
i
++
)
{
...
@@ -361,6 +301,36 @@ export default {
...
@@ -361,6 +301,36 @@ export default {
}
}
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
}
}
// 往table表格里放值,但排除row1表头
if
(
rowData
.
dictLabel
!==
'row1'
)
{
const
result
=
{}
for
(
let
j
=
0
;
j
<
this
.
tableHeader
.
length
;
j
++
)
{
// i !== templateData.length - 1 代表着不是最后一行
// 处理固定列之外的列值 赋成空字符串
if
(
j
<
values
.
length
)
{
result
[
j
]
=
values
[
j
]
}
else
{
result
[
j
]
=
''
}
}
this
.
tableData
.
push
(
result
)
// 重新排序
this
.
tableData
=
this
.
tableData
.
map
(
row
=>
{
// 获取对象的键,并按升序排序
const
sortedKeys
=
Object
.
keys
(
row
).
map
(
Number
).
sort
((
a
,
b
)
=>
a
-
b
)
// 创建一个新对象,重新映射键
const
newRow
=
{}
sortedKeys
.
forEach
((
key
,
index
)
=>
{
newRow
[
index
]
=
row
[
key
]
// 从 0 开始映射
})
return
newRow
})
const
remarks
=
{}
for
(
let
j
=
0
;
j
<
remarksValues
.
length
;
j
++
)
{
remarks
[
j
]
=
remarksValues
[
j
]
}
this
.
tableRemarks
.
push
(
remarks
)
}
}
}
this
.
loading
=
false
this
.
loading
=
false
}
else
{
}
else
{
...
...
src/views/sample/chCheckOrder/CheckOrders/B2CheckOrders.vue
View file @
0a2545e6
...
@@ -122,7 +122,8 @@ export default {
...
@@ -122,7 +122,8 @@ export default {
maxTable
:
[],
maxTable
:
[],
minTable
:
[],
minTable
:
[],
// 列表备注数据
// 列表备注数据
tableRemarks
:
[]
tableRemarks
:
[],
allInRange
:
'OK'
}
}
},
},
watch
:
{
watch
:
{
...
@@ -131,6 +132,8 @@ export default {
...
@@ -131,6 +132,8 @@ export default {
handler
(
newValue
,
oldValue
)
{
handler
(
newValue
,
oldValue
)
{
if
(
this
.
updateFlag
===
true
)
{
if
(
this
.
updateFlag
===
true
)
{
this
.
tableData
=
Array
.
from
({
length
:
newValue
.
length
},
()
=>
[])
this
.
tableData
=
Array
.
from
({
length
:
newValue
.
length
},
()
=>
[])
console
.
log
(
'111111111'
,
this
.
tableData
)
console
.
log
(
'2222222'
,
newValue
)
// 修改
// 修改
// 循环this.tableData i代表第几行
// 循环this.tableData i代表第几行
for
(
let
i
=
0
;
i
<
newValue
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
newValue
.
length
;
i
++
)
{
...
@@ -141,6 +144,7 @@ export default {
...
@@ -141,6 +144,7 @@ export default {
// this.tableData[i][this.fixedColumnCount + j] = newValue[i][j];
// this.tableData[i][this.fixedColumnCount + j] = newValue[i][j];
}
}
}
}
console
.
log
(
'33333333333'
,
this
.
tableData
)
this
.
tableHeader
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
returnTableHeader
))
this
.
tableHeader
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
returnTableHeader
))
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
// 找出列表表头为1的索引号
// 找出列表表头为1的索引号
...
@@ -213,67 +217,8 @@ export default {
...
@@ -213,67 +217,8 @@ export default {
}
}
},
},
methods
:
{
methods
:
{
verifyResult
(
rowData
,
columnData
,
column
,
index
)
{
handleInput
()
{
if
(
this
.
localVerifyResultFlag
[
index
]
===
true
)
{
this
.
allInRange
=
'OK'
// 遍历result
let
allInRange
=
'OK'
// 假设所有值都在范围内
// 获取当前行,如果第一个列的值为'Cpk',则进行校验
if
(
rowData
[
0
]
===
'Cpk'
)
{
// 校验表格数据
const
upperBound
=
this
.
tableRemarks
[
index
][
1
]
// 上限
const
lowerBound
=
this
.
tableRemarks
[
index
][
0
]
// 下限
// 检查 columnData 是否为数字
if
(
isNaN
(
Number
(
columnData
)))
{
allInRange
=
'NG'
// 如果 columnData 不是数字,直接返回 true
}
else
{
if
(
upperBound
!==
''
&&
upperBound
!==
''
)
{
if
(
Number
(
columnData
)
<
Number
(
lowerBound
)
||
Number
(
columnData
)
>
Number
(
upperBound
))
{
// 不在范围之间
allInRange
=
'NG'
}
else
{
allInRange
=
'OK'
}
}
}
}
// 如果当前行第一个值为'n='开头的字符串
if
(
rowData
[
0
].
startsWith
(
'n='
))
{
const
fourthRowData
=
this
.
tableData
[
3
][
column
.
property
]
// 第4行的数据
const
fifthRowData
=
this
.
tableData
[
4
][
column
.
property
]
// 第5行的数据
// 确保 fourthRowData 和 fifthRowData 是有效的数值
if
(
!
isNaN
(
Number
(
fourthRowData
))
&&
!
isNaN
(
Number
(
fifthRowData
)))
{
if
(
Number
(
columnData
)
<
Number
(
fourthRowData
)
&&
Number
(
columnData
)
>
Number
(
fifthRowData
))
{
// 当前列的数据不在第四行和第五行指定的范围内
allInRange
=
'OK'
}
else
{
allInRange
=
'NG'
}
}
else
{
// 如果 columnData 不是数字,直接返回 true
allInRange
=
'OK'
}
}
const
params
=
{
rowData
:
rowData
,
value
:
allInRange
}
this
.
$emit
(
'updateTableData'
,
params
)
}
else
if
(
this
.
localVerifyResultFlag
[
index
]
===
false
)
{
// 当为修改时 并且不需要校验的时候 直接返回数据的结果
if
(
this
.
updateFlag
===
true
)
{
return
rowData
[
rowData
.
length
-
1
]
}
}
},
// 处理输入事件 一旦输入 就把当前行改为需要校验结果列的行
handleInput
(
rowData
,
columnData
,
column
,
index
)
{
// 通知父组件进行修改校验结果列标志
const
data
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
verifyResultFlag
))
data
[
index
]
=
true
this
.
localVerifyResultFlag
=
data
this
.
$emit
(
'update:verify-result-flag'
,
data
)
// 校验结果列
this
.
verifyResult
(
rowData
,
columnData
,
column
,
index
)
},
},
// 初始化时 整个表格的数据校验
// 初始化时 整个表格的数据校验
dataVerify
(
rowData
,
columnData
,
column
,
index
)
{
dataVerify
(
rowData
,
columnData
,
column
,
index
)
{
...
@@ -285,8 +230,24 @@ export default {
...
@@ -285,8 +230,24 @@ export default {
if
(
columnData
===
''
||
columnData
===
null
||
columnData
===
undefined
)
{
if
(
columnData
===
''
||
columnData
===
null
||
columnData
===
undefined
)
{
return
false
return
false
}
}
// 判断校验结果
// 如果当前行第一个值为'n='开头的字符串
this
.
verifyResult
(
rowData
,
columnData
,
column
,
index
)
if
(
rowData
[
0
].
startsWith
(
'n='
))
{
const
fourthRowData
=
this
.
tableData
[
3
][
column
.
property
]
// 第4行的数据
const
fifthRowData
=
this
.
tableData
[
4
][
column
.
property
]
// 第5行的数据
// 确保 fourthRowData 和 fifthRowData 是有效的数值
if
(
!
isNaN
(
Number
(
fourthRowData
))
&&
!
isNaN
(
Number
(
fifthRowData
)))
{
if
(
Number
(
columnData
)
<=
Number
(
fourthRowData
)
&&
Number
(
columnData
)
>=
Number
(
fifthRowData
))
{
// 当前列的数据不在第四行和第五行指定的范围内
return
false
}
else
{
this
.
allInRange
=
'NG'
return
true
}
}
else
{
return
false
// 或者可以根据需求决定是否返回 true
}
}
// 获取当前行,如果第一个列的值为'Cpk',则进行校验
// 获取当前行,如果第一个列的值为'Cpk',则进行校验
if
(
rowData
[
0
]
===
'Cpk'
)
{
if
(
rowData
[
0
]
===
'Cpk'
)
{
// 校验表格数据
// 校验表格数据
...
@@ -294,35 +255,30 @@ export default {
...
@@ -294,35 +255,30 @@ export default {
const
lowerBound
=
this
.
tableRemarks
[
index
][
0
]
// 下限
const
lowerBound
=
this
.
tableRemarks
[
index
][
0
]
// 下限
// 检查 columnData 是否为数字
// 检查 columnData 是否为数字
if
(
isNaN
(
Number
(
columnData
)))
{
if
(
isNaN
(
Number
(
columnData
)))
{
this
.
allInRange
=
'NG'
if
(
Number
(
column
.
property
)
+
2
===
Number
(
this
.
tableHeader
.
length
))
{
this
.
$emit
(
'updateTableData'
,
this
.
allInRange
)
}
return
true
// 如果 columnData 不是数字,直接返回 true
return
true
// 如果 columnData 不是数字,直接返回 true
}
else
{
}
else
{
if
(
upperBound
!==
''
&&
upperBound
!==
''
)
{
if
(
upperBound
!==
''
&&
upperBound
!==
''
)
{
if
(
Number
(
columnData
)
<
Number
(
lowerBound
)
||
Number
(
columnData
)
>
Number
(
upperBound
))
{
if
(
Number
(
columnData
)
<
Number
(
lowerBound
)
||
Number
(
columnData
)
>
Number
(
upperBound
))
{
this
.
allInRange
=
'NG'
if
(
Number
(
column
.
property
)
+
2
===
this
.
tableHeader
.
length
)
{
this
.
$emit
(
'updateTableData'
,
this
.
allInRange
)
}
// 不在范围之间
// 不在范围之间
return
true
return
true
}
else
{
}
else
{
if
(
Number
(
column
.
property
)
+
2
===
this
.
tableHeader
.
length
)
{
// 在范围内
this
.
$emit
(
'updateTableData'
,
this
.
allInRange
)
}
return
false
return
false
}
}
}
}
}
}
}
}
// 如果当前行第一个值为'n='开头的字符串
if
(
rowData
[
0
].
startsWith
(
'n='
))
{
const
fourthRowData
=
this
.
tableData
[
3
][
column
.
property
]
// 第4行的数据
const
fifthRowData
=
this
.
tableData
[
4
][
column
.
property
]
// 第5行的数据
// 确保 fourthRowData 和 fifthRowData 是有效的数值
if
(
!
isNaN
(
Number
(
fourthRowData
))
&&
!
isNaN
(
Number
(
fifthRowData
)))
{
if
(
Number
(
columnData
)
<
Number
(
fourthRowData
)
&&
Number
(
columnData
)
>
Number
(
fifthRowData
))
{
// 当前列的数据不在第四行和第五行指定的范围内
return
false
}
else
{
return
true
}
}
else
{
return
false
// 或者可以根据需求决定是否返回 true
}
}
},
},
// 获取OCR模版配置
// 获取OCR模版配置
getDictOcrTemplate1
()
{
getDictOcrTemplate1
()
{
...
@@ -337,19 +293,6 @@ export default {
...
@@ -337,19 +293,6 @@ export default {
const
values
=
rowData
.
dictValue
.
split
(
','
)
const
values
=
rowData
.
dictValue
.
split
(
','
)
const
remarksValues
=
rowData
.
remarks
.
split
(
','
)
const
remarksValues
=
rowData
.
remarks
.
split
(
','
)
this
.
fixedColumnCount
=
values
.
length
this
.
fixedColumnCount
=
values
.
length
// 往table表格里放值,但排除row1表头
if
(
rowData
.
dictLabel
!==
'row1'
)
{
const
result
=
{}
for
(
let
j
=
0
;
j
<
values
.
length
;
j
++
)
{
result
[
j
]
=
values
[
j
]
}
this
.
tableData
.
push
(
result
)
const
remarks
=
{}
for
(
let
j
=
0
;
j
<
remarksValues
.
length
;
j
++
)
{
remarks
[
j
]
=
remarksValues
[
j
]
}
this
.
tableRemarks
.
push
(
remarks
)
}
if
(
rowData
.
dictLabel
===
'row1'
)
{
if
(
rowData
.
dictLabel
===
'row1'
)
{
// 获取表头数据 循环values
// 获取表头数据 循环values
for
(
let
i
=
0
;
i
<
values
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
values
.
length
;
i
++
)
{
...
@@ -361,6 +304,36 @@ export default {
...
@@ -361,6 +304,36 @@ export default {
}
}
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
this
.
tableHeaderLength
=
this
.
tableHeader
.
length
}
}
// 往table表格里放值,但排除row1表头
if
(
rowData
.
dictLabel
!==
'row1'
)
{
const
result
=
{}
for
(
let
j
=
0
;
j
<
this
.
tableHeader
.
length
;
j
++
)
{
// i !== templateData.length - 1 代表着不是最后一行
// 处理固定列之外的列值 赋成空字符串
if
(
j
<
values
.
length
)
{
result
[
j
]
=
values
[
j
]
}
else
{
result
[
j
]
=
''
}
}
this
.
tableData
.
push
(
result
)
// 重新排序
this
.
tableData
=
this
.
tableData
.
map
(
row
=>
{
// 获取对象的键,并按升序排序
const
sortedKeys
=
Object
.
keys
(
row
).
map
(
Number
).
sort
((
a
,
b
)
=>
a
-
b
)
// 创建一个新对象,重新映射键
const
newRow
=
{}
sortedKeys
.
forEach
((
key
,
index
)
=>
{
newRow
[
index
]
=
row
[
key
]
// 从 0 开始映射
})
return
newRow
})
const
remarks
=
{}
for
(
let
j
=
0
;
j
<
remarksValues
.
length
;
j
++
)
{
remarks
[
j
]
=
remarksValues
[
j
]
}
this
.
tableRemarks
.
push
(
remarks
)
}
}
}
this
.
loading
=
false
this
.
loading
=
false
}
else
{
}
else
{
...
...
src/views/sample/chCheckOrder/index.vue
View file @
0a2545e6
...
@@ -239,28 +239,26 @@
...
@@ -239,28 +239,26 @@
<
div
v
-
if
=
"showModelTypeB1"
>
<
div
v
-
if
=
"showModelTypeB1"
>
<
B1CheckOrders
<
B1CheckOrders
:
ocr
-
array
=
"ocrArray"
:
ocr
-
array
=
"ocrArray"
:
verify
-
result
-
flag
.
sync
=
"verifyResultFlag"
:
update
-
flag
=
"updateFlag"
:
update
-
flag
=
"updateFlag"
:
return
-
table
-
header
=
"tableHeader"
:
return
-
table
-
header
=
"tableHeader"
:
one
-
key
-
flag
=
"oneKeyFlag"
:
one
-
key
-
flag
=
"oneKeyFlag"
:
remarks
=
"subModalRemarks"
:
remarks
=
"subModalRemarks"
@
afterUpdate
=
"getAfterUpdateData"
@
afterUpdate
=
"getAfterUpdateData
B
"
@
tableHeader
=
"getTableHeader"
@
tableHeader
=
"getTableHeader"
@
updateTableData
=
"updateTableData"
@
updateTableData
=
"updateTableData
B
"
@
tableRemarks
=
"getTableRemarks"
@
tableRemarks
=
"getTableRemarks"
/>
/>
<
/div
>
<
/div
>
<
div
v
-
if
=
"showModelTypeB2"
>
<
div
v
-
if
=
"showModelTypeB2"
>
<
B2CheckOrders
<
B2CheckOrders
:
ocr
-
array
=
"ocrArray"
:
ocr
-
array
=
"ocrArray"
:
verify
-
result
-
flag
.
sync
=
"verifyResultFlag"
:
update
-
flag
=
"updateFlag"
:
update
-
flag
=
"updateFlag"
:
return
-
table
-
header
=
"tableHeader"
:
return
-
table
-
header
=
"tableHeader"
:
one
-
key
-
flag
=
"oneKeyFlag"
:
one
-
key
-
flag
=
"oneKeyFlag"
:
remarks
=
"subModalRemarks"
:
remarks
=
"subModalRemarks"
@
afterUpdate
=
"getAfterUpdateData"
@
afterUpdate
=
"getAfterUpdateData
B
"
@
tableHeader
=
"getTableHeader"
@
tableHeader
=
"getTableHeader"
@
updateTableData
=
"updateTableData"
@
updateTableData
=
"updateTableData
B
"
@
tableRemarks
=
"getTableRemarks"
@
tableRemarks
=
"getTableRemarks"
/>
/>
<
/div
>
<
/div
>
...
@@ -351,7 +349,7 @@ export default {
...
@@ -351,7 +349,7 @@ export default {
{
value
:
'0'
,
label
:
'NG'
}
{
value
:
'0'
,
label
:
'NG'
}
],
],
// 扫描得到的数据
// 扫描得到的数据
ocrArray
:
''
,
ocrArray
:
[]
,
lot
:
''
,
lot
:
''
,
// 主类型的总数据
// 主类型的总数据
TypeModalOptions
:
[
TypeModalOptions
:
[
...
@@ -445,6 +443,14 @@ export default {
...
@@ -445,6 +443,14 @@ export default {
}
}
}
}
}
,
}
,
updateTableDataB
(
params
)
{
// console.log('111111',params)
if
(
params
===
'OK'
)
{
this
.
form
.
chResult
=
'1'
}
else
if
(
params
===
'NG'
)
{
this
.
form
.
chResult
=
'0'
}
}
,
// 获取表格的表头数据
// 获取表格的表头数据
getTableHeader
(
data
)
{
getTableHeader
(
data
)
{
this
.
tableHeader
=
data
this
.
tableHeader
=
data
...
@@ -481,10 +487,12 @@ export default {
...
@@ -481,10 +487,12 @@ export default {
// 转换逻辑
// 转换逻辑
const
newData
=
data
.
map
(
item
=>
Object
.
values
(
item
))
const
newData
=
data
.
map
(
item
=>
Object
.
values
(
item
))
// 循环newData i代表第几行
// 循环newData i代表第几行
for
(
let
i
=
0
;
i
<
newData
.
length
;
i
++
)
{
if
(
this
.
form
.
chType
===
'A'
)
{
newData
[
i
][
newData
[
i
].
length
-
1
]
=
'OK'
for
(
let
i
=
0
;
i
<
newData
.
length
;
i
++
)
{
newData
[
i
][
newData
[
i
].
length
-
1
]
=
'OK'
}
this
.
ocrArray
=
newData
}
}
this
.
ocrArray
=
newData
// 生成的是每一行的结果列是否需要验证 false为不需要验证 true为需要验证
// 生成的是每一行的结果列是否需要验证 false为不需要验证 true为需要验证
const
result
=
{
}
const
result
=
{
}
for
(
let
i
=
0
;
i
<
this
.
tableData1
.
length
;
i
++
)
{
for
(
let
i
=
0
;
i
<
this
.
tableData1
.
length
;
i
++
)
{
...
@@ -521,6 +529,9 @@ export default {
...
@@ -521,6 +529,9 @@ export default {
}
}
}
}
}
,
}
,
getAfterUpdateDataB
(
value
)
{
this
.
tableData1
=
value
}
,
// 获取父组件传递过来的备注数据
// 获取父组件传递过来的备注数据
getTableRemarks
(
value
)
{
getTableRemarks
(
value
)
{
this
.
tableRemarks
=
value
this
.
tableRemarks
=
value
...
@@ -694,6 +705,8 @@ export default {
...
@@ -694,6 +705,8 @@ export default {
this
.
isUpdate
=
false
this
.
isUpdate
=
false
this
.
showModelTypeA1
=
false
this
.
showModelTypeA1
=
false
this
.
showModelTypeA2
=
false
this
.
showModelTypeA2
=
false
this
.
showModelTypeB1
=
false
this
.
showModelTypeB2
=
false
this
.
firstTimeUpdate
=
false
this
.
firstTimeUpdate
=
false
this
.
firstTimeSelectType
=
false
this
.
firstTimeSelectType
=
false
this
.
subOptions
=
[]
this
.
subOptions
=
[]
...
...
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