Explorar el Código

Merge branch 'master' of http://git.ycjcjy.com/ershoufang/mp-agent into master

张延森 hace 4 años
padre
commit
8e818d891f

+ 24
- 10
src/store/models/renting.js Ver fichero

@@ -123,9 +123,9 @@ export default () => {
123 123
   // 获取楼栋详情
124 124
   const getBuilding = (estateId) => {
125 125
     return request({
126
-      url: "/rent/building",
126
+      url: "/room/building",
127 127
       params: {
128
-        estateId
128
+        estateId,
129 129
       },
130 130
     })
131 131
   }
@@ -135,7 +135,7 @@ export default () => {
135 135
     return request({
136 136
       url: "/rent/close",
137 137
       params: {
138
-        estateId: data.estateId
138
+        estateId: data.estateId,
139 139
       },
140 140
       data,
141 141
       toast: "请稍候...",
@@ -153,11 +153,13 @@ export default () => {
153 153
     })
154 154
   }
155 155
 
156
-   // 实勘列表
157
-   const getRescList = (roomId) => {
156
+  // 实勘列表
157
+  const getRescList = (roomId) => {
158 158
     return request({
159 159
       url: "/rent/resc/list",
160
-      params: { roomId },
160
+      params: {
161
+        roomId
162
+      },
161 163
       loadingId: "room.resc.list",
162 164
     })
163 165
   }
@@ -166,7 +168,9 @@ export default () => {
166 168
   const setRescCover = (rescId) => {
167 169
     return request({
168 170
       url: "/rent/resc/cover",
169
-      params: { id: rescId },
171
+      params: {
172
+        id: rescId
173
+      },
170 174
       toast: "请稍候...",
171 175
     })
172 176
   }
@@ -178,17 +182,27 @@ export default () => {
178 182
       headers: {
179 183
         "Content-Type": "application/json",
180 184
       },
181
-      params: { roomId },
185
+      params: {
186
+        roomId
187
+      },
182 188
       data,
183 189
       toast: "请稍候...",
184 190
     })
185 191
   }
186 192
 
187 193
   // 删除
188
-  const deleteResc = ({ roomId, rescId, rescType }) => {
194
+  const deleteResc = ({
195
+    roomId,
196
+    rescId,
197
+    rescType
198
+  }) => {
189 199
     return request({
190 200
       url: "/rent/resc/delete",
191
-      params: { roomId, rescId, rescType },
201
+      params: {
202
+        roomId,
203
+        rescId,
204
+        rescType
205
+      },
192 206
       toast: "请稍候...",
193 207
     })
194 208
   }

+ 18
- 24
src/view/addhouse/index.vue Ver fichero

@@ -1,51 +1,45 @@
1 1
 <template>
2
-  <div class="addhouse">
2
+  <div class="home">
3 3
     <van-tabs
4
-      v-model="active"
5
-      background="#e6e4e4"
6
-      color="#d75e3a"
4
+      v-model:active="active"
5
+      background="#d75e3a"
6
+      color="#fff"
7 7
       line-width="30%"
8
-      title-active-color="#d75e3a"
8
+      title-active-color="#fff"
9 9
     >
10
-      <div class="addhouse-main">
11
-        <van-tab title="二手房"><Addsecondhand /></van-tab>
12
-        <van-tab title="租房"> <Addrenting /></van-tab>
13
-      </div>
10
+      <van-tab title="二手房"><Addsecondhand /></van-tab>
11
+      <van-tab title="租房"> <Addrenting /></van-tab>
14 12
     </van-tabs>
15 13
   </div>
16 14
 </template>
17 15
 
18 16
 <script>
19
-// import Vue from 'vue';
17
+import { ref } from "vue"
20 18
 import { Tab, Tabs } from "vant"
21 19
 import Addsecondhand from "./addsecondhand"
22 20
 import Addrenting from "./addrenting"
23 21
 
24 22
 export default {
25
-  name: "addhouse",
23
+  name: "home",
26 24
   components: {
27 25
     [Tab.name]: Tab,
28 26
     [Tabs.name]: Tabs,
29
-    Addsecondhand: Addsecondhand,
30
-    Addrenting: Addrenting,
27
+    Addsecondhand,
28
+    Addrenting,
31 29
   },
32 30
   data() {
33
-    return {
34
-      msg: "222",
35
-    }
31
+    return {}
32
+  },
33
+  setup() {
34
+    const active = ref(0)
35
+    return { active }
36 36
   },
37 37
 }
38 38
 </script>
39 39
 
40 40
 <!-- Add "scoped" attribute to limit CSS to this component only -->
41 41
 <style scoped>
42
-.addhouse-main {
43
-  width: 100%;
44
-  height: calc(100vh - 94px);
45
-  overflow: hidden;
46
-  overflow-y: auto;
47
-}
48
-.addhouse-main::-webkit-scrollbar {
49
-  display: none; /*隐藏滚动条*/
42
+:deep(.van-tab) {
43
+  color: #000;
50 44
 }
51 45
 </style>

+ 45
- 22
src/view/renting/detail/components/Main.vue Ver fichero

@@ -31,22 +31,28 @@
31 31
       {{ roomInfo.createMethod === "1" ? "外部录入" : "荟居录入" }}
32 32
     </x-field>
33 33
 
34
-    <!-- 
35
-
36
-
37
-    <x-field label="所属区县">
38
-      {{ otherData.roomCity.areaName }}
39
-    </x-field>
40
-
41
-    <x-field label="所属商圈">
42
-      {{ otherData.roomBusi.areaName }}
43
-    </x-field>
44
-
45
-  
46
-
47
-    <x-field label="价格">
48
-      {{ roomInfo.totalPrice }} 万元 / {{ avgPrice }} 元/㎡
49
-    </x-field> -->
34
+    <div
35
+      v-if="
36
+        roomInfo.status == '2' ||
37
+        roomInfo.status == '4' ||
38
+        roomInfo.status == '6'
39
+      "
40
+    >
41
+      <x-field label="关闭原因">
42
+        {{ getDictLabel(roomLog.type, "closeType")
43
+        }}<span v-show="roomLog.type == '1'"
44
+          >({{ getDictLabel(roomLog.reason, "closeReason") }})</span
45
+        >
46
+      </x-field>
47
+
48
+      <x-field label="关闭人">
49
+        {{ roomLog.createName }}
50
+      </x-field>
51
+
52
+      <x-field label="关闭时间">
53
+        {{ roomLog.createTime }}
54
+      </x-field>
55
+    </div>
50 56
 
51 57
     <x-field label="楼栋">
52 58
       {{ securityInfo.roomBuild || "敏感信息" }}
@@ -123,8 +129,14 @@ export default {
123 129
       type: Object,
124 130
       default: () => ({}),
125 131
     },
126
-
127
-    otherData: Object,
132
+    roomLog: {
133
+      type: Object,
134
+      default: () => ({}),
135
+    },
136
+    otherData: {
137
+      type: Object,
138
+      default: () => ({}),
139
+    },
128 140
   },
129 141
   setup(props) {
130 142
     const router = useRouter()
@@ -132,10 +144,15 @@ export default {
132 144
     const unfollowRoom = ref()
133 145
     const { dicts, getDict } = useModel("dicts")
134 146
 
135
-    // const floor = computed(() => {
136
-    //   const [a, b, c] = (props.roomInfo.roomFloor || "").split(",");
137
-    //   return `${a || ""}/${b || ""}(${c || ""})`;
138
-    // });
147
+    // 关闭类型
148
+    if (!dicts.closeType || !dicts.closeType.length) {
149
+      getDict("closeType")
150
+    }
151
+
152
+    // 关闭原因
153
+    if (!dicts.closeReason || !dicts.closeReason.length) {
154
+      getDict("closeReason")
155
+    }
139 156
 
140 157
     // 居室
141 158
     const roomType = computed(() => {
@@ -206,6 +223,11 @@ export default {
206 223
       }
207 224
     }
208 225
 
226
+    // 获取字典对应名称
227
+    const getDictLabel = (val, key) => {
228
+      return dicts[key]?.filter((x) => x.value === val)[0]?.text
229
+    }
230
+
209 231
     return {
210 232
       // floor,
211 233
       roomType,
@@ -218,6 +240,7 @@ export default {
218 240
       goToAddFollow,
219 241
       payWayOptions,
220 242
       decorationOptions,
243
+      getDictLabel,
221 244
     }
222 245
   },
223 246
 }

+ 1
- 0
src/view/renting/detail/index.vue Ver fichero

@@ -27,6 +27,7 @@
27 27
         <RoomMain
28 28
           :room-info="detail.roomInfo"
29 29
           :building="detail.building"
30
+          :roomLog="detail.roomLog || {}"
30 31
           :other-data="roomOtherData"
31 32
         />
32 33
       </van-cell-group>

+ 30
- 23
src/view/renting/edithouse/components/Form.vue Ver fichero

@@ -9,10 +9,10 @@
9 9
     />
10 10
 
11 11
     <van-field
12
-      v-model="formData.buildingName"
12
+      v-model="buildingName"
13 13
       name="buildingName"
14 14
       label="楼盘名称"
15
-      placeholder="请输入"
15
+      disabled
16 16
     />
17 17
 
18 18
     <van-field name="aspect" label="朝向" required>
@@ -36,7 +36,7 @@
36 36
     </van-field>
37 37
 
38 38
     <van-field
39
-      v-model="formData.acreage"
39
+      v-model="formData.totalPrice"
40 40
       name="totalPrice"
41 41
       label="租金"
42 42
       placeholder="请输入"
@@ -260,7 +260,7 @@
260 260
 </template>
261 261
 
262 262
 <script>
263
-import { reactive, computed, watch } from "vue"
263
+import { reactive, computed, watch, ref } from "vue"
264 264
 import { Form, Field, Button } from "vant"
265 265
 import { useModel } from "@zjxpcyc/vue-tiny-store"
266 266
 import Picker from "@/components/Picker"
@@ -279,10 +279,14 @@ export default {
279 279
   },
280 280
   emits: ["submit"],
281 281
   setup(props, { emit }) {
282
+    const buildingName = ref("")
283
+
282 284
     const formData = reactive({})
283 285
     const { dicts, getDict } = useModel("dicts")
284 286
     const { detail } = useModel("renting")
285 287
 
288
+    //  const mustEdit = computed(()=>detail.building.is)
289
+
286 290
     // 装修
287 291
     const decorationOptions = computed(() => {
288 292
       const decorationDict = dicts.decoration || []
@@ -460,25 +464,25 @@ export default {
460 464
     })
461 465
 
462 466
     const validManually = () => {
463
-      // if (
464
-      //   !formData.roomType ||
465
-      //   formData.roomType.split(",").filter(Boolean).length != 5
466
-      // ) {
467
-      //   showWarn("请正确设置户型")
468
-      //   return false
469
-      // }
470
-      // if (!formData.decoration) {
471
-      //   showWarn("请选择装修")
472
-      //   return false
473
-      // }
474
-      // if (!formData.aspect) {
475
-      //   showWarn("请选择朝向")
476
-      //   return false
477
-      // }
478
-      // if (!formData.sourceFrom) {
479
-      //   showWarn("请选择房源来源")
480
-      //   return false
481
-      // }
467
+      if (
468
+        !formData.roomType ||
469
+        formData.roomType.split(",").filter(Boolean).length != 5
470
+      ) {
471
+        showWarn("请正确设置户型")
472
+        return false
473
+      }
474
+      if (!formData.decoration) {
475
+        showWarn("请选择装修")
476
+        return false
477
+      }
478
+      if (!formData.aspect) {
479
+        showWarn("请选择朝向")
480
+        return false
481
+      }
482
+      if (!formData.sourceFrom) {
483
+        showWarn("请选择房源来源")
484
+        return false
485
+      }
482 486
 
483 487
       return true
484 488
     }
@@ -499,12 +503,15 @@ export default {
499 503
       (nw, od) => {
500 504
         if (nw && !od) {
501 505
           Object.assign(formData, { ...nw })
506
+          buildingName.value = detail.building?.buildingName
502 507
         }
503 508
       },
504 509
       { immediate: true }
505 510
     )
506 511
 
507 512
     return {
513
+      // mustEdit,
514
+      buildingName,
508 515
       formData,
509 516
       handleSumbit,
510 517
       decorationOptions,