108 lines
2.8 KiB
PHP
108 lines
2.8 KiB
PHP
<?
|
|
|
|
namespace controller\themes\merakomis\time\cache;
|
|
|
|
use ms\ms\structure\msControllerTable;
|
|
use themes\merakomis\Emp;
|
|
use themes\merakomis\structure\merakomisControllerTable;
|
|
use themes\merakomis\Time;
|
|
use themes\merakomis\time\Cache;
|
|
|
|
class Api extends merakomisControllerTable {
|
|
|
|
static $class = 'themes\merakomis\time\Cache';
|
|
|
|
static function testEmp(){
|
|
|
|
$where =new \Where(\Where::_or([
|
|
\Where::_operator(Cache::$EMP,'=',264),
|
|
]));
|
|
|
|
$r = Cache::select([
|
|
\Query::WHERE=> $where,
|
|
\Query::COUNT=>0,
|
|
]);
|
|
|
|
$rr = Cache::delete($where);
|
|
|
|
echo '<pre>';
|
|
echo var_dump($rr,$r);
|
|
echo '</pre>';
|
|
|
|
}
|
|
static function test(){
|
|
$r = Time::select([
|
|
\Query::SELECT => ['SUM('.Time::$DURATION.') as cc',Time::$IS_OVER,Time::$DATE],
|
|
\Query::WHERE => new \Where(\Where::_and([
|
|
\Where::_operator(Time::$PROJECT,'=',99),
|
|
\Where::_between(Time::$DATE,'2026-03-01','2026-03-31'),
|
|
\Where::_in(Time::$EMP,[264]),
|
|
])),
|
|
\Query::GROUP_BY =>[Time::$IS_OVER,Time::$DATE],
|
|
]);
|
|
while($l = \DB::fetch($r)){
|
|
echo '<pre>';
|
|
echo var_dump($l);
|
|
echo '</pre>';
|
|
}
|
|
}
|
|
|
|
|
|
static function test2(){
|
|
$r = Cache::select([
|
|
\Query::WHERE => new \Where(\Where::_and([
|
|
\Where::_operator(Cache::$PROJECT,'=',99),
|
|
\Where::_operator(Cache::$BEGIN,'=','2026-03-01'),
|
|
\Where::_operator(Cache::$END,'=','2026-03-31'),
|
|
])),
|
|
]);
|
|
$tota = 0;
|
|
echo '<pre>';
|
|
echo var_dump(\DB::numRows($r));
|
|
echo '</pre>';
|
|
$emps = [];
|
|
while($l = \DB::fetch($r)){
|
|
$data = json_decode($l[Cache::$DATA],true);
|
|
$x = $data['total'];
|
|
if($x) {
|
|
$total += $x;
|
|
$emps[$l[Cache::$EMP]] += $x;
|
|
}
|
|
}
|
|
ksort($emps);
|
|
echo '<pre>';
|
|
echo var_dump($total,$emps);
|
|
echo '</pre>';
|
|
}
|
|
|
|
|
|
|
|
static function clear()
|
|
{
|
|
$dateBegin = '2026-03-01';
|
|
$dateEnd = '2026-03-31';
|
|
|
|
$where =new \Where(\Where::_or([
|
|
\Where::_between(Cache::$BEGIN,$dateBegin,$dateEnd),
|
|
\Where::_between(Cache::$END,$dateBegin,$dateEnd),
|
|
\Where::_and([
|
|
\Where::_operator(Cache::$BEGIN,'<=',$dateBegin),
|
|
\Where::_operator(Cache::$END,'>=',$dateEnd),
|
|
])
|
|
]));
|
|
|
|
$r = Cache::select([
|
|
\Query::WHERE=> $where,
|
|
\Query::COUNT=>0,
|
|
]);
|
|
$rr = Cache::delete($where);
|
|
echo '<pre>';
|
|
echo var_dump($rr,$r);
|
|
echo '</pre>';
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|