use strict;
-use base qw(SL::DB::Object);
+use parent qw(SL::DB::Object);
-__PACKAGE__->meta->setup(
- table => 'delivery_order_items',
+__PACKAGE__->meta->table('delivery_order_items');
- columns => [
- id => { type => 'integer', not_null => 1, sequence => 'delivery_order_items_id' },
- delivery_order_id => { type => 'integer', not_null => 1 },
- parts_id => { type => 'integer', not_null => 1 },
- description => { type => 'text' },
- qty => { type => 'numeric', precision => 5, scale => 25 },
- sellprice => { type => 'numeric', precision => 5, scale => 15 },
- discount => { type => 'float', precision => 4 },
- project_id => { type => 'integer' },
- reqdate => { type => 'date' },
- serialnumber => { type => 'text' },
- ordnumber => { type => 'text' },
- transdate => { type => 'text' },
- cusordnumber => { type => 'text' },
- unit => { type => 'varchar', length => 20 },
- base_qty => { type => 'float', precision => 4 },
- longdescription => { type => 'text' },
- lastcost => { type => 'numeric', precision => 5, scale => 15 },
- price_factor_id => { type => 'integer' },
- price_factor => { type => 'numeric', default => 1, precision => 5, scale => 15 },
- marge_price_factor => { type => 'numeric', default => 1, precision => 5, scale => 15 },
- itime => { type => 'timestamp', default => 'now()' },
- mtime => { type => 'timestamp' },
- ],
+__PACKAGE__->meta->columns(
+ active_discount_source => { type => 'text', default => '', not_null => 1 },
+ active_price_source => { type => 'text', default => '', not_null => 1 },
+ base_qty => { type => 'float', precision => 4, scale => 4 },
+ cusordnumber => { type => 'text' },
+ delivery_order_id => { type => 'integer', not_null => 1 },
+ description => { type => 'text' },
+ discount => { type => 'float', precision => 4, scale => 4 },
+ id => { type => 'integer', not_null => 1, sequence => 'delivery_order_items_id' },
+ itime => { type => 'timestamp', default => 'now()' },
+ lastcost => { type => 'numeric', precision => 15, scale => 5 },
+ longdescription => { type => 'text' },
+ marge_price_factor => { type => 'numeric', default => 1, precision => 15, scale => 5 },
+ mtime => { type => 'timestamp' },
+ ordnumber => { type => 'text' },
+ parts_id => { type => 'integer', not_null => 1 },
+ position => { type => 'integer', not_null => 1 },
+ price_factor => { type => 'numeric', default => 1, precision => 15, scale => 5 },
+ price_factor_id => { type => 'integer' },
+ pricegroup_id => { type => 'integer' },
+ project_id => { type => 'integer' },
+ qty => { type => 'numeric', precision => 25, scale => 5 },
+ reqdate => { type => 'date' },
+ sellprice => { type => 'numeric', precision => 15, scale => 5 },
+ serialnumber => { type => 'text' },
+ transdate => { type => 'text' },
+ unit => { type => 'varchar', length => 20 },
+);
+
+__PACKAGE__->meta->primary_key_columns([ 'id' ]);
+
+__PACKAGE__->meta->allow_inline_column_values(1);
- primary_key_columns => [ 'id' ],
+__PACKAGE__->meta->foreign_keys(
+ delivery_order => {
+ class => 'SL::DB::DeliveryOrder',
+ key_columns => { delivery_order_id => 'id' },
+ },
- allow_inline_column_values => 1,
+ part => {
+ class => 'SL::DB::Part',
+ key_columns => { parts_id => 'id' },
+ },
- foreign_keys => [
- delivery_order => {
- class => 'SL::DB::DeliveryOrder',
- key_columns => { delivery_order_id => 'id' },
- },
+ price_factor_obj => {
+ class => 'SL::DB::PriceFactor',
+ key_columns => { price_factor_id => 'id' },
+ },
- parts => {
- class => 'SL::DB::Part',
- key_columns => { parts_id => 'id' },
- },
+ pricegroup => {
+ class => 'SL::DB::Pricegroup',
+ key_columns => { pricegroup_id => 'id' },
+ },
- price_factor_obj => {
- class => 'SL::DB::PriceFactor',
- key_columns => { price_factor_id => 'id' },
- },
+ project => {
+ class => 'SL::DB::Project',
+ key_columns => { project_id => 'id' },
+ },
- project => {
- class => 'SL::DB::Project',
- key_columns => { project_id => 'id' },
- },
- ],
+ unit_obj => {
+ class => 'SL::DB::Unit',
+ key_columns => { unit => 'name' },
+ },
);
1;