Files
xinhu/webmain/task/runt/kaoqinAction.php
2023-04-05 13:00:20 +08:00

102 lines
2.9 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
class kaoqinClassAction extends runtAction
{
/**
* 定时任务发送昨天考勤异常的啊
*/
public function todoAction()
{
if(getconfig('systype')=='demo')return 'success';
$dt = date('Y-m-d', time()-3600*20);//昨天
$sql = "SELECT a.uid FROM `[Q]kqanay` a left join `[Q]userinfo` b on a.uid=b.id where a.dt='$dt' and b.iskq=1 and a.state<>'正常' 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()
{
if(getconfig('systype')=='demo')return 'success';
$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';
$daka = $this->option->getval('qywxplat_daka');
if($daka=='1'){
$barr = c('rockqywx')->getcheckindata($uids, $dt1, $dt2, 1);
if(!$barr['success']){
$msg .= ','.$barr['msg'];
}else{
$data = $barr['data'];
$msg .= ',从代建中应用获取打卡(共'.$data['zongts'].'条,新增'.$data['okload'].'条)';
if($data['maxpage']>1)$msg.=',并发送异步请求1条';
}
}else{
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;
}
}