CustomerUsaha.php
1.49 KB
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
<?php
/**
* @Author: irul
* @Date: 2019-09-20 21:39:58
* @Last Modified by: irul
* @Last Modified time: 2019-10-01 23:43:20
*/
namespace Integrasi\Reklame\Base\Models;
use \Illuminate\Database\Capsule\Manager as DB;
class CustomerUsaha extends AbstractModel
{
protected $table = 'pad_customer_usaha';
protected $visible = array(
'id',
'customer_id',
'usaha_id',
'konterid',
'reg_date',
'kecamatan_id',
'kelurahan_id',
'opnm',
'opalamat',
'pnama',
'palamat',
'pkelurahan',
'pkecamatan',
'pkabupaten',
'ptelp',
'pkodepos',
'nopd',
);
protected $appends = array('nopd');
protected $guarded = array();
protected static function boot()
{
parent::boot();
static::creating(function ($model) {
return $model->_onCreating();
});
}
public function _onCreating()
{
// $maxKonterid = CustomerUsaha::select(DB::raw('max(konterid) as nomor'))
$maxKonterid = call_user_func($this->getParentNamespace() . '\CustomerUsaha::select',
DB::raw('max(konterid) as nomor'))
->where(DB::raw('customer_id'), trim($this->attributes['customer_id']))
->first();
// ->toSql();
$konterid = ($maxKonterid->nomor ?: 0) + 1;
$this->attributes['konterid'] = $konterid;
$this->attributes['create_uid'] = \Api\AuthBasic::getUid();
return true;
}
// == ACCESSORS == //
public function getNopdAttribute($value)
{
$qry = "select get_nopd(?, false) as nopd";
$row = DB::select(DB::raw($qry), array($this->attributes['id']));
return $row[0]->nopd;
}
}