feedbackRepository = $feedbackRepository; $this->msgRepository = $msgRepository; $this->memberLogRepository = $memberLogRepository; $this->companyRepository = $companyRepository; } public function addFeedback($data) { return $this->feedbackRepository->create($data); } public function sendMsg($data, $type) { $from_uid = ''; $utype = 1; if (auth('web-member')->user()) { $from_uid = auth('web-member')->user()->id; $utype = 2; } elseif (auth('web-company')->user()) { $from_uid = auth('web-company')->user()->id; $utype = 1; } //添加msg表数据 $time = date('Y-m-d H:i:s', time()); $msg_data = array( 'parent_id' => array_has($data, 'parent_id')?array_get($data, 'parent_id'):0, 'spid' => array_has($data, 'spid')?array_get($data, 'spid'):0, 'from_uid' => $from_uid, 'to_uid' => $data['touid'], 'message' => $data['message'], 'is_read' => array_has($data, 'is_read')?array_get($data, 'is_read'):0, 'created_at' => $time, 'updated_at' => $time, 'utype' => $utype ); $insert_id = $this->msgRepository->addData($msg_data); $data['id'] = $insert_id; if (!$insert_id) { return false; } if (array_get($data, 'parent_id')) { $this->msgRepository->update(array('spid'=>1), $data['parent_id']); } else { $this->msgRepository->update(array('parent_id'=>$insert_id), $insert_id); } /* $where = array('utype'=>$utype,'uid'=>$data['touid'],'type'=>$type); if ($member_msg_tip = $this->msgRepository->getMemberMsgtipInfo($where)) { $this->msgRepository->updateMemberMsgtipInfo($where, array('updated_at'=>$time,'unread'=>(int)$member_msg_tip->unread+1)); } else { $memberMsgtip_data = array( 'uid' => (int)$data['touid'], 'utype' => $utype, 'type' => $type, 'unread' => '1', 'num'=>0, 'created_at' =>$time, 'updated_at' => $time ); $this->msgRepository->addMemberMsgtipInfo($memberMsgtip_data); } */ $user_info = array(); if (auth('web-member')->user()) { $company = $this->companyRepository->getCompanyInfo(array('id'=>$data['touid'])); $data['to_url'] = route(url_rewrite('AIX_companyshow'), array('id'=>$company->id)); $data['to_name'] = $company->companyname; $user_info = array( 'uid' => auth('web-member')->user()->id, 'utype' =>2, 'username' => auth('web-member')->user()->username, 'ip' => $data['ip'], 'log_address'=>$data['ip_address'] ); } //写入会员日志 $this->addMembersLog($user_info, '', '发送站内信消息(消息id:'.$data['parent_id'].',接收人uid:'.$data['touid'].',消息内容:'.$data['message'].')'); return array('state'=>1,'data'=>$data); } public function addMembersLog($user, $type = 0, $txt, $replace2='', $replace3='', $source = false, $params = array(), $operater_id = 0, $operater = '') { $types = $this->memberLogRepository->getTypes(); $members_log = $params; $members_log['log_uid']=$user['uid']; $members_log['log_username']=$user['username']; if ($type) { $members_log['log_value'] = sprintf($types[$type]['content'], $txt, $replace2, $replace3); } else { $members_log['log_value'] = $txt; } $members_log['log_ip'] = $user['ip']; $members_log['log_address'] = $user['log_address']; $members_log['log_utype']=$user['utype']; if ($source) { $members_log['log_source']=$source; } elseif (Cache::get('log_source')) { $source = Cache::get('log_source'); switch ($source) { case 2: $members_log['log_source'] = '触屏版'; break; default: $members_log['log_source']='网页版'; break; } } else { $members_log['log_source']='网页版'; } $members_log['type']=$type?$type:0; $this->setLog($members_log); unset($members_log); } public function setLog($params) { if (Cache::get('subsite_id')) { $params['subsite_id'] = Cache::get('subsite_id'); } else { $params['subsite_id'] = 0; } if (false !== $this->memberLogRepository->addNew($params)) { return array('state'=>true); } else { return array('state'=>false,'error'=>'日志记录失败!'); } } }