setTable('transaction_send_coins'); $this->setDisplayField('id'); $this->setPrimaryKey('id'); $this->belongsTo('Transactions', [ 'foreignKey' => 'transaction_id', 'joinType' => 'INNER' ]); $this->belongsTo('StateUsers', [ 'foreignKey' => 'state_user_id', 'joinType' => 'INNER' ]); $this->belongsTo('ReceiverUsers', [ 'className' => 'StateUsers', 'foreignKey' => 'receiver_user_id', 'joinType' => 'INNER' ]); } /** * Default validation rules. * * @param \Cake\Validation\Validator $validator Validator instance. * @return \Cake\Validation\Validator */ public function validationDefault(Validator $validator) { $validator ->integer('id') ->allowEmptyString('id', null, 'create'); $validator ->requirePresence('sender_public_key', 'create') ->notEmptyString('sender_public_key'); $validator ->requirePresence('receiver_public_key', 'create') ->notEmptyString('receiver_public_key'); $validator ->requirePresence('amount', 'create') ->notEmptyString('amount'); $validator ->requirePresence('sender_final_balance', 'create') ->notEmptyString('sender_final_balance'); return $validator; } /** * Returns a rules checker object that will be used for validating * application integrity. * * @param \Cake\ORM\RulesChecker $rules The rules object to be modified. * @return \Cake\ORM\RulesChecker */ public function buildRules(RulesChecker $rules) { $rules->add($rules->existsIn(['transaction_id'], 'Transactions')); $rules->add($rules->existsIn(['state_user_id'], 'StateUsers')); $rules->add($rules->existsIn(['receiver_user_id'], 'ReceiverUsers')); return $rules; } }