顾绍勇 5 anni fa
parent
commit
78ef1d0ba1

+ 6
- 0
src/main/java/com/huiju/estateagents/controller/TaQrcodeController.java Vedi File

@@ -8,6 +8,7 @@ import com.huiju.estateagents.common.CommConstant;
8 8
 import com.huiju.estateagents.entity.TaQrcode;
9 9
 import com.huiju.estateagents.service.IMiniAppService;
10 10
 import com.huiju.estateagents.service.ITaQrcodeService;
11
+import org.apache.commons.lang3.StringUtils;
11 12
 import org.slf4j.Logger;
12 13
 import org.slf4j.LoggerFactory;
13 14
 import org.springframework.beans.factory.annotation.Autowired;
@@ -76,6 +77,11 @@ public class TaQrcodeController extends BaseController {
76 77
     public ResponseBean saveQrcode(@RequestBody TaQrcode taQrcode, HttpServletRequest request) {
77 78
         ResponseBean responseBean = new ResponseBean();
78 79
         try {
80
+            // 校验参数
81
+            if (StringUtils.isBlank(taQrcode.getTargetId()) || StringUtils.isBlank(taQrcode.getTargetType())) {
82
+                responseBean.addError("参数错误");
83
+                return responseBean;
84
+            }
79 85
             responseBean = iTaQrcodeService.saveQrcode(taQrcode, getUserId(request), getOrgId(request));
80 86
         } catch (Exception e) {
81 87
             e.printStackTrace();

+ 3
- 2
src/main/java/com/huiju/estateagents/service/impl/TaQrcodeServiceImpl.java Vedi File

@@ -92,6 +92,7 @@ public class TaQrcodeServiceImpl extends ServiceImpl<TaQrcodeMapper, TaQrcode> i
92 92
         qrcodeQueryWrapper.eq(taQrcode.getChannelId() != null, "channel_id", taQrcode.getChannelId());
93 93
         qrcodeQueryWrapper.eq("target_type", taQrcode.getTargetType());
94 94
         qrcodeQueryWrapper.eq("target_id", taQrcode.getTargetId());
95
+        qrcodeQueryWrapper.gt("status", CommConstant.STATUS_DELETE);
95 96
         TaQrcode taQrCodeCheck = taQrcodeMapper.selectOne(qrcodeQueryWrapper);
96 97
         if (taQrCodeCheck != null) {
97 98
             responseBean.addError("请勿重复提交");
@@ -115,7 +116,7 @@ public class TaQrcodeServiceImpl extends ServiceImpl<TaQrcodeMapper, TaQrcode> i
115 116
 
116 117
         // 生成二维码
117 118
         String paramsStr = WxQrCodeUtils.generateSceneAndPage(taQrcode.getTargetType(), "",
118
-                taQrcode.getTargetId(), taQrcode.getTargetType(), taQrcode.getChannelId() + "", taQrcode.getQrCodeId() + "", taQrcode.getBuildingId());
119
+                taQrcode.getTargetId(), taQrcode.getTargetType(), String.valueOf(taQrcode.getChannelId()), String.valueOf(taQrcode.getQrCodeId()), taQrcode.getBuildingId());
119 120
         ResponseBean qrCodeResult = iMiniAppService.getQrCode(paramsStr, taMiniapp.getMiniappId());
120 121
         if (qrCodeResult != null && ResponseBean.CODE_SUCCESS == qrCodeResult.getCode()) {
121 122
             // 更新数据
@@ -209,7 +210,7 @@ public class TaQrcodeServiceImpl extends ServiceImpl<TaQrcodeMapper, TaQrcode> i
209 210
             case 3:
210 211
                 List<QrCodeNewPersonNum> records3 = taQrcodeMapper.getNewPersonsRecordExport(qrCodeId, orgId);
211 212
                 fileName = URLEncoder.encode("新增注册用户", "UTF-8");
212
-                response.setHeader("Content-disposition", "attachment;filename="+fileName+".xlsx");
213
+                response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
213 214
                 EasyExcel.write(response.getOutputStream(), QrCodeNewPersonNum.class).sheet("新增注册用户").doWrite(records3);
214 215
                 break;
215 216
             default:

+ 33
- 24
src/main/resources/mapper/TaQrcodeMapper.xml Vedi File

@@ -37,7 +37,7 @@
37 37
             ta_person_visit_record t
38 38
         WHERE
39 39
             t.org_id = #{orgId}
40
-            AND t.qrcode_id = #{qrCodeId}
40
+            AND t.qr_code_id = #{qrCodeId}
41 41
     </select>
42 42
 
43 43
     <select id="getVisitNum" resultType="java.lang.Integer">
@@ -47,7 +47,7 @@
47 47
             ta_person_visit_record t
48 48
         WHERE
49 49
             t.org_id = #{orgId}
50
-            AND t.qrcode_id = #{qrCodeId}
50
+            AND t.qr_code_id = #{qrCodeId}
51 51
     </select>
52 52
 
53 53
     <select id="getNewPersons" resultType="java.lang.Integer">
@@ -64,17 +64,17 @@
64 64
         SELECT
65 65
             t.*,
66 66
             IFNULL(t2.`name`,t2.nickname) userName,
67
-            t2.tel userTel,
68
-            t2.sex,
69
-            t2.city,
70
-            sum(t.record_id) accessCount
67
+            t2.phone userTel,
68
+            t2.gender sex,
69
+            t3.shortname city,
70
+            count(*) accessCount
71 71
         FROM
72 72
             ta_person_visit_record t
73
-            left join ta_person t2
74
-            on t.person_id = t2.person_id
73
+            left join ta_person t2 on t.person_id = t2.person_id
74
+            LEFT JOIN td_city t3 ON t2.city = t3.id
75 75
         WHERE
76 76
             t.org_id = #{orgId}
77
-            AND t.qrcode_id = #{qrCodeId}
77
+            AND t.qr_code_id = #{qrCodeId}
78 78
         GROUP BY
79 79
 	        t.person_id
80 80
     </select>
@@ -82,17 +82,18 @@
82 82
     <select id="getVisitPersonsRecordExport" resultType="com.huiju.estateagents.excel.QrCodeStatistics.QrCodeVisitPersonNum">
83 83
         SELECT
84 84
             IFNULL( t2.`name`, t2.nickname ) nickName,
85
-            t2.tel phone,
86
-            t2.sex gender,
87
-            t2.city province,
88
-            sum( t.record_id ) visitNum
85
+            t2.phone phone,
86
+            t2.gender gender,
87
+            t3.shortname province,
88
+            count( * ) visitNum
89 89
         FROM
90 90
             ta_person_visit_record t
91 91
             LEFT JOIN ta_person t2 ON t.person_id = t2.person_id
92
+            LEFT JOIN td_city t3 ON t2.city = t3.id
92 93
         WHERE
93 94
             t.org_id = #{orgId}
94 95
 
95
-            AND t.qrcode_id = #{qrCodeId}
96
+            AND t.qr_code_id = #{qrCodeId}
96 97
 
97 98
         GROUP BY
98 99
             t.person_id
@@ -102,30 +103,32 @@
102 103
         SELECT
103 104
             t.*,
104 105
             IFNULL( t2.`name`, t2.nickname ) userName,
105
-            t2.tel userTel,
106
-            t2.sex,
107
-            t2.city
106
+            t2.phone userTel,
107
+            t2.gender sex,
108
+            t3.shortname city
108 109
         FROM
109 110
             ta_person_visit_record t
110 111
             LEFT JOIN ta_person t2 ON t.person_id = t2.person_id
112
+            LEFT JOIN td_city t3 ON t2.city = t3.id
111 113
         WHERE
112 114
             t.org_id = #{orgId}
113
-            AND t.qrcode_id = #{qrCodeId}
115
+            AND t.qr_code_id = #{qrCodeId}
114 116
     </select>
115 117
 
116 118
     <select id="getVisitNumRecordExport" resultType="com.huiju.estateagents.excel.QrCodeStatistics.QrCodeVisitNum">
117 119
         SELECT
118 120
             IFNULL( t2.`name`, t2.nickname ) nickName,
119
-            t2.tel phone,
120
-            t2.sex gender,
121
-            t2.city province,
121
+            t2.phone phone,
122
+            t2.gender gender,
123
+            t3.shortname province,
122 124
 			t.visit_time visitTime
123 125
         FROM
124 126
             ta_person_visit_record t
125 127
             LEFT JOIN ta_person t2 ON t.person_id = t2.person_id
128
+            LEFT JOIN td_city t3 ON t2.city = t3.id
126 129
         WHERE
127 130
             t.org_id = #{orgId}
128
-            AND t.qrcode_id = #{qrCodeId}
131
+            AND t.qr_code_id = #{qrCodeId}
129 132
     </select>
130 133
 
131 134
     <select id="getNewPersonsRecord" resultType="com.huiju.estateagents.entity.TaCustomerFrom">
@@ -134,14 +137,17 @@
134 137
             t2.`name` userName,
135 138
             t2.phone userTel,
136 139
             t2.sex,
137
-            t2.city ,
140
+            t3.shortname city,
138 141
             t2.create_date registerTime
139 142
         FROM
140 143
             ta_customer_from t
141 144
             LEFT JOIN ta_recommend_customer t2 ON t.person_id = t2.person_id
145
+            LEFT JOIN td_city t3 ON t2.city = t3.id
142 146
         WHERE
143 147
             t.org_id = #{orgId}
144 148
             AND t.qr_code_id = #{qrCodeId}
149
+        GROUP BY
150
+	        t.customer_id
145 151
     </select>
146 152
 
147 153
     <select id="getNewPersonsRecordExport" resultType="com.huiju.estateagents.excel.QrCodeStatistics.QrCodeNewPersonNum">
@@ -149,14 +155,17 @@
149 155
             t2.`name` nickName,
150 156
             t2.phone,
151 157
             t2.sex gender,
152
-            t2.city province,
158
+            t3.shortname province,
153 159
             t.create_date registerTime
154 160
         FROM
155 161
             ta_customer_from t
156 162
             LEFT JOIN ta_recommend_customer t2 ON t.person_id = t2.person_id
163
+            LEFT JOIN td_city t3 ON t2.city = t3.id
157 164
         WHERE
158 165
             t.org_id = #{orgId}
159 166
             AND t.qr_code_id = #{qrCodeId}
167
+        GROUP BY
168
+	        t.customer_id
160 169
     </select>
161 170
 
162 171
 </mapper>