소스 검색

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

huangsanjia 1 년 전
부모
커밋
667b4e0a08
2개의 변경된 파일279개의 추가작업 그리고 16개의 파일을 삭제
  1. 272 9
      application/api/controller/PackagingProcessOutput.php
  2. 7 7
      application/api/controller/WorkOrder.php

+ 272 - 9
application/api/controller/PackagingProcessOutput.php

@@ -64,6 +64,8 @@ class PackagingProcessOutput extends Api
      * @ApiMethod (GET)
      * @param string $date 时间
      * @param string $sys_id 用户
+     * @param string $page 页码
+     * @param string $limit 数量
      */
     public function getList()
     {
@@ -85,6 +87,7 @@ class PackagingProcessOutput extends Api
             $this->error('参数错误');
         }
         if (isset($req['sys_id']) && !empty($req['sys_id'])) $where['sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
+        if (isset($req['sys_id']) && !empty($req['sys_id'])) $where['sys_id'] = ['LIKE','%'.$req['sys_id'].'%'];
 
         $rows = db()->table('db_包装产量预报')
             ->field('rtrim(sys_id) as sys_id, LEFT(sczl_rq, 10) as sczl_rq, 
@@ -111,6 +114,73 @@ class PackagingProcessOutput extends Api
         $this->success('成功',$data);
     }
 
+    /**
+     * 获取包装工序产量列表
+     * @ApiMethod (GET)
+     * @param string $gdbh 工单编号
+     * @param string $cpmc 产品名称
+     * @param string $page 页码
+     * @param string $limit 数量
+     */
+    public function locate()
+    {
+        //get请求
+        if(!$this->request->isGet()){
+            $this->error('请求方式错误');
+        }
+        $req = $this->request->param();
+
+        $page = 1;
+        $limit = 15;
+        if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
+        if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
+
+        if (isset($req['gdbh']) && !empty($req['gdbh'])){
+            $where = [
+                'sczl_gdbh1|sczl_gdbh2|sczl_gdbh3|sczl_gdbh4|sczl_gdbh5|sczl_gdbh6'=>[ 'like', '%' . $req['gdbh'] . '%']
+            ];
+            $rows = db()->table('db_包装产量预报')
+                ->field('rtrim(sys_id) as sys_id, LEFT(sczl_rq, 10) as sczl_rq, 
+            CAST(sczl_cl1 + sczl_cl2 + sczl_cl3 + sczl_cl4 + sczl_cl5 + sczl_cl6 AS SIGNED) as sczl_cl, 
+            CAST((sczl_cl1 * sczl_PgCl1 + sczl_clAdd1) + (sczl_cl2 * sczl_PgCl2 + sczl_clAdd2) + (sczl_cl3 * sczl_PgCl3 + sczl_clAdd3) + (sczl_cl4 * sczl_PgCl4 + sczl_clAdd4) + (sczl_cl5 * sczl_PgCl5 + sczl_clAdd5) + (sczl_cl6 * sczl_PgCl6 + sczl_clAdd6) AS SIGNED) as sczl_PgCl, 
+            sys_rq, mod_rq, UniqId')
+                ->where($where)
+                ->page($page,$limit)
+                ->select();
+            $total = db()->table('db_包装产量预报')->where($where)->count();
+        }else{
+            if (isset($req['cpmc']) && !empty($req['cpmc'])){
+                //查询工单表
+                $gd = db()->table('工单_基本资料')
+                    ->where('Gd_cpmc', 'LIKE', '%'.$req['cpmc'].'%')
+                    ->column('Gd_gdbh');
+                $where = [
+                    'sczl_gdbh1|sczl_gdbh2|sczl_gdbh3|sczl_gdbh4|sczl_gdbh5|sczl_gdbh6'=>['in', $gd]
+                ];
+                $rows = db()->table('db_包装产量预报')
+                    ->field('rtrim(sys_id) as sys_id, LEFT(sczl_rq, 10) as sczl_rq, 
+            CAST(sczl_cl1 + sczl_cl2 + sczl_cl3 + sczl_cl4 + sczl_cl5 + sczl_cl6 AS SIGNED) as sczl_cl, 
+            CAST((sczl_cl1 * sczl_PgCl1 + sczl_clAdd1) + (sczl_cl2 * sczl_PgCl2 + sczl_clAdd2) + (sczl_cl3 * sczl_PgCl3 + sczl_clAdd3) + (sczl_cl4 * sczl_PgCl4 + sczl_clAdd4) + (sczl_cl5 * sczl_PgCl5 + sczl_clAdd5) + (sczl_cl6 * sczl_PgCl6 + sczl_clAdd6) AS SIGNED) as sczl_PgCl, 
+            sys_rq, mod_rq, UniqId')
+                    ->where($where)
+                    ->page($page,$limit)
+                    ->select();
+                $total = db()->table('db_包装产量预报')->where($where)->count();
+            }else{
+                $this->error('参数错误');
+            }
+        }
+
+        foreach ($rows as $key=>$value){
+            $rows[$key]['mod_rq'] = $value['mod_rq']=='1900-01-01 00:00:00' ? '' :$value['mod_rq'];
+        }
+        $data = [
+            'total'    => $total,
+            'rows'          => $rows,
+        ];
+        $this->success('成功',$data);
+    }
+
     /**
      * 获取包装工序产量信息
      * @ApiMethod (GET)
@@ -128,18 +198,211 @@ class PackagingProcessOutput extends Api
         }else{
             $this->error('参数错误');
         }
+        $gd = db()->table('工单_基本资料')->column('Gd_gdbh, Gd_cpmc');
+        $rows = db()->table('db_包装产量预报')
+            ->field('LEFT(sczl_rq, 10) as sczl_rq, sczl_gdbh1, sczl_gdbh2, sczl_gdbh3, sczl_gdbh4, sczl_gdbh5, sczl_gdbh6, 
+            rtrim(sczl_yjGx1) as sczl_yjGx1, rtrim(sczl_yjGx2) as sczl_yjGx2, rtrim(sczl_yjGx3) as sczl_yjGx3, rtrim(sczl_yjGx4) as sczl_yjGx4, rtrim(sczl_yjGx5) as sczl_yjGx5, rtrim(sczl_yjGx6) as sczl_yjGx6, 
+            rtrim(sczl_gxmc1) as sczl_gxmc1, rtrim(sczl_gxmc2) as sczl_gxmc2, rtrim(sczl_gxmc3) as sczl_gxmc3, rtrim(sczl_gxmc4) as sczl_gxmc4, rtrim(sczl_gxmc5) as sczl_gxmc5, rtrim(sczl_gxmc6) as sczl_gxmc6, 
+            sczl_cl1, sczl_cl2, sczl_cl3, sczl_cl4, sczl_cl5, sczl_cl6, 
+            sczl_PgCl1, sczl_PgCl2, sczl_PgCl3, sczl_PgCl4, sczl_PgCl5, sczl_PgCl6, 
+            sczl_clAdd1, sczl_clAdd2, sczl_clAdd3, sczl_clAdd4, sczl_clAdd5, sczl_clAdd6')
+            ->where('UniqId',$UniqId)
+            ->find();
+
+        for ($i=1;$i<=6;$i++){
+            $rows['Gd_cpmc'.$i] = array_key_exists($rows['sczl_gdbh'.$i], $gd) ? trim($gd[$rows['sczl_gdbh'.$i]]) : '';
+        }
+
+        $this->success('成功',$rows);
+    }
+
+    /**
+     * 查询印件工序及产品名称
+     * @ApiMethod (GET)
+     * @param string $gdbh 工单编号
+     * @param string $gxmc 工序名称
+     */
+    public function getGxMc()
+    {
+        //get请求
+        if(!$this->request->isGet()){
+            $this->error('请求方式错误');
+        }
+        $req = $this->request->param();
+        if (isset($req['gdbh']) && !empty($req['gdbh'])){
+            $gdbh = $req['gdbh'];
+        }else{
+            $this->error('参数错误');
+        }
+        if (isset($req['gxmc']) && !empty($req['gxmc'])){
+            $gxmc = $req['gxmc'];
+        }else{
+            $this->error('参数错误');
+        }
 
-        $rows = db()->table('db_包装产量预报')->alias('d')
-            ->field('d.*, g1.Gd_cpmc, g2.Gd_cpmc, g3.Gd_cpmc, g4.Gd_cpmc, g5.Gd_cpmc, g6.Gd_cpmc')
-            ->join(['工单_基本资料'=>'g'], 'd.sczl_gdbh1 = g.Gd_gdbh or '.
-                'd.sczl_gdbh2 = g.Gd_gdbh or '.
-                'd.sczl_gdbh3 = g.Gd_gdbh or '.
-                'd.sczl_gdbh4 = g.Gd_gdbh or '.
-                'd.sczl_gdbh5 = g.Gd_gdbh or '.
-                'd.sczl_gdbh6 = g.Gd_gdbh')
-            ->where('d.UniqId',$UniqId)
+        $rows = db()->table('工单_基本资料')->alias('g')
+            ->field('rtrim(g.Gd_cpmc) as Gd_cpmc, c.Gy0_yjno, c.Gy0_gxh')
+            ->where(['g.Gd_gdbh'=>$gdbh, 'c.gy0_gxmc'=>['like','%'.$gxmc.'%']])
+            ->join(['产品_印件资料'=>'j'],'g.Gd_cpdh=j.yj_yjdh and g.成品代号=j.yj_cpdh')
+            ->join(['产品_工艺资料'=>'c'],'c.Gy0_yjno=j.yj_yjno and c.Gy0_cpdh=j.yj_cpdh')
             ->select();
 
+        foreach ($rows as $key=>$value){
+            $rows[$key]['jyGx'] =  sprintf("%02d", $value['Gy0_yjno']).'-'.$value['Gy0_gxh'];
+            unset($rows[$key]['Gy0_yjno']);
+            unset($rows[$key]['Gy0_gxh']);
+        }
+
         $this->success('成功',$rows);
     }
+
+    /**
+     * 新增
+     * @ApiMethod (POST)
+     * @param string 'sys_id','sczl_rq',
+    'sczl_gdbh1', 'sczl_gdbh2', 'sczl_gdbh3', 'sczl_gdbh4', 'sczl_gdbh5', 'sczl_gdbh6',
+    'sczl_yjGx1', 'sczl_yjGx2', 'sczl_yjGx3', 'sczl_yjGx4', 'sczl_yjGx5', 'sczl_yjGx6',
+    'sczl_gxmc1', 'sczl_gxmc2', 'sczl_gxmc3', 'sczl_gxmc4', 'sczl_gxmc5', 'sczl_gxmc6',
+    'sczl_cl1', 'sczl_cl2', 'sczl_cl3', 'sczl_cl4', 'sczl_cl5', 'sczl_cl6',
+    'sczl_PgCl1', 'sczl_PgCl2', 'sczl_PgCl3', 'sczl_PgCl4', 'sczl_PgCl5', 'sczl_PgCl6',
+    'sczl_clAdd1', 'sczl_clAdd2', 'sczl_clAdd3', 'sczl_clAdd4', 'sczl_clAdd5', 'sczl_clAdd6'
+     */
+    public function add()
+    {
+        //get请求
+        if(!$this->request->isPost()){
+            $this->error('请求方式错误');
+        }
+        $req = $this->request->param();
+        $arr = [
+            'sys_id','sczl_rq',
+            'sczl_gdbh1', 'sczl_gdbh2', 'sczl_gdbh3', 'sczl_gdbh4', 'sczl_gdbh5', 'sczl_gdbh6',
+            'sczl_yjGx1', 'sczl_yjGx2', 'sczl_yjGx3', 'sczl_yjGx4', 'sczl_yjGx5', 'sczl_yjGx6',
+            'sczl_gxmc1', 'sczl_gxmc2', 'sczl_gxmc3', 'sczl_gxmc4', 'sczl_gxmc5', 'sczl_gxmc6',
+            'sczl_cl1', 'sczl_cl2', 'sczl_cl3', 'sczl_cl4', 'sczl_cl5', 'sczl_cl6',
+            'sczl_PgCl1', 'sczl_PgCl2', 'sczl_PgCl3', 'sczl_PgCl4', 'sczl_PgCl5', 'sczl_PgCl6',
+            'sczl_clAdd1', 'sczl_clAdd2', 'sczl_clAdd3', 'sczl_clAdd4', 'sczl_clAdd5', 'sczl_clAdd6'
+        ];
+        $data = [];
+        foreach ($arr as $key => $value){
+            if (!(isset($req[$value]) && trim($req[$value])!='')){
+                $this->error('参数错误',$value,$key+1);
+            }
+            $data[$value] = $req[$value];
+        }
+        $data['sys_rq'] = date('Y-m-d H:i:s');
+
+        //开启事务
+        db()->startTrans();
+        try{
+            $bool = db()->table('db_包装产量预报')->insert($data);
+
+            // 提交事务
+            db()->commit();
+        } catch (\Exception $e) {
+            // 回滚事务
+            db()->rollback();
+            $this->error($e->getMessage());
+        }
+
+        if($bool===false) $this->error('失败');
+
+        $this->success('成功');
+
+    }
+
+    /**
+     * 修改
+     * @ApiMethod (POST)
+     * @param string 'UniqId','sczl_rq',
+    'sczl_gdbh1', 'sczl_gdbh2', 'sczl_gdbh3', 'sczl_gdbh4', 'sczl_gdbh5', 'sczl_gdbh6',
+    'sczl_yjGx1', 'sczl_yjGx2', 'sczl_yjGx3', 'sczl_yjGx4', 'sczl_yjGx5', 'sczl_yjGx6',
+    'sczl_gxmc1', 'sczl_gxmc2', 'sczl_gxmc3', 'sczl_gxmc4', 'sczl_gxmc5', 'sczl_gxmc6',
+    'sczl_cl1', 'sczl_cl2', 'sczl_cl3', 'sczl_cl4', 'sczl_cl5', 'sczl_cl6',
+    'sczl_PgCl1', 'sczl_PgCl2', 'sczl_PgCl3', 'sczl_PgCl4', 'sczl_PgCl5', 'sczl_PgCl6',
+    'sczl_clAdd1', 'sczl_clAdd2', 'sczl_clAdd3', 'sczl_clAdd4', 'sczl_clAdd5', 'sczl_clAdd6'
+     */
+    public function edit()
+    {
+        //get请求
+        if(!$this->request->isPost()){
+            $this->error('请求方式错误');
+        }
+        $req = $this->request->param();
+        $arr = [
+            'sczl_rq',
+            'sczl_gdbh1', 'sczl_gdbh2', 'sczl_gdbh3', 'sczl_gdbh4', 'sczl_gdbh5', 'sczl_gdbh6',
+            'sczl_yjGx1', 'sczl_yjGx2', 'sczl_yjGx3', 'sczl_yjGx4', 'sczl_yjGx5', 'sczl_yjGx6',
+            'sczl_gxmc1', 'sczl_gxmc2', 'sczl_gxmc3', 'sczl_gxmc4', 'sczl_gxmc5', 'sczl_gxmc6',
+            'sczl_cl1', 'sczl_cl2', 'sczl_cl3', 'sczl_cl4', 'sczl_cl5', 'sczl_cl6',
+            'sczl_PgCl1', 'sczl_PgCl2', 'sczl_PgCl3', 'sczl_PgCl4', 'sczl_PgCl5', 'sczl_PgCl6',
+            'sczl_clAdd1', 'sczl_clAdd2', 'sczl_clAdd3', 'sczl_clAdd4', 'sczl_clAdd5', 'sczl_clAdd6'
+        ];
+        $data = [];
+        foreach ($arr as $key => $value){
+            if (!(isset($req[$value]) && trim($req[$value])!='')){
+                $this->error('参数错误',$value,$key+1);
+            }
+            $data[$value] = $req[$value];
+        }
+        if (!(isset($req['UniqId']) && trim($req['UniqId'])!='')){
+            $this->error('参数错误','UniqId',100);
+        }
+        $data['mod_rq'] = date('Y-m-d H:i:s');
+
+        //开启事务
+        db()->startTrans();
+        try{
+            $bool = db()->table('db_包装产量预报')->where('UniqId',$req['UniqId'])->update($data);
+
+            // 提交事务
+            db()->commit();
+        } catch (\Exception $e) {
+            // 回滚事务
+            db()->rollback();
+            $this->error($e->getMessage());
+        }
+
+        if($bool===false) $this->error('失败');
+
+        $this->success('成功');
+    }
+
+    /**
+     * 修改
+     * @ApiMethod (POST)
+     * @param string 'UniqId'
+     */
+    public function del()
+    {
+        //get请求
+        if(!$this->request->isPost()){
+            $this->error('请求方式错误');
+        }
+        $req = $this->request->param();
+
+        if (!(isset($req['UniqId']) && trim($req['UniqId'])!='')){
+            $this->error('参数错误','UniqId',100);
+        }
+
+        //开启事务
+        db()->startTrans();
+        try{
+            $bool = db()->table('db_包装产量预报')->where('UniqId',$req['UniqId'])->delete();
+
+            // 提交事务
+            db()->commit();
+        } catch (\Exception $e) {
+            // 回滚事务
+            db()->rollback();
+            $this->error($e->getMessage());
+        }
+
+        if($bool===false) $this->error('失败');
+
+        $this->success('成功');
+
+    }
 }
+
+

+ 7 - 7
application/api/controller/WorkOrder.php

@@ -204,20 +204,20 @@ class WorkOrder extends Api
                     '损耗率' => rtrim($value['Gy0_Rate1']),
                     '报废定额' => '',
                     '允损比例' => '',
-                    '难度系数' => rtrim($product['工价系数']),
-                    '损耗系数' => rtrim($product['损耗系数']),
+                    '难度系数' => isset($product['工价系数'])?rtrim($product['工价系数']):'',
+                    '损耗系数' => isset($product['损耗系数'])?rtrim($product['损耗系数']):'',
                     '人工检_次品板' => (int)$value['人工检_次品板']=0?'':$value['人工检_次品板'],
                     '人工检_废检' => (int)$value['人工检_废检']=0?'':$value['人工检_废检'],
                     '机检_正品板' => (int)$value['机检_正品板']=0?'':$value['机检_正品板'],
                     '机检_次品板' => (int)$value['机检_次品板']=0?'':$value['机检_次品板'],
                     '机检_废检' => (int)$value['机检_废检']=0?'':$value['机检_废检'],
                     '开数*联数' => rtrim($value['Gy0_ks']).'*'.rtrim($value['Gy0_ls']),
-                    '备注' => rtrim($value['工序备注']),
-                    '印刷方式' => rtrim($value['印刷方式']),
-                    '版距' => rtrim($value['版距']),
+                    '备注' => isset($value['工序备注'])?rtrim($value['工序备注']):'',
+                    '印刷方式' => isset($value['印刷方式'])?rtrim($value['印刷方式']):'',
+                    '版距' => isset($value['版距'])?rtrim($value['版距']):'',
                     '建档用户' => rtrim($value['Sys_id']),
-                    '建档日期' => rtrim($value['Sys_rq']),
-                    '更新时间' => rtrim($value['Mod_rq']),
+                    '建档日期' => isset($value['Sys_rq'])?rtrim($value['Sys_rq']):'',
+                    '更新时间' => isset($value['Mod_rq'])?rtrim($value['Mod_rq']):'',
                 ];
             }
         }