belongsTo(\app\common\model\custom\Custom::class, 'customer_id'); } public function document() { return $this->belongsTo(\app\common\model\bid\BidBuyBiddingDocument::class, 'buy_bidding_document_id'); } public function org() { return $this->hasOne(\app\common\model\dept\Orgs::class, 'id', 'org_id'); } public function dept() { return $this->hasOne(\app\common\model\dept\Dept::class, 'id', 'dept_id'); } public function getContractTypeTextAttr($value,$data): string { $dictData = DictData::where('type_value','contract_type')->column('name','value'); return $dictData[$data['contract_type']]; } public function getContractStatusTextAttr($value,$data): string { $dictData = DictData::where('type_value','contract_status')->column('name','value'); return $dictData[$data['contract_status']]; } public function getAnnexAttr($value){ return !empty($value) ? json_decode($value,true) : null; } }