Przeglądaj źródła

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

曹鹤洋 1 rok temu
rodzic
commit
2532c801e5

+ 14 - 5
application/api/controller/Product.php

@@ -158,7 +158,7 @@ class Product extends Api
         $gy_field = 'rtrim(a.Gy0_方案) as programme,a.Gy0_yjno,a.Gy0_gxh,rtrim(a.gy0_gxmc) as gy0_gxmc,a.A类产能 as A_power,rtrim(a.Gy0_shdh) as Gy0_shdh,rtrim(a.Gy0_sbbh) as Gy0_sbbh,
         a.工价系数 as difficulty_coe,a.损耗系数 as loss_coe,a.Gy0_Ms as ms_coe,a.Gy0_Ks,a.Gy0_ls,rtrim(a.Gy0_site) as Gy0_site,rtrim(a.Add_gxmc) as Add_gxmc,a.UniqID,a.Gy0_辅助工时,
         rtrim(a.工序备注) as remark,a.人工检_正品板 as artificial_zp,a.人工检_次品板 as artificial_cp,a.人工检_废检 as artificial_fj,a.机检_正品板 as machine_zp,a.机检_次品板 as machine_cp,
-        a.机检_废检 as machine_fj,rtrim(b.客户名称) as custom_name,rtrim(b.产品名称) as product_name,UniqId';
+        a.机检_废检 as machine_fj,rtrim(b.客户名称) as custom_name,rtrim(b.产品名称) as product_name,a.UniqId';
         $gyRes = db('产品_工艺资料')->alias('a')
             ->join('产品_基本资料 b','a.Gy0_cpdh = b.产品编号','left')
             ->where($option)->field($gy_field)->order('a.Gy0_yjno asc,a.Gy0_gxh asc')->select();
@@ -777,15 +777,24 @@ class Product extends Api
             ->join('物料_存货编码 c','a.存货编码 = c.物料代码','left')
             ->where('a.UniqID',$params['UniqID'])->field($field)->order('存货编码')->find();
         $where['Gy0_site'] = [
-            ['like','%胶印%'],
-            ['like','%烫模%'],
+            ['like','胶印%'],
+            ['like','烫模%'],
             'or'
         ];
         $option['Gy0_cpdh'] = $data['YB_cpdh'];
         $option['Gy0_gxh'] = ['<',10];
         $option['Gy0_sbbh'] = ['neq',''];
-        $gyData = \db('产品_工艺资料')->where($option)->where($where)->field('Gy0_方案,Gy0_yjno,Gy0_gxh,gy0_gxmc')->order('Gy0_yjno,Gy0_gxh')->select();
-        halt($gyData);
+        $gyData = \db('产品_工艺资料')->where($option)->where($where)
+            ->field('rtrim(Gy0_方案) as Gy0_方案,Gy0_yjno,Gy0_gxh,rtrim(gy0_gxmc) as gy0_gxmc,rtrim(Add_gxmc) as Add_gxmc')
+            ->order('Gy0_yjno,Gy0_gxh')->select();
+        $list = [];
+        foreach ($gyData as $key=>$value){
+            $yjno = $value['Gy0_yjno'] > 10 ? $value['Gy0_yjno'] : '0'.$value['Gy0_yjno'];
+            $gxh =  $value['Gy0_gxh'] > 10 ? $value['Gy0_gxh'] : '0'.$value['Gy0_gxh'];
+            $list[$key]['gy'] = $value['Gy0_方案'].'-->'.$yjno.'-'.$gxh.' '.$value['gy0_gxmc'];
+            $list[$key]['gxmc'] = $value['Add_gxmc'];
+        }
+        $data['gy_data'] = $list;
         $this->success('请求成功',$data);
     }
     /**

+ 1 - 0
application/api/controller/ReportingWork.php

@@ -260,6 +260,7 @@ class ReportingWork extends Api
         $data['order_info']['yjno'] = $produce['印件号'];
         $data['order_info']['gxh'] = $produce['工序号'];
         $data['order_info']['gxmc'] = $produce['工序名称'];
+        $data['order_info']['dedh'] = \db('dic_lzde')->where('适用机型',$machine)->value('sys_bh');
         $product = \db('工单_基本资料')->alias('a')
             ->join('工单_工艺资料 b','a.Gd_Gdbh = b.Gy0_gdbh','left')
             ->join('工单_印件资料 c','a.Gd_Gdbh = c.Yj_gdbh','left')

+ 110 - 41
application/api/controller/WorkOrder.php

@@ -35,28 +35,40 @@ class WorkOrder extends Api
             'productingAll' => $productingAll,
             'progressAll' => $progressAll
         ];
-        $sql = "SELECT
-                    SUBSTRING( `成品代号`, 1, 4 ) AS prefix,
-                    rtrim( Gd_khmc ) AS khmc,
-                    RTRIM( `Gd_客户名称` ) AS 客户名称 
+//        $sql = "SELECT
+//                    SUBSTRING( `成品代号`, 1, 4 ) AS prefix,
+//                    rtrim( Gd_khmc ) AS khmc,
+//                    RTRIM( `Gd_客户名称` ) AS 客户名称
+//                FROM
+//                    `工单_基本资料`
+//                WHERE
+//                    `成品代号` <> ''
+//                    AND ( `Gd_客户名称` <> '' OR Gd_khmc <> '' )
+//                GROUP BY
+//                    prefix
+//                ORDER BY
+//                    prefix";
+        $sql = "SELECT DISTINCT
+                    (客户编号),rtrim(客户名称 ) as 客户名称
                 FROM
-                    `工单_基本资料` 
-                WHERE
-                    `成品代号` <> '' 
-                    AND ( `Gd_客户名称` <> '' OR Gd_khmc <> '' ) 
+                    `产品_基本资料` 
                 GROUP BY
-                    prefix 
-                ORDER BY
-                    prefix";
+                    客户编号
+                order by 
+                    客户编号";
         $list = \db()->query($sql);
         if (empty($list)){
             $this->success('',[]);
         }
         foreach ($list as $key=>$value){
+            $value['客户编号'] = rtrim($value['客户编号']);
+            if ($value['客户编号'] == '1098'){
+                $value['客户名称'] = '打样专用';
+            }
             //这条sql查出来的数据可能不对,试一下以下sql
             //SELECT COUNT(*) FROM `工单_基本资料` WHERE (SUBSTRING( `成品代号`, 1, 4 ) = '1001' OR (`Gd_客户名称`='浙江中烟' AND `Gd_客户代号` = '1001')) AND gd_statu = '2-生产中' AND `行号` = '1'
-            $productIng = \db('工单_基本资料')->where('行号','1')->where('成品代号','LIKE',$value['prefix'].'%')->where('gd_statu','2-生产中')->count();
-            $proGress = \db('工单_基本资料')->where('行号','1')->where('成品代号','LIKE',$value['prefix'].'%')->where('gd_statu','3-计划中')->count();
+            $productIng = \db('工单_基本资料')->where('行号','1')->where('成品代号','LIKE',rtrim($value['客户编号']).'%')->where('gd_statu','2-生产中')->count();
+            $proGress = \db('工单_基本资料')->where('行号','1')->where('成品代号','LIKE',rtrim($value['客户编号']).'%')->where('gd_statu','3-计划中')->count();
             $string = '';
             if ($productIng != 0){
                 $string = $string."生产中:".$productIng;
@@ -65,9 +77,11 @@ class WorkOrder extends Api
                 $string = $string."计划中:".$proGress;
             }
             if ($string !== ''){
-                $data[$key] = $value['prefix'].'【'.$string.'】'.($value['客户名称']!==''?$value['客户名称']:$value['khmc']);
+//                $data[$key] = $value['prefix'].'【'.$string.'】'.($value['客户名称']!==''?$value['客户名称']:$value['khmc']);
+                $data[$key] = $value['客户编号'].'【'.$string.'】'.$value['客户名称'];
             }else{
-                $data[$key] = $value['prefix'].($value['客户名称']!==''?$value['客户名称']:$value['khmc']);
+//                $data[$key] = $value['prefix'].($value['客户名称']!==''?$value['客户名称']:$value['khmc']);
+                $data[$key] = $value['客户编号'].$value['客户名称'];
             }
         }
         $this->success('成功',$data);
@@ -550,7 +564,7 @@ class WorkOrder extends Api
         }
         $filed = 'rtrim(Gy0_方案) as 方案,rtrim(Gy0_yjno) as 印件号,rtrim(Gy0_gxh) as 工序号,rtrim(Gy0_gxmc) as gxmc,rtrim(Add_gxmc) as add_gxmc,
         rtrim(工价系数) as 工价系数,rtrim(损耗系数) as 损耗系数,rtrim(Gy0_ks) as ks,rtrim(Gy0_ls) as ls,rtrim(工序备注) as 备注,rtrim(Gy0_SITE) as 车间,
-        rtrim(Gy0_sbbh) as 设备编号,rtrim(Gy0_sbmc) as 设备名称,rtrim(Sys_id) as 建档用户,rtrim(Sys_rq) as 建档时间,rtrim(Mod_rq) as 更新时间';
+        rtrim(Gy0_sbbh) as 设备编号,rtrim(Gy0_sbmc) as 设备名称,rtrim(Sys_id) as 建档用户,rtrim(Sys_rq) as 建档时间,rtrim(Mod_rq) as 更新时间,rtrim(UniqId) as UniqId';
         $process = \db('工单_工艺资料')->where('Gy0_gdbh',$workOrder)->cache(true,84600)->field($filed)->select();
         if (empty($process)){
             $this->error('未找到该工单工艺资料');
@@ -586,7 +600,7 @@ class WorkOrder extends Api
         if (empty($productCode) || empty($workOrder)){
             $this->error('参数错误');
         }
-        $list = \db('工单_基本资料')->where('成品代号',$productCode)->where('Gd_gdbh','<>',$workOrder)->column('Gd_gdbh');
+        $list = \db('工单_基本资料')->where('成品代号',$productCode)->distinct(true)->where('Gd_gdbh','<>',$workOrder)->column('Gd_gdbh');
         if (empty($list)){
             $this->success('未获取该产品其他工单信息');
         }
@@ -611,32 +625,12 @@ class WorkOrder extends Api
         if (Request::instance()->isPost() === false){
             $this->error('请求错误');
         }
-        $oldWorkOrder = input('oldWorkOrder');
-        $newWorkOrder = input('newWorkOrder');
-        if (empty($oldWorkOrder) || empty($newWorkOrder))
-        {
+        $param = Request::instance()->post();
+        if (empty($param)){
             $this->error('参数错误');
         }
-        //获取原工单工艺资料
-        $oldProcessData = \db('工单_工艺资料')->where('Gy0_gdbh',$oldWorkOrder)->select();
-        $ProsessUniqId = \db('工单_工艺资料')->field('UniqId')->order('UniqId desc')->find();
-        foreach ($oldProcessData as $k=>$v){
-            $oldProcessData[$k]['Gy0_gdbh']  = $newWorkOrder;
-            $oldProcessData[$k]['Sys_id'] = '';
-            $oldProcessData[$k]['Mod_rq'] = date('Y-m-d H:i:s',time());
-            $oldProcessData[$k]['UniqId'] = $ProsessUniqId['UniqId'] + $k + 1;
-        }
-        if (\db('工单_工艺资料')->where('Gy0_gdbh',$newWorkOrder)->find()){
-            \db('工单_工艺资料')->where('Gy0_gdbh',$newWorkOrder)->delete();
-        }
-        //插入工艺资料
-        $ProcessSQL = \db('工单_工艺资料')->fetchSql(true)->insertAll($oldProcessData);
-        $ProcessRes = Db::query($ProcessSQL);
-        if ($ProcessRes !== false){
-            $this->success('成功');
-        }else{
-            $this->error('失败');
-        }
+
+
     }
 
     /**
@@ -1203,4 +1197,79 @@ class WorkOrder extends Api
         }
         $this->success('成功',$number['小时产能']);
     }
+
+
+    //新增工单
+
+    public function WorkOrderAdd()
+    {
+        if (Request::instance()->isPost() === false){
+            $this->error('请求错误');
+        }
+        $param = Request::instance()->post();
+        if (empty($param)){
+            $this->error('参数错误');
+        }
+
+    }
+
+    /**
+     * 新增工单->客户代号列表获取
+     * @return void
+     * @throws \think\db\exception\BindParamException
+     * @throws \think\exception\PDOException
+     */
+    public function ClientList()
+    {
+        if ($this->request->isGet() === false){
+            $this->error('请求错误');
+        }
+        $sql = "SELECT DISTINCT
+                    (客户编号),rtrim(客户名称 ) as 客户名称
+                FROM
+                    `产品_基本资料` 
+                GROUP BY
+                    客户编号
+                order by 
+                    客户编号";
+        $list = \db()->query($sql);
+        if (empty($list)){
+            $this->success('未找到客户列表');
+        }
+        foreach ($list as $key=>$value){
+            $list[$key]['客户编号'] = rtrim($value['客户编号']);
+            if ($value['客户编号'] == '1098'){
+                $list[$key]['客户名称'] = '打样专用';
+            }
+        }
+        $this->success('成功',$list);
+    }
+
+    /**
+     * 新增工单->产品代号获取
+     * @ApiMethod (GET)
+     * @param  void
+     * @return void
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\ModelNotFoundException
+     * @throws \think\exception\DbException
+     */
+    public function ProductCodeList()
+    {
+        if ($this->request->isGet() === false){
+            $this->error('请求错误');
+        }
+        $param = $this->request->param();
+        if (empty($param)){
+            $this->error('参数错误');
+        }
+        $list = \db('产品_基本资料')
+            ->where('客户编号',$param['cilent'])
+            ->field('rtrim(产品编号) as 产品编号,rtrim(产品名称) as 产品名称')
+            ->select();
+        if (empty($list)){
+            $this->success('未获取到产品数据');
+        }
+        $this->success('成功',$list);
+    }
 }