fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [16004] more on integration


From: sigurdne
Subject: [Fmsystem-commits] [16004] more on integration
Date: Thu, 17 Nov 2016 13:47:18 +0000 (UTC)

Revision: 16004
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=16004
Author:   sigurdne
Date:     2016-11-17 13:47:18 +0000 (Thu, 17 Nov 2016)
Log Message:
-----------
more on integration

Modified Paths:
--------------
    trunk/property/inc/class.boworkorder.inc.php
    trunk/property/inc/class.uiworkorder.inc.php
    trunk/property/inc/custom/default/BkBygg_exporter_varemottak_til_Agresso.php
    trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_melding.php
    trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_workorder.php

Modified: trunk/property/inc/class.boworkorder.inc.php
===================================================================
--- trunk/property/inc/class.boworkorder.inc.php        2016-11-17 11:27:54 UTC 
(rev 16003)
+++ trunk/property/inc/class.boworkorder.inc.php        2016-11-17 13:47:18 UTC 
(rev 16004)
@@ -1011,7 +1011,7 @@
                public function receive_order( $id, $received_amount )
                {
                        $receive_order = true; // used as trigger within the 
custom function
-                       $acl_location = '.project.workorder';
+                       $acl_location = '.project.workorder.transfer';
 
                        $criteria = array(
                                'appname' => 'property',

Modified: trunk/property/inc/class.uiworkorder.inc.php
===================================================================
--- trunk/property/inc/class.uiworkorder.inc.php        2016-11-17 11:27:54 UTC 
(rev 16003)
+++ trunk/property/inc/class.uiworkorder.inc.php        2016-11-17 13:47:18 UTC 
(rev 16004)
@@ -2393,7 +2393,7 @@
                                'collect_building_part' => 
$collect_building_part,
                                'building_part_list' => $building_part_list,
                                'order_dim1_list' => $order_dim1_list,
-                               'value_order_sent'      => 
$values['order_sent'],
+                               'value_order_sent'      => 
!!$values['order_sent'],
                                'value_order_received'  => 
$values['order_received'] ? 
$GLOBALS['phpgw']->common->show_date($values['order_received']) : '[ DD/MM/YYYY 
- H:i ]',
                                'value_order_received_amount' => (int) 
$values['order_received_amount']
                        );

Modified: 
trunk/property/inc/custom/default/BkBygg_exporter_varemottak_til_Agresso.php
===================================================================
--- 
trunk/property/inc/custom/default/BkBygg_exporter_varemottak_til_Agresso.php    
    2016-11-17 11:27:54 UTC (rev 16003)
+++ 
trunk/property/inc/custom/default/BkBygg_exporter_varemottak_til_Agresso.php    
    2016-11-17 13:47:18 UTC (rev 16004)
@@ -81,7 +81,7 @@
 
                private function _get_ordered_workorder_amount($id)
                {
-                       throw new Exception('Implement me');
+                       return 
ExecMethod('property.boworkorder.get_budget_amount',$id);
                }
 
                public function transfer( $id, $received_amount )
@@ -96,6 +96,7 @@
                        V4: EBE Varemotttak Portico   : 45750000-45999999
                        */
 
+                       $voucher_type = 'P4';
 
                        if($values['order_id'] >= 45000000 && 
$values['order_id'] <= 45249999)
                        {
@@ -107,7 +108,7 @@
                        }
                        else
                        {
-                               throw new Exception("Ordrenummer 
'{$values['order_id']}' er utenfor serien");
+                               throw new Exception("Ordrenummer 
'{$values['order_id']}' er utenfor serien:<br/>" . __FILE__ . '<br/>linje:' . 
__LINE__);
                        }
 
                        $param = array(

Modified: 
trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_melding.php
===================================================================
--- trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_melding.php  
2016-11-17 11:27:54 UTC (rev 16003)
+++ trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_melding.php  
2016-11-17 13:47:18 UTC (rev 16004)
@@ -64,7 +64,7 @@
                        }
 
                        $purchase_grant_error = false;
-                       $check_purchase = 
CreateObject('property.botts')->check_purchase_right($data['ecodimb'], $price, 
$id);
+                       $check_purchase = 
CreateObject('property.botts')->check_purchase_right($data['ecodimb'], $price, 
$_ticket['order_id']);
                        foreach ($check_purchase as $purchase_grant)
                        {
                                if(!$purchase_grant['is_user'] && 
($purchase_grant['required'] && !$purchase_grant['approved']))
@@ -173,7 +173,7 @@
                        }
                        else
                        {
-                               throw new Exception("Ordrenummer 
'{$_ticket['order_id']}' er utenfor serien");
+                               throw new Exception("Ordrenummer 
'{$_ticket['order_id']}' er utenfor serien:<br/>" . __FILE__ . '<br/>linje:' . 
__LINE__);
                        }
 
 

Modified: 
trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_workorder.php
===================================================================
--- 
trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_workorder.php    
    2016-11-17 11:27:54 UTC (rev 16003)
+++ 
trunk/property/inc/custom/default/BkBygg_lag_Agresso_ordre_fra_workorder.php    
    2016-11-17 13:47:18 UTC (rev 16004)
@@ -33,12 +33,13 @@
        
        if (!$workorder['order_sent'])
        {
-               $exporter_ordre = new lag_agresso_ordre_fra_workorder();
-               $exporter_ordre->transfer($project, $workorder);
+//             $exporter_ordre = new lag_agresso_ordre_fra_workorder();
+//             $exporter_ordre->transfer($project, $workorder);
        }
 
        class lag_agresso_ordre_fra_workorder
        {
+               var $debug = true;
 
                public function __construct()
                {
@@ -49,7 +50,31 @@
                public function transfer( $project, $workorder )
                {
 //     _debug_array($workorder);die();
+                       if (!$this->debug && $workorder['order_sent'])
+                       {
+                               return 2;
+                       }
 
+                       $price = 
ExecMethod('property.boworkorder.get_budget_amount',$workorder['id']);
+
+                       $purchase_grant_error = false;
+                       $check_purchase = 
CreateObject('property.botts')->check_purchase_right($data['ecodimb'], $price, 
$workorder['id']);
+                       foreach ($check_purchase as $purchase_grant)
+                       {
+                               if(!$purchase_grant['is_user'] && 
($purchase_grant['required'] && !$purchase_grant['approved']))
+                               {
+                                       $purchase_grant_error = true;
+                                       
phpgwapi_cache::message_set(lang('approval from %1 is required',
+                                                       
$GLOBALS['phpgw']->accounts->get($purchase_grant['id'])->__toString()),
+                                                       'error'
+                                       );
+                               }
+                       }
+                       if (!$this->debug && $purchase_grant_error)
+                       {
+                               return 3;
+                       }
+
                        $contacts = CreateObject('property.sogeneric');
                        $contacts->get_location_info('vendor', false);
 
@@ -189,6 +214,28 @@
                                $dim6 = (int)trim($category_arr[0]);
                        }
 
+                       /*
+                       P3: EBF Innkjøpsordre Portico : 45000000-45249999
+                       V3: EBF Varemotttak Portico   : 45500000-45749999
+                       P4: EBE Innkjøpsordre Portico : 45250000-45499999
+                       V4: EBE Varemotttak Portico   : 45750000-45999999
+                       */
+
+//                     $voucher_type = 'P4';
+
+                       if($workorder['id'] >= 45000000 && $workorder['id'] <= 
45249999)
+                       {
+                               $voucher_type = 'P3';
+                       }
+                       else if ($workorder['id'] >= 45250000 && 
$workorder['id'] <= 45499999)
+                       {
+                               $voucher_type = 'P4';
+                       }
+                       else
+                       {
+                               throw new Exception("Ordrenummer 
'{$workorder['id']}' er utenfor serien:<br/>" . __FILE__ . '<br/>linje:' . 
__LINE__);
+                       }
+
                        $param = array(
                                'dim0' => $workorder['b_account_id'], // Art
                                'dim1' => $workorder['ecodimb'], // Ansvar
@@ -205,19 +252,27 @@
                                'buyer' => $buyer,
                                'lines' => array(
                                        array(
-                                               'unspsc_code' => 
$workorder['unspsc_code'],
-                                               'descr' => 
strip_tags($workorder['descr'])
+                                               'unspsc_code' => 
$workorder['unspsc_code'] ? $workorder['unspsc_code'] : 'UN-72000000',
+//                                             'descr' => 
strip_tags($workorder['descr'])
+                                               'descr' => '',
+                                               'price' => $price,
                                        )
                                )
                        );
 
-                       $exporter_ordre = new 
BkBygg_exporter_data_til_Agresso();
+
+                       $exporter_ordre = new 
BkBygg_exporter_data_til_Agresso(array(
+                               'order_id' => $workorder['id'],
+                               'voucher_type' => $voucher_type
+                               )
+                       );
                        $exporter_ordre->create_transfer_xml($param);
-                       $exporter_ordre->output();
-                       die();
-                       $export_ok = $exporter_ordre->transfer();
+
+                       $export_ok = $exporter_ordre->transfer($this->debug);
+
                        if ($export_ok)
                        {
+                               phpgwapi_cache::message_set("Ordre 
#{$workorder['id']} er overført");
                                $this->log_transfer( $workorder['id'] );
                        }
                }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]