|
@@ -15,7 +15,12 @@
|
|
|
<van-icon class="arrow-down" name="arrow-down" />
|
|
|
</div>
|
|
|
</div>
|
|
|
- <van-search class="search-box" placeholder="请输入搜索关键词" />
|
|
|
+ <van-search
|
|
|
+ class="search-box"
|
|
|
+ v-model="searchSpaceName"
|
|
|
+ @update:model-value="searchSpace"
|
|
|
+ placeholder="请输入搜索关键词"
|
|
|
+ />
|
|
|
<div class="search-icon">
|
|
|
<img :src="parseImgUrl('search-icon', 'search-icon.svg')" alt="" />
|
|
|
</div>
|
|
@@ -69,7 +74,7 @@
|
|
|
<script lang="ts">
|
|
|
import { defineComponent, nextTick, onMounted, reactive, toRefs } from "vue";
|
|
|
import { useRoute, useRouter, onBeforeRouteUpdate } from "vue-router";
|
|
|
-import { Search, TreeSelect, Popup, Checkbox } from "vant";
|
|
|
+import { Search, TreeSelect, Popup, Checkbox, Toast } from "vant";
|
|
|
import { parseImgUrl, setQueryConfig } from "@/utils";
|
|
|
import { store } from "@/store";
|
|
|
import { UserMutationTypes } from "@/store/modules/user/mutation-types";
|
|
@@ -78,7 +83,9 @@ import {
|
|
|
getDefaultLocation,
|
|
|
getFloorList,
|
|
|
getPadSpaceList,
|
|
|
+ saveWorkSpace,
|
|
|
} from "@/apis/envmonitor";
|
|
|
+import { clear } from "console";
|
|
|
|
|
|
export default defineComponent({
|
|
|
components: {
|
|
@@ -136,6 +143,7 @@ export default defineComponent({
|
|
|
const proxyData = reactive({
|
|
|
parseImgUrl: parseImgUrl,
|
|
|
spaceType: spaceType,
|
|
|
+ searchSpaceName: "",
|
|
|
checked: false,
|
|
|
positionArr: positionArr,
|
|
|
checkPositon: checkPositon,
|
|
@@ -159,6 +167,8 @@ export default defineComponent({
|
|
|
checkSpaceType(item: any) {
|
|
|
proxyData.spaceType = item;
|
|
|
proxyData.showSpaceType = false;
|
|
|
+ // 获取空间列表
|
|
|
+ proxyData.searchSpace();
|
|
|
},
|
|
|
// 设置建筑id
|
|
|
setProjectId() {
|
|
@@ -266,10 +276,36 @@ export default defineComponent({
|
|
|
},
|
|
|
// 设置主空间
|
|
|
goNext() {
|
|
|
- let data:any= proxyData.spaceData.filter((item:any)=>{
|
|
|
- return item.checked
|
|
|
- })
|
|
|
- router.push({ name: "setMainSpace" });
|
|
|
+ let data: any = proxyData.spaceData.filter((item: any) => {
|
|
|
+ return item.checked;
|
|
|
+ });
|
|
|
+ let idArr: any = [];
|
|
|
+ data.map((item: any) => {
|
|
|
+ idArr.push(item.spaceId);
|
|
|
+ });
|
|
|
+ if (idArr.length) {
|
|
|
+ let params: any = {
|
|
|
+ workSpaceList: idArr,
|
|
|
+ majorSpaceId: idArr[0], //类型:String 必有字段 备注:主空间
|
|
|
+ macAddress: "test", //类型:String 必有字段 备注:平板地址
|
|
|
+ };
|
|
|
+ proxyData.saveWorkSpace(params);
|
|
|
+ } else {
|
|
|
+ Toast("请选择办公空间!");
|
|
|
+ }
|
|
|
+ },
|
|
|
+ // 保存空间
|
|
|
+ saveWorkSpace(params: any) {
|
|
|
+ saveWorkSpace(params).then((res) => {
|
|
|
+ if (params.workSpaceList.length > 1) {
|
|
|
+ router.push({ name: "setMainSpace" });
|
|
|
+ } else {
|
|
|
+ router.push({
|
|
|
+ name: "envmonitor",
|
|
|
+ query: { spaceId: params.workSpaceList[0] },
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
},
|
|
|
// 选择建筑
|
|
|
checkBuilding(index: any) {
|
|
@@ -285,30 +321,53 @@ export default defineComponent({
|
|
|
proxyData.buildingItem.buildingName;
|
|
|
proxyData.checkPositon.floorId = item.id;
|
|
|
proxyData.checkPositon.floorName = item.localName;
|
|
|
+ proxyData.show = false;
|
|
|
+ proxyData.clearSearchName();
|
|
|
+ proxyData.getPadSpaceList();
|
|
|
+ },
|
|
|
+ // 清除搜索条件
|
|
|
+ clearSearchName() {
|
|
|
+ proxyData.searchSpaceName = "";
|
|
|
+ proxyData.spaceType = spaceType;
|
|
|
},
|
|
|
spaceData: spaceData,
|
|
|
// 空间列表
|
|
|
- getPadSpaceList() {
|
|
|
- let params: any = {
|
|
|
- floorId: proxyData.checkPositon.floorId,
|
|
|
- buildingId: proxyData.checkPositon.buildingId,
|
|
|
- funcType: "",
|
|
|
- spaceName: "",
|
|
|
- macAddress: "test",
|
|
|
- };
|
|
|
+ getPadSpaceList(query: any = "") {
|
|
|
+ // debugger;
|
|
|
+ let params: any = query
|
|
|
+ ? query
|
|
|
+ : {
|
|
|
+ floorId: proxyData.checkPositon.floorId,
|
|
|
+ buildingId: proxyData.checkPositon.buildingId,
|
|
|
+ macAddress: "test",
|
|
|
+ };
|
|
|
let str: any = setQueryConfig(params);
|
|
|
getPadSpaceList(str).then((res) => {
|
|
|
let resData: any = res;
|
|
|
if (resData.result === "success") {
|
|
|
proxyData.spaceData = resData?.data ?? [];
|
|
|
proxyData.spaceData.map((item: any) => {
|
|
|
- item.checked=false
|
|
|
+ if(item.isWorkSpace){
|
|
|
+ item.checked = true;
|
|
|
+ }else{
|
|
|
+ item.checked = false;
|
|
|
+ }
|
|
|
});
|
|
|
} else {
|
|
|
proxyData.spaceData = [];
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ searchSpace() {
|
|
|
+ let query: any = {
|
|
|
+ floorId: proxyData.checkPositon.floorId,
|
|
|
+ buildingId: proxyData.checkPositon.buildingId,
|
|
|
+ funcType: proxyData.spaceType.type,
|
|
|
+ spaceName: proxyData.searchSpaceName,
|
|
|
+ macAddress: "test",
|
|
|
+ };
|
|
|
+ proxyData.getPadSpaceList(query);
|
|
|
+ },
|
|
|
async init() {
|
|
|
await proxyData.getDefaultLocation();
|
|
|
await proxyData.getBuildingList();
|