По просьбе клиента, крайне активно использующего CRM в работе.
Нужно добавить настройку в CRM, которая позволит делать автоматическую привязку сделки к новым звонкам(и входящие и исходящие).
Сейчас по номеру ищется клиент, у него ищется активная сделка и в том случае если она у него одна - привязывается.
Но это далеко не всегда так. У клиентов может быть много сделок. В том числе и закрытые(неважно, выигранная или проигранная).
Что-то вроде этого:
if ($contact_id) {
$deal = $dm->select('*')->where("status_id = 'OPEN' AND contact_id = ?", $contact_id)->order('id DESC')->fetch();
if (!empty($deal)) {
$upd['deal_id'] = $deal['id'];
} else {
$deal = $dm->select('*')->where("contact_id = ?", $contact_id)->order('id DESC')->fetch();
if (!empty($deal)) {
$upd['deal_id'] = $deal['id'];
} else {
$upd['deal_id'] = null;
}
}
} else {
$upd['deal_id'] = null;
}
Как вариант, нужно больше хуков у звонков. Сейчас к ним никак не прицепишся. В частности в crmCallModel->handleCalls()
Необходимо облегчить работу в этой части CRM, до буквально одного клика. Сейчас их 2 и больше.
2 комментария
В CRM есть универсальные хуки controller_before.*** и controller_after.*** для подключения плагинов к любым PHP-контроллерам приложения
Есть, но хочется по человечески, а не как всегда.
К тому же не всё делается в контроллерах.