Procházet zdrojové kódy

Merge branch 'master' of http://git.ycjcjy.com/zhiyuxing/estateagents

魏熙美 před 5 roky
rodič
revize
113be7f8c4

+ 36
- 0
src/main/java/com/huiju/estateagents/common/CommConstant.java Zobrazit soubor

@@ -154,6 +154,42 @@ public class CommConstant {
154 154
 
155 155
     //=================  首屏广告 / 轮播图 end =======================
156 156
 
157
+    /**
158
+     * 客户报备
159
+     */
160
+    public static final String CUSTOMER_REPORT = "1";
161
+
162
+    /**
163
+     * 客户到访
164
+     */
165
+    public static final String CUSTOMER_VISITE = "2";
166
+
167
+    /**
168
+     * 客户认购
169
+     */
170
+    public static final String CUSTOMER_PREORDER = "3";
171
+
172
+    /**
173
+     * 客户签约
174
+     */
175
+    public static final String CUSTOMER_SIGNED = "4";
176
+
177
+
178
+    /**
179
+     * 待审核
180
+     */
181
+    public static final Integer VERIFY_READY = 0;
182
+
183
+    /**
184
+     * 审核同意
185
+     */
186
+    public static final Integer VERIFY_AGREE = 1;
187
+
188
+    /**
189
+     * 审核不同意
190
+     */
191
+    public static final Integer VERIFY_DISAGREE = 2;
192
+
157 193
     //=================  客户入口类型 start =======================
158 194
     /*
159 195
     * 自主进入

+ 1
- 2
src/main/java/com/huiju/estateagents/controller/TaCheckinController.java Zobrazit soubor

@@ -97,7 +97,6 @@ public class TaCheckinController extends BaseController {
97 97
      */
98 98
     @RequestMapping(value="/wx/taCheckin/activity/{activity}",method= RequestMethod.POST)
99 99
     public ResponseBean taCheckinAdd(@PathVariable String activity, HttpServletRequest request){
100
-        ResponseBean responseBean = new ResponseBean();
101 100
         String openid = JWTUtils.getSubject(request);
102 101
         List<TaPerson> taPersons = iTaPersonService.getPersonsByOpenId(openid);
103 102
         if (null == taPersons || taPersons.size() != 1) {
@@ -123,8 +122,8 @@ public class TaCheckinController extends BaseController {
123 122
                     return ResponseBean.error("保存失败",ResponseBean.ERROR_UNAVAILABLE);
124 123
                 }
125 124
             }
126
-
127 125
         }catch (Exception e){
126
+            e.printStackTrace();
128 127
             logger.error("taCheckinAdd -=- {}",e.toString());
129 128
             return ResponseBean.error("保存失败"+e.getMessage(),ResponseBean.ERROR_UNAVAILABLE);
130 129
         }

+ 13
- 5
src/main/java/com/huiju/estateagents/controller/TaPointsExchangeController.java Zobrazit soubor

@@ -152,15 +152,23 @@ public class TaPointsExchangeController extends BaseController {
152 152
 
153 153
     /**
154 154
      * 修改对象
155
-     * @param id  实体ID
156
-     * @param taPointsExchange 实体对象
155
+     * @param recId  实体ID
157 156
      * @return
158 157
      */
159
-    @RequestMapping(value="/taPointsExchange/{id}",method= RequestMethod.PUT)
160
-    public ResponseBean taPointsExchangeUpdate(@PathVariable Integer id,
161
-                                        @RequestBody TaPointsExchange taPointsExchange){
158
+    @RequestMapping(value="/admin/taPointsExchange/{recId}",method= RequestMethod.PUT)
159
+    public ResponseBean taPointsExchangeUpdate(@PathVariable Integer recId){
162 160
         ResponseBean responseBean = new ResponseBean();
163 161
         try {
162
+            TaPointsExchange taPointsExchange = iTaPointsExchangeService.getById(recId);
163
+            if (null == taPointsExchange){
164
+                responseBean.addError("找不到需要核销的商品");
165
+                return responseBean;
166
+            }
167
+            if (taPointsExchange.getStatus().equals(CommConstant.STATUS_NORMAL)){
168
+                responseBean.addError("此商品已经被领取");
169
+                return responseBean;
170
+            }
171
+            taPointsExchange.setStatus(CommConstant.STATUS_NORMAL);
164 172
             if (iTaPointsExchangeService.updateById(taPointsExchange)){
165 173
                 responseBean.addSuccess(taPointsExchange);
166 174
             }else {

+ 11
- 4
src/main/java/com/huiju/estateagents/entity/TaBuilding.java Zobrazit soubor

@@ -160,22 +160,29 @@ public class TaBuilding implements Serializable {
160 160
 
161 161
     private String buildingType;
162 162
 
163
-    private String serviceBuilding;
163
+    private String serviceCompany;
164 164
 
165 165
     private String serviceFee;
166 166
 
167 167
     private String decoration;
168 168
 
169
-    private String receivedDate;
169
+    private LocalDateTime receivedDate;
170 170
 
171
-    private String rightsYear;
171
+    private String preSalePermit;
172 172
 
173
-    private String familyNum;
173
+    private Integer rightsYear;
174
+
175
+    private Integer familyNum;
174 176
 
175 177
     private String parkingRate;
176 178
 
177 179
     private String volumeRate;
178 180
 
181
+    private Integer favorNum;
182
+    private Integer pvNum;
183
+    private Integer saveNum;
184
+    private Integer shareNum;
185
+
179 186
 
180 187
     /**
181 188
      * 图片

+ 1
- 1
src/main/java/com/huiju/estateagents/entity/TaPerson.java Zobrazit soubor

@@ -220,5 +220,5 @@ public class TaPerson implements Serializable {
220 220
 
221 221
     private String language;
222 222
 
223
-
223
+    private Integer saveNum;
224 224
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/entity/TaRecommendCustomer.java Zobrazit soubor

@@ -129,7 +129,7 @@ public class TaRecommendCustomer implements Serializable {
129 129
     @TableField(exist = false)
130 130
     private String consultTel;
131 131
 
132
-    private String verifyStatus;
132
+    private Integer verifyStatus;
133 133
 
134 134
     private String verifyRemark;
135 135
 

+ 3
- 0
src/main/java/com/huiju/estateagents/mapper/TaBuildingMapper.java Zobrazit soubor

@@ -6,6 +6,7 @@ import com.huiju.estateagents.entity.TaBuilding;
6 6
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
7 7
 import org.apache.ibatis.annotations.Mapper;
8 8
 import org.apache.ibatis.annotations.Param;
9
+import org.apache.ibatis.annotations.Update;
9 10
 
10 11
 import java.util.List;
11 12
 
@@ -26,6 +27,8 @@ public interface TaBuildingMapper extends BaseMapper<TaBuilding> {
26 27
      */
27 28
     List<TaBuilding> buildingList(IPage<TaBuilding> page, @Param("Name") String name, @Param("Code")String code);
28 29
 
30
+    @Update("UPDATE ta_building  SET ${field} = IFNULL(${field}, 0) + #{increment}  WHERE building_id = #{buildingId}")
31
+    void setFieldNum(@Param("buildingId") String buildingId, @Param("field") String field, @Param("increment") int increment);
29 32
 
30 33
     List<TaBuilding> buildingAll();
31 34
 

+ 2
- 0
src/main/java/com/huiju/estateagents/service/ITaRecommendCustomerService.java Zobrazit soubor

@@ -2,6 +2,7 @@ package com.huiju.estateagents.service;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.metadata.IPage;
4 4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.entity.TaPerson;
5 6
 import com.huiju.estateagents.entity.TaRecommendCustomer;
6 7
 import com.baomidou.mybatisplus.extension.service.IService;
7 8
 
@@ -34,4 +35,5 @@ public interface ITaRecommendCustomerService extends IService<TaRecommendCustome
34 35
     IPage<TaRecommendCustomer>getCustomersIRecommended(int pageNumber, int pageSize,String customerId,String building);
35 36
 
36 37
 
38
+    TaRecommendCustomer newByPerson(TaPerson person);
37 39
 }

+ 6
- 0
src/main/java/com/huiju/estateagents/service/impl/MiniAppServiceImpl.java Zobrazit soubor

@@ -12,6 +12,7 @@ import com.huiju.estateagents.mapper.TaMiniFormidsMapper;
12 12
 import com.huiju.estateagents.mapper.TaMiniappQrcodeMapper;
13 13
 import com.huiju.estateagents.service.IMiniAppService;
14 14
 import com.huiju.estateagents.service.ITaMiniFormidsService;
15
+import lombok.extern.slf4j.Slf4j;
15 16
 import me.chanjar.weixin.common.error.WxErrorException;
16 17
 import org.springframework.beans.factory.annotation.Autowired;
17 18
 import org.springframework.stereotype.Service;
@@ -21,6 +22,7 @@ import java.time.LocalDateTime;
21 22
 import java.util.ArrayList;
22 23
 import java.util.List;
23 24
 
25
+@Slf4j
24 26
 @Service
25 27
 public class MiniAppServiceImpl implements IMiniAppService {
26 28
 
@@ -168,6 +170,10 @@ public class MiniAppServiceImpl implements IMiniAppService {
168 170
         if (null == tpl) return ;
169 171
 
170 172
         String formid = taMiniFormidsService.getFormidBy(toUser, true);
173
+        if (StringUtils.isEmpty(formid)) {
174
+            log.error("發送消息失敗, 沒有有效的 formid");
175
+            return;
176
+        }
171 177
 
172 178
         WxMaTemplateMessage message = WxMaTemplateMessage.builder()
173 179
                 .templateId(tpl.getId())

+ 1
- 0
src/main/java/com/huiju/estateagents/service/impl/TaMiniFormidsImpl.java Zobrazit soubor

@@ -39,6 +39,7 @@ public class TaMiniFormidsImpl extends ServiceImpl<TaMiniFormidsMapper, TaMiniFo
39 39
     @Override
40 40
     public String getFormidBy(String openid, boolean... delete) {
41 41
         TaMiniFormids taMiniFormids = taMiniFormidsMapper.getFormidCanUse(openid);
42
+        if (null == taMiniFormids) return null;
42 43
 
43 44
         if (null != delete && delete.length > 0 && delete[0]) {
44 45
             QueryWrapper<TaMiniFormids> wrapper = new QueryWrapper<>();

+ 13
- 7
src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java Zobrazit soubor

@@ -16,6 +16,7 @@ import com.huiju.estateagents.entity.*;
16 16
 import com.huiju.estateagents.mapper.*;
17 17
 import com.huiju.estateagents.service.ITaPersonService;
18 18
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
19
+import com.huiju.estateagents.service.ITaRecommendCustomerService;
19 20
 import org.springframework.beans.factory.annotation.Autowired;
20 21
 import org.springframework.stereotype.Service;
21 22
 
@@ -63,6 +64,9 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
63 64
     @Autowired
64 65
     private TaPointsRecordsMapper taPointsRecordsMapper;
65 66
 
67
+    @Autowired
68
+    private ITaRecommendCustomerService iTaRecommendCustomerService;
69
+
66 70
     @Override
67 71
     public TaPerson mergePersonWxInfo(WxMaUserInfo userInfo) {
68 72
         // 先查询是否存在用户
@@ -113,18 +117,17 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
113 117
             return null;
114 118
         }
115 119
 
116
-//        if (null == phone || "".equals(phone)) {
117
-//            return null;
118
-//        }
120
+        // 电话为空, 代表没有获取到电话
121
+        if (null == phone || "".equals(phone)) {
122
+            return null;
123
+        }
119 124
 
120 125
         String tel = person.getTel();
121 126
 
122 127
         UpdateWrapper<TaPerson> wrapper = new UpdateWrapper<>();
123 128
         wrapper.set("phone", phone);
124 129
         wrapper.set("person_type",CommConstant.PERSON_ESTATE_AGENT);
125
-//        wrapper.set(null == tel || "".equals(tel), "tel", phone);
126 130
         wrapper.eq("mini_openid", miniOpenid);
127
-//        wrapper.eq("person_type",null);
128 131
         wrapper.isNull("person_type");
129 132
         taPersonMapper.update(new TaPerson(), wrapper);
130 133
 
@@ -132,11 +135,14 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
132 135
         if (null == tel || "".equals(tel)){
133 136
             person.setTel(phone);
134 137
         }
135
-    
138
+
139
+        iTaRecommendCustomerService.newByPerson(person);
140
+
136 141
         //查看是否领取过授权积分
137 142
         QueryWrapper<TaPointsRecords> taPointsRecordsQueryWrapper = new QueryWrapper<>();
143
+        taPointsRecordsQueryWrapper.eq("person_id", person.getPersonId());
138 144
         taPointsRecordsQueryWrapper.eq("change_type",CommConstant.POINTS_AUTHORIZE);
139
-        taPointsRecordsQueryWrapper.like("change_params","%\""+person.getPersonId()+"\"%");
145
+
140 146
         List<TaPointsRecords> taPointsRecordsList = taPointsRecordsMapper.selectList(taPointsRecordsQueryWrapper);
141 147
         if (taPointsRecordsList.size() < 0){
142 148
             //发放积分

+ 58
- 0
src/main/java/com/huiju/estateagents/service/impl/TaRecommendCustomerServiceImpl.java Zobrazit soubor

@@ -281,6 +281,64 @@ public class TaRecommendCustomerServiceImpl extends ServiceImpl<TaRecommendCusto
281 281
         queryWrapper.gt("status", CommConstant.MESSAGE_UNREAD);
282 282
         IPage<TaRecommendCustomer>page = new Page<>(pageNumber,pageSize);
283 283
         return taRecommendCustomerMapper.selectPage(page,queryWrapper);
284
+    }
285
+
286
+    @Override
287
+    public TaRecommendCustomer newByPerson(TaPerson person) {
288
+        // 没有手机号, 暂时不生成客户信息
289
+        String phone = StringUtils.ifNull(person.getTel(), person.getPhone());
290
+        if (StringUtils.isEmpty(phone)) {
291
+            return null;
292
+        }
293
+
294
+        // 已经存在的, 随机返回一条记录
295
+        List<TaRecommendCustomer> custs = getCustomerByPhone(phone);
296
+        if (null != custs && custs.size() > 0) {
297
+            return custs.get(0);
298
+        }
299
+
300
+        TaRecommendCustomer cust = new TaRecommendCustomer();
301
+        cust.setName(StringUtils.ifNull(person.getName(), person.getNickname()));
302
+        cust.setSex(null == person.getSex() ? str2Int(person.getGender()) : person.getSex());
303
+        cust.setPhone(phone);
304
+        cust.setPicture(StringUtils.ifNull(person.getPhoto(), person.getAvatarurl()));
305
+        cust.setCountry(person.getCountry());
306
+        cust.setCity(person.getCity());
307
+        cust.setProvince(person.getProvince());
308
+        // 审核同意
309
+        cust.setVerifyStatus(CommConstant.VERIFY_AGREE);
310
+        // 报备状态
311
+        cust.setStatus(CommConstant.CUSTOMER_REPORT);
312
+        // 当前日期
313
+        cust.setReportDate(LocalDateTime.now());
314
+
315
+        if (taRecommendCustomerMapper.insert(cust) > 0) {
316
+            return cust;
317
+        } else {
318
+            log.error("依据人员新增推荐客户失败");
319
+            return null;
320
+        }
321
+    }
322
+
323
+    private List<TaRecommendCustomer> getCustomerByPhone(String phone) {
324
+        QueryWrapper<TaRecommendCustomer> queryWrapper = new QueryWrapper<>();
325
+        queryWrapper.eq("phone", phone);
326
+        queryWrapper.gt("status", CommConstant.STATUS_DELETE);
327
+        queryWrapper.orderByDesc("report_date");
328
+
329
+        List<TaRecommendCustomer> custs = taRecommendCustomerMapper.selectList(queryWrapper);
330
+        return custs;
331
+    }
332
+
333
+    private Integer str2Int(String str) {
334
+        if (null == str) {
335
+            return null;
336
+        }
284 337
 
338
+        try {
339
+            return Integer.valueOf(str);
340
+        } catch (Exception e) {
341
+            return 0;
342
+        }
285 343
     }
286 344
 }

+ 10
- 4
src/main/java/com/huiju/estateagents/service/impl/TaSaveServiceImpl.java Zobrazit soubor

@@ -4,12 +4,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5 5
 import com.huiju.estateagents.base.ResponseBean;
6 6
 import com.huiju.estateagents.common.CommConstant;
7
+import com.huiju.estateagents.entity.TaBuilding;
7 8
 import com.huiju.estateagents.entity.TaPerson;
8 9
 import com.huiju.estateagents.entity.TaSave;
9
-import com.huiju.estateagents.mapper.TaBuildingDynamicMapper;
10
-import com.huiju.estateagents.mapper.TaNewsMapper;
11
-import com.huiju.estateagents.mapper.TaPersonMapper;
12
-import com.huiju.estateagents.mapper.TaSaveMapper;
10
+import com.huiju.estateagents.mapper.*;
13 11
 import com.huiju.estateagents.service.ITaSaveService;
14 12
 import org.springframework.beans.factory.annotation.Autowired;
15 13
 import org.springframework.stereotype.Service;
@@ -40,6 +38,9 @@ public class TaSaveServiceImpl extends ServiceImpl<TaSaveMapper, TaSave> impleme
40 38
     @Autowired
41 39
     private TaNewsMapper taNewsMapper;
42 40
 
41
+    @Autowired
42
+    private TaBuildingMapper taBuildingMapper;
43
+
43 44
     @Autowired
44 45
     private TaBuildingDynamicMapper taBuildingDynamicMapper;
45 46
 
@@ -87,6 +88,11 @@ public class TaSaveServiceImpl extends ServiceImpl<TaSaveMapper, TaSave> impleme
87 88
             taBuildingDynamicMapper.setFieldNum(like, "save_num", 1);
88 89
         }
89 90
 
91
+        // 如果是項目收藏, 则 +1
92
+        if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
93
+            taBuildingMapper.setFieldNum(like, "save_num", 1);
94
+        }
95
+
90 96
         return ResponseBean.success("");
91 97
     }
92 98
 

+ 8
- 0
src/main/java/com/huiju/estateagents/service/impl/TaShareServiceImpl.java Zobrazit soubor

@@ -40,6 +40,9 @@ public class TaShareServiceImpl extends ServiceImpl<TaShareMapper, TaShare> impl
40 40
     @Autowired
41 41
     private TaPointsRecordsMapper taPointsRecordsMapper;
42 42
 
43
+    @Autowired
44
+    private TaBuildingMapper taBuildingMapper;
45
+
43 46
     @Autowired
44 47
     private TaBuildingDynamicMapper taBuildingDynamicMapper;
45 48
 
@@ -86,6 +89,11 @@ public class TaShareServiceImpl extends ServiceImpl<TaShareMapper, TaShare> impl
86 89
         if (typeOf == CommConstant.FAVOR_CONSULTANT) {
87 90
             taPersonMapper.setFieldIncrement(id,"share_num", 1);
88 91
         }
92
+
93
+        if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
94
+            taBuildingMapper.setFieldNum(id, "share_num", 1);
95
+        }
96
+
89 97
         //发放分享积分
90 98
         if (typeOf.equals(CommConstant.FAVOR_PROJECT)){
91 99
             QueryWrapper<TdPointsRules> tdPointsRulesQueryWrapper = new QueryWrapper<>();

+ 1
- 1
src/main/resources/application-prod.yml Zobrazit soubor

@@ -1,5 +1,5 @@
1 1
 server:
2
-  port: 8001
2
+  port: 8566
3 3
 spring:
4 4
   application:
5 5
     name: estateagents