Pārlūkot izejas kodu

订单管理--添加明细状态,搜索部分添加(按范围搜索指定订单状态的订单)

haozi 5 gadi atpakaļ
vecāks
revīzija
f9e682afde

+ 18 - 8
app/Http/Controllers/OrderController.php

@@ -25,6 +25,7 @@ class OrderController extends Controller
         $orderno=$request->input('orderno');
         $soreference5=$request->input('soreference5');
         $codename_c=$request->input('codename_c');
+        $codename_c_end=$request->input('codename_c_end');
         $carriername=$request->input('carriername');
         $soreference1=$request->input('soreference1');
         $issuepartyname=$request->input('issuepartyname');
@@ -45,7 +46,9 @@ class OrderController extends Controller
         }
         if ($customerid)$sql.=" and customerid='".$customerid."'";
         if ($orderno)$sql.=" and orderno like '".$orderno."%'";
-        if ($codename_c)$sql.=" and sostatus = '".$codename_c."'";
+        if ($codename_c&&$codename_c_end)$sql.=" and sostatus between '".$codename_c."' and '".$codename_c_end."'";
+        if ($codename_c&&!$codename_c_end)$sql.=" and sostatus = '".$codename_c."'";
+        if (!$codename_c&&$codename_c_end)$sql.=" and sostatus = '".$codename_c_end."'";
         if ($carriername)$sql.=" and carriername like '".$carriername."%'";
         if ($soreference1){
             $arr=array_filter(preg_split('/[,, ]+/is', $soreference1));
@@ -118,7 +121,8 @@ class OrderController extends Controller
         ,DOC_ORDER_HEADER.soreference5,DOC_ORDER_HEADER.EDISENDFLAG2,DOC_ORDER_HEADER.EDISendTime2,DOC_ORDER_HEADER.Notes,DOC_ORDER_HEADER.ERPCANCELFLAG,
        DOC_ORDER_HEADER.Picking_Print_Flag,DOC_ORDER_HEADER.EDISENDFLAG
         ,DOC_ORDER_HEADER.ReleaseStatus,DOC_ORDER_HEADER.C_Address1,DOC_ORDER_HEADER.OrderTime,DOC_Order_Details.CustomerID,
-       DOC_Order_Details.SKU,DOC_Order_Details.QtyOrdered,DOC_Order_Details.OrderLineNo,BAS_Codes.codename_c,BAS_Customer.descr_c as customer_descr_c,
+       DOC_Order_Details.SKU,DOC_Order_Details.QtyOrdered,DOC_Order_Details.LineStatus,DOC_Order_Details.OrderLineNo,order_code.codename_c as orderCodeName,
+       order_detail_code.codename_c as orderDetailCodeName,BAS_Customer.descr_c as customer_descr_c,
        BAS_SKU.Alternate_SKU1,BAS_SKU.Descr_C,(select count(*) from DOC_ORDER_HEADER WHERE 1=1";
         $sql=$this->preciseQuery($request,$sql);
         ;$sql.=" ) as counted from (";
@@ -147,7 +151,8 @@ class OrderController extends Controller
         if (!$request->input('export')&&!$request->input('export'))$sql.=" and ROWNUM<='".$page*$paginate."')";
         if (!$request->input('export')&&!$request->input('export'))$sql.=" header where header.rn>'".($page-1)*$paginate."' ";
         $sql.=")DOC_ORDER_HEADER left join DOC_ORDER_DETAILS on DOC_ORDER_DETAILS.ORDERNO=DOC_ORDER_HEADER.ORDERNO
-                      left join BAS_CODES on BAS_CODES.CODE=DOC_ORDER_HEADER.sostatus and BAS_CODES.codeid='SO_STS'
+                      left join BAS_CODES  order_code on order_code.CODE=DOC_ORDER_HEADER.sostatus and order_code.codeid='SO_STS'
+                      left join BAS_CODES  order_detail_code on order_detail_code.CODE=DOC_ORDER_DETAILS.linestatus and order_detail_code.codeid='SO_STS'
                       left join BAS_Customer on BAS_Customer.customerid=DOC_ORDER_HEADER.customerid
                       left join  BAS_SKU on DOC_Order_Details.CustomerID=BAS_SKU.CustomerID and DOC_Order_Details.SKU=BAS_SKU.SKU
                       left join ACT_ALLOCATION_DETAILS on DOC_Order_Details.orderno=ACT_ALLOCATION_DETAILS.orderno and DOC_Order_Details.orderlineno=ACT_ALLOCATION_DETAILS.orderlineno
@@ -166,12 +171,12 @@ class OrderController extends Controller
             if (isset($commodities[$order->orderno])){
                 array_push($commodities[$order->orderno],
                     ["sku"=>$order->sku,"alternate_sku1"=>$order->alternate_sku1,"descr_c"=>$order->descr_c,"qtyordered"=>$order->qtyordered
-                    ,"checktime"=>$order->checktime]);
+                    ,"checktime"=>$order->checktime,"orderdetailcodename"=>$order->orderdetailcodename]);
                 unset($orders[$index]);
                 continue;
             }
             $commodities[$order->orderno]=[["sku"=>$order->sku,"alternate_sku1"=>$order->alternate_sku1,
-                "descr_c"=>$order->descr_c,"qtyordered"=>$order->qtyordered,"checktime"=>$order->checktime]];
+                "descr_c"=>$order->descr_c,"qtyordered"=>$order->qtyordered,"checktime"=>$order->checktime,"orderdetailcodename"=>$order->orderdetailcodename]];
         }
         $orders=array_values($orders);
         $orders = new Collection($orders);
@@ -179,7 +184,7 @@ class OrderController extends Controller
         if ($checkData || $export)return $this->export($orders,$commodities);
         $customers=OracleBasCustomer::select('customerid','descr_c')->where('customer_type','OW')->where('active_flag','Y')->get();
         $request=$request->input();
-        $codes=DB::connection('oracle')->table('BAS_CODES')->select('code','codename_c')->where('codeid','SO_STS')->get();
+        $codes=DB::connection('oracle')->table('BAS_CODES')->select('code','codename_c')->where('codeid','SO_STS')->orderBy('code','asc')->get();
         return view('order/index/delivering',compact('orders','customers','request','codes','commodities','page'));
     }
     //批量备注追加
@@ -300,8 +305,10 @@ class OrderController extends Controller
             'edisendtime2'=>'快递获取时间',
             'sku'=>'产品代码',
             'alternate_sku1'=>'产品条码',
+            'orderdetailcodename'=>'明细状态',
             'descr_c'=>'产品名称',
             'qtyordered'=>'订单数量',
+            'checktime'=>'复核时间',
             'erpcancelflag'=>'接口取消标记',
             'picking_print_flag'=>'拣货单打印标记',
             'edisendflag'=>'接口回传标记',
@@ -316,7 +323,7 @@ class OrderController extends Controller
             $data=[
                 'orderno'=>$order->orderno,
                 'addtime'=>$order->addtime,
-                'sostatus'=>$order->codename_c,
+                'sostatus'=>$order->ordercodename,
                 'warehouseid'=>$order->warehouseid,
                 'oracleBASCustomer_descr_c'=>$order->customer_descr_c,
                 'c_contact'=>$order->c_contact,
@@ -344,6 +351,8 @@ class OrderController extends Controller
                 $data['alternate_sku1']='';
                 $data['descr_c']='';
                 $data['qtyordered']='';
+                $data['checktime']='';
+                $data['orderdetailcodename']='';
                 array_push($list,$data);
                 continue;
             }
@@ -352,6 +361,8 @@ class OrderController extends Controller
                 $data['alternate_sku1']=$oracleDOCOrderDetail['alternate_sku1'];
                 $data['descr_c']=$oracleDOCOrderDetail['descr_c'];
                 $data['qtyordered']=$oracleDOCOrderDetail['qtyordered'];
+                $data['checktime']=$oracleDOCOrderDetail['checktime'];
+                $data['orderdetailcodename']=$oracleDOCOrderDetail['orderdetailcodename'];
                 if (isset($sign[$order->orderno])){
                     $data['orderno']='';$data['sostatus']='';$data['warehouseid']='';$data['oracleBASCustomer_descr_c']='';$data['c_contact']='';$data['addtime']='';
                     $data['c_tel2']='';$data['carriername']='';$data['issuepartyname']='';$data['waveno']='';$data['soreference1']='';$data['soreference5']='';
@@ -417,7 +428,6 @@ class OrderController extends Controller
         oci_bind_by_name($stmt,':OUT_Return_Code',$OUT_Return_Code);
         $this->log(__METHOD__,'调用sp根据订单取消分配'.__FUNCTION__,json_encode($orderno),Auth::user()['id']);
         return oci_execute($stmt);
-
     }
 
 }

+ 15 - 5
resources/views/order/index/delivering.blade.php

@@ -25,10 +25,17 @@
                         </tr>
                         <tr>
                             <td style="width: 300px">
-                                <select  name="codename_c" v-model="filterData.codename_c" class="form-control form-control-sm" style="vertical-align: middle;max-width: 100px" @change="submit">
+                                <div class="form-inline">
+                                <select  name="codename_c" v-model="filterData.codename_c" class="form-control form-control-sm tooltipTarget" title="选择显示指定订单状态的起始状态" style="vertical-align: middle;max-width: 120px" @change="submit">
                                     <option value="" class="text-secondary">订单状态</option>
                                     <option v-for="code in codes" :value="code.code" class="font-weight-bold">@{{ code.codename_c }}</option>
-                                </select></td>
+                                </select>&nbsp;&nbsp;&nbsp;
+                                <select  name="codename_c_end" v-model="filterData.codename_c_end" class="form-control form-control-sm tooltipTarget" title="选择显示指定订单状态的结束状态" style="vertical-align: middle;max-width: 120px" @change="submit">
+                                    <option value="" class="text-secondary">订单状态</option>
+                                    <option v-for="code in codes" :value="code.code" class="font-weight-bold">@{{ code.codename_c }}</option>
+                                </select>
+                                </div>
+                            </td>
                             <td style="width: 300px">
                                 <div class="form-inline">
                                     <input style="max-width: 150px"  type="date" name="orderdate_start" class="form-control form-control-sm tooltipTarget" title="选择显示指定日期的起始时间"
@@ -175,6 +182,7 @@
                         <th>快递获取时间</th>
                         <th style="min-width: 150px">产品代码</th>
                         <th style="min-width: 150px">产品条码</th>
+                        <th style="min-width: 150px">明细状态</th>
                         <th style="min-width: 180px">产品名称</th>
                         <th>订单数量</th>
                         <th>复核时间</th>
@@ -193,7 +201,7 @@
                         </td>
                         <td>@{{ i+1 }}</td>
                         <td class="text-dark font-weight-bold text-nowrap">@{{ order.orderno }}</td>
-                        <td class="text-muted text-nowrap">@{{ order.codename_c }}</td>
+                        <td class="text-muted text-nowrap">@{{ order.ordercodename }}</td>
                         <td class="text-nowrap">@{{ order.addtime }}</td>
                         <td class="text-nowrap">@{{ order.issuepartyname }}</td>
                         <td class="text-nowrap">@{{ order.customer_descr_c }}</td>
@@ -221,11 +229,12 @@
                         <td class="text-nowrap"> @{{ order.warehouseid }}</td>
                         <td class="text-nowrap"><span v-if="order.edisendflag2=='Y'">是</span><span v-if="order.edisendflag2=='N'">否</span><span v-if="order.edisendflag2=='W'">错误</span></td>
                         <td class="text-nowrap">@{{ order.edisendtime2 }}</td>
-                        <td colspan="5" class="text-center">
+                        <td colspan="6" class="text-center">
                             <table v-if="commodities[order.orderno]&&commodities[order.orderno].length==1 || isBtn[order.orderno]" class="table text-nowrap table-sm">
                                 <tr v-for="oracleDOCOrderDetail in commodities[order.orderno]">
                                     <td><div style="width: 180px;overflow: hidden">@{{ oracleDOCOrderDetail.sku }}</div></td>
                                     <td><div style="width: 180px;overflow: hidden">@{{ oracleDOCOrderDetail.alternate_sku1 }}</div></td>
+                                    <td><div style="width: 180px;overflow: hidden">@{{ oracleDOCOrderDetail.orderdetailcodename }}</div></td>
                                     <td><div :title="oracleDOCOrderDetail.descr_c" class="tooltipTarget" style="width: 180px;overflow: hidden">@{{ oracleDOCOrderDetail.descr_c }}</div></td>
                                     <td>@{{ oracleDOCOrderDetail.qtyordered }}</td>
                                     <td><div style="width: 180px;overflow: hidden">@{{ oracleDOCOrderDetail.checktime }}</div></td>
@@ -281,7 +290,7 @@
             data:{
                 filterData:{
                     paginate:50,ordertime_start:'',orderdate_start:'',orderdate_end:'',ordertime_end:'',customerid:'',orderno:'',soreference5:'',codename_c:'',
-                    carriername:'',issuepartyname:'',soreference1:'',notes:'',addtime:'31',alternate_sku1:'',waveno:'',edisendflag2:'',
+                    codename_c_end:'', carriername:'',issuepartyname:'',soreference1:'',notes:'',addtime:'31',alternate_sku1:'',waveno:'',edisendflag2:'',
                 },
                 page:Number('{{$page}}'),
                 maxPage:1,
@@ -379,6 +388,7 @@
                     if (this.filterData.orderno)url+="&orderno="+this.filterData.orderno;
                     if (this.filterData.soreference5)url+="&soreference5="+this.filterData.soreference5;
                     if (this.filterData.codename_c)url+="&codename_c="+this.filterData.codename_c;
+                    if (this.filterData.codename_c_end)url+="&codename_c_end="+this.filterData.codename_c_end;
                     if (this.filterData.carriername)url+="&carriername="+this.filterData.carriername;
                     if (this.filterData.soreference1)url+="&soreference1="+this.filterData.soreference1;
                     if (this.filterData.issuepartyname)url+="&issuepartyname="+this.filterData.issuepartyname;

+ 9 - 2
resources/views/personnel/laborReport/index.blade.php

@@ -93,7 +93,7 @@
                         <th class="text-center">本次工作时长</th>
                         <th class="text-center">备注</th>
                     </tr>
-                    <tr v-for="(laborReport,i) in laborReports">
+                    <tr v-for="(laborReport,i) in laborReports" @click="selectedColor(laborReport.id)" :style="{'font-weight': laborReport.id==selectedStyle?'bold':''}">
                         <td>
                             <input class="checkItem" type="checkbox" :value="laborReport.id" v-model="checkData">
                         </td>
@@ -318,7 +318,7 @@
                     {paginate:'50',created_at_start:'',created_at_end:'',enter_number:'',identity_number:'',user_workgroup_id: '',mobile_phone:''},
                 checkData:[],
                 permittingWorkgroups:{!! $permittingWorkgroups !!},
-                relax_time:'',dateTime:'',
+                relax_time:'',dateTime:'',selectedStyle:'',
             },
             mounted:function(){
                 initEcho();
@@ -400,6 +400,13 @@
                         });
                     }
                 },
+                selectedColor(id){
+                    if (id==this.selectedStyle){
+                        this.selectedStyle='';
+                        return;
+                    }
+                    this.selectedStyle=id;
+                },
                 setPaginate:function(e){
                     this.filterData.paginate=e.target.value;
                     var form = document.getElementById("optionSubmit");