Browse Source

优化扩单功能

liuhairui 2 years ago
parent
commit
8df3e512b8

+ 23 - 9
application/admin/controller/Formula.php

@@ -494,19 +494,19 @@ class Formula extends Backend
         $params['machine'] = $base[7];
         $params['oid'] = $base[8];
         $params['kuodan']=$base[9];
-        //echo "<pre>";
-        //print_r($params);
-        //echo "</pre>";die;
-//        if(!empty($base[9]))
-//            if($base[9]){
-//                $params['kuodan']=$base[9];
-//        }
         $params['create'] = date('Y-m-d H:i:s');
         $result = false;
         Db::startTrans();
         try {
+            $task_kd = Db::name('task')->where('bach',$base[2])->find();
+            if (empty($task_kd)) {
+                // 没有找到匹配的数据,执行插入操作
+                $result = Db::name('task')->insert($params);
+
+            }
+            $result = true;
 //            Db::name('order')->where('id',$params['oid'])->setField('status',2);
-            $result = Db::name('task')->insert($params);
+//            $result = Db::name('task')->insert($params);
             //更改订单已完成数量,修改订单状态
             $order_info = Db::name('order')->where('id',$params['oid'])->find();
             if (empty($order_info['completed'])){
@@ -526,8 +526,8 @@ class Formula extends Backend
             $this->error(__('No rows were updated'));
         }
         $this->success();
-
     }
+
     //配方审核列表
     public function examine(){
         //设置过滤方法
@@ -644,9 +644,21 @@ class Formula extends Backend
         $result = ['total' => count($row), 'rows' => $row];
         return json($result);
     }
+
     //获取生产单应加量
     public function getNumber(){
         $params = input('');
+
+        if ($params['kuodan']) {
+            $task_kd = Db::name('task')->where('bach',$params['bach'])->find();
+            if ($task_kd) {
+                $kuodan['kuodan'] = $params['kuodan'];
+                Db::name('task')->where('bach', $params['bach'])->update($kuodan);
+            }else{
+                $this->error('该配方为生成新批次号');
+            }
+        }
+
         if ($params['ids'] == '' || $params['number'] == '' || !is_numeric($params['number'])){
             return array('status'=>0,'msg'=>'请求参数错误');
         }
@@ -679,6 +691,7 @@ class Formula extends Backend
         $date = date('Y/m/d');
         return array('status'=>1,'data'=>$gyinfo,'formula_no'=>$list['formula_no'],'date'=>$date);
     }
+
     //获取工艺说明
     public function gyName(){
         $params = input('gy_name');
@@ -694,6 +707,7 @@ class Formula extends Backend
 //        return array('status'=>1,'rows'=>$list);
         return json($result);
     }
+
     public function addFormulaChinese($ids = null){
         $date = date('Ymd',time());
         if (!$ids){

+ 15 - 12
application/admin/controller/Task.php

@@ -125,8 +125,7 @@ class Task extends Backend
     /**
      * 生产管理 作业票列表查看
      */
-    public function show($ids)
-    {
+    public function show($ids){
         $row = $this->model->get($ids);
         $this->view->assign("row", $row);
         $this->view->assign("ids", $ids);
@@ -136,9 +135,7 @@ class Task extends Backend
             $formula_detail['detail'][$key]['percentage'] = decode($value['percentage']);
         }
         $this->view->assign("formula_detail", $formula_detail);
-
-
-        $task= Db::name('task')->where('id',$ids)->find();
+        $task = Db::name('task')->where('id',$ids)->find();
         $gyinfo= Db::name('formula_detail')->where('pid',$row['fid'])->select();
         if (empty($gyinfo)){return array('status'=>0,'msg'=>'数据错误');}
         $total = Db::name('formula_detail')->where('pid',$row['fid'])->column('percentage');
@@ -148,16 +145,22 @@ class Task extends Backend
         }
         $num = array_sum($total);
         foreach ($gyinfo as $key=>$value){
-            if($gyinfo[$key]['gy_name'] == null){//
-                $gyinfo[$key]['gy_name'] = '';//
-            }//
+            if($gyinfo[$key]['gy_name'] == null){
+                $gyinfo[$key]['gy_name'] = '';
+            }
             $gyinfo[$key]['num'] = '';
             $gyinfo[$key]['percentage'] =  decode($value['percentage']);
-            if (!empty($value['percentage'])){
-//                $gyinfo[$key]['num'] = number_format($gyinfo[$key]['percentage'] / $num * $params['number'],3);
-                $number = ceil($gyinfo[$key]['percentage'] / $num * $task['number'] *1000);
-                $gyinfo[$key]['num'] = number_format($number/1000,3);
+            if($task['kuodan']){
+                if (!empty($value['percentage'])){
+                    $number = ceil($gyinfo[$key]['percentage'] / $num * $task['number']+$task['number'] *1000);
+                }
+            }else{
+                if (!empty($value['percentage'])){
+                    $number = ceil($gyinfo[$key]['percentage'] / $num * $task['number'] *1000);
+                }
             }
+            $gyinfo[$key]['num'] = number_format($number / 1000,3);
+            $gyinfo[$key]['numm'] = $num;
         }
 
         $date = date('Y/m/d');

+ 1 - 1
application/admin/lang/zh-cn/task.php

@@ -9,6 +9,6 @@ return [
     'Remark'       => '备注',
     'Fid'          => '关联配方id',
     'Create'       => '创建时间',
-    'Kuodan'       => '扩单后应加量',
+    'Kuodan'       => '扩单量',
     'Machine'       => '机台'
 ];

+ 10 - 10
application/admin/view/formula/index.html

@@ -4,9 +4,9 @@
         {:build_heading(null,FALSE)}
         <ul class="nav nav-tabs" data-field="status">
             <li class="{:$Think.get.status === null ? 'active' : ''}"><a href="#t-all" data-value="" data-toggle="tab">{:__('All')}</a></li>
-            {foreach name="statusList" item="vo"}
-            <li class="{:$Think.get.status === (string)$key ? 'active' : ''}"><a href="#t-{$key}" data-value="{$key}" data-toggle="tab">{$vo}</a></li>
-            {/foreach}
+            <!--{foreach name="statusList" item="vo"}-->
+            <!--<li class="{:$Think.get.status === (string)$key ? 'active' : ''}"><a href="#t-{$key}" data-value="{$key}" data-toggle="tab">{$vo}</a></li>-->
+            <!--{/foreach}-->
         </ul>
     </div>
 
@@ -22,13 +22,13 @@
                         <a href="javascript:;" class="btn btn-danger btn-del btn-disabled disabled {:$auth->check('formula/del')?'':'hide'}" title="{:__('Delete')}" ><i class="fa fa-trash"></i> {:__('Delete')}</a>
                         
 
-                        <div class="dropdown btn-group {:$auth->check('formula/multi')?'':'hide'}">
-                            <a class="btn btn-primary btn-more dropdown-toggle btn-disabled disabled" data-toggle="dropdown"><i class="fa fa-cog"></i> {:__('More')}</a>
-                            <ul class="dropdown-menu text-left" role="menu">
-                                <li><a class="btn btn-link btn-multi btn-disabled disabled" href="javascript:;" data-params="status=normal"><i class="fa fa-eye"></i> {:__('Set to normal')}</a></li>
-                                <li><a class="btn btn-link btn-multi btn-disabled disabled" href="javascript:;" data-params="status=hidden"><i class="fa fa-eye-slash"></i> {:__('Set to hidden')}</a></li>
-                            </ul>
-                        </div>
+                        <!--<div class="dropdown btn-group {:$auth->check('formula/multi')?'':'hide'}">-->
+                            <!--<a class="btn btn-primary btn-more dropdown-toggle btn-disabled disabled" data-toggle="dropdown"><i class="fa fa-cog"></i> {:__('More')}</a>-->
+                            <!--<ul class="dropdown-menu text-left" role="menu">-->
+                                <!--<li><a class="btn btn-link btn-multi btn-disabled disabled" href="javascript:;" data-params="status=normal"><i class="fa fa-eye"></i> {:__('Set to normal')}</a></li>-->
+                                <!--<li><a class="btn btn-link btn-multi btn-disabled disabled" href="javascript:;" data-params="status=hidden"><i class="fa fa-eye-slash"></i> {:__('Set to hidden')}</a></li>-->
+                            <!--</ul>-->
+                        <!--</div>-->
 
                         
                     </div>

+ 2 - 0
application/admin/view/formula/task.html

@@ -33,6 +33,8 @@
             <input id="hidden" type="hidden" value="{$bach}">
             <input id="c-bach" class="form-control" name="row[bach]" type="text" value="{$bach}">
         </div>
+        <span style="color: red">扩单:请输入扩单批次号</span>
+
     </div>
 
     <div class="form-group">

+ 13 - 0
application/admin/view/task/show.html

@@ -30,12 +30,25 @@
                 <input id="c-drawer_name" readonly class="form-control" name="row[drawer_name]" value="{$row.drawer_name}" type="text">
             </div>
         </div>
+        <!--<div class="form-group">-->
+            <!--<label class="control-label col-xs-12 col-sm-5">{:__('Number')}:</label>-->
+            <!--<div class="col-xs-12 col-sm-6">-->
+                <!--<input id="c-number" readonly class="form-control" name="row[number]" value="{$row.number}" type="text">-->
+            <!--</div>-->
+        <!--</div>-->
         <div class="form-group">
             <label class="control-label col-xs-12 col-sm-5">{:__('Number')}:</label>
             <div class="col-xs-12 col-sm-6">
+                {if empty($row['kuodan'])}
+                <!-- 如果 $row['kuodan'] 为空,则显示 $row['number'] -->
                 <input id="c-number" readonly class="form-control" name="row[number]" value="{$row.number}" type="text">
+                {else}
+                <!-- 如果 $row['kuodan'] 不为空,则显示 {$row.number}+{$row.kuodan} -->
+                <input id="c-kuodan" readonly class="form-control" name="row[kuodan]" value="{$row.number + $row.kuodan}" type="text">
+                {/if}
             </div>
         </div>
+
     </div>
     <div style="width: 40%;float:right;margin: 0px 214px 0px 0px">
         <div class="form-group">

+ 10 - 1
public/assets/js/backend/formula.js

@@ -394,6 +394,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     $('#c-kuoz').val(value2);
                     //配方获取和计算
                     var ids = $('#ids').val();
+                    // var bach = parseInt($('#c-bach').val());//获取批次号
                     var number = parseInt($('#c-number').val());//获取生产量数据
                     var kd_number = parseFloat($('#c-kuoz').val());//获取扩单后应加重量数据
                     if (number == ''){
@@ -439,6 +440,8 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                         data: {
                             'ids': ids,
                             'number': number,
+                            'kuodan': kd_number,
+                            'bach': bach,
                         },
                         success:function(data) {
                             if (1 == data.status){
@@ -498,6 +501,10 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                 //配方获取和计算
                 var ids = $('#ids').val();//获取配方ID
                 var number = $('#c-number').val();//获取生成作业票生产量值
+                var kd_number = parseFloat($('#c-kuoz').val());//获取扩单后应加重量数据
+                if (isNaN(kd_number)) {
+                    kd_number = ''; //扩单后应加量为空
+                }
                 if (number == ''){
                     layer.confirm('生产量不能为空');
                     return false;
@@ -537,7 +544,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     url: "formula/getNumber",
                     data: {
                         'ids': ids,
-                        'number': number
+                        'number': number,
+                        'kuodan': kd_number,
+                        'bach': bach,
                     },
                     success:function(data) {
                         if (1 == data.status)