[Dcmms-devel] SF.net SVN: dcmms:[1425] trunk/ms4w/apps/dcmms
Brought to you by:
maher_karim,
sdteffen
From: <mah...@us...> - 2011-01-23 10:30:14
|
Revision: 1425 http://dcmms.svn.sourceforge.net/dcmms/?rev=1425&view=rev Author: maher_karim Date: 2011-01-23 10:30:07 +0000 (Sun, 23 Jan 2011) Log Message: ----------- 2011-01-23 Maher Abdel Karim <Mah...@do...> * htdocs/complaint_pending_report.php: Add filter by workorder type. * htdocs/full_report.php: add more filtering options * scripts/create_views.sql:modify staffview * htdocs/resource_report.php: adjust staff query. Modified Paths: -------------- trunk/ms4w/apps/dcmms/ChangeLog trunk/ms4w/apps/dcmms/htdocs/complaint_pending_report.php trunk/ms4w/apps/dcmms/htdocs/completed_workorders_report.php trunk/ms4w/apps/dcmms/htdocs/full_report.php trunk/ms4w/apps/dcmms/htdocs/resource_report.php trunk/ms4w/apps/dcmms/include/dataobject/Equipment.php trunk/ms4w/apps/dcmms/include/dataobject/Material.php trunk/ms4w/apps/dcmms/include/dataobject/Staff.php trunk/ms4w/apps/dcmms/include/dataobject/dcmms.ini trunk/ms4w/apps/dcmms/include/i18n.php trunk/ms4w/apps/dcmms/locale/ar/LC_MESSAGES/dcmms.po trunk/ms4w/apps/dcmms/script/create_dcmms_ddl.sql trunk/ms4w/apps/dcmms/script/create_views.sql trunk/ms4w/apps/dcmms/script/update_dcmms_ddl.sql Modified: trunk/ms4w/apps/dcmms/ChangeLog =================================================================== --- trunk/ms4w/apps/dcmms/ChangeLog 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/ChangeLog 2011-01-23 10:30:07 UTC (rev 1425) @@ -1,3 +1,23 @@ +2011-01-23 Maher Abdel Karim <Mah...@do...> + + * htdocs/complaint_pending_report.php: Add filter by + workorder type. + * htdocs/full_report.php: add more filtering options + * scripts/create_views.sql:modify staffview + * htdocs/resource_report.php: adjust staff query. + +2011-01-18 Maher Abdel Karim <Mah...@do...> + + * include/i18n.php: + * ar/LC_MESSAGES/dcmms.po: update translations. + * inclue/dataobject/staff.php:Add staff count. + * include/dataobject/equipment.php: + * include/dataobject/material.php: Update Queries for + database localization. + * htdocs/resource_report.php: adjust staff query. + * script/update_dcmms_ddl.sql: + * script/create_dcmms_ddl.sql: add count to staff table + 2011-01-17 Maher Abdel Karim <Mah...@do...> * include/i18n.php: Modified: trunk/ms4w/apps/dcmms/htdocs/complaint_pending_report.php =================================================================== --- trunk/ms4w/apps/dcmms/htdocs/complaint_pending_report.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/htdocs/complaint_pending_report.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -49,6 +49,22 @@ $objAdministrativeArea->addOption($arrRow[0], $arrRow[1]); } $form->addElement($objAdministrativeArea); +//Add workorder type +$objSubtype =& new HTML_QuickForm_select('workordersubtype', _('Workorder Type:')); +$objSubtype->addOption(_('[Select One]'), 0); +$strQuery ='select dcmmstranslation(\''.$_SESSION['language']. + '\',description),subtype from workordersubtype'; +/** + * \todo Switch to using dcmmstranslation(). + */ +$objResult =& $objDb->query($strQuery); +if(DB::isError($objResult)) { + die($objResult->getMessage); +} +while($arrRow =& $objResult->fetchRow()) { + $objSubtype->addOption($arrRow[0], $arrRow[1]); +} +$form->addElement($objSubtype); $objResponsibile =& new HTML_QuickForm_select('responsible', _('Responsible:')); @@ -73,6 +89,11 @@ */ if($form->validate()) { $intAdministrativeArea = $form->exportValue('administrativearea'); + $WorkorderSelected = $form->exportValue("workordersubtype"); + $strWhere = ""; + if(0 != $WorkorderSelected) { + $strWhere .= ' and workordersubtype.subtype = '.$WorkorderSelected.' '; + } if(0 != $intAdministrativeArea) { $intRow = 0; while($arrRow =& $objResult->fetchRow(DB_FETCHMODE_DEFAULT, $intRow)) { @@ -95,12 +116,12 @@ _($_POST['responsible'])).'</h2>'); } -$strQuery ='select subtype,description from workordersubtype order by subtype'; +$strQuery ='select subtype,description from workordersubtype where 1=1 '.$strWhere.' order by subtype'; $objResultsubtype =& $objDb->query($strQuery); if(DB::isError($objResultsubtype)) { die($objResultsubtype->getMessage); } - +//print_r($strQuery); for ($i=0;$i<$objResultsubtype->numrows();$i++){ //while($arrRow =& $objResultsubtype->fetchRow()) { Modified: trunk/ms4w/apps/dcmms/htdocs/completed_workorders_report.php =================================================================== --- trunk/ms4w/apps/dcmms/htdocs/completed_workorders_report.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/htdocs/completed_workorders_report.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -158,9 +158,9 @@ $strWhere .= ' and workorder.network = ' .$NetworkSelected[0].' '; } -if(0 != $WorkorderSelected[0]) { +if(0 != $WorkorderSelected) { $strWhere .= ' and workorder.subtype = ' - .$WorkorderSelected[0].' '; + .$WorkorderSelected.' '; } $maintenancefields = ""; if ($ShowmaintenanceChecked){ Modified: trunk/ms4w/apps/dcmms/htdocs/full_report.php =================================================================== --- trunk/ms4w/apps/dcmms/htdocs/full_report.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/htdocs/full_report.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -72,6 +72,24 @@ $arrNetwork); $form->addElement($selNetwork); $form->addElement($selArea); +//Add workorder type +$objSubtype =& new HTML_QuickForm_select('workordersubtype', _('Workorder Type:')); +$objSubtype->addOption(_('[Select One]'), 0); +$strQuery ='select dcmmstranslation(\''.$_SESSION['language']. + '\',description),description from workordersubtype'; +/** + * \todo Switch to using dcmmstranslation(). + */ +$objResult =& $dcmPage->postgis->db->query($strQuery); +if(DB::isError($objResult)) { + die($objResult->getMessage); +} +while($arrRow =& $objResult->fetchRow()) { + $objSubtype->addOption($arrRow[0], $arrRow[1]); +} +$form->addElement($objSubtype); + + $form->addElement(new HTML_QuickForm_text("StartDate", _("Start Date:")), array("maxlength" => 16)); $form->addElement(new HTML_QuickForm_text("EndDate", _("End Date:")), @@ -113,6 +131,13 @@ /** * Find all workorders to display */ + $WorkorderSelected = $form->exportValue("workordersubtype"); + $strWhereWorkorder=""; +print_r($WorkorderSelected); + if('0' != $WorkorderSelected) { + $strWhereWorkorder .= " and WorkorderView.subtype = '" .$WorkorderSelected."' "; + print_r('Maher'); + } $strQuery = "select WorkorderView.ID from WorkorderView left outer join AdministrativeArea". " on AdministrativeArea.Name = WorkorderView.AdministrativeArea ". "left outer join NetworkDomain on ". @@ -128,8 +153,8 @@ $strQuery = $strQuery.$strWhere.$strValue; } } - - //echo($strQuery); +$strQuery = $strQuery.$strWhereWorkorder; + echo($strQuery); $rsoResult = $dcmPage->postgis->db->query($strQuery); if(DB::isError($rsoResult)) { die($rsoResult->getMessage()); Modified: trunk/ms4w/apps/dcmms/htdocs/resource_report.php =================================================================== --- trunk/ms4w/apps/dcmms/htdocs/resource_report.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/htdocs/resource_report.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -148,7 +148,7 @@ $strQuery = "select dcmmstranslation('".$_SESSION['language']."',costcenter.endescription) as costcenter,". "staffsubtype.description". - " as type,round(sum(staff.unit)) as totalCount,staffsubtype.unit as unit from ". + " as type,round(sum(staff.unit*staff.count)) as totalCount,staffsubtype.unit as unit from ". "staff,costcenter,workorder, StaffSubtype where staff.costcenter = costcenter.costcenter ". "and staff.subtype = staffsubtype.subtype and ". Modified: trunk/ms4w/apps/dcmms/include/dataobject/Equipment.php =================================================================== --- trunk/ms4w/apps/dcmms/include/dataobject/Equipment.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/include/dataobject/Equipment.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -31,7 +31,7 @@ * @return string SQL query with the fields to be shown in the pager table. */ public function getQueryString() { - $strQuery = 'select ID, Description as Type, CostCenter, equipment.Unit as Quantity ' . + $strQuery = 'select ID, Description as Type, CostCenter, equipment.Unit as Quantity ' .",dcmmstranslation('".$_SESSION['language']."','Hour')". 'from equipment, equipmentsubtype' . ' where equipment.Subtype = equipmentsubtype.subtype and ' . 'MaintenanceOID = ' . $this->maintenanceoid; @@ -59,7 +59,7 @@ $this->fb_submitText = _('Submit'); $this->fb_requiredRuleMessage = _('%s Please enter a value.'); $this->fb_ruleViolationMessage = _('%s The value is invalid.'); - + } public $fb_fieldAttributes = array ( 'unit' => array ( @@ -79,12 +79,12 @@ /** * Show primary key. */ - + public $fb_hidePrimaryKey = true; - - public function postGenerateForm(& $form) { + + public function postGenerateForm(& $form) { $form->addRule('unit', _('The quantity must be a positive number.'), 'nopunctuation', NULL, $_SESSION['strHtmlQuickFormValidation']); - $form->addRule('unit', _('Please, Maximum allowed is 9999 only.'), + $form->addRule('unit', _('Please, Maximum allowed is 9999 only.'), 'maxlength', 4, $_SESSION['strHtmlQuickFormValidation']); } Modified: trunk/ms4w/apps/dcmms/include/dataobject/Material.php =================================================================== --- trunk/ms4w/apps/dcmms/include/dataobject/Material.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/include/dataobject/Material.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -31,7 +31,7 @@ * @return string SQL query with the fields to be shown in the pager table. */ public function getQueryString() { - $strQuery = 'select ID, Description as Type, CostCenter, material.diameter,material.Unit as Quantity,materialsubtype.unit as Unit ' . + $strQuery = 'select ID, Description as Type, CostCenter, material.diameter,material.Unit as Quantity,'." dcmmstranslation('".$_SESSION['language']."',materialsubtype.unit) as Unit " . 'from material, materialsubtype' . ' where material.Subtype = materialsubtype.subtype and ' . 'MaintenanceOID = ' . $this->maintenanceoid; Modified: trunk/ms4w/apps/dcmms/include/dataobject/Staff.php =================================================================== --- trunk/ms4w/apps/dcmms/include/dataobject/Staff.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/include/dataobject/Staff.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -4,7 +4,7 @@ /** * DCMMS -- DC Maintenance Management System * - * Staff.php - Staff DataObject class. + * Staff.php - Staff DataObject class. * * Copyright (C) 2007-2008 DC Water and Environment * @@ -31,11 +31,12 @@ public $__table = 'staff'; // table name public $id; // int4(4) not_null default_nextval%28ResourceID%29 - public $maintenanceoid; // int4(4) - public $costcenter; // varchar(-1) - public $diameter; // int4(4) - public $unit; // int4(4) - public $subtype; // int4(4) + public $maintenanceoid; // int4(4) + public $costcenter; // varchar(-1) + public $diameter; // int4(4) + public $unit; // int4(4) + public $subtype; // int4(4) + public $count; // int4(4) /* ZE2 compatibility trick*/ function __clone() { @@ -56,7 +57,8 @@ public $fb_fieldsToRender = array ( 'costcenter', 'unit', - 'subtype' + 'subtype', + 'count' ); /** @@ -67,7 +69,8 @@ 'unit', 'subtype', 'maintenanceoid', - 'id' + 'id', + 'count' ); /** @@ -84,7 +87,7 @@ * Order of fields in the form. */ public $fb_preDefOrder = array ( - 'subtype', + 'subtype','count', 'unit', 'costcenter' ); @@ -95,7 +98,7 @@ public $fb_submitText = 'Submit'; /** - * Field attributes like maximum length. + * Field attributes like maximum length. */ public $fb_fieldAttributes = array ( 'unit' => array ( @@ -114,12 +117,13 @@ ); /** - * Set the internationalized form labels. + * Set the internationalized form labels. */ public function preGenerateForm(& $fb) { $this->fb_fieldLabels['diameter'] = _('Diameter:'); $this->fb_fieldLabels['subtype'] = _('Type:'); $this->fb_fieldLabels['unit'] = _('Quantity:'); + $this->fb_fieldLabels['count'] = _('Number of staff:'); $this->fb_fieldLabels['costcenter'] = _('Cost Center:'); $this->fb_submitText = _('Submit'); $this->fb_requiredRuleMessage = _('%s Please enter a value.'); @@ -128,7 +132,7 @@ /** * Add validation rules and default values to form and fix Arabic layout. - * @param &$form is the HTML Quickform to which the rules should be added. + * @param &$form is the HTML Quickform to which the rules should be added. * @returns Nothing. */ public function postGenerateForm(& $form) { @@ -141,18 +145,23 @@ $form->addRule('costcenter', _('Please provide the cost center for accounting purposes.'), 'required', NULL, $_SESSION['strHtmlQuickFormValidation']); $form->addRule('unit', _('Please provide the amount of work.'), 'required', NULL, $_SESSION['strHtmlQuickFormValidation']); $form->addRule('unit', _('The quantity must be a positive number.'), 'nopunctuation', NULL, $_SESSION['strHtmlQuickFormValidation']); - $form->addRule('unit', _('Please, Maximum allowed is 9999 only.'), + $form->addRule('unit', _('Please, Maximum allowed is 9999 only.'), 'maxlength', 4, $_SESSION['strHtmlQuickFormValidation']); + + $form->addRule('count', _('Please enter number of staff.'), 'required', NULL, $_SESSION['strHtmlQuickFormValidation']); + $form->addRule('count', _('Please, enter number of staff.'), + 'nonzero', 4, $_SESSION['strHtmlQuickFormValidation']); + $form->setRequiredNote('<span style="font-size:80%; color:#ff0000;" >*</span><span style="font-size:80%;"> ' . _('denotes required field') . '</span>'); if ($_SESSION['language'] == 'ar') { $objRenderer = & $form->defaultRenderer(); $objRenderer->setElementTemplate('<tr> - <td align="left" + <td align="left" valign="top"><!-- BEGIN required --><span style="color: #ff0000" >*</span><!-- END required --><b>{label}</b></td> - <td valign="top" align="right"><!-- BEGIN error --><span + <td valign="top" align="right"><!-- BEGIN error --><span style="color: #ff0000">{error}</span><br /><!-- END error --> {element}</td> </tr>'); @@ -165,11 +174,12 @@ * @return string SQL query with the fields to be shown in the pager table. */ public function getQueryString() { - $strQuery = "select ID, Description as Type, CostCenter, Staff.Unit as Quantity,'Hour' as unit " . + $strQuery = 'select ID, Description as Type, CostCenter,staff.count as "Number of staff", Staff.Unit as Quantity,'." dcmmstranslation('".$_SESSION['language']."','Hour') as unit " . 'from Staff, StaffSubtype' . ' where Staff.Subtype = Staffsubtype.Subtype and ' . 'MaintenanceOID = ' . $this->maintenanceoid; return $strQuery; } + } ?> \ No newline at end of file Modified: trunk/ms4w/apps/dcmms/include/dataobject/dcmms.ini =================================================================== --- trunk/ms4w/apps/dcmms/include/dataobject/dcmms.ini 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/include/dataobject/dcmms.ini 2011-01-23 10:30:07 UTC (rev 1425) @@ -242,6 +242,7 @@ maintenanceoid = 1 costcenter = 2 diameter = 1 +count=1 unit = 1 subtype = 1 Modified: trunk/ms4w/apps/dcmms/include/i18n.php =================================================================== --- trunk/ms4w/apps/dcmms/include/i18n.php 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/include/i18n.php 2011-01-23 10:30:07 UTC (rev 1425) @@ -545,6 +545,9 @@ _("Show maintenance information:") _('Workorderteam'); _('Maintenanceteam'); +_('Number of staff:'); +_('Number of staff'); +_('Hour'); ?> Modified: trunk/ms4w/apps/dcmms/locale/ar/LC_MESSAGES/dcmms.po =================================================================== (Binary files differ) Modified: trunk/ms4w/apps/dcmms/script/create_dcmms_ddl.sql =================================================================== --- trunk/ms4w/apps/dcmms/script/create_dcmms_ddl.sql 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/script/create_dcmms_ddl.sql 2011-01-23 10:30:07 UTC (rev 1425) @@ -359,6 +359,7 @@ ) inherits(Resource); create table Staff ( +count integer, Subtype integer references StaffSubtype(Subtype) deferrable initially deferred ) inherits(Resource); @@ -1392,4 +1393,7 @@ select dcmmsTranslationUpdate('ar', 'Filter And Separate Basin Not Available', 'لا يوجد حوض \xD9?صل و تص\xD9?ية'); select dcmmsTranslationUpdate('ar_YE', 'Filter And Separate Basin Not Available', 'لا يوجد حوض \xD9?صل و تص\xD9?ية'); -select dcmmsTranslationUpdate('ar_SY', 'Filter And Separate Basin Not Available', 'لا يوجد حوض \xD9?صل و تص\xD9?ية'); \ No newline at end of file +select dcmmsTranslationUpdate('ar_SY', 'Filter And Separate Basin Not Available', 'لا يوجد حوض \xD9?صل و تص\xD9?ية'); + +insert into translation values ('ar','Hour','????'); +insert into translation values ('ar','piece','????'); Modified: trunk/ms4w/apps/dcmms/script/create_views.sql =================================================================== --- trunk/ms4w/apps/dcmms/script/create_views.sql 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/script/create_views.sql 2011-01-23 10:30:07 UTC (rev 1425) @@ -161,14 +161,13 @@ left outer join NetworkDomain on Workorder.Network = NetworkDomain.CodedValue order by ID; -create or replace view StaffView as - select ID, MaintenanceOID , CostCenter, - StaffSubtype.Description as Type,Staff.Unit as Value, - StaffSubtype.Unit as Unit from Staff - left outer join StaffSubtype on - Staff.Subtype = StaffSubtype.Subtype - left outer join DiameterDomain on - Staff.Diameter = DiameterDomain.CodedValue order by MaintenanceOID; +CREATE OR REPLACE VIEW staffview AS + SELECT staff.id, staff.maintenanceoid, staff.costcenter, staffsubtype.description AS type, + (staff.unit*staff.count) AS value, staffsubtype.unit + FROM staff + LEFT JOIN staffsubtype ON staff.subtype = staffsubtype.subtype + LEFT JOIN diameterdomain ON staff.diameter = diameterdomain.codedvalue + ORDER BY staff.maintenanceoid; create or replace view MaterialView as select ID, MaintenanceOID , CostCenter, DiameterDomain.Description as Diameter, Modified: trunk/ms4w/apps/dcmms/script/update_dcmms_ddl.sql =================================================================== --- trunk/ms4w/apps/dcmms/script/update_dcmms_ddl.sql 2011-01-17 11:18:40 UTC (rev 1424) +++ trunk/ms4w/apps/dcmms/script/update_dcmms_ddl.sql 2011-01-23 10:30:07 UTC (rev 1425) @@ -39,5 +39,11 @@ insert into MaintenanceSubtype (Subtype, Description) values(31, 'Follow Up.'); +insert into translation values ('ar','Hour','????'); +insert into translation values ('ar','piece','????'); +alter table staff add count integer; +update staff set count=1 where count is null; +update staff set count=1 where count=0; + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |