Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Laurent S
erp5
Commits
1f01f382
Commit
1f01f382
authored
May 18, 2017
by
Łukasz Nowak
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
erp5_item: Factorise quantity update
parent
56b4b95e
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
81 additions
and
33 deletions
+81
-33
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_createItemList.py
...rtal_skins/erp5_item_trade/DeliveryLine_createItemList.py
+1
-16
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_selectItemList.py
...rtal_skins/erp5_item_trade/DeliveryLine_selectItemList.py
+1
-17
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/Movement_updateQuantityFromAggregateList.py
...p5_item_trade/Movement_updateQuantityFromAggregateList.py
+17
-0
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/Movement_updateQuantityFromAggregateList.xml
...5_item_trade/Movement_updateQuantityFromAggregateList.xml
+62
-0
No files found.
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_createItemList.py
View file @
1f01f382
...
...
@@ -79,22 +79,7 @@ for line in kw.get('listbox'):
movement_to_update
.
setAggregateValueList
(
movement_to_update
.
getAggregateValueList
()
+
[
item
])
if
context
.
isMovement
():
movement_list
=
context
,
else
:
movement_list
=
context
.
getCellValueList
(
base_id
=
'movement'
)
for
movement
in
movement_list
:
quantity
=
0
item_list
=
movement
.
getAggregateValueList
()
for
item
in
item_list
:
if
item
.
getQuantityUnit
()
!=
movement
.
getQuantityUnit
():
if
len
(
item_list
)
>
1
:
raise
NotImplementedError
(
'Quantity unit from the movement differs from quantity'
' unit on the item'
)
quantity
+=
item
.
getQuantity
(
at_date
=
DateTime
())
movement
.
setQuantity
(
quantity
)
context
.
Movement_updateQuantityFromAggregateList
(
at_date
=
DateTime
())
return
context
.
Base_redirect
(
form_id
,
keep_items
=
dict
(
portal_status_message
=
translateString
(
'Items created'
)))
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/DeliveryLine_selectItemList.py
View file @
1f01f382
...
...
@@ -92,23 +92,7 @@ for item_uid in uids:
movement_to_update
.
setAggregateValueSet
(
movement_to_update
.
getAggregateValueList
()
+
[
item
])
if
context
.
isMovement
():
movement_list
=
context
,
else
:
movement_list
=
context
.
getCellValueList
(
base_id
=
'movement'
)
for
movement
in
movement_list
:
quantity
=
0
item_list
=
movement
.
getAggregateValueList
()
for
item
in
item_list
:
if
item
.
getQuantityUnit
()
!=
movement
.
getQuantityUnit
():
if
len
(
item_list
)
>
1
:
raise
NotImplementedError
(
'Quantity unit from the movement differs from quantity'
' unit on the item'
)
else
:
movement
.
setQuantityUnit
(
item
.
getQuantityUnit
())
quantity
+=
item
.
getQuantity
()
movement
.
setQuantity
(
quantity
)
context
.
Movement_updateQuantityFromAggregateList
()
return
context
.
Base_redirect
(
form_id
,
keep_items
=
dict
(
portal_status_message
=
translateString
(
'Items aggregated'
)))
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/Movement_updateQuantityFromAggregateList.py
0 → 100644
View file @
1f01f382
if
context
.
isMovement
():
movement_list
=
context
,
else
:
movement_list
=
context
.
getCellValueList
(
base_id
=
'movement'
)
for
movement
in
movement_list
:
quantity
=
0
item_list
=
movement
.
getAggregateValueList
()
for
item
in
item_list
:
if
item
.
getQuantityUnit
()
!=
movement
.
getQuantityUnit
():
if
len
(
item_list
)
>
1
:
raise
NotImplementedError
(
'Quantity unit from the movement differs from quantity'
' unit on the item'
)
else
:
movement
.
setQuantityUnit
(
item
.
getQuantityUnit
())
quantity
+=
item
.
getQuantity
(
at_date
=
at_date
)
movement
.
setQuantity
(
quantity
)
bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item_trade/Movement_updateQuantityFromAggregateList.xml
0 → 100644
View file @
1f01f382
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"PythonScript"
module=
"Products.PythonScripts.PythonScript"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
Script_magic
</string>
</key>
<value>
<int>
3
</int>
</value>
</item>
<item>
<key>
<string>
_bind_names
</string>
</key>
<value>
<object>
<klass>
<global
name=
"NameAssignments"
module=
"Shared.DC.Scripts.Bindings"
/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key>
<string>
_asgns
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
name_container
</string>
</key>
<value>
<string>
container
</string>
</value>
</item>
<item>
<key>
<string>
name_context
</string>
</key>
<value>
<string>
context
</string>
</value>
</item>
<item>
<key>
<string>
name_m_self
</string>
</key>
<value>
<string>
script
</string>
</value>
</item>
<item>
<key>
<string>
name_subpath
</string>
</key>
<value>
<string>
traverse_subpath
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
_params
</string>
</key>
<value>
<string>
at_date=None
</string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
Movement_updateQuantityFromAggregateList
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment