Prechádzať zdrojové kódy

运输部分BUG修复与附加FLUX导出信息

Zhouzhendong 4 rokov pred
rodič
commit
b524739b89

+ 8 - 15
app/Http/Controllers/TestController.php

@@ -122,21 +122,14 @@ class TestController extends Controller
 
     public function test3()
     {
-        $a = new CacheShelfService();
-        $a->_stationCacheLightOff("HAIB1-01-01");
-        $a->_stationCacheLightOff("HAIB1-01-02");
-        $a->_stationCacheLightOff("HAIB1-01-03");
-        $a->_stationCacheLightOff("HAIB1-02-01");
-        $a->_stationCacheLightOff("HAIB1-02-02");
-        $a->_stationCacheLightOff("HAIB1-02-03");
-        $a->_stationCacheLightOff("HAIB1-03-01");
-        $a->_stationCacheLightOff("HAIB1-03-02");
-        $a->_stationCacheLightOff("HAIB1-03-03");
-        $a->_stationCacheLightOff("HAIB2-01-01");
-        $a->_stationCacheLightOff("HAIB2-01-02");
-        $a->_stationCacheLightOff("HAIB2-02-01");
-        $a->_stationCacheLightOff("HAIB2-02-02");
-        $a->_stationCacheLightOff("HAIB2-03-01");
+        $row = [
+            "运单类型", "货主", "上游单号", "wms订单号", "运单号", "运输收费",
+            "其他收费", "其他收费备注", "始发地", "目的地","下单备注", "承运商", "承运商单号",
+            "仓库计抛", "承运商计抛", "仓库计重", "承运商计重", "车型", "车辆信息",
+            "计件", "里程数", "运费(元)", "提货费(元)", "其他费用(元)", "发货时间",
+            "调度备注", "创建时间", "省", "市", "区", "FLUX地址", "FLUX重量", "FLUX数量"
+        ];
+        dd($row[27]);
     }
     public function testZC()
     {

+ 30 - 6
app/Http/Controllers/WaybillController.php

@@ -660,21 +660,30 @@ class WaybillController extends Controller
     }
 
     public function export(){
+        $append = \request("append")=='true';
+        request()->offsetUnset("append");
         $this->gate('运输管理-运单-查询');
+        /** @var Collection $waybills */
         if (request("checkAllSign")){
             request()->offsetUnset("checkAllSign");
             $waybills = app('waybillService')->get(request()->input());
         }else $waybills = app('waybillService')->get(["id"=>request("data")]);
-        /** @var Collection $waybills */
+        if ($waybills->count()==0)return "无数据";
         $row = [
             "运单类型", "货主", "上游单号", "wms订单号", "运单号", "运输收费",
             "其他收费", "其他收费备注", "始发地", "目的地","下单备注", "承运商", "承运商单号",
             "仓库计抛", "承运商计抛", "仓库计重", "承运商计重", "车型", "车辆信息",
             "计件", "里程数", "运费(元)", "提货费(元)", "其他费用(元)", "发货时间",
-            "调度备注", "创建时间"
+            "调度备注", "创建时间", "省", "市", "区", "FLUX地址", "FLUX重量", "FLUX数量"
         ];
         $list = [];
-        $waybills->each(function ($waybill)use(&$list){
+        $codes = '';
+        $map = [];
+        $waybills->each(function ($waybill,$index)use(&$list,&$codes,&$map){
+            foreach (explode(",",$waybill->wms_bill_number) as $bill){
+                $codes .= "'".$bill."',";
+                $map[$bill] = $index;
+            }
             $list[] = [
                 $waybill->type,
                 $waybill->owner->name ?? ($waybill->order->owner->name ?? ""),
@@ -703,9 +712,25 @@ class WaybillController extends Controller
                 $waybill->deliver_at,
                 $waybill->dispatch_remark,
                 $waybill->created_at->toDateTimeString(),
-
+                "", "", "","",0,0
             ];
         });
+        $codes = rtrim($codes,",");
+        if ($codes && $append){
+            $sql = <<<SQL
+SELECT H.ORDERNO,SUM(S.GROSSWEIGHT) WEIGHT,SUM(S.QTY) AMOUNT,H.C_ADDRESS1,H.C_DISTRICT,H.C_PROVINCE,H.C_CITY FROM DOC_ORDER_PACKING_SUMMARY S
+LEFT JOIN DOC_ORDER_HEADER H ON S.ORDERNO = H.ORDERNO
+WHERE H.ORDERNO IN ({$codes}) GROUP BY H.ORDERNO,H.C_ADDRESS1,H.C_DISTRICT,H.C_PROVINCE,H.C_CITY
+SQL;
+            foreach (DB::connection("oracle")->select(DB::raw($sql)) as $summary){
+                $list[$map[$summary->orderno]][27] = $summary->c_province;
+                $list[$map[$summary->orderno]][28] = $summary->c_city;
+                $list[$map[$summary->orderno]][29] = $summary->c_district;
+                $list[$map[$summary->orderno]][30] = $summary->c_address1;
+                $list[$map[$summary->orderno]][31] += $summary->weight;
+                $list[$map[$summary->orderno]][32] += $summary->amount;
+            }
+        }
         return Export::make($row,$list,"运输记录单-".date("YmdH"));
     }
 
@@ -775,7 +800,7 @@ class WaybillController extends Controller
 
     protected function validatorWaybill(Request $request,$id){
         if ($id){$wms_bill_number=$id;};
-        $validator=Validator::make($request->input(),[
+        return Validator::make($request->input(),[
             'owner_id'=>'required_without:order_id',
             'wms_bill_number'=>['nullable','max:50',isset($wms_bill_number)?"unique:waybills,wms_bill_number,$wms_bill_number":'unique:waybills,wms_bill_number'],
             'origination'=>'required|max:255',
@@ -804,7 +829,6 @@ class WaybillController extends Controller
             'charge'=>'收费',
             'collect_fee'=>'到付金额',
         ]);
-        return $validator;
     }
     protected function validatorWaybillDispatch(Request $request,$id){
         $rule=[

+ 1 - 2
app/Services/InventoryService.php

@@ -179,8 +179,7 @@ class InventoryService
             'created_at_start' => ['alias' => 'created_at' , 'startDate' => ' 00:00:00'],
             'created_at_end' => ['alias' => 'created_at' , 'endDate' => ' 23:59:59'],
         ];
-        $inventoryDailyLogs = app(QueryService::class)->query($param,$inventoryDailyLogs,$columnQueryRules);
-        return $inventoryDailyLogs;
+        return app(QueryService::class)->query($param,$inventoryDailyLogs,$columnQueryRules);
     }
 
     //库存体积

+ 8 - 2
resources/views/transport/waybill/index.blade.php

@@ -35,6 +35,11 @@
                     <a class="dropdown-item" @click="waybillExport(true)" href="javascript:">导出所有页</a>
                 </div>
             </span>
+            <div class="form-check d-inline-block">
+                <label class="form-check-label">
+                    <input type="checkbox" class="form-check-input" v-model="appendFluxInfo">导出附加FLUX信息
+                </label>
+            </div>
             @can('运输管理-运单-图片上传')<button class="btn btn-sm btn-outline-info" data-target="#batchUploadImg" data-toggle="modal">批量上传图片</button>@endcan
             @can('运输管理-运单-图片删除')<button class="btn btn-sm btn-outline-danger" @click="deleteImg()">批量删除图片</button>@endcan
             @if($uriType=='' || $uriType=='专线')
@@ -630,7 +635,8 @@
                 selectTr:'',
                 dailyBilling:{screenDate:'', billing:''},
                 error:{screenDate:'', billing:''},
-                expresss:[{name:1,value:'是'},{name:0,value:'否'}]
+                expresss:[{name:1,value:'是'},{name:0,value:'否'}],
+                appendFluxInfo:false,
             },
             mounted:function(){
                 $(".tooltipTarget").tooltip({'trigger':'hover'});
@@ -986,7 +992,7 @@
                 waybillExport(checkAllSign){
                     let url = '{{url('transport/waybill/export')}}';
                     let token='{{ csrf_token() }}';
-                    excelExport(checkAllSign,checkData,url,this.sum,token);
+                    excelExport(checkAllSign,checkData,url,this.sum,token,{append:this.appendFluxInfo});
                 },
                 selectedColor(id){
                     if (id && id===this.selectTr)return;

+ 1 - 1
resources/views/transport/waybill/recycle.blade.php

@@ -191,7 +191,7 @@
                         return;
                     }
                     if(!confirm("确定要恢复所有勾选的内容为'未删除'吗?")){return;}
-                    let ajaxUrl = '{{url('apiLocal/waybill/recoverSelected')}}';
+                    let ajaxUrl = '{{url('apiLocal/transport/waybill/recoverSelected')}}';
                     axios.post(ajaxUrl,{ids:_this.waybills_checkBoxes}).then(function (response) {
                         if(response.data.success){
                             tempTip.setDuration(2000);