Order: POD aufgeräumt, reformatiert, Bugs notiert.
authorSven Schöling <s.schoeling@linet-services.de>
Thu, 9 Jun 2016 12:37:56 +0000 (14:37 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Thu, 9 Jun 2016 13:10:54 +0000 (15:10 +0200)
SL/Controller/Order.pm

index 508fdfe..3318550 100644 (file)
@@ -847,7 +847,7 @@ sub _new_item {
 
 # recalculate prices and taxes
 #
 
 # recalculate prices and taxes
 #
-# Using the PriceTaxCalclulator. Store linetotals in the item objects.
+# Using the PriceTaxCalculator. Store linetotals in the item objects.
 sub _recalc {
   my ($self) = @_;
 
 sub _recalc {
   my ($self) = @_;
 
@@ -1058,36 +1058,44 @@ The aim is to provide the user a better expirience and a faster flow
 of work. Also the code should be more readable, more reliable and
 better to maintain.
 
 of work. Also the code should be more readable, more reliable and
 better to maintain.
 
-=head2 key features
+=head2 Key Features
 
 
-=over 2
+=over 4
 
 =item *
 
 =item *
+
 One input row, so that input happens every time at the same place.
 
 =item *
 One input row, so that input happens every time at the same place.
 
 =item *
+
 Use of pickers where possible.
 
 =item *
 Use of pickers where possible.
 
 =item *
+
 Possibility to enter more than one item at once.
 
 =item *
 Possibility to enter more than one item at once.
 
 =item *
+
 Save order only on "save" (and "save and delivery order"-workflow). No
 Save order only on "save" (and "save and delivery order"-workflow). No
-hidden save on "print" or "email". 
+hidden save on "print" or "email".
 
 =item *
 
 =item *
+
 Item list in a scrollable area, so that the workflow buttons stay at
 the bottom.
 
 =item *
 Item list in a scrollable area, so that the workflow buttons stay at
 the bottom.
 
 =item *
+
 Reordering item rows with drag and drop is possible. Sorting item rows is
 possible (by partnumber, description, qty, sellprice and discount for now).
 
 =item *
 Reordering item rows with drag and drop is possible. Sorting item rows is
 possible (by partnumber, description, qty, sellprice and discount for now).
 
 =item *
-No "update" is necessary. All entries and calculations are managed
-with ajax-calls and the page does only reload on "save".
+
+No C<update> is necessary. All entries and calculations are managed
+with ajax-calls and the page does only reload on C<save>.
 
 =item *
 
 =item *
+
 User can see changes immediately, because of the use of java script
 and ajax.
 
 User can see changes immediately, because of the use of java script
 and ajax.
 
@@ -1095,128 +1103,138 @@ and ajax.
 
 =head1 CODE
 
 
 =head1 CODE
 
-=head2 layout
+=head2 Layout
 
 
-=over 2
+=over 4
 
 
-=item *
-SL/Controller/Order.pm: the controller
+=item * C<SL/Controller/Order.pm>
 
 
-=item *
-template/webpages/order/form.html: main form
+the controller
 
 
-=item *
-template/webpages/order/tabs/basic_data.html: main tab for basic_data
+=item * C<template/webpages/order/form.html>
 
 
-This is the only tab here for now. "linked records" and "webdav" tabs are reused
-from generic code.
+main form
 
 
-=over 3
+=item * C<template/webpages/order/tabs/basic_data.html>
 
 
-=item *
-template/webpages/order/tabs/_item_input.html: the input line for items
+Main tab for basic_data.
 
 
-=item *
-template/webpages/order/tabs/_row.html: one row for already entered items
+This is the only tab here for now. "linked records" and "webdav" tabs are
+reused from generic code.
 
 
-=item *
-template/webpages/order/tabs/_tax_row.html: displaying tax information
+=over 4
 
 
-=item *
-template/webpages/order/tabs/_multi_items_dialog.html: dialog for entering more
-than one item at once
+=item * C<template/webpages/order/tabs/_item_input.html>
 
 
-=item *
-template/webpages/order/tabs/_multi_items_result.html: results for the filter in
-the multi items dialog
+The input line for items
 
 
-=item *
-template/webpages/order/tabs/_price_sources_dialog.html: dialog for selecting
-price and discount sources
+=item * C<template/webpages/order/tabs/_row.html>
 
 
-=item *
-template/webpages/order/tabs/_email_dialog.html: email dialog
+One row for already entered items
 
 
-=back
+=item * C<template/webpages/order/tabs/_tax_row.html>
 
 
-=item *
-js/kivi.Order.js: java script functions
+Displaying tax information
 
 
-=back
+=item * C<template/webpages/order/tabs/_multi_items_dialog.html>
 
 
-=head1 TODO
+Dialog for entering more than one item at once
 
 
-=over 2
+=item * C<template/webpages/order/tabs/_multi_items_result.html>
 
 
-=item *
+Results for the filter in the multi items dialog
 
 
-testing
+=item * C<template/webpages/order/tabs/_price_sources_dialog.html>
 
 
+Dialog for selecting price and discount sources
 
 
-=item *
+=item * C<template/webpages/order/tabs/_email_dialog.html>
 
 
-currency
+Email dialog
 
 
+=back
 
 =item *
 
 
 =item *
 
-customer/vendor details ('D'-button)
+js/kivi.Order.js: java script functions
 
 
+=back
 
 
-=item *
+=head1 TODO
 
 
-credit limit
+=over 4
 
 
+=item * testing
 
 
-=item *
+=item * currency
 
 
-more workflows (save as new / invoice)
+=item * customer/vendor details ('D'-button)
 
 
+=item * credit limit
 
 
-=item *
+=item * more workflows (save as new / invoice)
 
 
-price sources: little symbols showing better price / better discount
+=item * price sources: little symbols showing better price / better discount
 
 
+=item * custom shipto address
 
 
-=item *
+=item * periodic invoices
 
 
-custom shipto address
+=item * more details on second row (marge, ...)
 
 
+=item * language / part translations
 
 
-=item *
+=item * access rights
 
 
-periodic invoices
+=item * preset salesman from customer
 
 
+=item * display weights
 
 
-=item *
+=item * force project if enabled in client config
 
 
-more details on second row (marge, ...)
+=back
 
 
+=head1 KNOWN BUGS AND CAVEATS
 
 
-=item *
+=over 4
 
 
-language / part translations
+=item *
 
 
+C<position> is not displayed until an order is saved
 
 =item *
 
 
 =item *
 
-access rights
+Customer discount is not displayed as a valid discount in price source popup
+(this might be a bug in price sources)
 
 
+=item *
+
+No indication that double click expands second row, no exand all button
 
 =item *
 
 
 =item *
 
-preset salesman from customer
+Implementation of second row with a tbody for every item is not supported by
+our css.
 
 
+=item *
+
+As a consequence row striping does not currently work
 
 =item *
 
 
 =item *
 
-display weights
+Inline creation of parts is not currently supported
+
+=item *
 
 
+Table header is not sticky in the scrolling area.
 
 =item *
 
 
 =item *
 
-force project if enabled in client config
+Sorting does not include C<position>, neither does reordering.
+
+=item *
 
 
+C<show_smulti_items_dialog> does not use the currently inserted string for filtering.
 
 =back
 
 
 =back