123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- <?php
- namespace huo\controller\member;
- use huo\controller\agent\AgentCache;
- use huo\model\user\UserModel;
- use huolib\constant\AgentConst;
- use huolib\constant\MemConst;
- class MemAgent {
-
- public function getMemAgentId($mem_id = 0) {
- $_mem_id = $mem_id;
- if (empty($_mem_id)) {
- return 0;
- }
- $_map['mem_id'] = $_mem_id;
- $_mem_agent_id = (new UserModel())->getIdByMemId($_mem_id);
- if (empty($_mem_agent_id)) {
- $_mem_agent_id = $this->genAgent($_mem_id);
- }
- if (empty($_mem_agent_id)) {
- return 0;
- }
- return $_mem_agent_id;
- }
-
- public function genAgent($mem_id) {
- $_mem_id = $mem_id;
- if (empty($_mem_id)) {
- return false;
- }
- $_user_map['mem_id'] = $_mem_id;
- $_user_model = new UserModel();
- $_mem_agent_id = $_user_model->getIdByMemId($_mem_id);
- if (!empty($_mem_agent_id)) {
- return $_mem_agent_id;
- }
- $_mem_info = (new MemCache())->getInfoById($mem_id);
- $_data['user_login'] = $_mem_id.'_'.uniqid().md5($_mem_id);
- $_data['user_pass'] = $_mem_id.'_'.uniqid().md5($_mem_id);
- $_data['pay_pwd'] = $_data['user_pass'];
- $_data['user_nicename'] = !empty($_mem_info) ? $_mem_info['nickname'] : $_data['user_login'];
- $_data['avatar'] = !empty($_mem_info) ? $_mem_info['avatar'] : '';
- $_data['user_status'] = !empty($_mem_info) ? $_mem_info['status'] : MemConst::STATUS_NORMAL;
- $_data['mem_id'] = $_mem_id;
- $_data['parent_id'] = MemCache::ins()->getAgentIdByMemId($mem_id);
- $_data['role_id'] = AgentConst::AGENT_ROLE_MP_MEMBER;
- $_rs = $_user_model->addData($_data);
- if (false !== $_rs) {
- return $_rs;
- }
- return false;
- }
-
- public function setParent($mem_id = 0, $parent_agent_id = 0) {
- if (empty($mem_id)) {
- return true;
- }
- $_mc_class = MemCache::ins();
- $_ac_class = AgentCache::ins();
- $_parent_agent_data = $_ac_class->getInfoByAgentId($parent_agent_id);
- $_parent_mem_id = $_parent_agent_data['mem_id'];
-
- $_mem_data = $_mc_class->getInfoById($mem_id);
- $_mem_data['agent_id'] = $parent_agent_id;
- $_mem_data['parent_mem_id'] = empty($_parent_mem_id) ? 0 : $_parent_mem_id;
- $_mc_class->updateMem($mem_id, $_mem_data);
-
- $_mem_agent_id = (new UserModel())->getIdByMemId($mem_id);
- if (empty($_mem_agent_id)) {
- return true;
- }
- $_agent_data = $_ac_class->getInfoByAgentId($_mem_agent_id);
- $_agent_data['parent_id'] = $parent_agent_id;
- $_ac_class->updateAgent($_mem_agent_id, $_agent_data);
- return true;
- }
- }
|