|
|
@@ -191,7 +191,7 @@ class Index extends Api
|
|
|
{
|
|
|
$yhcjDbToRedis = [];
|
|
|
|
|
|
- //获取所有印刷车间
|
|
|
+ //获取所有印后车间
|
|
|
$rows = db('设备_基本资料')
|
|
|
->where('使用部门','印后车间')
|
|
|
->column('设备编号');
|
|
|
@@ -289,4 +289,66 @@ class Index extends Api
|
|
|
return json($res);
|
|
|
}
|
|
|
|
|
|
+ //车间产量数据同步Redis
|
|
|
+ public function jtClDbToRedis()
|
|
|
+ {
|
|
|
+ $jtClDbToRedis = [];
|
|
|
+
|
|
|
+ //获取机台
|
|
|
+ $rows = db('设备_基本资料')
|
|
|
+ ->whereNotNull('sys_sbID')
|
|
|
+ ->column('设备编号');
|
|
|
+
|
|
|
+ //获取24小时内的hour组成数组
|
|
|
+ $hour = date('H');
|
|
|
+ $arr1 = range($hour+1,'23');
|
|
|
+ $arr2 = range('00',$hour);
|
|
|
+ $arr = array_merge($arr1,$arr2);
|
|
|
+ $arr = array_map(function($num) {
|
|
|
+ return sprintf("%02d", $num);
|
|
|
+ }, $arr);
|
|
|
+
|
|
|
+ foreach($rows as $value){
|
|
|
+ $brr = [];
|
|
|
+ //查询该机台24内的产量数据
|
|
|
+ $row = db('设备_产量计酬')
|
|
|
+ ->where('sys_rq', '>', date('Y-m-d H:i:s', strtotime('-23 hours')))
|
|
|
+ ->where('sczl_jtbh', $value)
|
|
|
+ ->group('LEFT(sys_rq, 13)')
|
|
|
+ ->order('sys_rq')
|
|
|
+ ->column('DATE_FORMAT(sys_rq, "%H") as hour, SUM(sczl_cl) as total_cl');
|
|
|
+ //将产量数据赋值给小时
|
|
|
+ foreach($arr as $v){
|
|
|
+ $brr[$v] = array_key_exists($v,$row) ? $row[$v] : '0';
|
|
|
+ }
|
|
|
+ $jtClDbToRedis[$value] = $brr;
|
|
|
+ }
|
|
|
+ $bool = cache('jtClDbToRedis',$jtClDbToRedis);
|
|
|
+ if($bool===false) $this->error('存入redis失败','','000002');
|
|
|
+ $this->success('同步成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取机台产量数据
|
|
|
+ public function getJtClDbByRedis()
|
|
|
+ {
|
|
|
+ $req = $this->request->param();
|
|
|
+ if (isset($req['jtbh']) && !empty($req['jtbh'])){
|
|
|
+ $jtbh = $req['jtbh'];
|
|
|
+ }else{
|
|
|
+ $this->error('参数错误');
|
|
|
+ }
|
|
|
+ $row = cache('jtClDbToRedis');
|
|
|
+ $result['categories']=[];
|
|
|
+ $result['series']['name']=$jtbh;
|
|
|
+ $result['series']['data']=[];
|
|
|
+ if($row && array_key_exists($jtbh,$row)){
|
|
|
+ $result['categories'] = array_map('strval', array_keys($row[$jtbh]));
|
|
|
+ $result['series']['data'] = array_values($row[$jtbh]);
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$result;
|
|
|
+ return json($res);
|
|
|
+ }
|
|
|
}
|