本文整理汇总了PHP中Societe::isACompany方法的典型用法代码示例。如果您正苦于以下问题:PHP Societe::isACompany方法的具体用法?PHP Societe::isACompany怎么用?PHP Societe::isACompany使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Societe
的用法示例。
在下文中一共展示了Societe::isACompany方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
/**
* Output an HTML select vat rate
*
* @param string $htmlname Nom champ html
* @param float $selectedrate Forcage du taux tva pre-selectionne. Mettre '' pour aucun forcage.
* @param Societe $societe_vendeuse Objet societe vendeuse
* @param Societe $societe_acheteuse Objet societe acheteuse
* @param int $idprod Id product
* @param int $info_bits Miscellaneous information on line (1 for NPR)
* @param int $type ''=Unknown, 0=Product, 1=Service (Used if idprod not defined)
* Si vendeur non assujeti a TVA, TVA par defaut=0. Fin de regle.
* Si le (pays vendeur = pays acheteur) alors la TVA par defaut=TVA du produit vendu. Fin de regle.
* Si (vendeur et acheteur dans Communaute europeenne) et bien vendu = moyen de transports neuf (auto, bateau, avion), TVA par defaut=0 (La TVA doit etre paye par l'acheteur au centre d'impots de son pays et non au vendeur). Fin de regle.
* Si (vendeur et acheteur dans Communaute europeenne) et bien vendu autre que transport neuf alors la TVA par defaut=TVA du produit vendu. Fin de regle.
* Sinon la TVA proposee par defaut=0. Fin de regle.
* @param bool $options_only Return options only (for ajax treatment)
* @return void
*/
function load_tva($htmlname = 'tauxtva', $selectedrate = '', $societe_vendeuse = '', $societe_acheteuse = '', $idprod = 0, $info_bits = 0, $type = '', $options_only = false)
{
global $langs, $conf, $mysoc;
$return = '';
$txtva = array();
$libtva = array();
$nprtva = array();
// Define defaultnpr and defaultttx
$defaultnpr = $info_bits & 0x1;
$defaultnpr = preg_match('/\\*/', $selectedrate) ? 1 : $defaultnpr;
$defaulttx = str_replace('*', '', $selectedrate);
// Check parameters
if (is_object($societe_vendeuse) && !$societe_vendeuse->country_code) {
if ($societe_vendeuse->id == $mysoc->id) {
$return .= '<font class="error">' . $langs->trans("ErrorYourCountryIsNotDefined") . '</div>';
} else {
$return .= '<font class="error">' . $langs->trans("ErrorSupplierCountryIsNotDefined") . '</div>';
}
return $return;
}
//var_dump($societe_acheteuse);
//print "name=$name, selectedrate=$selectedrate, seller=".$societe_vendeuse->country_code." buyer=".$societe_acheteuse->country_code." buyer is company=".$societe_acheteuse->isACompany()." idprod=$idprod, info_bits=$info_bits type=$type";
//exit;
// Get list of all VAT rates to show
// First we defined code_pays to use to find list
if (is_object($societe_vendeuse)) {
$code_pays = "'" . $societe_vendeuse->country_code . "'";
} else {
$code_pays = "'" . $mysoc->country_code . "'";
// Pour compatibilite ascendente
}
if (!empty($conf->global->SERVICE_ARE_ECOMMERCE_200238EC)) {
// If option to have vat for end customer for services is on
if (!$societe_vendeuse->isInEEC() && $societe_acheteuse->isInEEC() && !$societe_acheteuse->isACompany()) {
// We also add the buyer
if (is_numeric($type)) {
if ($type == 1) {
// We know product is a service
$code_pays .= ",'" . $societe_acheteuse->country_code . "'";
}
} else {
if (!$idprod) {
// We don't know type of product
$code_pays .= ",'" . $societe_acheteuse->country_code . "'";
} else {
$prodstatic = new Product($this->db);
$prodstatic->fetch($idprod);
if ($prodstatic->type == 1) {
// We know product is a service
$code_pays .= ",'" . $societe_acheteuse->country_code . "'";
}
}
}
}
}
// Now we get list
$num = $this->load_cache_vatrates($code_pays);
if ($num > 0) {
// Definition du taux a pre-selectionner (si defaulttx non force et donc vaut -1 ou '')
if ($defaulttx < 0 || dol_strlen($defaulttx) == 0) {
$defaulttx = get_default_tva($societe_vendeuse, $societe_acheteuse, $idprod);
$defaultnpr = get_default_npr($societe_vendeuse, $societe_acheteuse, $idprod);
}
// Si taux par defaut n'a pu etre determine, on prend dernier de la liste.
// Comme ils sont tries par ordre croissant, dernier = plus eleve = taux courant
if ($defaulttx < 0 || dol_strlen($defaulttx) == 0) {
$defaulttx = $this->cache_vatrates[$num - 1]['txtva'];
}
if (!$options_only) {
$return .= '<select class="flat" id="' . $htmlname . '" name="' . $htmlname . '">';
}
foreach ($this->cache_vatrates as $rate) {
$return .= '<option value="' . $rate['txtva'];
$return .= $rate['nprtva'] ? '*' : '';
$return .= '"';
if ($rate['txtva'] == $defaulttx && $rate['nprtva'] == $defaultnpr) {
$return .= ' selected="selected"';
}
$return .= '>' . vatrate($rate['libtva']);
$return .= $rate['nprtva'] ? ' *' : '';
$return .= '</option>';
$this->tva_taux_value[] = $rate['txtva'];
//.........这里部分代码省略.........