dingxin 6 years ago
parent
commit
095fa8095d
23 changed files with 480 additions and 86 deletions
  1. 7
    0
      CODE/foreign-service/pom.xml
  2. 85
    0
      CODE/foreign-service/src/main/java/com/community/huiju/common/sign/DaSuSign.java
  3. 30
    6
      CODE/foreign-service/src/main/java/com/community/huiju/controller/FSController.java
  4. 111
    0
      CODE/foreign-service/src/main/java/com/community/huiju/controller/TaFceController.java
  5. 14
    2
      CODE/foreign-service/src/main/java/com/community/huiju/controller/TaUserController.java
  6. 13
    1
      CODE/foreign-service/src/main/java/com/community/huiju/controller/TaUserVerifyController.java
  7. 4
    0
      CODE/foreign-service/src/main/java/com/community/huiju/controller/TpAddressController.java
  8. 5
    1
      CODE/foreign-service/src/main/java/com/community/huiju/controller/TpEquipmentController.java
  9. 1
    7
      CODE/foreign-service/src/main/java/com/community/huiju/dao/TaFaceMapper.java
  10. 10
    1
      CODE/foreign-service/src/main/java/com/community/huiju/enums/ResponseErrorsMessages.java
  11. 123
    0
      CODE/foreign-service/src/main/java/com/community/huiju/filter/SignFilter.java
  12. 6
    6
      CODE/foreign-service/src/main/java/com/community/huiju/service/FaceServiceI.java
  13. 37
    49
      CODE/foreign-service/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java
  14. 12
    0
      CODE/foreign-service/src/main/resources/mapper/TaFaceMapper.xml
  15. 1
    1
      CODE/foreign-service/src/main/resources/mapper/TaUserVerifyMapper.xml
  16. 6
    2
      CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/TicketController.java
  17. 2
    2
      CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/WxPayController.java
  18. 1
    1
      CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TaUserLicenseOrderMapper.java
  19. 2
    1
      CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpannouncementTelMapper.java
  20. 4
    1
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/AgreementServicel.java
  21. 3
    2
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/AgreementServiceimpl.java
  22. 2
    1
      CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserLicenseServiceImpl.java
  23. 1
    2
      CODE/smart-community/app-api/src/main/resources/mapper/TpannouncementTelMapper.xml

+ 7
- 0
CODE/foreign-service/pom.xml View File

@@ -107,6 +107,13 @@
107 107
             <version>3.11.0</version>
108 108
         </dependency>
109 109
 
110
+        <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 -->
111
+        <dependency>
112
+            <groupId>org.apache.commons</groupId>
113
+            <artifactId>commons-collections4</artifactId>
114
+            <version>4.1</version>
115
+        </dependency>
116
+
110 117
         <dependency>
111 118
             <groupId>commons-httpclient</groupId>
112 119
             <artifactId>commons-httpclient</artifactId>

+ 85
- 0
CODE/foreign-service/src/main/java/com/community/huiju/common/sign/DaSuSign.java View File

@@ -0,0 +1,85 @@
1
+package com.community.huiju.common.sign;
2
+
3
+import com.alibaba.fastjson.JSONObject;
4
+import com.google.common.collect.Maps;
5
+import lombok.extern.slf4j.Slf4j;
6
+import org.apache.commons.codec.digest.DigestUtils;
7
+import org.apache.commons.lang3.StringUtils;
8
+
9
+import java.io.UnsupportedEncodingException;
10
+import java.util.Map;
11
+import java.util.Set;
12
+import java.util.TreeMap;
13
+
14
+/**
15
+ * 大苏签名校验
16
+ */
17
+@Slf4j
18
+public class DaSuSign {
19
+
20
+    /**
21
+     * 校验签名是否相等
22
+     * @param val_1
23
+     * @param val_2
24
+     * @return true 相等  false 不相等
25
+     */
26
+    public static boolean isMD5Sign(String val_1, String val_2) {
27
+        return StringUtils.equals(val_1, val_2);
28
+    }
29
+
30
+    /**
31
+     *
32
+     * 创建签名
33
+     * 对请求参数进行签名
34
+     *
35
+     *
36
+     *      参考参数
37
+     *      * @param appid
38
+     *      * @param appSecret
39
+     *      * @param datetime 时间戳
40
+     *      * @param encrypt 加密方式(目前就 MD5)
41
+     *      * @param communityId 小区id
42
+     *
43
+     * @return
44
+     */
45
+    public static String createSign(TreeMap<String ,Object> treeMap, String appSecret){
46
+
47
+        String sign = "";
48
+
49
+        StringBuilder sb = new StringBuilder();
50
+        Set<Map.Entry<String, Object>> entries = treeMap.entrySet();
51
+        entries.forEach(e-> {
52
+            sb.append(e.getKey());
53
+            sb.append("=");
54
+            sb.append(e.getValue());
55
+            sb.append("&");
56
+        });
57
+
58
+        sign = sb.toString();
59
+        sign = sign.substring(0, sign.lastIndexOf("&"));
60
+
61
+        log.info("签名之前参数: {}, appSecret: {}" , JSONObject.toJSONString(treeMap), appSecret);
62
+
63
+        try {
64
+            String str = new String(sign.getBytes("UTF-8"), "UTF-8");
65
+            sign = DigestUtils.md5Hex( str + appSecret);
66
+        } catch (UnsupportedEncodingException e) {
67
+            e.printStackTrace();
68
+        }
69
+
70
+        log.info("签名: {}" , sign);
71
+
72
+        return sign;
73
+    }
74
+
75
+    public static void main(String[] args) {
76
+
77
+        Long timeMillis = System.currentTimeMillis();
78
+        System.out.println(timeMillis);
79
+        TreeMap<String, Object> treeMap = new TreeMap<>();
80
+        treeMap.put("appid", "dssdw2576sd997");
81
+        treeMap.put("communityId", "100");
82
+        String sign = createSign(treeMap, "fgexhd855sf4");
83
+    }
84
+
85
+}

+ 30
- 6
CODE/foreign-service/src/main/java/com/community/huiju/controller/FSController.java View File

@@ -22,7 +22,11 @@ public class FSController extends BaseController {
22 22
     @RequestMapping(value = "/car/getParkInfoByCarNo/{carNo}", method = RequestMethod.GET)
23 23
     @ApiOperation(value = "获取停车信息(通过车牌号)", notes = "获取停车信息(通过车牌号)")
24 24
     @ApiImplicitParams({
25
-            @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "carNo", value = "车牌号")
25
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "carNo", value = "车牌号"),
26
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
27
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
28
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
29
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
26 30
     })
27 31
     public ResponseBean getParkInfoByCarNo(@PathVariable("carNo") String carNo) {
28 32
         ResponseBean responseBean = new ResponseBean();
@@ -33,7 +37,11 @@ public class FSController extends BaseController {
33 37
     @RequestMapping(value = "/car/parkGetMonthCardInfoByCarNo/{carNo}", method = RequestMethod.GET)
34 38
     @ApiOperation(value = "获取月租车信息(通过车牌号)", notes = "获取月租车信息(通过车牌号)")
35 39
     @ApiImplicitParams({
36
-            @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "carNo", value = "车牌号")
40
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "carNo", value = "车牌号"),
41
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
42
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
43
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
44
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
37 45
     })
38 46
     public ResponseBean parkGetMonthCardInfoByCarNo(@PathVariable("carNo") String carNo) {
39 47
         ResponseBean responseBean = new ResponseBean();
@@ -44,7 +52,11 @@ public class FSController extends BaseController {
44 52
     @RequestMapping(value = "/car/parkGetTempCarPaymentInfoByCarNo/{carNo}", method = RequestMethod.GET)
45 53
     @ApiOperation(value = "获取临时车信息(通过车牌号)", notes = "获取临时车信息(通过车牌号)")
46 54
     @ApiImplicitParams({
47
-            @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "carNo", value = "车牌号")
55
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "path", name = "carNo", value = "车牌号"),
56
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
57
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
58
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
59
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
48 60
     })
49 61
     public ResponseBean parkGetTempCarPaymentInfoByCarNo(@PathVariable("carNo") String carNo) {
50 62
         ResponseBean responseBean = new ResponseBean();
@@ -60,7 +72,11 @@ public class FSController extends BaseController {
60 72
                     "PayStyle交易方式(中文描述),例如:微信、 支付宝、 银联;" +
61 73
                     "CarNo车牌号;" +
62 74
                     "CardNo停车卡号;" +
63
-                    "RechargeAmt充值续费金额;")
75
+                    "RechargeAmt充值续费金额;"),
76
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
77
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
78
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
79
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
64 80
     })
65 81
     public ResponseBean apiThirdPartyMonthCardPay(@RequestBody String parameter) {
66 82
         ResponseBean responseBean = new ResponseBean();
@@ -85,7 +101,11 @@ public class FSController extends BaseController {
85 101
                     "PayStyle交易方式(汉字描述),例如:微信、支付宝、银联;" +
86 102
                     "CarNo车牌号;" +
87 103
                     "CardNo停车卡号;" +
88
-                    "CouponList使用的优惠券列表")
104
+                    "CouponList使用的优惠券列表"),
105
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
106
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
107
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
108
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
89 109
     })
90 110
     public ResponseBean apiThirdPartyTemporaryCardPay(@RequestBody String parameter) {
91 111
         ResponseBean responseBean = new ResponseBean();
@@ -105,7 +125,11 @@ public class FSController extends BaseController {
105 125
     @RequestMapping(value = "/car/apiGetOfflineFee/{carNoOrCardNo}", method = RequestMethod.GET)
106 126
     @ApiOperation(value = "获取线下算费结果", notes = "获取线下算费结果")
107 127
     @ApiImplicitParams({
108
-        @ApiImplicitParam(paramType = "path", dataTypeClass = String.class, name = "carNoOrCardNo" , value = "车牌号码或卡号")
128
+        @ApiImplicitParam(paramType = "path", dataTypeClass = String.class, name = "carNoOrCardNo" , value = "车牌号码或卡号"),
129
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
130
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
131
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
132
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
109 133
     })
110 134
     public ResponseBean apiGetOfflineFee(@PathVariable("carNoOrCardNo") String carNoOrCardNo) {
111 135
         ResponseBean responseBean = new ResponseBean();

+ 111
- 0
CODE/foreign-service/src/main/java/com/community/huiju/controller/TaFceController.java View File

@@ -0,0 +1,111 @@
1
+package com.community.huiju.controller;
2
+
3
+import com.community.huiju.common.base.BaseController;
4
+import com.community.huiju.common.base.ResponseBean;
5
+import com.community.huiju.service.FaceServiceI;
6
+import io.swagger.annotations.Api;
7
+import io.swagger.annotations.ApiImplicitParam;
8
+import io.swagger.annotations.ApiImplicitParams;
9
+import io.swagger.annotations.ApiOperation;
10
+import org.springframework.beans.factory.annotation.Autowired;
11
+import org.springframework.web.bind.annotation.RequestMapping;
12
+import org.springframework.web.bind.annotation.RequestMethod;
13
+import org.springframework.web.bind.annotation.RequestParam;
14
+import org.springframework.web.bind.annotation.RestController;
15
+import org.springframework.web.multipart.MultipartFile;
16
+
17
+/**
18
+ * weiximei on 2019-05-17
19
+ */
20
+
21
+@RestController
22
+@RequestMapping("/")
23
+@Api(value = "人脸操作 API", description = "人脸操作 API")
24
+public class TaFceController extends BaseController {
25
+
26
+    @Autowired
27
+    private FaceServiceI faceServiceI;
28
+
29
+    @RequestMapping(value = "/face", method = RequestMethod.POST)
30
+    @ApiOperation(value = "录入人脸" , notes = "录入人脸")
31
+    @ApiImplicitParams({
32
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userId", value = "用户Id"),
33
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userVerifyId", value = "房产审核Id"),
34
+            @ApiImplicitParam(dataTypeClass = MultipartFile.class, paramType = "form", name = "uploadFile", value = "图片"),
35
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
36
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
37
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
38
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
39
+    })
40
+    public ResponseBean addFace(@RequestParam(value = "userId") Integer userId,
41
+                                @RequestParam(value = "userVerifyId") Integer userVerifyId,
42
+                                @RequestParam(value = "uploadFile") MultipartFile uploadFile) {
43
+
44
+        ResponseBean responseBean = new ResponseBean();
45
+        responseBean = faceServiceI.addFace(userId, userVerifyId, uploadFile);
46
+        return responseBean;
47
+
48
+    }
49
+
50
+
51
+    @RequestMapping(value = "/face", method = RequestMethod.PUT)
52
+    @ApiOperation(value = "修改人脸" , notes = "修改人脸")
53
+    @ApiImplicitParams({
54
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userId", value = "用户Id"),
55
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userVerifyId", value = "房产审核Id"),
56
+            @ApiImplicitParam(dataTypeClass = MultipartFile.class, paramType = "form", name = "uploadFile", value = "图片"),
57
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
58
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
59
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
60
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
61
+    })
62
+    public ResponseBean updateFace(@RequestParam(value = "userId") Integer userId,
63
+                                @RequestParam(value = "userVerifyId") Integer userVerifyId,
64
+                                @RequestParam(value = "uploadFile") MultipartFile uploadFile) {
65
+
66
+        ResponseBean responseBean = new ResponseBean();
67
+        responseBean = faceServiceI.updateFace(userId, userVerifyId, uploadFile);
68
+        return responseBean;
69
+
70
+    }
71
+
72
+    @RequestMapping(value = "/face", method = RequestMethod.DELETE)
73
+    @ApiOperation(value = "删除人脸" , notes = "删除人脸")
74
+    @ApiImplicitParams({
75
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userId", value = "用户Id"),
76
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userVerifyId", value = "房产审核Id"),
77
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
78
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
79
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
80
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
81
+    })
82
+    public ResponseBean deleteFace(@RequestParam(value = "userId") Integer userId,
83
+                                   @RequestParam(value = "userVerifyId") Integer userVerifyId) {
84
+
85
+        ResponseBean responseBean = new ResponseBean();
86
+        responseBean = faceServiceI.deleteFace(userId, userVerifyId);
87
+        return responseBean;
88
+
89
+    }
90
+
91
+
92
+    @RequestMapping(value = "/face", method = RequestMethod.GET)
93
+    @ApiOperation(value = "查询人脸信息" , notes = "查询人脸信息")
94
+    @ApiImplicitParams({
95
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "userId", value = "用户Id"),
96
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "userVerifyId", value = "房产审核Id"),
97
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
98
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
99
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
100
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
101
+    })
102
+    public ResponseBean getTaFaceByUserId(@RequestParam(value = "userId") Integer userId,
103
+                                   @RequestParam(value = "userVerifyId") Integer userVerifyId) {
104
+
105
+        ResponseBean responseBean = new ResponseBean();
106
+        responseBean = faceServiceI.getTaFaceByUserId(userId, userVerifyId);
107
+        return responseBean;
108
+
109
+    }
110
+
111
+}

+ 14
- 2
CODE/foreign-service/src/main/java/com/community/huiju/controller/TaUserController.java View File

@@ -35,6 +35,10 @@ public class TaUserController extends BaseController {
35 35
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "idCard", value = "身份证"),
36 36
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "gender", value = "性别 1:男   2:女"),
37 37
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "phone", value = "手机号"),
38
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
39
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
40
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
41
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
38 42
     })
39 43
     public ResponseBean addUser(@RequestParam(value = "userName") String userName,
40 44
                                 @RequestParam(value = "idCard") String idCard,
@@ -52,6 +56,10 @@ public class TaUserController extends BaseController {
52 56
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "idCard", value = "身份证"),
53 57
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "gender", value = "性别 1:男   2:女"),
54 58
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "phone", value = "手机号"),
59
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
60
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
61
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
62
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
55 63
     })
56 64
     public ResponseBean updateUser(@PathVariable(value = "userId") Integer userId,
57 65
                                 @RequestParam(value = "userName", required = false) String userName,
@@ -65,7 +73,11 @@ public class TaUserController extends BaseController {
65 73
     @RequestMapping(value = "/user/{userId}", method = RequestMethod.GET)
66 74
     @ApiOperation(value = "根据用户ID查询", notes = "根据用户ID查询")
67 75
     @ApiImplicitParams({
68
-            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "path", name = "userId", value = "用户id")
76
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "path", name = "userId", value = "用户id"),
77
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
78
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
79
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
80
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
69 81
     })
70 82
     public ResponseBean updateUser(@PathVariable(value = "userId") Integer userId){
71 83
         ResponseBean responseBean = iTaUserService.getTaUser(userId);
@@ -73,7 +85,7 @@ public class TaUserController extends BaseController {
73 85
     }
74 86
 
75 87
     @RequestMapping(value = "/user", method = RequestMethod.GET)
76
-    @ApiOperation(value = "根据用户ID查询", notes = "根据用户ID查询")
88
+    @ApiOperation(value = "根据用户手机号查询", notes = "根据用户手机号查询")
77 89
     @ApiImplicitParams({
78 90
             @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "phone", value = "手机号")
79 91
     })

+ 13
- 1
CODE/foreign-service/src/main/java/com/community/huiju/controller/TaUserVerifyController.java View File

@@ -39,6 +39,10 @@ public class TaUserVerifyController extends BaseController {
39 39
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "unitId", value = "单元Id"),
40 40
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "levelId", value = "楼层Id"),
41 41
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "roomNoId", value = "房间号Id"),
42
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
43
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
44
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
45
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
42 46
 
43 47
     })
44 48
     public ResponseBean addUserVerify(@RequestParam(value = "userId") Integer userId,
@@ -59,6 +63,10 @@ public class TaUserVerifyController extends BaseController {
59 63
     @ApiImplicitParams({
60 64
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "form", name = "userId", value = "用户Id"),
61 65
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "path", name = "userVerifyId", value = "房产审核Id"),
66
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "appid", value = "appid"),
67
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "datetime", value = "时间戳"),
68
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "encrypt", value = "加密方式"),
69
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "form", name = "sign", value = "签名"),
62 70
     })
63 71
     public ResponseBean deleteUserVerify(@RequestParam(value = "userId") Integer userId,
64 72
                                          @PathVariable(value = "userVerifyId") Integer userVerifyId) {
@@ -71,7 +79,11 @@ public class TaUserVerifyController extends BaseController {
71 79
     @ApiOperation(value = "查询用户的房产关联关系列表", notes = "查询用户的房产关联关系列表")
72 80
     @ApiImplicitParams({
73 81
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "userId", value = "用户Id"),
74
-            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "communityId", value = "小区Id")
82
+            @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "communityId", value = "小区Id"),
83
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
84
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
85
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
86
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
75 87
     })
76 88
     public ResponseBean getUserVerify(@RequestParam(value = "userId") Integer userId,
77 89
                                       @RequestParam(value = "communityId") Integer communityId) {

+ 4
- 0
CODE/foreign-service/src/main/java/com/community/huiju/controller/TpAddressController.java View File

@@ -50,6 +50,10 @@ public class TpAddressController extends BaseController {
50 50
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "buildingId", value = "楼栋id"),
51 51
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "unitId", value = "单元id"),
52 52
             @ApiImplicitParam(dataTypeClass = Integer.class, paramType = "query", name = "levelId", value = "楼层id"),
53
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
54
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
55
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
56
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
53 57
     })
54 58
     public ResponseBean getBuildingInfo(@RequestParam("communityId") Integer communityId,
55 59
                                         @RequestParam(value = "phaseId", required = false) Integer phaseId,

+ 5
- 1
CODE/foreign-service/src/main/java/com/community/huiju/controller/TpEquipmentController.java View File

@@ -32,7 +32,11 @@ public class TpEquipmentController extends BaseController {
32 32
     @ApiImplicitParams({
33 33
             @ApiImplicitParam(paramType = "path",dataType = "Integer",name = "communityId",value = "小区ID"),
34 34
             @ApiImplicitParam(paramType = "query",dataType = "Integer",name = "pageNo",value = "第几页"),
35
-            @ApiImplicitParam(paramType = "query",dataType = "Integer",name = "pageSize",value = "一页多少行")
35
+            @ApiImplicitParam(paramType = "query",dataType = "Integer",name = "pageSize",value = "一页多少行"),
36
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "appid", value = "appid"),
37
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "datetime", value = "时间戳"),
38
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "encrypt", value = "加密方式"),
39
+            @ApiImplicitParam(dataTypeClass = String.class, paramType = "query", name = "sign", value = "签名"),
36 40
     })
37 41
     @RequestMapping(value = "/equipment/monitoring/{communityId}",method = RequestMethod.GET)
38 42
     public ResponseBean getListHLS(@PathVariable("communityId") Integer communityId,

+ 1
- 7
CODE/foreign-service/src/main/java/com/community/huiju/dao/TaFaceMapper.java View File

@@ -16,18 +16,12 @@ public interface TaFaceMapper extends BaseMapper<TaFace> {
16 16
 
17 17
 
18 18
     /**
19
-     * 查看当前用户信息
19
+     * 查看当前房产信息
20 20
      * @param userVerifyId
21 21
      * @return
22 22
      */
23 23
     TaFace getByUserVerifyId(@Param("userVerifyId") Integer userVerifyId);
24 24
 
25
-    /**
26
-     * 查看当前信息
27
-     * @param id
28
-     * @return
29
-     */
30
-    TaFace getById(@Param("id")Integer id);
31 25
 
32 26
     /**
33 27
      * 根据审核ID删除人脸信息

+ 10
- 1
CODE/foreign-service/src/main/java/com/community/huiju/enums/ResponseErrorsMessages.java View File

@@ -24,7 +24,16 @@ public enum ResponseErrorsMessages {
24 24
     NO_ROOM_NO(1012, "户号不存在!"),
25 25
     NOT_USER_VERIFY(1013, "无房产关联关系!"),
26 26
     NOT_USER_FACE(1014, "未录入人脸信息!"),
27
-    NOT_PUSH_FACE(1015, "人脸推送失敗!")
27
+    NOT_PUSH_FACE(1015, "人脸推送失敗!"),
28
+    NOT_VERIFY(1016, "当前房产审核记录不存在!"),
29
+    NOT_IDENTITY_VERIFY(1017, "您的身份已停用!"),
30
+    EXIST_FACE(1018, "人脸信息已存在!"),
31
+    NOT_USER_VERIFY_1(1019, "房产审核未通过!"),
32
+    DELETE_FACE(1020, "人脸删除失败!"),
33
+    FACE_ERROR(1021, "请录入正确的人脸图片!"),
34
+    SIGN_ERROR(1022, "签名错误!"),
35
+    SIGN_DATETIME_ERROR(1023, "签名已过期!"),
36
+    SIGN_ENCRYPT_MD5_ERROR(1024, "未使用md5加密方式加密!")
28 37
     ;
29 38
 
30 39
 

+ 123
- 0
CODE/foreign-service/src/main/java/com/community/huiju/filter/SignFilter.java View File

@@ -0,0 +1,123 @@
1
+package com.community.huiju.filter;
2
+
3
+import com.alibaba.fastjson.JSONObject;
4
+import com.community.huiju.common.base.ResponseBean;
5
+import com.community.huiju.common.perproties.DaSuProperties;
6
+import com.community.huiju.common.sign.DaSuSign;
7
+import com.community.huiju.enums.ResponseErrorsMessages;
8
+import com.community.huiju.exception.WisdomException;
9
+import com.google.common.collect.Maps;
10
+import lombok.extern.slf4j.Slf4j;
11
+import org.apache.commons.lang3.StringUtils;
12
+import org.springframework.beans.factory.annotation.Autowired;
13
+import org.springframework.stereotype.Component;
14
+import org.springframework.util.AntPathMatcher;
15
+
16
+import javax.servlet.*;
17
+import javax.servlet.http.HttpServletRequest;
18
+import java.io.IOException;
19
+import java.io.PrintWriter;
20
+import java.time.LocalDateTime;
21
+import java.time.ZoneId;
22
+import java.time.ZoneOffset;
23
+import java.util.Map;
24
+import java.util.TreeMap;
25
+
26
+/**
27
+ *
28
+ * 签名拦截器
29
+ *
30
+ * @author weiximei on 2019-05-17
31
+ */
32
+@Component
33
+@Slf4j
34
+public class SignFilter implements Filter {
35
+
36
+    private String [] urls = new String[]{
37
+            "/**/swagger-ui.html/**","/**/springfox-swagger-ui/**",
38
+            "/**/swagger-resources/**","/**/v2/api-docs/**",
39
+            "/**/swagger-resources/**"
40
+    };
41
+
42
+    private AntPathMatcher antPathMatcher = new AntPathMatcher();
43
+
44
+    @Autowired
45
+    private DaSuProperties daSuProperties;
46
+
47
+    @Override
48
+    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
49
+
50
+        HttpServletRequest httpServletRequest = (HttpServletRequest) request;
51
+        for (String url : urls) {
52
+            if (antPathMatcher.match(url ,httpServletRequest.getRequestURI())) {
53
+                chain.doFilter(request, response);
54
+                return;
55
+            }
56
+        }
57
+
58
+        ResponseBean responseBean = new ResponseBean();
59
+        TreeMap<String, Object> treeMap = Maps.newTreeMap();
60
+
61
+        try {
62
+            // 加密方式
63
+            String encrypt = request.getParameter("encrypt");
64
+            if (!"md5".equals(encrypt.toLowerCase())) {
65
+                responseBean.addError(ResponseErrorsMessages.SIGN_ENCRYPT_MD5_ERROR.getCode(), ResponseErrorsMessages.SIGN_ENCRYPT_MD5_ERROR.getMsg());
66
+                responseWriter(response, responseBean);
67
+                return;
68
+            }
69
+
70
+            String datetime = request.getParameter("datetime");
71
+            LocalDateTime localDateTime =LocalDateTime.ofEpochSecond(Long.valueOf(datetime),0, ZoneOffset.ofHours(8));
72
+            localDateTime.plusMinutes(10);
73
+
74
+            // 校验签名是否过期
75
+            if (StringUtils.isBlank(datetime) || System.currentTimeMillis() > Long.valueOf(datetime)) {
76
+                responseBean.addError(ResponseErrorsMessages.SIGN_DATETIME_ERROR.getCode(), ResponseErrorsMessages.SIGN_DATETIME_ERROR.getMsg());
77
+                responseWriter(response, responseBean);
78
+                return;
79
+            }
80
+        } catch (Exception e) {
81
+            responseBean.addError(ResponseErrorsMessages.SIGN_ERROR.getCode(), ResponseErrorsMessages.SIGN_ERROR.getMsg());
82
+            responseWriter(response, responseBean);
83
+            return;
84
+        }
85
+
86
+
87
+
88
+
89
+        // 获取请求的所有参数
90
+        Map<String, String[]> parameterMap = request.getParameterMap();
91
+        parameterMap.entrySet().forEach(e-> {
92
+            String key = e.getKey();
93
+            String [] value = e.getValue();
94
+            if (!"sign".equals(key) && !"appSecret".equals(key)) {
95
+                treeMap.put(key, value[0]);
96
+            }
97
+        });
98
+
99
+        String sign = DaSuSign.createSign(treeMap, daSuProperties.getAppSecret());
100
+        String parameterSign = request.getParameter("sign");
101
+
102
+        if (DaSuSign.isMD5Sign(sign, parameterSign)) {
103
+            chain.doFilter(request, response);
104
+        } else {
105
+            responseBean.addError(ResponseErrorsMessages.SIGN_ERROR.getCode(), ResponseErrorsMessages.SIGN_ERROR.getMsg());
106
+            responseWriter(response, responseBean);
107
+        }
108
+
109
+    }
110
+
111
+    private void responseWriter(ServletResponse response, ResponseBean responseBean) {
112
+        response.setContentType("application/json;charset=UTF-8");
113
+        PrintWriter writer = null;
114
+        try {
115
+            writer = response.getWriter();
116
+        } catch (IOException e) {
117
+            e.printStackTrace();
118
+        }
119
+        writer.write(JSONObject.toJSONString(responseBean));
120
+        writer.flush();
121
+        writer.close();
122
+    }
123
+}

+ 6
- 6
CODE/foreign-service/src/main/java/com/community/huiju/service/FaceServiceI.java View File

@@ -29,17 +29,17 @@ public interface FaceServiceI extends IService<TaFace> {
29 29
 
30 30
     /**
31 31
      * 当前登入人是否有人脸信息
32
-     * @param userElement
33
-     * @param otherUserId
32
+     * @param userId
33
+     * @param userVerifyId
34 34
      * @return
35 35
      */
36
-    ResponseBean getTaFaceByUserId(UserElement userElement, Integer otherUserId);
36
+    ResponseBean getTaFaceByUserId(Integer userId, Integer userVerifyId);
37 37
 
38 38
     /**
39 39
      * 删除人脸
40
-     * @param userElement
41
-     * @param otherUserId
40
+     * @param userId
41
+     * @param userVerifyId
42 42
      * @return
43 43
      */
44
-    ResponseBean deleteFace(UserElement userElement, Integer otherUserId, Integer verifyId);
44
+    ResponseBean deleteFace(Integer userId, Integer userVerifyId);
45 45
 }

+ 37
- 49
CODE/foreign-service/src/main/java/com/community/huiju/service/impl/FaceServicelimpl.java View File

@@ -34,7 +34,7 @@ import java.util.Map;
34 34
 import java.util.stream.Collectors;
35 35
 
36 36
 @Service("faceServicel")
37
-@Transactional
37
+@Transactional(rollbackFor = Exception.class)
38 38
 @Slf4j
39 39
 public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> implements FaceServiceI {
40 40
 
@@ -106,9 +106,9 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
106 106
     /**
107 107
      * 修改人脸信息
108 108
      *
109
-     * @param userElement 登入人ID
109
+     * @param userId 登入人ID
110
+     * @param userVerifyId 房产审核id
110 111
      * @param uploadFile
111
-     * @param otherUserId 关联家属或者租客ID
112 112
      * @return
113 113
      */
114 114
     @Override
@@ -145,9 +145,9 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
145 145
         face.setUpdateDate(new Date());
146 146
         ResponseBean resps = checKout(faceImg, face, false, uploadFile, userId, userVerify.getCommunityId(), userVerify.getRoomNoId(), userVerify.getUnitId(), tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret(), tpEquipmentTree.getHttpServer());
147 147
         if (resps.getCode().equals("0")) {
148
-            resps.addSuccess((Object) faceImg);
148
+            resps.addSuccess(face);
149 149
         } else {
150
-            resps.addError(resps.getMessage());
150
+            resps.addError(resps.getCode(), resps.getMessage());
151 151
         }
152 152
         return resps;
153 153
     }
@@ -173,7 +173,6 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
173 173
         if (user.getHkUserId() == null) {
174 174
             log.error("本地库人员ID:{}  的海康人员ID不存在", userId);
175 175
             throw new WisdomException(ResponseErrorsMessages.NOT_PUSH_FACE.getCode(), ResponseErrorsMessages.NOT_PUSH_FACE.getMsg());
176
-            return responseBean;
177 176
         }
178 177
         AESDecode aesd = new AESDecode();
179 178
         String body = "{\"type\": \"0\", \"image_url\":\"" + faceImg + "\"}";
@@ -196,7 +195,7 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
196 195
                 } else {
197 196
                     taFaceMapper.updateById(taFace);
198 197
                 }
199
-                responseBean.addSuccess("操作成功");
198
+                responseBean.addSuccess(taFace);
200 199
 
201 200
                 // 设备树
202 201
                 TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(communityId);
@@ -235,12 +234,12 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
235 234
 //                visualList.add("10010100000");
236 235
                 HKOpenApi.visualIntercom(tpEquipmentTree.getOpUserUuid(), 1, userIdList, visualList, tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret(), tpEquipmentTree.getHttpServer());
237 236
             } else {
238
-                responseBean.addError("请录入正确图片");
237
+                responseBean.addError(ResponseErrorsMessages.FACE_ERROR.getCode(), ResponseErrorsMessages.FACE_ERROR.getMsg());
239 238
             }
240 239
         } catch (Exception e) {
241 240
             e.printStackTrace();
242 241
             log.error("海康人脸推送失敗! {}", e);
243
-            throw new RuntimeException("海康人脸推送失敗!");
242
+            throw new WisdomException(ResponseErrorsMessages.NOT_PUSH_FACE.getCode(), ResponseErrorsMessages.NOT_PUSH_FACE.getMsg());
244 243
         }
245 244
         return responseBean;
246 245
     }
@@ -264,41 +263,26 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
264 263
      * 当前登入人是否有人脸信息
265 264
      */
266 265
     @Override
267
-    public ResponseBean getTaFaceByUserId(UserElement userElement, Integer otherUserId) {
266
+    public ResponseBean getTaFaceByUserId(Integer userId, Integer userVerifyId) {
268 267
         ResponseBean responseBean = new ResponseBean();
269
-        Integer userVerifyId = userElement.getUserVerifyId();
270 268
 
271
-        /**当otherUserId不为空时判断它是否是业主下的租客或者家属*/
272
-        if (null != otherUserId) {
273
-            TaUserVerify userVerify = getTaFaceParentId(userElement, otherUserId);
274
-            userVerifyId = userVerify.getUserVerifyId();
269
+        TaUserVerify userVerify = taUserVerifyMapper.selectByUserIdAndUserVerifyId(userId, userVerifyId);
270
+        if (null == userVerify) {
271
+            responseBean.addError(ResponseErrorsMessages.NOT_USER_VERIFY.getCode(), ResponseErrorsMessages.NOT_USER_VERIFY.getMsg());
272
+            return responseBean;
275 273
         }
274
+
275
+
276 276
         TaFace face = taFaceMapper.getByUserVerifyId(userVerifyId);
277 277
         if (null != face) {
278 278
             responseBean.addSuccess(face);
279 279
             return responseBean;
280 280
         }
281
-        responseBean.addError("当前用户暂无人脸图片");
281
+        responseBean.addError(ResponseErrorsMessages.NOT_USER_FACE.getCode(), ResponseErrorsMessages.NOT_USER_FACE.getMsg());
282 282
         return responseBean;
283 283
 
284 284
     }
285 285
 
286
-    /**
287
-     * 判断当前用户下的人员关系(家属,租客)
288
-     */
289
-    public TaUserVerify getTaFaceParentId(UserElement userElement, Integer otherUserId) {
290
-        // 根据 家属/租客 的id, 和 当前的房产信息进行查询是否有值,有值就说明是 家属/租客
291
-        List<TaUserVerify> todUserVerify = taUserVerifyMapper.selectCommunityAndAddressAndVerifyStatus(otherUserId, userElement.getCommunityId(), userElement.getPhaseId(), userElement.getBuildingId(), userElement.getUnitId(), userElement.getLevelId(), userElement.getRoomNoId(), 1);
292
-        // 判断 家属或者租客 属不属于这个业主的下面
293
-        if (null == todUserVerify || todUserVerify.size() == 0) {
294
-            throw new WisdomException("您输入的家属或租户ID有误或审核未通过!");
295
-        }
296
-//        if (!Constant.VERIFY_STATUS.equals(todUserVerify.get(0).getVerifyStatus())) {
297
-//            throw new WisdomException("用户房产审核未通过!");
298
-//        }
299
-
300
-        return todUserVerify.get(0);
301
-    }
302 286
 
303 287
     /**
304 288
      * 得到当前图片
@@ -321,14 +305,14 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
321 305
 
322 306
         TaUserVerify userVerify = taUserVerifyMapper.selectById(userVerifyId);
323 307
         if (null == userVerify) {
324
-            response.addError("当前房产审核记录不存在!");
308
+            response.addError(ResponseErrorsMessages.NOT_VERIFY.getCode(), ResponseErrorsMessages.NOT_VERIFY.getMsg());
325 309
             return response;
326 310
         }
327 311
         TaUser taUser = taUserMapper.selectById(userid);
328 312
 
329 313
         //身份为家属租客,状态为已停用
330 314
         if (null != taUser && !Constant.EFFECTIVE_STATUS.equals(taUser.getStatus())) {
331
-            response.addError("9996", "您的身份已停用,请联系物业");
315
+            response.addError(ResponseErrorsMessages.NOT_IDENTITY_VERIFY.getCode(), ResponseErrorsMessages.NOT_IDENTITY_VERIFY.getMsg());
332 316
             return response;
333 317
         }
334 318
 
@@ -339,26 +323,26 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
339 323
             if (Constant.EFFECTIVE_STATUS.equals(taUser.getStatus())) {
340 324
                 ResponseBean responseBean = checKout(faceImg, taFace, isA, uploadFile, userid, userVerify.getCommunityId(), userVerify.getRoomNoId(), userVerify.getUnitId(),tpEquipmentTree.getAppkey(), tpEquipmentTree.getSecret(), tpEquipmentTree.getHttpServer());
341 325
                 if (responseBean.getCode().equals("0")) {
342
-                    responseBean.addSuccess("图片录入成功");
326
+                    responseBean.addSuccess("人脸录入成功");
343 327
                 } else {
344
-                    responseBean.addError(responseBean.getMessage());
328
+                    responseBean.addError(responseBean.getCode(),responseBean.getMessage());
345 329
                 }
346 330
                 return responseBean;
347 331
             }
348 332
         }
349
-        response.addError("您的信息已存在");
333
+        response.addError(ResponseErrorsMessages.EXIST_FACE.getCode(), ResponseErrorsMessages.EXIST_FACE.getMsg());
350 334
         return response;
351 335
     }
352 336
 
353 337
     @Override
354
-    public ResponseBean deleteFace(UserElement userElement, Integer otherUserId, Integer verifyId) {
338
+    public ResponseBean deleteFace(Integer userId, Integer userVerifyId) {
355 339
         ResponseBean responseBean= new ResponseBean();
356
-        TaUserVerify taUserVerify= infoExist(userElement.getUserVerifyId());
340
+        TaUserVerify taUserVerify= infoExist(userVerifyId);
357 341
         if (null ==taUserVerify) {
358
-            responseBean.addError("房产审核未通过");
342
+            responseBean.addError(ResponseErrorsMessages.NOT_USER_VERIFY_1.getCode(), ResponseErrorsMessages.NOT_USER_VERIFY_1.getMsg());
359 343
             return responseBean;
360 344
         }
361
-            TaUser taUser = taUserMapper.selectById(taUserVerify.getUserId());
345
+        TaUser taUser = taUserMapper.selectById(taUserVerify.getUserId());
362 346
 
363 347
         // 设备树
364 348
         TpEquipmentTree tpEquipmentTree = tpEquipmentTreeMapper.selectByCommunityId(taUserVerify.getCommunityId());
@@ -401,11 +385,12 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
401 385
 
402 386
         if (object.get("errorCode").equals(1)){
403 387
             String errorMessage=  object.getString("errorMessage");
404
-            responseBean.addError(errorMessage);
388
+            log.info("删除人脸信息异常:{}", data);
389
+            responseBean.addError(ResponseErrorsMessages.DELETE_FACE.getCode(), ResponseErrorsMessages.DELETE_FACE.getMsg());
405 390
             return responseBean;
406 391
         }
407
-        Integer activeUser = otherUserId == null ? userElement.getUserVerifyId() : otherUserId;
408
-        taFaceMapper.deleteFace(activeUser);
392
+
393
+        taFaceMapper.deleteFace(userVerifyId);
409 394
         // 异动同步到设备
410 395
         Map<String,Object> appointJurisdictionMap = Maps.newHashMap();
411 396
         appointJurisdictionMap.put("appkey", tpEquipmentTree.getAppkey());
@@ -424,17 +409,20 @@ public class FaceServicelimpl  extends ServiceImpl<TaFaceMapper, TaFace> impleme
424 409
 
425 410
     }
426 411
 
427
-    /*校验房产是否审核通过*/
412
+    /**
413
+     * 校验房产是否审核通过
414
+     * @param verifyID
415
+     * @return
416
+     */
428 417
     public TaUserVerify infoExist(Integer verifyID){
429
-        /*查询当前的房产ID*/
430
-        TaUserVerify taUserVerify = null;
431
-      if (!"".equals(verifyID)) {
418
+      TaUserVerify taUserVerify = null;
419
+      if (null != verifyID) {
432 420
         taUserVerify = taUserVerifyMapper.selectById(verifyID);
433 421
       }
434 422
       if (null!= taUserVerify && taUserVerify.getVerifyStatus().equals("1")) {
435 423
           return taUserVerify;
436 424
       }
437
-      return  null;
425
+      return  taUserVerify;
438 426
     }
439 427
 }
440 428
 

+ 12
- 0
CODE/foreign-service/src/main/resources/mapper/TaFaceMapper.xml View File

@@ -2,4 +2,16 @@
2 2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3 3
 <mapper namespace="com.community.huiju.dao.TaFaceMapper">
4 4
 
5
+    <select id="getByUserVerifyId" resultType="com.community.huiju.model.TaFace" parameterType="java.lang.Integer">
6
+        select
7
+        *
8
+        from ta_face
9
+        where ta_user_verify_id = #{userVerifyId,jdbcType=INTEGER}
10
+    </select>
11
+
12
+    <delete id="deleteFace" >
13
+        delete from ta_face
14
+        where ta_user_verify_id = #{verifyId}
15
+    </delete>
16
+
5 17
 </mapper>

+ 1
- 1
CODE/foreign-service/src/main/resources/mapper/TaUserVerifyMapper.xml View File

@@ -4,7 +4,7 @@
4 4
 
5 5
     <select id="selectCommunityAndAddressAndVerifyStatus" resultType="com.community.huiju.model.TaUserVerify">
6 6
         select
7
-        <include refid="Base_Column_List"/>
7
+        *
8 8
         from ta_user_verify
9 9
         where community_id = #{communityId,jdbcType=INTEGER}
10 10
         and user_id = #{userId,jdbcType=INTEGER}

+ 6
- 2
CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/TicketController.java View File

@@ -167,8 +167,12 @@ public class TicketController extends BaseController {
167 167
 
168 168
     @ApiOperation(value = "物业,门卫,领导电话", notes = "物业,门卫,领导电话")
169 169
     @RequestMapping(value = "/allTpAnnouncementTel", method = RequestMethod.GET)
170
-    public ResponseBean getTpAnnouncementTel() {
171
-        ResponseBean agreement = agreementServicel.getTpAnnouncementTel();
170
+    @ApiImplicitParams({
171
+            @ApiImplicitParam(paramType = "header",dataType = "String",name = "X-Auth-Token",value = "Token")
172
+    })
173
+    public ResponseBean getTpAnnouncementTel(HttpSession session) {
174
+        UserElement userElement = getUserElement(session);
175
+        ResponseBean agreement = agreementServicel.getTpAnnouncementTel(userElement);
172 176
         return agreement;
173 177
     }
174 178
 

+ 2
- 2
CODE/smart-community/app-api/src/main/java/com/community/huiju/controller/WxPayController.java View File

@@ -191,10 +191,10 @@ public class WxPayController {
191 191
 	@ApiOperation(value = "取消支付", notes = "取消支付")
192 192
 	@ApiImplicitParams({
193 193
 			@ApiImplicitParam(paramType = "path", dataType = "String", name = "outTradeNo", value = "订单号"),
194
-			@ApiImplicitParam(paramType = "form", dataType = "String", name = "outTradeNo", value = "type: 类型(car 车缴费, bill 物业缴费)"),
194
+			@ApiImplicitParam(paramType = "query", dataType = "String", name = "type", value = "type: 类型(car 车缴费, bill 物业缴费)"),
195 195
 			@ApiImplicitParam(paramType = "header",dataType = "String",name = "X-Auth-Token",value = "Token")
196 196
 	})
197
-	@RequestMapping(value = "/wxCancelPay/{outTradeNo}",method = RequestMethod.POST)
197
+	@RequestMapping(value = "/wxCancelPay/{outTradeNo}",method = RequestMethod.GET)
198 198
 	public ResponseBean wxCancelPay(@PathVariable("outTradeNo") String outTradeNo, @RequestParam("type") String type,HttpSession session){
199 199
 		ResponseBean responseBean = new ResponseBean();
200 200
 		try {

+ 1
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TaUserLicenseOrderMapper.java View File

@@ -28,7 +28,7 @@ public interface TaUserLicenseOrderMapper {
28 28
      * @return
29 29
      */
30 30
     @ResultMap("BaseResultMap")
31
-    @Select("select * from ta_user_license_order where community_id = #{communityId} and ta_user_id = #{userId} and order_status = 1")
31
+    @Select("select * from ta_user_license_order where community_id = #{communityId} and ta_user_id = #{userId} and order_status = 1 order by update_date DESC")
32 32
     List<TaUserLicenseOrder> selectRecords(@Param("communityId") Integer communityId, @Param("userId") Integer userId);
33 33
 
34 34
     /**

+ 2
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/dao/TpannouncementTelMapper.java View File

@@ -3,9 +3,10 @@ package com.community.huiju.dao;
3 3
 
4 4
 import com.community.huiju.model.TpannouncementTel;
5 5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
6 7
 
7 8
 import java.util.List;
8 9
 @Mapper
9 10
 public interface TpannouncementTelMapper {
10
-    List<TpannouncementTel> getTpannouncementTel();
11
+    List<TpannouncementTel> getTpannouncementTel(@Param("communityId") Integer communityId);
11 12
 }

+ 4
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/AgreementServicel.java View File

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.service;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.commom.session.UserElement;
4 5
 import com.community.huiju.model.TaAgreement;
5 6
 
6 7
 import java.util.List;
@@ -30,7 +31,9 @@ public interface AgreementServicel {
30 31
 
31 32
     /**
32 33
      * 物业电话/门卫电话/领导电话
34
+     *
35
+     * @param userElement
33 36
      * @return
34 37
      */
35
-    ResponseBean getTpAnnouncementTel();
38
+    ResponseBean getTpAnnouncementTel(UserElement userElement);
36 39
 }

+ 3
- 2
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/AgreementServiceimpl.java View File

@@ -1,6 +1,7 @@
1 1
 package com.community.huiju.service.impl;
2 2
 
3 3
 import com.community.commom.mode.ResponseBean;
4
+import com.community.commom.session.UserElement;
4 5
 import com.community.huiju.dao.TaAgreementMapper;
5 6
 import com.community.huiju.dao.TpannouncementTelMapper;
6 7
 import com.community.huiju.model.TaAgreement;
@@ -62,9 +63,9 @@ public class AgreementServiceimpl implements AgreementServicel {
62 63
     }
63 64
 
64 65
     @Override
65
-    public ResponseBean getTpAnnouncementTel() {
66
+    public ResponseBean getTpAnnouncementTel(UserElement userElement) {
66 67
         ResponseBean responseBody = new ResponseBean();
67
-        List<TpannouncementTel> tt = tpannouncementTelMapper.getTpannouncementTel();
68
+        List<TpannouncementTel> tt = tpannouncementTelMapper.getTpannouncementTel(userElement.getCommunityId());
68 69
         responseBody.addSuccess(tt);
69 70
         return responseBody;
70 71
     }

+ 2
- 1
CODE/smart-community/app-api/src/main/java/com/community/huiju/service/impl/TaUserLicenseServiceImpl.java View File

@@ -60,16 +60,17 @@ public class TaUserLicenseServiceImpl implements ITaUserLicenseService {
60 60
         int rows = 0;
61 61
         if (null == taUserLicense.getId()) {
62 62
             rows = taUserLicenseMapper.insertSelective(taUserLicense);
63
+            responseBean.addSuccess(taUserLicense);
63 64
         } else {
64 65
             taUserLicense.setUpdateUser(userElement.getId());
65 66
             taUserLicense.setUpdateDate(new Date());
66 67
             rows = taUserLicenseMapper.updateByPrimaryKeySelective(taUserLicense);
68
+            responseBean.addSuccess("当前小区已关联此车牌");
67 69
         }
68 70
 
69 71
 
70 72
         if (rows > 0) {
71 73
             taUserLicense.setUnitPrice(String.valueOf(Double.valueOf(taUserLicense.getUnitPrice()) / 100));
72
-            responseBean.addSuccess(taUserLicense);
73 74
             return responseBean;
74 75
         }
75 76
 

+ 1
- 2
CODE/smart-community/app-api/src/main/resources/mapper/TpannouncementTelMapper.xml View File

@@ -19,7 +19,6 @@
19 19
     select
20 20
     <include refid="Base_Column_List" />
21 21
     from tp_announcement_tel
22
-
23
-
22
+    where community_id = #{communityId}
24 23
   </select>
25 24
 </mapper>