/var/www/vhosts/ihelp.ro/httpdocs/src/Model/Table
Edit: /var/www/vhosts/ihelp.ro/httpdocs/src/Model/Table/OrdersTable.php (4810B)
setTable('orders');
$this->setDisplayField('id');
$this->setPrimaryKey('id');
$this->addBehavior('Timestamp');
$this->belongsTo('Users', [
'foreignKey' => 'user_id',
'joinType' => 'INNER',
]);
$this->belongsTo('UserAddresses', [
'foreignKey' => 'user_address_id',
]);
$this->belongsTo('PaymentMethods', [
'foreignKey' => 'payment_method_id',
]);
$this->belongsTo('OrderStatuses', [
'foreignKey' => 'order_status_id',
'joinType' => 'INNER',
]);
$this->belongsTo('Awbs', [
'foreignKey' => 'awb_id',
]);
$this->hasMany('Awbs', [
'foreignKey' => 'order_id',
]);
$this->hasMany('Carts', [
'foreignKey' => 'order_id',
]);
$this->hasMany('Donations', [
'foreignKey' => 'order_id',
]);
$this->hasMany('OrderProducts', [
'foreignKey' => 'order_id',
]);
$this->hasMany('OrderStatusDates', [
'foreignKey' => 'order_id',
]);
$this->hasMany('Refunds', [
'foreignKey' => 'order_id',
]);
}
/**
* setStatus
*/
public function setStatus($id = false, $status = false, $message = NULL)
{
if (!empty($id) && !empty($status)) {
$object = $this->get($id);
$object->order_status_id = $status;
$object->order_status_date = FrozenTime::now();
$object->order_status_comment = $message;
$this->save($object);
return true;
}
}
/**
* Default validation rules.
*/
public function validationDefault(Validator $validator): Validator
{
$validator
->integer('id')
->allowEmptyString('id', null, 'create');
// $validator
// ->scalar('uuid')
// ->maxLength('uuid', 100)
// ->requirePresence('uuid', 'create')
// ->notEmptyString('uuid');
// $validator
// ->dateTime('order_status_date')
// ->requirePresence('order_status_date', 'create')
// ->notEmptyDateTime('order_status_date');
// $validator
// ->scalar('order_status_comment')
// ->maxLength('order_status_comment', 255)
// ->requirePresence('order_status_comment', 'create')
// ->notEmptyString('order_status_comment');
// $validator
// ->email('email')
// ->requirePresence('email', 'create')
// ->notEmptyString('email');
// $validator
// ->decimal('total')
// ->requirePresence('total', 'create')
// ->notEmptyString('total');
// $validator
// ->scalar('ip')
// ->maxLength('ip', 255)
// ->requirePresence('ip', 'create')
// ->notEmptyString('ip');
// $validator
// ->boolean('email_sent')
// ->requirePresence('email_sent', 'create')
// ->notEmptyString('email_sent');
// $validator
// ->scalar('env_key')
// ->maxLength('env_key', 255)
// ->requirePresence('env_key', 'create')
// ->notEmptyString('env_key');
// $validator
// ->scalar('data')
// ->maxLength('data', 255)
// ->requirePresence('data', 'create')
// ->notEmptyString('data');
return $validator;
}
/**
* Returns a rules checker object that will be used for validating
*/
public function buildRules(RulesChecker $rules): RulesChecker
{
$rules->add($rules->existsIn(['user_id'], 'Users'), ['errorField' => 'user_id']);
$rules->add($rules->existsIn(['order_status_id'], 'OrderStatuses'), ['errorField' => 'order_status_id']);
// $rules->add($rules->existsIn(['payment_method_id'], 'PaymentMethods'), ['errorField' => 'payment_method_id']);
// $rules->add($rules->existsIn(['order_status_id'], 'OrderStatuses'), ['errorField' => 'order_status_id']);
// $rules->add($rules->existsIn(['awb_id'], 'Awbs'), ['errorField' => 'awb_id']);
return $rules;
}
}