mirror of
https://github.com/opensourcepos/opensourcepos.git
synced 2026-02-18 14:48:42 -05:00
Add decimals to items search result + fix reports
This commit is contained in:
@@ -1344,9 +1344,7 @@ class Reports extends Secure_Controller
|
||||
$quantity_purchased .= ' [' . $this->Stock_location->get_location_name($drow['item_location']) . ']';
|
||||
}
|
||||
|
||||
$attribute_values = (isset($drow['attribute_values'])) ? $drow['attribute_values'] : '';
|
||||
$attribute_values = (isset($drow['attribute_dtvalues'])) ? $attribute_values . '|' . $drow['attribute_dtvalues'] : $attribute_values;
|
||||
$attribute_values = expand_attribute_values($definition_names, $attribute_values);
|
||||
$attribute_values = expand_attribute_values($definition_names, $drow);
|
||||
|
||||
$details_data[$row['sale_id']][] = $this->xss_clean(array_merge(array(
|
||||
$drow['name'],
|
||||
@@ -1462,10 +1460,7 @@ class Reports extends Secure_Controller
|
||||
$quantity_purchased .= ' [' . $this->Stock_location->get_location_name($drow['item_location']) . ']';
|
||||
}
|
||||
|
||||
$attribute_values = (isset($drow['attribute_values'])) ? $drow['attribute_values'] : '';
|
||||
$attribute_values = (isset($drow['attribute_dtvalues'])) ? $attribute_values . '|' . $drow['attribute_dtvalues'] : $attribute_values;
|
||||
|
||||
$attribute_values = expand_attribute_values($definition_names, $attribute_values);
|
||||
$attribute_values = expand_attribute_values($definition_names, $drow);
|
||||
|
||||
$details_data[$row['receiving_id']][] = $this->xss_clean(array_merge(array(
|
||||
$drow['item_number'],
|
||||
|
||||
@@ -450,10 +450,8 @@ function get_item_data_row($item)
|
||||
)
|
||||
);
|
||||
|
||||
$attribute_values = (property_exists($item, 'attribute_values')) ? $item->attribute_values : "";
|
||||
$attribute_values = (property_exists($item, 'attribute_dtvalues')) ? $attribute_values . '|' . $item->attribute_dtvalues : $attribute_values;
|
||||
return $columns + expand_attribute_values($definition_names, (array) $item) + $icons;
|
||||
|
||||
return $columns + expand_attribute_values($definition_names, $attribute_values) + $icons;
|
||||
}
|
||||
|
||||
|
||||
@@ -535,9 +533,18 @@ function get_item_kit_data_row($item_kit)
|
||||
);
|
||||
}
|
||||
|
||||
function expand_attribute_values($definition_names, $attribute_values)
|
||||
function concat_attribute_value($columns, $row) {
|
||||
$attribute_values = '';
|
||||
foreach($columns as $column) {
|
||||
$attribute_values .= (isset($row[$column])) ? $row[$column] : '';
|
||||
}
|
||||
|
||||
return explode('|', $attribute_values);
|
||||
}
|
||||
|
||||
function expand_attribute_values($definition_names, $row)
|
||||
{
|
||||
$values = explode('|', $attribute_values);
|
||||
$values = concat_attribute_value(array('attribute_values', 'attribute_dtvalues', 'attribute_dvalues'), $row);
|
||||
|
||||
$indexed_values = array();
|
||||
foreach($values as $attribute_value)
|
||||
|
||||
@@ -550,6 +550,11 @@ class Attribute extends CI_Model
|
||||
'item_id' => empty($item_id) ? NULL : $item_id,
|
||||
'definition_id' => $definition_id));
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->db->where('attribute_id', $attribute_id);
|
||||
$this->db->update('attribute_values', array('attribute_value' => $attribute_value));
|
||||
}
|
||||
|
||||
$this->db->trans_complete();
|
||||
|
||||
|
||||
@@ -195,6 +195,7 @@ class Item extends CI_Model
|
||||
$format = $this->db->escape(dateformat_mysql());
|
||||
$this->db->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values');
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues");
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, attribute_decimal) SEPARATOR '|') AS attribute_dvalues");
|
||||
$this->db->join('attribute_links', 'attribute_links.item_id = items.item_id AND attribute_links.receiving_id IS NULL AND attribute_links.sale_id IS NULL AND definition_id IN (' . implode(',', $filters['definition_ids']) . ')', 'left');
|
||||
$this->db->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left');
|
||||
}
|
||||
@@ -281,6 +282,7 @@ class Item extends CI_Model
|
||||
{
|
||||
$this->db->select('items.*');
|
||||
$this->db->select('GROUP_CONCAT(attribute_value SEPARATOR \'|\') AS attribute_values');
|
||||
$this->db->select('GROUP_CONCAT(attribute_decimal SEPARATOR \'|\') AS attribute_dvalues');
|
||||
$this->db->select('GROUP_CONCAT(attribute_date SEPARATOR \'|\') AS attribute_dtvalues');
|
||||
$this->db->select('suppliers.company_name');
|
||||
$this->db->from('items');
|
||||
@@ -377,10 +379,12 @@ class Item extends CI_Model
|
||||
*/
|
||||
public function get_multiple_info($item_ids, $location_id)
|
||||
{
|
||||
$format = $this->db->escape(dateformat_mysql());
|
||||
$this->db->select('items.*');
|
||||
$this->db->select('company_name');
|
||||
$this->db->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_value) ORDER BY definition_id SEPARATOR \'|\') AS attribute_values');
|
||||
$this->db->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_date) ORDER BY definition_id SEPARATOR \'|\') AS attribute_dtvalues');
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) ORDER BY definition_id SEPARATOR '|') AS attribute_dtvalues");
|
||||
$this->db->select('GROUP_CONCAT(DISTINCT CONCAT_WS(\'_\', definition_id, attribute_decimal) ORDER BY definition_id SEPARATOR \'|\') AS attribute_dvalues');
|
||||
$this->db->select('quantity');
|
||||
$this->db->from('items');
|
||||
$this->db->join('suppliers', 'suppliers.person_id = items.supplier_id', 'left');
|
||||
|
||||
@@ -105,6 +105,7 @@ class Detailed_receivings extends Report
|
||||
$format = $this->db->escape(dateformat_mysql());
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, attribute_value) ORDER BY definition_id SEPARATOR '|') AS attribute_values");
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues");
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, attribute_decimal SEPARATOR '|') AS attribute_dvalues");
|
||||
$this->db->join('attribute_links', 'attribute_links.item_id = items.item_id AND attribute_links.receiving_id = receivings_items_temp.receiving_id AND definition_id IN (' . implode(',', $inputs['definition_ids']) . ')', 'left');
|
||||
$this->db->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left');
|
||||
$this->db->group_by('receivings_items_temp.receiving_id, receivings_items_temp.item_id');
|
||||
|
||||
@@ -151,8 +151,9 @@ class Detailed_sales extends Report
|
||||
$format = $this->db->escape(dateformat_mysql());
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, attribute_value) ORDER BY definition_id SEPARATOR '|') AS attribute_values");
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, DATE_FORMAT(attribute_date, $format)) SEPARATOR '|') AS attribute_dtvalues");
|
||||
$this->db->select("GROUP_CONCAT(DISTINCT CONCAT_WS('_', definition_id, attribute_decimal SEPARATOR '|') AS attribute_dvalues");
|
||||
$this->db->join('attribute_links', 'attribute_links.item_id = sales_items_temp.item_id AND attribute_links.sale_id = sales_items_temp.sale_id AND definition_id IN (' . implode(',', $inputs['definition_ids']) . ')', 'left');
|
||||
$this->db->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id', 'left');
|
||||
$this->db->join('attribute_values', 'attribute_values.attribute_id = attribute_links.attribute_id');
|
||||
$this->db->group_by('sales_items_temp.sale_id, sales_items_temp.item_id');
|
||||
}
|
||||
$this->db->where('sales_items_temp.sale_id', $value['sale_id']);
|
||||
|
||||
Reference in New Issue
Block a user