ソースを参照

优化代码, 修复 bug, 放开Token过期校验

weiximei 6 年 前
コミット
d05b6c06de
共有15 個のファイルを変更した150 個の追加52 個の削除を含む
  1. 51
    0
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/common/base/BaseController.java
  2. 2
    1
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/AppUserController.java
  3. 4
    3
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/BannerController.java
  4. 2
    1
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CodeController.java
  5. 2
    1
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CommonController.java
  6. 2
    1
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CommunityController.java
  7. 2
    1
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/ImageController.java
  8. 2
    1
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/MqMessageController.java
  9. 4
    7
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/UserController.java
  10. 3
    0
      CODE/smart-community/operate-api/src/main/java/com/community/huiju/vo/ToUserVO.java
  11. 2
    2
      CODE/smart-community/property-api/src/main/java/com/community/huiju/common/base/BaseController.java
  12. 16
    11
      CODE/smart-community/property-api/src/main/java/com/community/huiju/service/impl/BuildingOwnerInfoServiceImpl.java
  13. 19
    10
      CODE/smart-community/zuul/src/main/java/com/community/huiju/filter/DomainZuulPostFilter.java
  14. 1
    0
      VUECODE/smart-operate-manage/src/utils/request.js
  15. 38
    13
      VUECODE/smart-property-manage/src/views/building/index.vue

+ 51
- 0
CODE/smart-community/operate-api/src/main/java/com/community/huiju/common/base/BaseController.java ファイルの表示

@@ -0,0 +1,51 @@
1
+package com.community.huiju.common.base;
2
+
3
+import com.community.commom.constant.Constant;
4
+import com.community.commom.session.UserElement;
5
+import com.community.huiju.exception.WisdomException;
6
+import com.community.huiju.vo.ToUserVO;
7
+import lombok.extern.slf4j.Slf4j;
8
+
9
+import javax.servlet.http.HttpSession;
10
+
11
+/**
12
+ * @author FXF
13
+ * @date 2018-12-18
14
+ */
15
+@Slf4j
16
+public class BaseController {
17
+    
18
+    /**
19
+     * 获取 UserElement
20
+     * @param session
21
+     * @return
22
+     */
23
+    protected UserElement getUserElement(HttpSession session){
24
+        log.info("获取sessionId: {}", session.getId());
25
+        UserElement userElement = (UserElement) session.getAttribute(Constant.WEB_USER_SESSION);
26
+        if (null == userElement) {
27
+            throw new WisdomException("用户凭证不存在!");
28
+        }
29
+        return userElement;
30
+    }
31
+
32
+    /**
33
+     * 获取 UserElement
34
+     * @param session
35
+     * @return
36
+     */
37
+    protected void setUserElement(HttpSession session, ToUserVO userVO){
38
+        log.info("获取sessionId: {}", session.getId());
39
+        UserElement userElement = new UserElement();
40
+        userElement.setId(userVO.getId());
41
+        userElement.setCommunityId(userVO.getCommunityId());
42
+        userElement.setEmail(userVO.getEmail());
43
+        userElement.setLoginName(userVO.getLoginName());
44
+        userElement.setUserName(userVO.getUserName());
45
+        userElement.setStatus(userVO.getStatus());
46
+        userElement.setLoginType(Constant.WEB_LOGIN_TYPE);
47
+
48
+        session.setAttribute(Constant.WEB_USER_SESSION, userElement);
49
+    }
50
+
51
+}

+ 2
- 1
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/AppUserController.java ファイルの表示

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.controller;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.huiju.common.base.BaseController;
4 5
 import com.community.huiju.service.ITaUserService;
5 6
 import io.swagger.annotations.Api;
6 7
 import io.swagger.annotations.ApiImplicitParam;
@@ -16,7 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
16 17
 @RefreshScope
17 18
 @RequestMapping("/")
18 19
 @Api(value = " App 用户 控制器")
19
-public class AppUserController {
20
+public class AppUserController extends BaseController {
20 21
 
21 22
     @Autowired
22 23
     private ITaUserService iTaUserService;

+ 4
- 3
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/BannerController.java ファイルの表示

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
4 4
 import com.community.commom.constant.Constant;
5 5
 import com.community.commom.mode.ResponseBean;
6 6
 import com.community.commom.session.UserElement;
7
+import com.community.huiju.common.base.BaseController;
7 8
 import com.community.huiju.model.ToBanner;
8 9
 import com.community.huiju.service.IToBannerService;
9 10
 import io.swagger.annotations.Api;
@@ -25,7 +26,7 @@ import java.util.List;
25 26
 @RefreshScope
26 27
 @RequestMapping("/")
27 28
 @Api(value = "Banner 控制器")
28
-public class BannerController {
29
+public class BannerController extends BaseController {
29 30
 
30 31
     @Autowired
31 32
     private IToBannerService iToBannerService;
@@ -42,7 +43,7 @@ public class BannerController {
42 43
     public ResponseBean addBanner(@RequestBody @Valid ToBanner banner,
43 44
                                   HttpSession session){
44 45
 
45
-        UserElement userElement = (UserElement) session.getAttribute(Constant.WEB_USER_SESSION);
46
+        UserElement userElement = getUserElement(session);
46 47
         ResponseBean response = new ResponseBean();
47 48
         response = iToBannerService.addBanner(banner,userElement.getId());
48 49
         return response;
@@ -60,7 +61,7 @@ public class BannerController {
60 61
     public ResponseBean updateBanner(@RequestBody @Valid ToBanner banner,
61 62
                                   HttpSession session){
62 63
 
63
-        UserElement userElement = (UserElement) session.getAttribute(Constant.WEB_USER_SESSION);
64
+        UserElement userElement = getUserElement(session);
64 65
         ResponseBean response = new ResponseBean();
65 66
         response = iToBannerService.modifyBanner(banner,userElement.getId());
66 67
         return response;

+ 2
- 1
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CodeController.java ファイルの表示

@@ -2,6 +2,7 @@ package com.community.huiju.controller;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4 4
 import com.community.commom.utils.AccountValidatorUtil;
5
+import com.community.huiju.common.base.BaseController;
5 6
 import com.community.huiju.common.code.ICode;
6 7
 import com.community.huiju.common.code.cache.AppkeyCache;
7 8
 import io.swagger.annotations.Api;
@@ -27,7 +28,7 @@ import javax.servlet.http.HttpSession;
27 28
 @RefreshScope
28 29
 @Api(value = "获取验证码的API", description = "获取验证码的API")
29 30
 @Slf4j
30
-public class CodeController {
31
+public class CodeController extends BaseController {
31 32
 
32 33
     @Autowired
33 34
     @Qualifier("phoneCodeImpl")

+ 2
- 1
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CommonController.java ファイルの表示

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.controller;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.huiju.common.base.BaseController;
4 5
 import com.community.huiju.model.Communities;
5 6
 import com.community.huiju.model.SysNation;
6 7
 import com.community.huiju.service.CommonServiceI;
@@ -26,7 +27,7 @@ import java.util.List;
26 27
 @RefreshScope
27 28
 @RequestMapping("/")
28 29
 @Api(value = "运营端公共API", description = "运营端公共API")
29
-public class CommonController {
30
+public class CommonController extends BaseController {
30 31
 	@Autowired
31 32
 	private CommunitiesServiceI communitiesServiceI;
32 33
 	

+ 2
- 1
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/CommunityController.java ファイルの表示

@@ -2,6 +2,7 @@ package com.community.huiju.controller;
2 2
 
3 3
 import com.community.commom.constant.Constant;
4 4
 import com.community.commom.mode.ResponseBean;
5
+import com.community.huiju.common.base.BaseController;
5 6
 import com.community.huiju.model.ToCommunities;
6 7
 import com.community.huiju.service.CommunityServiceI;
7 8
 import io.swagger.annotations.Api;
@@ -29,7 +30,7 @@ import java.util.Map;
29 30
 @RefreshScope
30 31
 @RequestMapping("/")
31 32
 @Api(value = "运营端社区API", description = "运营端社区API")
32
-public class CommunityController {
33
+public class CommunityController extends BaseController {
33 34
 	
34 35
 	@Autowired
35 36
 	private CommunityServiceI communityService;

+ 2
- 1
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/ImageController.java ファイルの表示

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.controller;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.huiju.common.base.BaseController;
4 5
 import com.community.huiju.service.ImageServiceI;
5 6
 import io.swagger.annotations.Api;
6 7
 import io.swagger.annotations.ApiOperation;
@@ -25,7 +26,7 @@ import java.util.List;
25 26
 @RefreshScope
26 27
 @RequestMapping("/")
27 28
 @Api(value = "图片操作API", description = "图片操作API")
28
-public class ImageController {
29
+public class ImageController extends BaseController {
29 30
 
30 31
     @Autowired
31 32
     private ImageServiceI imageService;

+ 2
- 1
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/MqMessageController.java ファイルの表示

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.controller;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.huiju.common.base.BaseController;
4 5
 import com.community.huiju.service.IMqMessageService;
5 6
 import io.swagger.annotations.Api;
6 7
 import io.swagger.annotations.ApiImplicitParam;
@@ -16,7 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
16 17
 @RefreshScope
17 18
 @RequestMapping("/")
18 19
 @Api(value = "订阅事件",description = "订阅事件")
19
-public class MqMessageController {
20
+public class MqMessageController extends BaseController {
20 21
 
21 22
     @Autowired
22 23
     private IMqMessageService iMqMessageService;

+ 4
- 7
CODE/smart-community/operate-api/src/main/java/com/community/huiju/controller/UserController.java ファイルの表示

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
4 4
 import com.community.commom.constant.Constant;
5 5
 import com.community.commom.mode.ResponseBean;
6 6
 import com.community.commom.session.UserElement;
7
+import com.community.huiju.common.base.BaseController;
7 8
 import com.community.huiju.model.ToUser;
8 9
 import com.community.huiju.service.IToUserService;
9 10
 import com.community.huiju.vo.ToUserVO;
@@ -27,7 +28,7 @@ import javax.servlet.http.HttpSession;
27 28
 @RequestMapping("/")
28 29
 @RefreshScope
29 30
 @Api(value = "运营web用户API",description = "运营web用户API")
30
-public class UserController {
31
+public class UserController extends BaseController {
31 32
 
32 33
     @Autowired
33 34
     private IToUserService iToUserService;
@@ -46,11 +47,7 @@ public class UserController {
46 47
         ToUserVO userVO = (ToUserVO) response.getData();
47 48
 
48 49
         if (null != userVO) {
49
-            UserElement userElement = new UserElement();
50
-            BeanUtils.copyProperties(userVO,userElement);
51
-            userElement.setLoginType(Constant.WEB_LOGIN_TYPE);
52
-            session.setAttribute(Constant.WEB_USER_SESSION,userElement);
53
-            userVO.setToken(session.getId());
50
+            setUserElement(session, userVO);
54 51
         }
55 52
 
56 53
         return response;
@@ -65,7 +62,7 @@ public class UserController {
65 62
     public ResponseBean getInfo(HttpSession session) {
66 63
         ResponseBean response = new ResponseBean();
67 64
 
68
-        UserElement userElement = (UserElement) session.getAttribute(Constant.WEB_USER_SESSION);
65
+        UserElement userElement = getUserElement(session);
69 66
         if (null == userElement) {
70 67
             response.addError("请登录!");
71 68
             return response;

+ 3
- 0
CODE/smart-community/operate-api/src/main/java/com/community/huiju/vo/ToUserVO.java ファイルの表示

@@ -18,6 +18,9 @@ public class ToUserVO {
18 18
 
19 19
     private Integer id;
20 20
 
21
+    /** 小区Id **/
22
+    private Integer communityId;
23
+
21 24
     /** 用户名称 **/
22 25
     private String userName;
23 26
 

+ 2
- 2
CODE/smart-community/property-api/src/main/java/com/community/huiju/common/base/BaseController.java ファイルの表示

@@ -22,7 +22,7 @@ public class BaseController {
22 22
      */
23 23
     protected UserElement getUserElement(HttpSession session){
24 24
         log.info("获取sessionId: {}", session.getId());
25
-        UserElement userElement = (UserElement) session.getAttribute(Constant.WEB_PROPERTY_USER_SESSION);
25
+        UserElement userElement = (UserElement) session.getAttribute(Constant.WEB_USER_SESSION);
26 26
         if (null == userElement) {
27 27
             throw new WisdomException("用户凭证不存在!");
28 28
         }
@@ -45,7 +45,7 @@ public class BaseController {
45 45
         userElement.setStatus(userVO.getStatus());
46 46
         userElement.setLoginType(Constant.WEB_LOGIN_TYPE);
47 47
 
48
-        session.setAttribute(Constant.WEB_PROPERTY_USER_SESSION, userElement);
48
+        session.setAttribute(Constant.WEB_USER_SESSION, userElement);
49 49
     }
50 50
 
51 51
 }

+ 16
- 11
CODE/smart-community/property-api/src/main/java/com/community/huiju/service/impl/BuildingOwnerInfoServiceImpl.java ファイルの表示

@@ -154,7 +154,7 @@ public class BuildingOwnerInfoServiceImpl extends ServiceImpl<TpBuildingOwnerInf
154 154
         boolean phoneBool = false;
155 155
 
156 156
         // 校验楼栋信息表
157
-        TpBuildingOwnerInfo selectBuild = getBuildingInfo(tpBuildingOwnerInfo, user.getId());
157
+        TpBuildingOwnerInfo selectBuild = getBuildingInfo(tpBuildingOwnerInfo, user.getCommunityId());
158 158
         // 如果数据查询到了, 并且手机号和传上来的手机号是一样的是, 代表就是原数据, 直接返回操作成功
159 159
         if (null != selectBuild && selectBuild.getOwnerTel().equals(tpBuildingOwnerInfo.getOwnerTel())) {
160 160
             tpBuildingOwnerInfoMapper.updateById(tpBuildingOwnerInfo);
@@ -167,7 +167,7 @@ public class BuildingOwnerInfoServiceImpl extends ServiceImpl<TpBuildingOwnerInf
167 167
             // 校验楼栋信息表里面的业主手机号
168 168
             QueryWrapper<TpBuildingOwnerInfo> queryWrapperPhone = new QueryWrapper<>();
169 169
             queryWrapperPhone.eq("owner_tel", tpBuildingOwnerInfo.getOwnerTel());
170
-            TpBuildingOwnerInfo selectBuildPhone = getBuildingInfo(tpBuildingOwnerInfo, user.getId());
170
+            TpBuildingOwnerInfo selectBuildPhone = getBuildingInfo(tpBuildingOwnerInfo, user.getCommunityId());
171 171
 
172 172
             // 如果 通过手机号查询出来的楼栋信息数据的 id 和 传上来的 楼栋,单元,楼层,单元,户号 查询出来的数据的id 匹配, 那么就表示这个手机号已经绑定了其他的楼栋信息
173 173
             if (selectBuildPhone.getId().intValue() != selectBuild.getId().intValue()){
@@ -199,11 +199,8 @@ public class BuildingOwnerInfoServiceImpl extends ServiceImpl<TpBuildingOwnerInf
199 199
 
200 200
         // 修改 APP 端业主用户的手机号信息!
201 201
         // 开始匹配 APP 端用户表
202
-        QueryWrapper<TaUser> taUserQueryWrapper = new QueryWrapper<>();
203
-        taUserQueryWrapper.eq("login_name", tpBuildingOwnerInfo.getOwnerTel());
204
-        taUserQueryWrapper.eq("community_id", tpBuildingOwnerInfo.getCommunityId());
205 202
         // 查询 APP 端业主
206
-        TaUser appOwnerUser = taUserMapper.selectOne(taUserQueryWrapper);
203
+        TaUser appOwnerUser = getByIdAndCommunityId(tpBuildingOwnerInfo.getOwnerTel(), tpBuildingOwnerInfo.getCommunityId());
207 204
         if (null != appOwnerUser) {
208 205
             // 修改手机号
209 206
             appOwnerUser.setLoginName(tpBuildingOwnerInfo.getOwnerTel());
@@ -247,7 +244,7 @@ public class BuildingOwnerInfoServiceImpl extends ServiceImpl<TpBuildingOwnerInf
247 244
         }
248 245
 
249 246
         // 校验楼栋信息表
250
-        selectBuild = getBuildingInfo(tpBuildingOwnerInfo, user.getId());
247
+        selectBuild = getBuildingInfo(tpBuildingOwnerInfo, user.getCommunityId());
251 248
         if (null != selectBuild) {
252 249
             responseBean.addError("该楼层的户号,已存在!");
253 250
             return responseBean;
@@ -574,6 +571,7 @@ public class BuildingOwnerInfoServiceImpl extends ServiceImpl<TpBuildingOwnerInf
574 571
             tpBuildingOwnerInfo.setId(e);
575 572
             tpBuildingOwnerInfo.setVerifyStatus("2");
576 573
             tpBuildingOwnerInfo.setUpdateUser(propertyUserId);
574
+            tpBuildingOwnerInfo.setUpdateDate(LocalDateTime.now());
577 575
             return tpBuildingOwnerInfo;
578 576
         }).collect(Collectors.toList());
579 577
         boolean result = updateBatchById(infoList);
@@ -583,15 +581,22 @@ public class BuildingOwnerInfoServiceImpl extends ServiceImpl<TpBuildingOwnerInf
583 581
 
584 582
         ids.forEach(e-> {
585 583
             TpBuildingOwnerInfo tpBuildingOwnerInfo = tpBuildingOwnerInfoMapper.selectById(e);
586
-            if (null == tpBuildingOwnerInfo) {
584
+            if (null != tpBuildingOwnerInfo) {
587 585
                 // 查询 APP 端业主
588 586
                 TaUser appOwnerUser = getByIdAndCommunityId(tpBuildingOwnerInfo.getOwnerTel(), tpBuildingOwnerInfo.getCommunityId());
589
-                appOwnerUser.setVerifyStatus(2+"");
590
-                taUserList.add(appOwnerUser);
587
+                if (null != appOwnerUser) {
588
+                    appOwnerUser.setVerifyStatus(2+"");
589
+                    appOwnerUser.setUpdateDate(LocalDateTime.now());
590
+                    taUserList.add(appOwnerUser);
591
+                }
592
+
591 593
             }
592 594
         });
593 595
 
594
-        result = iTaUserService.updateBatchById(taUserList);
596
+        if (null != taUserList && taUserList.size() > 0) {
597
+            result = iTaUserService.updateBatchById(taUserList);
598
+        }
599
+
595 600
 
596 601
         if (result) {
597 602
             responseBean.addSuccess("操作成功!");

+ 19
- 10
CODE/smart-community/zuul/src/main/java/com/community/huiju/filter/DomainZuulPostFilter.java ファイルの表示

@@ -21,7 +21,7 @@ import javax.servlet.http.HttpServletResponse;
21 21
  * 拦截Token
22 22
  * @author weiximei
23 23
  */
24
-//@Component
24
+@Component
25 25
 public class DomainZuulPostFilter extends ZuulFilter {
26 26
 
27 27
     @Override
@@ -51,20 +51,29 @@ public class DomainZuulPostFilter extends ZuulFilter {
51 51
         HttpServletResponse response = ctx.getResponse();
52 52
         HttpServletRequest request = ctx.getRequest();
53 53
         String token = request.getHeader(Header.REQUEST_X_AUTH_TOKEN.getValue());
54
+        String loginType = request.getHeader(Header.LOGIN_TYPE.getValue());
54 55
         if (StringUtils.isBlank(token)) {
55 56
 
56 57
         }else {
57 58
             ResponseBean responseBean = new ResponseBean();
58
-            UserElement appElement = (UserElement) request.getSession().getAttribute(Constant.APP_USER_SESSION);
59
-            if (null == appElement) {
60
-                responseBean.addError("803","Token已过期!");
61
-                ctx.setResponseBody(JSONObject.toJSONString(responseBean));
62
-            }
63
-            UserElement webElement = (UserElement) request.getSession().getAttribute(Constant.WEB_USER_SESSION);
64
-            if (null == webElement) {
65
-                responseBean.addError("803","Token已过期!");
66
-                ctx.setResponseBody(JSONObject.toJSONString(responseBean));
59
+            // APP 端
60
+            if (Constant.APP_LOGIN_TYPE.equals(loginType.trim())){
61
+                UserElement appElement = (UserElement) request.getSession().getAttribute(Constant.APP_USER_SESSION);
62
+                if (null == appElement) {
63
+                    responseBean.addError("803","Token已过期!");
64
+                    ctx.setResponseBody(JSONObject.toJSONString(responseBean));
65
+                }
66
+
67
+                // WEB 端
68
+            } else {
69
+                UserElement webOperateElement = (UserElement) request.getSession().getAttribute(Constant.WEB_LOGIN_TYPE);
70
+                if (null == webOperateElement) {
71
+                    responseBean.addError("803","Token已过期!");
72
+                    ctx.setResponseBody(JSONObject.toJSONString(responseBean));
73
+                }
67 74
             }
75
+
76
+
68 77
         }
69 78
 
70 79
         return null;

+ 1
- 0
VUECODE/smart-operate-manage/src/utils/request.js ファイルの表示

@@ -14,6 +14,7 @@ service.interceptors.request.use(
14 14
   config => {
15 15
     if (store.getters.token) {
16 16
       config.headers['X-Auth-Token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
17
+      config.headers['Login-Type'] = 'web'
17 18
     }
18 19
     return config
19 20
   },

+ 38
- 13
VUECODE/smart-property-manage/src/views/building/index.vue ファイルの表示

@@ -4,7 +4,7 @@
4 4
     <el-form :inline="true" :model="listQuery" class="form-listQuery">
5 5
       <el-form-item label="楼盘库">
6 6
         <el-select v-model="listQuery.building" placeholder="栋" @change="buildSelectChange(1)">
7
-          <el-option label="选择楼栋" value="-1" />
7
+          <!--<el-option label="选择楼栋" value="-1" />-->
8 8
           <el-option
9 9
             v-for="item in buildingList"
10 10
             :key="item.id"
@@ -12,7 +12,7 @@
12 12
             :value="item.building"/>
13 13
         </el-select>
14 14
         <el-select v-model="listQuery.unit" placeholder="单元" @change="buildSelectChange(2)">
15
-          <el-option label="选择单元" value="-1" />
15
+          <!--<el-option label="选择单元" value="-1" />-->
16 16
           <el-option
17 17
             v-for="item in unitList"
18 18
             :key="item.id"
@@ -20,7 +20,7 @@
20 20
             :value="item.unit"/>
21 21
         </el-select>
22 22
         <el-select v-model="listQuery.level" placeholder="楼层" @change="buildSelectChange(3)">
23
-          <el-option label="选择楼层" value="-1" />
23
+          <!--<el-option label="选择楼层" value="-1" />-->
24 24
           <el-option
25 25
             v-for="item in levelList"
26 26
             :key="item.id"
@@ -28,7 +28,7 @@
28 28
             :value="item.level"/>
29 29
         </el-select>
30 30
         <el-select v-model="listQuery.roomNo" placeholder="户号">
31
-          <el-option label="选择户号" value="-1" />
31
+          <!--<el-option label="选择户号" value="-1" />-->
32 32
           <el-option
33 33
             v-for="item in roomNoList"
34 34
             :key="item.id"
@@ -62,17 +62,19 @@
62 62
       tooltip-effect="dark"
63 63
       style="width: 100%; margin-top: 20px;"
64 64
       @selection-change="handleSelectionChange">
65
-      <el-table-column type="selection" width="55"/>
66
-      <el-table-column prop="building" label="栋" />
67
-      <el-table-column prop="unit" label="单元" />
68
-      <el-table-column prop="level" label="楼层" />
69
-      <el-table-column prop="roomNo" label="户号" />
70
-      <el-table-column prop="ownerName" label="业主姓名"/>
71
-      <el-table-column prop="ownerTel" label="手机号码" />
72
-      <el-table-column prop="pairStatus" label="关联业主状态" >
65
+      <el-table-column type="selection" width="55" align="center"/>
66
+      <el-table-column prop="building" label="栋" align="center" />
67
+      <el-table-column prop="unit" label="单元" align="center" />
68
+      <el-table-column prop="level" label="楼层" align="center" />
69
+      <el-table-column prop="roomNo" label="户号" align="center" />
70
+      <el-table-column prop="ownerName" label="业主姓名" align="center"/>
71
+      <el-table-column prop="ownerTel" label="手机号码" align="center" />
72
+      <el-table-column prop="pairStatus" label="关联业主状态" align="center" >
73 73
         <template slot-scope="scope">{{ scope.row.pairStatus === '1' ? '已关联':'未关联' }}</template>
74 74
       </el-table-column>
75
-      <el-table-column prop="createDate" label="创建时间" />
75
+      <el-table-column prop="createDate" label="创建时间" align="center" >
76
+        <template slot-scope="scope">{{ formatDate(scope.row.createDate) }}</template>
77
+      </el-table-column>
76 78
     </el-table>
77 79
     <div class="block">
78 80
       <el-pagination
@@ -201,12 +203,24 @@ export default {
201 203
     buildSelectChange(value) { // select 的 change
202 204
       switch (value) {
203 205
         case 1: // 查询 单元
206
+          this.unitList = []
207
+          this.levelList = []
208
+          this.roomNoList = []
209
+          this.listQuery.unit = ''
210
+          this.listQuery.level = ''
211
+          this.listQuery.roomNo = ''
204 212
           this.getUnit()
205 213
           break
206 214
         case 2: // 查询 楼层
215
+          this.levelList = []
216
+          this.roomNoList = []
217
+          this.listQuery.level = ''
218
+          this.listQuery.roomNo = ''
207 219
           this.getLevel()
208 220
           break
209 221
         case 3: // 查询 户号
222
+          this.roomNoList = []
223
+          this.listQuery.roomNo = ''
210 224
           this.getRoomNo()
211 225
           break
212 226
       }
@@ -272,6 +286,17 @@ export default {
272 286
         return
273 287
       }
274 288
       this.$router.push({ name: 'building-edi', params: { id: ids[0], listQuery: this.listQuery }})
289
+    },
290
+    formatDate(val) {
291
+      var value = new Date(val)
292
+      var year = value.getFullYear()
293
+      var month = value.getMonth() + 1
294
+      var day = value.getDate()
295
+      // var hour = value.getHours()
296
+      // var minutes = value.getMinutes()
297
+      // var seconds = value.getSeconds()
298
+      // return year + '-' + month + '-' + day + ' ' + hour + ':' + minutes + ':' + seconds
299
+      return year + '-' + month + '-' + day
275 300
     }
276 301
   }
277 302
 }