<?php

namespace App\Http\Controllers\Admin;

use App\Models\RelationPortalStatusPublic;
use App\Models\RelationPortalPublic;
use Illuminate\Http\Request;
use Illuminate\Pagination\LengthAwarePaginator;
use Illuminate\Support\Facades\Auth;
use App\Http\Controllers\Controller;
use App\Models\MstPropertyType;
use App\Models\MstPropertyTypeSub;
use App\Models\Article;
use App\Models\Facility;
use App\Models\Vendor;
use App\Models\MstPrefecture;
use App\Models\MstCity;
use App\Models\MstTown;
use App\Models\MstLine;
use App\Models\MstStation;
use App\Models\MstFloorType;
use App\Models\MstGenkyou;
use App\Models\MstUseArea;
use App\Models\MstStore;
use App\Models\MstStructure;
use App\Models\MstStructureSub;
use App\Models\MstSchool;
use App\Models\MstManner;
use App\Models\MstParking;
use App\Models\MstStatus;
use App\Models\RelationArticlePhoto;
use App\Models\RelationArticleFacility;
use App\Models\RelationVendorArticle;
use App\Models\RelationPriceHistory;
use Illuminate\Support\Facades\Config;
//use Symfony\Component\HttpFoundation\Cookie;
use Illuminate\Support\Facades\Cookie;

// use Illuminate\Support\Facades\Auth;
// use Illuminate\Routing\Redirector;

// use Illuminate\Support\Facades\App;

class SearchController extends Controller
{
    /**
     * 売出物件　検索
     */

    public function forSale(Request $request)
    {
        $request->session()->forget('search_request');
        $cookie = Cookie::forget('current_params');
        $data = $this->getSearchProperty();

        return response()->view('admin.pages.for-sale', $data)->withCookie($cookie);
    }

    /**
     * 成約物件　検索
     */
    public function close(Request $request)
    {
        $request->session()->forget('search_request');
        $cookie = Cookie::forget('current_params');
        $data = $this->getSearchProperty();
        $data['isclose'] = true;
        return response()->view('admin.pages.close', $data)->withCookie($cookie);
    }

    /**
     * マンション建物　検索
     */
    public function mansion(Request $request)
    {
        $request->session()->forget('search_request');
        $cookie = Cookie::forget('current_params');
        $data = $this->getSearchPropertyMansion();

        return response()->view('admin.pages.mansion', $data)->withCookie($cookie);
    }

    /**
     * 分譲地　検索
     */
    public function lot(Request $request)
    {
        $request->session()->forget('search_request');
        $cookie = Cookie::forget('current_params');
        $data = $this->getSearchPropertyLot();
        return response()->view('admin.pages.lot', $data)->withCookie($cookie);
    }


    /**
     * 売出物件　一覧
     */
    public function forSaleList(Request $request)
    {
//        if (!empty(session('search_request')) && empty($request->get("address1"))) {
//            $request->merge((array)json_decode(session('search_request')));
//            unset($request['page']);
//        }

        request()->merge(['url_search' => url()->current()]);
        $cookie = cookie('current_params', json_encode($request->all(), 10));
        $user = Auth::user();
        $data['shop_user'] = MstStore::getStoreCode($user['store_id']);

        $count = 0;
        $tmp_con = $request->all();

        $condition = $this->createConditionSearch($tmp_con);

        $floor_type_list = MstFloorType::getData();
        $floor_type = [];
        foreach ($floor_type_list as $row) {
            $floor_type[$row['code']] = $row['name'];
        }
        // $current_status_list = MstGenkyou::getData();
        // $current_status = [];
        // foreach($current_status_list as $row) {
        //     $current_status[$row['code']] = $row['name'];
        // }

        $params = $request->all();
        unset($params['page']);
        unset($params['notcondition']);
        unset($params['sort']);
        unset($params['image']);
        unset($params['_token']);

        $request['provisional'] = 0;
        $article_list = [];
        $article_list = collect($article_list);
        for ($i = 0; $i < count($request->address1); $i++) {
            $newRequest = new \stdClass();
            foreach ($request->all() as $key => $value) {
                if ($key == 'land_condition') {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i * 2] ?? null, $value[$i * 2 + 1] ?? null];
                    }
                } else {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i] ?? null];
                    }
                }
            }

            $newRequest->image = $request->get("image");
            $newRequest->sort = $request->get("sort");
            $newRequest->floor = $request->get("floor");
            $art_list = Article::getSearchDataByCondition($newRequest, null, null, 2);
            $article_list = $article_list->merge($art_list)->unique();
        }
        $page = !empty($request->get("page")) ? $request->get("page") : 1;
        $perPage = 30;

        $article_list = new LengthAwarePaginator(
            $article_list->forPage($page, $perPage),
            $article_list->count(),
            $perPage,
            $page,
            ['path' => route('admin-for-sale-list')]
        );

        $forgetItem = 0;

        foreach ($article_list as $key => &$row) {
            // NEW判定
            if ($row->created_at > date("Y-m-d", strtotime("-" . config('const.NEW') . " day"))) {
                $row->new = true;
            } else {
                $row->new = false;
            }

            $address = "";
            if (isset($row->address1)) {
                $add = MstPrefecture::getData($row->address1);
                $address .= $add[0]["name"];
            }
            if (isset($row->address2)) {
                $add = MstCity::getData($row->address1, $row->address2);
                $address .= $add[0]["name"];
            }
            if (isset($row->address3)) {
                $add = MstTown::getData($row->address1, $row->address2, $row->address3);
                if (count($add) > 0) {
                    $address .= $add[0]["name"];
                }
            }
            if (isset($row->address4)) {
                $address .= $row->address4;
            }
            $row->address = $address;

            if (isset($row->floor_plan_type) && isset($floor_type[$row->floor_plan_type])) {
                $row['floor_plan_text'] = $row->floor_plan . $floor_type[$row->floor_plan_type];

            }
            if (isset($row->current_status)) {
                $status = MstGenkyou::getDataByCode($row->current_status);
                $row->current_status = $status->name ?? '';
            }
            if (isset($row->age_month)) {
                $row->age = intval(date('Y')) - intval($row->age_year);
            }

            if (isset($row->primary_school_school)) {
                $primary = MstSchool::getSchoolByCode($row->primary_school_school);
                if (isset($primary->name)) {
                    $row->primary_school_name = str_replace('学校', '', $primary->name);
                }
            }
            if (isset($row->secondary_school_school)) {
                $secondary = MstSchool::getSchoolByCode($row->secondary_school_school);
                if (isset($secondary->name)) {
                    $row->secondary_school_name = str_replace('学校', '', $secondary->name);
                }
            }


            // 間取り画像取得
            if (isset($row->floor_file_path) && !empty($row->floor_file_path)) {
                $row->floor_file_path = str_replace('public', '/storage', $row->floor_file_path);
            } else {
                $row->floor_file_path = '';
            }

            // 写真
            $top_image = RelationArticlePhoto::getTopImagePath($row->building_id);
            if (isset($top_image->file_path)) {
                $row->top_file_path = str_replace('public', '/storage', $top_image->file_path);
            } else {
                $row->top_file_path = '';
            }

            // 写真の枚数
            $count = RelationArticlePhoto::getCountImgByArticleId($row->building_id);
            $listArticlePhoto = RelationArticlePhoto::getImgByArticleId($row->building_id);

            $row->file_count = $count;
            if (!empty($row->mansion_id)) {
                $row->mansion_file_count = RelationArticlePhoto::countImageArticleHouse($row->mansion_id, [1,2,3,4,5,6]);
                $row->file_count = RelationArticlePhoto::countImageArticleHouse($row->building_id, [2,3,4,5,6,7,8,9,10,11,12,13,14,15]);
            } elseif ($row->property == 4 || $row->property == 5) {
                $row->mansion_file_count = RelationArticlePhoto::countImageArticleHouse($row->building_id, [4, 5, 6, 17, 20]);
                $row->file_count = RelationArticlePhoto::countImageArticleHouse($row->building_id, [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 21]);
            }

            // 価格履歴の取得
            $history = RelationPriceHistory::getHistoryById($row->building_id);
            $row->history = $history;

            // 物件種別名、業者取得
            if (is_null($row->property)) {
                // マンションの場合
                $mansion = Article::getDataById($row->mansion_id);
                if (isset($mansion)) {
                    $row->property_name = $this->getPropertyName($mansion->property, $mansion->property_sub);
                    $vendor_info = Vendor::getDataListByArticleId($row->building_id);

                    // 学校
                    if (isset($mansion->primary_school_school)) {
                        $primary = MstSchool::getSchoolByCode($mansion->primary_school_school);
                        if (isset($primary->name)) {
                            $row->primary_school_name = str_replace('学校', '', $primary->name);
                        }
                    }
                    if (isset($mansion->secondary_school_school)) {
                        $secondary = MstSchool::getSchoolByCode($mansion->secondary_school_school);
                        if (isset($secondary->name)) {
                            $row->secondary_school_name = str_replace('学校', '', $secondary->name);
                        }
                    }

                    // 築年月
                    $row->age_year = $mansion->age_year;
                    $row->age_month = $mansion->age_month;
                    $row->age = intval(date('Y')) - intval($mansion->age_year);
                } else {
                    $article_list->forget($key);
                    $forgetItem++;
                    continue;
                }
            } else {
                // それ以外
                $row->property_name = $this->getPropertyName($row->property, $row->property_sub);

                $vendor_info = Vendor::getDataListByArticleId($row->building_id);
            }

            $row['vendor_info'] = $vendor_info ?? null;
            $row['public_portal'] = $row->portalPublic();
        }

        // 表示中のページの最初のアイテムのインデックス番号
        $first = $article_list->firstItem();

        // 表示中のページの最後のアイテムのインデックス番号
        $last = $article_list->lastItem();

        // 取引様態
        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        // ステータス
        $data['statuses'] = MstStatus::getData();

        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['ad_instructions'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '未'],
            ['code' => 2, 'name' => '入稿済'],
        ];


        $count = count($article_list);
        $data['article_list'] = $article_list;
        $data['condition'] = $condition;
        $data['count'] = $count;
        $data['first'] = $first;
        $data['last'] = $last;
        $data['params'] = $params;
        $data['isDel'] = 1;
        $data['forgetItem'] = $forgetItem;

        $data['bar_public'] = true;
        $data['status_public_suumo'] = $status_public_suumo = RelationPortalStatusPublic::getArticleTotal(1, $user->store_id);
        $data['status_public_homes'] = $status_public_homes = RelationPortalStatusPublic::getArticleTotal(2, $user->store_id);
        $data['status_public_athome'] = $status_public_athome = RelationPortalStatusPublic::getArticleTotal(3, $user->store_id);
        if(!empty($status_public_suumo)){
            $data['count_nopublic_suumo'] = $status_public_suumo->total_portal - ($status_public_suumo->net_frame_from + $status_public_suumo->net_report_from);
        }
        if(!empty($status_public_homes)){
            $data['count_nonpublic_homes'] = $status_public_homes->total_portal - $status_public_homes->net_frame_from;
        }
        if(!empty($status_public_athome)){
            $data['count_nopublic_athome'] = $status_public_athome->net_report_to;
        }

        return response()->view('admin.pages.for-sale-list', $data)->withCookie($cookie);
    }


    /**
     * 成約物件　一覧
     */
    public function closeList(Request $request)
    {
//        if (!empty(session('search_request')) && empty($request->get("address1"))) {
//            $request->merge((array)json_decode(session('search_request')));
//
//        }
        $request->merge(['url_search' => url()->current()]);
        $cookie = cookie('current_params', json_encode($request->all(), 10));
        $user = Auth::user();
        $count = 0;
        $tmp_con = $request->all();

        $condition = $this->createConditionSearch($tmp_con);

        $floor_type_list = MstFloorType::getData();
        $floor_type = [];
        foreach ($floor_type_list as $row) {
            $floor_type[$row['code']] = $row['name'];
        }
        $current_status_list = MstGenkyou:: getData();
        $current_status = [];
        foreach ($current_status_list as $row) {
            $current_status[$row['code']] = $row['name'];
        }


        $params = $request->all();
        unset($params['page']);
        unset($params['notcondition']);
        unset($params['sort']);
        unset($params['image']);
        unset($params['_token']);

        $article_list = [];
        $article_list = collect($article_list);
        for ($i = 0; $i < count($request->address1); $i++) {
            $newRequest = new \stdClass();
            foreach ($request->all() as $key => $value) {
                if ($key == 'land_condition') {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i * 2] ?? null, $value[$i * 2 + 1] ?? null];
                    }
                } else {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i] ?? null];
                    }
                }

            }
            $newRequest->image = $request->get("image");
            $newRequest->sort = $request->get("sort");
            $art_list = Article::getSearchDataByCondition($newRequest, null, null, 1);
            $article_list = $article_list->merge($art_list)->unique();
        }
        $page = !empty($request->get("page")) ? $request->get("page") : 1;
        $perPage = 30;
        $article_list = new LengthAwarePaginator(
            $article_list->forPage($page, $perPage),
            $article_list->count(),
            $perPage,
            $page,
            ['path' => route('admin-close-list')]
        );

        foreach ($article_list as &$row) {
            // NEW判定
            if ($row->created_at > date("Y-m-d", strtotime("-" . config('const.NEW') . " day"))) {
                $row->new = true;
            } else {
                $row->new = false;
            }
            if (isset($row->floor_plan_type) && isset($floor_type[$row->floor_plan_type])) {
                $row->floor_plan_text = $row->floor_plan . $floor_type[$row->floor_plan_type];

            }
            if (isset($row->current_status)) {
                $status = MstGenkyou::getDataByCode($row->current_status);
                $row->current_status = $status->name ?? '';
            }
            if (isset($row->age_month)) {
                $row->age = intval(date('Y')) - intval($row->age_year);
            }

            if (isset($row->primary_school_school)) {
                $primary = MstSchool::getSchoolByCode($row->primary_school_school);
                if (isset($primary->name)) {
                    $row->primary_school_name = str_replace('学校', '', $primary->name);
                }
            }
            if (isset($row->secondary_school_school)) {
                $secondary = MstSchool::getSchoolByCode($row->secondary_school_school);
                if (isset($secondary->name)) {
                    $row->secondary_school_name = str_replace('学校', '', $secondary->name);
                }
            }

            // 間取り画像取得
            if (isset($row->floor_file_path)) {
                $row->floor_file_path = str_replace('public', '/storage', $row->floor_file_path);
            } else {
                $row->floor_file_path = '';
            }
            // 写真
            $top_image = RelationArticlePhoto::getTopImagePath($row->building_id);
            if (isset($top_image->file_path)) {
                $row->top_file_path = str_replace('public', '/storage', $top_image->file_path);
            } else {
                $row->top_file_path = '';
            }

            // 写真の枚数
            $count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, null);
            $row->file_count = $count;

            if (!empty($row->mansion_id)) {
                $row->mansion_file_count = RelationArticlePhoto::getCountImgByArticleId($row->mansion_id, 1);
                $row->file_count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, 2);
            } elseif ($row->property == 4 || $row->property == 5) {
                $row->mansion_file_count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, 1);
                $row->file_count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, 2);
            }

            // 価格履歴の取得
            $history = RelationPriceHistory::getHistoryById($row->building_id);
            $row->history = $history;

            // 物件種別名、業者取得
            if (is_null($row->property)) {
                // マンションの場合
                $mansion = Article::getDataById($row->mansion_id);
                if (isset($mansion)) {
                    $row->property_name = $this->getPropertyName($mansion->property, $mansion->property_sub);
                    $vendor_info = Vendor::getDataListByArticleId($row->building_id);

                    // 学校
                    if (isset($mansion->primary_school_school)) {
                        $primary = MstSchool::getSchoolByCode($mansion->primary_school_school);
                        if (isset($primary->name)) {
                            $row->primary_school_name = str_replace('学校', '', $primary->name);
                        }
                    }
                    if (isset($mansion->secondary_school_school)) {
                        $secondary = MstSchool::getSchoolByCode($mansion->secondary_school_school);
                        if (isset($secondary->name)) {
                            $row->secondary_school_name = str_replace('学校', '', $secondary->name);
                        }
                    }

                    // 築年月
                    $row->age_year = $mansion->age_year;
                    $row->age_month = $mansion->age_month;
                    $row->age = intval(date('Y')) - intval($mansion->age_year);
                }
            } else {
                // それ以外
                $row->property_name = $this->getPropertyName($row->property, $row->property_sub);
                $vendor_info = Vendor::getDataListByArticleId($row->building_id);
            }

            $row['vendor_info'] = $vendor_info ?? null;
        }
        // 表示中のページの最初のアイテムのインデックス番号
        $first = $article_list->firstItem();

        // 表示中のページの最後のアイテムのインデックス番号
        $last = $article_list->lastItem();

        // 取引様態
        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        // ステータス
        $data['statuses'] = MstStatus::getData();

        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['ad_instructions'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '未'],
            ['code' => 2, 'name' => '入稿'],
        ];

        $count = count($article_list);
        $data['article_list'] = $article_list;
        $data['condition'] = $condition;
        $data['count'] = $count;
        $data['first'] = $first;
        $data['last'] = $last;
        $data['params'] = $params;

        $data['close'] = 1;
        return response()->view('admin.pages.close-list', $data)->withCookie($cookie);
    }

    /**
     * 売出物件　一覧
     */
    public function mansionList(Request $request)
    {
//        if (!empty(session('search_request')) && empty($request->get("address1"))) {
//            $request->merge((array)json_decode(session('search_request')));
//            unset($request['page']);
//        }
        request()->merge(['url_search' => url()->current()]);
        $cookie = cookie('current_params', json_encode($request->all(), 10));

        $params = $request->all();
        unset($params['_token']);
        unset($params['sort']);
        unset($params['page']);
        //dd($params);
        $count = 0;
        $tmp_con = $request->all();
        $condition = $this->createConditionSearch($tmp_con);



        $floor_type_list = MstFloorType::getData();
        $floor_type = [];
        foreach ($floor_type_list as $row) {
            $floor_type[$row['code']] = $row['name'];
        }
        $current_status_list = MstGenkyou:: getData();
        $current_status = [];
        foreach ($current_status_list as $row) {
            $current_status[$row['code']] = $row['name'];
        }

        $article_list = [];
        $article_list = collect($article_list);
        for ($i = 0; $i < count($request->address1); $i++) {
            $newRequest = new \stdClass();
            foreach ($request->all() as $key => $value) {
                if ($key == 'shared') {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i * 8] ?? null, $value[$i * 8 + 1] ?? null, $value[$i * 8 + 2] ?? null, $value[$i * 8 + 3] ?? null, $value[$i * 8 + 4] ?? null,
                            $value[$i * 8 + 5] ?? null, $value[$i * 8 + 6] ?? null, $value[$i * 8 + 7] ?? null];
                    }
                } else {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i] ?? null];
                    }
                }

            }
            $newRequest->image = $request->get("image");
            $newRequest->sort = $request->get("sort");
            $art_list = Article::getMansionDataByCondition($newRequest, null, null, null);
            $article_list = $article_list->merge($art_list)->unique();
        }
        $page = !empty($request->get("page")) ? $request->get("page") : 1;
        $perPage = 30;
        $article_list = new LengthAwarePaginator(
            $article_list->forPage($page, $perPage),
            $article_list->count(),
            $perPage,
            $page,
            ['path' => route('admin-mansion-list')]
        );

        $room_count = 0;
        foreach ($article_list as &$row) {
            $room_count++;
            //$count_article = RelationArticlePhoto::getCountImgByArticleId($row->building_id);
            $count_article = RelationArticlePhoto::countImageArticleHouse($row->building_id, [1,2,3,4,5,6]);
            $row->file_count = $count_article;
            // 部屋取得
            $room_list = Article::getRoomList($row['building_id']);
            foreach ($room_list as &$room) {
                $room->floor_plan_name = MstFloorType::find($room->floor_plan_type)->name ?? '';
                if (isset($room->floor_plan_type) && $room->floor_plan_type > 0) {
                    $room->floor_plan_text = $room->floor_plan . $floor_type[$room->floor_plan_type];
                }
                if (isset($room->floor_file_path) && !empty($room->floor_file_path)) {
                    $room->floor_file_path = str_replace('public', '/storage', $room->floor_file_path);
                    $count = 1;
                } else {
                    $room->floor_file_path = '';
                }

                // 写真
                $top_image = RelationArticlePhoto::getTopImagePath($room->building_id);

                if (isset($top_image->file_path)) {
                    $row->top_file_path = str_replace('public', '/storage', $top_image->file_path);
                } else {
                    $row->top_file_path = '';
                }

                // 写真の枚数
                $count = RelationArticlePhoto::getCountImgByArticleId($room->building_id);
                $room->file_count = $count;


                // 業者の取得
                $vendor = RelationVendorArticle::getVendorDataByArticleId($room->building_id);
                $room->vendor_info = $vendor;

                // 価格履歴の取得
                $history = RelationPriceHistory::getHistoryById($room->building_id);
                $room->history = $history;
            }
            $row->room_list = $room_list;
            $row->room_count = count($room_list);

            $address = "";
            if (isset($row->address1)) {
                $add = MstPrefecture::getData($row->address1);
                $address .= $add[0]["name"];
            }
            if (isset($row->address2)) {
                $add = MstCity::getData($row->address1, $row->address2);
                $address .= $add[0]["name"];
            }
            if (isset($row->address3)) {
                $add = MstTown::getData($row->address1, $row->address2, $row->address3);
                if (!empty($add)) {
                    $address .= $add[0]["name"];
                }
            }
            if (isset($row->address4)) {
                $address .= $row->address4;
            }
            $row->address = $address;
            if (isset($row->floor_plan_type) && isset($floor_type[$row->floor_plan_type])) {
                $row->floor_plan_text = $row->floor_plan . $floor_type[$row->floor_plan_type];

            }
            if (isset($row->current_status)) {
                $status = MstGenkyou::getDataByCode($row->current_status);
                $row->current_status = $status->name ?? '';
            }
            if (isset($row->age_month)) {
                $row->age = intval(date('Y')) - intval($row->age_year);
            }

            if (isset($row->primary_school_school)) {
                $primary = MstSchool::getSchoolByCode($row->primary_school_school);
                if (isset($primary->name)) {
                    $row->primary_school_name = $primary->name;
                }
            }
            if (isset($row->secondary_school_school)) {
                $secondary = MstSchool::getSchoolByCode($row->secondary_school_school);
                if (isset($secondary->name)) {
                    $row->secondary_school_name = $secondary->name;
                }
            }

            // NEW判定
            if ($row->created_at > date("Y-m-d", strtotime("-" . config('const.NEW') . " day"))) {
                $row->new = true;
            } else {
                $row->new = false;
            }
            // 物件種別
            $row->property_name = $this->getPropertyName($row->property, $row->property_sub);

            // // 業者取得
            // $vendor_info = Vendor::getDataListByArticleId($row->building_id);
            // $row->vendor_info = $vendor_info;
        }

        // 表示中のページの最初のアイテムのインデックス番号
        $first = $article_list->firstItem();

        // 表示中のページの最後のアイテムのインデックス番号
        $last = $article_list->lastItem();
// dump($article_list);
        $data['article_list'] = $article_list;
        $data['condition'] = $condition;
        $data['first'] = $first;
        $data['last'] = $last;
        $data['params'] = $params;

        // 取引様態
        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        // ステータス
        $data['statuses'] = MstStatus::getData();

        $data['room_count'] = $room_count;

        //
        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['ad_instructions'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '未'],
            ['code' => 2, 'name' => '入稿'],
        ];


        $data['method_conf'] = [
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['price_change'] = [
            ['code' => 1, 'name' => '価格変更'],
        ];
        return response()->view('admin.pages.mansion-list', $data)->withCookie($cookie);
    }

    /**
     * 売出物件　一覧
     */
    public function lotList(Request $request)
    {
//        if (!empty(session('search_request')) && empty($request->get("address1"))) {
//            $request->merge((array)json_decode(session('search_request')));
//            unset($request['page']);
//        }

        request()->merge(['url_search' => url()->current()]);
        $cookie = cookie('current_params', json_encode($request->all(), 10));

        $params = $request->all();
        unset($params['_token']);
        unset($params['sort']);
        unset($params['page']);

        $count = 0;
        $tmp_con = $request->all();
        $condition = $this->createConditionSearch($tmp_con);

        $floor_type_list = MstFloorType::getData();
        $floor_type = [];
        foreach ($floor_type_list as $row) {
            $floor_type[$row['code']] = $row['name'];
        }
        $current_status_list = MstGenkyou:: getData();
        $current_status = [];
        foreach ($current_status_list as $row) {
            $current_status[$row['code']] = $row['name'];
        }
        $article_list = [];
        $article_list = collect($article_list);
        for ($i = 0; $i < count($request->address1); $i++) {
            $newRequest = new \stdClass();
            foreach ($request->all() as $key => $value) {
                {
                    if (is_array($value)) {
                        $newRequest->{$key} = [$value[$i] ?? null];
                    }
                }

            }
            $newRequest->image = $request->get("image");
            $newRequest->sort = $request->get("sort");
            $art_list = Article::getSearchDataByCondition($newRequest, null, null, null, '', 1);
            $article_list = $article_list->merge($art_list)->unique();
        }
        $page = !empty($request->get("page")) ? $request->get("page") : 1;
        $perPage = 30;
        $article_list = new LengthAwarePaginator(
            $article_list->forPage($page, $perPage),
            $article_list->count(),
            $perPage,
            $page,
            ['path' => route('admin-lot-list')]
        );

        $propety_list = [];
        $lot_count = 0;
        foreach ($article_list as &$row) {
            $row->disp_file = str_replace('public', '/storage', $row->floor_file_path);
            // 部屋取得
            $lot_list = Article::getLotList($row['building_id']);

            $lot_count_tmp = 0;
            foreach ($lot_list as &$lot) {
                $lot_count_tmp++;
                $lot->floor_plan_name = MstFloorType::find($lot->floor_plan_type)->name ?? '';
                if (isset($lot->floor_plan_type)) {
                    $lot->floor_plan_text = $lot->floor_plan . $floor_type[$lot->floor_plan_type];

                }
                // 物件種別
                $property_name = $this->getPropertyName($lot->property, $lot->property_sub);

                $lot->property_name = $property_name;
                if (!in_array($property_name, $propety_list)) {
                    $propety_list[] = $property_name;
                }

                // 写真
                $top_image = RelationArticlePhoto::getTopImagePath($lot->building_id);
                if (isset($top_image->file_path)) {
                    $count++;
                    $row->top_file_path = str_replace('public', '/storage', $top_image->file_path);
                } else {
                    $row->top_file_path = '';
                }

                // 写真の枚数
                if ($lot->property < 4) {
                    $count = RelationArticlePhoto::getCountImgByArticleId($lot->building_id);
                    $lot->file_count = $count;
                } else {
                    $lot->file_count = RelationArticlePhoto::getCountImgByArticleId($lot->building_id, 2);
                    $lot->file_count_out = RelationArticlePhoto::getCountImgByArticleId($lot->building_id, 1);
                }


                // 業者の取得
                $vendor = RelationVendorArticle::getVendorDataByArticleId($lot->building_id);
                $lot->vendor_info = $vendor;

                // 価格履歴の取得
                $history = RelationPriceHistory::getHistoryById($lot->building_id);
                $lot->history = $history;
            }
            $lot_count += $lot_count_tmp;
            $row->property_list = $propety_list;

            $row->lot_list = $lot_list;
            $row->lot_count = count($lot_list);
            //dd($row->address1, $row->address2, $row->address3, $row->address4);
            $address = "";
            if (!empty($row->address1)) {
                $add = MstPrefecture::getData($row->address1);
                $address .= $add[0]["name"] ?? '';
            }
            if (!empty($row->address2)) {
                $add = MstCity::getData($row->address1, $row->address2);
                $address .= $add[0]["name"] ?? '';
            }
            if (!empty($row->address3)) {
                $add = MstTown::getData($row->address1, $row->address2, $row->address3);
                $address .= $add[0]["name"] ?? '';
            }
            if (!empty($row->address4)) {
                $address .= $row->address4;
            }
            $row->address = $address;
            if (isset($row->floor_plan_type) && isset($floor_type[$row->floor_plan_type])) {
                $row->floor_plan_text = $row->floor_plan . $floor_type[$row->floor_plan_type];

            }
            if (isset($row->current_status)) {
                $status = MstGenkyou::getDataByCode($row->current_status);
                $row->current_status = $status->name ?? '';
            }
            if (isset($row->age_month)) {
                $row->age = intval(date('Y')) - intval($row->age_year);
            }

            if (isset($row->primary_school_school)) {
                $primary = MstSchool::getSchoolByCode($row->primary_school_school);
                if (isset($primary->name)) {
                    $row->primary_school_name = $primary->name;
                }
            }
            if (isset($row->secondary_school_school)) {
                $secondary = MstSchool::getSchoolByCode($row->secondary_school_school);
                if (isset($secondary->name)) {
                    $row->secondary_school_name = $secondary->name;
                }
            }

            // NEW判定
            if ($row->created_at > date("Y-m-d", strtotime("-" . config('const.NEW') . " day"))) {
                $row->new = true;
            } else {
                $row->new = false;
            }
            // 物件種別
            $row->property_name = $this->getPropertyName($row->property, $row->property_sub);
        }

        // 表示中のページの最初のアイテムのインデックス番号
        $first = $article_list->firstItem();

        // 表示中のページの最後のアイテムのインデックス番号
        $last = $article_list->lastItem();

        $data['article_list'] = $article_list;
        $data['condition'] = $condition;
        $data['first'] = $first;
        $data['last'] = $last;
        $data['params'] = $params;

        // 取引様態
        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        // ステータス
        $data['statuses'] = MstStatus::getData();

        $data['lot_count'] = $lot_count;

        //
        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['method_conf'] = [
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['price_change'] = [
            ['code' => 1, 'name' => '価格変更'],
        ];

        return response()->view('admin.pages.lot-list', $data)->withCookie($cookie);
    }

    public function getSearchProperty()
    {
        $user = Auth::user();

        $data = [];
        $data['property'] = [
            ['code' => 61, 'name' => 'マンション'],
            ['code' => 1, 'name' => '土地'],
            ['code' => 41, 'name' => '新築戸建'],
            ['code' => 42, 'name' => '中古戸建'],
            ['code' => 5, 'name' => 'テラスハウス'],
            ['code' => 7, 'name' => 'タウンハウス'],
        ];

        $data['revenue'] = [
            ['code' => 1, 'name' => '収益'],
        ];

        $data['un_revenue'] = [
            ['code' => 1, 'name' => '収益除'],
        ];

        $data['pet'] = [
            ['code' => 1, 'name' => '不可'],
            ['code' => 2, 'name' => '可（制限あり）'],
            //['code' => 3, 'name' => '相談'],
        ];
        $data['pet_num'] = [
            ['code' => '', 'name' => '匹数'],
            ['code' => 1, 'name' => 1],
            ['code' => 2, 'name' => 2],
            ['code' => 3, 'name' => 3],
            ['code' => 4, 'name' => 4],
            ['code' => 5, 'name' => 5],
            //['code' => 6, 'name' => '無制限'],
        ];
        $data['balcony'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '北'],
            ['code' => 2, 'name' => '北東'],
            ['code' => 3, 'name' => '東'],
            ['code' => 4, 'name' => '南東'],
            ['code' => 5, 'name' => '南'],
            ['code' => 6, 'name' => '南西'],
            ['code' => 7, 'name' => '西'],
            ['code' => 8, 'name' => '北西'],
        ];
        // 都道府県・市区郡・町村の取得
        $data['pref'] = MstPrefecture::getData();
       // if (count($data['pref']) > 1) {
            $data['pref'] = array_merge([['name' => '未選択', 'code' => -1]], $data['pref']);
       // }
        $defaultPrefCode = array_get(array_first($data['pref']), 'code');
        if ($user->company_id === 1) {
            $city = MstCity::getData($defaultPrefCode, null, $user->company_id);
            $data['city'] = $city;
        } else {
            $data['city'] = MstCity::getData($defaultPrefCode, null, $user->company_id);

        }
        $address2 = \request()->get("address2");
        if (is_array($address2) && count($address2) > 0) {
            $data['town'] = MstTown::getData($defaultPrefCode, array_first($address2));
        } else {
            $data['town'] = [];
        }

        // 学校区の取得
        $data['primary_school'] = MstSchool::getSchoolByType(1, $user->company_id);
        $data['secondary_school'] = MstSchool::getSchoolByType(2, $user->company_id);

        // 路線の取得
        $data['line'] = MstLine::getData();

        // 現況
        $data['land_status'] = MstGenkyou::getData();

        // 用途
        $data['use_area'] = MstUseArea::getData();

        // 店舗
        $data['shop'] = MstStore::getDataAll($user->company_id);

        // 構造
        $data['construction'] = MstStructure::getData();

        // 間取り
        $data['floor_plan'] = [
            ['code' => 1, 'name' => '1R - 1SLDK'],
            ['code' => 2, 'name' => '2K - 2SLDK'],
            ['code' => 3, 'name' => '3K - 3SLDK'],
            ['code' => 4, 'name' => '4K - 4SLDK'],
            ['code' => 5, 'name' => '5K〜'],
        ];

        $data['parking'] = MstParking::getData();

        $data['land_direction'] = [
            ['code' => 1, 'name' => '北'],
            ['code' => 2, 'name' => '北東'],
            ['code' => 3, 'name' => '東'],
            ['code' => 4, 'name' => '南東'],
            ['code' => 5, 'name' => '南'],
            ['code' => 6, 'name' => '南西'],
            ['code' => 7, 'name' => '西'],
            ['code' => 8, 'name' => '北西'],
        ];

        $data['walk'] = [
            ['code' => 1, 'name' => '徒歩'],
            ['code' => 2, 'name' => 'バス'],
        ];

        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['ad_instructions'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '未'],
            ['code' => 2, 'name' => '入稿'],
        ];

        return $data;
    }

    public function getSearchPropertyMansion()
    {
        $user = auth()->user();

        $data = [];
        $data['property'] = [
            ['code' => 1, 'name' => '土地'],
            ['code' => 2, 'name' => '戸建'],
            ['code' => 3, 'name' => 'マンション'],
        ];


        $data['pet'] = [
            ['code' => 1, 'name' => '不可'],
            ['code' => 2, 'name' => '可（制限あり）'],
            //['code' => 3, 'name' => '相談'],
        ];
        $data['pet_num'] = [
            ['code' => '', 'name' => '匹数'],
            ['code' => 1, 'name' => 1],
            ['code' => 2, 'name' => 2],
            ['code' => 3, 'name' => 3],
            ['code' => 4, 'name' => 4],
            ['code' => 5, 'name' => 5],
            ['code' => 6, 'name' => '無制限'],
        ];
        $data['balcony'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '北'],
            ['code' => 2, 'name' => '北東'],
            ['code' => 3, 'name' => '東'],
            ['code' => 4, 'name' => '南東'],
            ['code' => 5, 'name' => '南'],
            ['code' => 6, 'name' => '南西'],
            ['code' => 7, 'name' => '西'],
            ['code' => 8, 'name' => '北西'],
        ];
        // 都道府県・市区郡・町村の取得
        $data['pref'] = MstPrefecture::getData();
//        if (count($data['pref']) > 1) {
            $data['pref'] = array_merge([['name' => '未選択', 'code' => -1]], $data['pref']);
//        }
        $firstPrefCode = array_get(array_first($data['pref']), 'code');
        if ($user->company_id === 1) {
            $city = MstCity::getData($firstPrefCode, null, $user->company_id);
            /*$num = count($city);
            for ($i = 0; $i < ($num - 1); $i++) {
                for ($j = $i + 1; $j < $num; $j++) {
                    if (isset($city[4])) {
                        $l1 = $city[4];
                        $city[4] = $city[2];
                        $city[2] = $l1;
                    }
                }
            }

            $city2 = $city;
            $num = count($city2);
            for ($i = 0; $i < ($num - 1); $i++) {
                for ($j = $i + 1; $j < $num; $j++) {
                    if (isset($city2[4])) {
                        $l2 = $city2[4];
                        $city2[4] = $city2[3];
                        $city2[3] = $l2;
                    }
                    if (isset($city2[45])) {
                        $l3 = $city2[45];
                        $city2[45] = $city2[5];
                        $city2[5] = $l3;
                    }
                }
            }*/
            $data['city'] = $city;
        } else {
            $data['city'] = MstCity::getData($firstPrefCode, null, $user->company_id);
        }
        $data['town'] = [];

        // 学校区の取得
        $data['primary_school'] = MstSchool::getSchoolByType(1, $user->company_id);
        $data['secondary_school'] = MstSchool::getSchoolByType(2, $user->company_id);

        // 路線の取得
        $data['line'] = MstLine::getData();

        // 現況
        $data['land_status'] = MstGenkyou::getData();

        // 用途
        $data['use_area'] = MstUseArea::getData();

        // 店舗
        $data['shop'] = MstStore::getDataAll($user->company_id);

        // 構造
        $data['construction'] = MstStructure::getData();

        // 間取り
        $data['floor_plan'] = [
            ['code' => 1, 'name' => '1R - 1SLDK'],
            ['code' => 2, 'name' => '2k - 2SLDK'],
            ['code' => 3, 'name' => '3k - 3SLDK'],
            ['code' => 4, 'name' => '4k - 4SLDK'],
            ['code' => 5, 'name' => '5K〜'],
        ];

        $data['parking'] = MstParking::getDataByType(1);

        $data['walk'] = [
            ['code' => 1, 'name' => '徒歩'],
            ['code' => 2, 'name' => 'バス'],
        ];

        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        $data['shared'] = [
            ['code' => 1, 'name' => 'ゲストルーム'],
            ['code' => 2, 'name' => '24時間ゴミ出し可'],
            ['code' => 3, 'name' => 'プール'],
            ['code' => 4, 'name' => 'エレベーター'],
            ['code' => 5, 'name' => '宅配ボックス'],
            ['code' => 6, 'name' => 'キッズルーム・託児所'],
            ['code' => 7, 'name' => '共用露天風呂'],
            ['code' => 8, 'name' => 'オートロック'],
        ];

        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['ad_instructions'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '未'],
            ['code' => 2, 'name' => '入稿'],
        ];

        return $data;
    }

    public function getSearchPropertyLot()
    {
        $user = auth()->user();

        $data = [];
        $data['property'] = [
            ['code' => 1, 'name' => '土地'],
            ['code' => 2, 'name' => '戸建'],
            ['code' => 3, 'name' => 'マンション'],
        ];


        $data['pet'] = [
            ['code' => 2, 'name' => '可（制限あり）'],
            ['code' => 1, 'name' => '不可'],
        ];
        $data['pet_num'] = [
            ['code' => '', 'name' => '匹数'],
            ['code' => 1, 'name' => 1],
            ['code' => 2, 'name' => 2],
            ['code' => 3, 'name' => 3],
            ['code' => 4, 'name' => 4],
            ['code' => 5, 'name' => 5],
            //['code' => 6, 'name' => '無制限'],
        ];
        $data['balcony'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '北'],
            ['code' => 2, 'name' => '北東'],
            ['code' => 3, 'name' => '東'],
            ['code' => 4, 'name' => '南東'],
            ['code' => 5, 'name' => '南'],
            ['code' => 6, 'name' => '南西'],
            ['code' => 7, 'name' => '西'],
            ['code' => 8, 'name' => '北西'],
        ];
        // 都道府県・市区郡・町村の取得
        $data['pref'] = MstPrefecture::getData();
//        if (count($data['pref']) > 1) {
            $data['pref'] = array_merge([['name' => '未選択', 'code' => -1]], $data['pref']);
//        }
        $firstPrefCode = array_get(array_first($data['pref']), 'code');
        if ($user->company_id === 1) {
            $city = MstCity::getData($firstPrefCode, null, $user->company_id);
            /*$num = count($city);
            for ($i = 0; $i < ($num - 1); $i++) {
                for ($j = $i + 1; $j < $num; $j++) {
                    if (isset($city[4])) {
                        $l1 = $city[4];
                        $city[4] = $city[2];
                        $city[2] = $l1;
                    }
                }
            }

            $city2 = $city;
            $num = count($city2);
            for ($i = 0; $i < ($num - 1); $i++) {
                for ($j = $i + 1; $j < $num; $j++) {
                    if (isset($city2[4])) {
                        $l2 = $city2[4];
                        $city2[4] = $city2[3];
                        $city2[3] = $l2;
                    }
                    if (isset($city2[45])) {
                        $l3 = $city2[45];
                        $city2[45] = $city2[5];
                        $city2[5] = $l3;
                    }
                }
            }*/
            $data['city'] = $city;
        } else {
            $data['city'] = MstCity::getData($firstPrefCode, null, $user->company_id);
        }
        $data['town'] = [];

        // 学校区の取得
        $data['primary_school'] = MstSchool::getSchoolByType(1, $user->company_id);
        $data['secondary_school'] = MstSchool::getSchoolByType(2, $user->company_id);

        // 路線の取得
        $data['line'] = MstLine::getData();

        // 現況
        $data['land_status'] = MstGenkyou::getData();

        // 用途
        $data['use_area'] = MstUseArea::getData();

        // 店舗
        $data['shop'] = MstStore::getDataAll($user->company_id);

        // 構造
        $data['construction'] = MstStructure::getData();

        // 間取り
        $data['floor_plan'] = [
            ['code' => 1, 'name' => '1R - 1SLDK'],
            ['code' => 2, 'name' => '2k - 2SLDK'],
            ['code' => 3, 'name' => '3k - 3SLDK'],
            ['code' => 4, 'name' => '4k - 4SLDK'],
            ['code' => 5, 'name' => '5K〜'],
        ];

        $data['walk'] = [
            ['code' => 1, 'name' => '徒歩'],
            ['code' => 2, 'name' => 'バス'],
        ];

        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        return $data;
    }

    public static function getPropertyName($property, $property_sub)
    {
        $res = '';
        if ($property > 3) {
            $res .= MstPropertyTypeSub::find($property_sub)->name ?? '';
        }

        $res .= MstPropertyType::find($property)->name ?? '';

        return $res;
    }

    public static function createConditionList($con)
    {
        // dump($con);
        $user = Auth::user();
        $res = [];
        $property_name = "";
        $add = "";
        $pref = 0;
        $city = 0;
        $town = 0;
        $price = "";
        $years = "";
        $months = "";
        $construction = "";
        $floor_area = "";
        $land = "";
        $floor = "";
        $school = "";
        $parking = "";
        $land_status = "";
        $land_kind = "";
        $shop = "";
        $balcony_direction = "";
        $balcony_area = "";
        $pet = "";
        $pet_num = "";
        $use_area = "";
        $management_company = "";
        $sales_company = "";
        $construction_name = "";
        foreach ($con as $key => $val) {
            if ($key == 'property') {
                $property_name = "";
                foreach ($val as $row) {
                    $tmp = "";
                    $tmp_sub = "";
                    if ($row == 41) {
                        $property = 4;
                        $property_sub = 1;
                        $tmp_sub = MstPropertyTypeSub::find($property_sub)->name ?? '';
                    } elseif ($row == 42) {
                        $property = 4;
                        $property_sub = 2;
                        $tmp_sub = MstPropertyTypeSub::find($property_sub)->name ?? '';
                    } else {
                        $property = $row;
                    }
                    $tmp = MstPropertyType::find($property)->name ?? '';
                    $property_name .= $tmp_sub . $tmp;
                }

            }
            if ($key == 'address1') {
                foreach ($val as $row) {
                    $add .= MstPrefecture::where('code', '=', $row)->first()->name ?? '';
                    $pref .= $row;
                }

            }
            if ($key == 'address2') {
                foreach ($val as $row) {
                    $add .= MstCity::where('pref_code', '=', $pref)->where('code', '=', $val)->first()->name ?? '';
                    $city .= $row;
                }
            }
            if ($key == 'address3') {
                $add .= MstTown::where('pref_code', '=', $pref)->where('city_code', '=', $city)->where('code', '=', $val)->first()->name ?? '';
            }
            if ($key == 'address4') {
                foreach ($val as $row) {
                    $add .= $row;
                }
            }
            if ($key == 'building_id') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $res['物件ID'] = $row;
                    }
                }
            }
            if ($key == 'price_from') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $price .= $row . "万円";
                    }
                }
            }
            if ($key == 'price_to') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($price != "") {
                            $price .= "〜";
                        }
                        $price .= $row . "万円";
                    } else {
                        if ($price != "") {
                            $price .= "〜";
                        }
                    }
                }
            }
            if ($key == 'access1') {

            }
            if ($key == 'access2') {

            }
            if ($key == 'access3') {

            }
            if ($key == 'bus') {

            }
            if ($key == 'walk') {

            }
            if ($key == 'primary_school') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $school .= MstSchool::where('code', '=', $row)->first()->name ?? '';
                    }
                }
            }
            if ($key == 'secondary_school') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($school != "") {
                            $school .= " ";
                        }
                        $school .= MstSchool::where('code', '=', $row)->first()->name ?? '';
                    }
                }
            }

            if ($key == 'land_from') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $land .= $row . "㎡";
                    }
                }
            }
            if ($key == 'land_to') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($land != "") {
                            $land .= "〜";
                        }
                        $land .= $row . "㎡";
                    } else {
                        if ($land != "") {
                            $land .= "〜";
                        }
                    }
                }
            }
            if ($key == 'floor_area_from') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $floor_area .= $row . "㎡";
                    }
                }
            }
            if ($key == 'floor_area_to') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($floor_area != "") {
                            $floor_area .= "〜";
                        }
                        $floor_area .= $row . "㎡";
                    } else {
                        if ($floor_area != "") {
                            $floor_area .= "〜";
                        }
                    }
                }
            }
            if ($key == 'floor_plan') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        switch ($row) {
                            case 1:
                                $res['間取り'] = '1R - 1SLDK';
                                break;
                            case 2:
                                $res['間取り'] = '2K - 2SLDK';
                                break;
                            case 3:
                                $res['間取り'] = '3K - 3SLDK';
                                break;
                            case 4:
                                $res['間取り'] = '4K - 4SLDK';
                                break;
                            case 5:
                                $res['間取り'] = '5K〜';
                                break;

                        }
                    }
                }


            }
            if ($key == 'name') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $res['物件名'] = $row;
                    }
                }
            }
            if ($key == 'mansion_name') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $res['マンション名'] = $row;
                    }
                }
            }
            if ($key == 'years_from') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $years .= $row . "年";
                    }
                }
            }
            if ($key == 'years_to') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($years != "") {
                            $years .= "〜";
                        }
                        $years .= $row . "年";
                    } else {
                        if ($years != "") {
                            $years .= "〜";
                        }
                    }
                }
            }

            if ($key == 'year_month_from') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $months .= $row;
                    }
                }
            }
            if ($key == 'year_month_to') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($months != "") {
                            $months .= "〜";
                        }
                        $months .= $row;
                    } else {
                        if ($months != "") {
                            $months .= "〜";
                        }
                    }
                }
            }
            if ($key == 'construction') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $construction .= MstStructure::where('code', '=', $row)->first()->name ?? '';
                    }
                }
            }
            if ($key == 'parking') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $parking .= MstParking::where('code', '=', $row)->first()->name ?? '';
                    }
                }
            }
            if ($key == 'land_status') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $land_status .= MstGenkyou::where('code', '=', $row)->first()->name ?? '';
                    }
                }
            }
            if ($key == 'use_area') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $use_area .= MstUseArea::where('code', '=', $row)->first()->name ?? '';
                    }
                }
            }
            if ($key == 'floor_from') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $floor .= $row . "㎡";
                    }
                }
            }
            if ($key == 'floor_to') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        if ($floor != "") {
                            $floor .= "〜";
                        }
                        $floor .= $row . "㎡";
                    } else {
                        if ($floor != "") {
                            $floor .= "〜";
                        }
                    }
                }
            }
            if ($key == 'land_kind') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        switch ($row) {
                            case 1:
                                $land_kind = "北";
                                break;
                            case 2:
                                $land_kind = "北東";
                                break;
                            case 3:
                                $land_kind = "東";
                                break;
                            case 4:
                                $land_kind = "南東";
                                break;
                            case 5:
                                $land_kind = "南";
                                break;
                            case 6:
                                $land_kind = "南西";
                                break;
                            case 7:
                                $land_kind = "西";
                                break;
                            case 8:
                                $land_kind = "北西";
                                break;
                        }
                    }
                }
            }

            if ($key == 'search_shop') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $shop .= MstStore::where('company_id', '=', $user->company_id)->where('code', $row)->first()->name ?? '';
                    }
                }
            }
            if ($key == 'balcony_direction') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        switch ($row) {
                            case 1:
                                $balcony_direction = "北";
                                break;
                            case 2:
                                $balcony_direction = "北東";
                                break;
                            case 3:
                                $balcony_direction = "東";
                                break;
                            case 4:
                                $balcony_direction = "南東";
                                break;
                            case 5:
                                $balcony_direction = "南";
                                break;
                            case 6:
                                $balcony_direction = "南西";
                                break;
                            case 7:
                                $balcony_direction = "西";
                                break;
                            case 8:
                                $balcony_direction = "北西";
                                break;
                        }
                    }
                }
            }

            if ($key == 'balcony_area') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $balcony_area .= $row . "㎡";
                    }
                }
            }
            if ($key == 'is_pet') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        switch ($row) {
                            case 2:
                                $pet = "可（制限あり）";
                                break;
                            case 1:
                                $pet = "不可";
                                break;
                        }
                    }
                }
            }
            if ($key == 'pet_num') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $pet_num .= $row . "匹";
                    }
                }
            }

            if ($key == 'management_company') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $management_company .= $row;
                    }
                }
            }

            if ($key == 'sales_company') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $sales_company .= $row;
                    }
                }
            }

            if ($key == 'construction_name') {
                foreach ($val as $row) {
                    if (!empty($row)) {
                        $construction_name .= $row;
                    }
                }
            }
            if ($key == 'owner') {

            }
            if ($key == 'registed_from') {

            }
            if ($key == 'registed_to') {

            }
            if ($key == 'checked_from') {

            }
            if ($key == 'checked_to') {

            }
            if ($key == 'changed_price_from') {

            }
            if ($key == 'changed_price_to') {

            }
            if ($key == 'ad_checked_from') {

            }
            if ($key == 'ad_checked_to') {

            }
            if ($key == 'flyer') {

            }
            if ($key == 'vender_name') {

            }
            if ($key == 'vender_kind') {

            }
            if ($key == 'vender_tel') {

            }
        }

        if ($property_name != "") {
            $res['物件種別'] = $property_name;
        }

        if ($add != "") {
            $res['所在地'] = $add;
        }

        if ($price != "") {
            $res['価格'] = $price;
        }
        if ($years != "") {
            $res['築年数'] = $years;
        }
        if ($months != "") {
            $res['築年月'] = $months;
        }
        if ($construction != "") {
            $res['構造'] = $construction;
        }
        if ($parking != "") {
            $res['駐車場'] = $parking;
        }
        if ($land_status != "") {
            $res['現況'] = $land_status;
        }
        if ($use_area != "") {
            $res['用途地域'] = $use_area;
        }
        if ($land_kind != "") {
            $res['接道方向'] = $land_kind;
        }
        if ($shop != "") {
            $res['取扱店舗'] = $shop;
        }
        if ($balcony_direction != "") {
            $res['バルコニー'] = $balcony_direction . " " . $balcony_area;
        }

        if ($pet != "") {
            $res['ペット'] = $pet . " " . $pet_num;
        }
        if ($sales_company != "") {
            $res['分譲会社'] = $sales_company;
        }
        if ($construction_name != "") {
            $res['施工会社'] = $construction_name;
        }

        if ($school != "") {
            $res['学校区'] = $school;
        }

        if ($land != "") {
            $res['土地面積'] = $land;
        }

        if ($floor_area != "") {
            $res['延床面積'] = $floor_area;
        }

        if ($floor != "") {
            $res['階建'] = $floor;
        }

//        dd($res);

        return $res;
    }

    public static function createConditionSearch($con)
    {
        $user = Auth::user();
        $res = [];
//dd($con);
        foreach ($con as $key => $val) {
            if ($key == 'property') {
                foreach ($val as $k => $row) {
                    $property_name = "";
                    $tmp_sub = "";
                    if ($row == 41) {
                        $property = 4;
                        $property_sub = 1;
                        $tmp_sub = MstPropertyTypeSub::find($property_sub)->name ?? '';
                    } elseif ($row == 42) {
                        $property = 4;
                        $property_sub = 2;
                        $tmp_sub = MstPropertyTypeSub::find($property_sub)->name ?? '';
                    } elseif ($row == 61) {
                        $property = 6;
                    } else {
                        $property = $row;
                    }
                    $tmp = MstPropertyType::find($property)->name ?? '';
                    $property_name .= $tmp_sub . $tmp;
                    if ($property_name != "") {
                        $res['物件種別'][$k] = $property_name;
                    }
                }


            }

            if ($key == 'address1') {
                foreach ($val as $k => $row) {
                    $add = "";
                    $pref = 0;
                    $city = 0;

                    $add .= MstPrefecture::where('code', '=', $row)->first()->name ?? '';
                    $pref .= $row;

                    if (isset($con['address2'][$k])) {
                        $add .= MstCity::where('pref_code', '=', $pref)->where('code', '=', $con['address2'][$k])->first()->name ?? '';
                        $city .= $con['address2'][$k];
                    }
                    if (isset($con['address3'][$k])) {
                        $add .= MstTown::where('pref_code', '=', $pref)->where('city_code', '=', $city)->where('code', '=', $con['address3'][$k])->first()->name ?? '';
                        $city .= $con['address3'][$k];
                    }

                    if (isset($con['address4'][$k])) {
                        $add .= $con['address4'][$k];
                    }

                    if ($add != "") {
                        $res['所在地'][$k] = $add;
                    }
                }

            }

            if ($key == 'building_id') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['物件ID'][$k] = $row;
                    }
                }
            }

            if ($key == 'price_from') {
                foreach ($val as $k => $row) {
                    $price = "";

                    if (!empty($row)) {
                        $price .= $row . "万円";
                    }

                    if (isset($con['price_to'][$k])) {
                        if (!empty($con['price_to'][$k])) {
                            if ($price != "") {
                                $price .= "〜";
                            }
                            $price .= $con['price_to'][$k] . "万円";
                        } else {
                            if ($price != "") {
                                $price .= "〜";
                            }
                        }
                    }

                    if ($price != "") {
                        $res['価格'][$k] = $price;
                    }
                }
            }

            if ($key == 'access1') {
                foreach ($val as $k => $row) {
                    $access = "";
                    $line_id = 0;
                    $access .= MstLine::where('id', '=', $row)->first()->name ?? '';
                    $line_id = $row;

                    if (isset($con['access2'][$k])) {
                        $access .= MstStation::where('line_id', '=', $line_id)->where('id', '=', $con['access2'][$k])->first()->name ?? '';
                    }

                    if (isset($con['access3'][$k])) {
                        if ($con['access3'][$k] == 1) {
                            $access .= '徒歩';
                        }
                        if ($con['access3'][$k] == 2) {
                            $access .= 'バス';
                        }
                    }

                    if ($access != "") {
                        $res['交通'][$k] = $access;
                    }
                }
            }

            if ($key == 'bus') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['バス'][$k] = $row;
                    }
                }
            }

            if ($key == 'walk') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['徒歩'][$k] = $row;
                    }
                }
            }

            if ($key == 'primary_school') {
                foreach ($val as $k => $row) {
                    $school = "";

                    if (!empty($row)) {
                        $school .= MstSchool::where('code', '=', $row)->first()->name ?? '';
                    }
                    if (isset($con['primary_school_time'][$k])) {
                        if (!empty($con['primary_school_time'][$k])) {
                            $school .= " 徒歩 ";
                            $school .= $con['primary_school_time'][$k] . ' 分以内';
                        }
                    }

                    if (isset($con['secondary_school'][$k])) {
                        if (!empty($con['secondary_school'][$k])) {
                            if ($school != "") {
                                $school .= " ";
                            }
                            $school .= MstSchool::where('code', '=', $con['secondary_school'][$k])->first()->name ?? '';
                        }
                    }

                    if (isset($con['secondary_school_time'][$k])) {
                        if (!empty($con['secondary_school_time'][$k])) {
                            $school .= " 徒歩 ";
                            $school .= $con['secondary_school_time'][$k] . ' 分以内';
                        }
                    }

                    if ($school != "") {
                        $res['学校区'][$k] = $school;
                    }
                }
            }

            if ($key == 'land_from') {
                foreach ($val as $k => $row) {
                    $land = "";

                    if (!empty($row)) {
                        $land .= $row . "㎡";
                    }

                    if (isset($con['land_to'][$k])) {
                        if (!empty($con['land_to'][$k])) {
                            if ($land != "") {
                                $land .= "〜";
                            }
                            $land .= $con['land_to'][$k] . "㎡";
                        } else {
                            if ($land != "") {
                                $land .= "〜";
                            }
                        }
                    }

                    if ($land != "") {
                        $res['土地面積'][$k] = $land;
                    }
                }
            }

            if ($key == 'floor_area_from') {
                foreach ($val as $k => $row) {
                    $floor_area = "";

                    if (!empty($row)) {
                        $floor_area .= $row . "㎡";
                    }

                    if (isset($con['floor_area_to'][$k])) {
                        if (!empty($con['floor_area_to'][$k])) {
                            if ($floor_area != "") {
                                $floor_area .= "〜";
                            }
                            $floor_area .= $con['floor_area_to'][$k] . "㎡";
                        } else {
                            if ($floor_area != "") {
                                $floor_area .= "〜";
                            }
                        }
                    }

                    if ($floor_area != "") {
                        $res['延床面積'][$k] = $floor_area;
                    }
                }
            }

            if ($key == 'floor_plan') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        switch ($row) {
                            case 1:
                                $res['間取り'][$k] = '1R - 1SLDK';
                                break;
                            case 2:
                                $res['間取り'][$k] = '2K - 2SLDK';
                                break;
                            case 3:
                                $res['間取り'][$k] = '3K - 3SLDK';
                                break;
                            case 4:
                                $res['間取り'][$k] = '4K - 4SLDK';
                                break;
                            case 5:
                                $res['間取り'][$k] = '5K〜';
                                break;

                        }
                    }
                }


            }

            if ($key == 'floor_plan_from') {
                foreach ($val as $k => $row) {
                    $floor_plan = "";

                    if (!empty($row)) {
                        $floor_plan .= $row . "R・SLDK";
                    }

                    if (isset($con['floor_plan_to'][$k])) {
                        if (!empty($con['floor_plan_to'][$k])) {
                            if ($floor_plan != "") {
                                $floor_plan .= "〜";
                            }
                            $floor_plan .= $con['floor_plan_to'][$k] . "R・SLDK";
                        } else {
                            if ($floor_plan != "") {
                                $floor_plan .= "〜";
                            }
                        }
                    }

                    if ($floor_plan != "") {
                        $res['間取り'][$k] = $floor_plan;
                    }
                }
            }

            if ($key == 'whereabouts_from') {
                foreach ($val as $k => $row) {
                    $whereabouts = "";

                    if (!empty($row)) {
                        $whereabouts .= $row . "階";
                    }

                    if (isset($con['whereabouts_to'][$k])) {
                        if (!empty($con['whereabouts_to'][$k])) {
                            if ($whereabouts != "") {
                                $whereabouts .= "〜";
                            }
                            $whereabouts .= $con['whereabouts_to'][$k] . "階";
                        } else {
                            if ($whereabouts != "") {
                                $whereabouts .= "〜";
                            }
                        }
                    }

                    if ($whereabouts != "") {
                        $res['マンション所在階'][$k] = $whereabouts;
                    }
                }
            }

            if ($key == 'name') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['物件名'][$k] = $row;
                    }
                }
            }

            if ($key == 'mansion_name') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['マンション名'][$k] = $row;
                    }
                }
            }

            if ($key == 'years_from') {
                foreach ($val as $k => $row) {
                    $years = "";

                    if (!empty($row)) {
                        $years .= $row . "年";
                    }

                    if (isset($con['years_to'][$k])) {
                        if (!empty($con['years_to'][$k])) {
                            if ($years != "") {
                                $years .= "〜";
                            }
                            $years .= $con['years_to'][$k] . "年";
                        } else {
                            if ($years != "") {
                                $years .= "〜";
                            }
                        }
                    }

                    if ($years != "") {
                        $res['築年数'][$k] = $years;
                    }
                }
            }

            if ($key == 'year_month_from') {
                foreach ($val as $k => $row) {
                    $months = "";

                    if (!empty($row)) {
                        $months .= $row;
                    }

                    if (isset($con['year_month_to'][$k])) {
                        if (!empty($con['year_month_to'][$k])) {
                            if ($months != "") {
                                $months .= "〜";
                            }
                            $months .= $con['year_month_to'][$k];
                        } else {
                            if ($months != "") {
                                $months .= "〜";
                            }
                        }
                    }

                    if ($months != "") {
                        $res['築年月'][$k] = $months;
                    }
                }
            }

            if ($key == 'construction') {
                foreach ($val as $k => $row) {
                    $construction = "";

                    if (!empty($row)) {
                        $construction .= MstStructure::where('code', '=', $row)->first()->name ?? '';
                    }

                    if ($construction != "") {
                        $res['構造'][$k] = $construction;
                    }
                }
            }

            if ($key == 'parking') {
                foreach ($val as $k => $row) {
                    $parking = "";

                    if (!empty($row)) {
                        $parking .= MstParking::where('code', '=', $row)->first()->name ?? '';
                    }

                    if ($parking != "") {
                        $res['駐車場'][$k] = $parking;
                    }
                }
            }

            if ($key == 'current_status') {
                foreach ($val as $k => $row) {
                    $current_status = "";

                    if (!empty($row)) {
                        $current_status .= MstGenkyou::where('code', '=', $row)->first()->name ?? '';
                    }

                    if ($current_status != "") {
                        $res['現況'][$k] = $current_status;
                    }
                }
            }

            if ($key == 'use_area') {
                foreach ($val as $k => $row) {
                    $use_area = "";

                    if (!empty($row)) {
                        $use_area .= MstUseArea::where('code', '=', $row)->first()->name ?? '';
                    }

                    if ($use_area != "") {
                        $res['用途地域'][$k] = $use_area;
                    }
                }
            }

            if ($key == 'floor_from') {
                foreach ($val as $k => $row) {
                    $floor = "";

                    if (!empty($row)) {
                        $floor .= $row . "階建";
                    }

                    if (isset($con['floor_to'][$k])) {
                        if (!empty($con['floor_to'][$k])) {
                            if ($floor != "") {
                                $floor .= "〜";
                            }
                            $floor .= $con['floor_to'][$k] . "階建";
                        } else {
                            if ($floor != "") {
                                $floor .= "〜";
                            }
                        }
                    }

                    if ($floor != "") {
                        $res['階建'][$k] = $floor;
                    }

                }
            }

            if ($key == 'land_kind') {
                foreach ($val as $k => $row) {
                    $land_kind = "";

                    if (!empty($row)) {
                        switch ($row) {
                            case 1:
                                $land_kind = "北";
                                break;
                            case 2:
                                $land_kind = "北東";
                                break;
                            case 3:
                                $land_kind = "東";
                                break;
                            case 4:
                                $land_kind = "南東";
                                break;
                            case 5:
                                $land_kind = "南";
                                break;
                            case 6:
                                $land_kind = "南西";
                                break;
                            case 7:
                                $land_kind = "西";
                                break;
                            case 8:
                                $land_kind = "北西";
                                break;
                        }
                    }

                    if ($land_kind != "") {
                        $res['接道方向'][$k] = $land_kind;
                    }
                }
            }

            if ($key == 'search_shop') {
                foreach ($val as $k => $row) {
                    $shop = "";

                    if (!empty($row)) {
                        $shop .= MstStore::where('company_id', '=', $user->company_id)->where('code', $row)->first()->name ?? '';
                    }
                    if ($shop != "") {
                        $res['取扱店舗'][$k] = $shop;
                    }
                }
            }

            if ($key == 'balcony_direction') {
                foreach ($val as $k => $row) {
                    $balcony_direction = "";
                    $balcony_area = "";

                    if (!empty($row)) {
                        switch ($row) {
                            case 1:
                                $balcony_direction = "北";
                                break;
                            case 2:
                                $balcony_direction = "北東";
                                break;
                            case 3:
                                $balcony_direction = "東";
                                break;
                            case 4:
                                $balcony_direction = "南東";
                                break;
                            case 5:
                                $balcony_direction = "南";
                                break;
                            case 6:
                                $balcony_direction = "南西";
                                break;
                            case 7:
                                $balcony_direction = "西";
                                break;
                            case 8:
                                $balcony_direction = "北西";
                                break;
                        }
                    }

                    if (isset($con['balcony_area'][$k])) {
                        if (!empty($con['balcony_area'][$k])) {
                            $balcony_area .= $con['balcony_area'][$k] . "㎡";
                        }
                    }
                    if ($balcony_direction != "") {
                        $res['バルコニー'][$k] = $balcony_direction . " " . $balcony_area;
                    }
                }
            }

            if ($key == 'is_pet') {
                foreach ($val as $k => $row) {
                    $pet = "";
                    $pet_num = "";

                    if (!empty($row)) {
                        switch ($row) {
                            case 2:
                                $pet = "可（制限あり）";
                                break;
                            case 1:
                                $pet = "不可";
                                break;
                        }
                    }

                    if (isset($con['pet_num'][$k])) {
                        foreach ($val as $row) {
                            if (!empty($con['pet_num'][$k])) {
                                $pet_num .= $con['pet_num'][$k] . "匹";
                            }
                        }
                    }

                    if ($pet != "") {
                        $res['ペット'][$k] = $pet . " " . $pet_num;
                    }
                }
            }

            if ($key == 'management_company') {
                foreach ($val as $k => $row) {
                    $management_company = "";

                    if (!empty($row)) {
                        $management_company .= $row;
                    }
                }
            }

            if ($key == 'sales_company') {
                foreach ($val as $k => $row) {
                    $sales_company = "";

                    if (!empty($row)) {
                        $sales_company .= $row;
                    }

                    if ($sales_company != "") {
                        $res['分譲会社'][$k] = $sales_company;
                    }
                }
            }

            if ($key == 'construction_name') {
                foreach ($val as $k => $row) {
                    $construction_name = "";

                    if (!empty($row)) {
                        $construction_name .= $row;
                    }

                    if ($construction_name != "") {
                        $res['施工会社'][$k] = $construction_name;
                    }
                }
            }

            if ($key == 'owner') {

            }

            if ($key == 'registed_from') {
                foreach ($val as $k => $row) {
                    $registed = "";

                    if (!empty($row)) {
                        $registed .= $row;
                    }

                    if (isset($con['registed_to'][$k])) {
                        if (!empty($con['registed_to'][$k])) {
                            if ($registed != "") {
                                $registed .= "〜";
                            }
                            $registed .= $con['registed_to'][$k];
                        } else {
                            if ($registed != "") {
                                $registed .= "〜";
                            }
                        }
                    }

                    if ($registed != "") {
                        $res['物件登録日'][$k] = $registed;
                    }
                }
            }

            if ($key == 'checked_from') {
                foreach ($val as $k => $row) {
                    $checked = "";

                    if (!empty($row)) {
                        $checked .= $row;
                    }

                    if (isset($con['checked_to'][$k])) {
                        if (!empty($con['checked_to'][$k])) {
                            if ($checked != "") {
                                $checked .= "〜";
                            }
                            $checked .= $con['checked_to'][$k];
                        } else {
                            if ($checked != "") {
                                $checked .= "〜";
                            }
                        }
                    }

                    if ($checked != "") {
                        $res['物件確認日'][$k] = $checked;
                    }
                }
            }


            if ($key == 'changed_price_from') {
                foreach ($val as $k => $row) {
                    $changed_price = "";

                    if (!empty($row)) {
                        $changed_price .= $row;
                    }

                    if (isset($con['changed_price_to'][$k])) {
                        if (!empty($con['changed_price_to'][$k])) {
                            if ($changed_price != "") {
                                $changed_price .= "〜";
                            }
                            $changed_price .= $con['changed_price_to'][$k];
                        } else {
                            if ($changed_price != "") {
                                $changed_price .= "〜";
                            }
                        }
                    }

                    if ($changed_price != "") {
                        if(isset($con['is_close'])){
                            $res['	成約日'][$k] = $changed_price;
                        }else{
                            $res['価格変更日'][$k] = $changed_price;
                        }
                    }
                }
            }

            if ($key == 'ad_checked_from') {
                foreach ($val as $k => $row) {
                    $ad_checked = "";

                    if (!empty($row)) {
                        $ad_checked .= $row;
                    }

                    if (isset($con['ad_checked_to'][$k])) {
                        if (!empty($con['ad_checked_to'][$k])) {
                            if ($ad_checked != "") {
                                $ad_checked .= "〜";
                            }
                            $ad_checked .= $con['ad_checked_to'][$k];
                        } else {
                            if ($ad_checked != "") {
                                $ad_checked .= "〜";
                            }
                        }
                    }

                    if ($ad_checked != "") {
                        $res['広告確認日'][$k] = $ad_checked;
                    }
                }
            }

            if ($key == 'flyer') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['チラシ'][$k] = Config::get('const.TARGET')[$row];
                    }
                }
            }

            if ($key == 'freepaper') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['情報誌'][$k] = Config::get('const.TARGET')[$row];
                    }
                }
            }

            if ($key == 'house_hp') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['広告確認日-自社HP'][$k] = Config::get('const.TARGET')[$row];
                    }
                }
            }

            if ($key == 'portal') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['ポータル'][$k] = Config::get('const.TARGET')[$row];
                    }
                }
            }

            if ($key == 'signboard') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['現地看板'][$k] = Config::get('const.TARGET')[$row];
                    }
                }
            }

            if ($key == 'own_company') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['広告掲載指示-自社HP'][$k] = Config::get('const.PORT')[$row];
                    }
                }
            }

            if ($key == 'suumo') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['SUUMO'][$k] = Config::get('const.PORT_SUUMO')[$row];
                    }
                }
            }

            if ($key == 'homes') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['HOMES'][$k] = Config::get('const.PORT_HOMES')[$row];
                    }
                }
            }

            if ($key == 'athome') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['athome'][$k] = Config::get('const.PORT_ATHOME')[$row];
                    }
                }
            }

            if ($key == 'revenue') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['収益'][$k] = '有';
                    }
                }
            }

            if ($key == 'is_agreement') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['契約済'][$k] = '有';
                    }
                }
            }

            if ($key == 'total_unit_from') {
                foreach ($val as $k => $row) {
                    $total_unit = "";

                    if (!empty($row)) {
                        $total_unit .= $row . "戸";
                    }

                    if (isset($con['total_unit_to'][$k])) {
                        if (!empty($con['total_unit_to'][$k])) {
                            if ($total_unit != "") {
                                $total_unit .= "〜";
                            }
                            $total_unit .= $con['total_unit_to'][$k] . "戸";
                        } else {
                            if ($total_unit != "") {
                                $total_unit .= "〜";
                            }
                        }
                    }

                    if ($total_unit != "") {
                        $res['階建'][$k] = $total_unit;
                    }

                }
            }

            if ($key == 'shared') {
                $shared_arr = array_chunk($val, 8, true);
                foreach ($shared_arr as $key => $value) {
                    $shared = "";
                    $check_shared = true;
                    foreach ($value as $k => $v) {
                        if (!empty($v)) {
                            if ($check_shared == true) {
                                $shared .= Config::get('const.SHARED')[$v];
                                $check_shared = false;
                            } else {
                                $shared .= ', ' . Config::get('const.SHARED')[$v];
                            }
                        }
                    }
                    if (!empty($shared)) {
                        $res['共用部'][$key] = $shared;
                    }
                }
            }

            if ($key === 'land_condition') {
                $land_condition_arr = array_chunk($val, 2, true);
                foreach ($land_condition_arr as $k => $value) {
                    $land_condition = "";
                    $check_land_condition = true;
                    foreach ($value as $v) {
                        if ($v !== null) {
                            if ($check_land_condition == true) {
                                $land_condition .= Config::get('const.LAND_CONDITION')[$v];
                                $check_land_condition = false;
                            } else {
                                $land_condition .= ', ' . Config::get('const.LAND_CONDITION')[$v];
                            }
                        }
                    }
                    if (!empty($land_condition)) {
                        $res['建築条件'][$k] = $land_condition;
                    }
                }
            }

            if ($key == 'remove_condition') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['条件外し'][$k] = '条件外し可';
                    }
                }
            }

            if ($key == 'vender_name' || $key == 'vender_kind' || $key == 'vender_tel') {
                foreach ($val as $k => $row) {
                    $vender = "";

                    if (isset($con['vender_name'][$k])) {
                        if (!empty($con['vender_name'][$k])) {
                            $vender .= $con['vender_name'][$k];
                        }
                    }

                    if (isset($con['vender_kind'][$k])) {
                        if (!empty($con['vender_kind'][$k])) {
                            $vender .= ' ' . MstManner::getData($con['vender_kind'][$k])[0]['name'] ?? "";
                        }
                    }

                    if (isset($con['vender_tel'][$k])) {
                        if (!empty($con['vender_tel'][$k])) {
                            $vender .= ' ' . $con['vender_tel'][$k];
                        }
                    }

                    if ($vender != "") {
                        $res['業者'][$k] = $vender;
                    }
                }
            }

            if ($key === 'name_apartment') {
                foreach ($val as $k => $row) {
                    if (!empty($row)) {
                        $res['マンション名'][$k] = $row;
                    }
                }
            }

            if ($key === 'section_from' || $key === 'section_to') {
                foreach ($val as $k => $row) {
                    $section = "";

                    if (isset($con['section_from'][$k])) {
                        if (!empty($con['section_from'][$k])) {
                            $section .= $con['section_from'][$k] . '区画';
                        }
                    }

                    if (isset($con['section_to'][$k])) {
                        if (!empty($con['section_to'][$k])) {
                            if ($section != "") {
                                $section .= "〜";
                            }
                            $section .= $con['section_to'][$k] . "区画";
                        }
                    }
                    if ($section != "") {
                        $res['総区画数'][$k] = $section;
                    }
                }
            }
        }


        $res['count_search'] = isset($res['所在地']) ? count($res['所在地']) : 1;
        return $res;
    }

    public function searchArticle(Request $request, $storeId, $type)
    {
        $data = [];
        $user = Auth::user();
        $count = 0;
        $floor_type_list = MstFloorType::getData();
        $floor_type = [];
        foreach ($floor_type_list as $row) {
            $floor_type[$row['code']] = $row['name'];
        }
        $forgetItem = 0;
        if ($type == 'posted') {
            $data['actived'] = '自社HP掲載期限切';
            $article_list = Article::getArticles($storeId, 2, 2, "", 10, $request, 2);
        }
        if ($type == 'posted-null') {
            $data['actived'] = '自社HP必須未入力';
            $article_list = Article::getArticles($storeId, 2, "", 1, 10, $request, 2);
        }
        if ($type == 'nopost') {
            $data['actived'] = '物件シート 必須未入力';
            $article_list = Article::getArticles($storeId, "", "", 1, 10, $request, 2);
        }
        if ($type == 'mansion') {
            $data['actived'] = 'マンション 物件必須未入力';
            $article_list = Article::getArticles($storeId, "", "", 1, 10, $request, 2, 1);
        }

        foreach ($article_list as $key => &$row) {
            // NEW判定
            if ($row->created_at > date("Y-m-d", strtotime("-" . config('const.NEW') . " day"))) {
                $row->new = true;
            } else {
                $row->new = false;
            }

            $address = "";
            if (isset($row->address1)) {
                $add = MstPrefecture::getData($row->address1);
                $address .= $add[0]["name"] ?? "";
            }
            if (isset($row->address2)) {
                $add = MstCity::getData($row->address1, $row->address2);
                $address .= $add[0]["name"] ?? "";
            }
            if (isset($row->address3)) {
                $add = MstTown::getData($row->address1, $row->address2, $row->address3);
                if (count($add) > 0) {
                    $address .= $add[0]["name"] ?? "";
                }
            }
            if (isset($row->address4)) {
                $address .= $row->address4;
            }
            $row->address = $address;
            if (isset($row->floor_plan_type) && isset($floor_type[$row->floor_plan_type])) {
                $row['floor_plan_text'] = $row->floor_plan . $floor_type[$row->floor_plan_type];

            }
            if (isset($row->current_status)) {
                $status = MstGenkyou::getDataByCode($row->current_status);
                $row->current_status = $status->name ?? '';
            }
            if (isset($row->age_month)) {
                $row->age = intval(date('Y')) - intval($row->age_year);
            }

            if (isset($row->primary_school_school)) {
                $primary = MstSchool::getSchoolByCode($row->primary_school_school);
                if (isset($primary->name)) {
                    $row->primary_school_name = str_replace('学校', '', $primary->name);
                }
            }
            if (isset($row->secondary_school_school)) {
                $secondary = MstSchool::getSchoolByCode($row->secondary_school_school);
                if (isset($secondary->name)) {
                    $row->secondary_school_name = str_replace('学校', '', $secondary->name);
                }
            }

            // 間取り画像取得
            if (isset($row->floor_file_path) && !empty($row->floor_file_path)) {
                $row->floor_file_path = str_replace('public', '/storage', $row->floor_file_path);
            } else {
                $row->floor_file_path = '';
            }

            // 写真
            $top_image = RelationArticlePhoto::getTopImagePath($row->building_id);
            if (isset($top_image->file_path)) {
                $row->top_file_path = str_replace('public', '/storage', $top_image->file_path);
            } else {
                $row->top_file_path = '';
            }

            // 写真の枚数
            $count = RelationArticlePhoto::getCountImgByArticleId($row->building_id);
            $row->file_count = $count;
            if (!empty($row->mansion_id)) {
                $row->mansion_file_count = RelationArticlePhoto::getCountImgByArticleId($row->mansion_id, null);
                $row->file_count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, 2);
            } elseif ($row->property == 4 || $row->property == 5) {
                $row->mansion_file_count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, 1);
                $row->file_count = RelationArticlePhoto::getCountImgByArticleId($row->building_id, 2);
            }

            // 価格履歴の取得
            $history = RelationPriceHistory::getHistoryById($row->building_id);
            $row->history = $history;

            // 物件種別名、業者取得
            if (is_null($row->property)) {
                // マンションの場合
                $mansion = Article::getDataById($row->mansion_id);
                if (isset($mansion)) {
                    $row->property_name = $this->getPropertyName($mansion->property, $mansion->property_sub);
                    $vendor_info = Vendor::getDataListByArticleId($row->building_id);

                    // 学校
                    if (isset($mansion->primary_school_school)) {
                        $primary = MstSchool::getSchoolByCode($mansion->primary_school_school);
                        if (isset($primary->name)) {
                            $row->primary_school_name = str_replace('学校', '', $primary->name);
                        }
                    }
                    if (isset($mansion->secondary_school_school)) {
                        $secondary = MstSchool::getSchoolByCode($mansion->secondary_school_school);
                        if (isset($secondary->name)) {
                            $row->secondary_school_name = str_replace('学校', '', $secondary->name);
                        }
                    }

                    // 築年月
                    $row->age_year = $mansion->age_year;
                    $row->age_month = $mansion->age_month;
                    $row->age = intval(date('Y')) - intval($mansion->age_year);
                } else {
                    $article_list->forget($key);
                    $forgetItem++;
                    continue;
                }
            } else {
                // それ以外
                $row->property_name = $this->getPropertyName($row->property, $row->property_sub);

                $vendor_info = Vendor::getDataListByArticleId($row->building_id);
            }

            $row['vendor_info'] = $vendor_info ?? null;
        }

        // 表示中のページの最初のアイテムのインデックス番号
        $first = $article_list->firstItem();

        // 表示中のページの最後のアイテムのインデックス番号
        $last = $article_list->lastItem();
        // 取引様態
        $manner = MstManner::getData();
        array_unshift($manner, ['code' => '', 'name' => '']);

        $data['manner'] = $manner;

        // ステータス
        $data['statuses'] = MstStatus::getData();

        $data['ad_conf'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => 'TEL'],
            ['code' => 2, 'name' => 'FAX'],
        ];

        $data['ad_instructions'] = [
            ['code' => '', 'name' => ''],
            ['code' => 1, 'name' => '未'],
            ['code' => 2, 'name' => '入稿済'],
        ];


        $count = count($article_list);
        $data['article_list'] = $article_list;
        $data['condition'] = [];
        $data['count'] = $count;
        $data['first'] = $first;
        $data['last'] = $last;
        $data['params'] = [];
        $data['isDel'] = 1;
        $data['forgetItem'] = $forgetItem;
        $data['searchArt'] = true;
        $data['store_id'] = $storeId;
        return response()->view('admin.pages.for-sale-list', $data);
    }
    public function getCountTypeImage($property, $data)
    {
        $uchi = 0;  // trong
        $soto = 0; // ngoai
        if(in_array($property, [1,2,3])) {

        } elseif(in_array($property, [4,5])) {
            $ar_uchi = [7,8,9,10,11,12,13,14,15,16,18,19,21];
            $ar_soto = [4,5,6,17,20];
            foreach ($data as $item){
                if(in_array($item->property_sub, $ar_uchi)){
                    $uchi++;
                }
                if(in_array($item->property_sub, $ar_soto)){
                    $soto++;
                }
            }
        } else {

        }
        return array($uchi, $soto);
    }
}
