2015-05-20 41 views

回答

0

下面是創建一個新的訂單,而另一方法來創建訂單行該方法

function createNewOrder($params,$model_name) 
    { 
     $client = new xmlrpc_client($this->server . "object"); 
     $client->return_type = 'phpvals'; 

     $msg = new xmlrpcmsg('execute'); 

     $nval = array(); 
     foreach($params as $k=>$v){ 
      $nval[$k] = new xmlrpcval($v, xmlrpc_get_type($v)); 
     } 
     $msg->addParam(new xmlrpcval($this->database, "string")); //* database name */ 
     $msg->addParam(new xmlrpcval($this->uid, "int")); 
     $msg->addParam(new xmlrpcval($this->password, "string")); 
     $msg->addParam(new xmlrpcval($model_name, "string")); 
     $msg->addParam(new xmlrpcval("create", "string")); 
     $msg->addParam(new xmlrpcval($nval, "struct")); 
     //$msg->addParam(new xmlrpcval($orderPrd, "struct")); 

     $resp = $client->send($msg); 
     //$order_id_line[] = $this->$resp->value()->scalarval(); 

     if ($resp->errno != 0) 
      trigger_error("sock_execute error " . $resp->errstr); 
     return $resp->value(); 
    } 


    function createOrderLine($params,$model_name){ 

     $client = new xmlrpc_client($this->server . "object"); 
     $client->return_type = 'phpvals'; 

     $msg = new xmlrpcmsg('execute'); 
     $msg->addParam(new xmlrpcval($this->database, "string")); //* database name */ 
     $msg->addParam(new xmlrpcval($this->uid, "int")); 
     $msg->addParam(new xmlrpcval($this->password, "string")); 
     $msg->addParam(new xmlrpcval($model_name,"string")); 
     $msg->addParam(new xmlrpcval("create", "string")); 
     $msg->addParam(new xmlrpcval($params, "struct")); 

     $res = $client->send($msg); 

     return $res; 

    }