Commit 788e3292 authored by zhuwei's avatar zhuwei

1

parent 592b5a92
......@@ -49,13 +49,15 @@ class Site extends Basic
$user_id =$params['user_id'];
$site_id =$params['site_id'];
$res = $user_service->setUserSites($user_id, $site_id,$type = 0);
// $res = $user_service->setUserSites($user_id, $site_id,$type = 0);
if ($res) {
// if ($res) {
// return $this->response("200", "成功");
// } else {
// return $this->response("101", "失败");
// }
return $this->response("200", "成功");
} else {
return $this->response("101", "失败");
}
}
......
......@@ -7,7 +7,6 @@ use app\api_broker\service\PushMessageService;
use app\api_broker\service\RedisCacheService;
use app\api_broker\service\UserExpiredTimeService;
use app\index\service\UserAgentService;
use app\index\service\UserSiteService;
use app\model\AAgents;
use app\model\Users;
use app\model\UWxInfo;
......@@ -131,8 +130,8 @@ class RegisterService
$s_user_agent->addUserAgent($referrer_id,$id,$site_id);
}
//给用户添加站点
$s_user_site = new UserSiteService();
$s_user_site->addUserSite($id,$site_id);
// $s_user_site = new UserSiteService();
// $s_user_site->addUserSite($id,$site_id);
//保护期内的客户存redis
if ($referrer_source == 20 && $referrer_id > 0) {
......
......@@ -80,7 +80,7 @@ class Report extends Basic
$is_ok = $this->service_->verifyReport($agent_id, $agent_phone, $this->agentName, $store_id, $user_id, $userArr["user_phone"],
$userArr["user_name"], $house_ids, $vehicle, $intro, $predict_see_time);
if ($is_ok > 0) {
$this->userService->setUserSites($user_id, $this->siteId);//设置用户站点 朱伟 2018-10-22
//$this->userService->setUserSites($user_id, $this->siteId);//设置用户站点 朱伟 2018-10-22
/*记录推送*/
$push = new PushMessageService();
......
......@@ -11,7 +11,6 @@ use app\index\service\OfficeUserLogService;
use app\index\service\UserAgentService;
use app\index\service\UserLogService;
use app\index\service\UserService;
use app\index\service\UserSiteService;
use app\model\AAgents;
use app\model\GOperatingRecords;
use app\model\ULabels;
......@@ -929,26 +928,26 @@ class User extends Basic
}
public function getSiteUserList($site_id)
{
//查询总监下面门店的所有经纪人
$params = [];
$params["site_id"] = $site_id;
$params["is_del"] = 0;
$m_user_site = new UserSiteModel();
$field = 'user_id';
$res = $m_user_site->selectUserSite($field,$params);
$user_id_str = "";
if (count($res) > 0) {
foreach ($res as $k => $v) {
$user_id_str .= $v["user_id"] . ",";
}
$user_id_str = rtrim($user_id_str, ",");
}
return $user_id_str;
}
// public function getSiteUserList($site_id)
// {
// //查询总监下面门店的所有经纪人
// $params = [];
// $params["site_id"] = $site_id;
// $params["is_del"] = 0;
// $m_user_site = new UserSiteModel();
// $field = 'user_id';
// $res = $m_user_site->selectUserSite($field,$params);
//
// $user_id_str = "";
// if (count($res) > 0) {
// foreach ($res as $k => $v) {
// $user_id_str .= $v["user_id"] . ",";
// }
// $user_id_str = rtrim($user_id_str, ",");
// }
//
// return $user_id_str;
// }
/**
......@@ -974,8 +973,8 @@ class User extends Basic
ini_set('memory_limit', '500M'); //内存限制
set_time_limit(0);
$s = new UserSiteService();
$s->moveUserSite();
// $s = new UserSiteService();
// $s->moveUserSite();
return $this->response("200", "成功");
}
......
......@@ -4,7 +4,6 @@ namespace app\index\controller;
use app\index\extend\Basic;
use app\index\service\UserAgentService;
use app\index\service\UserSiteService;
use app\model\GImageDepot;
use app\model\OPayLogModel;
......
......@@ -257,8 +257,8 @@ class UserLogService
$result['site_ids_name'] = $s_index_user->userSiteName($result["site_ids"]);
#客户站点 新(客户站点独立建表)
$s_user_site = new UserSiteService();
$result['site_ids_name_new'] = $s_user_site->getSiteNameList($user_id);
// $s_user_site = new UserSiteService();
$result['site_ids_name_new'] = $result['site_ids_name'] ;
#是否被收藏
$result["is_collect"] =$this->userDetailIsCollect($user_id, $agent_id);
......
......@@ -117,7 +117,7 @@ class UserService
$redis_service->userCache($id);
}
$this->setUserSites($id, $data['site_id']);//设置站点
//$this->setUserSites($id, $data['site_id']);//设置站点
//设置客方
......@@ -647,32 +647,32 @@ class UserService
*/
public function setUserSites($user_id, $site_id,$type = 1)
{
if (!$user_id) {
return false;
}
if (!$site_id) {
return false;
}
$s_user_site = new UserSiteService();
if($type == 1){
$s_user_site->delUserSite($user_id,1);
}
$site_ids_array = explode(',', rtrim($site_id, ','));
foreach ($site_ids_array as $k => $v) {
$is_site = $s_user_site->findUserSite($user_id,$v);
if($is_site){//编辑
if($type == 1){
$s_user_site->delUserSite($is_site['id'],0);
}
}else{//新增
$s_user_site->addUserSite($user_id,$v);
}
}
$redis_service = new RedisCacheService();
$redis_service->userCache($user_id);
return true;
// if (!$user_id) {
// return false;
// }
// if (!$site_id) {
// return false;
// }
// $s_user_site = new UserSiteService();
//
// if($type == 1){
// $s_user_site->delUserSite($user_id,1);
// }
// $site_ids_array = explode(',', rtrim($site_id, ','));
// foreach ($site_ids_array as $k => $v) {
// $is_site = $s_user_site->findUserSite($user_id,$v);
// if($is_site){//编辑
// if($type == 1){
// $s_user_site->delUserSite($is_site['id'],0);
// }
// }else{//新增
// $s_user_site->addUserSite($user_id,$v);
// }
// }
//
// $redis_service = new RedisCacheService();
// $redis_service->userCache($user_id);
// return true;
}
/**
......
<?php
/**
* Created by PhpStorm.
* User: fuju
* Date: 2018/8/27
* Time: 12:43
*/
namespace app\index\service;
use app\api_broker\service\RedisCacheService;
use app\model\Users;
use app\model\UserSiteModel;
class UserSiteService
{
protected $m_user;
protected $m_user_site;
public function __construct()
{
$this->m_user = new Users();
$this->m_user_site = new UserSiteModel();
}
/**
* 新增
* @param $user_id
* @param $site_id
* @return mixed
*/
public function addUserSite($user_id,$site_id)
{
$params['user_id']=$user_id;
$params['site_id']=$site_id;
$add_res = $this->m_user_site->addUserSite($params);
return $add_res;
}
/**
* 查询
* @param $user_id
* @param $site_id
* @return array|false|\PDOStatement|string|\think\Model
*/
public function findUserSite($user_id,$site_id)
{
$field = 'id';
$params['user_id'] = $user_id;
$params['site_id'] = $site_id;
$return = $this->m_user_site->getUserSite($field,$params);
return $return;
}
/**
* 删除
* @param $user_id
*/
public function delUserSite($user_id, $is_del = 1)
{
$params['is_del'] = $is_del;
if($is_del == 0){
$where['id'] = $user_id;
}else{
$where['user_id'] = $user_id;
}
$this->m_user_site->updateUserSite($where, $params);
}
/**
* 处理老数据
*/
public function moveUserSite(){
$limit = 1000;
$user_count = $this->moveUserSiteCount();
$total_page = intval($user_count / $limit) + (($user_count % $limit == 0) ? 0 : 1);
for ($page = 1; $page <= $total_page; $page++) {
$res = $this->moveUserSiteSaveData($page,$limit);
// big_log($res);
}
return '';
}
/**
* 保存数据
* @param int $page
* @param int $limit
* @return int|string
*/
public function moveUserSiteSaveData($page = 1,$limit = 100){
$field = "id as user_id,site_ids as site_id,create_time";
$params[] = ['EXP', 'site_ids IS NOT NULL '];
$list = $this->m_user->moveUserSite($field, $params, $page, $limit, "id asc");
$list_ = [];
foreach ($list as $k => $v) {
$site_ids = explode(',',$v['site_id']);
foreach ($site_ids as $k1 => $v1) {
$a = [];
$a['user_id']= $v['user_id'];
$a['site_id']= $v1;
$a['create_time'] = $v['create_time'];
$a['update_time'] = $v['create_time'];
$list_[] = $a;
}
}
foreach ($list_ as $k2 => $v2) {
$is_save = $this->isSaveEd($v2['user_id'],$v2['site_id']);
if($is_save){
unset($list_[$k2]);
}
}
if($list_)
$this->m_user_site->moveHouseInsertAll($list_);
return '';
}
/**
* 是否存在数据
* @param $user_id
* @param $site_id
* @return false|\PDOStatement|string|\think\Collection
*/
public function isSaveEd($user_id,$site_id){
$params = [];
$params["user_id"] = $user_id;
$params["site_id"] = $site_id;
$params["is_del"] = 0;
$field = 'user_id';
$res = $this->m_user_site->selectUserSite($field,$params);
return $res;
}
/*
* 符合要求的客户数量
*/
public function moveUserSiteCount(){
$params[] = ['EXP', 'site_ids IS NOT NULL '];
$user_count = $this->m_user->moveUserSiteCount($params);
return $user_count;
}
/**
* 客户城市标签
* @param $user_id
* @return string
*/
public function getSiteNameList($user_id)
{
//查询总监下面门店的所有经纪人
$params = [];
$params["user_id"] = $user_id;
$field = 'site_id';
$res = $this->m_user_site->getSiteNameList($field, $params);
$list_str = "";
if (count($res) > 0) {
$redis_cache = new RedisCacheService();
foreach ($res as $k => $v) {
#缓存获取站点名
$redis_data = $redis_cache->getRedisCache(4, $v['site_id']);
if($redis_data)
$list_str .= $redis_data . ",";
}
$list_str = rtrim($list_str, ",");
}
return $list_str;
}
}
\ No newline at end of file
<?php
namespace app\model;
use think\Db;
use think\Model;
class UserSiteModel extends Model
{
// 设置当前模型对应的完整数据表名称
protected $table = 'u_user_site1';
private $db_;
public function __construct($data = [])
{
parent::__construct($data);
$this->db_ = Db::name($this->table);
}
/**
* 新增数据
* @param $data
* @return int|string
*/
public function addUserSite($data) {
$time = date("Y-m-d H:i:s", time());
$data['create_time'] = $time;
$data['update_time'] = $time;
$data['is_del'] = 0;
return $this->db_ ->insert($data);
}
public function moveHouseInsertAll($data)
{
$result = Db::table($this->table)
->insertAll($data);
return $result;
}
/**
* 查询数据
*/
public function getUserSite($field,$params)
{
$result = $this->db_
->field($field)
->where($params)
->find();
//echo $this->getLastSql();
return $result;
}
public function selectUserSite($field,$params)
{
$result = $this->db_
->field($field)
->where($params)
->select();
//echo $this->getLastSql();
return $result;
}
/**
* 更新数据
*/
public function updateUserSite($where,$params)
{
$result = $this->db_ ->where($where)->update($params);
//dump($this->getLastSql());
return $result;
}
/**
* 客户城市标签
* @param $field
* @param $params
* @return false|\PDOStatement|string|\think\Collection
*/
public function getSiteNameList($field,$params)
{
$params["is_del"] = 0;
$result = $this->db_
->field($field)
->where($params)
->select();
//echo $this->getLastSql();
return $result;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment