我正在使用drupal(7.38),civicrm(4.6.5),ubercart(7.x-3.8)和ubercart_civicrm(7.x-4.x-dev)。每当用户(注册/匿名)从站点购买产品时,贡献将被添加到civcrm用户。如果用户是匿名用户,系统将使用drupal和civicrm中的电子邮件创建用户。我注意到ubercart中的某些产品状态为“Abandoned”,但在相应的用户贡献标签下,该产品列为已完成。我最后扔掉了uc_civicrm模块,我在uc_civicrm / uc_civicrm.module找到了一些代码
function _uc_civicrm_map_contribution_status($order_status) {
// NOTE: There may be a more "correct" way to do this.
$map = array(
"completed" => 1,
"payment_received" => 1,
"pending" => 2,
"processing" => 5,
"canceled" => 3,
"in_checkout" => 5,
);
if (array_key_exists($order_status, $map)) {
$id = $map[$order_status];
}
else {
// Oh no.
$id = 1;
watchdog('uc_civicrm', 'There is no status that maps to %order_status, marking as "Complete"', array('%order_status' => $order_status), WATCHDOG_WARNING);
}
return $id;
}
我想将ubercart订单状态与civicrm贡献状态同步。请帮我解决这个问题。提前致谢
答案 0 :(得分:1)
如果你想映射“被遗弃的”'取消'取消'在CiviCRM中的状态(在CiviCRM中没有"放弃"状态)您可以像这样修改上述内容:
$map = array(
"completed" => 1,
"payment_received" => 1,
"pending" => 2,
"processing" => 5,
"canceled" => 3,
"abandoned" => 3,
"in_checkout" => 5,
);
然后我建议制作一个错误报告/补丁on the issue you filed at the project page,以便在维护者同意的情况下进入模块核心。
答案 1 :(得分:0)
在我们有CiviCRM和Ubercart的一个网站上(这是Drupal 6)我们最终需要同时使用它们 - UC CiviCRM, - Ubercart CiviCRM Products 但是我看到后者只为D6发布了
最近,对于商业集成,我们已经从使用模块转为使用CiviCRM Entity和Drupal Rules。
不确定上述有多大帮助,但我想应该提一下。