create.blade.php 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. @extends('layouts.app')
  2. @section('content')
  3. <div id="nav2">
  4. @component('waybill.billingModel.menu')@endcomponent
  5. </div>
  6. <div class="container-fluid mt-3" id="list">
  7. <div class="card col-md-8 offset-md-2">
  8. <div class="card-body">
  9. <form method="POST" action="{{ url('billingModel') }}">
  10. @csrf
  11. <div class="form-group row">
  12. <label for="carrier_id" class="col-2 col-form-label text-right">承运商</label>
  13. <div class="col-8">
  14. <select name="BillingModel[carrier_id]" style="width: 30%;height: 30px" v-model="inputting.BillingModel.carrier_id">
  15. <option v-for="carrier in carriers" :value="carrier.id">@{{carrier.name}}</option>
  16. </select>
  17. <div class="col-sm-5">
  18. <p class="form-control-static text-danger small font-weight-bold">{{ $errors->first('BillingModel.carrier_id') }}</p>
  19. </div>
  20. </div>
  21. </div>
  22. <div class="form-group row">
  23. <label for="province_id" class="col-2 col-form-label text-right">选择省份</label>
  24. <div class="col-8" >
  25. <select name="BillingModel[province_id]" style="width: 30%;height: 30px" v-model="inputting.BillingModel.province_id" @change="changeProvince($event)">
  26. <option v-for="province in provinces" :value="province.id">@{{province.name}}</option>
  27. </select>
  28. <div class="col-sm-5">
  29. <p class="form-control-static text-danger small font-weight-bold">{{ $errors->first('BillingModel.province_id') }}</p>
  30. </div>
  31. </div>
  32. </div>
  33. <div class="form-group row">
  34. <label for="city_id" class="col-2 col-form-label text-right">选择城市</label>
  35. <div class="col-8" >
  36. <select name="BillingModel[city_id]" style="width: 30%;height: 30px" v-model="inputting.BillingModel.city_id">
  37. <option v-for="city in cities" :value="city.id">@{{city.name}}</option>
  38. </select>
  39. <div class="col-sm-5">
  40. <p class="form-control-static text-danger small font-weight-bold">{{ $errors->first('BillingModel.city_id') }}</p>
  41. </div>
  42. </div>
  43. </div>
  44. <div class="form-group row">
  45. <label for="unit_id" class="col-2 col-form-label text-right">货物单位</label>
  46. <div class="col-8" >
  47. <select name="BillingModel[unit_id]" style="width: 30%;height: 30px" v-model="inputting.BillingModel.unit_id">
  48. <option v-for="unit in units" :value="unit.id">@{{unit.name}}</option>
  49. </select>
  50. <div class="col-sm-5">
  51. <p class="form-control-static text-danger small font-weight-bold">{{ $errors->first('BillingModel.unit_id') }}</p>
  52. </div>
  53. </div>
  54. </div>
  55. <div class="form-group row">
  56. <label for="range_min" class="col-2 col-form-label text-right">价格区间</label>
  57. <div class="col-8 form-inline">
  58. <input type="text" style="width: 20%" class="form-control @error('BillingModel.range_min') is-invalid @enderror"
  59. name="BillingModel[range_min]" autocomplete="off" value="{{ old('BillingModel')['range_min'] }}" >----
  60. <input type="text" style="width: 20%" class="form-control @error('BillingModel.range_max') is-invalid @enderror"
  61. name="BillingModel[range_max]" autocomplete="off" value="{{ old('BillingModel')['range_max'] }}" >
  62. @error('BillingModel.range_min')
  63. <span class="invalid-feedback" role="alert">
  64. <strong>{{ $message }}</strong>
  65. </span>
  66. @enderror
  67. @error('BillingModel.range_max')
  68. <span class="invalid-feedback" role="alert">
  69. <strong>{{ $message }}</strong>
  70. </span>
  71. @enderror
  72. </div>
  73. </div>
  74. <div class="form-group row">
  75. <label for="unit_price" class="col-2 col-form-label text-right">单价</label>
  76. <div class="col-8">
  77. <input type="text" class="form-control @error('BillingModel.unit_price') is-invalid @enderror"
  78. name="BillingModel[unit_price]" autocomplete="off" value="{{ old('BillingModel')['unit_price'] }}" >
  79. @error('BillingModel.unit_price')
  80. <span class="invalid-feedback" role="alert">
  81. <strong>{{ $message }}</strong>
  82. </span>
  83. @enderror
  84. </div>
  85. </div>
  86. <div class="form-group row">
  87. <label for="initial_weight" class="col-2 col-form-label text-right">始重</label>
  88. <div class="col-8">
  89. <input type="text" class="form-control @error('BillingModel.initial_weight') is-invalid @enderror"
  90. name="BillingModel[initial_weight]" autocomplete="off" value="{{ old('BillingModel')['initial_weight'] }}" >
  91. @error('BillingModel.initial_weight')
  92. <span class="invalid-feedback" role="alert">
  93. <strong>{{ $message }}</strong>
  94. </span>
  95. @enderror
  96. </div>
  97. </div>
  98. <div class="form-group row">
  99. <div class="col-8 offset-2">
  100. <input type="submit" class="btn btn-success form-control">
  101. </div>
  102. </div>
  103. </form>
  104. </div>
  105. </div>
  106. </div>
  107. @endsection
  108. @section('lastScript')
  109. <script>
  110. let insertVue=new Vue({
  111. el:'#list',
  112. data:{
  113. inputting:{
  114. BillingModel:{
  115. @if(isset(old('BillingModel')['province_id']))
  116. province_id:'{{old('BillingModel')['province_id']}}',
  117. @endif
  118. @if(isset(old('BillingModel')['city_id']))
  119. city_id:'{{old('BillingModel')['city_id']}}',
  120. @endif
  121. @if(isset(old('BillingModel')['carrier_id']))
  122. carrier_id:'{{old('BillingModel')['carrier_id']}}',
  123. @endif
  124. @if(isset(old('BillingModel')['unit_id']))
  125. unit_id:'{{old('BillingModel')['unit_id']}}',
  126. @endif
  127. }
  128. },
  129. provinces:[
  130. @foreach($provinces as $province)
  131. {id:'{{$province->id}}',name:'{{$province->name}}',cities:{!! $province->cities !!} },
  132. @endforeach
  133. ],
  134. cities:[
  135. ],
  136. carriers:[
  137. @foreach($carriers as $carrier)
  138. {id:'{{$carrier->id}}',name:'{{$carrier->name}}'},
  139. @endforeach
  140. ],
  141. units:[
  142. @foreach($units as $unit)
  143. {id:'{{$unit->id}}',name:'{{$unit->name}}'},
  144. @endforeach
  145. ],
  146. },
  147. methods:{
  148. changeProvince(){
  149. let _this=this;
  150. let province_id=this.inputting.BillingModel.province_id;
  151. this.provinces.forEach(function (province) {
  152. if(province.id+''===province_id+''){
  153. _this.cities=province.cities;
  154. return
  155. }
  156. return null
  157. })
  158. }
  159. },
  160. });
  161. </script>
  162. @endsection