1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Eav\Model\Entity\Increment;
/**
* Properties:
* - prefix
* - pad_length
* - pad_char
* - last_id
*
* @api
* @since 100.0.2
*/
abstract class AbstractIncrement extends \Magento\Framework\DataObject implements
\Magento\Eav\Model\Entity\Increment\IncrementInterface
{
/**
* Get pad length
*
* @return int
*/
public function getPadLength()
{
$padLength = $this->getData('pad_length');
if (empty($padLength)) {
$padLength = 8;
}
return $padLength;
}
/**
* Get pad char
*
* @return string
*/
public function getPadChar()
{
$padChar = $this->getData('pad_char');
if (empty($padChar)) {
$padChar = '0';
}
return $padChar;
}
/**
* Pad format
*
* @param mixed $id
* @return string
*/
public function format($id)
{
$result = $this->getPrefix();
$result .= str_pad((string)$id, $this->getPadLength(), $this->getPadChar(), STR_PAD_LEFT);
return $result;
}
/**
* Frontend format
*
* @param mixed $id
* @return mixed
* @codeCoverageIgnore
*/
public function frontendFormat($id)
{
return $id;
}
}