Selaa lähdekoodia

Merge branch 'master' of https://git.7in6.com/Minong/mes-server-api

曹鹤洋 1 vuosi sitten
vanhempi
commit
5689f563f8

+ 82 - 2
application/api/controller/Facility.php

@@ -89,13 +89,13 @@ class Facility extends Api
             'sczl_jtbh' => $machine,
             'sczl_rq' => date('Y-m-d H:i:s',strtotime($date.' 00:00:00')),
         ];
-        $field = 'rtrim(sczl_gdbh) as 工单编号,rtrim(sczl_dedh) as dedh,rtrim(sczl_yjno) as yjno,rtrim(sczl_gxmc) as gxmc,rtrim(sczl_num) as num,rtrim(sczl_sj1) as sj1,
+        $field = 'rtrim(sczl_gdbh) as 工单编号,rtrim(sczl_dedh) as dedh,rtrim(sczl_yjno) as yjno,rtrim(sczl_gxh) as gxh,rtrim(sczl_gxmc) as gxmc,rtrim(sczl_num) as num,rtrim(sczl_sj1) as sj1,
         rtrim(sczl_sj2) as sj2,rtrim(sczl_cl) as 产量,rtrim(sczl_bzdh) as bzdh,rtrim(sczl_zcfp) as 制程废品,rtrim(sczl_zccp) as 制程次品,rtrim(sczl_前工序废) as 前工序废,rtrim(sczl_来料少数) as 来料异常,
         rtrim(sczl_装版工时) as 装版工时,rtrim(sczl_保养工时) as 保养工时,rtrim(sczl_打样工时) as 打样工时,rtrim(sczl_异常停机工时) as 异常总工时,rtrim(sczl_设备运行工时) as 通电工时,
         rtrim(码开始行) as 码开始行,rtrim(码结束行) as 码结束行,rtrim(码包) as 码包,rtrim(主电表) as 主电表,rtrim(辅电表) as 辅电表,rtrim(sczl_ms) as 色度数,
         rtrim(sys_id) as 用户,rtrim(mod_rq) as 更新时间,rtrim(sczl_异常工时1) as 异常补时,rtrim(sczl_异常类型1) as 异常类型,sczl_bh1,sczl_bh2,
         sczl_bh3,sczl_bh4,sczl_bh5,sczl_bh6,sczl_bh7,sczl_bh8,sczl_bh9,sczl_bh10,sczl_rate1,sczl_rate2,sczl_rate3,sczl_rate4,sczl_rate5,sczl_rate6,sczl_rate7,
-        sczl_rate8,sczl_rate9,sczl_rate10,sczl_bh98,rtrim(UniqId) as UniqId';
+        sczl_rate8,sczl_rate9,sczl_rate10,sczl_bh98,rtrim(UniqId) as UniqId,rtrim(sczl_工价系数) as 难度系数';
         //机台信息
         $machineDetail = \db('设备_基本资料')->where('设备编号',$machine)->field('rtrim(千件工价) as 千件工价,rtrim(日定额) as 日定额')->find();
         //工单编号
@@ -120,6 +120,17 @@ class Facility extends Api
                 $list[$key]['产品名称'] = $value['工单编号'];
                 $list[$key]['cpmc'] = '';
             }
+            $process = \db('工单_工艺资料')
+                ->where('Gy0_gdbh',$value['工单编号'])
+                ->where('Gy0_gxh',$value['gxh'])
+                ->field('rtrim(工价系数) as 工价系数,rtrim(印刷方式) as 印刷方式,rtrim(版距) as 版距')
+                ->find();
+            if ($value['难度系数'] == 0){
+                $list[$key]['难度系数'] = $process['工价系数'];
+            }else{
+                $list[$key]['难度系数'] = $process['工价系数'].'x'.$value['难度系数'];
+            }
+            $list[$key]['印刷方式'] = $process['印刷方式'].' '.$process['版距'];
             if ($value['yjno']<10){
                 $list[$key]['yjno'] = '0'.$value['yjno'];
             }
@@ -2133,4 +2144,73 @@ class Facility extends Api
         $this->success('成功',$list);
     }
 
+    /**
+     * 工价系数修改
+     * @return void
+     * @throws \think\Exception
+     * @throws \think\db\exception\BindParamException
+     * @throws \think\exception\PDOException
+     */
+    public function CoefficientEdit()
+    {
+        if (Request::instance()->isPost() === false){
+            $this->error('请求错误');
+        }
+        $params = Request::instance()->post();
+        if (empty($params['id'])){
+            $this->error('参数错误');
+        }
+        $idList = explode(',',$params['id']);
+        $i=0;
+        foreach ($idList as $key=>$value){
+            $sql = \db('设备_产量计酬')
+                ->where('UniqId',$value)
+                ->fetchSql(true)
+                ->update(['sczl_工价系数'=>$params['工价系数']]);
+            $res = \db()->query($sql);
+            if ($res === false){
+                $i++;
+            }
+        }
+        if ($i!==0){
+            $this->error('修改失败');
+        }else{
+            $this->success('修改成功');
+        }
+    }
+
+    /**
+     * 色度系数修改
+     * @return void
+     * @throws \think\Exception
+     * @throws \think\db\exception\BindParamException
+     * @throws \think\exception\PDOException
+     */
+    public function ChromaDataEdit()
+    {
+        if (Request::instance()->isPost() === false){
+            $this->error('请求错误');
+        }
+        $params = Request::instance()->post();
+        if (empty($params['id'])){
+            $this->error('参数错误');
+        }
+        $idList = explode(',',$params['id']);
+        $i=0;
+        foreach ($idList as $key=>$value){
+            $sql = \db('设备_产量计酬')
+                ->where('UniqId',$value)
+                ->fetchSql(true)
+                ->update(['sczl_ms'=>$params['ms']]);
+            $res = \db()->query($sql);
+            if ($res === false){
+                $i++;
+            }
+        }
+        if ($i!==0){
+            $this->error('修改失败');
+        }else{
+            $this->success('修改成功');
+        }
+    }
 }

+ 2 - 2
application/api/controller/OrderSuperLoss.php

@@ -137,7 +137,7 @@ class OrderSuperLoss extends Api
                     ->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh','left')
                     ->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh','left')
                     ->where($where)
-                    ->where('LEFT(a.成品编码, '.$num.') = '.$params['code'])
+                    ->whereRaw('LEFT(a.成品编码, ' . $num . ') = "' . $params['code'] . '"')
                     ->field('DISTINCT(a.jjcp_gdbh) as Gd_gdbh,a.jjcp_yjno,rtrim(a.成品编码) as 成品编码,rtrim(a.成品名称) as 成品名称,a.jjcp_sj,a.jjcp_smb,b.计量单位,
                 b.Gd_khdh, b.实际投料,c.yj_Yjno, c.yj_ls')
                     ->order('b.Gd_khdh,a.成品编码 asc,a.jjcp_sj desc')
@@ -148,7 +148,7 @@ class OrderSuperLoss extends Api
                     ->join('工单_基本资料 b', 'a.jjcp_gdbh = b.Gd_gdbh','left')
                     ->join('工单_印件资料 c', 'a.jjcp_gdbh = c.Yj_Gdbh','left')
                     ->where($where)
-                    ->where('LEFT(a.成品编码,'.$num.') ='.$params['code'])
+                    ->whereRaw('LEFT(a.成品编码, ' . $num . ') = "' . $params['code'] . '"')
                     ->count();
             }else{
                 $data = db('成品入仓')->alias('a')

+ 2 - 2
application/api/controller/Product.php

@@ -39,10 +39,10 @@ class Product extends Api
         if (!isset($limit)){
             $limit = 15;
         }
-        if (!isset($pages)){
+        if (!isset($params['page'])){
             $pages = 0;
         }else{
-            $pages = ($params['page']-1) * $limit;
+            $pages = ((int)$params['page'] -1 ) * (int)$limit;
         }
         $total = 0;
         if (isset($params['custom_code']) && !empty($params['custom_code'])){

+ 25 - 8
application/api/controller/StaffSalary.php

@@ -96,7 +96,7 @@ class StaffSalary extends Api
         $delRes = \db('绩效工资汇总')->where('sczl_rq','between',[$startDate,$endDate])->delete();
         $where = [];
         $where['a.sczl_rq'] = ['between',[$startDate,$endDate]];
-        $fields = "a.sczl_gdbh,a.sczl_yjno,a.sczl_gxh,a.sczl_gxmc as sczl_type,a.sczl_rq,a.sczl_jtbh,a.sczl_ms,a.sczl_cl as 班组车头产量,a.sczl_Pgcl,a.sczl_zcfp,
+        $fields = "a.sczl_gdbh,a.sczl_yjno,a.sczl_gxh,a.sczl_gxmc as sczl_type,a.sczl_rq,a.sczl_jtbh,a.sczl_工价系数,a.sczl_ms,a.sczl_cl as 班组车头产量,a.sczl_Pgcl,a.sczl_zcfp,
                 a.sczl_装版工时 as 装版工时,a.sczl_保养工时 as 保养工时,a.sczl_打样工时 as 打样工时,a.sczl_异常停机工时 as 异常停机工时,a.sczl_设备运行工时 as 车头产量占用机时,
                 a.sczl_bh1,a.sczl_bh2,a.sczl_bh3,a.sczl_bh4,a.sczl_bh5,a.sczl_bh6,a.sczl_bh7,a.sczl_bh8,a.sczl_bh9,a.sczl_bh10,
                 a.sczl_rate1,a.sczl_rate2,a.sczl_rate3,a.sczl_rate4,a.sczl_rate5,a.sczl_rate6,a.sczl_rate7,a.sczl_rate8,a.sczl_rate9,a.sczl_rate10,a.sczl_废品率系数,
@@ -134,13 +134,30 @@ class StaffSalary extends Api
                 $value['班组车头产量'] = $value['班组车头产量'] * $value['sczl_Pgcl'];
                 $byThePieceYield = round($value['班组车头产量']  * $value['sczl_废品率系数']);
             }else{
-                if ($value['工序难度系数'] <= 0 || empty($value['工序难度系数'])){
-                    $value['工序难度系数'] = '1.0000';
-                    $byThePieceYield = $value['班组车头产量'];
+                if ($value['sczl_工价系数'] == '0.000' || floatval($value['sczl_工价系数']) <= 0){
+                    //工序难度系数
+                    $gx_rate = $value['工序难度系数'];
+                    if (floatval($value['工序难度系数']) <= 0 || empty($value['工序难度系数'])){
+                        $gx_rate = '1.0000';
+                    }
                 }else{
-                    $byThePieceYield = round($value['班组车头产量'] * $value['工序难度系数']);
+                    $gx_rate = number_format($value['sczl_工价系数'] * $value['工序难度系数'],3);
                 }
+                $byThePieceYield = round($value['班组车头产量'] * $gx_rate);
             }
+//            //计件产量
+//            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['补产标准'];
             //核算产量
@@ -166,7 +183,7 @@ class StaffSalary extends Api
                     $item['sczl_jtbh'] = $value['sczl_jtbh'];
                     $item['班组车头产量'] = $value['班组车头产量'];
                     $item['工价系数'] = '0.0000';
-                    $item['工序难度系数'] = $value['工序难度系数'];
+                    $item['工序难度系数'] = $gx_rate;
                     $item['装版工时'] = $value['装版工时'];
                     $item['保养工时'] = $value['保养工时'];
                     $item['打样工时'] = $value['打样工时'];
@@ -187,7 +204,7 @@ class StaffSalary extends Api
                 }
             }
         }
-//        halt($data);
+
         /**
          * 拆片工序数据
         */
@@ -496,7 +513,7 @@ class StaffSalary extends Api
             $data[$key]['法定天数'] = $params['days'];
             $data[$key]['sczl_type'] = trim($item['sczl_type']);
         }
-        $taskIdentifier = md5(json_encode('date'));
+
         // 检查任务是否已经存在于队列中,如果不存在则推送任务到队列
         if (!$redis->has($taskIdentifier)) {
             $job = new InsertDataJob($data); // 创建任务实例

+ 1 - 1
application/api/controller/WorkOrderVerification.php

@@ -319,7 +319,7 @@ class WorkOrderVerification extends Api
         $list = db('工单_印件资料')->where($where)->field('yj_yjmc')->find();
         $option['Gy0_gdbh'] = $params['order'];
         $option['Gy0_yjno'] = $params['yj_no'];
-        $option['Gy0_site'] = '检验车间';
+//        $option['Gy0_site'] = '印后车间';
         $option['Gy0_gxmc'] = array('not in',['包装','外发加工','废挑正','成品防护']);
         $gxList = db('工单_工艺资料')->where($option)->field('Gy0_gxh,rtrim(Gy0_gxmc) as Gy0_gxmc,rtrim(Add_gxmc) as Add_gxmc')->select();
         $max = db('设备_产量计酬')->where('sczl_gdbh',$params['order'])->where('sczl_yjno',$params['yj_no'])->field('MAX(sczl_num) as sczl_num')->value('sczl_num');