settable('flow_todos'); } /** * 添加人员提醒表里,让他必读查看 */ public function addtotouids($uids, $uarr=array()) { if(isempt($uids) || !$uarr)return; $mid = arrvalue($uarr,'mid'); $modenum = arrvalue($uarr,'modenum'); $uidsa = explode(',',$uids); $isuar = array(); $uarrs = $this->getrows("`modenum`='$modenum' and `mid`=$mid and `uid` in($uids)", '`uid`,`id`'); foreach($uarrs as $k=>$rs)$isuar[$rs['uid']]=$rs['id']; $iarr = $garr = array(); $gids = ''; foreach($uidsa as $uid){ $where = ''; if(isset($isuar[$uid]))$where = $isuar[$uid]; $adda['adddt'] = $this->rock->now; $adda['readdt'] = null; $adda['isread'] = 0; foreach($uarr as $k=>$v)$adda[$k] = $v; if($where==''){ $adda['uid'] = $uid; $iarr[] = $adda; }else{ if(!$garr)$garr = $adda; $gids.=','.$where.''; } } if($iarr)$this->insertAll($iarr); if($gids!='')$this->update($garr,'`id` in('.substr($gids,1).')'); } /** * 标识已读 */ public function biaoyidu($uid, $mode, $mid) { $where = "`uid`='$uid' and `modenum`='$mode' and `mid`='$mid'"; $this->update(array( 'isread' => 1, 'readdt' => $this->rock->now ),"$where and `isread`=0"); m('todo')->update(array( 'status' => 1, 'readdt' => $this->rock->now ), "$where and `status`=0"); //历史会话 m('im_history')->update('`stotal`=0',"`uid`='$uid' and `stotal`>0 and `xgurl`='".$mode."|".$mid."'"); } public function getwdtotals($uid) { $to = $this->rows("`uid`='$uid' and `isread`=0"); return $to; } }