Refactor: Standardize Transfer Order Doc Numbering
- Updated InventoryTransferOrder boot method to use sequential numbering (TRF+Ymd+Seq) matching InventoryAdjustDoc logic.
This commit is contained in:
@@ -34,7 +34,21 @@ class InventoryTransferOrder extends Model
|
|||||||
|
|
||||||
static::creating(function ($model) {
|
static::creating(function ($model) {
|
||||||
if (empty($model->doc_no)) {
|
if (empty($model->doc_no)) {
|
||||||
$model->doc_no = 'TRF-' . date('YmdHis') . '-' . rand(100, 999);
|
$today = date('Ymd');
|
||||||
|
$prefix = 'TRF' . $today;
|
||||||
|
|
||||||
|
$lastDoc = static::where('doc_no', 'like', $prefix . '%')
|
||||||
|
->orderBy('doc_no', 'desc')
|
||||||
|
->first();
|
||||||
|
|
||||||
|
if ($lastDoc) {
|
||||||
|
$lastNumber = substr($lastDoc->doc_no, -2);
|
||||||
|
$nextNumber = str_pad((int)$lastNumber + 1, 2, '0', STR_PAD_LEFT);
|
||||||
|
} else {
|
||||||
|
$nextNumber = '01';
|
||||||
|
}
|
||||||
|
|
||||||
|
$model->doc_no = $prefix . $nextNumber;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user