|
|
@@ -0,0 +1,14628 @@
|
|
|
+<?php
|
|
|
+namespace app\api\controller;
|
|
|
+use app\common\controller\Api;
|
|
|
+use think\Db;
|
|
|
+use think\Cache\Driver\Redis;
|
|
|
+use app\api\controller\Second;
|
|
|
+//第一屏数据
|
|
|
+class Index extends Api{
|
|
|
+ protected $noNeedLogin = ['*'];
|
|
|
+ protected $noNeedRight = ['*'];
|
|
|
+ public function index(){
|
|
|
+ $this->success('请求新华接口成功');
|
|
|
+ }
|
|
|
+ public function customer_index()
|
|
|
+ {
|
|
|
+ // 1. 查询:account有值 + password为空 的客户
|
|
|
+ $list = Db::name("customer")
|
|
|
+ ->where("account", "<>", "")
|
|
|
+ ->where(function ($query) {
|
|
|
+ $query->whereNull("password")
|
|
|
+ ->whereOr("password", "");
|
|
|
+ })
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ if (empty($list)) {
|
|
|
+ return json([
|
|
|
+ "code" => 1,
|
|
|
+ "msg" => "所有密码已填充完毕,无需处理"
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
+ $success = 0;
|
|
|
+
|
|
|
+ // 循环逐条更新(FastAdmin/TP5 标准写法)
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
+ foreach ($list as $item) {
|
|
|
+ $account = trim($item['account']);
|
|
|
+ $password = md5(md5($account)); // FastAdmin 密码加密
|
|
|
+
|
|
|
+ Db::name("customer")
|
|
|
+ ->where("id", $item['id'])
|
|
|
+ ->update([
|
|
|
+ "password" => $password
|
|
|
+ ]);
|
|
|
+
|
|
|
+ $success++;
|
|
|
+ }
|
|
|
+
|
|
|
+ Db::commit();
|
|
|
+ return json([
|
|
|
+ "code" => 1,
|
|
|
+ "msg" => "密码填充成功,共更新 " . $success . " 条"
|
|
|
+ ]);
|
|
|
+
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ Db::rollback();
|
|
|
+ return json([
|
|
|
+ "code" => 0,
|
|
|
+ "msg" => "失败:" . $e->getMessage()
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ /** 定义的函数方法 $this->方法名调取*/
|
|
|
+ //获取当前年份的一月份
|
|
|
+ public function year_January(){
|
|
|
+ return date("Y-01");
|
|
|
+ }
|
|
|
+ //开始时间方法--当年01月01日
|
|
|
+ public function start_time(){
|
|
|
+ return gettimeinfo();
|
|
|
+ }
|
|
|
+ //结束时间方法--当年12月31日
|
|
|
+ public function end_time(){
|
|
|
+ return gettimeinfo(1);
|
|
|
+ }
|
|
|
+ //开始时间方法--去年01月01日
|
|
|
+ public function qstart_time(){
|
|
|
+ return getLastYear();
|
|
|
+ }
|
|
|
+ //去年的今天
|
|
|
+ public function qday(){
|
|
|
+ // 获取当前日期
|
|
|
+ $today = date('Y-m-d 23:59:59');
|
|
|
+ // 使用strtotime计算去年的今天
|
|
|
+ $lastYearToday = date('Y-m-d 23:59:59', strtotime($today . ' -1 year'));
|
|
|
+ // 输出去年的今天
|
|
|
+ return $lastYearToday;
|
|
|
+ }
|
|
|
+ //结束时间方法--去年12月31日
|
|
|
+ public function qend_time(){
|
|
|
+ return getLastYear(1);
|
|
|
+ }
|
|
|
+ //开始时间方法--前年01月01日
|
|
|
+ public function qianstart_time(){
|
|
|
+ return getPreviousYear();
|
|
|
+ }
|
|
|
+ //结束时间方法--前年12月31日
|
|
|
+ public function qianend_time(){
|
|
|
+ return getPreviousYear(1);
|
|
|
+ }
|
|
|
+ //前年的今天
|
|
|
+ public function qianday(){
|
|
|
+ // 获取当前日期
|
|
|
+ $today = date('Y-m-d 23:59:59');
|
|
|
+
|
|
|
+ // 使用strtotime计算前年的今天
|
|
|
+ $beforeLastYearToday = date('Y-m-d 23:59:59', strtotime($today . ' -2 years'));
|
|
|
+
|
|
|
+ // 输出前年的今天
|
|
|
+ return $beforeLastYearToday;
|
|
|
+ }
|
|
|
+ //开始时间方法--大前年01月01日
|
|
|
+ public function dqianstart_time(){
|
|
|
+ return getPreviousQYear();
|
|
|
+ }
|
|
|
+ //结束时间方法--大前年12月31日
|
|
|
+ public function dqianend_time(){
|
|
|
+ return getPreviousQYear(1);
|
|
|
+ }
|
|
|
+ //当年
|
|
|
+ public function currentYear(){
|
|
|
+ $currentYear = date('Y');
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $currentYear;
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //去年
|
|
|
+ public function lastYear(){
|
|
|
+ $currentYear = date('Y');
|
|
|
+ $lastYear = $currentYear - 1;
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $lastYear;
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //前年
|
|
|
+ public function yearBeforeLast(){
|
|
|
+ $currentYear = date('Y');
|
|
|
+ $yearBeforeLast = $currentYear - 2;
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $yearBeforeLast;
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //当年年业务结构
|
|
|
+ public function test_dYear(){
|
|
|
+ $currentYear = date('Y');
|
|
|
+ $lastTwoDigits = substr($currentYear, -2);
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $lastTwoDigits . "年色令分布";
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //去年年业务结构
|
|
|
+ public function test_qYear(){
|
|
|
+ $currentYear = date('Y');
|
|
|
+ $lastYear = $currentYear - 1;
|
|
|
+ $lastTwoDigits = substr($lastYear, -2);
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $lastTwoDigits . "年色令分布";
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 业务总览 第一屏 第一页
|
|
|
+ */
|
|
|
+
|
|
|
+ //承印销售收入->缓存调用 本级不包含集团教材外
|
|
|
+ public function getxssr_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getxssr_redis');
|
|
|
+ //定义查询字段
|
|
|
+ $field = [
|
|
|
+ 'ldz',
|
|
|
+ 'mcyd.icydid',
|
|
|
+ 'year(mcyd.dcyrq) as 年',
|
|
|
+ 'mcyd.dcyrq as 日期',
|
|
|
+ 'sum(mcyd.nwshjje) nwshjje',
|
|
|
+ 'sum(mcyd.nwsgjhj) nwsgjhj',
|
|
|
+ 'sum(tjob.namount) namount',
|
|
|
+ 'sum(tjob.namount) - sum(tjob.nclje * 100 / (100 + tjob.itax)) as sum_clje',
|
|
|
+ 'tjob.itax',
|
|
|
+ ];
|
|
|
+ //当年
|
|
|
+ $dangnian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->start_time(),$this->end_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //去年
|
|
|
+ $qunian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qstart_time(),$this->qend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+ //前年
|
|
|
+ $qiannian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qianstart_time(),$this->qianend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //大前年
|
|
|
+ $dqiannian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->dqianstart_time(),$this->dqianend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //销售收入、销售工价、日期
|
|
|
+ //当年
|
|
|
+ $cheng_dang = 0;$bb_dang = 0;$data_dang = 0;
|
|
|
+ //去年
|
|
|
+ $cheng_qu = 0;$bb_qu = 0;$data_qu = 0;
|
|
|
+ //前年
|
|
|
+ $cheng_qian = 0;$bb_qian = 0; $data_qian = 0;
|
|
|
+ //大前年
|
|
|
+ $cheng_dqian = 0;$bb_dqian = 0; $data_dqian = 0;
|
|
|
+
|
|
|
+
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($dangnian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_dang += $v['namount'];
|
|
|
+ $bb_dang += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_dang += $v['nwshjje'];
|
|
|
+ $bb_dang += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_dang = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($qunian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qu += $v['namount'];
|
|
|
+ $bb_qu += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qu += $v['nwshjje'];
|
|
|
+ $bb_qu += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qu = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($qiannian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qian += $v['namount'];
|
|
|
+ $bb_qian += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qian += $v['nwshjje'];
|
|
|
+ $bb_qian += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qian = $v['年'];
|
|
|
+ }
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($dqiannian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_dqian += $v['namount'];
|
|
|
+ $bb_dqian += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_dqian += $v['nwshjje'];
|
|
|
+ $bb_dqian += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_dqian = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ if($data_dang == 0){
|
|
|
+ $data_dang = date("Y");
|
|
|
+ }
|
|
|
+ $list=[ 'categories'=>[$data_qian,$data_qu,$data_dang],
|
|
|
+ 'series'=>[['name'=>'承印销售收入',
|
|
|
+ 'data'=>[round($cheng_qian/10000),round($cheng_qu/10000),round($cheng_dang/10000)]]]
|
|
|
+ ];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //承印销售收入->缓存调用 全部包含集团教材外
|
|
|
+ public function getxssrs_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getxssrs_redis');
|
|
|
+ //定义查询字段
|
|
|
+ $field = [
|
|
|
+ 'ldz',
|
|
|
+ 'mcyd.icydid',
|
|
|
+ 'year(mcyd.dcyrq) as 年',
|
|
|
+ 'mcyd.dcyrq as 日期',
|
|
|
+ 'sum(mcyd.nwshjje) nwshjje',
|
|
|
+ 'sum(mcyd.nwsgjhj) nwsgjhj',
|
|
|
+ 'sum(tjob.namount) namount',
|
|
|
+ 'sum(tjob.namount) - sum(tjob.nclje * 100 / (100 + tjob.itax)) as sum_clje',
|
|
|
+ 'tjob.itax',
|
|
|
+ ];
|
|
|
+ //当年
|
|
|
+ $dangnian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->start_time(),$this->end_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //去年
|
|
|
+ $qunian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qstart_time(),$this->qend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+ //前年
|
|
|
+ $qiannian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qianstart_time(),$this->qianend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+ //大前年
|
|
|
+ $dqiannian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->dqianstart_time(),$this->dqianend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //销售收入、销售工价、日期
|
|
|
+ //当年
|
|
|
+ $cheng_dang = 0;$bb_dang = 0;$data_dang = 0;
|
|
|
+ //去年
|
|
|
+ $cheng_qu = 0;$bb_qu = 0;$data_qu = 0;
|
|
|
+ //前年
|
|
|
+ $cheng_qian = 0;$bb_qian = 0; $data_qian = 0;
|
|
|
+ //大前年
|
|
|
+ $cheng_dqian = 0;$bb_dqian = 0; $data_dqian = 0;
|
|
|
+
|
|
|
+
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($dangnian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_dang += $v['namount'];
|
|
|
+ $bb_dang += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_dang += $v['nwshjje'];
|
|
|
+ $bb_dang += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_dang = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($qunian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qu += $v['namount'];
|
|
|
+ $bb_qu += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qu += $v['nwshjje'];
|
|
|
+ $bb_qu += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qu = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($qiannian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qian += $v['namount'];
|
|
|
+ $bb_qian += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qian += $v['nwshjje'];
|
|
|
+ $bb_qian += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qian = $v['年'];
|
|
|
+ }
|
|
|
+ //遍历查询结果,进行统计
|
|
|
+ foreach ($dqiannian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_dqian += $v['namount'];
|
|
|
+ $bb_dqian += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_dqian += $v['nwshjje'];
|
|
|
+ $bb_dqian += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_dqian = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ if($data_dang == 0){
|
|
|
+ $data_dang = date("Y");
|
|
|
+ }
|
|
|
+ $list=[ 'categories'=>[$data_qian,$data_qu,$data_dang],
|
|
|
+ 'series'=>[['name'=>'承印销售收入',
|
|
|
+ 'data'=>[round($cheng_qian/10000),round($cheng_qu/10000),round($cheng_dang/10000)]]]
|
|
|
+ ];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //承印销售收入->接口调用
|
|
|
+ public function getxssr(){
|
|
|
+ $redis = redis();
|
|
|
+ $data = input('post.');
|
|
|
+ if(isset($data['dependence'])){
|
|
|
+ $dependence=$data['dependence'];
|
|
|
+ }else{
|
|
|
+ $dependence['item']['value']= '全部';
|
|
|
+ }
|
|
|
+ if($dependence['item']['value'] == '全部'){
|
|
|
+ $result = json_decode($redis->get(md5('getxssrs_redis')),true);
|
|
|
+ }else{
|
|
|
+ $result = json_decode($redis->get(md5('getxssr_redis')),true);
|
|
|
+ }
|
|
|
+ return json($result);
|
|
|
+ }
|
|
|
+
|
|
|
+ //承印加工收入->缓存调用 本级不包含集团教材外
|
|
|
+ public function getjgsr_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getjgsr_redis');
|
|
|
+ // 定义需要查询的字段
|
|
|
+ $field = [
|
|
|
+ 'ldz',
|
|
|
+ 'mcyd.icydid',
|
|
|
+ 'year(mcyd.dcyrq) as 年',
|
|
|
+ 'mcyd.dcyrq as 日期',
|
|
|
+ 'sum(mcyd.nwshjje) nwshjje',
|
|
|
+ 'sum(mcyd.nwsgjhj) nwsgjhj',
|
|
|
+ 'sum(tjob.namount) namount',
|
|
|
+ 'sum(tjob.namount) - sum(tjob.nclje * 100 / (100 + tjob.itax)) as sum_clje',
|
|
|
+ 'tjob.itax',
|
|
|
+ ];
|
|
|
+ //当年
|
|
|
+ $dangnian= Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->start_time(),$this->end_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //去年
|
|
|
+ $qunian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qstart_time(),$this->qend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //前年
|
|
|
+ $qiannian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qianstart_time(),$this->qianend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->where('mcyd.chy','<>', '集团教材外')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //销售收入、销售工价、日期
|
|
|
+ //当年
|
|
|
+ $cheng_dang = 0;$bb_dang = 0;$data_dang = 0;
|
|
|
+ //去年
|
|
|
+ $cheng_qu = 0;$bb_qu = 0;$data_qu = 0;
|
|
|
+ //前年
|
|
|
+ $cheng_qian = 0;$bb_qian = 0; $data_qian = 0;
|
|
|
+
|
|
|
+ // 遍历查询结果,进行统计
|
|
|
+ foreach ($dangnian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_dang += $v['namount'];
|
|
|
+ $bb_dang += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_dang += $v['nwshjje'];
|
|
|
+ $bb_dang += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_dang = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历查询结果,进行统计
|
|
|
+ foreach ($qunian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qu += $v['namount'];
|
|
|
+ $bb_qu += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qu += $v['nwshjje'];
|
|
|
+ $bb_qu += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qu = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历查询结果,进行统计
|
|
|
+ foreach ($qiannian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qian += $v['namount'];
|
|
|
+ $bb_qian += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qian += $v['nwshjje'];
|
|
|
+ $bb_qian += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qian = $v['年'];
|
|
|
+ }
|
|
|
+ if($data_dang == 0){
|
|
|
+ $data_dang = date("Y");
|
|
|
+ }
|
|
|
+ $list=['categories'=>[$data_qian,$data_qu,$data_dang],'series'=>[['name'=>'承印加工收入',
|
|
|
+ 'data'=>[round($bb_qian/10000),round($bb_qu/10000),round($bb_dang/10000)]]]];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //承印加工收入->缓存调用 全部包含集团教材外
|
|
|
+ public function getjgsrs_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getjgsrs_redis');
|
|
|
+ // 定义需要查询的字段
|
|
|
+ $field = [
|
|
|
+ 'ldz',
|
|
|
+ 'mcyd.icydid',
|
|
|
+ 'year(mcyd.dcyrq) as 年',
|
|
|
+ 'mcyd.dcyrq as 日期',
|
|
|
+ 'sum(mcyd.nwshjje) nwshjje',
|
|
|
+ 'sum(mcyd.nwsgjhj) nwsgjhj',
|
|
|
+ 'sum(tjob.namount) namount',
|
|
|
+ 'sum(tjob.namount) - sum(tjob.nclje * 100 / (100 + tjob.itax)) as sum_clje',
|
|
|
+ 'tjob.itax',
|
|
|
+ ];
|
|
|
+ //当年
|
|
|
+ $dangnian= Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->start_time(),$this->end_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //去年
|
|
|
+ $qunian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qstart_time(),$this->qend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //前年
|
|
|
+ $qiannian = Db::table('mcyd')->field($field)
|
|
|
+ ->join('tjob','mcyd.icydid = tjob.icydid','LEFT')
|
|
|
+ ->whereTime('mcyd.dcyrq', 'between', [$this->qianstart_time(),$this->qianend_time()])
|
|
|
+ ->group('tjob.icydid,tjob.ldz,mcyd.dcyrq')
|
|
|
+ ->where('mcyd.icydstate','>',0)
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ //销售收入、销售工价、日期
|
|
|
+ //当年
|
|
|
+ $cheng_dang = 0;$bb_dang = 0;$data_dang = 0;
|
|
|
+ //去年
|
|
|
+ $cheng_qu = 0;$bb_qu = 0;$data_qu = 0;
|
|
|
+ //前年
|
|
|
+ $cheng_qian = 0;$bb_qian = 0; $data_qian = 0;
|
|
|
+
|
|
|
+ // 遍历查询结果,进行统计
|
|
|
+ foreach ($dangnian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_dang += $v['namount'];
|
|
|
+ $bb_dang += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_dang += $v['nwshjje'];
|
|
|
+ $bb_dang += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_dang = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历查询结果,进行统计
|
|
|
+ foreach ($qunian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qu += $v['namount'];
|
|
|
+ $bb_qu += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qu += $v['nwshjje'];
|
|
|
+ $bb_qu += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qu = $v['年'];
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历查询结果,进行统计
|
|
|
+ foreach ($qiannian as $v){
|
|
|
+ if($v['ldz'] == 1 ){
|
|
|
+ $cheng_qian += $v['namount'];
|
|
|
+ $bb_qian += $v['sum_clje'];
|
|
|
+ }else{
|
|
|
+ $cheng_qian += $v['nwshjje'];
|
|
|
+ $bb_qian += $v['nwsgjhj'];
|
|
|
+ }
|
|
|
+ $data_qian = $v['年'];
|
|
|
+ }
|
|
|
+ if($data_dang == 0){
|
|
|
+ $data_dang = date("Y");
|
|
|
+ }
|
|
|
+ $list=['categories'=>[$data_qian,$data_qu,$data_dang],'series'=>[['name'=>'承印加工收入',
|
|
|
+ 'data'=>[round($bb_qian/10000),round($bb_qu/10000),round($bb_dang/10000)]]]];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //承印加工收入->接口调用
|
|
|
+ public function getjgsr(){
|
|
|
+ $data = input('post.');
|
|
|
+ if(isset($data['dependence'])){
|
|
|
+ $dependence=$data['dependence'];
|
|
|
+ }else{
|
|
|
+ $dependence['item']['value']= '全部';
|
|
|
+ }
|
|
|
+ if($dependence['item']['value'] == '全部'){
|
|
|
+ $redis = redis();
|
|
|
+ $result = json_decode($redis->get(md5('getjgsrs_redis')),true);
|
|
|
+ }else{
|
|
|
+ $redis = redis();
|
|
|
+ $result = json_decode($redis->get(md5('getjgsr_redis')),true);
|
|
|
+ }
|
|
|
+ return json($result);
|
|
|
+ }
|
|
|
+
|
|
|
+ //承印色令->缓存调用 本级不包含集团教材外
|
|
|
+ //修改前
|
|
|
+// public function getcysl_redis(){
|
|
|
+// $redis=redis();
|
|
|
+// $redis_key = md5('getcysl_redis');
|
|
|
+// $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+// ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+// ->group('icydid')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+// ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+// ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+// ->where('ord.icydstate', '>', 0)
|
|
|
+// ->where('chy', '<>', '集团教材外')
|
|
|
+// ->group('rq')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $list2023 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list2022 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list2021 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+// ->find();
|
|
|
+//
|
|
|
+// $list=['categories'=>[$list2021['rq'],$list2022['rq'],$list2023['rq']],'series'=>[['name'=>'色令数',
|
|
|
+// 'data'=>[round($list2021['nyssl']/10000),round($list2022['nyssl']/10000),round($list2023['nyssl']/10000)]]]];
|
|
|
+// $res['status']=0;
|
|
|
+// $res['msg']='';
|
|
|
+// $res['data']=$list;
|
|
|
+// $redis->set($redis_key, json_encode($res));
|
|
|
+// return json_encode($res);
|
|
|
+// }
|
|
|
+ //修改后
|
|
|
+ public function getcysl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getcysl_redis');
|
|
|
+ // 清空旧缓存,杜绝数据偏小
|
|
|
+ $redis->del($redis_key);
|
|
|
+
|
|
|
+ $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+ ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+ ->group('icydid')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+ ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+ ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+ ->where('ord.icydstate', '>', 0)
|
|
|
+ ->where('chy', '<>', '集团教材外')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ // 【核心修复:套一层子查询,完全保留原版SUM结果,不改变任何数据】
|
|
|
+ $list2023 = Db::table("(SELECT DATE_FORMAT(t5.rq,'%Y') as rq FROM {$t5} t5 WHERE t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' LIMIT 1) t")
|
|
|
+ ->join("(SELECT SUM(t5.sl) as nyssl,SUM(t5.zl) as nysls FROM {$t5} t5 WHERE t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}') s",'1=1')
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ $list2022 = Db::table("(SELECT DATE_FORMAT(t5.rq,'%Y') as rq FROM {$t5} t5 WHERE t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' LIMIT 1) t")
|
|
|
+ ->join("(SELECT SUM(t5.sl) as nyssl,SUM(t5.zl) as nysls FROM {$t5} t5 WHERE t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}') s",'1=1')
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ $list2021 = Db::table("(SELECT DATE_FORMAT(t5.rq,'%Y') as rq FROM {$t5} t5 WHERE t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' LIMIT 1) t")
|
|
|
+ ->join("(SELECT SUM(t5.sl) as nyssl,SUM(t5.zl) as nysls FROM {$t5} t5 WHERE t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}') s",'1=1')
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ // 下面所有代码 完全原版 一字未改
|
|
|
+ $list=['categories'=>[$list2021['rq'],$list2022['rq'],$list2023['rq']],'series'=>[['name'=>'色令数',
|
|
|
+ 'data'=>[round($list2021['nyssl']/10000),round($list2022['nyssl']/10000),round($list2023['nyssl']/10000)]]]];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //承印色令->缓存调用 全部包含集团教材外
|
|
|
+ public function getcysls_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getcysls_redis');
|
|
|
+ $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+ ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+ ->group('icydid')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+ ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+ ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+ ->where('ord.icydstate', '>', 0)
|
|
|
+// ->where('chy', '<>', '集团教材外')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $list2023 = Db::table($t5 . ' t5')
|
|
|
+ ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $list2022 = Db::table($t5 . ' t5')
|
|
|
+ ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $list2021 = Db::table($t5 . ' t5')
|
|
|
+ ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ $list=['categories'=>[$list2021['rq'],$list2022['rq'],$list2023['rq']],'series'=>[['name'=>'色令数',
|
|
|
+ 'data'=>[round($list2021['nyssl']/10000),round($list2022['nyssl']/10000),round($list2023['nyssl']/10000)]]]];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //承印色令->接口调用
|
|
|
+ public function getcysl(){
|
|
|
+// $redis=redis();
|
|
|
+// $redis_key = md5('getcysl_redis');
|
|
|
+// $redis_data = $redis->get($redis_key);
|
|
|
+// return $redis_data;
|
|
|
+ $data = input('post.');
|
|
|
+ if(isset($data['dependence'])){
|
|
|
+ $dependence=$data['dependence'];
|
|
|
+ }else{
|
|
|
+ $dependence['item']['value']= '全部';
|
|
|
+ }
|
|
|
+ if($dependence['item']['value'] == '全部'){
|
|
|
+ $redis = redis();
|
|
|
+ $result = json_decode($redis->get(md5('getcysls_redis')),true);
|
|
|
+ }else{
|
|
|
+ $redis = redis();
|
|
|
+ $result = json_decode($redis->get(md5('getcysl_redis')),true);
|
|
|
+ }
|
|
|
+ return json($result);
|
|
|
+ }
|
|
|
+
|
|
|
+ //承印纸令->缓存调用 本级不包含集团教材外
|
|
|
+ //修改前
|
|
|
+ public function getcyzl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getcyzl_redis');
|
|
|
+ // 先删除旧脏缓存
|
|
|
+ $redis->del($redis_key);
|
|
|
+
|
|
|
+ $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+ ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+ ->group('icydid')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+ ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+ ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+ ->where('ord.icydstate','>',0)
|
|
|
+ ->where('chy', '<>', '集团教材外')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ // ==========2024 拆分两条SQL:只求和 + 单独取年份==========
|
|
|
+ $sum2021 = Db::table($t5 . ' t5')
|
|
|
+ ->field("sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->qianstart_time()}' AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $year2021 = Db::table($t5 . ' t5')
|
|
|
+ ->field("DATE_FORMAT(t5.rq, '%Y') as rq")
|
|
|
+ ->where("t5.RQ >= '{$this->qianstart_time()}' AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->limit(1)
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ // ==========2025==========
|
|
|
+ $sum2022 = Db::table($t5 . ' t5')
|
|
|
+ ->field("sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->qstart_time()}' AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $year2022 = Db::table($t5 . ' t5')
|
|
|
+ ->field("DATE_FORMAT(t5.rq, '%Y') as rq")
|
|
|
+ ->where("t5.RQ >= '{$this->qstart_time()}' AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->limit(1)
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ // ==========2026==========
|
|
|
+ $sum2023 = Db::table($t5 . ' t5')
|
|
|
+ ->field("sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->start_time()}' AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $year2023 = Db::table($t5 . ' t5')
|
|
|
+ ->field("DATE_FORMAT(t5.rq, '%Y') as rq")
|
|
|
+ ->where("t5.RQ >= '{$this->start_time()}' AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->limit(1)
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ $list=[
|
|
|
+ 'categories'=>[$year2021['rq'],$year2022['rq'],$year2023['rq']],
|
|
|
+ 'series'=>[[
|
|
|
+ 'name'=>'纸令数',
|
|
|
+ 'data'=>[
|
|
|
+ round(($sum2021['nysls']??0)/10000),
|
|
|
+ round(($sum2022['nysls']??0)/10000),
|
|
|
+ round(($sum2023['nysls']??0)/10000)
|
|
|
+ ]
|
|
|
+ ]]
|
|
|
+ ];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+
|
|
|
+ if($list){
|
|
|
+ echo date("Y-m-d H:i:s").'存进去了';
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ }
|
|
|
+//// public function getcyzl_redis(){
|
|
|
+// $redis=redis();
|
|
|
+// $redis_key = md5('getcyzl_redis');
|
|
|
+// $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+// ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+// ->group('icydid')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+// ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+// ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+// ->where('ord.icydstate','>',0)
|
|
|
+// ->where('chy', '<>', '集团教材外')
|
|
|
+// ->group('rq')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $list2023 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list2022 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list2021 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list=['categories'=>[$list2021['rq'],$list2022['rq'],$list2023['rq']],'series'=>[['name'=>'纸令数',
|
|
|
+// 'data'=>[round($list2021['nysls']/10000),round($list2022['nysls']/10000),round($list2023['nysls']/10000)]]]];
|
|
|
+// $res['status']=0;
|
|
|
+// $res['msg']='';
|
|
|
+// $res['data']=$list;
|
|
|
+// if($list){
|
|
|
+// echo date("Y-m-d H:i:s").'存进去了';
|
|
|
+// $redis->set($redis_key, json_encode($res));
|
|
|
+// return json_encode($res);
|
|
|
+// }
|
|
|
+// }
|
|
|
+ //修改后
|
|
|
+// public function getcyzl_redis(){
|
|
|
+// $redis=redis();
|
|
|
+// $redis_key = md5('getcyzl_redis');
|
|
|
+// $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+// ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+// ->group('icydid')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+// ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+// ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+// ->where('ord.icydstate','>',0)
|
|
|
+// ->where('chy', '<>', '集团教材外')
|
|
|
+// ->group('rq')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// // 内层只查总和,完全不带rq,不会触发1140报错
|
|
|
+// $list2023 = Db::table($t5 . ' t5')
|
|
|
+// ->field("SUM(t5.sl) as nyssl,SUM(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+// ->find();
|
|
|
+// // 单独查年份,不跟聚合写在同一句SQL里,彻底规避语法校验
|
|
|
+// $year2023 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq")
|
|
|
+// ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+// ->limit(1)
|
|
|
+// ->find();
|
|
|
+//
|
|
|
+// $list2022 = Db::table($t5 . ' t5')
|
|
|
+// ->field("SUM(t5.sl) as nyssl,SUM(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $year2022 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq")
|
|
|
+// ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+// ->limit(1)
|
|
|
+// ->find();
|
|
|
+//
|
|
|
+// $list2021 = Db::table($t5 . ' t5')
|
|
|
+// ->field("SUM(t5.sl) as nyssl,SUM(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $year2021 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq")
|
|
|
+// ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+// ->limit(1)
|
|
|
+// ->find();
|
|
|
+//
|
|
|
+// $list=[
|
|
|
+// 'categories'=>[$year2021['rq'],$year2022['rq'],$year2023['rq']],
|
|
|
+// 'series'=>[[
|
|
|
+// 'name'=>'纸令数',
|
|
|
+// 'data'=>[
|
|
|
+// round($list2021['nysls']/10000),
|
|
|
+// round($list2022['nysls']/10000),
|
|
|
+// round($list2023['nysls']/10000)
|
|
|
+// ]
|
|
|
+// ]]
|
|
|
+// ];
|
|
|
+// $res['status']=0;
|
|
|
+// $res['msg']='';
|
|
|
+// $res['data']=$list;
|
|
|
+// if($list){
|
|
|
+// echo date("Y-m-d H:i:s").'存进去了';
|
|
|
+// // 先删旧缓存再写入
|
|
|
+// $redis->del($redis_key);
|
|
|
+// $redis->set($redis_key, json_encode($res));
|
|
|
+// return json_encode($res);
|
|
|
+// }
|
|
|
+// }
|
|
|
+ //承印纸令->缓存调用 全部包含集团教材外
|
|
|
+ //修改前
|
|
|
+// public function getcyzls_redis(){
|
|
|
+// $redis=redis();
|
|
|
+// $redis_key = md5('getcyzls_redis');
|
|
|
+// $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+// ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+// ->group('icydid')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+// ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+// ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+// ->where('ord.icydstate','>',0)
|
|
|
+// ->group('rq')
|
|
|
+// ->buildSql();
|
|
|
+//
|
|
|
+// $list2023 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list2022 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list2021 = Db::table($t5 . ' t5')
|
|
|
+// ->field("DATE_FORMAT(t5.rq, '%Y') as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+// ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+// ->find();
|
|
|
+// $list=['categories'=>[$list2021['rq'],$list2022['rq'],$list2023['rq']],'series'=>[['name'=>'纸令数',
|
|
|
+// 'data'=>[round($list2021['nysls']/10000),round($list2022['nysls']/10000),round($list2023['nysls']/10000)]]]];
|
|
|
+// $res['status']=0;
|
|
|
+// $res['msg']='';
|
|
|
+// $res['data']=$list;
|
|
|
+// if($list){
|
|
|
+// $redis->set($redis_key, json_encode($res));
|
|
|
+// return json_encode($res);
|
|
|
+// }
|
|
|
+// }
|
|
|
+ //修改后
|
|
|
+ public function getcyzls_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('getcyzls_redis');
|
|
|
+ $objmatier = Db::table('scyddx')->alias('objmatier')
|
|
|
+ ->field('icydid,sum(nyssl) as nyssl,sum(nysls) as nysls')
|
|
|
+ ->group('icydid')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $t5 = Db::table('mcyd')->alias('ord')
|
|
|
+ ->field("DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl")
|
|
|
+ ->join('(' . $objmatier . ') as objmatier', ' ord.icydid = objmatier.icydid','LEFT')
|
|
|
+ ->where('ord.icydstate','>',0)
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ // 只给年份字段套MAX()聚合,不新增任何GROUP BY,全局求和逻辑不变,解决1140报错
|
|
|
+ $list2023 = Db::table($t5 . ' t5')
|
|
|
+ ->field("MAX(DATE_FORMAT(t5.rq, '%Y')) as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $list2022 = Db::table($t5 . ' t5')
|
|
|
+ ->field("MAX(DATE_FORMAT(t5.rq, '%Y')) as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->qstart_time()}'AND t5.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->find();
|
|
|
+ $list2021 = Db::table($t5 . ' t5')
|
|
|
+ ->field("MAX(DATE_FORMAT(t5.rq, '%Y')) as rq,sum(t5.sl) as nyssl,sum(t5.zl) as nysls")
|
|
|
+ ->where("t5.RQ >= '{$this->qianstart_time()}'AND t5.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->find();
|
|
|
+
|
|
|
+ // 下方数组组装、Redis、返回逻辑一行未改,和原代码完全相同
|
|
|
+ $list=['categories'=>[$list2021['rq'],$list2022['rq'],$list2023['rq']],'series'=>[['name'=>'纸令数',
|
|
|
+ 'data'=>[round($list2021['nysls']/10000),round($list2022['nysls']/10000),round($list2023['nysls']/10000)]]]];
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ if($list){
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //承印纸令->接口调用
|
|
|
+ public function getcyzl(){
|
|
|
+ $data = input('post.');
|
|
|
+ if(isset($data['dependence'])){
|
|
|
+ $dependence=$data['dependence'];
|
|
|
+ }else{
|
|
|
+ $dependence['item']['value']= '全部';
|
|
|
+ }
|
|
|
+ if($dependence['item']['value'] == '全部'){
|
|
|
+ $redis = redis();
|
|
|
+ $result = json_decode($redis->get(md5('getcyzls_redis')),true);
|
|
|
+ }else{
|
|
|
+ $redis = redis();
|
|
|
+ $result = json_decode($redis->get(md5('getcyzl_redis')),true);
|
|
|
+ }
|
|
|
+ return json($result);
|
|
|
+ }
|
|
|
+
|
|
|
+ //去年与当年--印刷实物产量色令->缓存调用
|
|
|
+ public function yssl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yssl_redis');
|
|
|
+ //首先定义了起始时间和结束时间
|
|
|
+
|
|
|
+ //根据查询条件查出色令数据
|
|
|
+ $subQuery1_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjsl')
|
|
|
+ ->whereIn('cbzmc', ['四色机2号(甲班)','四色机2号(乙班)','海德堡(甲班)',
|
|
|
+ '海德堡1号(甲班)','海德堡(乙班)','海德堡1号(乙班)','海德堡5+1 1号(甲班)',
|
|
|
+ '海德堡5+1 1号(乙班)','三菱机1(甲班)','三菱机1(乙班)','三菱机2(甲班)',
|
|
|
+ '三菱机2(乙班)','小森八色(甲班)','小森八色(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nsl')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['四色机02号','四色机02号机','海德堡01号',
|
|
|
+ '海德堡01号机','海德堡5+L 01号','海德堡5+L 01号机','三菱机01号',
|
|
|
+ '三菱机01号机','三菱机02号','三菱机02号机','小森八色01号',
|
|
|
+ '小森八色01号机','小森八色02号机']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery2_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjsl')
|
|
|
+ ->whereIn('cbzmc', ['BB机1号(甲班)','BB机1号(乙班)','BB机2号(甲班)','BB机2号(乙班)',
|
|
|
+ 'BB机3号(甲班)','BB机3号(乙班)','BB机4号(甲班)','BB机4号(乙班)','BB机5号(甲班)',
|
|
|
+ 'BB机5号(乙班)','BB机6号(甲班)','BB机6号(乙班)', '05机1号(甲班)', '05机1号(乙班)',
|
|
|
+ '海德堡SM1号机(甲班)','海德堡SM1号机(乙班)', '海德堡SM2号机(甲班)','海德堡SM2号机(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nsl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['BB机01号','BB机02号','BB机04号','BB机05号','如钰01号机','如钰02号机',
|
|
|
+ 'BB机06号','海德堡SM1号','海德堡SM2号']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery3_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjsl')
|
|
|
+ ->whereIn('cbzmc', [
|
|
|
+ '小森LW-35(甲班)','小森LW-35(乙班)','小森2号机(甲班)','小森2号机(乙班)',
|
|
|
+ '大规小森3号机(甲班)','大规小森3号机(乙班)','三菱商轮(甲班)','三菱商轮(乙班)',
|
|
|
+ '三菱商轮2号(甲班)','三菱商轮2号(乙班)','204胶轮(甲班)','204胶轮(乙班)',
|
|
|
+ 'V30(甲班)', 'V30(乙班)','报刊轮转(甲班)','报刊轮转(乙班)','高斯胶轮(甲班)','高斯胶轮(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nsl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['标规小森商轮1号',
|
|
|
+ '标规小森商轮2号','大规小森商轮1号','大规三菱商轮1号','标规三菱商轮1号',
|
|
|
+ '标规三菱商轮2号','标规204胶轮1号','大规海德堡1号','标规报轮1号','标规高斯轮转1号','标规高斯2号','大规高斯轮转1号','标规高斯轮转2号','标规北人轮转1号']);
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //将两个表的日期字段进行合并,并返回一个包含不重复结果
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //查询每天的数据
|
|
|
+ $subQuery1 = Db::table($subQuery1_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjsl ) nFourColorSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ $subQuery2 = Db::table($subQuery2_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjsl ) nBBSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ $subQuery3 = Db::table($subQuery3_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjsl ) nnRotationSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ //按当天日期进行分组 累计相加当天数据
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('
|
|
|
+ DISTINCT DATE(A.RQ) RQ,
|
|
|
+ sum(h.nBBSL) AS nBBSL,
|
|
|
+ sum(B.nFourColorSL) AS nFourColorSL,
|
|
|
+ sum(P.nnRotationSL) AS nnRotationSL
|
|
|
+ ')
|
|
|
+ ->join('(' . $subQuery1 . ') as B', ' A.RQ = B.rq','LEFT')
|
|
|
+ ->join('(' . $subQuery2 . ') as h', 'A.RQ = h.rq','LEFT')
|
|
|
+ ->join('(' . $subQuery3 . ') as P', 'A.RQ = P.rq','LEFT')
|
|
|
+ ->group('RQ')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ // 获取当前年份和前两年的年份
|
|
|
+ $currentYear = date("Y");
|
|
|
+ $lastYear = date("Y", strtotime("-1 year"));
|
|
|
+ $twoYearsAgo = date("Y", strtotime("-2 years"));
|
|
|
+
|
|
|
+ // 查询SQL,按月份分组计算
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.RQ, '%Y-%m') AS '日期',
|
|
|
+ ROUND(SUM(db.nBBSL) + SUM(db.nFourColorSL) + SUM(db.nnRotationSL)) AS '印刷实物产量色令数'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}' AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.RQ, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $list['categories'] = [];
|
|
|
+ $list['series'] = [
|
|
|
+ 0 => ['name' => $twoYearsAgo . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ 1 => ['name' => $lastYear . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ 2 => ['name' => $currentYear . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ ];
|
|
|
+
|
|
|
+ // 填充月份数据
|
|
|
+ foreach (range(1, 12) as $month) {
|
|
|
+ $list['categories'][] = str_pad($month, 2, '0', STR_PAD_LEFT); // 月份:01, 02, ..., 12
|
|
|
+ }
|
|
|
+ $currentMonth = date("m");
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ $yearMonth = $v['日期'];
|
|
|
+ $year = date('Y', strtotime($yearMonth));
|
|
|
+ $month = date('m', strtotime($yearMonth)) - 1; // 索引从0开始
|
|
|
+
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][$month] = $v['印刷实物产量色令数']; // 填充当前年数据
|
|
|
+ } elseif ($year == $lastYear) {
|
|
|
+ $list['series'][1]['data'][$month] = $v['印刷实物产量色令数']; // 填充去年数据
|
|
|
+ } elseif ($year == $twoYearsAgo) {
|
|
|
+ $list['series'][0]['data'][$month] = $v['印刷实物产量色令数']; // 填充前两年数据
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //某一年没有数据,填充为0
|
|
|
+ if (!isset($list['series'][1]['data'][$currentMonth - 1])) {
|
|
|
+ $list['series'][1]['data'][$currentMonth - 1] = 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //去年与当年--印刷实物产量色令->接口调用
|
|
|
+ public function yssl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yssl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //去年与当年--印刷实物产量纸令->缓存调用
|
|
|
+ public function yszl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yszl_redis');
|
|
|
+ //首先定义了起始时间和结束时间
|
|
|
+
|
|
|
+ $subQuery1_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjls')
|
|
|
+ ->whereIn('cbzmc', ['四色机2号(甲班)','四色机2号(乙班)','海德堡(甲班)',
|
|
|
+ '海德堡1号(甲班)','海德堡(乙班)','海德堡1号(乙班)','海德堡5+1 1号(甲班)',
|
|
|
+ '海德堡5+1 1号(乙班)','三菱机1(甲班)','三菱机1(乙班)','三菱机2(甲班)',
|
|
|
+ '三菱机2(乙班)','小森八色(甲班)','小森八色(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nzl')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['四色机02号','四色机02号机','海德堡01号',
|
|
|
+ '海德堡01号机','海德堡5+L 01号','海德堡5+L 01号机','三菱机01号',
|
|
|
+ '三菱机01号机','三菱机02号','三菱机02号机','小森八色01号',
|
|
|
+ '小森八色01号机','小森八色02号机']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery2_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjls')
|
|
|
+ ->whereIn('cbzmc', ['BB机1号(甲班)','BB机1号(乙班)','BB机2号(甲班)',
|
|
|
+ 'BB机2号(乙班)','BB机3号(甲班)','BB机3号(乙班)','BB机4号(甲班)','BB机4号(乙班)',
|
|
|
+ 'BB机5号(甲班)','BB机5号(乙班)',
|
|
|
+ 'BB机6号(甲班)','BB机6号(乙班)','05机1号(甲班)','05机1号(乙班)',
|
|
|
+ '海德堡SM1号机(甲班)','海德堡SM1号机(乙班)','海德堡SM2号机(甲班)','海德堡SM2号机(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nzl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['BB机01号','BB机02号','BB机04号','如钰01号机','如钰02号机',
|
|
|
+ 'BB机05号','BB机06号','海德堡SM1号','海德堡SM2号']);
|
|
|
+ }, true)->buildSql();
|
|
|
+ $subQuery3_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjls')
|
|
|
+ ->whereIn('cbzmc', ['小森LW-35(甲班)','小森LW-35(乙班)','小森2号机(甲班)',
|
|
|
+ '小森2号机(乙班)','大规小森3号机(甲班)','大规小森3号机(乙班)','三菱商轮(甲班)',
|
|
|
+ '三菱商轮(乙班)','三菱商轮2号(甲班)','三菱商轮2号(乙班)','204胶轮(甲班)',
|
|
|
+ '204胶轮(乙班)','V30(甲班)','V30(乙班)','报刊轮转(甲班)','报刊轮转(乙班)','高斯胶轮(甲班)','高斯胶轮(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nzl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['标规小森商轮1号',
|
|
|
+ '标规小森商轮2号','大规小森商轮1号','大规三菱商轮1号','标规三菱商轮1号',
|
|
|
+ '标规三菱商轮2号','标规204胶轮1号','大规海德堡1号','标规报轮1号','标规高斯轮转1号','标规高斯2号','大规高斯轮转1号','标规高斯轮转2号','标规北人轮转1号']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //四色机纸令合计
|
|
|
+ $subQuery1 = Db::table($subQuery1_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjls ) nFourColorSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ //BB机纸令合计
|
|
|
+ $subQuery2 = Db::table($subQuery2_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjls ) nBBSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ //轮转纸令合计
|
|
|
+ $subQuery3 = Db::table($subQuery3_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjls ) nnRotationSL ')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('DISTINCT A.RQ,h.nBBSL AS nBBSL,B.nFourColorSL AS nFourColorSL,P.nnRotationSL AS nnRotationSL')
|
|
|
+ ->join('(' . $subQuery1 . ') as B', ' A.RQ = B.rq','LEFT')
|
|
|
+ ->join('(' . $subQuery2 . ') as h', 'A.RQ = h.rq','LEFT')
|
|
|
+ ->join('(' . $subQuery3 . ') as P', 'A.RQ = P.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ // 获取当前年份和前两年的年份
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $lastYear = date("Y", strtotime("-1 year")); // 去年
|
|
|
+ $twoYearsAgo = date("Y", strtotime("-2 years")); // 前两年
|
|
|
+
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS '日期',
|
|
|
+ ROUND(SUM( db.nBBSL ) + SUM( db.nFourColorSL ) + SUM( db.nnRotationSL )) AS '印刷实物产量纸令数'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}' AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->select();
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12']; // 月份
|
|
|
+ $list['series'] = [
|
|
|
+ ['name' => $twoYearsAgo . '年', 'data' => array_fill(0, 12, 0)], // 初始化前两年的数据为0
|
|
|
+ ['name' => $lastYear . '年', 'data' => array_fill(0, 12, 0)], // 初始化去年的数据为0
|
|
|
+ ['name' => $currentYear . '年', 'data' => array_fill(0, 12, 0)], // 初始化今年的数据为0
|
|
|
+ ];
|
|
|
+ $currentMonth = date("m");
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 提取年份和月份
|
|
|
+ $yearMonth = $v['日期']; // 格式:YYYY-MM
|
|
|
+ $year = date('Y', strtotime($yearMonth)); // 提取年份
|
|
|
+ $month = date('m', strtotime($yearMonth)) - 1; // 月份(数组索引从0开始)
|
|
|
+
|
|
|
+ // 根据年份分配数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][$month] = $v['印刷实物产量纸令数']; // 填充今年数据
|
|
|
+ } elseif ($year == $lastYear) {
|
|
|
+ $list['series'][1]['data'][$month] = $v['印刷实物产量纸令数']; // 填充去年数据
|
|
|
+ } elseif ($year == $twoYearsAgo) {
|
|
|
+ $list['series'][0]['data'][$month] = $v['印刷实物产量纸令数']; // 填充前两年数据
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+
|
|
|
+ }
|
|
|
+ //去年与当年--印刷实物产量纸令->接口调用
|
|
|
+ public function yszl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yszl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //去年装订实物产量册数->缓存调用
|
|
|
+ public function zdcs2022(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('zdcs2022');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 精1乙
|
|
|
+ ")
|
|
|
+ ->whereIn('cjtmc', ['精装生产联动线','进口骑马联动','紫光骑马联动','紫光骑马联动(新)','恒山骑马联动'])
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 精11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->whereIn('cMachineName', ['精装联动线01号','骑马联动01号','骑马联动02号','骑马联动03号','骑马联动04号'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ IFNULL(sum(Bb1.精11乙), 0) + IFNULL((sum(B1.精1乙)), 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jp = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 精平册数
|
|
|
+ ")->where("db.RQ >= '{$this->qstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5乙,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11甲")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马77甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马77乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ IFNULL(B.马1甲, 0) + IFNULL(B1.马1乙, 0)
|
|
|
+ + IFNULL(C.马2甲, 0) + IFNULL(C1.马2乙, 0)
|
|
|
+ + IFNULL(D.马3甲, 0) + IFNULL(D1.马3乙, 0)
|
|
|
+ + IFNULL(E.马4甲, 0) + IFNULL(E1.马4乙, 0)
|
|
|
+ + IFNULL(f.马5甲, 0) + IFNULL(f1.马5乙, 0)
|
|
|
+ + IFNULL(Bb.马11甲, 0) + IFNULL(Bb1.马11乙, 0)
|
|
|
+ + IFNULL(cc.马22甲, 0) + IFNULL(cc1.马22乙, 0)
|
|
|
+ + IFNULL(ee.马33甲, 0) + IFNULL(ee1.马33乙, 0)
|
|
|
+ + IFNULL( hh.马44甲, 0) + IFNULL(hh1.马44乙, 0)
|
|
|
+ + IFNULL(xx.马55甲, 0) + IFNULL(xx1.马55乙, 0)
|
|
|
+ + IFNULL(xxx2.马66甲, 0) + IFNULL(xx2.马66乙, 0)
|
|
|
+ + IFNULL(xxx3.马77甲, 0) + IFNULL(xx3.马77乙, 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jd = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 无线胶订册数
|
|
|
+ ")->where("db.RQ >= '{$this->qstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ Sum(iWcl) AS '簿1甲'
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ Sum(iWcl) AS '簿1乙'
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ Sum(a.nAmount) AS '簿11甲'
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ Sum(a.nAmount) AS '簿11乙'
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ IFNULL(sum(B.簿1甲), 0) + IFNULL((sum(b1.簿1乙)), 0)
|
|
|
+ + IFNULL(sum(Bb.簿11甲), 0) + IFNULL((sum(Bb1.簿11乙)), 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', 'a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $bc = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 簿册册数
|
|
|
+ ")->where("db.RQ >= '{$this->qstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+
|
|
|
+ // 创建一个结果数组
|
|
|
+ $result=[];
|
|
|
+ $result1 = [];
|
|
|
+ // 遍历第一个数组,并将数据加入结果数组
|
|
|
+ foreach ($jp as $val1) {
|
|
|
+ $month = $val1['日期'];
|
|
|
+ $data1 = $val1['精平册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第一个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历第二个数组,并将数据加入结果数组
|
|
|
+ foreach ($jd as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['无线胶订册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($bc as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['簿册册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+ foreach($result1 as $k=>$v){
|
|
|
+ $list['categories'][]=$k;
|
|
|
+ $list['series'][0]['name']='装订实物产量册数';
|
|
|
+ $list['series'][0]['data'][]=$v;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($result1));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($result1);
|
|
|
+ }
|
|
|
+ //当年装订实物产量册数->缓存调用
|
|
|
+ public function zdcsclcs_dang(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('zdcsclcs_dang');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 精1乙
|
|
|
+ ")
|
|
|
+ ->whereIn('cjtmc', ['精装生产联动线','进口骑马联动','紫光骑马联动','紫光骑马联动(新)','恒山骑马联动'])
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 精11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->whereIn('cMachineName', ['精装联动线01号','骑马联动01号','骑马联动02号','骑马联动03号','骑马联动04号'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ IFNULL(sum(Bb1.精11乙), 0) + IFNULL((sum(B1.精1乙)), 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jp = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 精平册数
|
|
|
+ ")->where("db.RQ >= '{$this->start_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5乙,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11甲")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ // $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ // ->field("
|
|
|
+ // CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ // sum(a.nAmount) as 马77甲
|
|
|
+ // ")
|
|
|
+ // ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ // ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ // ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ // ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ // ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ // ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ // ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ // ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ // ->group("CASE
|
|
|
+ // WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ // ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ // END,Name_WorkGroup")
|
|
|
+ // ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ // $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ // ->field("
|
|
|
+ // CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ // sum(a.nAmount) as 马77乙
|
|
|
+ // ")
|
|
|
+ // ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ // ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ // ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ // ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ // ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ // ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ // ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ // ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ // ->group("CASE
|
|
|
+ // WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ // ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ // END,Name_WorkGroup")
|
|
|
+ // ->buildSql();
|
|
|
+
|
|
|
+ $JDJ4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马88甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $JDY4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马88乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ IFNULL(B.马1甲, 0) + IFNULL(B1.马1乙, 0)
|
|
|
+ + IFNULL(C.马2甲, 0) + IFNULL(C1.马2乙, 0)
|
|
|
+ + IFNULL(D.马3甲, 0) + IFNULL(D1.马3乙, 0)
|
|
|
+ + IFNULL(E.马4甲, 0) + IFNULL(E1.马4乙, 0)
|
|
|
+ + IFNULL(f.马5甲, 0) + IFNULL(f1.马5乙, 0)
|
|
|
+ + IFNULL(Bb.马11甲, 0) + IFNULL(Bb1.马11乙, 0)
|
|
|
+ + IFNULL(cc.马22甲, 0) + IFNULL(cc1.马22乙, 0)
|
|
|
+ + IFNULL(ee.马33甲, 0) + IFNULL(ee1.马33乙, 0)
|
|
|
+ + IFNULL( hh.马44甲, 0) + IFNULL(hh1.马44乙, 0)
|
|
|
+ + IFNULL(xx.马55甲, 0) + IFNULL(xx1.马55乙, 0)
|
|
|
+ + IFNULL(xxx2.马66甲, 0) + IFNULL(xx2.马66乙, 0)
|
|
|
+ + IFNULL(jdj4.马88甲, 0) + IFNULL(jdy4.马88乙, 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $JDJ4 . ') as jdj4', 'a.rq = jdj4.rq','LEFT')
|
|
|
+ ->join('(' . $JDY4 . ') as jdy4', 'a.rq = jdy4.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+ // print_r($db);die;
|
|
|
+
|
|
|
+ $jd = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 无线胶订册数
|
|
|
+ ")->where("db.RQ >= '{$this->start_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ Sum(iWcl) AS '簿1甲'
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ Sum(iWcl) AS '簿1乙'
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ Sum(a.nAmount) AS '簿11甲'
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ Sum(a.nAmount) AS '簿11乙'
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ IFNULL(sum(B.簿1甲), 0) + IFNULL((sum(b1.簿1乙)), 0)
|
|
|
+ + IFNULL(sum(Bb.簿11甲), 0) + IFNULL((sum(Bb1.簿11乙)), 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', 'a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $bc = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 簿册册数
|
|
|
+ ")->where("db.RQ >= '{$this->start_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+
|
|
|
+ // 创建一个结果数组
|
|
|
+ $result=[];
|
|
|
+ $result1 = [];
|
|
|
+ // 遍历第一个数组,并将数据加入结果数组
|
|
|
+ foreach ($jp as $val1) {
|
|
|
+ $month = $val1['日期'];
|
|
|
+ $data1 = $val1['精平册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第一个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历第二个数组,并将数据加入结果数组
|
|
|
+ foreach ($jd as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['无线胶订册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($bc as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['簿册册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+ foreach($result1 as $k=>$v){
|
|
|
+ $list['categories'][]=$k;
|
|
|
+ $list['series'][0]['name']='装订实物产量册数';
|
|
|
+ $list['series'][0]['data'][]=$v;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($result1));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($result1);
|
|
|
+ }
|
|
|
+ //前年装订实物产量册数->缓存调用
|
|
|
+ public function zdcsTwoYear(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('zdcsTwoYear');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 精1乙
|
|
|
+ ")
|
|
|
+ ->whereIn('cjtmc', ['精装生产联动线','进口骑马联动','紫光骑马联动','紫光骑马联动(新)','恒山骑马联动'])
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 精11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->whereIn('cMachineName', ['精装联动线01号','骑马联动01号','骑马联动02号','骑马联动03号','骑马联动04号'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ IFNULL(sum(Bb1.精11乙), 0) + IFNULL((sum(B1.精1乙)), 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jp = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 精平册数
|
|
|
+ ")->where("db.RQ >= '{$this->qianstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5乙,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11甲")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马77甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马77乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ IFNULL(B.马1甲, 0) + IFNULL(B1.马1乙, 0)
|
|
|
+ + IFNULL(C.马2甲, 0) + IFNULL(C1.马2乙, 0)
|
|
|
+ + IFNULL(D.马3甲, 0) + IFNULL(D1.马3乙, 0)
|
|
|
+ + IFNULL(E.马4甲, 0) + IFNULL(E1.马4乙, 0)
|
|
|
+ + IFNULL(f.马5甲, 0) + IFNULL(f1.马5乙, 0)
|
|
|
+ + IFNULL(Bb.马11甲, 0) + IFNULL(Bb1.马11乙, 0)
|
|
|
+ + IFNULL(cc.马22甲, 0) + IFNULL(cc1.马22乙, 0)
|
|
|
+ + IFNULL(ee.马33甲, 0) + IFNULL(ee1.马33乙, 0)
|
|
|
+ + IFNULL( hh.马44甲, 0) + IFNULL(hh1.马44乙, 0)
|
|
|
+ + IFNULL(xx.马55甲, 0) + IFNULL(xx1.马55乙, 0)
|
|
|
+ + IFNULL(xxx2.马66甲, 0) + IFNULL(xx2.马66乙, 0)
|
|
|
+ + IFNULL(xxx3.马77甲, 0) + IFNULL(xx3.马77乙, 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jd = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 无线胶订册数
|
|
|
+ ")->where("db.RQ >= '{$this->qianstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ Sum(iWcl) AS '簿1甲'
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ Sum(iWcl) AS '簿1乙'
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ Sum(a.nAmount) AS '簿11甲'
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ Sum(a.nAmount) AS '簿11乙'
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ IFNULL(sum(B.簿1甲), 0) + IFNULL((sum(b1.簿1乙)), 0)
|
|
|
+ + IFNULL(sum(Bb.簿11甲), 0) + IFNULL((sum(Bb1.簿11乙)), 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', 'a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $bc = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.总计册), 0) as 簿册册数
|
|
|
+ ")->where("db.RQ >= '{$this->qianstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+
|
|
|
+ // 创建一个结果数组
|
|
|
+ $result=[];
|
|
|
+ $result1 = [];
|
|
|
+ // 遍历第一个数组,并将数据加入结果数组
|
|
|
+ foreach ($jp as $val1) {
|
|
|
+ $month = $val1['日期'];
|
|
|
+ $data1 = $val1['精平册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第一个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历第二个数组,并将数据加入结果数组
|
|
|
+ foreach ($jd as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['无线胶订册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($bc as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['簿册册数'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+ foreach($result1 as $k=>$v){
|
|
|
+ $list['categories'][]=$k;
|
|
|
+ $list['series'][0]['name']='装订实物产量册数';
|
|
|
+ $list['series'][0]['data'][]=$v;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($result1));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($result1);
|
|
|
+ }
|
|
|
+ //装订实物产量册数 接口合并一起->接口调用
|
|
|
+ public function zdcs(){
|
|
|
+ $redis = redis();
|
|
|
+ $result_qian = json_decode($redis->get(md5('zdcsTwoYear')), true);
|
|
|
+ $result_qu = json_decode($redis->get(md5('zdcs2022')), true);
|
|
|
+ $result_dang = json_decode($redis->get(md5('zdcsclcs_dang')), true);
|
|
|
+
|
|
|
+ // Merge all data
|
|
|
+ $result1 = array_merge($result_qian, $result_qu, $result_dang);
|
|
|
+
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // Current year (2025)
|
|
|
+ $currentMonth = date("m"); // Current month (07)
|
|
|
+ $previousYear = $currentYear - 1; // 2024
|
|
|
+ $previousQianYear = $currentYear - 2; // 2023
|
|
|
+
|
|
|
+ // Initialize series with 0 values
|
|
|
+ $list['series'] = [
|
|
|
+ ['name' => $previousQianYear . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ ['name' => $previousYear . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ ['name' => $currentYear . '年', 'data' => array_fill(0, 12, 0)]
|
|
|
+ ];
|
|
|
+
|
|
|
+ foreach ($result1 as $k => $v) {
|
|
|
+ $yearMonth = explode('-', $k);
|
|
|
+ $year = $yearMonth[0];
|
|
|
+ $month = (int)$yearMonth[1];
|
|
|
+ $monthIndex = $month - 1;
|
|
|
+
|
|
|
+ if ($year == $previousQianYear) {
|
|
|
+ $list['series'][0]['data'][$monthIndex] += $v;
|
|
|
+ } elseif ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][$monthIndex] += $v;
|
|
|
+ } elseif ($year == $currentYear) {
|
|
|
+ // Only add if month is current or past month
|
|
|
+ if ($month <= (int)$currentMonth) {
|
|
|
+ $list['series'][2]['data'][$monthIndex] += $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ return json_encode($res, JSON_UNESCAPED_UNICODE);
|
|
|
+ }
|
|
|
+ // public function zdcs() {
|
|
|
+ // $redis = redis();
|
|
|
+
|
|
|
+ // $result_qian = json_decode($redis->get(md5('zdcsTwoYear')), true);
|
|
|
+ // $result_qu = json_decode($redis->get(md5('zdcs2022')), true);
|
|
|
+ // $result_dang = json_decode($redis->get(md5('zdcsclcs_dang')), true);
|
|
|
+
|
|
|
+ // // 合并三年的数据
|
|
|
+ // $result1 = array_merge($result_qian, $result_qu, $result_dang);
|
|
|
+
|
|
|
+ // $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ // $currentYear = date("Y"); // 当前年份
|
|
|
+ // $currentMonth = date("m"); // 当前月份
|
|
|
+ // $previousYear = $currentYear - 1; // 上一年
|
|
|
+ // $previousQianYear = $currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // // 初始化三个年份的数据数组,先填充0
|
|
|
+ // $list['series'][0]['name'] = $previousQianYear . '年';
|
|
|
+ // $list['series'][0]['data'] = array_fill(0, 12, 0);
|
|
|
+ // $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ // $list['series'][1]['data'] = array_fill(0, 12, 0);
|
|
|
+ // $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ // $list['series'][2]['data'] = array_fill(0, 12, 0);
|
|
|
+
|
|
|
+ // foreach ($result1 as $k => $v) {
|
|
|
+ // $yearMonth = explode('-', $k);
|
|
|
+ // $year = $yearMonth[0];
|
|
|
+ // $month = (int)$yearMonth[1];
|
|
|
+
|
|
|
+ // if ($year == $previousQianYear) {
|
|
|
+ // // 如果是前两年的数据,直接赋值
|
|
|
+ // $list['series'][0]['data'][$month - 1] = $v;
|
|
|
+ // } elseif ($year == $previousYear) {
|
|
|
+ // // 如果是去年的数据,直接赋值
|
|
|
+ // $list['series'][1]['data'][$month - 1] = $v;
|
|
|
+ // } elseif ($year == $currentYear && $month <= (int)$currentMonth) {
|
|
|
+ // // 如果是当前年份,并且月份不超过当前月份,则赋值
|
|
|
+ // $list['series'][2]['data'][$month - 1] = $v;
|
|
|
+ // }
|
|
|
+ // // 如果是当前年份但月份超过当前月份,则不处理,保持为0
|
|
|
+ // }
|
|
|
+
|
|
|
+ // $res['status'] = 0;
|
|
|
+ // $res['msg'] = '';
|
|
|
+ // $res['data'] = $list;
|
|
|
+ // return json_encode($res);
|
|
|
+ // }
|
|
|
+
|
|
|
+ //去年装订实物产量纸令->缓存调用
|
|
|
+ public function zdzl2022(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('zdzl2022');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 精1乙纸令数
|
|
|
+ ")
|
|
|
+ ->whereIn('cjtmc', ['精装生产联动线','进口骑马联动','紫光骑马联动','紫光骑马联动(新)','恒山骑马联动'])
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 精11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->whereIn('cMachineName', ['精装联动线01号','骑马联动01号','骑马联动02号','骑马联动03号','骑马联动04号'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(Bb1.精11乙纸令, 0) + IFNULL(B1.精1乙纸令数, 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $jp = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.纸令数总计), 0) as 精平纸令
|
|
|
+ ")->where("db.RQ >= '{$this->qstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE
|
|
|
+ WHEN c.nzdls < CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END
|
|
|
+ ) END ELSE 0 END
|
|
|
+ ELSE CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE WHEN c.nzdls <
|
|
|
+ CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END )
|
|
|
+ END ELSE 0 END ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END END ), 3) 马11甲纸令 ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $JDJ4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马88甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $JDY4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马88乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(sum(b.马1甲纸令数), 0) + IFNULL(sum(b1.马1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(C.马2甲纸令数), 0) + IFNULL(sum(C1.马2乙纸令数), 0)
|
|
|
+ + IFNULL(sum(D.马3甲纸令数), 0) + IFNULL(sum(D1.马3乙纸令数), 0)
|
|
|
+ + IFNULL(sum(E.马4甲纸令数), 0) + IFNULL(sum(E1.马4乙纸令数), 0)
|
|
|
+ + IFNULL(sum(f.马5甲纸令数), 0) + IFNULL(sum(f1.马5乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.马11甲纸令), 0) + IFNULL(sum(cc.马22甲纸令), 0)
|
|
|
+ + IFNULL(sum(ee.马33甲纸令), 0) + IFNULL(sum(hh.马44甲纸令), 0)
|
|
|
+ + IFNULL(sum(xx.马55甲纸令), 0) + IFNULL(sum(Bb1.马11乙纸令), 0)
|
|
|
+ + IFNULL(sum(cc1.马22乙纸令), 0) + IFNULL(sum(ee1.马33乙纸令), 0)
|
|
|
+ + IFNULL(sum(hh1.马44乙纸令), 0) + IFNULL(sum(xx1.马55乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx2.马66甲纸令), 0) + IFNULL(sum(xx2.马66乙纸令), 0)
|
|
|
+ + IFNULL(sum(JDJ4.马88甲纸令), 0) + IFNULL(sum(JDY4.马88乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx3.马77甲纸令), 0) + IFNULL(sum(xx3.马77乙纸令), 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->join('(' . $JDJ4 . ') as JDJ4', 'a.rq = JDJ4.rq','LEFT')
|
|
|
+ ->join('(' . $JDY4 . ') as JDY4', 'a.rq = JDY4.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jd = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(SUM(db.纸令数总计), 0) AS 无线胶订纸令
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qstart_time()}'AND db.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 簿册联动线纸令
|
|
|
+ */
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) AS 簿1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) AS 簿1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 簿11甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 簿11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ TRUNCATE(IFNULL(sum(B.簿1甲纸令数), 0) + IFNULL(sum(B1.簿1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.簿11甲纸令), 0) + IFNULL(sum(Bb1.簿11乙纸令), 0), 0) 纸令
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', 'a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $bc = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.纸令), 0) as 簿册纸令
|
|
|
+ ")->where("db.RQ >= '{$this->qstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ // 创建一个结果数组
|
|
|
+ $result=[];
|
|
|
+ $result1 = [];
|
|
|
+ // 遍历第一个数组,并将数据加入结果数组
|
|
|
+ foreach ($jp as $val1) {
|
|
|
+ $month = $val1['日期'];
|
|
|
+ $data1 = $val1['精平纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第一个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历第二个数组,并将数据加入结果数组
|
|
|
+ foreach ($jd as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['无线胶订纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($bc as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['簿册纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+ foreach($result1 as $k=>$v){
|
|
|
+ $list['categories'][]=$k;
|
|
|
+ $list['series'][0]['name']='装订实物产量色令数';
|
|
|
+ $list['series'][0]['data'][]=$v;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($result1));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($result1);
|
|
|
+ }
|
|
|
+ //当年装订实物产量纸令->缓存调用
|
|
|
+ public function zdzl_dang(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('zdzl_dang');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 精1乙纸令数
|
|
|
+ ")
|
|
|
+ ->whereIn('cjtmc', ['精装生产联动线','进口骑马联动','紫光骑马联动','紫光骑马联动(新)','恒山骑马联动'])
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 精11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->whereIn('cMachineName', ['精装联动线01号','骑马联动01号','骑马联动02号','骑马联动03号','骑马联动04号'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(Bb1.精11乙纸令, 0) + IFNULL(B1.精1乙纸令数, 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $jp = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.纸令数总计), 0) as 精平纸令
|
|
|
+ ")->where("db.RQ >= '{$this->start_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE
|
|
|
+ WHEN c.nzdls < CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END
|
|
|
+ ) END ELSE 0 END
|
|
|
+ ELSE CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE WHEN c.nzdls <
|
|
|
+ CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END )
|
|
|
+ END ELSE 0 END ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END END ), 3) 马11甲纸令 ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $JDJ4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马88甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $JDY4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马88乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(sum(b.马1甲纸令数), 0) + IFNULL(sum(b1.马1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(C.马2甲纸令数), 0) + IFNULL(sum(C1.马2乙纸令数), 0)
|
|
|
+ + IFNULL(sum(D.马3甲纸令数), 0) + IFNULL(sum(D1.马3乙纸令数), 0)
|
|
|
+ + IFNULL(sum(E.马4甲纸令数), 0) + IFNULL(sum(E1.马4乙纸令数), 0)
|
|
|
+ + IFNULL(sum(f.马5甲纸令数), 0) + IFNULL(sum(f1.马5乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.马11甲纸令), 0) + IFNULL(sum(cc.马22甲纸令), 0)
|
|
|
+ + IFNULL(sum(ee.马33甲纸令), 0) + IFNULL(sum(hh.马44甲纸令), 0)
|
|
|
+ + IFNULL(sum(xx.马55甲纸令), 0) + IFNULL(sum(Bb1.马11乙纸令), 0)
|
|
|
+ + IFNULL(sum(cc1.马22乙纸令), 0) + IFNULL(sum(ee1.马33乙纸令), 0)
|
|
|
+ + IFNULL(sum(hh1.马44乙纸令), 0) + IFNULL(sum(xx1.马55乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx2.马66甲纸令), 0) + IFNULL(sum(xx2.马66乙纸令), 0)
|
|
|
+ + IFNULL(sum(jdj4.马88甲纸令), 0) + IFNULL(sum(jdy4.马88乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx3.马77甲纸令), 0) + IFNULL(sum(xx3.马77乙纸令), 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->join('(' . $JDJ4 . ') as jdj4', 'a.rq = jdj4.rq','LEFT')
|
|
|
+ ->join('(' . $JDY4 . ') as jdy4', 'a.rq = jdy4.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jd = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(SUM(db.纸令数总计), 0) AS 无线胶订纸令
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->start_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 簿册联动线纸令
|
|
|
+ */
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) AS 簿1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) AS 簿1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 簿11甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 簿11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ TRUNCATE(IFNULL(sum(B.簿1甲纸令数), 0) + IFNULL(sum(B1.簿1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.簿11甲纸令), 0) + IFNULL(sum(Bb1.簿11乙纸令), 0), 0) 纸令
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', 'a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $bc = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.纸令), 0) as 簿册纸令
|
|
|
+ ")->where("db.RQ >= '{$this->start_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ // 创建一个结果数组
|
|
|
+ $result=[];
|
|
|
+ $result1 = [];
|
|
|
+ // 遍历第一个数组,并将数据加入结果数组
|
|
|
+ foreach ($jp as $val1) {
|
|
|
+ $month = $val1['日期'];
|
|
|
+ $data1 = $val1['精平纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第一个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历第二个数组,并将数据加入结果数组
|
|
|
+ foreach ($jd as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['无线胶订纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($bc as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['簿册纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+ foreach($result1 as $k=>$v){
|
|
|
+ $list['categories'][]=$k;
|
|
|
+ $list['series'][0]['name']='装订实物产量色令数';
|
|
|
+ $list['series'][0]['data'][]=$v;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($result1));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($result1);
|
|
|
+ }
|
|
|
+ //前年装订实物产量纸令->缓存调用
|
|
|
+ public function zdzlTwoYear(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('zdzlTwoYear');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 精1乙纸令数
|
|
|
+ ")
|
|
|
+ ->whereIn('cjtmc', ['精装生产联动线','进口骑马联动','紫光骑马联动','紫光骑马联动(新)','恒山骑马联动'])
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 精11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->whereIn('cMachineName', ['精装联动线01号','骑马联动01号','骑马联动02号','骑马联动03号'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(Bb1.精11乙纸令, 0) + IFNULL(B1.精1乙纸令数, 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $jp = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.纸令数总计), 0) as 精平纸令
|
|
|
+ ")->where("db.RQ >= '{$this->start_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE
|
|
|
+ WHEN c.nzdls < CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END
|
|
|
+ ) END ELSE 0 END
|
|
|
+ ELSE CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE WHEN c.nzdls <
|
|
|
+ CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END )
|
|
|
+ END ELSE 0 END ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END END ), 3) 马11甲纸令 ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(sum(b.马1甲纸令数), 0) + IFNULL(sum(b1.马1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(C.马2甲纸令数), 0) + IFNULL(sum(C1.马2乙纸令数), 0)
|
|
|
+ + IFNULL(sum(D.马3甲纸令数), 0) + IFNULL(sum(D1.马3乙纸令数), 0)
|
|
|
+ + IFNULL(sum(E.马4甲纸令数), 0) + IFNULL(sum(E1.马4乙纸令数), 0)
|
|
|
+ + IFNULL(sum(f.马5甲纸令数), 0) + IFNULL(sum(f1.马5乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.马11甲纸令), 0) + IFNULL(sum(cc.马22甲纸令), 0)
|
|
|
+ + IFNULL(sum(ee.马33甲纸令), 0) + IFNULL(sum(hh.马44甲纸令), 0)
|
|
|
+ + IFNULL(sum(xx.马55甲纸令), 0) + IFNULL(sum(Bb1.马11乙纸令), 0)
|
|
|
+ + IFNULL(sum(cc1.马22乙纸令), 0) + IFNULL(sum(ee1.马33乙纸令), 0)
|
|
|
+ + IFNULL(sum(hh1.马44乙纸令), 0) + IFNULL(sum(xx1.马55乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx2.马66甲纸令), 0) + IFNULL(sum(xx2.马66乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx3.马77甲纸令), 0) + IFNULL(sum(xx3.马77乙纸令), 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $jd = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(SUM(db.纸令数总计), 0) AS 无线胶订纸令
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 簿册联动线纸令
|
|
|
+ */
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) AS 簿1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) AS 簿1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cbanzu','=','簿册机1号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 簿11甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 簿11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID = a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','簿册联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','簿册联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ TRUNCATE(IFNULL(sum(B.簿1甲纸令数), 0) + IFNULL(sum(B1.簿1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.簿11甲纸令), 0) + IFNULL(sum(Bb1.簿11乙纸令), 0), 0) 纸令
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', 'a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $bc = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as 日期,
|
|
|
+ ROUND(sum(db.纸令), 0) as 簿册纸令
|
|
|
+ ")->where("db.RQ >= '{$this->qianstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->qianend_time()}' ")
|
|
|
+ ->group('MONTH(db.rq)')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ // 创建一个结果数组
|
|
|
+ $result=[];
|
|
|
+ $result1 = [];
|
|
|
+ // 遍历第一个数组,并将数据加入结果数组
|
|
|
+ foreach ($jp as $val1) {
|
|
|
+ $month = $val1['日期'];
|
|
|
+ $data1 = $val1['精平纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第一个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ // 遍历第二个数组,并将数据加入结果数组
|
|
|
+ foreach ($jd as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['无线胶订纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach ($bc as $val2) {
|
|
|
+ $month = $val2['日期'];
|
|
|
+ $data1 = $val2['簿册纸令'];
|
|
|
+
|
|
|
+ if (!isset($result[$month])) {
|
|
|
+ $result[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!isset($result1[$month])) {
|
|
|
+ $result1[$month] = 0; // 初始化结果数组中该月份的数据为0
|
|
|
+ }
|
|
|
+
|
|
|
+ $result1[$month] += $data1; // 累加第二个数组的数据
|
|
|
+ }
|
|
|
+ foreach($result1 as $k=>$v){
|
|
|
+ $list['categories'][]=$k;
|
|
|
+ $list['series'][0]['name']='装订实物产量色令数';
|
|
|
+ $list['series'][0]['data'][]=$v;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($result1));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($result1);
|
|
|
+ }
|
|
|
+ //去年与当年--装订实物产量纸令 接口合并一起->接口调用
|
|
|
+ public function zdzl(){
|
|
|
+ $redis = redis();
|
|
|
+ $result_qian = json_decode($redis->get(md5('zdzlTwoYear')), true);
|
|
|
+ $result_qu = json_decode($redis->get(md5('zdzl2022')), true);
|
|
|
+ $result_dang = json_decode($redis->get(md5('zdzl_dang')), true);
|
|
|
+
|
|
|
+ // Merge all data
|
|
|
+ $result1 = array_merge($result_qian, $result_qu, $result_dang);
|
|
|
+
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // Current year (2025)
|
|
|
+ $currentMonth = date("m"); // Current month (07)
|
|
|
+ $previousYear = $currentYear - 1; // 2024
|
|
|
+ $previousQianYear = $currentYear - 2; // 2023
|
|
|
+
|
|
|
+ // Initialize series with 0 values
|
|
|
+ $list['series'] = [
|
|
|
+ ['name' => $previousQianYear . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ ['name' => $previousYear . '年', 'data' => array_fill(0, 12, 0)],
|
|
|
+ ['name' => $currentYear . '年', 'data' => array_fill(0, 12, 0)]
|
|
|
+ ];
|
|
|
+
|
|
|
+ foreach ($result1 as $k => $v) {
|
|
|
+ $yearMonth = explode('-', $k);
|
|
|
+ $year = $yearMonth[0];
|
|
|
+ $month = (int)$yearMonth[1];
|
|
|
+ $monthIndex = $month - 1;
|
|
|
+
|
|
|
+ if ($year == $previousQianYear) {
|
|
|
+ $list['series'][0]['data'][$monthIndex] += $v;
|
|
|
+ } elseif ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][$monthIndex] += $v;
|
|
|
+ } elseif ($year == $currentYear) {
|
|
|
+ // Only add if month is current or past month
|
|
|
+ if ($month <= (int)$currentMonth) {
|
|
|
+ $list['series'][2]['data'][$monthIndex] += $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ return json_encode($res, JSON_UNESCAPED_UNICODE);
|
|
|
+ }
|
|
|
+
|
|
|
+ //年度承接量及完成百分比->缓存调用
|
|
|
+ public function ndcj_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('ndcj_redis');
|
|
|
+ $name='年度承接产量(万色令)';
|
|
|
+ $yu=Db::name('business')->where('name',$name)->value('year_target');
|
|
|
+// 修正前
|
|
|
+// $result = Db::query("SELECT
|
|
|
+// round( M.总色令/$yu*100,0) 色令百分比,round( m.总色令) 色令,$yu 常量, year(M.rq) 年度
|
|
|
+// FROM (SELECT t5.rq as rq,sum(t5.sl)/10000 as 总色令,sum(t5.zl) as 总纸令 FROM ( SELECT DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl
|
|
|
+// FROM `mcyd` `ord` LEFT JOIN (( SELECT icydid,sum(nyssl) as nyssl,sum(nysls) as nysls
|
|
|
+// FROM `scyddx` `objmatier` GROUP BY `icydid` )) as objmatier ON `ord`.`icydid`=`objmatier`.`icydid`
|
|
|
+// WHERE `ord`.`icydstate` > 0 GROUP BY `rq` ) t5 WHERE ( t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' )
|
|
|
+// GROUP BY year(t5.rq) ) M");
|
|
|
+ //修正后
|
|
|
+ $result = Db::query("SELECT
|
|
|
+ round( M.总色令/$yu*100,0) 色令百分比,round( m.总色令) 色令,$yu 常量, M.年度
|
|
|
+ FROM (SELECT YEAR(t5.rq) as 年度,sum(t5.sl)/10000 as 总色令,sum(t5.zl) as 总纸令 FROM ( SELECT DATE_FORMAT( dcyrq, '%Y-%m-%d' ) as rq,sum(objmatier.nyssl) as sl,sum(objmatier.nysls) as zl
|
|
|
+ FROM `mcyd` `ord` LEFT JOIN (( SELECT icydid,sum(nyssl) as nyssl,sum(nysls) as nysls
|
|
|
+ FROM `scyddx` `objmatier` GROUP BY `icydid` )) as objmatier ON `ord`.`icydid`=`objmatier`.`icydid`
|
|
|
+ WHERE `ord`.`icydstate` > 0 GROUP BY `rq` ) t5 WHERE ( t5.RQ >= '{$this->start_time()}'AND t5.RQ <= '{$this->end_time()}' )
|
|
|
+ GROUP BY year(t5.rq) ) M");
|
|
|
+
|
|
|
+ foreach ($result as $v) {
|
|
|
+ $list[0]['name'] = ' ';
|
|
|
+ $list[0]['value'] = round($v['色令']);
|
|
|
+ $list[1]['name'] = ' ';
|
|
|
+ $list[1]['value'] = round($v['常量']);
|
|
|
+ $list[2]['name'] = ' ';
|
|
|
+ $list[2]['value'] = round($v['色令百分比']);
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //年度承接量及完成百分比->接口调用
|
|
|
+ public function ndcj(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('ndcj_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //年度完成实物产量->缓存调用
|
|
|
+ public function wcsw_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('wcsw_redis');
|
|
|
+ $name='年度完成实物产量(万色令)';
|
|
|
+ $yu=Db::name('business')->where('name',$name)->value('year_target');
|
|
|
+ $result = Db::query("SELECT
|
|
|
+ round(sum(m.`印刷实物产量色令数`)/$yu*100,0) 完成率,round(sum(m.`印刷实物产量色令数`)) 色令数求和,$yu 常量
|
|
|
+ from (SELECT ROUND((SUM( db.nBBSL )+SUM( db.nFourColorSL )+SUM( db.nnRotationSL ))/10000,2) AS '印刷实物产量色令数'
|
|
|
+ FROM (SELECT DISTINCT A.RQ,h.nBBSL AS nBBSL,B.nFourColorSL AS nFourColorSL,P.nnRotationSL AS nnRotationSL
|
|
|
+ FROM (SELECT DISTINCT drptrq AS RQ FROM `bzysdayrpt` UNION ( SELECT DISTINCT b.dOnduty FROM `ql_report_feedback_day` `a`
|
|
|
+ INNER JOIN `scdayrpt_teams` `b` ON `b`.`ID`=`a`.`ID_Teams` ) )A LEFT JOIN (( SELECT rq,SUM( iSjys ) nFourColorsTotal,COUNT( 1 ) nFourColorPZ, SUM( fsjsl ) nFourColorSL
|
|
|
+ FROM ( SELECT drptrq AS rq,`iSjys`,`fsjsl` FROM `bzysdayrpt` WHERE `cbzmc` IN ('四色机2号(甲班)','四色机2号(乙班)','海德堡(甲班)','海德堡1号(甲班)','海德堡(乙班)','海德堡1号(乙班)','海德堡5+1 1号(甲班)','海德堡5+1 1号(乙班)','三菱机1(甲班)','三菱机1(乙班)','三菱机2(甲班)','三菱机2(乙班)','小森八色(甲班)','小森八色(乙班)')
|
|
|
+ UNION ALL ( SELECT `b`.`dOnduty`,`a`.`nAmount`,`a`.`nsl` FROM `ql_report_feedback_day` `a` INNER JOIN `scdayrpt_teams` `b` ON `b`.`ID`=`a`.`ID_Teams`
|
|
|
+ WHERE `cMachineName` IN ('四色机02号','四色机02号机','海德堡01号','海德堡01号机','海德堡5+L 01号','海德堡5+L 01号机','三菱机01号','三菱机01号机','三菱机02号','三菱机02号机','小森八色01号','小森八色01号机','小森八色02号机') ) )T
|
|
|
+ GROUP BY `rq` )) as B ON `A`.`RQ`=`B`.`rq` LEFT JOIN (( SELECT rq,SUM( iSjys ) nBBTotal,COUNT( 1 ) nBBPZ,SUM( fsjsl ) nBBSL
|
|
|
+ FROM ( SELECT drptrq AS rq,`iSjys`,`fsjsl` FROM `bzysdayrpt` WHERE `cbzmc` IN ('BB机1号(甲班)','BB机1号(乙班)','BB机2号(甲班)','BB机2号(乙班)','BB机3号(甲班)','BB机3号(乙班)','BB机4号(甲班)','BB机4号(乙班)','BB机5号(甲班)','BB机5号(乙班)','BB机6号(甲班)','BB机6号(乙班)','05机1号(甲班)','05机1号(乙班)','海德堡SM1号机(甲班)','海德堡SM1号机(乙班)','海德堡SM2号机(甲班)','海德堡SM2号机(乙班)')
|
|
|
+ UNION ALL ( SELECT `b`.`dOnduty`,`a`.`nAmount`,`a`.`nsl` FROM `ql_report_feedback_day` `a` INNER JOIN `scdayrpt_teams` `b` ON `b`.`ID`=`a`.`ID_Teams`
|
|
|
+ WHERE `cMachineName` IN ('如钰01号机','如钰02号机','BB机01号','BB机02号','BB机04号','BB机05号','BB机06号','海德堡SM1号','海德堡SM2号') ) )T
|
|
|
+ GROUP BY `rq` )) as h ON `A`.`RQ`=`h`.`rq` LEFT JOIN (( SELECT rq,SUM( iSjys ) nRotationTotal,COUNT( 1 ) nRotationPZ,SUM( fsjsl ) nnRotationSL
|
|
|
+ FROM ( SELECT drptrq AS rq,`iSjys`,`fsjsl` FROM `bzysdayrpt` WHERE `cbzmc` IN ('小森LW-35(甲班)','小森LW-35(乙班)','小森2号机(甲班)','小森2号机(乙班)','大规小森3号机(甲班)','大规小森3号机(乙班)','三菱商轮(甲班)','三菱商轮(乙班)','三菱商轮2号(甲班)','三菱商轮2号(乙班)','204胶轮(甲班)','204胶轮(乙班)','V30(甲班)','V30(乙班)','报刊轮转(甲班)','报刊轮转(乙班)')
|
|
|
+ UNION ALL ( SELECT `b`.`dOnduty`,`a`.`nAmount`,`a`.`nsl` FROM `ql_report_feedback_day` `a` INNER JOIN `scdayrpt_teams` `b` ON `b`.`ID`=`a`.`ID_Teams`
|
|
|
+ WHERE `cMachineName` IN ('标规小森商轮1号','标规小森商轮2号','大规小森商轮1号','大规三菱商轮1号','标规三菱商轮1号','标规三菱商轮2号','标规204胶轮1号','大规海德堡1号','标规报轮1号','标规高斯轮转1号','标规高斯轮转2号','大规高斯轮转1号','标规北人轮转1号') ) )T
|
|
|
+ GROUP BY `rq` )) as P ON `A`.`RQ`=`P`.`rq` ) db WHERE db.RQ >= '{$this->start_time()}'AND db.RQ <= '{$this->end_time()}' ) m");
|
|
|
+// GROUP BY `rq` )) as P ON `A`.`RQ`=`P`.`rq` ) db WHERE (db.RQ >= '{$this->start_time()}'AND db.RQ <= '{$this->end_time()}')
|
|
|
+// GROUP BY MONTH(db.RQ) ORDER BY `db`.`RQ` ASC ) m");
|
|
|
+ if($result){
|
|
|
+ foreach ($result as $v) {
|
|
|
+ $list[0]['name'] = ' ';
|
|
|
+ $list[0]['value'] = round($v['色令数求和']);
|
|
|
+ $list[1]['name'] = ' ';
|
|
|
+ $list[1]['value'] = round($v['常量']);
|
|
|
+ $list[2]['name'] = ' ';
|
|
|
+ $list[2]['value'] = round($v['完成率']);
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //年度完成实物产量->接口调用
|
|
|
+ public function wcsw(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('wcsw_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+// return $redis_data;
|
|
|
+// die;
|
|
|
+ $redis=redis();
|
|
|
+ // $redis_key = md5('wcsw_redis');
|
|
|
+// $redis_key = md5('yssl_redis');
|
|
|
+// $redis_data = $redis->get($redis_key);
|
|
|
+// $result=json_decode($redis_data,true)['data']['series'][1]['data'];
|
|
|
+ $result = json_decode($redis->get(md5('yssl_redis')),true)['data']['series'][1]['data'];
|
|
|
+ $name='年度完成实物产量(万色令)';
|
|
|
+ $yu=Db::name('business')->where('name',$name)->value('year_target');
|
|
|
+ $num=0;
|
|
|
+ foreach($result as $v){
|
|
|
+ $num+=$v;
|
|
|
+ }
|
|
|
+ $num=$num/10000;
|
|
|
+ $list[0]['name'] = ' ';
|
|
|
+ $list[0]['value'] = round($num);
|
|
|
+ $list[1]['name'] = ' ';
|
|
|
+ $list[1]['value'] = round($yu);
|
|
|
+ $list[2]['name'] = ' ';
|
|
|
+ $list[2]['value'] = round($num/$yu*100);
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ return json_encode($res);
|
|
|
+ // return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //年度销售额及百分比->缓存调用
|
|
|
+ public function ndxs_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('ndxs_redis');
|
|
|
+ $name='年度销售额(万元)';
|
|
|
+ $yu=Db::name('business')->where('name',$name)->value('year_target');
|
|
|
+ //修改前
|
|
|
+// $result = Db::query("SELECT round( m.sum_nwshjje/10000/$yu*100,0) 销售收入百分比,round( m.sum_nwshjje/10000 ) 销售收入,$yu 常量
|
|
|
+// FROM(SELECT SUM( zb.sum_nwshjje ) sum_nwshjje,DCYRQ
|
|
|
+// FROM(SELECT MCYD.DCYRQ AS DCYRQ,CASE WHEN ldz = 1 THEN TJob.namount ELSE MCYD.nwshjje END sum_nwshjje,MCYD.icydid
|
|
|
+// FROM MCYD LEFT JOIN TJob ON MCYD.ICYDID = TJob.iCydid WHERE MCYD.ICYDSTATE > 0 ) zb
|
|
|
+// WHERE zb.DCYRQ >= '{$this->start_time()}' AND zb.DCYRQ <= '{$this->end_time()}'
|
|
|
+// GROUP BY YEAR ( zb.DCYRQ ) ) M
|
|
|
+// GROUP BY YEAR (DCYRQ),( m.sum_nwshjje )");
|
|
|
+ //修改后
|
|
|
+ $result = Db::query("
|
|
|
+SELECT
|
|
|
+ round( m.total/10000/$yu*100,0) 销售收入百分比,
|
|
|
+ round( m.total/10000 ) 销售收入,
|
|
|
+ $yu 常量
|
|
|
+FROM(
|
|
|
+ SELECT SUM(year_total) AS total
|
|
|
+ FROM(
|
|
|
+ SELECT SUM( zb.sum_nwshjje ) AS year_total
|
|
|
+ FROM(
|
|
|
+ SELECT
|
|
|
+ MCYD.DCYRQ AS DCYRQ,
|
|
|
+ CASE WHEN ldz = 1 THEN TJob.namount ELSE MCYD.nwshjje END sum_nwshjje
|
|
|
+ FROM MCYD
|
|
|
+ LEFT JOIN TJob ON MCYD.ICYDID = TJob.iCydid
|
|
|
+ WHERE MCYD.ICYDSTATE > 0
|
|
|
+ ) zb
|
|
|
+ WHERE zb.DCYRQ >= '{$this->start_time()}' AND zb.DCYRQ <= '{$this->end_time()}'
|
|
|
+ GROUP BY YEAR(zb.DCYRQ)
|
|
|
+ ) t
|
|
|
+) m
|
|
|
+");
|
|
|
+
|
|
|
+ foreach ($result as $v) {
|
|
|
+ $list[0]['name'] = ' ';
|
|
|
+ $list[0]['value'] = round($v['销售收入']);
|
|
|
+ $list[1]['name'] = ' ';
|
|
|
+ $list[1]['value'] = round($v['常量']);
|
|
|
+ $list[2]['name'] = ' ';
|
|
|
+ $list[2]['value'] = round($v['销售收入百分比']);
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //年度销售额及百分比->接口调用
|
|
|
+ public function ndxs(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('ndxs_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //当年业务模块百分比->缓存调用
|
|
|
+ public function yewujg2023_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yewujg2023_redis');
|
|
|
+ function buildSqlQuery($table, $joinTable, $joinCondition, $field, $groupBy) {
|
|
|
+
|
|
|
+ $tj = Db::table('tjob')
|
|
|
+ ->field('icydid, CONVERT(sum(tjob.nclje * 100 / (100 + tjob.itax)), DECIMAL(10,2)) AS sum_clje')
|
|
|
+ ->group('icydid, ldz, nclje, itax')
|
|
|
+ ->where('lzfbs', '=', 0)->buildSql();
|
|
|
+
|
|
|
+ return Db::table($table)->alias('ord')
|
|
|
+ ->field($field)
|
|
|
+ ->join('(' . $joinTable . ') as ObjMatier', $joinCondition, 'LEFT')
|
|
|
+ ->join('(' . $tj . ') as tj', 'tj.icydid = ord.icydid', 'LEFT')
|
|
|
+ ->where('ord.icydstate', '>', 0)
|
|
|
+ ->where($groupBy)
|
|
|
+ ->buildSql();
|
|
|
+ }
|
|
|
+
|
|
|
+ $a = Db::table('mcyd')->field("DATE_FORMAT(dcyrq, '%Y-%m-%d') AS dcyrq")->buildSql();
|
|
|
+
|
|
|
+ $ObjMatier = Db::table('scyddx')
|
|
|
+ ->field('icydid, sum(nyssl) AS nyssl, sum(nysls) AS nysls, sum(nsyl) AS nsyl')
|
|
|
+ ->group('icydid')->buildSql();
|
|
|
+
|
|
|
+ $dd = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy IN ('集团期刊', '社会期刊')");
|
|
|
+ $tq = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '集团出版社'");
|
|
|
+ $tt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '集团教材内' AND CYWDWMC = '浙江出版传媒股份有限公司'");
|
|
|
+ $ttt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '集团教材外'");
|
|
|
+ $tttt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nysls AS nysls,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '外贸订单'");
|
|
|
+ $ttttt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0");
|
|
|
+
|
|
|
+ // 期刊色令
|
|
|
+ $t = Db::table($dd . ' dd')
|
|
|
+ ->field("DATE_FORMAT(dd.cyrq, '%Y-%m-%d') AS cyrq, sum(dd.nyssl) AS 期刊色令")
|
|
|
+ ->group('dd.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 集团出版社色令
|
|
|
+ $t1 = Db::table($tq . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 集团出版社色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 集团教材内色令
|
|
|
+ $t2 = Db::table($tt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 集团教材内色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 集团教材外色令
|
|
|
+ $t3 = Db::table($ttt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 集团教材外色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 外贸订单纸令、外贸订单色令
|
|
|
+ $t4 = Db::table($tttt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nysls) 外贸订单纸令, sum(t.nyssl) AS 外贸订单色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 总色令
|
|
|
+ $t5 = Db::table($ttttt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 总色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($a . ' a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT a.dcyrq AS dcyrq,
|
|
|
+ t.期刊色令 AS 期刊色令,
|
|
|
+ t1.集团出版社色令 AS 集团出版社色令,
|
|
|
+ t2.集团教材内色令 AS 集团教材内色令,
|
|
|
+ t3.集团教材外色令 AS 集团教材外色令,
|
|
|
+ t4.外贸订单色令 AS 外贸订单色令,
|
|
|
+ t4.外贸订单纸令 AS 外贸订单纸令,
|
|
|
+ t5.总色令 AS 总色令"
|
|
|
+ )
|
|
|
+ ->join('(' . $t . ') as t', 't.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t1 . ') as t1', 't1.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t2 . ') as t2', 't2.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t3 . ') as t3', 't3.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t4 . ') as t4', 't4.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t5 . ') as t5', 't5.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->group('date(a.dcyrq)')->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.集团出版社色令) * 100 / (SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0))) AS DECIMAL(10, 2)))) AS 系统图书,
|
|
|
+
|
|
|
+
|
|
|
+ CONCAT(LTRIM(CAST(((SUM(db.总色令) - IFNULL(SUM(db.期刊色令), 0) - IFNULL(SUM(db.集团出版社色令), 0) - IFNULL(SUM(db.集团教材内色令), 0) -
|
|
|
+ IFNULL(SUM(db.集团教材外色令), 0) - IFNULL(SUM(db.外贸订单色令), 0)) * 100 / NULLIF((SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0)), 0))
|
|
|
+ AS DECIMAL(10, 2)))) AS 社会图书,
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.外贸订单色令) * 100 / NULLIF((SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0)), 0)) AS DECIMAL(10, 2)))) AS 外贸板块,
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.期刊色令) * 100 / (SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0))) AS DECIMAL(10, 2)))) AS 期刊板块,
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.集团教材内色令) * 100 / (SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0))) AS DECIMAL(10, 2)))) AS 教材板块
|
|
|
+ ")
|
|
|
+ ->whereTime('dcyrq', 'between', [$this->start_time(), $this->end_time()])
|
|
|
+ ->group('year(db.dcyrq)')->find();
|
|
|
+ $i=0;
|
|
|
+ foreach($sql_final as $v){
|
|
|
+ $list[$i]['name']=' ';
|
|
|
+ $list[$i]['value']=round($v);
|
|
|
+ $i++;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //当年业务模块百分比->接口调用
|
|
|
+ public function yewujg2023(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yewujg2023_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //去年业务模块百分比->缓存调用
|
|
|
+ public function yewujg2022_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yewujg2022_redis');
|
|
|
+ function buildSqlQuery($table, $joinTable, $joinCondition, $field, $groupBy) {
|
|
|
+
|
|
|
+ $tj = Db::table('tjob')
|
|
|
+ ->field('icydid, CONVERT(sum(tjob.nclje * 100 / (100 + tjob.itax)), DECIMAL(10,2)) AS sum_clje')
|
|
|
+ ->group('icydid, ldz, nclje, itax')
|
|
|
+ ->where('lzfbs', '=', 0)->buildSql();
|
|
|
+
|
|
|
+ return Db::table($table)->alias('ord')
|
|
|
+ ->field($field)
|
|
|
+ ->join('(' . $joinTable . ') as ObjMatier', $joinCondition, 'LEFT')
|
|
|
+ ->join('(' . $tj . ') as tj', 'tj.icydid = ord.icydid', 'LEFT')
|
|
|
+ ->where('ord.icydstate', '>', 0)
|
|
|
+ ->where($groupBy)
|
|
|
+ ->buildSql();
|
|
|
+ }
|
|
|
+
|
|
|
+ $a = Db::table('mcyd')->field("DATE_FORMAT(dcyrq, '%Y-%m-%d') AS dcyrq")->buildSql();
|
|
|
+
|
|
|
+ $ObjMatier = Db::table('scyddx')
|
|
|
+ ->field('icydid, sum(nyssl) AS nyssl, sum(nysls) AS nysls, sum(nsyl) AS nsyl')
|
|
|
+ ->group('icydid')->buildSql();
|
|
|
+
|
|
|
+ $dd = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy IN ('集团期刊', '社会期刊')");
|
|
|
+ $tq = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '集团出版社'");
|
|
|
+ $tt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '集团教材内' AND CYWDWMC = '浙江出版传媒股份有限公司'");
|
|
|
+ $ttt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '集团教材外'");
|
|
|
+ $tttt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nysls AS nysls,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0 AND chy = '外贸订单'");
|
|
|
+ $ttttt = buildSqlQuery('mcyd', $ObjMatier, 'ObjMatier.icydid = ord.icydid', "
|
|
|
+ DATE_FORMAT(dcyrq, '%Y-%m-%d') AS cyrq,
|
|
|
+ ObjMatier.nyssl AS nyssl", "ord.icydstate > 0");
|
|
|
+
|
|
|
+ // 期刊色令
|
|
|
+ $t = Db::table($dd . ' dd')
|
|
|
+ ->field("DATE_FORMAT(dd.cyrq, '%Y-%m-%d') AS cyrq, sum(dd.nyssl) AS 期刊色令")
|
|
|
+ ->group('dd.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 集团出版社色令
|
|
|
+ $t1 = Db::table($tq . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 集团出版社色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 集团教材内色令
|
|
|
+ $t2 = Db::table($tt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 集团教材内色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 集团教材外色令
|
|
|
+ $t3 = Db::table($ttt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 集团教材外色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 外贸订单纸令、外贸订单色令
|
|
|
+ $t4 = Db::table($tttt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nysls) 外贸订单纸令, sum(t.nyssl) AS 外贸订单色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ // 总色令
|
|
|
+ $t5 = Db::table($ttttt . ' t')
|
|
|
+ ->field("DATE_FORMAT(t.cyrq, '%Y-%m-%d') AS cyrq, sum(t.nyssl) AS 总色令")
|
|
|
+ ->group('t.cyrq')->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($a . ' a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT a.dcyrq AS dcyrq,
|
|
|
+ t.期刊色令 AS 期刊色令,
|
|
|
+ t1.集团出版社色令 AS 集团出版社色令,
|
|
|
+ t2.集团教材内色令 AS 集团教材内色令,
|
|
|
+ t3.集团教材外色令 AS 集团教材外色令,
|
|
|
+ t4.外贸订单色令 AS 外贸订单色令,
|
|
|
+ t4.外贸订单纸令 AS 外贸订单纸令,
|
|
|
+ t5.总色令 AS 总色令"
|
|
|
+ )
|
|
|
+ ->join('(' . $t . ') as t', 't.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t1 . ') as t1', 't1.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t2 . ') as t2', 't2.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t3 . ') as t3', 't3.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t4 . ') as t4', 't4.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->join('(' . $t5 . ') as t5', 't5.cyrq = a.dcyrq', 'LEFT')
|
|
|
+ ->group('date(a.dcyrq)')->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.集团出版社色令) * 100 / (SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0))) AS DECIMAL(10, 2)))) AS 系统图书,
|
|
|
+ CONCAT(LTRIM(CAST(((SUM(db.总色令) - IFNULL(SUM(db.期刊色令), 0) - IFNULL(SUM(db.集团出版社色令), 0) - IFNULL(SUM(db.集团教材内色令), 0) - IFNULL(SUM(db.集团教材外色令), 0) - IFNULL(SUM(db.外贸订单色令), 0)) * 100 / NULLIF((SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0)), 0)) AS DECIMAL(10, 2)))) AS 社会图书,
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.外贸订单色令) * 100 / NULLIF((SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0)), 0)) AS DECIMAL(10, 2)))) AS 外贸板块,
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.期刊色令) * 100 / (SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0))) AS DECIMAL(10, 2)))) AS 期刊板块,
|
|
|
+ CONCAT(LTRIM(CAST((SUM(db.集团教材内色令) * 100 / (SUM(db.总色令) - IFNULL(SUM(db.集团教材外色令), 0))) AS DECIMAL(10, 2)))) AS 教材板块
|
|
|
+ ")
|
|
|
+ ->whereTime('dcyrq', 'between', [$this->qstart_time(), $this->qend_time()])
|
|
|
+ ->group('year(db.dcyrq)')->find();
|
|
|
+ $i=0;
|
|
|
+ foreach($sql_final as $v){
|
|
|
+ $list[$i]['name']=' ';
|
|
|
+ $list[$i]['value']=round($v);
|
|
|
+ $i++;
|
|
|
+ }
|
|
|
+ $res['status']=0;
|
|
|
+ $res['msg']='';
|
|
|
+ $res['data']=$list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ // halt(json_decode($redis->get($redis_key),true));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //去年业务模块百分比->接口调用
|
|
|
+ public function yewujg2022(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('yewujg2022_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 业务总览 第一屏 第二页
|
|
|
+ */
|
|
|
+
|
|
|
+ //轮转机每月生产趋势 纸令->缓存调用
|
|
|
+ public function lunzhuanzl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('lunzhuanzl_redis');
|
|
|
+ $subQuery3_child = Db::table('bzysdayrpt')->field('drptrq AS rq,iSjys,fsjls')
|
|
|
+ ->whereIn('cbzmc', ['小森LW-35(甲班)','小森LW-35(乙班)','小森2号机(甲班)',
|
|
|
+ '小森2号机(乙班)','大规小森3号机(甲班)','大规小森3号机(乙班)','三菱商轮(甲班)',
|
|
|
+ '三菱商轮(乙班)','三菱商轮2号(甲班)','三菱商轮2号(乙班)','204胶轮(甲班)',
|
|
|
+ '204胶轮(乙班)','V30(甲班)','V30(乙班)','报刊轮转(甲班)','报刊轮转(乙班)','高斯胶轮(甲班)','高斯胶轮(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nAmount,a.nzl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['标规小森商轮1号',
|
|
|
+ '标规小森商轮2号', '大规小森商轮1号',
|
|
|
+ '大规三菱商轮1号', '标规三菱商轮1号',
|
|
|
+ '标规三菱商轮2号', '标规204胶轮1号',
|
|
|
+ '大规海德堡1号', '标规报轮1号','标规高斯轮转1号','标规高斯轮转2号','大规高斯轮转1号','标规北人轮转1号']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //轮转纸令合计
|
|
|
+ $subQuery3 = Db::table($subQuery3_child . 'T')
|
|
|
+ ->field('rq,SUM( iSjys ) nRotationTotal,COUNT( 1 ) nRotationPZ,SUM( fsjls ) nnRotationSL ')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('DISTINCT A.RQ,P.nnRotationSL AS nnRotationSL')
|
|
|
+ ->join('(' . $subQuery3 . ') as P', 'A.RQ = P.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS 'rq',
|
|
|
+ ROUND(SUM( db.nnRotationSL )) AS 'nnRotationSL'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ // 初始化数据
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $currentMonth = date("m"); // 当前月份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为前年、去年和今年创建数据数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年';
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 前年初始化为0
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 去年初始化为0
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ $list['series'][2]['data'] = array_fill(0, $currentMonth, 0); // 今年初始化到当前月份为0
|
|
|
+
|
|
|
+ // 遍历查询结果
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前两年的数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['nnRotationSL'];
|
|
|
+ }
|
|
|
+ // 如果是去年的数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['nnRotationSL'];
|
|
|
+ }
|
|
|
+ // 如果是今年的数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['nnRotationSL'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //轮转机每月生产趋势 纸令->接口调用
|
|
|
+ public function lunzhuanzl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('lunzhuanzl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //四色机每月生产趋势 纸令->缓存调用
|
|
|
+ public function sisejizl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('sisejizl_redis');
|
|
|
+ $subQuery1_child = Db::table('bzysdayrpt')->field('drptrq AS rq,iSjys,fsjls')
|
|
|
+ ->whereIn('cbzmc', ['四色机2号(甲班)','四色机2号(乙班)','海德堡(甲班)',
|
|
|
+ '海德堡1号(甲班)','海德堡(乙班)','海德堡1号(乙班)','海德堡5+1 1号(甲班)',
|
|
|
+ '海德堡5+1 1号(乙班)','三菱机1(甲班)','三菱机1(乙班)','三菱机2(甲班)',
|
|
|
+ '三菱机2(乙班)','小森八色(甲班)','小森八色(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nAmount,a.nzl')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['四色机02号','四色机02号机','海德堡01号',
|
|
|
+ '海德堡01号机','海德堡5+L 01号','海德堡5+L 01号机','三菱机01号',
|
|
|
+ '三菱机01号机','三菱机02号','三菱机02号机','小森八色01号',
|
|
|
+ '小森八色01号机','小森八色02号机']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //四色机纸令合计
|
|
|
+ $subQuery1 = Db::table($subQuery1_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjls ) nFourColorSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('DISTINCT A.RQ,B.nFourColorSL AS nFourColorSL')
|
|
|
+ ->join('(' . $subQuery1 . ') as B', ' A.RQ = B.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS 'rq',
|
|
|
+ ROUND(SUM( db.nFourColorSL )) AS 'nFourColorSL'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ // ->group('MONTH(db.RQ)')
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $currentMonth = date("m"); // 当前月份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为前年、去年和今年创建数据数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年';
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 前年初始化为0
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 去年初始化为0
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ $list['series'][2]['data'] = array_fill(0, $currentMonth, 0); // 今年初始化到当前月份为0
|
|
|
+
|
|
|
+ // 遍历查询结果
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前两年的数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['nFourColorSL'];
|
|
|
+ }
|
|
|
+ // 如果是去年的数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['nFourColorSL'];
|
|
|
+ }
|
|
|
+ // 如果是今年的数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['nFourColorSL'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //四色机每月生产趋势 纸令->接口调用
|
|
|
+ public function sisejizl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('sisejizl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //BB机每月生产趋势 纸令->缓存调用
|
|
|
+ public function bbjzl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('bbjzl_redis');
|
|
|
+ $subQuery2_child = Db::table('bzysdayrpt')->field('drptrq AS rq,iSjys,fsjls')
|
|
|
+ ->whereIn('cbzmc', ['BB机1号(甲班)','BB机1号(乙班)','BB机2号(甲班)',
|
|
|
+ 'BB机2号(乙班)','BB机3号(甲班)','BB机3号(乙班)','BB机4号(甲班)','BB机4号(乙班)',
|
|
|
+ 'BB机5号(甲班)','BB机5号(乙班)',
|
|
|
+ 'BB机6号(甲班)','BB机6号(乙班)','05机1号(甲班)','05机1号(乙班)',
|
|
|
+ '海德堡SM1号机(甲班)','海德堡SM1号机(乙班)','海德堡SM2号机(甲班)','海德堡SM2号机(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nAmount,a.nzl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['BB机01号','BB机02号','BB机04号','如钰01号机','如钰02号机',
|
|
|
+ 'BB机05号','BB机06号','海德堡SM1号','海德堡SM2号']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //BB机纸令合计
|
|
|
+ $subQuery2 = Db::table($subQuery2_child . 'T')
|
|
|
+ ->field('rq,SUM( iSjys ) nBBTotal,COUNT( 1 ) nBBPZ,SUM( fsjls ) nBBSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('DISTINCT A.RQ,h.nBBSL AS nBBSL')
|
|
|
+ ->join('(' . $subQuery2 . ') as h', 'A.RQ = h.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS 'rq',
|
|
|
+ ROUND(SUM( db.nBBSL )) AS 'nBBSL'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ // ->group('MONTH(db.RQ)')
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $currentMonth = date("m"); // 当前月份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为前年、去年和今年创建数据数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年';
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 前年初始化为0
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 去年初始化为0
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ $list['series'][2]['data'] = array_fill(0, $currentMonth, 0); // 今年初始化到当前月份为0
|
|
|
+
|
|
|
+ // 遍历查询结果
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前两年的数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['nBBSL'];
|
|
|
+ }
|
|
|
+ // 如果是去年的数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['nBBSL'];
|
|
|
+ }
|
|
|
+ // 如果是今年的数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['nBBSL'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //BB机每月生产趋势 纸令->接口调用
|
|
|
+ public function bbjzl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('bbjzl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //轮转机每月生产趋势 色令->缓存调用
|
|
|
+ public function lunzhuan_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('lunzhuan_redis');
|
|
|
+ //首先定义了起始时间和结束时间
|
|
|
+
|
|
|
+ //根据查询条件查出色令数据
|
|
|
+ $subQuery3_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjsl')
|
|
|
+ ->whereIn('cbzmc', [
|
|
|
+ '小森LW-35(甲班)','小森LW-35(乙班)','小森2号机(甲班)','小森2号机(乙班)',
|
|
|
+ '大规小森3号机(甲班)','大规小森3号机(乙班)','三菱商轮(甲班)','三菱商轮(乙班)',
|
|
|
+ '三菱商轮2号(甲班)','三菱商轮2号(乙班)','204胶轮(甲班)','204胶轮(乙班)',
|
|
|
+ 'V30(甲班)', 'V30(乙班)','报刊轮转(甲班)','报刊轮转(乙班)','高斯胶轮(甲班)','高斯胶轮(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nsl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['标规小森商轮1号',
|
|
|
+ '标规小森商轮2号','大规小森商轮1号','大规三菱商轮1号','标规三菱商轮1号',
|
|
|
+ '标规三菱商轮2号','标规204胶轮1号','大规海德堡1号','标规报轮1号','标规高斯轮转1号','标规高斯轮转2号','大规高斯轮转1号','标规北人轮转1号','标规北人轮转1号']);
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //将两个表的日期字段进行合并,并返回一个包含不重复结果
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //查询每天的数据
|
|
|
+ $subQuery3 = Db::table($subQuery3_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjsl ) nnRotationSL ')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //按当天日期进行分组 累计相加当天数据
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('DISTINCT DATE(A.RQ) RQ,sum(P.nnRotationSL) AS nnRotationSL')
|
|
|
+ ->join('(' . $subQuery3 . ') as P', 'A.RQ = P.rq','LEFT')
|
|
|
+ ->group('RQ')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //按每个月进行查询 累计相加每月数据 ROUND(SUM( db.nnRotationSL )) AS '轮转色令合计'
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS 'rq',
|
|
|
+ ROUND(SUM( db.nnRotationSL )) AS 'nnRotationSL'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ // ->group('MONTH(db.RQ)')
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $currentMonth = date("m"); // 当前月份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为前年、去年和今年创建数据数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年';
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 前年初始化为0
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 去年初始化为0
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ $list['series'][2]['data'] = array_fill(0, $currentMonth, 0); // 今年初始化到当前月份为0
|
|
|
+
|
|
|
+ // 遍历查询结果
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前两年的数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['nnRotationSL'];
|
|
|
+ }
|
|
|
+ // 如果是去年的数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['nnRotationSL'];
|
|
|
+ }
|
|
|
+ // 如果是今年的数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['nnRotationSL'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //轮转机每月生产趋势 色令->接口调用
|
|
|
+ public function lunzhuan(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('lunzhuan_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //四色机每月生产趋势 色令->缓存调用
|
|
|
+ public function siseji_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('siseji_redis');
|
|
|
+
|
|
|
+ //根据查询条件查出色令数据
|
|
|
+ $subQuery1_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjsl')
|
|
|
+ ->whereIn('cbzmc', ['四色机2号(甲班)','四色机2号(乙班)','海德堡(甲班)',
|
|
|
+ '海德堡1号(甲班)','海德堡(乙班)','海德堡1号(乙班)','海德堡5+1 1号(甲班)',
|
|
|
+ '海德堡5+1 1号(乙班)','三菱机1(甲班)','三菱机1(乙班)','三菱机2(甲班)',
|
|
|
+ '三菱机2(乙班)','小森八色(甲班)','小森八色(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nsl')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['四色机02号','四色机02号机','海德堡01号',
|
|
|
+ '海德堡01号机','海德堡5+L 01号','海德堡5+L 01号机','三菱机01号',
|
|
|
+ '三菱机01号机','三菱机02号','三菱机02号机','小森八色01号',
|
|
|
+ '小森八色01号机','小森八色02号机']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ //将两个表的日期字段进行合并,并返回一个包含不重复结果
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //查询每天的数据
|
|
|
+ $subQuery1 = Db::table($subQuery1_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjsl ) nFourColorSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ //按当天日期进行分组 累计相加当天数据
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('
|
|
|
+ DISTINCT DATE(A.RQ) RQ,
|
|
|
+ sum(B.nFourColorSL) AS nFourColorSL
|
|
|
+ ')
|
|
|
+ ->join('(' . $subQuery1 . ') as B', ' A.RQ = B.rq','LEFT')
|
|
|
+ ->group('RQ')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //按每个月进行查询 累计相加每月数据
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS 'rq',
|
|
|
+ ROUND(SUM( db.nFourColorSL )) AS 'nFourColorSL'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ // ->group('MONTH(db.RQ)')
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $currentMonth = date("m"); // 当前月份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为前年、去年和今年创建数据数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年';
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 前年初始化为0
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 去年初始化为0
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ $list['series'][2]['data'] = array_fill(0, $currentMonth, 0); // 今年初始化到当前月份为0
|
|
|
+
|
|
|
+ // 遍历查询结果
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前两年的数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['nFourColorSL'];
|
|
|
+ }
|
|
|
+ // 如果是去年的数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['nFourColorSL'];
|
|
|
+ }
|
|
|
+ // 如果是今年的数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['nFourColorSL'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //四色机每月生产趋势 色令->接口调用
|
|
|
+ public function siseji(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('siseji_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //BB机每月生产趋势 色令->缓存调用
|
|
|
+ public function bbj_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('bbj_redis');
|
|
|
+ //首先定义了起始时间和结束时间
|
|
|
+
|
|
|
+ //根据查询条件查出色令数据
|
|
|
+ $subQuery2_child = Db::table('bzysdayrpt')->field('drptrq AS rq,fsjsl')
|
|
|
+ ->whereIn('cbzmc', ['BB机1号(甲班)','BB机1号(乙班)','BB机2号(甲班)','BB机2号(乙班)',
|
|
|
+ 'BB机3号(甲班)','BB机3号(乙班)','BB机4号(甲班)','BB机4号(乙班)','BB机5号(甲班)',
|
|
|
+ 'BB机5号(乙班)','BB机6号(甲班)','BB机6号(乙班)', '05机1号(甲班)', '05机1号(乙班)',
|
|
|
+ '海德堡SM1号机(甲班)','海德堡SM1号机(乙班)', '海德堡SM2号机(甲班)','海德堡SM2号机(乙班)'])
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field('b.dOnduty,a.nsl ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams')
|
|
|
+ ->whereIn('cMachineName', ['BB机01号','BB机02号','BB机04号','BB机05号','如钰01号机','如钰02号机',
|
|
|
+ 'BB机06号','海德堡SM1号','海德堡SM2号']);
|
|
|
+ }, true)->buildSql();
|
|
|
+
|
|
|
+ //将两个表的日期字段进行合并,并返回一个包含不重复结果
|
|
|
+ $subQuery = Db::table('bzysdayrpt')->field('DISTINCT drptrq AS RQ')
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('ql_report_feedback_day')->alias('a')->field(' DISTINCT b.dOnduty ')
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams');
|
|
|
+ })->buildSql();
|
|
|
+
|
|
|
+ //查询每天的数据
|
|
|
+ $subQuery2 = Db::table($subQuery2_child . 'T')
|
|
|
+ ->field('rq,SUM( fsjsl ) nBBSL')
|
|
|
+ ->group('rq')->buildSql();
|
|
|
+
|
|
|
+ //按当天日期进行分组 累计相加当天数据
|
|
|
+ $subQuery1_5 = Db::table($subQuery . 'A')
|
|
|
+ ->field('DISTINCT DATE(A.RQ) RQ,sum(h.nBBSL) AS nBBSL')
|
|
|
+ ->join('(' . $subQuery2 . ') as h', 'A.RQ = h.rq','LEFT')
|
|
|
+ ->group('RQ')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //按每个月进行查询 累计相加每月数据 ROUND(SUM( db.nBBSL )) AS '单双色机(BB机)色令合计'
|
|
|
+ $sql_final = Db::table($subQuery1_5 . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT( db.RQ, '%Y-%m' ) AS 'rq',
|
|
|
+ ROUND(SUM( db.nBBSL )) AS 'nBBSL'
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ // ->group('MONTH(db.RQ)')
|
|
|
+ ->group("DATE_FORMAT( db.RQ, '%Y-%m' )")
|
|
|
+ ->order('db.RQ', 'asc')
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $currentMonth = date("m"); // 当前月份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为前年、去年和今年创建数据数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年';
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 前年初始化为0
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年';
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 去年初始化为0
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年';
|
|
|
+ $list['series'][2]['data'] = array_fill(0, $currentMonth, 0); // 今年初始化到当前月份为0
|
|
|
+
|
|
|
+ // 遍历查询结果
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前两年的数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['nBBSL'];
|
|
|
+ }
|
|
|
+ // 如果是去年的数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['nBBSL'];
|
|
|
+ }
|
|
|
+ // 如果是今年的数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['nBBSL'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //BB机每月生产趋势 色令->接口调用
|
|
|
+ public function bbj(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('bbj_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //胶订纸令->缓存调用
|
|
|
+ public function jdzl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jdzl_redis');
|
|
|
+ //首先定义了起始时间和结束时间
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马2乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马3乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马4乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE
|
|
|
+ WHEN c.nzdls < CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END
|
|
|
+ ) END ELSE 0 END
|
|
|
+ ELSE CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%' OR a.cCyddxMc LIKE '%答案%' OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN CASE
|
|
|
+ WHEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0 THEN c.nzdls
|
|
|
+ ELSE ( CASE WHEN c.nzdls <
|
|
|
+ CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN CASE WHEN IFNULL(d.fZls, 0) < rr.zl THEN rr.zl ELSE IFNULL(d.fZls, 0)
|
|
|
+ END ELSE c.nzdls END )
|
|
|
+ END ELSE 0 END ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END END ), 3) 马11甲纸令 ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马22乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马33乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马44乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $JDJ4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马88甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $JDY4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马88乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马55乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马66乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 马77乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ floor(IFNULL(sum(b.马1甲纸令数), 0) + IFNULL(sum(b1.马1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(C.马2甲纸令数), 0) + IFNULL(sum(C1.马2乙纸令数), 0)
|
|
|
+ + IFNULL(sum(D.马3甲纸令数), 0) + IFNULL(sum(D1.马3乙纸令数), 0)
|
|
|
+ + IFNULL(sum(E.马4甲纸令数), 0) + IFNULL(sum(E1.马4乙纸令数), 0)
|
|
|
+ + IFNULL(sum(f.马5甲纸令数), 0) + IFNULL(sum(f1.马5乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.马11甲纸令), 0) + IFNULL(sum(cc.马22甲纸令), 0)
|
|
|
+ + IFNULL(sum(ee.马33甲纸令), 0) + IFNULL(sum(hh.马44甲纸令), 0)
|
|
|
+ + IFNULL(sum(xx.马55甲纸令), 0) + IFNULL(sum(Bb1.马11乙纸令), 0)
|
|
|
+ + IFNULL(sum(cc1.马22乙纸令), 0) + IFNULL(sum(ee1.马33乙纸令), 0)
|
|
|
+ + IFNULL(sum(hh1.马44乙纸令), 0) + IFNULL(sum(xx1.马55乙纸令), 0)
|
|
|
+ + IFNULL(sum(xx2.马66乙纸令), 0) + IFNULL(sum(xx3.马77乙纸令), 0)
|
|
|
+ + IFNULL(sum(JDJ4.马88甲纸令), 0) + IFNULL(sum(JDY4.马88乙纸令), 0)
|
|
|
+ + IFNULL(sum(xxx2.马66甲纸令), 0) + IFNULL(sum(xxx3.马77甲纸令), 0)) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->join('(' . $JDY4 . ') as JDY4', 'a.rq = JDY4.rq','LEFT')
|
|
|
+ ->join('(' . $JDJ4 . ') as JDJ4', 'a.rq = JDJ4.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //按每个月进行查询 累计相加每月数据 ROUND(SUM( db.纸令数总计 )) AS '无线胶订纸令'
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as rq,
|
|
|
+ ROUND(SUM(db.纸令数总计), 0) AS jdzl
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.rq, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $i = 0;
|
|
|
+ $j = 0;
|
|
|
+ $k = 0;
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+ // 为三年的数据创建数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年'; // 前年
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年'; // 去年
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年'; // 今年
|
|
|
+ $list['series'][2]['data'] = array_fill(0, (int)date("m"), 0); // 初始化到当前月份的数据
|
|
|
+
|
|
|
+ // 遍历查询结果并填充数据
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前年数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['jdzl'];
|
|
|
+ }
|
|
|
+ // 如果是去年数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['jdzl'];
|
|
|
+ }
|
|
|
+ // 如果是今年数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['jdzl'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //胶订纸令->接口调用
|
|
|
+ public function jdzl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jdzl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //精装纸令->缓存调用
|
|
|
+ public function jzzl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jzzl_redis');
|
|
|
+ //首先定义了起始时间和结束时间
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精1甲、精1甲纸令数
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 精1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','精装生产联动线(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精1乙 精1乙纸令数
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 精1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','精装生产联动线(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精11甲--精11甲纸令
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 精11甲纸令,
|
|
|
+ d.cSccpbh
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','精装联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','精装联动')
|
|
|
+ ->whereNotIn('d.cSccpbh', ['202305137S-D01', '202305176S-D01'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精11乙--精11乙纸令
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 精11乙纸令,
|
|
|
+ d.cSccpbh
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','精装联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','精装联动')
|
|
|
+ ->whereNotIn('d.cSccpbh', ['202305137S-D01', '202305176S-D01'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ floor(IFNULL(sum(b.精1甲纸令数), 0) + IFNULL(sum(b1.精1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.精11甲纸令), 0) + IFNULL(sum(Bb1.精11乙纸令), 0)) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as rq,
|
|
|
+ ROUND(sum(db.纸令数总计), 0) as jzzl
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.rq, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+
|
|
|
+
|
|
|
+ $redis->set($redis_key, json_encode($sql_final));
|
|
|
+ echo date("Y-m-d H:i:s").' 存进去了';
|
|
|
+ return $sql_final;
|
|
|
+ }
|
|
|
+ //精装纸令->接口调用
|
|
|
+ public function jzzl(){
|
|
|
+ $redis=redis();
|
|
|
+ $sql_final = json_decode($redis->get(md5('jzzl_redis')), true);
|
|
|
+
|
|
|
+ $i = 0;
|
|
|
+ $j = 0;
|
|
|
+ $k = 0;
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+
|
|
|
+ // 获取当前年份、去年和前年
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 初始化三年的数据
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年'; // 前年
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年'; // 去年
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年'; // 今年
|
|
|
+ $list['series'][2]['data'] = array_fill(0, (int)date("m"), 0); // 初始化到当前月份的数据
|
|
|
+
|
|
|
+ // 遍历查询结果并填充数据
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前年数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['jzzl'];
|
|
|
+ }
|
|
|
+ // 如果是去年数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['jzzl'];
|
|
|
+ }
|
|
|
+ // 如果是今年数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['jzzl'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ return json_encode($res);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ //骑马纸令->缓存调用
|
|
|
+ public function qmzl_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('qmzl_redis');
|
|
|
+
|
|
|
+ //1.使用`Db::table('cpjtfk')`来指定查询的数据表是'cpjtfk'。
|
|
|
+ //3.使用`union()`方法进行联合查询。在联合查询中,使用了一个闭包函数来构建子查询。
|
|
|
+ //4.在子查询中,使用`table('scDayRpt_Teams')->alias('b')`来指定查询的数据表是'scDayRpt_Teams',并给该表设置了别名'b'。
|
|
|
+ //5.使用`field()`方法指定要查询的字段列表,这里是将dOnDuty字段进行一系列操作,包括判断条件和日期格式化。
|
|
|
+ //6.使用`buildSql()`方法生成最终的SQL查询语句,并将生成的SQL语句作为A变量的值。
|
|
|
+ //7.根据代码的逻辑,变量A生成了一个联合查询的SQL语句,用于查询'cpjtfk'表和'scDayRpt_Teams'表中的日期字段,并按照指定格式进行格式化。
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //每个变量($B, $B1, $C, $C1, $D, $D1, $E, $E1)都是构建SQL查询语句的过程。
|
|
|
+ //通过调用Db::table('cpjtfk')来指定查询的数据表是'cpjtfk'。
|
|
|
+ //然后使用join()方法进行表连接,将'cpjtfk'表与'mcyd'表进行左连接,连接条件为'mcyd.ICYDID = cpjtfk.ID_CYD'。
|
|
|
+ //使用field()方法指定查询的字段列表,并可以使用sum()函数对字段进行求和计算。
|
|
|
+ //使用where()方法指定筛选条件,只返回满足条件的数据。最后,使用group()方法指定分组的字段。
|
|
|
+ //最后,使用buildSql()方法生成最终的SQL查询语句,并将生成的SQL语句作为变量的值。
|
|
|
+ //根据代码的逻辑,每个变量都生成了一个SQL查询语句,用于查询不同班组的订单信息
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑1甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','进口骑马联动(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑1乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','进口骑马联动(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑2甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','恒山骑订联动(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑2乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','恒山骑订联动(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑3甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑3乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑4甲纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 骑4乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //1.首先,定义了一个查询语句,该查询语句涉及多个表的连接和字段的计算。
|
|
|
+ //2.使用别名$Bb表示主查询结果。
|
|
|
+ //3.查询的主要数据来源是表ql_report_feedback_day。
|
|
|
+ //4.在字段的计算中,使用了多个CASE和WHEN语句进行条件判断和计算逻辑。
|
|
|
+ //5.在查询中,使用了多个表的连接操作,包括scdayrpt_teams、scdayrpt_teams_jobcontent、scMachineJob、zdcp和mcyd。
|
|
|
+ //6.使用WHERE条件筛选出满足特定条件的记录,包括Name_WorkGroup等于'骑马联动01号(甲班)'和a.cTechName等于'骑马联动'。
|
|
|
+ //7.最后,使用GROUPBY对结果进行分组,根据日期和班组进行分组。
|
|
|
+ //8.通过buildSql方法生成最终的SQL查询语句
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑11甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑11乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑22甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动02号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑22乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动02号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑33甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动03号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑33乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动03号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑44甲纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动04号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ ROUND(SUM(
|
|
|
+ CASE
|
|
|
+ WHEN a.nAmount >= a.nPAmount AND a.nAmount > IFNULL(d.izdsl, 0)
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE
|
|
|
+ CASE
|
|
|
+ WHEN f.nCompleteAmount /*累计数量*/ > IFNULL(d.izdsl, 0) /*理论数量*/
|
|
|
+ THEN a.nAmount / NULLIF(f.nCompleteAmount, 0) *
|
|
|
+ CASE
|
|
|
+ WHEN a.cCyddxMc = '装配'
|
|
|
+ OR a.cCyddxMc LIKE '%正文%'
|
|
|
+ OR a.cCyddxMc LIKE '%答案%'
|
|
|
+ OR a.cCyddxMc LIKE '%卷%'
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END = 0
|
|
|
+ THEN c.nzdls
|
|
|
+ ELSE (
|
|
|
+ CASE
|
|
|
+ WHEN c.nzdls <
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ THEN
|
|
|
+ CASE
|
|
|
+ WHEN IFNULL(d.fZls, 0) < rr.zl
|
|
|
+ THEN rr.zl
|
|
|
+ ELSE IFNULL(d.fZls, 0)
|
|
|
+ END
|
|
|
+ ELSE c.nzdls
|
|
|
+ END
|
|
|
+ )
|
|
|
+ END
|
|
|
+ ELSE 0
|
|
|
+ END
|
|
|
+ ELSE c.nzdls * a.nAmount / IFNULL(d.izdsl, 0)
|
|
|
+ END
|
|
|
+ END )
|
|
|
+ , 3) 骑44乙纸令
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动04号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(sum(b.骑1甲纸令数), 0) + IFNULL(sum(b1.骑1乙纸令数), 0)
|
|
|
+ + IFNULL(sum(C.骑2甲纸令数), 0) + IFNULL(sum(C1.骑2乙纸令数), 0)
|
|
|
+ + IFNULL(sum(D.骑3甲纸令数), 0) + IFNULL(sum(D1.骑3乙纸令数), 0)
|
|
|
+ + IFNULL(sum(E.骑4甲纸令数), 0) + IFNULL(sum(E1.骑4乙纸令数), 0)
|
|
|
+ + IFNULL(sum(Bb.骑11甲纸令), 0) + IFNULL(sum(cc.骑22甲纸令), 0)
|
|
|
+ + IFNULL(sum(ee.骑33甲纸令), 0) + IFNULL(sum(hh.骑44甲纸令), 0)
|
|
|
+ + IFNULL(sum(Bb1.骑11乙纸令), 0) + IFNULL(sum(cc1.骑22乙纸令), 0)
|
|
|
+ + IFNULL(sum(ee1.骑33乙纸令), 0) + IFNULL(sum(hh1.骑44乙纸令), 0), 0) 纸令数总计
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', ' a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', ' a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', ' a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', ' a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', ' a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', ' a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', ' a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', ' a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ')as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', ' a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ')as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', ' a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ')as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', ' a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ')as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //使用GROUP BY对日期字段进行分组
|
|
|
+ //汇总每个月骑马纸令总和
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as rq,
|
|
|
+ ROUND(sum(db.纸令数总计),0) as qmzl
|
|
|
+ ")
|
|
|
+ ->where("db.rq >= '{$this->qianstart_time()}'AND db.rq <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.rq, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $i = 0;
|
|
|
+ $j = 0;
|
|
|
+ $k = 0;
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为三年的数据创建数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年'; // 前年
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年'; // 去年
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年'; // 今年
|
|
|
+ $list['series'][2]['data'] = array_fill(0, (int)date("m"), 0); // 初始化到当前月份的数据
|
|
|
+
|
|
|
+ // 遍历查询结果并填充数据
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前年数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['qmzl'];
|
|
|
+ }
|
|
|
+ // 如果是去年数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['qmzl'];
|
|
|
+ }
|
|
|
+ // 如果是今年数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['qmzl'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //骑马纸令->接口调用
|
|
|
+ public function qmzl(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('qmzl_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //胶订册数->缓存调用
|
|
|
+ public function jdcs_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jdcs_redis');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马1乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马2乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','马天尼2号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马3乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订3号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马4乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订4号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $F1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 马5乙,
|
|
|
+ sum(mcyd.NZWyz * iWCl / 1000) as 马5乙纸令数
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','无线胶订5号(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11甲")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马22乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订潮流2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马33乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精工1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马44乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达1号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XXX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马77甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $JDJ4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马88甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(甲班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马55乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达2号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX2 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马66乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $XX3 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马77乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶钉精密达3号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $JDY4 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 马88乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','胶订精密达4号(乙班)')
|
|
|
+ ->whereIn('a.cTechName', ['胶订联动', '胶头'])
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ IFNULL(B.马1甲, 0) + IFNULL(B1.马1乙, 0)
|
|
|
+ + IFNULL(C.马2甲, 0) + IFNULL(C1.马2乙, 0)
|
|
|
+ + IFNULL(D.马3甲, 0) + IFNULL(D1.马3乙, 0)
|
|
|
+ + IFNULL(E.马4甲, 0) + IFNULL(E1.马4乙, 0)
|
|
|
+ + IFNULL(f.马5甲, 0) + IFNULL(f1.马5乙, 0)
|
|
|
+ + IFNULL(Bb.马11甲, 0) + IFNULL(Bb1.马11乙, 0)
|
|
|
+ + IFNULL(cc.马22甲, 0) + IFNULL(cc1.马22乙, 0)
|
|
|
+ + IFNULL(ee.马33甲, 0) + IFNULL(ee1.马33乙, 0)
|
|
|
+ + IFNULL( hh.马44甲, 0) + IFNULL(hh1.马44乙, 0)
|
|
|
+ + IFNULL(xx.马55甲, 0) + IFNULL(xx1.马55乙, 0)
|
|
|
+ + IFNULL(xxx2.马66甲, 0) + IFNULL(xx2.马66乙, 0)
|
|
|
+ + IFNULL(JDJ4.马88甲, 0) + IFNULL(JDY4.马88乙, 0)
|
|
|
+ + IFNULL(xxx3.马77甲, 0) + IFNULL(xx3.马77乙, 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', 'a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', 'a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', 'a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', 'a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', 'a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', 'a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $F . ') as f', 'a.rq = f.rq','LEFT')
|
|
|
+ ->join('(' . $F1 . ') as f1', 'a.rq = f1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', 'a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ') as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', 'a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ') as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', 'a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ') as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->join('(' . $XX . ') as xx', 'a.rq = xx.rq','LEFT')
|
|
|
+ ->join('(' . $XX1 . ') as xx1', 'a.rq = xx1.rq','LEFT')
|
|
|
+ ->join('(' . $XX2 . ') as xx2', 'a.rq = xx2.rq','LEFT')
|
|
|
+ ->join('(' . $XX3 . ') as xx3', 'a.rq = xx3.rq','LEFT')
|
|
|
+ ->join('(' . $XXX2 . ') as xxx2', 'a.rq = xxx2.rq','LEFT')
|
|
|
+ ->join('(' . $XXX3 . ') as xxx3', 'a.rq = xxx3.rq','LEFT')
|
|
|
+ ->join('(' . $JDJ4 . ') as JDJ4', 'a.rq = JDJ4.rq','LEFT')
|
|
|
+ ->join('(' . $JDY4 . ') as JDY4', 'a.rq = JDY4.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as rq,
|
|
|
+ ROUND(sum(db.总计册), 0) as jdcs
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.rq, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $i = 0;
|
|
|
+ $j = 0;
|
|
|
+ $k = 0;
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为三年的数据创建数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年'; // 前年
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年'; // 去年
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年'; // 今年
|
|
|
+ $list['series'][2]['data'] = array_fill(0, (int)date("m"), 0); // 初始化到当前月份的数据
|
|
|
+
|
|
|
+ // 遍历查询结果并填充数据
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前年数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['jdcs'];
|
|
|
+ }
|
|
|
+ // 如果是去年数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['jdcs'];
|
|
|
+ }
|
|
|
+ // 如果是今年数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['jdcs'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //胶订册数->接口调用
|
|
|
+ public function jdcs(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jdcs_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //精装册数->缓存调用
|
|
|
+ public function jzcs_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jzcs_redis');
|
|
|
+
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精1甲、精1甲纸令数
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 精1甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','精装生产联动线(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精1乙 精1乙纸令数
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 精1乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','精装生产联动线(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精11甲--精11甲纸令
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 精11甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','精装联动线01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','精装联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //精11乙--精11乙纸令
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 精11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','精装联动线01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','精装联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE_FORMAT(A.RQ, '%Y-%m-%d') AS rq,
|
|
|
+ IFNULL(B.精1甲, 0) + IFNULL(B1.精1乙, 0) + IFNULL(Bb.精11甲, 0) + IFNULL(Bb1.精11乙, 0) as 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', 'a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', 'a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ') as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as rq,
|
|
|
+ ROUND(sum(db.总计册), 0) as jzcs
|
|
|
+ ")
|
|
|
+ ->where("db.RQ >= '{$this->qianstart_time()}'
|
|
|
+ AND db.RQ <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.rq, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $i = 0;
|
|
|
+ $j = 0;
|
|
|
+ $k = 0;
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为三年的数据创建数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年'; // 前年
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年'; // 去年
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年'; // 今年
|
|
|
+ $list['series'][2]['data'] = array_fill(0, (int)date("m"), 0); // 初始化到当前月份的数据
|
|
|
+
|
|
|
+ // 遍历查询结果并填充数据
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前年数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['jzcs'];
|
|
|
+ }
|
|
|
+ // 如果是去年数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['jzcs'];
|
|
|
+ }
|
|
|
+ // 如果是今年数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['jzcs'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //精装册数->接口调用
|
|
|
+ public function jzcs(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('jzcs_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+ //骑马册数->缓存调用
|
|
|
+ public function qmcs_redis(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('qmcs_redis');
|
|
|
+ //1.使用`Db::table('cpjtfk')`来指定查询的数据表是'cpjtfk'。
|
|
|
+ //3.使用`union()`方法进行联合查询。在联合查询中,使用了一个闭包函数来构建子查询。
|
|
|
+ //4.在子查询中,使用`table('scDayRpt_Teams')->alias('b')`来指定查询的数据表是'scDayRpt_Teams',并给该表设置了别名'b'。
|
|
|
+ //5.使用`field()`方法指定要查询的字段列表,这里是将dOnDuty字段进行一系列操作,包括判断条件和日期格式化。
|
|
|
+ //6.使用`buildSql()`方法生成最终的SQL查询语句,并将生成的SQL语句作为A变量的值。
|
|
|
+ //7.根据代码的逻辑,变量A生成了一个联合查询的SQL语句,用于查询'cpjtfk'表和'scDayRpt_Teams'表中的日期字段,并按照指定格式进行格式化。
|
|
|
+ $A = Db::table('cpjtfk')->field("DISTINCT DATE_FORMAT(drptdate, '%Y-%m-%d') AS rq")
|
|
|
+ ->union(function ($query) {
|
|
|
+ $query->table('scDayRpt_Teams')->alias('b')
|
|
|
+ ->field("DISTINCT DATE_FORMAT(
|
|
|
+ CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i:%s') < '06:30:00' THEN DATE_SUB(b.dOnDuty, INTERVAL 1 DAY)
|
|
|
+ ELSE b.dOnDuty
|
|
|
+ END,
|
|
|
+ '%Y-%m-%d'
|
|
|
+ ) AS RQ");
|
|
|
+ }, true)
|
|
|
+ ->buildSql();
|
|
|
+ //每个变量($B, $B1, $C, $C1, $D, $D1, $E, $E1)都是构建SQL查询语句的过程。
|
|
|
+ //通过调用Db::table('cpjtfk')来指定查询的数据表是'cpjtfk'。
|
|
|
+ //然后使用join()方法进行表连接,将'cpjtfk'表与'mcyd'表进行左连接,连接条件为'mcyd.ICYDID = cpjtfk.ID_CYD'。
|
|
|
+ //使用field()方法指定查询的字段列表,并可以使用sum()函数对字段进行求和计算。
|
|
|
+ //使用where()方法指定筛选条件,只返回满足条件的数据。最后,使用group()方法指定分组的字段。
|
|
|
+ //最后,使用buildSql()方法生成最终的SQL查询语句,并将生成的SQL语句作为变量的值。
|
|
|
+ //根据代码的逻辑,每个变量都生成了一个SQL查询语句,用于查询不同班组的订单信息
|
|
|
+ $B = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑1甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','进口骑马联动(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $B1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑1乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','进口骑马联动(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑2甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','恒山骑订联动(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $C1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑2乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','恒山骑订联动(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑3甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $D1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑3乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑4甲
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(新)(甲班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $E1 = Db::table('cpjtfk')
|
|
|
+ ->join('mcyd','mcyd.ICYDID = cpjtfk.ID_CYD','LEFT')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(cpjtfk.drptdate,'%Y-%m-%d') as rq,
|
|
|
+ sum(iwcl) as 骑4乙
|
|
|
+ ")
|
|
|
+ ->where('cpjtfk.cbanzu','=','紫光骑马联动(新)(乙班)')
|
|
|
+ ->group('drptdate,cbanzu')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+
|
|
|
+ $rr = Db::table('scyddx')->alias('r')
|
|
|
+ ->field('r.ICYDID,sum(r.NYSLS) as zl')
|
|
|
+ ->group('r.ICYDID')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //1.首先,定义了一个查询语句,该查询语句涉及多个表的连接和字段的计算。
|
|
|
+ //2.使用别名$Bb表示主查询结果。
|
|
|
+ //3.查询的主要数据来源是表ql_report_feedback_day。
|
|
|
+ //4.在字段的计算中,使用了多个CASE和WHEN语句进行条件判断和计算逻辑。
|
|
|
+ //5.在查询中,使用了多个表的连接操作,包括scdayrpt_teams、scdayrpt_teams_jobcontent、scMachineJob、zdcp和mcyd。
|
|
|
+ //6.使用WHERE条件筛选出满足特定条件的记录,包括Name_WorkGroup等于'骑马联动01号(甲班)'和a.cTechName等于'骑马联动'。
|
|
|
+ //7.最后,使用GROUPBY对结果进行分组,根据日期和班组进行分组。
|
|
|
+ //8.通过buildSql方法生成最终的SQL查询语句
|
|
|
+ $Bb = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑11甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动01号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $Bb1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑11乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动01号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑22甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动02号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $CC1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑22乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动02号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑33甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动03号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $EE1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑33乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动03号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑44甲
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动04号(甲班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $HH1 = Db::table('ql_report_feedback_day')->alias('a')
|
|
|
+ ->field("
|
|
|
+ CASE WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d') ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d') END AS rq,
|
|
|
+ sum(a.nAmount) as 骑44乙
|
|
|
+ ")
|
|
|
+ ->join(['scdayrpt_teams' => 'b'], 'b.ID=a.ID_Teams and b.iDayRptStatus = 10','INNER')
|
|
|
+ ->join(['scdayrpt_teams_jobcontent' => 'q'], 'q.id = a.iJobContentID','INNER')
|
|
|
+ ->join(['scMachineJob' => 'f'], 'f.id = q.ID_JobM','INNER')
|
|
|
+ ->join(['zdcp' => 'd'], 'd.cSccpBh = LEFT(a.cMJobCode,14)','LEFT')
|
|
|
+ ->join('(' . $rr . ') as rr','rr.icydid = d.icydid','LEFT')
|
|
|
+ ->join(['mcyd' => 'c'], 'c.icydid = d.icydid','LEFT')
|
|
|
+ ->where('Name_WorkGroup','=','骑马联动04号(乙班)')
|
|
|
+ ->where('a.cTechName' ,'=','骑马联动')
|
|
|
+ ->group("CASE
|
|
|
+ WHEN DATE_FORMAT(b.dOnDuty, '%H:%i') < '06:30' THEN DATE_FORMAT(DATE_SUB(b.dOnDuty, INTERVAL 1 DAY), '%Y-%m-%d')
|
|
|
+ ELSE DATE_FORMAT(b.dOnDuty, '%Y-%m-%d')
|
|
|
+ END,Name_WorkGroup")
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ //1.首先,定义了一个查询语句,该语句涉及多个表的连接和字段的计算。
|
|
|
+ //2.代码中使用了别名$db来表示主查询结果。
|
|
|
+ //3.查询的主要数据来源是表$A.'a'。
|
|
|
+ //4.查询的字段包括总计册和纸令数总计,通过对多个子查询结果相加得到。
|
|
|
+ //5.在查询中使用了LEFT JOIN进行表连接操作,将子查询结果与主查询结果进行连接,通过日期a.rq进行匹配。
|
|
|
+ //6.使用buildSql()方法生成最终的SQL查询语句
|
|
|
+ $db = Db::table($A . 'a')
|
|
|
+ ->field("
|
|
|
+ DISTINCT DATE(A.RQ) rq,
|
|
|
+ TRUNCATE(IFNULL(sum(B.骑1甲), 0) + IFNULL(sum(B1.骑1乙), 0)
|
|
|
+ + IFNULL(sum(C.骑2甲), 0) + IFNULL(sum(C1.骑2乙), 0)
|
|
|
+ + IFNULL(sum(D.骑3甲), 0) + IFNULL(sum(D1.骑3乙), 0)
|
|
|
+ + IFNULL(sum(E.骑4甲), 0) + IFNULL(sum(E1.骑4乙), 0)
|
|
|
+ + IFNULL(sum(Bb.骑11甲), 0) + IFNULL(sum(Bb1.骑11乙), 0)
|
|
|
+ + IFNULL(sum(cc.骑22甲), 0) + IFNULL(sum(cc1.骑22乙), 0)
|
|
|
+ + IFNULL(sum(ee.骑33甲), 0) + IFNULL(sum(ee1.骑33乙), 0)
|
|
|
+ + IFNULL(sum(hh.骑44甲), 0) + IFNULL(sum(hh1.骑44乙), 0) , 0) 总计册
|
|
|
+ ")
|
|
|
+ ->join('(' . $B . ') as b', ' a.rq = b.rq','LEFT')
|
|
|
+ ->join('(' . $B1 . ') as b1', ' a.rq = b1.rq','LEFT')
|
|
|
+ ->join('(' . $C . ') as c', ' a.rq = c.rq','LEFT')
|
|
|
+ ->join('(' . $C1 . ') as c1', ' a.rq = c1.rq','LEFT')
|
|
|
+ ->join('(' . $D . ') as d', ' a.rq = d.rq','LEFT')
|
|
|
+ ->join('(' . $D1 . ') as d1', ' a.rq = d1.rq','LEFT')
|
|
|
+ ->join('(' . $E . ') as e', ' a.rq = e.rq','LEFT')
|
|
|
+ ->join('(' . $E1 . ') as e1', ' a.rq = e1.rq','LEFT')
|
|
|
+ ->join('(' . $Bb . ') as bb', ' a.rq = bb.rq','LEFT')
|
|
|
+ ->join('(' . $Bb1 . ')as bb1', 'a.rq = bb1.rq','LEFT')
|
|
|
+ ->join('(' . $CC . ') as cc', ' a.rq = cc.rq','LEFT')
|
|
|
+ ->join('(' . $CC1 . ')as cc1', 'a.rq = cc1.rq','LEFT')
|
|
|
+ ->join('(' . $EE . ') as ee', ' a.rq = ee.rq','LEFT')
|
|
|
+ ->join('(' . $EE1 . ')as ee1', 'a.rq = ee1.rq','LEFT')
|
|
|
+ ->join('(' . $HH . ') as hh', ' a.rq = hh.rq','LEFT')
|
|
|
+ ->join('(' . $HH1 . ')as hh1', 'a.rq = hh1.rq','LEFT')
|
|
|
+ ->group('rq')
|
|
|
+ ->buildSql();
|
|
|
+
|
|
|
+ $sql_final = Db::table($db . ' db')
|
|
|
+ ->field("
|
|
|
+ DATE_FORMAT(db.rq, '%Y-%m') as rq,
|
|
|
+ ROUND(sum(db.总计册), 3) as qmcs
|
|
|
+ ")
|
|
|
+ ->where("db.rq >= '{$this->qianstart_time()}'AND db.rq <= '{$this->end_time()}' ")
|
|
|
+ ->group("DATE_FORMAT(db.rq, '%Y-%m')")
|
|
|
+ ->select();
|
|
|
+ // 初始化数据
|
|
|
+ $i = 0;
|
|
|
+ $j = 0;
|
|
|
+ $k = 0;
|
|
|
+ $list['categories'] = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];
|
|
|
+
|
|
|
+ $currentYear = date("Y"); // 当前年份
|
|
|
+ $previousYear = (int)$currentYear - 1; // 去年
|
|
|
+ $previousTwoYear = (int)$currentYear - 2; // 前年
|
|
|
+
|
|
|
+ // 为三年的数据创建数组,初始值为0
|
|
|
+ $list['series'][0]['name'] = $previousTwoYear . '年'; // 前年
|
|
|
+ $list['series'][0]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][1]['name'] = $previousYear . '年'; // 去年
|
|
|
+ $list['series'][1]['data'] = array_fill(0, 12, 0); // 初始化为12个月的数据
|
|
|
+ $list['series'][2]['name'] = $currentYear . '年'; // 今年
|
|
|
+ $list['series'][2]['data'] = array_fill(0, (int)date("m"), 0); // 初始化到当前月份的数据
|
|
|
+
|
|
|
+ // 遍历查询结果并填充数据
|
|
|
+ foreach ($sql_final as $v) {
|
|
|
+ // 获取年份和月份
|
|
|
+ $year = substr($v['rq'], 0, 4);
|
|
|
+ $month = substr($v['rq'], 5, 2);
|
|
|
+
|
|
|
+ // 如果是前年数据
|
|
|
+ if ($year == $previousTwoYear) {
|
|
|
+ $list['series'][0]['data'][(int)$month - 1] = $v['qmcs'];
|
|
|
+ }
|
|
|
+ // 如果是去年数据
|
|
|
+ if ($year == $previousYear) {
|
|
|
+ $list['series'][1]['data'][(int)$month - 1] = $v['qmcs'];
|
|
|
+ }
|
|
|
+ // 如果是今年数据
|
|
|
+ if ($year == $currentYear) {
|
|
|
+ $list['series'][2]['data'][(int)$month - 1] = $v['qmcs'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['status'] = 0;
|
|
|
+ $res['msg'] = '';
|
|
|
+ $res['data'] = $list;
|
|
|
+ $redis->set($redis_key, json_encode($res));
|
|
|
+ return json_encode($res);
|
|
|
+ }
|
|
|
+ //骑马册数->接口调用
|
|
|
+ public function qmcs(){
|
|
|
+ $redis=redis();
|
|
|
+ $redis_key = md5('qmcs_redis');
|
|
|
+ $redis_data = $redis->get($redis_key);
|
|
|
+ return $redis_data;
|
|
|
+ }
|
|
|
+
|
|
|
+}
|