Commit 85d30c5d authored by Rafael Monnerat's avatar Rafael Monnerat

Include project_uid on item table


This allow us link Computers and Hosting Subscriptions to Projects using Tracking API

/reviewed-on nexedi/slapos.core!31
parent 41999e70
<catalog_method>
<item key="sql_catalog_object_list" type="int">
<value>1</value>
</item>
<item key="_is_filtered_archive" type="int">
<value>1</value>
</item>
<item key="_filter_expression_archive" type="str">
<value>python: context.providesIMovement()</value>
</item>
<item key="_filter_expression_cache_key_archive" type="tuple">
<value>portal_type</value>
</item>
</catalog_method>
DELETE FROM
item
WHERE
<dtml-sqltest uid type="int" multiple>
<dtml-var sql_delimiter>
<dtml-let movement_list="[]" uid_dict="{}">
<dtml-in prefix="loop" expr="_.range(_.len(uid))">
<dtml-if "isMovement[loop_item] and isAccountable[loop_item] and getMovedItemUidList[loop_item]">
<dtml-call expr="uid_dict.update({uid[loop_item]: uid_dict.get(uid[loop_item], -1) + 1})">
<dtml-call expr="movement_list.append(loop_item)">
</dtml-if>
</dtml-in>
<dtml-if expr="_.len(movement_list) > 0">
INSERT INTO
item
VALUES
<dtml-in prefix="loop" expr="movement_list">
<dtml-in expr="getMovedItemUidList[loop_item]">
(
<dtml-call expr="uid_dict.update({uid[loop_item]: uid_dict.get(uid[loop_item], -1) + 1})">
<dtml-sqlvar expr="uid[loop_item]" type="int">,
<dtml-sqlvar expr="uid_dict[uid[loop_item]]" type="int">,
<dtml-sqlvar expr="getStopDate[loop_item]" type="datetime" optional>,
<dtml-sqlvar expr="getDestinationUid[loop_item]" type="int" optional>,
<dtml-sqlvar expr="getDestinationSectionUid[loop_item]" type="int" optional>,
<dtml-sqlvar expr="getDestinationProjectUid[loop_item]" type="int" optional>,
<dtml-sqlvar expr="getResourceUid[loop_item]" type="int" optional>,
<dtml-sqlvar sequence-item type="int" optional>,
<dtml-sqlvar expr="getVariationText[loop_item]" type="string" optional>,
<dtml-sqlvar expr="getSimulationState[loop_item]" type="string" optional>
)
<dtml-if sequence-end><dtml-else>,</dtml-if>
</dtml-in>
<dtml-if sequence-end><dtml-else>,</dtml-if>
</dtml-in>
</dtml-if>
</dtml-let>
\ No newline at end of file
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SQL" module="Products.ZSQLMethods.SQL"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>allow_simple_one_argument_traversal</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>arguments_src</string> </key>
<value> <string>isMovement\n
isAccountable\n
uid\n
getStopDate\n
getDestinationUid\n
getDestinationSectionUid\n
getDestinationProjectUid\n
getResourceUid\n
getVariationText\n
getSimulationState\n
getAggregateUidList\n
getMovedItemUidList</string> </value>
</item>
<item>
<key> <string>cache_time_</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>class_file_</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>class_name_</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_hook</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>connection_id</string> </key>
<value> <string>erp5_sql_connection</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>z_catalog_item_list</string> </value>
</item>
<item>
<key> <string>max_cache_</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>max_rows_</string> </key>
<value> <int>1000</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<catalog_method>
<item key="sql_clear_catalog" type="int">
<value>1</value>
</item>
</catalog_method>
# Host:
# Database: test
# Table: 'item'
#
CREATE TABLE `item` (
`uid` BIGINT UNSIGNED NOT NULL,
`order_id` TINYINT UNSIGNED NOT NULL,
`date` datetime,
`node_uid` BIGINT UNSIGNED default '0',
`section_uid` BIGINT UNSIGNED default '0',
`project_uid` BIGINT UNSIGNED default '0',
`resource_uid` BIGINT UNSIGNED default '0',
`aggregate_uid` BIGINT UNSIGNED default '0',
`variation_text` VARCHAR(255),
`simulation_state` VARCHAR(255) default '',
PRIMARY KEY (`uid`, `aggregate_uid`,`order_id`),
KEY `section_uid` (`section_uid`),
KEY `resource_uid` (`resource_uid`),
KEY `variation_text` (`variation_text`),
KEY `aggregate_simulation_state_date` (`aggregate_uid`,`simulation_state`,`date`),
KEY `node_simulation_state_date` (`node_uid`,`simulation_state`,`date`)
) ENGINE=InnoDB;
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="SQL" module="Products.ZSQLMethods.SQL"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_col</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>allow_simple_one_argument_traversal</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>arguments_src</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>cache_time_</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>class_file_</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>class_name_</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>connection_hook</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>connection_id</string> </key>
<value> <string>erp5_sql_connection</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>z_create_item</string> </value>
</item>
<item>
<key> <string>max_cache_</string> </key>
<value> <int>100</int> </value>
</item>
<item>
<key> <string>max_rows_</string> </key>
<value> <int>1000</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -7,11 +7,13 @@ erp5_mysql_innodb/z0_uncatalog_slapos_item
erp5_mysql_innodb/z0_uncatalog_software_instance
erp5_mysql_innodb/z_catalog_computer_partition_list
erp5_mysql_innodb/z_catalog_email_list
erp5_mysql_innodb/z_catalog_item_list
erp5_mysql_innodb/z_catalog_no_workflow_date_object_list
erp5_mysql_innodb/z_catalog_object_list
erp5_mysql_innodb/z_catalog_slapos_item_list
erp5_mysql_innodb/z_catalog_software_instance_list
erp5_mysql_innodb/z_create_computer_partition
erp5_mysql_innodb/z_create_item
erp5_mysql_innodb/z_create_slapos_item
erp5_mysql_innodb/z_create_software_instance_tree
erp5_mysql_innodb/z_create_versioning
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment