diff --git a/admin/controllers/biz/store/Store.php b/admin/controllers/biz/store/Store.php
index 91a27523..b42dc5bb 100755
--- a/admin/controllers/biz/store/Store.php
+++ b/admin/controllers/biz/store/Store.php
@@ -405,6 +405,7 @@ class Store extends HD_Controller
public function batch()
{
$field = $this->input->post('field');
+ $this->load->model('app/licheb/app_licheb_users_model', 'mdUsers');
if ($field === 'ifcheck') {
$status = intval($this->input->post('value'));
$ids = $this->input->post('id');
@@ -412,7 +413,9 @@ class Store extends HD_Controller
if (!$ids || count($ids) < 1) {
$this->show_json(0, '请选择要操作的选项');
}
- $where = array('id in(' . implode(',', $ids) . ')' => null);
+ $ids_str = implode(',', $ids);
+ $where = ["id in({$ids_str})" => null];
+ $this->mdUsers->update(['status' => $status], ["biz_id in({$ids_str})" => null, 'group_id < 4' => null]);//更新用户下架
} else {
$id = intval($this->input->post('id'));
$status = intval($this->input->post('value'));
@@ -420,6 +423,7 @@ class Store extends HD_Controller
$this->show_json(0, '参数错误');
}
$where['id'] = $id;
+ $this->mdUsers->update(['status' => $status], ['biz_id' => $id, 'group_id < 4' => null]);//更新用户下架
}
$data['status'] = $status;
$this->biz_model->update($data, $where);
diff --git a/api/controllers/plan/Licheb.php b/api/controllers/plan/Licheb.php
index 334d30f7..13518d38 100644
--- a/api/controllers/plan/Licheb.php
+++ b/api/controllers/plan/Licheb.php
@@ -120,7 +120,6 @@ class Licheb extends HD_Controller
$this->load->model('app/licheb/app_licheb_users_model', 'mdUsers');
$this->load->model('receiver/receiver_customers_visit_data_model', 'mdCustomerVisitData');
$this->load->model('receiver/receiver_customers_visit_sales_model', 'mdCustomerVisitSales');
- $this->load->model("biz/biz_model", 'mdBiz');
$time = strtotime("-1 day");//昨天此时的时间戳
$size = 200;//每次最多处理多少条
$rds = intval($this->input->get('rds'));
@@ -139,26 +138,20 @@ class Licheb extends HD_Controller
echo '执行到当前顾问id:' . $id . '暂无数据';
return;
}
- $str_biz_ids = implode(',', array_unique(array_column($res, 'biz_id')));
- $map_biz = $this->mdBiz->map('id', 'city_id,type,status', ["id in({$str_biz_ids})" => null]);
foreach ($res as $key => $value) {
$sales_id = $id = $value['id'];
$biz_id = intval($value['biz_id']);
- if ($map_biz[$biz_id]['status'] == 1) {//判断门店状态
- $where_sal = ['t_day' => $t_day, 'sales_id' => $sales_id, 'biz_id' => $biz_id];
- $re_sal = $this->mdCustomerVisitSales->get($where_sal);
- if (!$re_sal) {//判断当天是否已加入
- $t_follows = $this->mdCustomerVisitData->count(array_merge($where_sal, ['status' => 1]));
- $h_follows = $this->mdCustomerVisitData->count(array_merge($where_sal, ['status' => 2]));
- $w_follows = $this->mdCustomerVisitData->count(array_merge($where_sal, ['status' => 3]));
- $u_follows = $this->mdCustomers->count(["cont_time = '0000-00-00 00:00:00'" => null,
- 'admin_id' => $sales_id, 'biz_id' => $biz_id, 'status in(0,1)' => null]);
- $add_item = ['t_day' => $t_day, 'sales_id' => $sales_id, 'biz_id' => $biz_id, 't_follows' => $t_follows
- , 'h_follows' => $h_follows, 'w_follows' => $w_follows, 'u_follows' => $u_follows, 'c_time' => time()];
- $add_id = $this->mdCustomerVisitSales->add($add_item);
- if ($add_id && $params['sd']) {
- $log[] = array('id' => $sales_id, 'add_item' => $add_item);
- }
+ $where_sal = ['t_day' => $t_day, 'sales_id' => $sales_id, 'biz_id' => $biz_id];
+ $re_sal = $this->mdCustomerVisitSales->get($where_sal);
+ if (!$re_sal) {//判断当天是否已加入
+ $t_follows = $this->mdCustomerVisitData->count(array_merge($where_sal, ['status' => 1]));
+ $h_follows = $this->mdCustomerVisitData->count(array_merge($where_sal, ['status' => 2]));
+ $w_follows = $this->mdCustomerVisitData->count(array_merge($where_sal, ['status' => 3]));
+ $add_item = ['t_day' => $t_day, 'sales_id' => $sales_id, 'biz_id' => $biz_id, 't_follows' => $t_follows
+ , 'h_follows' => $h_follows, 'w_follows' => $w_follows, 'c_time' => time()];
+ $add_id = $this->mdCustomerVisitSales->add($add_item);
+ if ($add_id && $params['sd']) {
+ $log[] = array('id' => $sales_id, 'add_item' => $add_item);
}
}
}
@@ -226,66 +219,64 @@ class Licheb extends HD_Controller
foreach ($res as $key => $value) {
$sale_id = $id = $value['id'];
$biz_id = intval($value['biz_id']);
- if ($map_biz[$biz_id]['status'] == 1) {//判断门店状态
- $re_log = $this->mdUsersLog->get(['log_date' => $log_date, 'sale_id' => $sale_id, 'biz_id' => $biz_id]);
- if (!$re_log) {//判断当天是否已加入
- $s_time = strtotime($log_date . ' 00:00:00');
- $e_time = strtotime($log_date . ' 23:59:59');
- $city_id = intval($map_biz[$biz_id]['city_id']);
- $type = intval($map_biz[$biz_id]['type']);
- $c_num = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 4, 'log' => '客户到店', 'c_time>=' => $s_time, 'c_time<=' => $e_time,
- "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null], 'distinct(customer_id)');
- $a_num = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 4, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
- "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null]
- );
- $t_num = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 5, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
- "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null]
- );
- $follows = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type in(0,1,2)' => null, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
- "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null], 'distinct(customer_id)'
- );
- $defeats = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 7, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
- "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null]
- );
- $orders = $this->mdOrdersV2->count(['sale_id' => $sale_id, 'biz_id' => $biz_id, 'status>=' => 0,
- 'order_time>=' => "{$log_date} 00:00:00", 'order_time<=' => "{$log_date} 23:59:59"]
- );
- $bills = $this->mdOrdersV2->count(['sale_id' => $sale_id, 'biz_id' => $biz_id, 'status>=' => 0,
- 'bill_time>=' => "{$log_date} 00:00:00", 'bill_time<=' => "{$log_date} 23:59:59"]
- );
- $qy_adds = $qy_dels = $customers = 0;
- if ($value['userid']) {
- $qy_adds = $this->mdWechatqyLog->count(['userid' => $value['userid'], 'change_type' => 'add_external_contact'
- , 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
- $qy_dels = $this->mdWechatqyLog->count(['userid' => $value['userid'], "change_type in('del_external_contact','del_follow_user')" => null
- , 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
- }
- $add_item = ['sale_id' => $sale_id, 'biz_id' => $biz_id, 'type' => $type, 'city_id' => $city_id, 'c_num' => $c_num
- , 'a_num' => $a_num, 't_num' => $t_num, 'orders' => $orders, 'bills' => $bills, 'follows' => $follows, 'defeats' => $defeats
- , 'log_date' => $log_date, 'qy_adds' => $qy_adds, 'qy_dels' => $qy_dels, 'c_time' => time()];
- $customer_json = '';
- foreach ($offlineSources as $key1 => $value1) {
- $customer_num1 = $this->mdCustomers->count(['of_id' => $key1, 'admin_id' => $sale_id
- , 'status>=' => 0, 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
- if ($customer_num1) {//一级
- $customers += $customer_num1;
- $add_item["customer_{$key1}"] = $customer_num1;
- $list = '';
- foreach ($value1['list'] as $key2 => $value2) {
- $customer_num2 = $this->mdCustomers->count(['of_id' => $key1, 'of2_id' => $key2, 'admin_id' => $sale_id
- , 'status>=' => 0, 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
- if ($customer_num2) {//二级
- $list[$key2] = ['name' => $value2, 'num' => $customer_num2];
- }
- }
- $customer_json[$key1] = ['name' => $value1['name'], 'num' => $customer_num1, 'list' => $list];
- }
- }
- $customer_json && $add_item['customer_json'] = json_encode($customer_json, JSON_UNESCAPED_UNICODE);
- $add_item['customers'] = $customers;
- $add_id = $this->mdUsersLog->add($add_item);
- $add_id && $log[] = array('id' => $sale_id, 'addDate' => $add_item);
+ $re_log = $this->mdUsersLog->get(['log_date' => $log_date, 'sale_id' => $sale_id, 'biz_id' => $biz_id]);
+ if (!$re_log) {//判断当天是否已加入
+ $s_time = strtotime($log_date . ' 00:00:00');
+ $e_time = strtotime($log_date . ' 23:59:59');
+ $city_id = intval($map_biz[$biz_id]['city_id']);
+ $type = intval($map_biz[$biz_id]['type']);
+ $c_num = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 4, 'log' => '客户到店', 'c_time>=' => $s_time, 'c_time<=' => $e_time,
+ "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null], 'distinct(customer_id)');
+ $a_num = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 4, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
+ "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null]
+ );
+ $t_num = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 5, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
+ "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null]
+ );
+ $follows = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type in(0,1,2)' => null, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
+ "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null], 'distinct(customer_id)'
+ );
+ $defeats = $this->mdCustomerOpLogs->count(['uid' => $sale_id, 'type' => 7, 'c_time>=' => $s_time, 'c_time<=' => $e_time,
+ "customer_id in(select id from lc_receiver_customers where admin_id={$sale_id} and biz_id={$biz_id})" => null]
+ );
+ $orders = $this->mdOrdersV2->count(['sale_id' => $sale_id, 'biz_id' => $biz_id, 'status>=' => 0,
+ 'order_time>=' => "{$log_date} 00:00:00", 'order_time<=' => "{$log_date} 23:59:59"]
+ );
+ $bills = $this->mdOrdersV2->count(['sale_id' => $sale_id, 'biz_id' => $biz_id, 'status>=' => 0,
+ 'bill_time>=' => "{$log_date} 00:00:00", 'bill_time<=' => "{$log_date} 23:59:59"]
+ );
+ $qy_adds = $qy_dels = $customers = 0;
+ if ($value['userid']) {
+ $qy_adds = $this->mdWechatqyLog->count(['userid' => $value['userid'], 'change_type' => 'add_external_contact'
+ , 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
+ $qy_dels = $this->mdWechatqyLog->count(['userid' => $value['userid'], "change_type in('del_external_contact','del_follow_user')" => null
+ , 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
}
+ $add_item = ['sale_id' => $sale_id, 'biz_id' => $biz_id, 'type' => $type, 'city_id' => $city_id, 'c_num' => $c_num
+ , 'a_num' => $a_num, 't_num' => $t_num, 'orders' => $orders, 'bills' => $bills, 'follows' => $follows, 'defeats' => $defeats
+ , 'log_date' => $log_date, 'qy_adds' => $qy_adds, 'qy_dels' => $qy_dels, 'c_time' => time()];
+ $customer_json = '';
+ foreach ($offlineSources as $key1 => $value1) {
+ $customer_num1 = $this->mdCustomers->count(['of_id' => $key1, 'admin_id' => $sale_id
+ , 'status>=' => 0, 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
+ if ($customer_num1) {//一级
+ $customers += $customer_num1;
+ $add_item["customer_{$key1}"] = $customer_num1;
+ $list = '';
+ foreach ($value1['list'] as $key2 => $value2) {
+ $customer_num2 = $this->mdCustomers->count(['of_id' => $key1, 'of2_id' => $key2, 'admin_id' => $sale_id
+ , 'status>=' => 0, 'c_time>=' => $s_time, 'c_time<=' => $e_time]);
+ if ($customer_num2) {//二级
+ $list[$key2] = ['name' => $value2, 'num' => $customer_num2];
+ }
+ }
+ $customer_json[$key1] = ['name' => $value1['name'], 'num' => $customer_num1, 'list' => $list];
+ }
+ }
+ $customer_json && $add_item['customer_json'] = json_encode($customer_json, JSON_UNESCAPED_UNICODE);
+ $add_item['customers'] = $customers;
+ $add_id = $this->mdUsersLog->add($add_item);
+ $add_id && $log[] = array('id' => $sale_id, 'addDate' => $add_item);
}
}
$redis->save($redisKey, $id, 24 * 3600);//保存最后id
diff --git a/api/controllers/plan/Temp.php b/api/controllers/plan/Temp.php
index 0819293c..e78128f0 100644
--- a/api/controllers/plan/Temp.php
+++ b/api/controllers/plan/Temp.php
@@ -16,6 +16,48 @@ class Temp extends HD_Controller
$this->log_file = 'temp.log';
}
+ /**
+ * Notes:更新下架门店人员
+ * Created on: 2022/5/27 11:58
+ * Created by: dengbw
+ * https://liche-api-dev.xiaoyu.com/plan/temp/biz_users
+ * https://api.liche.cn/plan/temp/biz_users
+ */
+ public function biz_users()
+ {
+ $this->load->model("biz/biz_model", 'mdBiz');
+ $this->load->model('app/licheb/app_licheb_users_model', 'mdUsers');
+ $param = $this->input->get();
+ $param['page'] = intval($param['page']);
+ $param['size'] = intval($param['size']);
+ !$param['size'] && $param['size'] = 100;
+ !$param['page'] && $param['page'] = 1;
+ $counts = intval($param['counts']);
+ ob_start(); //打开缓冲区
+ $where = ["status<>" => 1];
+ $res = $this->mdBiz->select($where, 'id ASC', $param['page'], $param['size'], 'id,status');
+ if (!$res) {
+ echo '
本次更新完成了:';
+ echo '
成功更新 ' . $counts . ' 条';
+ echo '
点击将再次更新>>>';
+ exit;
+ }
+ $log = array();
+ foreach ($res as $key => $value) {
+ $ret = $this->mdUsers->update(['status' => $value['status']], ['biz_id' => $value['id'], 'group_id < 4' => null]);//更新用户下架
+ if ($ret == 1) {
+ $log[] = ['id' => $value['id']];
+ $counts++;
+ }
+ }
+ echo '
成功更新:';
+ $log && print_r($log);
+ echo '
数据库获取:';
+ echo json_encode($res, JSON_UNESCAPED_UNICODE);
+ header('refresh:3;url=/plan/temp/biz_users?counts=' . $counts . '&size=' . $param['size'] . '&page=' . ($param['page'] + 1));
+ ob_end_flush();//输出全部内容到浏览器
+ }
+
/**
* Notes:更新战败客户到店
* Created on: 2022/3/09 11:58
@@ -46,7 +88,7 @@ class Temp extends HD_Controller
$brand_ids = $value['brand_ids'];
if ($brand_ids) {
if (!strstr($brand_ids, '0,')) {
- $brand_ids = '0,'.$brand_ids;
+ $brand_ids = '0,' . $brand_ids;
$ret = $this->mdTemplate->update(['brand_ids' => $brand_ids], ['id' => $value['id']]);
if ($ret == 1) {
$log[] = ['id' => $value['id'], 'brand_ids' => $brand_ids];
diff --git a/api/controllers/wxapp/licheb/Customers.php b/api/controllers/wxapp/licheb/Customers.php
index 5859a65c..7134e9a5 100644
--- a/api/controllers/wxapp/licheb/Customers.php
+++ b/api/controllers/wxapp/licheb/Customers.php
@@ -736,7 +736,7 @@ class Customers extends Wxapp
$lists = [];
if ($count) {
$fileds = 'a.id,a.name,a.admin_id,a.mobile,a.level,a.is_top,a.cont_time,a.c_time,a.if_defeat,a.cf_title
- ,a.of_id,a.of2_id,a.status';
+ ,a.of_id,a.of2_id,a.status,a.visit_time';
$rows = $this->mdCustomerVisitData->select_visit($where, 'a.id desc', $page, $size, $fileds);
//获取管理员
$admin_arr = array_unique(array_column($rows, 'admin_id'));
@@ -752,6 +752,7 @@ class Customers extends Wxapp
'建卡时间' => date('Y-m-d', $val['c_time']),
];
$val['cont_time'] != '0000-00-00 00:00:00' && $other_data['上次联系'] = date('Y-m-d', strtotime($val['cont_time']));
+ $val['visit_time'] != '0000-00-00' && $other_data['计划回访时间'] = $val['visit_time'];
$other_data['销售顾问'] = isset($admins[$val['admin_id']]) ? $admins[$val['admin_id']][0]['uname'] : '';
$tags = [$val['level'] . '级用户'];
$defeat = '';
diff --git a/api/controllers/wxapp/licheb/User.php b/api/controllers/wxapp/licheb/User.php
index 6e7c8e54..2358db20 100644
--- a/api/controllers/wxapp/licheb/User.php
+++ b/api/controllers/wxapp/licheb/User.php
@@ -226,14 +226,6 @@ class User extends Wxapp
$this->load->model('receiver/order/receiver_orders_v2_model');
$this->load->model('receiver/order/receiver_order_signs_model', 'order_signs_model');
$this->load->model('receiver/receiver_customers_visit_data_model', 'mdCustomerVisitData');
- $where = [
- "cont_time = '0000-00-00 00:00:00'" => null,
- 'biz_id' => $biz_id,
- 'status in(0,1)' => null
- ];
- $group_id == 1 && $where['admin_id'] = $uid;
- $group_id == 4 && $where['brand_id!='] = 3; //渠道经理过滤
- $wl_count = $this->customers_model->count($where);
$where = [
'status>' => -1,
'is_top' => 1,
@@ -349,8 +341,9 @@ class User extends Wxapp
, ['title' => '今日需跟进 >', 'num' => $b_num_1, 'url' => '/pages/customer/filterList/index?level=B&status=1&visit=1&title=B级今日需跟进']
, ['title' => '今日已跟进 >', 'num' => $b_num_2, 'url' => '/pages/customer/filterList/index?level=A&status=2&visit=1&title=A级今日已跟进']]],
];
+ $wl_num = $this->mdCustomerVisitData->count_visit($where_v);
$data = [
- 'wl_count' => ['title' => '录入未跟进(人)', 'num' => $wl_count, 'url' => '/pages/customer/filterList/index?iscall=0&title=录入未跟进'],
+ 'wl_count' => ['title' => '待跟进客户(人)', 'num' => $wl_num, 'url' => '/pages/customer/filterList/index?status=1&visit=1&title=待跟进客户'],
'gz_count' => ['title' => '特别关注客户(人)', 'num' => $gz_count, 'url' => '/pages/customer/filterList/index?istop=1&title=特别关注客户'],
'sign_count' => $sign_count,
'loan_count' => $loan_count,