class

DeleteProduct

Inherits Product::DeleteOperation < Avram::DeleteOperation < Avram::AddColumnAttributes < Avram::InheritColumnAttributes < Avram::Callbacks < Avram::ParamKeyOverride < Avram::OperationErrors < Avram::Validations < Avram::DefineAttribute < Avram::NeedyInitializerAndDeleteMethods < Reference < Object

Constants

ATTRIBUTES = [] of Nil
COLUMN_ATTRIBUTES = [{name: id, type: Int64, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: created_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: updated_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: name, type: String, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: place, type: Product::Place, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: reason, type: Product::Reason, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_date, type: String, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: process_line_id, type: ProcessLine::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: workshop_id, type: Workshop::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: manufactory_id, type: Manufactory::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: company_id, type: Company::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: id, type: Int64, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: created_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: updated_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: name, type: String, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: place, type: Product::Place, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: reason, type: Product::Reason, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_date, type: String, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: process_line_id, type: ProcessLine::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: workshop_id, type: Workshop::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: manufactory_id, type: Manufactory::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: company_id, type: Company::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}] of Nil
OPERATION_NEEDS = [] of Nil

Constructors

new(record : T, params : Avram::Paramable, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

new(record : T, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

Class methods

delete(record : T, params, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, &)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete(record : T, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, &)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete(record : T, params : Hash, **named_args, &)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete!(record : T, params, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete!(record : T, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

delete!(record : T, params : Hash, **named_args)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

Instance methods

delete_status
delete_status=(delete_status : OperationStatus)
params
record
set_attributes(id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, name : String | Avram::Nothing = Avram::Nothing.new, place : Product::Place | Avram::Nothing = Avram::Nothing.new, reason : Product::Reason | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

This is called at the end so @type will be of the subclass, and not the parent abstract class.

Macros

param_key(key)