Revision 97eaf9e0
Von Tamino Steinert vor etwa 1 Jahr hinzugefügt
SL/Dev/Record.pm | ||
---|---|---|
743 | 743 |
sub _create_sales_order_or_quotation { |
744 | 744 |
my (%params) = @_; |
745 | 745 |
|
746 |
my $record_type = $params{type}; |
|
746 |
my $record_type = delete $params{type};
|
|
747 | 747 |
die "illegal type" unless $record_type eq SALES_ORDER_TYPE() or $record_type eq SALES_QUOTATION_TYPE(); |
748 | 748 |
|
749 | 749 |
my $orderitems = delete $params{orderitems} // _create_two_items($record_type); |
... | ... | |
755 | 755 |
die "illegal customer" unless ref($customer) eq 'SL::DB::Customer'; |
756 | 756 |
|
757 | 757 |
my $record = SL::DB::Order->new( |
758 |
record_type => delete $params{type},
|
|
758 |
record_type => $record_type,
|
|
759 | 759 |
customer_id => delete $params{customer_id} // $customer->id, |
760 | 760 |
taxzone_id => delete $params{taxzone_id} // $customer->taxzone->id, |
761 | 761 |
currency_id => delete $params{currency_id} // $::instance_conf->get_currency_id, |
... | ... | |
763 | 763 |
employee_id => delete $params{employee_id} // SL::DB::Manager::Employee->current->id, |
764 | 764 |
salesman_id => delete $params{employee_id} // SL::DB::Manager::Employee->current->id, |
765 | 765 |
transdate => delete $params{transdate} // DateTime->today, |
766 |
quotation => $record_type eq 'sales_quotation' ? 1 : 0, |
|
767 | 766 |
orderitems => $orderitems, |
768 | 767 |
); |
769 | 768 |
$record->assign_attributes(%params) if %params; |
... | ... | |
777 | 776 |
sub _create_purchase_order_or_quotation { |
778 | 777 |
my (%params) = @_; |
779 | 778 |
|
780 |
my $record_type = $params{type}; |
|
779 |
my $record_type = delete $params{type};
|
|
781 | 780 |
die "illegal type" unless $record_type eq PURCHASE_ORDER_TYPE() or $record_type eq REQUEST_QUOTATION_TYPE(); |
782 | 781 |
my $orderitems = delete $params{orderitems} // _create_two_items($record_type); |
783 | 782 |
_check_items($orderitems, $record_type); |
... | ... | |
788 | 787 |
die "illegal vendor" unless ref($vendor) eq 'SL::DB::Vendor'; |
789 | 788 |
|
790 | 789 |
my $record = SL::DB::Order->new( |
791 |
record_type => delete $params{type},
|
|
790 |
record_type => $record_type,
|
|
792 | 791 |
vendor_id => delete $params{vendor_id} // $vendor->id, |
793 | 792 |
taxzone_id => delete $params{taxzone_id} // $vendor->taxzone->id, |
794 | 793 |
currency_id => delete $params{currency_id} // $::instance_conf->get_currency_id, |
795 | 794 |
taxincluded => delete $params{taxincluded} // 0, |
796 | 795 |
transdate => delete $params{transdate} // DateTime->today, |
797 | 796 |
'closed' => undef, |
798 |
quotation => $record_type eq REQUEST_QUOTATION_TYPE() ? 1 : 0, |
|
799 | 797 |
orderitems => $orderitems, |
800 | 798 |
); |
801 | 799 |
$record->assign_attributes(%params) if %params; |
Auch abrufbar als: Unified diff
Angebotsflag aus Datenbankzugriffen entfernt