biz_815_2

This commit is contained in:
dengbw
2022-08-15 17:43:56 +08:00
committed by lccsw
parent cd40096def
commit 0a0ddd2225
3 changed files with 26 additions and 14 deletions
+4 -3
View File
@@ -93,9 +93,10 @@ class Customer extends HD_Controller
$where['admin_id'] = $params['admin_id'];
} else if ($params['biz_id_admin']) {
$where['biz_id'] = $params['biz_id_admin'];
} else {
$params['city_id_admin'] && $where['city_id'] = $params['city_id_admin'];
$params['county_id_admin'] && $where['county_id'] = $params['county_id_admin'];
} else if ($params['county_id_admin']) {
$where["biz_id in(select id from lc_biz where county_id={$params['county_id_admin']})"] = null;
} else if ($params['city_id_admin']) {
$where["biz_id in(select id from lc_biz where city_id={$params['city_id_admin']})"] = null;
}
!$params['city_id_admin'] && $params['city_id_admin'] = '';
!$params['county_id_admin'] && $params['county_id_admin'] = '';
+16 -11
View File
@@ -72,7 +72,7 @@ class Biz extends Wxapp
$orders_per = number_format_com($orders / $customers * 100, 1, '');
$intos_per = number_format_com($intos / $customers * 100, 1, '');
$data['funnel'] = ['title' => '线索转化漏斗',
'expected_data' => [['name' => "成交数({$orders_per}%)", 'value' => 33.3], ['name' => "到店数({$intos_per}%)", 'value' => 66.7], ['name' => '客户', 'value' => 100]]
'expected_data' => [['name' => "成交数({$orders_per}%)", 'value' => 33.3], ['name' => "到店数({$intos_per}%)", 'value' => 66.7], ['name' => '客户数100%', 'value' => 100]]
, 'actual_data' => [['name' => '成交数', 'value' => $orders], ['name' => '到店数', 'value' => $intos], ['name' => '客户量', 'value' => $customers]]];
$data['title'] = '门店数据';
return $data;
@@ -122,26 +122,26 @@ class Biz extends Wxapp
$where = ['biz_id' => $this->biz_id, 'status>=' => 0, 'c_time>=' => $c_time['s_time'], 'c_time<=' => $c_time['e_time']];
foreach ($sdata_level as $v) {
$value_1 = $this->mdCustomers->count(array_merge($where, ['level' => $v]));
$pie1_level[] = ['name' => $v, 'value' => $value_1];
$value_1 && $pie1_level[] = ['name' => $v, 'value' => $value_1];
$value_2 = $this->mdCustomers->db->select('a.id')
->from('lc_receiver_customer_oplogs as a')
->join('lc_receiver_customers as b', "b.id=a.customer_id", 'left')
->where(['a.type' => 4, 'a.log' => '客户到店', 'a.c_time>=' => $c_time['s_time'], 'a.c_time<=' => $c_time['e_time'],
'b.status>=' => 0, 'b.biz_id' => $this->biz_id, 'b.level' => $v])
->count_all_results();
$pie2_level[] = ['name' => $v, 'value' => $value_2];
$value_2 && $pie2_level[] = ['name' => $v, 'value' => $value_2];
}
$offlineSources = $this->mdCustomers->offlineSources();
foreach ($offlineSources as $k => $v) {
$value_1 = $this->mdCustomers->count(array_merge($where, ['of_id' => $k]));
$pie1_offline[] = ['name' => $v['name'], 'value' => $value_1];
$value_1 && $pie1_offline[] = ['name' => $v['name'], 'value' => $value_1];
$value_2 = $this->mdCustomers->db->select('a.id')
->from('lc_receiver_customer_oplogs as a')
->join('lc_receiver_customers as b', "b.id=a.customer_id", 'left')
->where(['a.type' => 4, 'a.log' => '客户到店', 'a.c_time>=' => $c_time['s_time'], 'a.c_time<=' => $c_time['e_time'],
'b.status>=' => 0, 'b.biz_id' => $this->biz_id, 'b.of_id' => $k])
->count_all_results();
$pie2_offline[] = ['name' => $v['name'], 'value' => $value_2];
$value_2 && $pie2_offline[] = ['name' => $v['name'], 'value' => $value_2];
}
$res_user = $this->app_user_model->select(['status' => 1, 'biz_id' => $this->biz_id], 'id desc', 0, 0, 'id,uname');
foreach ($res_user as $k => $v) {
@@ -212,7 +212,7 @@ class Biz extends Wxapp
->where(['a.biz_id' => $this->biz_id, 'a.status>=' => 0, 'a.order_time>=' => $o_time['s_time'], 'a.order_time<=' => $o_time['e_time']
, 'b.of_id' => $k])
->count_all_results();
$pie1_series_data[] = ['name' => $v['name'], 'value' => $value];
$value && $pie1_series_data[] = ['name' => $v['name'], 'value' => $value];
}
$res_user = $this->app_user_model->select(['status' => 1, 'biz_id' => $this->biz_id], 'id desc', 0, 0, 'id,uname');
foreach ($res_user as $k => $v) {
@@ -223,7 +223,7 @@ class Biz extends Wxapp
, 'order_time>=' => $o_time['s_time'], 'order_time<=' => $o_time['e_time']]);
}
$this->load->model('auto/auto_brand_model', 'mdAutoBrand');
$series_data_1 = $series_data_2 = [];
$series_data = $series_data_1 = $series_data_2 = [];
$where_o = ['biz_id' => $this->biz_id, 'status>=' => 0, 'order_time>=' => $o_time['s_time'], 'order_time<=' => $o_time['e_time']];
$where_r = ['biz_id' => $this->biz_id, 'status' => 2, 'refund_time>=' => $o_time['s_time'], 'refund_time<=' => $o_time['e_time']];
//成交
@@ -238,7 +238,7 @@ class Biz extends Wxapp
if ($v['brand_id']) {
$value = $this->mdOrders->count(array_merge($where_o, ['brand_id' => $v['brand_id']]));
}
$series_data_1[] = ['name' => $name, 'value' => $value];
$value && $series_data_1[] = ['name' => $name, 'value' => $value];
}
}
//退定
@@ -253,13 +253,18 @@ class Biz extends Wxapp
if ($v['brand_id']) {
$value = $this->mdOrders->count(array_merge($where_r, ['brand_id' => $v['brand_id']]));
}
$series_data_2[] = ['name' => $name, 'value' => $value];
$value && $series_data_2[] = ['name' => $name, 'value' => $value];
}
}
if ($orders && $refunds) {
$series_data[] = ['name' => '成交数', 'value' => $orders, 'selected' => true];
} else if ($orders) {
$series_data[] = ['name' => '成交数', 'value' => $orders];
}
$refunds && $series_data[] = ['name' => '退定数', 'value' => $refunds];
$data['pie1'] = ['title' => '订单来源', 'series_data' => $pie1_series_data];
$data['pie2'] = ['title' => '品牌分布'
, 'series_data' => [['name' => '成交数', 'value' => $orders, 'selected' => true], ['name' => '退定数', 'value' => $refunds]]
, 'series_data_1' => $series_data_1, 'series_data_2' => $series_data_2
, 'series_data' => $series_data, 'series_data_1' => $series_data_1, 'series_data_2' => $series_data_2
];
$data['bar'] = ['title' => '顾问成交情况', 'xAxis_data' => $users
, 'series' => [['name' => '客户数', 'type' => 'bar', 'data' => $users_customer], ['name' => '订单数', 'type' => 'bar', 'data' => $users_order]]];
+6
View File
@@ -226,6 +226,12 @@ class Persona extends CI_Controller
$userInfo = $params['userInfo'];
$mobile = $userInfo['mobile'];
$biz_id = intval($userInfo['biz_id']);
if (!$params['of_id']) {
$this->show_json(200, '请选择线索来源');
}
if ($mobile && !mobile_valid($mobile)) {
$this->show_json(200, '请输入正确的手机号码');
}
$this->load->library('receiver/customers_entity');
$this->load->model('receiver/receiver_customers_model', 'mdCustomers');
$this->load->model('receiver/receiver_customer_tagdata_model', 'mdCustomerTagdata');