unknown 1 день назад
Родитель
Сommit
e755b7e62d
1 измененных файлов с 20 добавлено и 50 удалено
  1. 20 50
      application/api/controller/StaffSalary.php

+ 20 - 50
application/api/controller/StaffSalary.php

@@ -55,22 +55,22 @@ class StaffSalary extends Api
         if (!$startDateInRange || !$endDateInRange) {
             $this->error('日期参数错误');
         }
-        // $options = [
-        //     'host'       => '127.0.0.1',
-        //     'port'       => 6379,
-        //     'password'   => '123456',
-        //     'select'     => 15,
-        //     'timeout'    => 0,
-        //     'expire'     => 0,
-        //     'persistent' => false,
-        //     'prefix'     => '',
-        // ];
-        // // $redis = new Redis($options);
-        // $taskIdentifier = md5(json_encode('date'));
-        // $queueKey =  $redis->get($taskIdentifier);
-        // if ($queueKey){
-        //     $this->success('数据正在处理中,请等待...');
-        // }
+        $options = [
+            'host'       => '127.0.0.1',
+            'port'       => 6379,
+            'password'   => '123456',
+            'select'     => 15,
+            'timeout'    => 0,
+            'expire'     => 0,
+            'persistent' => false,
+            'prefix'     => '',
+        ];
+        // $redis = new Redis($options);
+        $taskIdentifier = md5(json_encode('date'));
+        $queueKey =  $redis->get($taskIdentifier);
+        if ($queueKey){
+            $this->success('数据正在处理中,请等待...');
+        }
         $vacationOneArr = [];
         if (!empty($params['vacation_one_start']) && !empty($params['vacation_one_end'])){
             $vacationOneStart = strtotime($params['vacation_one_start']);
@@ -97,7 +97,7 @@ class StaffSalary extends Api
             $this->error('法定天数未设置');
         }
         //将起止日期内数据删除
-        // $delRes = \db('绩效工资汇总')->where('sczl_rq','between',[$startDate,$endDate])->delete();
+        $delRes = \db('绩效工资汇总')->where('sczl_rq','between',[$startDate,$endDate])->delete();
         //设备产量计酬报工数据查询
         $where = [];
         $where['a.sczl_rq'] = ['between',[$startDate,$endDate]];
@@ -190,19 +190,6 @@ class StaffSalary extends Api
                 $byThePieceYield =round($value['班组车头产量'] * floatval($gx_rate) * $num);
 
             }
-//            //计件产量
-//            if (substr($value['sczl_jtbh'],0,2) == 'JP'){
-//                $value['工序难度系数'] = $value['sczl_废品率系数'];
-//                $value['班组车头产量'] = $value['班组车头产量'] * $value['sczl_Pgcl'];
-//                $byThePieceYield = round($value['班组车头产量']  * $value['sczl_废品率系数']);
-//            }else{
-//                if ($value['工序难度系数'] <= 0 || empty($value['工序难度系数'])){
-//                    $value['工序难度系数'] = '1.0000';
-//                    $byThePieceYield = $value['班组车头产量'];
-//                }else{
-//                    $byThePieceYield = round($value['班组车头产量'] * $value['工序难度系数']);
-//                }
-//            }
             //补产产量/班组换算产量
             $afterProductionYield = ($value['装版工时'] + $value['保养工时'] + $value['打样工时']) * $value['补产标准'];
             //核算产量
@@ -249,7 +236,7 @@ class StaffSalary extends Api
                 }
             }
         }
-       halt($data);
+
         /**
          * 拆片工序数据
          */
@@ -290,7 +277,6 @@ class StaffSalary extends Api
             $item['sczl_gdbh'] = $value['sczl_gdbh'];
             $item['sczl_yjno'] = $value['sczl_yjno'];
             $item['sczl_gxh'] = $value['sczl_gxh'];
-//            $item['sczl_type'] = substr(trim($value['sczl_type']),0,30);
             $item['sczl_type'] = $value['sczl_type'];
             $item['sczl_rq'] = $value['sczl_rq'];
             $item['sczl_jtbh'] = $value['sczl_jtbh'];
@@ -315,7 +301,7 @@ class StaffSalary extends Api
             $item['工时占比'] = floatval($manHourRate);
             array_push($data,$item);
         }
-//        halt($data);
+
         /**
          * 手工检验工序数据
          */
@@ -364,7 +350,6 @@ class StaffSalary extends Api
                     $item['sczl_gdbh'] = $value['sczl_gdbh'];
                     $item['sczl_yjno'] = $value['sczl_yjno'];
                     $item['sczl_gxh'] = $value['sczl_gxh'];
-//                    $item['sczl_type'] = substr($value['sczl_type'],0,30);
                     $item['sczl_type'] = $value['sczl_type'];
                     $item['sczl_rq'] = $value['sczl_rq'];
                     $item['sczl_jtbh'] = '';
@@ -391,7 +376,7 @@ class StaffSalary extends Api
                 }
             }
         }
-//        halt($data);
+
         /**
          * 包装计件工序数据
          */
@@ -457,7 +442,6 @@ class StaffSalary extends Api
                     $item['sczl_gdbh'] = $value[$gdbhKey];
                     $item['sczl_yjno'] = ltrim(substr($value[$yjgxKey],0,2), '0');
                     $item['sczl_gxh'] = abs((int)substr($value[$yjgxKey],-2));
-//                    $item['sczl_type'] = substr($value[$gxmcKey],0,30);
                     $item['sczl_type'] = $value[$gxmcKey];
                     $item['sczl_rq'] = $value['sczl_rq'];
                     $item['sczl_jtbh'] = $value[$jtbhKey];
@@ -519,7 +503,6 @@ class StaffSalary extends Api
                 }
             }
         }
-//halt($data);
         //用于存储bh对应的工时占比总和
         $bhTotals = [];
         // 遍历原始数据
@@ -559,7 +542,6 @@ class StaffSalary extends Api
             $date = substr($item['sczl_rq'],0,10);
             if (in_array($date,$vacationOneArr) || in_array($date,$vacationTwoArr)){
                 //计件工资
-//                $pieceWorkWage = $data[$key]['达标定额']/1000*$item['千件工价']*$item['Rate']*3;
                 $pieceWorkWage = 0;
                 //加班工资
                 $overTimePay = $item['核算产量'] / 1000 *$item['千件工价'] * $item['Rate'] *3;
@@ -568,15 +550,6 @@ class StaffSalary extends Api
                     return $value !== $item['sczl_rq'];
                 });
             }else{
-//                //如果出勤天数小于法定天数,按正常计算
-//                if (count($days[$day_bh]) <= $params['days'] && strpos($item['sczl_type'],'成品防护') === false){
-//                     $pieceWorkWage = $data[$key]['达标定额']/1000*$item['千件工价']*$item['Rate'];
-//                }else{ //如果出勤天数大于法定天数,达标定额为 0,计件工资为0,超出的部分按加班工资算
-//                     $data[$key]['达标定额'] = '0.00';
-//                     $pieceWorkWage = '0.00';
-//                 }
-//                 $overTimePay = ($item['核算产量'] - $data[$key]['达标定额']) / 1000 *$item['千件工价'] * $item['Rate'] *1.5;
-
                 // 基础计件工资计算公式
                 $baseWage = ($data[$key]['达标定额'] / 1000) * $item['千件工价'] * $item['Rate'];
 
@@ -599,9 +572,6 @@ class StaffSalary extends Api
                     }
                 }
                 // 统一计算加班工资(所有情况都会计算)
-//                $actualOutput = (float)$item['核算产量'];
-//                $overtimeOutput = max($actualOutput - (float)$data[$key]['达标定额'], 0);
-//                $overTimePay = ($overtimeOutput / 1000) * $item['千件工价'] * $item['Rate'] * 1.5;
                 $overTimePay = ($item['核算产量'] - $data[$key]['达标定额']) / 1000 *$item['千件工价'] * $item['Rate'] *1.5;
             }
             $data[$key]['个人计件工资'] = number_format($pieceWorkWage,2,'.', '');