Pārlūkot izejas kodu

样式改动,删除DefaultExport与其相关文件

Zhouzhendong 5 gadi atpakaļ
vecāks
revīzija
6e23592432

+ 0 - 42
app/Exports/DefaultExport.php

@@ -1,42 +0,0 @@
-<?php
-
-namespace App\Exports;
-
-use Maatwebsite\Excel\Concerns\FromCollection;
-
-class DefaultExport implements FromCollection
-{
-    private $head;
-    private $body;
-
-    public function __construct($head, $body)
-    {
-        $this->head = $head;
-        $this->body = $body;
-    }
-
-    /**
-     * @return \Illuminate\Support\Collection
-     */
-    public function collection()
-    {
-        $head = $this->head;
-        $body = $this->body;
-
-        // 表头设置
-        foreach ($head[0] as $key=>$value) {
-            $head_arr[] = $key;
-        }
-        // 表数据
-        foreach ($body as $key => &$value) {
-            $js = [];
-            for ($i = 0; $i < count($head_arr); $i++) {
-                $js = array_merge($js,[ $head_arr[$i] => $value[ $head_arr[$i] ] ]);
-
-            }
-            array_push($head, $js);
-            unset($val);
-        }
-        return collect($head);
-    }
-}

+ 2 - 7
app/Http/Controllers/InventoryController.php

@@ -13,10 +13,9 @@ class InventoryController extends Controller
 {
     public function conditionQuery(Request $request,$page=null,$paginate=null){
         if(!Gate::allows("库存管理-动库报表")){ return redirect(url('/'));  }
-
-
         $date_start=$request->input('date_start');
-        if ($request->input('range'))$date_start=date('Y-m-d',strtotime('-'.$request->input('range')." day"));
+        $range = $request->input('range');
+        if ($range)$date_start=date('Y-m-d',strtotime('-'.$range." day"));
         $date_end=$request->input('date_end');
         $TOLocation=$request->input('TOLocation');
         $LotAtt05=$request->input('LotAtt05');
@@ -35,7 +34,6 @@ class InventoryController extends Controller
         $sql.=" from ACT_Transaction_Log where TransactionType='PA' ";
         if ($date_start) $sql.=" and addtime > to_date('".$date_start." 00:00:00','yyyy-mm-dd hh24:mi:ss') ";
         if ($date_end) $sql.=" and addtime < to_date('".$date_end." 23:59:59','yyyy-mm-dd hh24:mi:ss') ";
-        if (!$date_start && !$date_end)$sql .= " and addtime >to_date('".date('Y-m-d H:i:s',strtotime("-1 day"))."','yyyy-mm-dd hh24:mi:ss') ";
         if ($TOLocation)$sql .= " and TOLocation like '".$TOLocation."' ";
         if ($SKU)$sql.=" and FMSKU like '".$SKU."' ";
         $sql.=' group by TOCustomerID, TOLocation,FMSKU,FMLotNum union all ';
@@ -43,7 +41,6 @@ class InventoryController extends Controller
         $sql.=" from ACT_Transaction_Log where TransactionType='SO' ";
         if ($date_start) $sql.=" and addtime > to_date('".$date_start." 00:00:00','yyyy-mm-dd hh24:mi:ss') ";
         if ($date_end) $sql.=" and addtime < to_date('".$date_end." 23:59:59','yyyy-mm-dd hh24:mi:ss') ";
-        if (!$date_start && !$date_end)$sql .= " and addtime >to_date('".date('Y-m-d H:i:s',strtotime("-1 day"))."','yyyy-mm-dd hh24:mi:ss') ";
         if ($TOLocation)$sql .= " and FMLOCATION like '".$TOLocation."' ";
         if ($SKU)$sql.=" and FMSKU like '".$SKU."' ";
         $sql.=' group by FMCustomerID, FMLocation,FMSKU,FMLotNum union all ';
@@ -51,7 +48,6 @@ class InventoryController extends Controller
         $sql.=" from ACT_Transaction_Log  where TransactionType='MV' ";
         if ($date_start) $sql.=" and addtime > to_date('".$date_start." 00:00:00','yyyy-mm-dd hh24:mi:ss') ";
         if ($date_end) $sql.=" and addtime < to_date('".$date_end." 23:59:59','yyyy-mm-dd hh24:mi:ss') ";
-        if (!$date_start && !$date_end)$sql .= " and addtime >to_date('".date('Y-m-d H:i:s',strtotime("-1 day"))."','yyyy-mm-dd hh24:mi:ss') ";
         if ($TOLocation)$sql .= " and FMLocation like '".$TOLocation."' ";
         if ($SKU)$sql.=" and FMSKU like '".$SKU."' ";
         $sql.=' group by FMLocation,FMCUSTOMERID,FMSKU,FMLotNum union all ';
@@ -59,7 +55,6 @@ class InventoryController extends Controller
         $sql.=" from ACT_Transaction_Log where TransactionType='MV' ";
         if ($date_start) $sql.=" and addtime > to_date('".$date_start." 00:00:00','yyyy-mm-dd hh24:mi:ss') ";
         if ($date_end) $sql.=" and addtime < to_date('".$date_end." 23:59:59','yyyy-mm-dd hh24:mi:ss') ";
-        if (!$date_start && !$date_end)$sql .= " and addtime >to_date('".date('Y-m-d H:i:s',strtotime("-1 day"))."','yyyy-mm-dd hh24:mi:ss') ";
         if ($TOLocation)$sql .= " and TOLocation like '".$TOLocation."' ";
         if ($SKU)$sql.=" and FMSKU like '".$SKU."' ";
         $sql.=' group by TOLocation,TOCustomerID,FMSKU,FMLotNum)stockLog ';

+ 33 - 16
app/Http/Controllers/ProcessController.php

@@ -912,9 +912,12 @@ class ProcessController extends Controller
         $commodities = explode("\n",$request->data); //拆分行
         $owner='';
         $processContents=[];
-        foreach ($commodities as $commodity){
-            $commodity = array_filter(preg_split('/[\t]+/is',$commodity)); //拆分列
+        $errors = [];
+        foreach ($commodities as $i => $commodity){
+            $commodity = explode("\t",$commodity); //拆分列
+            $head="第".($i+1)."行";
             if (count($commodity)<count($request->rows)){
+                $errors[$head] = ['数据不完整'];
                 unset($commodity);
                 continue;
             }
@@ -922,32 +925,44 @@ class ProcessController extends Controller
             $wmsCode='';
             $barcode='';
             $amount=0;
+            $errors[$head] = [];
             foreach ($request->rows as $index => $row){
                 if ($row == '货主'){
-                    if (isset($commodity[$index]) && $commodity[$index] && !$owner){
-                        $owner=Owner::where('code',$commodity[$index])->orWhere('name',$commodity[$index])->first();
-                        if (!$owner){
-                            $owner = Owner::create([
-                                'code' => $commodity[$index],
-                                'name' => $commodity[$index]
-                            ]);
-                        }
+                    if ($commodity[$index] && !$owner){
+                        $owner = $commodity[$index];
                     }
+                    if (!$commodity[$index])array_push($errors[$head],"货主为空");
                 }
                 if ($row == '单据'){
-                    $wmsCode = isset($commodity[$index]) ? $commodity[$index] : '';
+                    $wmsCode = $commodity[$index] ?? '';
                 }
                 if ($row == 'SKU'){
-                    $commodityData['sku'] = isset($commodity[$index]) ? $commodity[$index] : '';
+                    $commodityData['sku'] = $commodity[$index] ?? '';
                 }
                 if ($row == '品名'){
-                    $commodityData['name'] = isset($commodity[$index]) ? $commodity[$index] : '';
+                    $commodityData['name'] = $commodity[$index] ?? '';
+                    if (!$commodity[$index])array_push($errors[$head],"品名为空");
                 }
                 if ($row == '条码'){
-                    $barcode = isset($commodity[$index]) ? $commodity[$index] : '';
+                    $barcode = $commodity[$index] ?? '';
                 }
                 if ($row == '数量'){
-                    $amount = isset($commodity[$index]) ? $commodity[$index] : '';
+                    $amount = $commodity[$index] ?? '';
+                    if (!$commodity[$index])array_push($errors[$head],"数量为空");
+                    if (!is_numeric($commodity[$index]) || $commodity[$index] < 1)array_push($errors[$head],"数量为空或小于1");
+                }
+            }
+            if (count($errors[$head]) > 0)continue;
+            else unset($errors[$head]);
+            if (!is_object($owner)){
+                $str = $owner;
+                $owner=Owner::where('code',$str)->orWhere('name',$str)->first();
+                if (!$owner){
+                    $owner = Owner::create([
+                        'code' => $str,
+                        'name' => $str
+                    ]);
+                    $this->log(__METHOD__,"二次加工单录入导入商品数据时添加货主".__FUNCTION__,json_encode($owner),Auth::user()['id']);
                 }
             }
             $commodity = Commodity::query()->whereNull('owner_id')
@@ -957,6 +972,8 @@ class ProcessController extends Controller
                 'code' => $barcode,
                 'commodity_id' => $commodity->id
             ]);
+            $this->log(__METHOD__,"二次加工单录入导入商品数据时添加商品及条码".__FUNCTION__,
+                json_encode($commodity)." || ".json_encode($commodityBarCode),Auth::user()['id']);
             $processContent=['bill_type'=>'入库单','commodity_id'=>$commodity->id,'wms_code'=>$wmsCode,'amount'=>$amount,
                 'commodity_name'=>$commodity->name,'commodity_barcodes'=>[$commodityBarCode],'commodity_sku'=>$commodity->sku,
                 'lineNo'=>1,'owner_id'=>$owner->id,'owner_name'=>$owner->name,'addBtnShow'=>false,'type'=>false];
@@ -964,7 +981,7 @@ class ProcessController extends Controller
             $processContent['type']=true;
             array_push($processContents,$processContent);
         }
-        return ['success'=>true,'data'=>$processContents];
+        return ['success'=>true,'data'=>$processContents,'errors'=>$errors];
     }
 
 

+ 2 - 2
app/Http/Controllers/RejectedController.php

@@ -2,7 +2,7 @@
 
 namespace App\Http\Controllers;
 
-use App\Exports\DefaultExport;
+use App\Exports\Export;
 use App\Exports\RejectedExport;
 use App\Imports\RejectedImport;
 use App\Logistic;
@@ -486,7 +486,7 @@ class RejectedController extends Controller
         $row = RejectedAnalyzeOwner::getExcelFromHead();
         $searchParams = $this->getAnalyzeSearchParams($request);
         $data = RejectedAnalyzeOwner::getFindBy($searchParams);
-        return Excel::download(new DefaultExport($row,$data),date('YmdHis', time()).'-退货统计记录单.xlsx');
+        return Excel::download(new Export($row,$data),date('YmdHis', time()).'-退货统计记录单.xlsx');
     }
 
 }

+ 2 - 1
app/Http/Controllers/TestController.php

@@ -292,7 +292,8 @@ class TestController extends Controller
     /*1*/
     function test(Request $request)
     {/**/
-        return Unit::query()->updateOrCreate(['id' => 1],['name' => 'kg']);
+        $str = 'a';
+        dd(is_object($str));
     }
 
 }

+ 2 - 2
app/Http/Controllers/WaveController.php

@@ -2,7 +2,7 @@
 
 namespace App\Http\Controllers;
 
-use App\Exports\DefaultExport;
+use App\Exports\Export;
 use App\Services\WaveService;
 use Illuminate\Http\Request;
 use Illuminate\Support\Facades\Auth;
@@ -130,7 +130,7 @@ class WaveController extends Controller
             }
             $data[] = $arr;
         }
-        return Excel::download(new DefaultExport($row,$data),date('YmdHis', time()).'-波次表.xlsx');
+        return Excel::download(new Export($row,$data),date('YmdHis', time()).'-波次表.xlsx');
     }
 
 }

+ 1 - 1
resources/views/inventory/menu.blade.php

@@ -4,7 +4,7 @@
         <ul class="nav nav-pills">
             @can('库存管理')
             <li class="nav-item">
-                <a class="nav-link" href="{{url('inventory/statement/changeInventory')}}" :class="{active:isActive('statement',2)}">查询</a>
+                <a class="nav-link" href="{{url('inventory/statement/changeInventory?range=1')}}" :class="{active:isActive('statement',2)}">查询</a>
             </li> @endcan
         </ul>
     </div>

+ 23 - 3
resources/views/inventory/statement/changeInventory.blade.php

@@ -57,11 +57,13 @@
             <td><span v-if="oracleActTransactingLog.占用数量">@{{ oracleActTransactingLog.占用数量 }}</span><span v-else>0</span></td>
         </tr>
     </table>
-    <div >
+    <div>
         <button type="button" @click="pageUp()" :readonly="page>1?false:true" class="btn btn-sm " :class="page>1?'btn-outline-info':''">上一页</button>
         <button type="button" @click="pageDown()" :readonly="page<maxPage?false:true" class="btn btn-sm m-3" :class="page<maxPage?'btn-outline-info':''">下一页</button>
-        <input  @keyup.enter="pageSkip($event)" class="form-control-sm ml-3 tooltipTarget" :placeholder="'当前页数:'+page+'/'+maxPage" title="去往指定页">
-        <span class="text-muted m-1">共 @{{ sum }} 条</span>
+        <div v-if="isPage">
+            <input  @keyup.enter="pageSkip($event)" class="form-control-sm ml-3 tooltipTarget" :placeholder="'当前页数:'+page+'/'+maxPage" title="去往指定页">
+            <span class="text-muted m-1">共 @{{ sum }} 条</span>
+        </div>
     </div>
 </div>
 @endsection
@@ -83,6 +85,7 @@
                 checkData:[],
                 maxPage:1,
                 sum:0,
+                isPage:true,
                 date:[{name:'1',value:'近一天'},{name:'3',value:'近三天'},{name:'7',value:'近一周'},{name:'30',value:'近一月'},],
             },
             mounted:function () {
@@ -113,6 +116,23 @@
                     condition:data
                 });
                 this.form.init();
+                let thisUrl=document.URL;
+                let parameter=thisUrl.split('?',2);
+                if (parameter.length > 1){
+                    let _this=this;
+                    let list=['ALTERNATE_SKU1','LotAtt05','LotAtt02_start','descr_c','LotAtt02_end'];
+                    let param=parameter[1].split('&');
+                    param.every(function (data) {
+                        let arr=data.split('=');
+                        if (arr.length > 1){
+                            if (list.includes(arr[0]) && arr[1]){
+                                _this.isPage = false;
+                                return false;
+                            }
+                        }
+                        return true;
+                    });
+                }
             },
             watch:{
                 checkData:{

+ 1 - 1
resources/views/inventory/statement/menu.blade.php

@@ -6,7 +6,7 @@
             <ul class="nav nav-pills">
                 @can('库存管理-动库报表')
                     <li class="nav-item">
-                        <a class="nav-link text-dark" href="{{url('inventory/statement/changeInventory')}}" :class="{active:isActive('changeInventory',3)}">动库报表</a>
+                        <a class="nav-link text-dark" href="{{url('inventory/statement/changeInventory?range=1')}}" :class="{active:isActive('changeInventory',3)}">动库报表</a>
                     </li> @endcan
             </ul>
         </div>

+ 1 - 1
resources/views/layouts/menu.blade.php

@@ -28,7 +28,7 @@
                     <span class="fa fa-balance-scale" style="color: #1b7234"></span>
                     称重管理</a></li> @endcan
         @can('库存管理')
-            <li class="nav-item"><a href="{{url("inventory/statement/changeInventory")}}" class="nav-link"
+            <li class="nav-item"><a href="{{url("inventory/statement/changeInventory?range=1")}}" class="nav-link"
                                     :class="{active:isActive('inventory',1)}">
                     <span class="fa fa-list-alt" style="color: #32721b"></span>
                     库存管理</a></li> @endcan

+ 26 - 5
resources/views/process/create.blade.php

@@ -18,7 +18,12 @@
                                           class="col-2 border" style="cursor: move">@{{ row }}</span>
                                 </div>
                             </div>
-                            <div class="modal-body">
+                            <div class="modal-body" style="text-align:center">
+                                <button type="button" id="popover" class="btn btn-danger"
+                                        data-container="body" data-toggle="popover" data-placement="bottom"
+                                        :data-content="popoverContent" data-html="true">
+                                    部分数据导入失败
+                                </button>
                                 <textarea class="w-100" style="height: 400px;" v-model="pasteData"
                                 placeholder="内容必须为EXCEL复制,请注意表头顺序,可拖拽表头字段调整顺序,以该顺序为准"
                                 ></textarea>
@@ -36,7 +41,7 @@
                             <input class="form-control col-6" v-model="process.wms_code">&nbsp;&nbsp;&nbsp;
                             <button class="btn btn-info btn-sm col-2"  type="button" @click="addProcessContent(false)"> 新增库单据</button>
                             <button class="btn btn-sm btn-dark col-1 ml-1"
-                                    data-toggle="modal" data-target="#pasteData"><small>外部导入</small></button>
+                                    @click="showPasteDataModal()"><small>外部导入</small></button>
                         </div>
                         <div class="form-group row">
                             <div class="col-10 offset-1 pl-0 pt-2 border rounded bg-light">
@@ -268,6 +273,7 @@
                 sum:0,
                 pasteData:'',
                 rows:['货主','单据','品名','SKU','条码','数量'],
+                popoverContent:'',
             },
             watch:{
                 processContents:{
@@ -501,10 +507,10 @@
                             return;
                         }
                         if(response.data.success==false){
-                            tempTip.setDuration(5000);
+                            tempTip.setDuration(3000);
                             tempTip.show('提交失败:'+response.data.data);
                         }else {
-                            tempTip.setDuration(5000);
+                            tempTip.setDuration(2000);
                             tempTip.showSuccess('提交成功');
                             setTimeout(function () {
                                 location.href="{{url('process')}}";
@@ -566,6 +572,10 @@
                     });
                     _this.$delete(_this.processContents,(_this.processContents.length)-1);
                 },
+                showPasteDataModal(){
+                    $("#popover").attr('hidden','hidden');
+                    $('#pasteData').modal('show');
+                },
                 importPasteData(){
                     let _this=this;
                     if (!this.pasteData){
@@ -582,13 +592,24 @@
                                     if (!processContent.type) sum += Number(processContent.amount);
                                 });
                                 _this.sum += sum;
+                                if (res.data.errors){
+                                    let content = '';
+                                    for (let i in res.data.errors){
+                                        content += i+":"+res.data.errors[i]+"</br>";
+                                    }
+                                    _this.popoverContent = content;
+                                    setTimeout(function () {
+                                        $("#popover").removeAttr('hidden').popover('show');
+                                    },1);
+                                    return;
+                                }
                                 $('#pasteData').modal('hide');
                                 tempTip.setDuration(2000);
                                 tempTip.showSuccess('导入完毕');
                             }
                         }).catch(err=>{
                             tempTip.setDuration(4000);
-                            tempTip.showSuccess('网络错误:'+err);
+                            tempTip.show('网络错误:'+err);
                         });
                 },
                 dragover(e){