/** * 打卡 - 更新用户数据 * * @param int $uid * @return bool */ private function _punchBehavior($userInfo, $awardNum, $behaviorNum = '') { $reward = $this->config['punch.reward']; $punchData = array('username' => $this->loginUser->username, 'time' => Pw::getTime(), 'cNum' => $awardNum, 'cUnit' => $this->_creditBo->cUnit[$reward['type']], 'cType' => $this->_creditBo->cType[$reward['type']], 'days' => $behaviorNum); // 更新用户data表信息 Wind::import('SRV:user.dm.PwUserInfoDm'); $dm = new PwUserInfoDm($userInfo['uid']); $dm->setPunch($punchData); $this->_getUserDs()->editUser($dm, PwUser::FETCH_DATA); //埋点[s_punch] PwSimpleHook::getInstance('punch')->runDo($dm); //记录行为 return $this->_getUserBehaviorDs()->replaceBehavior($userInfo['uid'], 'punch_day', $punchData['time']); }