'正常' and a.states is null and a.iswork=1 group by a.uid;"; $rows = $this->db->getall($sql); $ids = ''; foreach($rows as $k=>$rs){ $ids .=','.$rs['uid'].''; } if($ids!=''){ $flow = m('flow')->initflow('leavehr'); $flow->push(substr($ids, 1),'考勤','昨天['.$dt.']的你考勤存在异常,此消息仅供参考!','考勤异常提醒'); } return 'success'; } public function anayAction() { $dt = date('Y-m-d', time()-3600*20);//昨天 m('kaoqin')->kqanayalldt($dt); return 'success'; } //每月分析上月 public function lmanayAction() { $month = c('date')->adddate($this->rock->date, 'm', -1,'Y-m'); m('kaoqin')->kqanayall($month); return 'success'; } //分析工作日报统计 public function dailyfxAction() { $dt = c('date')->adddate($this->rock->date, 'd', -1); $flow = m('flow')->initflow('daily'); $flow->dailyanay(0, $dt); $flow->dailytodo($dt); //未写日报通知 return 'success'; } public function dayAction() { m('flow:leave')->autoaddleave(); //年假自动添加 return 'success'; } //定时从企业微信/钉钉上获取打卡记录,一般30分钟获取一次 public function getdkAction() { $h = (int)date('H'); if($h>=2 && $h<=6)return '凌晨2-6点暂停读取'; $reimbo = m('reim'); $uids = '';//全部 $dt1 = ''; $dt2 = ''; $msg = 'success'; if($reimbo->installwx(1)){ $barr = m('weixinqy:daka')->getrecord($uids, $dt1, $dt2, 1); //加入异步 if($uids=='' && $barr['errcode']==0 && $barr['maxpage']>1){ for($i=1;$i<=$barr['maxpage'];$i++){ if($i>1)$reimbo->asynurl('asynrun','wxdkjl', array( 'dt1' => $dt1, 'dt2' => $dt2, 'page' => $i )); } } if($barr['errcode']!=0)$msg .= ',企业微信('.$barr['msg'].')'; } //钉钉 if($reimbo->installwx(2)){ $barr = m('dingding:daka')->getrecord($uids, $dt1, $dt2); if($barr['errcode']!=0)$msg .= ',钉钉('.$barr['msg'].')'; } return $msg; } }