维护用户销售统计——脚本

This commit is contained in:
wanyongkang
2020-11-25 11:07:12 +08:00
parent 2a2ee60da8
commit d52e537b1d

View File

@@ -10,7 +10,7 @@ use enum\user\User as UserEnum;
$user_model = new User;
$product_order_model = new ProductOrder;
$follow_rcord_model = new FollowRecord;
$follow_record_model = new FollowRecord;
$user_enum = new UserEnum;
$date1 = date("Y-m-01", time());
@@ -26,7 +26,8 @@ $user_id_list = [];
$register_id_list = [];
$cost_user_id_list = [];
$uncost_user_id_list = [];
$record_data = [];
$uncost_overtime_user_id_list = [];
$cost_overtime_user_id_list = [];
$finish_record_data = [];
$unfollow_record_data = [];
$last_cost_list = [];
@@ -39,7 +40,7 @@ $time_where2 .= " UpdateTime>='" . $date3 . "' and UpdateTime<='" . $date4 . "'
$register_user_list = $user_model->getAllManagerUser([]);
foreach ($register_user_list as $info) {
//本月注册用户
if (strtotime($info['CreateTime']) >= strtotime($date1) && strtotime($info['CreateTime']) <= strtotime($date2)) {
$register_id_list[] = $info['Id'];
@@ -54,82 +55,42 @@ foreach ($user_month_cost_list as $info) {
$cost_user_id_list[] = $info['UserId'];
}
//老用户本月消费
$user_now_cost_list = $product_order_model->getPreMonthCost($user_id_list, $time_where1);
//老用户上月消费
$user_last_cost_list = $product_order_model->getPreMonthCost($user_id_list, $time_where2);
foreach ($user_last_cost_list as $cost){
foreach ($user_last_cost_list as $cost) {
$last_cost_list[$cost['UserId']] = $cost;
}
foreach ($user_now_cost_list as $cost){
$user_follow_status = $user_model->getOne(['Id'=>$cost['UserId']],'follow_status')['follow_status'];
if (isset($last_cost_list[$cost['UserId']])){
if($last_cost_list[$cost['UserId']]['money']>$cost['money']){
$temp = [];
$temp['user_id'] = $cost['UserId'];
$temp['op_user'] = 1;
$info['follow_status'] = $user_enum::$UnfollowBuyReduce;
$temp['record'] = $user_enum::$FollowStatus[$user_follow_status].'=>'.$user_enum::$FollowStatus[$user_enum::$UnfollowBuyReduce];
$temp['remark'] = '系统自动更改状态';
$record_data[] = $temp;
foreach ($user_now_cost_list as $cost) {
$user_follow_status = $user_model->getOne(['Id' => $cost['UserId']], 'follow_status')['follow_status'];
if (isset($last_cost_list[$cost['UserId']])) {
if ($last_cost_list[$cost['UserId']]['money'] > $cost['money']) {
$uncost_user_id_list[] = $cost['UserId'];
} else {
$temp = [];
$temp['user_id'] = $cost['UserId'];
$temp['op_user'] = 1;
$info['follow_status'] = $user_enum::$Finish;
$temp['record'] = $user_enum::$FollowStatus[$user_follow_status].'=>'.$user_enum::$FollowStatus[$user_enum::$Finish];
$temp['remark'] = '系统自动更改状态';
$record_data[] = $temp;
//已完成
$cost_user_id_list[] = $cost['UserId'];
}
} else {
//记录需要将状态·修改为 待跟进-消费减少
$uncost_user_id_list[] = $cost['UserId'];
}
}
//获取待跟进状态超过15天
$over_15_list = $follow_rcord_model->getOverTime();
foreach ($over_15_list as $info){
switch($info['follow_status']){
$over_15_list = $follow_record_model->getOverTime();
foreach ($over_15_list as $info) {
switch ($info['follow_status']) {
case $user_enum::$UnfollowNotBuy:
$temp = [];
$temp['user_id'] = $info['user_id'];
$temp['op_user'] = 1;
$info['follow_status'] = $user_enum::$FollowOverTimeNotBuy;
$temp['record'] = $user_enum::$FollowStatus[$info['follow_status']].'=>'.$user_enum::$FollowStatus[$user_enum::$FollowOverTimeNotBuy];
$temp['remark'] = '系统自动更改状态';
$record_data[] = $temp;
break;
$uncost_overtime_user_id_list[] = $info['user_id'];
break;
case $user_enum::$UnfollowBuyReduce:
$temp = [];
$temp['user_id'] = $info['user_id'];
$temp['op_user'] = 1;
$info['follow_status'] = $user_enum::$FollowOverTimeBuyReduce;
$temp['record'] = $user_enum::$FollowStatus[$info['follow_status']].'=>'.$user_enum::$FollowStatus[$user_enum::$FollowOverTimeBuyReduce];
$temp['remark'] = '系统自动更改状态';
$record_data[] = $temp;
break;
$cost_overtime_user_id_list[] = $info['user_id'];
break;
}
}
$user_model->updateOne(['Id' => ['in', $cost_user_id_list]], ['follow_status' => $user_enum::$Finish]);
$user_model->updateOne(['Id' => ['in', $uncost_user_id_list]], ['follow_status' => $user_enum::$UnfollowBuyReduce]);
//未跟进=》已完成
foreach ($cost_user_id_list as $info) {
$temp = [];
$temp['user_id'] = $info;
$temp['op_user'] = 1;
$temp['follow_status'] = $user_enum::$Finish;
$temp['record'] = $user_enum::$FollowStatus[$user_enum::$UnfollowNotBuy].'=>'.$user_enum::$FollowStatus[$user_enum::$Finish];
$temp['remark'] = '系统自动更改状态';
$record_data[] = $temp;
}
$follow_rcord_model->addAll($record_data);
$user_model->updateOne(['Id' => ['in', $uncost_overtime_user_id_list]], ['follow_status' => $user_enum::$FollowOverTimeNotBuy]);
$user_model->updateOne(['Id' => ['in', $cost_overtime_user_id_list]], ['follow_status' => $user_enum::$FollowOverTimeBuyReduce]);