laravel 循环中子元素使用&符号嵌入到父级,经典版

举报
lxw1844912514 发表于 2022/03/27 01:58:34 2022/03/27
【摘要】 /**ajax 获取企业名称 * * @param Request $request * * @return \Illuminate\Http\JsonResponse * @author lxw */ public function getCompanyName...

    
  1. /**ajax 获取企业名称
  2. *
  3. * @param Request $request
  4. *
  5. * @return \Illuminate\Http\JsonResponse
  6. * @author lxw
  7. */
  8. public function getCompanyName( Request $request )
  9. {
  10. $keyword = $request->query->get('q', '');
  11. $allCompany = Company::query();
  12. $allCompany = $allCompany->select('id', 'username');
  13. if ( $keyword ) {
  14. $allCompany = $allCompany->where('username', 'like', '%' . $keyword . '%');
  15. }
  16. $allCompany = $allCompany->orderBy('created_at', 'desc');
  17. $allCompany = $allCompany->limit(5);
  18. $allCompany = $allCompany->get();
  19. if ( empty($allCompany) ) {
  20. return response()->json(['status' => 500, 'data' => new \ArrayObject(), 'msg' => '搜索关键字不存在']);
  21. }
  22. $data = [];
  23. foreach ( $allCompany->toArray() as $item ) {
  24. $data[] = [
  25. 'id' => $item['id'],
  26. 'text' => $item['username'],
  27. ];
  28. }
  29. return response()->json(['status' => 200, 'data' => $data, 'msg' => '搜索成功']);
  30. }
  31. /**ajax请求该企业下的所有楼宇
  32. * 执行中的显示其他订单已开通
  33. *
  34. * @param $companyId
  35. *
  36. * @return \Illuminate\Http\JsonResponse
  37. * @author lxw
  38. */
  39. public function getCompanyBuildings( $companyId )
  40. {
  41. //该企业下已经被创建过订单且处于执行中的的楼宇id
  42. $doingBuilds = BuildingPayment::query()
  43. ->where('company_id', $companyId)
  44. ->whereDate('duetime', '>', date('Y-m-d', time()))
  45. ->groupBy('building_id')
  46. ->get(['building_id']);
  47. $doingBuildArr = $doingBuilds ? $doingBuilds->toArray() : [];
  48. $doingBuildIds = array_column($doingBuildArr, 'building_id');
  49. //该企业下所有的楼宇
  50. $allBuildings = Building::query()
  51. ->where('company_id', $companyId)
  52. ->orderBy('sort', 'asc')
  53. ->get(['id', 'name']);
  54. $allBuildings = $allBuildings ? $allBuildings->toArray() : [];
  55. foreach ( $allBuildings as &$building ) {
  56. if( in_array($building['id'], $doingBuildIds)){
  57. $building['isPayment'] = true;
  58. }else{
  59. $building['isPayment'] = false;
  60. }
  61. }
  62. return response()->json(['status' => 200, 'data' => $allBuildings, 'msg' => '搜索成功']);
  63. }

  

文章来源: blog.csdn.net,作者:lxw1844912514,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/lxw1844912514/article/details/100027975

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。