|
|
@@ -1,45 +1,76 @@
|
|
|
@extends('layouts.app')
|
|
|
-
|
|
|
@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="form-inline" id="btn"></div>
|
|
|
+ <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="sundryFeeExport(false)" href="javascript:">导出勾选内容</a>
|
|
|
+ <a class="dropdown-item" @click="sundryFeeExport(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="{{ 'ownerSundryFee/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" id="table">
|
|
|
<tr v-for="(owner_sundry_fee_detail,i) in owner_sundry_fee_details"
|
|
|
@click="selectTr===i+1?selectTr=0:selectTr=i+1"
|
|
|
:class="selectTr===i+1?'focusing' : ''">
|
|
|
<td><input class="checkItem" type="checkbox" :value="owner_sundry_fee_detail.id"></td>
|
|
|
<td>@{{ i+1 }}</td>
|
|
|
- <td>@{{ owner_sundry_fee_detail.owner.name }}</td>
|
|
|
+ <td>@{{ owner_sundry_fee_detail.owner ? owner_sundry_fee_detail.owner.name : ''}}</td>
|
|
|
<td>@{{ owner_sundry_fee_detail.created_at }}</td>
|
|
|
<td>@{{ owner_sundry_fee_detail.type }}</td>
|
|
|
<td>@{{ owner_sundry_fee_detail.fee_explain }}</td>
|
|
|
+ <td>@{{ owner_sundry_fee_detail.logistic_number }}</td>
|
|
|
+ <td>@{{ owner_sundry_fee_detail.logistic? owner_sundry_fee_detail.logistic.name:'' }}</td>
|
|
|
+ <td>@{{ owner_sundry_fee_detail.amount }}</td>
|
|
|
+ <td>@{{ owner_sundry_fee_detail.price }}</td>
|
|
|
<td>@{{ owner_sundry_fee_detail.fee }}</td>
|
|
|
<td>@{{ owner_sundry_fee_detail.remark }}</td>
|
|
|
- <td>
|
|
|
- <button @click="edit(owner_sundry_fee_detail.id)" type="button"
|
|
|
- class="btn btn-outline-primary btn-sm">改
|
|
|
- </button>
|
|
|
- <form :action="targetUrl(owner_sundry_fee_detail.id)" method="post"
|
|
|
- style="display: inline-block;"
|
|
|
- onsubmit="return confirm('您确定要删除吗?');">
|
|
|
- {{ csrf_field() }}
|
|
|
- {{ method_field('DELETE') }}
|
|
|
- <button type="submit" class="btn btn-outline-danger btn-sm">
|
|
|
- <i class="far fa-trash-alt"></i> 删
|
|
|
- </button>
|
|
|
- </form>
|
|
|
- </td>
|
|
|
</tr>
|
|
|
</table>
|
|
|
<div class="text-info h5 btn btn">{{$owner_sundry_fee_details->count()}}
|
|
|
/{{$owner_sundry_fee_details->total()}}</div>
|
|
|
{{$owner_sundry_fee_details->appends($paginateParams)->links()}}
|
|
|
</div>
|
|
|
- <textarea id="clipboardDiv" style="opacity:0"></textarea>
|
|
|
+ <textarea hidden id="clipboardDiv" style="opacity:0"></textarea>
|
|
|
</div>
|
|
|
@endsection
|
|
|
@section('lastScript')
|
|
|
@@ -50,12 +81,12 @@
|
|
|
let vue = new Vue({
|
|
|
el: "#list",
|
|
|
data: {
|
|
|
- owner_sundry_fee_details: [
|
|
|
- @foreach($owner_sundry_fee_details as $owner_sundry_fee_detail)
|
|
|
- {!! $owner_sundry_fee_detail !!},
|
|
|
- @endforeach
|
|
|
- ],
|
|
|
+ owner_sundry_fee_details: [@foreach($owner_sundry_fee_details as $owner_sundry_fee_detail){!! $owner_sundry_fee_detail !!},@endforeach],
|
|
|
+ owners: [@foreach($owners as $owner){name: '{{ $owner->id }}', value: '{{ $owner->name}}'},@endforeach],
|
|
|
selectTr: 0,
|
|
|
+ isArchived: {!! $isArchived !!},
|
|
|
+ request: {!! $request !!},
|
|
|
+ owner: {!! $owner !!},
|
|
|
},
|
|
|
created() {
|
|
|
},
|
|
|
@@ -64,11 +95,65 @@
|
|
|
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 = [
|
|
|
@@ -77,9 +162,12 @@
|
|
|
{name: 'created_at', value: '日期'},
|
|
|
{name: 'type', value: '作业类型'},
|
|
|
{name: 'fee_explain', value: '费用描述'},
|
|
|
+ {name: 'logistic_number', value: '快递单号'},
|
|
|
+ {name: 'logistic_name', value: '承运商'},
|
|
|
+ {name: 'amount', value: '数量'},
|
|
|
+ {name: 'price', value: '单价'},
|
|
|
{name: 'fee', value: '收费金额'},
|
|
|
{name: 'remark', value: '备注'},
|
|
|
- {name: 'operation', value: '操作'},
|
|
|
];
|
|
|
new Header({
|
|
|
el: "table",
|
|
|
@@ -91,12 +179,15 @@
|
|
|
}).init();
|
|
|
},
|
|
|
methods: {
|
|
|
- edit(id) {
|
|
|
- location.href = "{{url('finance/settlementBills/ownerSundryFeeDetails')}}/" + id + "/edit";
|
|
|
+ sundryFeeExport(sign) {
|
|
|
+ let url = '{{url('customer/ownerSundryFee/export')}}';
|
|
|
+ let token = '{{ csrf_token() }}';
|
|
|
+ if (sign) {
|
|
|
+ excelExport(true, checkData, url, this.total, token);
|
|
|
+ } else {
|
|
|
+ excelExport(false, checkData, url, null, token);
|
|
|
+ }
|
|
|
},
|
|
|
- targetUrl(id) {
|
|
|
- return "{{ url('finance/settlementBills/ownerSundryFeeDetails') }}/" + id;
|
|
|
- }
|
|
|
},
|
|
|
filters: {},
|
|
|
});
|