[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [11510] property: ticket : add diff-column
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [11510] property: ticket : add diff-column |
Date: |
Fri, 06 Dec 2013 14:39:36 +0000 |
Revision: 11510
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=11510
Author: sigurdne
Date: 2013-12-06 14:39:35 +0000 (Fri, 06 Dec 2013)
Log Message:
-----------
property: ticket : add diff-column
Modified Paths:
--------------
trunk/property/inc/class.botts.inc.php
trunk/property/inc/class.custom_fields.inc.php
trunk/property/inc/class.sotts.inc.php
trunk/property/inc/class.uitts.inc.php
trunk/property/js/yahoo/tts.index.js
trunk/property/templates/base/attributes_form.xsl
Modified: trunk/property/inc/class.botts.inc.php
===================================================================
--- trunk/property/inc/class.botts.inc.php 2013-12-05 20:15:23 UTC (rev
11509)
+++ trunk/property/inc/class.botts.inc.php 2013-12-06 14:39:35 UTC (rev
11510)
@@ -52,6 +52,7 @@
public $total_records = 0;
public $sum_budget = 0;
public $sum_actual_cost = 0;
+ public $sum_difference = 0;
public $show_finnish_date = false;
public $simple = false;
@@ -258,6 +259,12 @@
'id' => 'actual_cost',
'name'=> lang('actual cost')
);
+
+ $columns['difference'] = array
+ (
+ 'id' => 'difference',
+ 'name'=> lang('difference')
+ );
}
$columns['vendor'] = array
@@ -492,9 +499,10 @@
'ecodimb' => $this->ecodimb, 'b_account' =>
$this->b_account, 'building_part' => $this->building_part,
'branch_id' => $this->branch_id ,'order_dim1'
=> $this->order_dim1));
- $this->total_records = $this->so->total_records;
- $this->sum_budget = $this->so->sum_budget;
- $this->sum_actual_cost = $this->so->sum_actual_cost;
+ $this->total_records =
$this->so->total_records;
+ $this->sum_budget =
$this->so->sum_budget;
+ $this->sum_actual_cost =
$this->so->sum_actual_cost;
+ $this->sum_difference =
$this->so->sum_difference;
if(!$external)
{
@@ -511,6 +519,17 @@
$this->uicols_related = array('project');
}
+
+ $custom_status = $this->so->get_custom_status();
+ $closed_status = array('X');
+ foreach($custom_status as $custom)
+ {
+ if($custom['closed'])
+ {
+ $closed_status[] = "C{$custom['id']}";
+ }
+ }
+
foreach ($tickets as & $ticket)
{
if(!isset($category_name[$ticket['cat_id']]))
@@ -535,6 +554,19 @@
$ticket['user'] =
$account[$ticket['user_id']];
}
+
+ $ticket['difference'] = 0;
+
+
+ if($ticket['estimate'] && !in_array(
$ticket['status'], $closed_status) )
+ {
+ $ticket['difference'] =
$ticket['estimate'] - (float)$ticket['actual_cost'];
+ if($ticket['difference'] < 0)
+ {
+ $ticket['difference'] = 0;
+ }
+ }
+
if($ticket['assignedto'])
{
if(!isset($account[$ticket['assignedto']]))
Modified: trunk/property/inc/class.custom_fields.inc.php
===================================================================
--- trunk/property/inc/class.custom_fields.inc.php 2013-12-05 20:15:23 UTC
(rev 11509)
+++ trunk/property/inc/class.custom_fields.inc.php 2013-12-06 14:39:35 UTC
(rev 11510)
@@ -495,6 +495,11 @@
{
foreach($values_attribute as $entry)
{
+ if($entry['disabled'])
+ {
+ continue;
+ }
+
switch ($entry['datatype'])
{
case 'C':
Modified: trunk/property/inc/class.sotts.inc.php
===================================================================
--- trunk/property/inc/class.sotts.inc.php 2013-12-05 20:15:23 UTC (rev
11509)
+++ trunk/property/inc/class.sotts.inc.php 2013-12-06 14:39:35 UTC (rev
11510)
@@ -36,11 +36,12 @@
class property_sotts
{
- var $uicols_related = array();
- var $acl_location = '.ticket';
- public $total_records = 0;
- public $sum_budget = 0;
- public $sum_actual_cost = 0;
+ var $uicols_related = array();
+ var $acl_location = '.ticket';
+ public $total_records = 0;
+ public $sum_budget = 0;
+ public $sum_actual_cost = 0;
+ public $sum_difference = 0;
public $soap_functions = array
(
@@ -492,12 +493,33 @@
'sum_actual_cost' =>
$this->db->f('sum_actual_cost'),
'sql_hash' =>
md5($sql_cnt)
);
+
+
+ $custom_status = $this->get_custom_status();
+ $closed_status = array('X');
+ foreach($custom_status as $custom)
+ {
+ if($custom['closed'])
+ {
+ $closed_status[] =
"C{$custom['id']}";
+ }
+ }
+
+ $filter_closed = "{$where}
fm_tts_tickets.status NOT IN ('" . implode("','", $closed_status) . "')";
+ $sql2 = "SELECT (sum(budget) -
sum(actual_cost)) as sum_difference FROM ({$sql_cnt} {$filter_closed}) as t";
+ $this->db->query($sql2,__LINE__,__FILE__);
+ $this->db->next_record();
+ unset($sql2);
+
+ $cache_info['sum_difference'] =
(int)$this->db->f('sum_difference');
+
phpgwapi_cache::session_set('property','tts_listing_metadata',$cache_info);
}
$this->total_records = $cache_info['total_records'];
$this->sum_budget =
$cache_info['sum_budget'];
$this->sum_actual_cost =
$cache_info['sum_actual_cost'];
+ $this->sum_difference = $cache_info['sum_difference'];
$location_id =
$GLOBALS['phpgw']->locations->get_id('property', '.ticket');
@@ -863,11 +885,12 @@
while ($this->db->next_record())
{
$status[] = array
- (
- 'id' => $this->db->f('id'),
- 'name' => $this->db->f('name',
true),
- 'color' => $this->db->f('color')
- );
+ (
+ 'id' => $this->db->f('id'),
+ 'name' => $this->db->f('name',
true),
+ 'color' =>
$this->db->f('color'),
+ 'closed' =>
$this->db->f('closed')
+ );
}
return $status;
}
Modified: trunk/property/inc/class.uitts.inc.php
===================================================================
--- trunk/property/inc/class.uitts.inc.php 2013-12-05 20:15:23 UTC (rev
11509)
+++ trunk/property/inc/class.uitts.inc.php 2013-12-06 14:39:35 UTC (rev
11510)
@@ -227,6 +227,7 @@
{
$name[] = 'estimate';
$name[] = 'actual_cost';
+ $name[] = 'difference';
}
$uicols_related = $this->bo->uicols_related;
@@ -1184,7 +1185,8 @@
$uicols_formatter = array
(
'estimate' => 'FormatterRight',
- 'actual_cost' => 'FormatterRight'
+ 'actual_cost' => 'FormatterRight',
+ 'difference' => 'FormatterRight',
);
unset($parameters);
@@ -1264,10 +1266,12 @@
'sort'
=> $datatable['sorting']['order'],
'dir'
=> $datatable['sorting']['sort'],
'records'
=> array(),
- 'show_sum_estimate' =>
in_array('estimate', $custom_cols),//$this->acl->check('.ticket.order',
PHPGW_ACL_READ, 'property'),
+ 'show_sum_estimate' =>
in_array('estimate', $custom_cols),
'show_sum_actual_cost' =>
in_array('actual_cost', $custom_cols),
+ 'show_sum_difference' =>
in_array('difference', $custom_cols),
'sum_budget' =>
$this->bo->sum_budget,
- 'sum_actual_cost' =>
$this->bo->sum_actual_cost
+ 'sum_actual_cost' =>
$this->bo->sum_actual_cost,
+ 'sum_difference' =>
$this->bo->sum_difference,
);
// values for datatable
Modified: trunk/property/js/yahoo/tts.index.js
===================================================================
--- trunk/property/js/yahoo/tts.index.js 2013-12-05 20:15:23 UTC (rev
11509)
+++ trunk/property/js/yahoo/tts.index.js 2013-12-06 14:39:35 UTC (rev
11510)
@@ -127,6 +127,7 @@
{
tmp_sum_budget = YAHOO.util.Number.format(values_ds.sum_budget,
{decimalPlaces:0, decimalSeparator:",", thousandsSeparator:" "});
tmp_sum_actual_cost =
YAHOO.util.Number.format(values_ds.sum_actual_cost, {decimalPlaces:2,
decimalSeparator:",", thousandsSeparator:" "});
+ tmp_sum_difference =
YAHOO.util.Number.format(values_ds.sum_difference, {decimalPlaces:0,
decimalSeparator:",", thousandsSeparator:" "});
var show_estimate = false;
var show_actual_cost = false;
@@ -170,6 +171,9 @@
{
td_sum(tmp_sum_actual_cost);
}
+
+ td_sum(tmp_sum_difference);
+
td_empty(count_empty_end);
//Add to Table
myfoot = tableYUI.createTFoot();
Modified: trunk/property/templates/base/attributes_form.xsl
===================================================================
--- trunk/property/templates/base/attributes_form.xsl 2013-12-05 20:15:23 UTC
(rev 11509)
+++ trunk/property/templates/base/attributes_form.xsl 2013-12-06 14:39:35 UTC
(rev 11510)
@@ -85,6 +85,7 @@
<input type="hidden"
name="values_attribute[{counter}][attrib_id]" value="{id}"/>
<input type="hidden"
name="values_attribute[{counter}][nullable]" value="{nullable}"/>
<input type="hidden"
name="values_attribute[{counter}][input_text]" value="{input_text}"/>
+ <input type="hidden"
name="values_attribute[{counter}][disabled]" value="{disabled}"/>
<xsl:choose>
<xsl:when
test="datatype='R'">
<xsl:call-template name="choice"/>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [11510] property: ticket : add diff-column,
Sigurd Nes <=