edit.blade.php 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628
  1. @extends('layouts.app')
  2. @section('title')编辑-用户@endsection
  3. @section('content')
  4. <div class="container-fluid" id="editPanel">
  5. <div class="card">
  6. <div class="card-body">
  7. @if(Session::has('successTip'))
  8. <div class="alert alert-success h1">{{Session::get('successTip')}}!</div>
  9. @endif
  10. <form method="POST" action='{{url("maintenance/user/{$user->id}")}}'>
  11. @csrf
  12. @method('PUT')
  13. <div class="form-group row">
  14. <label for="name" class="col-2 col-form-label text-right">用户名</label>
  15. <div class="col-8">
  16. <input type="text" class="form-control @error('name') is-invalid @enderror"
  17. name="name" autocomplete="off" value="@if(old('name')){{old('name')}}@else{{$user->name}}@endif" required>
  18. @error('name')
  19. <span class="invalid-feedback" role="alert">
  20. <strong>{{ $message }}</strong>
  21. </span>
  22. @enderror
  23. </div>
  24. </div>
  25. <div class="form-group row">
  26. <label for="email" class="col-2 col-form-label text-right">邮箱</label>
  27. <div class="col-8">
  28. <input type="text" class="form-control @error('email') is-invalid @enderror"
  29. name="email" autocomplete="off" value="@if(old('email')){{old('email')}}@else{{$user->email}}@endif" required>
  30. @error('email')
  31. <span class="invalid-feedback" role="alert">
  32. <strong>{{ $message }}</strong>
  33. </span>
  34. @enderror
  35. </div>
  36. </div>
  37. <div class="form-group row">
  38. <label for="email" class="col-2 col-form-label text-right">手机号</label>
  39. <div class="col-8">
  40. <input type="text" class="form-control @error('phone') is-invalid @enderror"
  41. name="phone" autocomplete="off" value="@if(old('phone')){{old('phone')}}@else{{$user->userDetail ? $user->userDetail->mobile_phone : ''}}@endif">
  42. @error('phone')
  43. <span class="invalid-feedback" role="alert">
  44. <strong>{{ $message }}</strong>
  45. </span>
  46. @enderror
  47. </div>
  48. </div>
  49. <div class="form-group row">
  50. <label for="userWorkgroup" class="col-2 col-form-label text-right">工作组</label>
  51. <div class="col-8">
  52. <select class="form-control" name="userWorkgroupID" id="userWorkgroupID" v-model="userWorkgroupID">
  53. <option v-for="userWorkgroup in userWorkgroups" :value="userWorkgroup.id">@{{ userWorkgroup.name }}</option>
  54. </select>
  55. </div>
  56. </div>
  57. <div class="form-group row">
  58. <label for="role" class="col-md-3 col-form-label text-md-right">角色</label>
  59. <div class="col-md-7">
  60. <input type="text" class="form-control tooltipTarget" placeholder="定位角色"
  61. @input="seekRole($event)" title="输入关键词快速定位"></div>
  62. </div>
  63. <div class="form-group row">
  64. <label class="col-md-3"></label>
  65. <div class="col-md-4">
  66. <input name="role" hidden v-model="roles" >
  67. <div class="input-group" style="max-height: 190px; overflow-y: scroll;border-radius:5px;opacity:0.5;text-align: center;">
  68. <ul class="list-group tooltipTarget" style="width: 100%" onselectstart="return false;">
  69. <li :data-original-title="role.style ? '双击删除角色' :'双击添加角色'" v-for="role in rolesFilter" :id="role.name" class="list-group-item list-group-item-action pt-0 pb-0"
  70. @dblclick="selectedRole(role)" :class="role.style ? 'active' :''"><span style="cursor: default;" :id="role.name"> @{{ role.name }} </span></li>
  71. </ul>
  72. </div>
  73. </div>
  74. <div class="col-md-3">
  75. <div class="input-group" style="max-height: 190px; overflow-y: scroll;border-radius:5px;text-align: center;">
  76. <ul class="list-group" style="width: 100%" onselectstart="return false;">
  77. <li title="双击删除角色" v-for="role in rolesList" :id="role.name" class="list-group-item list-group-item-action pt-0 pb-0"
  78. @dblclick="selectedRole(role)" ><span style="cursor: default;" > @{{ role.name }} </span></li>
  79. </ul>
  80. </div>
  81. </div>
  82. </div>
  83. <hr class="col-8 offset-2 border-info">
  84. {{--承运商--}}
  85. <div class="form-group row">
  86. <label for="logistic" class="col-md-3 col-form-label text-md-right">可见承运商</label>
  87. <div class="col-md-7">
  88. <input type="text" class="form-control tooltipTarget" placeholder="定位承运商"
  89. @input="seekLogistic($event)" title="输入关键词快速定位"></div>
  90. </div>
  91. <div class="form-group row">
  92. <label class="col-md-3"></label>
  93. <div class="col-md-4">
  94. <input name="logistic" hidden v-model="logistics" >
  95. <div class="input-group" style="max-height: 150px; overflow-y: scroll;border-radius:5px;opacity:0.5;text-align: center;">
  96. <ul class="list-group tooltipTarget" style="width: 100%" onselectstart="return false;">
  97. <li :data-original-title="logistic.style ? '双击删除承运商' :'双击添加承运商'" v-for="logistic in logisticsFilter" :id="logistic.name" class="list-group-item list-group-item-action pt-0 pb-0"
  98. @dblclick="selectedLogistic(logistic)" :class="logistic.style ? 'active' :''"><span style="cursor: default;" > @{{ logistic.name }} </span></li>
  99. </ul>
  100. </div>
  101. </div>
  102. <div class="col-md-3">
  103. <input name="logistic" hidden v-model="logistics" >
  104. <div class="input-group" style="max-height: 150px; overflow-y: scroll;border-radius:5px;text-align: center;">
  105. <ul class="list-group" style="width: 100%" onselectstart="return false;">
  106. <li title="双击删除承运商" v-for="logistic in logisticsList" class="list-group-item list-group-item-action pt-0 pb-0"
  107. @dblclick="selectedLogistic(logistic)" ><span style="cursor: default;" > @{{ logistic.name }} </span></li>
  108. </ul>
  109. </div>
  110. </div>
  111. </div>
  112. <hr class="col-8 offset-2 border-info">
  113. <div class="form-group row">
  114. <label for="supplier" class="col-md-3 col-form-label text-md-right">供应商</label>
  115. <div class="col-md-7">
  116. <input type="text" class="form-control tooltipTarget" placeholder="定位供应商"
  117. @input="seekSupplier($event)" title="输入关键词快速定位"></div>
  118. </div>
  119. <div class="form-group row">
  120. <label class="col-md-3"></label>
  121. <div class="col-md-4">
  122. <input name="supplier" hidden v-model="suppliers" >
  123. <div class="input-group" style="max-height: 190px; overflow-y: scroll;border-radius:5px;opacity:0.5;text-align: center;">
  124. <ul class="list-group tooltipTarget" style="width: 100%" onselectstart="return false;">
  125. <li :data-original-title="supplier.style ? '双击删除供应商' :'双击添加供应商'" v-for="supplier in suppliersFilter" :id="supplier.name" class="list-group-item list-group-item-action pt-0 pb-0"
  126. @dblclick="selectedSupplier(supplier)" :class="supplier.style ? 'active' :''"><span style="cursor: default;" :id="supplier.name"> @{{ supplier.name }} </span></li>
  127. </ul>
  128. </div>
  129. </div>
  130. <div class="col-md-3">
  131. <div class="input-group" style="max-height: 190px; overflow-y: scroll;border-radius:5px;text-align: center;">
  132. <ul class="list-group" style="width: 100%" onselectstart="return false;">
  133. <li title="双击删除供应商" v-for="supplier in suppliersList" :id="supplier.name" class="list-group-item list-group-item-action pt-0 pb-0"
  134. @dblclick="selectedSupplier(supplier)" ><span style="cursor: default;" > @{{ supplier.name }} </span></li>
  135. </ul>
  136. </div>
  137. </div>
  138. </div>
  139. {{-- 货主分组开始--}}
  140. <hr class="col-8 offset-2 border-info">
  141. <div class="form-group row">
  142. <label for="supplier" class="col-md-3 col-form-label text-md-right">货主分组</label>
  143. <div class="col-md-7">
  144. <input type="text" class="form-control tooltipTarget" placeholder="定位货主组"
  145. @input="seekOwnerGroup($event)" title="输入关键词快速定位"></div>
  146. </div>
  147. <div class="form-group row">
  148. <label class="col-md-3"></label>
  149. <div class="col-md-4">
  150. <input name="ownerGroup" hidden v-model="ownerGroups" >
  151. <div class="input-group" style="max-height: 190px; overflow-y: scroll;border-radius:5px;opacity:0.5;text-align: center;">
  152. <ul class="list-group tooltipTarget" style="width: 100%" onselectstart="return false;">
  153. <li :data-original-title="ownerGroup.style ? '双击删除货主组' :'双击添加货主组'" v-for="ownerGroup in ownerGroupsFilter" :id="ownerGroup.name" class="list-group-item list-group-item-action pt-0 pb-0"
  154. @dblclick="selectedOwnerGroup(ownerGroup)" :class="ownerGroup.style ? 'active' :''"><span style="cursor: default;" :id="ownerGroup.name"> @{{ ownerGroup.name }} </span></li>
  155. </ul>
  156. </div>
  157. </div>
  158. <div class="col-md-3">
  159. <div class="input-group" style="max-height: 190px; overflow-y: scroll;border-radius:5px;text-align: center;">
  160. <ul class="list-group" style="width: 100%" onselectstart="return false;">
  161. <li title="双击删除货主组" v-for="ownerGroup in ownerGroupsList" :id="ownerGroup.name" class="list-group-item list-group-item-action pt-0 pb-0"
  162. @dblclick="selectedOwnerGroup(ownerGroup)" ><span style="cursor: default;" > @{{ ownerGroup.name }} </span></li>
  163. </ul>
  164. </div>
  165. </div>
  166. </div>
  167. {{-- 货主分组结束--}}
  168. <hr class="col-8 offset-2 border-info">
  169. <div class="form-group row">
  170. <div class="col-8 offset-2">
  171. <input type="submit" class="btn btn-outline-dark form-control">
  172. </div>
  173. </div>
  174. </form>
  175. </div>
  176. </div>
  177. </div>
  178. @endsection
  179. @section('lastScript')
  180. <script>
  181. let vueList=new Vue({
  182. el:"#editPanel",
  183. data:{
  184. userWorkgroupID:'{{old('userWorkgroupID')??($userWorkgroup?$userWorkgroup->id:'')}}',
  185. userWorkgroups:[
  186. @foreach($userWorkgroups as $userWorkgroup)
  187. {!! $userWorkgroup !!},
  188. @endforeach
  189. ],
  190. rolesAll:[
  191. @foreach( $rolesAll as $role )
  192. {id:'{{$role->id}}',name:'{{$role->name}}',style:false},
  193. @endforeach
  194. ],
  195. rolesFilter:[
  196. @foreach( $rolesAll as $role )
  197. {id:'{{$role->id}}',name:'{{$role->name}}',style:false},
  198. @endforeach
  199. ],
  200. roles:[
  201. @if(old('role'))
  202. {{ old('role') }}
  203. @else
  204. @foreach( $roles as $role )
  205. {{$role->id}},
  206. @endforeach
  207. @endif
  208. ],
  209. rolesList:[],
  210. logisticsAll:[
  211. @foreach($logistics as $logistic)
  212. {id:'{{$logistic->id}}',name:'{{$logistic->name}}',style:false},
  213. @endforeach
  214. ],
  215. logistics:[
  216. @if(old('logistic'))
  217. {{ old('logistic') }}
  218. @else
  219. @foreach( $logisticUser as $logistic )
  220. {{$logistic->id}},
  221. @endforeach
  222. @endif
  223. ],
  224. logisticsFilter:[
  225. @foreach($logistics as $logistic)
  226. {id:'{{$logistic->id}}',name:'{{$logistic->name}}',style:false},
  227. @endforeach
  228. ],
  229. logisticsList:[],
  230. suppliersAll: [
  231. @foreach($suppliers as $supplier)
  232. {id: '{{$supplier->id}}', name: '{{$supplier->name}}', style: false},
  233. @endforeach
  234. ],
  235. suppliersFilter: [
  236. @foreach($suppliers as $supplier)
  237. {id: '{{$supplier->id}}', name: '{{$supplier->name}}', style: false},
  238. @endforeach
  239. ],
  240. suppliers: [
  241. @if(old('supplier'))
  242. {{ old('supplier') }}
  243. @else
  244. @foreach( $supplierUser as $supplier )
  245. {{$supplier->id}},
  246. @endforeach
  247. @endif
  248. ],
  249. suppliersList: [],
  250. ownerGroupsAll: [
  251. @foreach($ownerGroups as $ownerGroup)
  252. {id: '{{$ownerGroup->id}}', name: '{{$ownerGroup->name}}', style: false},
  253. @endforeach
  254. ],
  255. ownerGroupsFilter: [
  256. @foreach($ownerGroups as $ownerGroup)
  257. {id: '{{$ownerGroup->id}}', name: '{{$ownerGroup->name}}', style: false},
  258. @endforeach
  259. ],
  260. ownerGroups: [
  261. @if(old('ownerGroup'))
  262. {{ old('ownerGroup') }}
  263. @else
  264. @foreach( $ownerGroup as $group )
  265. {{$group->id??''}},
  266. @endforeach
  267. @endif
  268. ],
  269. ownerGroupsList: [],
  270. },
  271. mounted:function(){
  272. $(".tooltipTarget").tooltip({'trigger':'hover'});
  273. if (this.roles.length>0){
  274. let rolesAll=this.rolesAll;
  275. let roles=this.roles;
  276. let rolesList=this.rolesList;
  277. for (let i = 0; i < roles.length; i++) {
  278. rolesAll.every(function (roleAll) {
  279. if (roleAll.id == roles[i]) {
  280. roleAll.style = true;
  281. rolesList.push({'id':roleAll.id,'name':roleAll.name});
  282. return false;
  283. }
  284. return true;
  285. });
  286. }
  287. }
  288. if (this.logistics.length>0){
  289. let logisticsAll=this.logisticsAll;
  290. let logistics=this.logistics;
  291. let logisticsList=this.logisticsList;
  292. for (let i = 0; i < logistics.length; i++) {
  293. logisticsAll.every(function (logisticAll) {
  294. if (logisticAll.id == logistics[i]) {
  295. logisticAll.style = true;
  296. logisticsList.push({'id':logisticAll.id,'name':logisticAll.name});
  297. return false;
  298. }
  299. return true;
  300. });
  301. }
  302. }
  303. if (this.suppliers.length>0){
  304. let suppliersAll=this.suppliersAll;
  305. let suppliers=this.suppliers;
  306. let suppliersList=this.suppliersList;
  307. for (let i = 0; i < suppliers.length; i++) {
  308. suppliersAll.every(function (supplierAll) {
  309. if (supplierAll.id == suppliers[i]) {
  310. supplierAll.style = true;
  311. suppliersList.push({'id':supplierAll.id,'name':supplierAll.name});
  312. return false;
  313. }
  314. return true;
  315. });
  316. }
  317. }
  318. if (this.ownerGroups.length>0){
  319. let ownerGroupsAll=this.ownerGroupsAll;
  320. let ownerGroups=this.ownerGroups;
  321. let ownerGroupsList=this.ownerGroupsList;
  322. for (let i = 0; i < ownerGroups.length; i++) {
  323. ownerGroupsAll.every(function (ownerGroupAll) {
  324. if (ownerGroupAll.id == ownerGroups[i]) {
  325. ownerGroupAll.style = true;
  326. ownerGroupsList.push({'id':ownerGroupAll.id,'name':ownerGroupAll.name});
  327. return false;
  328. }
  329. return true;
  330. });
  331. }
  332. }
  333. },
  334. methods:{
  335. selectedLogistic:function (e) {
  336. let logistics=this.logistics;
  337. let logisticsAll=this.logisticsAll;
  338. let logisticsList=this.logisticsList;
  339. let isLogistic=true;
  340. if (logistics&&logisticsAll) {
  341. for (let i = 0; i < logistics.length; i++) {
  342. if (logistics[i] == e.id) {
  343. logistics.splice(i,1);
  344. logisticsAll.every(function (logisticAll) {
  345. if (logisticAll.id == e.id) {
  346. logisticAll.style = false;
  347. return false;
  348. }
  349. return true;
  350. });
  351. logisticsList.every(function (logistic,i) {
  352. if (logistic.id==e.id){
  353. logisticsList.splice(i,1);
  354. return false;
  355. }
  356. return true;
  357. });
  358. isLogistic= false;
  359. break;
  360. }
  361. isLogistic= true;
  362. }
  363. }
  364. if (isLogistic || !logistics){
  365. logistics.push(e.id);
  366. logisticsAll.every(function (logisticAll) {
  367. if (logisticAll.id==e.id){
  368. logisticAll.style=true;
  369. logisticsList.push({'id':logisticAll.id,'name':logisticAll.name});
  370. return false;
  371. }
  372. return true;
  373. });
  374. }
  375. setTimeout(function(){
  376. $(".tooltipTarget").tooltip({'trigger':'hover'});
  377. },10)
  378. },
  379. selectedSupplier:function (e) {
  380. let suppliers=this.suppliers;
  381. let suppliersAll=this.suppliersAll;
  382. let suppliersList=this.suppliersList;
  383. let isSupplier=true;
  384. if (suppliers&&suppliersAll) {
  385. for (let i = 0; i < suppliers.length; i++) {
  386. if (suppliers[i] == e.id) {
  387. suppliers.splice(i,1);
  388. suppliersAll.every(function (supplierAll) {
  389. if (supplierAll.id == e.id) {
  390. supplierAll.style = false;
  391. return false;
  392. }
  393. return true;
  394. });
  395. suppliersList.every(function (supplier,i) {
  396. if (supplier.id==e.id){
  397. suppliersList.splice(i,1);
  398. return false;
  399. }
  400. return true;
  401. });
  402. isSupplier= false;
  403. break;
  404. }
  405. isSupplier= true;
  406. }
  407. }
  408. if (isSupplier || !suppliers){
  409. suppliers.push(e.id);
  410. suppliersAll.every(function (supplierAll) {
  411. if (supplierAll.id==e.id){
  412. supplierAll.style=true;
  413. suppliersList.push({'id':supplierAll.id,'name':supplierAll.name});
  414. return false;
  415. }
  416. return true;
  417. });
  418. }
  419. setTimeout(function(){
  420. $(".tooltipTarget").tooltip({'trigger':'hover'});
  421. },10)
  422. },
  423. seekLogistic:function (e) {
  424. let $val=e.target.value;
  425. let logisticsAll=this.logisticsAll;
  426. let bool = false;
  427. logisticsAll.every(function (logisticsAll) {
  428. let name=logisticsAll.name;
  429. if (name.includes($val)){
  430. bool = true;
  431. return false;
  432. }
  433. return true;
  434. });
  435. if($val === '' ){
  436. this.rolesFilter = this.rolesAll;
  437. }else if(bool){
  438. this.logisticsFilter = [];
  439. for (let i = 0; i <logisticsAll.length ; i++) {
  440. let logistic = logisticsAll[i];
  441. if(logistic.name.includes($val)){
  442. this.logisticsFilter.push(logistic);
  443. }
  444. }
  445. }
  446. },
  447. selectedRole:function (e) {
  448. let roles=this.roles;
  449. let rolesAll=this.rolesAll;
  450. let rolesList=this.rolesList;
  451. let isRole=true;
  452. if (roles && rolesAll) {
  453. for (let i = 0; i < roles.length; i++) {
  454. if (roles[i] == e.id) {
  455. roles.splice(i,1);
  456. rolesAll.every(function (roleAll) {
  457. if (roleAll.id == e.id) {
  458. roleAll.style = false;
  459. return false;
  460. }
  461. return true;
  462. });
  463. rolesList.every(function (role,i) {
  464. if (role.id==e.id){
  465. rolesList.splice(i,1);
  466. return false;
  467. }
  468. return true;
  469. });
  470. isRole= false;
  471. break;
  472. }
  473. isRole= true;
  474. }
  475. }
  476. if (isRole || !roles){
  477. roles.push(Number(e.id));
  478. rolesAll.every(function (roleAll) {
  479. if (roleAll.id==e.id){
  480. roleAll.style=true;
  481. rolesList.push({'id':roleAll.id,'name':roleAll.name});
  482. return false;
  483. }
  484. return true;
  485. });
  486. }
  487. setTimeout(function(){
  488. $(".tooltipTarget").tooltip({'trigger':'hover'});
  489. },10)
  490. },
  491. seekRole:function (e) {
  492. let $val=e.target.value;
  493. let rolesAll=this.rolesAll;
  494. let bool = false;
  495. rolesAll.every(function (roleAll) {
  496. let name=roleAll.name;
  497. if (name.includes($val)){
  498. bool = true;
  499. return false;
  500. }
  501. return true;
  502. });
  503. if($val === '' ){
  504. this.rolesFilter = this.rolesAll;
  505. }else if(bool){
  506. this.rolesFilter = [];
  507. for (let i = 0; i <rolesAll.length ; i++) {
  508. let role = rolesAll[i];
  509. if(role.name.includes($val)){
  510. this.rolesFilter.push(role);
  511. }
  512. }
  513. }
  514. },
  515. seekSupplier:function (e) {
  516. let $val=e.target.value;
  517. let suppliersAll=this.suppliersAll;
  518. let bool = false;
  519. suppliersAll.every(function (supplierAll) {
  520. let name=supplierAll.name;
  521. if (name.includes($val)){
  522. bool = true;
  523. return false;
  524. }
  525. return true;
  526. });
  527. if($val === '' ){
  528. this.suppliersFilter = this.suppliersAll;
  529. }else if(bool){
  530. this.suppliersFilter = [];
  531. for (let i = 0; i <suppliersAll.length ; i++) {
  532. let supplier = suppliersAll[i];
  533. if(supplier.name.includes($val)){
  534. this.suppliersFilter.push(supplier);
  535. }
  536. }
  537. }
  538. },
  539. selectedOwnerGroup:function (e) {
  540. let ownerGroups=this.ownerGroups;
  541. let ownerGroupsAll=this.ownerGroupsAll;
  542. let ownerGroupsList=this.ownerGroupsList;
  543. let isOwnerGroup=true;
  544. if (ownerGroups&&ownerGroupsAll) {
  545. for (let i = 0; i < ownerGroups.length; i++) {
  546. if (ownerGroups[i] == e.id) {
  547. ownerGroups.splice(i,1);
  548. ownerGroupsAll.every(function (ownerGroupAll) {
  549. if (ownerGroupAll.id == e.id) {
  550. ownerGroupAll.style = false;
  551. return false;
  552. }
  553. return true;
  554. });
  555. ownerGroupsList.every(function (ownerGroup,i) {
  556. if (ownerGroup.id==e.id){
  557. ownerGroupsList.splice(i,1);
  558. return false;
  559. }
  560. return true;
  561. });
  562. isOwnerGroup= false;
  563. break;
  564. }
  565. isOwnerGroup= true;
  566. }
  567. }
  568. if (isOwnerGroup || !ownerGroups){
  569. ownerGroups.push(e.id);
  570. ownerGroupsAll.every(function (ownerGroupAll) {
  571. if (ownerGroupAll.id==e.id){
  572. ownerGroupAll.style=true;
  573. ownerGroupsList.push({'id':ownerGroupAll.id,'name':ownerGroupAll.name});
  574. return false;
  575. }
  576. return true;
  577. });
  578. }
  579. setTimeout(function(){
  580. $(".tooltipTarget").tooltip({'trigger':'hover'});
  581. },10)
  582. },
  583. seekOwnerGroup:function (e) {
  584. let $val=e.target.value;
  585. let ownerGroupsAll=this.suppliersAll;
  586. let bool = false;
  587. ownerGroupsAll.every(function (ownerGroupAll) {
  588. let name=ownerGroupAll.name;
  589. if (name.includes($val)){
  590. bool = true;
  591. return false;
  592. }
  593. return true;
  594. });
  595. if($val === '' ){
  596. this.ownerGroupsFilter = this.ownerGroupsAll;
  597. }else if(bool){
  598. this.ownerGroupsFilter = [];
  599. for (let i = 0; i <ownerGroupsAll.length ; i++) {
  600. let ownerGroup = ownerGroupsAll[i];
  601. if(ownerGroup.name.includes($val)){
  602. this.ownerGroupsFilter.push(ownerGroup);
  603. }
  604. }
  605. }
  606. },
  607. },
  608. });
  609. </script>
  610. @endsection