Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
T
third-party
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
2
Merge Requests
2
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
cooperatic-foodcoops
third-party
Commits
a389ffb7
Commit
a389ffb7
authored
Jun 29, 2022
by
Damien Moulard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add js func to check for valid ean8 & check in relevant places
parent
5f590324
Pipeline
#2284
passed with stage
in 1 minute 27 seconds
Changes
3
Pipelines
1
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
31 additions
and
4 deletions
+31
-4
all_common.js
outils/static/js/all_common.js
+21
-0
reception_produits.js
reception/static/js/reception_produits.js
+3
-0
shelf_inventory.js
shelfs/static/js/shelf_inventory.js
+7
-4
No files found.
outils/static/js/all_common.js
View file @
a389ffb7
...
...
@@ -455,6 +455,27 @@ function eanCheckDigit(s) {
return
(
10
-
(
result
%
10
))
%
10
;
}
function
isValidEAN8
(
ean
)
{
let
answer
=
true
;
let
key
=
ean
.
substring
(
ean
.
length
-
1
);
let
digits
=
ean
.
substring
(
0
,
ean
.
length
-
1
);
let
checkSum
=
digits
.
split
(
''
).
reduce
(
function
(
previousValue
,
currentValue
,
i
)
{
let
temp_val
=
i
%
2
==
0
?
parseInt
(
currentValue
)
*
3
:
parseInt
(
currentValue
);
return
parseInt
(
previousValue
)
+
temp_val
;
},
0
);
let
checkKey
=
10
-
checkSum
%
10
;
if
(
checkKey
===
10
)
checkKey
=
0
;
if
(
checkKey
!=
key
)
{
answer
=
false
;
}
return
answer
;
}
function
isValidEAN13
(
ean
)
{
var
answer
=
true
;
var
checkSum
=
ean
.
split
(
''
).
reduce
(
function
(
p
,
v
,
i
)
{
...
...
reception/static/js/reception_produits.js
View file @
a389ffb7
...
...
@@ -2342,6 +2342,9 @@ function init_dom(partners_display_data) {
}
else
if
(
barcode
.
length
==
12
&&
barcode
.
indexOf
(
'0'
)
!==
0
)
{
// User may use a scanner which remove leading 0
barcode
=
'0'
+
barcode
;
}
else
if
(
barcode
.
length
>=
8
)
{
// For EAN8
barcode
=
barcode
.
substring
(
barcode
.
length
-
8
);
}
else
{
//manually submitted after correction
var
barcode_input
=
$
(
'#search_input'
);
...
...
shelfs/static/js/shelf_inventory.js
View file @
a389ffb7
...
...
@@ -54,7 +54,8 @@ Number.isSafeInteger = Number.isSafeInteger || function (value) {
function
back
()
{
document
.
location
.
href
=
parent_location
;
// document.location.href = parent_location;
barcode_analyzer
(
"42074700"
);
}
function
debounce
(
func
,
delay
=
100
)
{
...
...
@@ -96,10 +97,12 @@ function barcode_analyzer(chars) {
}
else
if
(
barcode
&&
barcode
.
length
==
12
&&
barcode
.
indexOf
(
'0'
)
!==
0
)
{
// User may use a scanner which remove leading 0
barcode
=
'0'
+
barcode
;
}
else
if
(
barcode
&&
barcode
.
length
>=
8
)
{
// For EAN8
barcode
=
barcode
.
substring
(
barcode
.
length
-
8
);
}
else
{
//manually submitted after correction
var
barcode_input
=
$
(
'#search_input'
);
barcode
=
barcode_input
.
val
();
}
...
...
@@ -149,7 +152,7 @@ function select_product_from_bc(barcode) {
var
found
=
null
,
qty
=
null
;
if
(
isValidEAN13
(
barcode
))
{
if
(
isValidEAN13
(
barcode
)
||
isValidEAN8
(
barcode
)
)
{
var
scannedProduct
=
barcodes
.
get_corresponding_odoo_product
(
barcode
);
if
(
scannedProduct
===
null
)
{
...
...
@@ -163,7 +166,7 @@ function select_product_from_bc(barcode) {
}
}
}
else
{
alert
(
"Le code-barre "
+
barcode
+
" n'est pas reconnu comme un EAN13
valide.'
"
);
alert
(
"Le code-barre "
+
barcode
+
" n'est pas reconnu comme un EAN13
ou EAN8 valide.
"
);
return
-
1
;
}
...
...
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