Pārlūkot izejas kodu

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

曹鹤洋 1 gadu atpakaļ
vecāks
revīzija
a06ac1ef61

+ 30 - 2
application/api/controller/Synchronization.php

@@ -34,8 +34,34 @@ class Synchronization extends Api
             $this->success('未获取新工单');
         }
         $data = [];
-        $i = $j = $m =0;
+        $i = $j = $m = $n =0;
         foreach ($workOrderList as $key=>$value){
+            $productData = \db('产品_基本资料')
+                ->where('产品编号',$value['成品编号'])
+                ->count();
+            if ($productData === 0){
+                $clientCode = substr($value['成品编号'],0,4);
+                $product = [
+                    '客户编号' => $clientCode,
+                    '客户名称' => $value['客户名称'],
+                    '产品编号' => $value['成品编号'],
+                    '产品名称' => $value['成品名称'],
+                    '计量单位' => '万张',
+                    '状态' => '',
+                    'Mod_rq' => date('Y-m-d H:i:s',time()),
+                    'UniqID' => \db('产品_基本资料')->order('UniqID desc')->value('UniqID')+1,
+                ];
+                if (strpos($value['成品名称'],'小盒') === false){
+                    $product['产品类别'] = '条盒';
+                }else{
+                    $product['产品类别'] = '小盒';
+                }
+                $productSql = \db('产品_基本资料')->fetchSql(true)->insert($product);
+                $productRes = \db()->query($productSql);
+                if ($productRes === false){
+                    $n++;
+                }
+            }
             $res = \db('工单_基本资料')
                 ->where('Uniqid',$value['UniqId'])
                 ->count();
@@ -70,6 +96,7 @@ class Synchronization extends Api
                     '成本考核_模切' => 1,
                     '成本考核_检验' => 1,
                     'gd_statu' => '3-计划中',
+                    'Sys_id' => '[1012/开单员]',
                     'Sys_rq' => date('Y-m-d H:i:s',time()),
                     'Mod_rq' => date('Y-m-d H:i:s',time()),
                     'U8UID' => $value['U8_UID'],
@@ -106,6 +133,7 @@ class Synchronization extends Api
                     '成本考核_模切' => 1,
                     '成本考核_检验' => 1,
                     'gd_statu' => '3-计划中',
+                    'Sys_id' => '[1012/开单员]',
                     'Sys_rq' => date('Y-m-d H:i:s',time()),
                     'Mod_rq' => date('Y-m-d H:i:s',time()),
                     'U8UID' => $value['U8_UID']
@@ -124,7 +152,7 @@ class Synchronization extends Api
                 $m++;
             }
         }
-        if ($j !== 0 || $m !==0){
+        if ($j !== 0 || $m !==0 || $n !== 0){
             $this->error('工单资料同步失败');
         }else{
             $this->success('工单资料同步成功');

+ 3 - 2
application/api/controller/WorkOrder.php

@@ -141,7 +141,7 @@ class WorkOrder extends Api
                 '销售订单号' => rtrim($value['销售订单号']),
                 '产品代号' => rtrim($value['Gd_cpdh']),
                 '产品名称' => rtrim($value['Gd_cpmc']),
-                '订单数量' => rtrim($value['订单数量']),
+                '订单数量' => floatval($value['订单数量']),
                 '单位' => rtrim($value['计量单位']),
                 '折合大箱' => rtrim((int)$value['投料大箱']),
                 '投料率' => rtrim($value['投料率']),
@@ -157,6 +157,7 @@ class WorkOrder extends Api
                 '更新时间' => rtrim($value['Mod_rq']),
                 'Uniqid' => rtrim($value['Uniqid'])
             ];
+
             $number = \db('工单_工艺资料')->where('Gy0_gdbh',$data[$key]['工单编号'])->count();
             if ($number === 0){
                 $data[$key]['status'] = '*';
@@ -244,7 +245,7 @@ class WorkOrder extends Api
                 }else{
                     $scrap = ceil(($value['Gy0_Rate0']+((int)($value['Gy0_计划接货数']/$value['Gy0_ls']))*$value['Gy0_Rate1'])*$value['损耗系数']*$value['Gy0_ms']);
                 }
-                if (rtrim($value['Gy0_sbbh']) == ''){
+                if (rtrim($value['Gy0_sbbh']) == '' || $value['Gy0_计划接货数'] == 0){
                     $number = 0;
                 }else{
                     $number = round(($scrap/((int)($value['Gy0_计划接货数']/$value['Gy0_ls'])))*100,2).'%';