|
|
@@ -0,0 +1,221 @@
|
|
|
+@extends('layouts.app')
|
|
|
+@section('title','物流费')
|
|
|
+@section('content')
|
|
|
+ @include('shared._messages')
|
|
|
+ @include('shared._error')
|
|
|
+ <div id="list" class="d-none">
|
|
|
+ <div class="container-fluid">
|
|
|
+ <div id="form_div"></div>
|
|
|
+ <div class="ml-3 form-inline" id="btn">
|
|
|
+ <span class="dropdown">
|
|
|
+ <button type="button"
|
|
|
+ class="btn btn-outline-dark btn-sm form-control-sm dropdown-toggle tooltipTarget"
|
|
|
+ data-toggle="dropdown" title="导出所有页将会以搜索条件得到的筛选结果,将其全部记录(每一页)导出">导出Excel
|
|
|
+ </button>
|
|
|
+ <div class="dropdown-menu">
|
|
|
+ <a class="dropdown-item" @click="detailExport(false)" href="javascript:">导出勾选内容</a>
|
|
|
+ <a class="dropdown-item" @click="detailExport(true)" href="javascript:">导出所有页</a>
|
|
|
+ </div>
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ <div class="row">
|
|
|
+ <div class="col-3">
|
|
|
+ <div class="row pt-2">
|
|
|
+ <span class="fa fa-user fa-4x offset-md-3" style="color: #4c2584;opacity: 0.3"></span>
|
|
|
+ <span class="ml-4 mt-2"><h5 class="font-weight-bold">{{ $owner->name }}</h5><p
|
|
|
+ class="text-muted">货主</p></span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-if="(isArchived===1)" class="col-3">
|
|
|
+ <div class="row pt-2">
|
|
|
+ <span class="fa fa-check-circle fa-4x offset-md-3" aria-hidden="true"
|
|
|
+ style="color: #4c2584;opacity: 0.3"></span>
|
|
|
+ <span class="ml-4 mt-2"><h5 class="font-weight-bold">已确认</h5></span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else class="col-3">
|
|
|
+ <div class="row pt-2">
|
|
|
+ <form action="{{ 'logisticFee/confirmBill' }}" method="post" style="display: inline-block;"
|
|
|
+ onsubmit="return confirm('您确定要确认金额吗?');">
|
|
|
+ {{ csrf_field() }}
|
|
|
+ <input type="hidden" name="owner_id" value="{{ $request['owner_id']??'' }}">
|
|
|
+ <input type="hidden" name="year" value="{{ $request['year']??'' }}">
|
|
|
+ <input type="hidden" name="month" value="{{ $request['month']??'' }}">
|
|
|
+ <span class="ml-4 mt-2">
|
|
|
+ <button type="submit" class="btn btn-success btn-lg">
|
|
|
+ <i class="far fa-trash-alt"></i> 确认金额
|
|
|
+ </button>
|
|
|
+ </span>
|
|
|
+
|
|
|
+ </form>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <table class="table table-striped table-sm text-nowrap table-hover table-bordered" id="table">
|
|
|
+ <tr v-for="(detail,i) in details"
|
|
|
+ @click="selectTr===i+1?selectTr=0:selectTr=i+1"
|
|
|
+ :class="selectTr===i+1?'focusing' : ''">
|
|
|
+ <td><input class="checkItem" type="checkbox" :value="detail.id"></td>
|
|
|
+ <td>@{{ i+1 }}</td>
|
|
|
+ <td>@{{ detail.logistic?detail.logistic.name:'' }}</td>
|
|
|
+ <td>@{{ detail.order_id }}</td>
|
|
|
+ <td>@{{ detail.recipient }}</td>
|
|
|
+ <td>@{{ detail.recipient_mobile }}</td>
|
|
|
+ <td>@{{ detail.warehouse_weight }}</td>
|
|
|
+ <td>@{{ detail.warehouse_weight_unit.name }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.step }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.owner_fee_detail.province }}</td>
|
|
|
+ <td>@{{ detail.destination_city.name }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.price }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.delivery_fee }}</td>
|
|
|
+ <td>@{{ detail.pick_up_fee }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.fuel_fee }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.service_fee }}</td>
|
|
|
+ <td>@{{ detail.other_fee }}</td>
|
|
|
+ <td>@{{ detail.dispatch_remark }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.originate_fee }}</td>
|
|
|
+ <td>@{{ detail.owner_way_bill_fee_detail.originate_count }}</td>
|
|
|
+ <td>@{{ detail.fee }}</td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ <div class="text-info h5 btn btn">{{$details->count()}}/{{$details->total()}}</div>
|
|
|
+ {{$details->appends($paginateParams)->links()}}
|
|
|
+ </div>
|
|
|
+ <textarea hidden id="clipboardDiv" style="opacity:0"></textarea>
|
|
|
+ </div>
|
|
|
+@endsection
|
|
|
+@section('lastScript')
|
|
|
+ <script type="text/javascript" src="{{mix('js/queryForm/export.js')}}"></script>
|
|
|
+ <script type="text/javascript" src="{{mix('js/queryForm/queryForm.js')}}"></script>
|
|
|
+ <script type="text/javascript" src="{{mix('js/queryForm/header.js')}}"></script>{{--新版2--}}
|
|
|
+ <script>
|
|
|
+ let vue = new Vue({
|
|
|
+ el: "#list",
|
|
|
+ data: {
|
|
|
+ owner: {!! $owner !!},
|
|
|
+ details: [@foreach($details as $detail){!! $detail !!}, @endforeach],
|
|
|
+ owners: [@foreach($owners as $owner){name: '{{ $owner->id }}', value: '{{ $owner->name}}'},@endforeach],
|
|
|
+ isArchived: {!! $isArchived !!},
|
|
|
+ request: {!! $request !!},
|
|
|
+ selectTr: 0,
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ $('#list').removeClass('d-none');
|
|
|
+ let _this = this;
|
|
|
+ $(".up").slideUp();
|
|
|
+ let data = [
|
|
|
+ [
|
|
|
+ {
|
|
|
+ name: 'owner_id',
|
|
|
+ type: 'select',
|
|
|
+ tip: ['多货主权限选择查看指定货主,默认为权限下的第一个货主'],
|
|
|
+ placeholder: ['货主'],
|
|
|
+ data: _this.owners,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: 'year',
|
|
|
+ type: 'select',
|
|
|
+ tip: ['默认为时间上一个月所属年份'],
|
|
|
+ placeholder: ['年'],
|
|
|
+ data: [
|
|
|
+ {name: 2021, value: 2021},
|
|
|
+ {name: 2022, value: 2022},
|
|
|
+ {name: 2023, value: 2023},
|
|
|
+ {name: 2024, value: 2024},
|
|
|
+ {name: 2025, value: 2025},
|
|
|
+ {name: 2026, value: 2026},
|
|
|
+ {name: 2027, value: 2027},
|
|
|
+ {name: 2028, value: 2028},
|
|
|
+ {name: 2029, value: 2029},
|
|
|
+ {name: 2030, value: 2030},
|
|
|
+ {name: 2031, value: 2031},
|
|
|
+ {name: 2032, value: 2032},
|
|
|
+ {name: 2033, value: 2033},
|
|
|
+ {name: 2034, value: 2034},
|
|
|
+ {name: 2035, value: 2035},
|
|
|
+ {name: 2036, value: 2036},
|
|
|
+
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: 'month',
|
|
|
+ type: 'select',
|
|
|
+ tip: ['默认为上一月'],
|
|
|
+ placeholder: ['月'],
|
|
|
+ data: [
|
|
|
+ {name: 1, value: 1},
|
|
|
+ {name: 2, value: 2},
|
|
|
+ {name: 3, value: 3},
|
|
|
+ {name: 4, value: 4},
|
|
|
+ {name: 5, value: 5},
|
|
|
+ {name: 6, value: 6},
|
|
|
+ {name: 7, value: 7},
|
|
|
+ {name: 8, value: 8},
|
|
|
+ {name: 9, value: 9},
|
|
|
+ {name: 10, value: 10},
|
|
|
+ {name: 11, value: 11},
|
|
|
+ {name: 12, value: 12},
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ ]
|
|
|
+ ];
|
|
|
+ _this.form = new query({
|
|
|
+ el: '#form_div',
|
|
|
+ condition: data,
|
|
|
+ appendDom: "btn",
|
|
|
+ });
|
|
|
+ _this.form.init();
|
|
|
+ //计数单位 计数区间 省份 市 单价 送货费 提货费 燃油附加费 信息费 其它费用 备注 起始计费 起始计数 运费合计
|
|
|
+
|
|
|
+ let column = [
|
|
|
+ {name: 'index', value: '序号', neglect: true},
|
|
|
+ {name: 'logistic', value: '承运商'},
|
|
|
+ {name: 'order_no', value: '订单号'},
|
|
|
+ {name: 'receiver_name', value: '收件人姓名'},
|
|
|
+ {name: 'receiver_phone', value: '收件人电话'},
|
|
|
+ {name: 'weight', value: '重量/体积'},
|
|
|
+ {name: 'sept_unit', value: '计数单位'},
|
|
|
+ {name: 'price', value: '计数区间'},
|
|
|
+ {name: 'fee', value: '省份'},
|
|
|
+ {name: 'fee', value: '市'},
|
|
|
+ {name: 'fee', value: '单价'},
|
|
|
+ {name: 'fee', value: '送货费'},
|
|
|
+ {name: 'fee', value: '提货费'},
|
|
|
+ {name: 'fee', value: '燃油附加费'},
|
|
|
+ {name: 'fee', value: '信息费'},
|
|
|
+ {name: 'fee', value: '其它费用'},
|
|
|
+ {name: 'fee', value: '备注'},
|
|
|
+ {name: 'fee', value: '起始计费'},
|
|
|
+ {name: 'fee', value: '起始计数'},
|
|
|
+ {name: 'fee', value: '运费合计'},
|
|
|
+ ];
|
|
|
+ new Header({
|
|
|
+ el: "table",
|
|
|
+ name: "detail",
|
|
|
+ column: column,
|
|
|
+ data: this.details,
|
|
|
+ restorationColumn: 'addtime',
|
|
|
+ fixedTop: ($('#form_div').height()) + ($('#btn').height()) + 1,
|
|
|
+ }).init();
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ detailExport(sign) {
|
|
|
+ let url = '{{url('finance/settlementBills/logisticFee/export')}}';
|
|
|
+ let token = '{{ csrf_token() }}';
|
|
|
+ if (sign) {
|
|
|
+ excelExport(true, checkData, url, this.total, token);
|
|
|
+ } else {
|
|
|
+ excelExport(false, checkData, url, null, token, {
|
|
|
+ owner_id: this.owner.id,
|
|
|
+ year: this.request.year,
|
|
|
+ month: this.request.month,
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
+ },
|
|
|
+ filters: {},
|
|
|
+ });
|
|
|
+ </script>
|
|
|
+@endsection
|