傅行帆 5 anni fa
parent
commit
658ff35e6d

+ 49
- 0
src/main/java/com/huiju/estateagents/activity/controller/ActivityController.java Vedi File

@@ -0,0 +1,49 @@
1
+package com.huiju.estateagents.activity.controller;
2
+
3
+import com.huiju.estateagents.activity.service.ActivityServiceI;
4
+import com.huiju.estateagents.base.BaseController;
5
+import com.huiju.estateagents.base.ResponseBean;
6
+import com.huiju.estateagents.entity.TaPerson;
7
+import com.huiju.estateagents.service.ITaPersonService;
8
+import io.swagger.annotations.Api;
9
+import org.springframework.beans.factory.annotation.Autowired;
10
+import org.springframework.web.bind.annotation.RequestMapping;
11
+import org.springframework.web.bind.annotation.RequestMethod;
12
+import org.springframework.web.bind.annotation.RequestParam;
13
+import org.springframework.web.bind.annotation.RestController;
14
+
15
+import javax.servlet.http.HttpServletRequest;
16
+import java.util.List;
17
+
18
+/**
19
+ * @author FXF
20
+ * @date 2019-10-21
21
+ */
22
+@RestController
23
+@RequestMapping("/api")
24
+@Api(value = "所有活动", tags = "所有活动")
25
+public class ActivityController extends BaseController {
26
+	
27
+	@Autowired
28
+	private ActivityServiceI activityService;
29
+	
30
+	@Autowired
31
+	private ITaPersonService taPersonService;
32
+	
33
+	@RequestMapping(value = "/wx/activity/list", method = RequestMethod.GET)
34
+	public ResponseBean wxBuildingDynamiceList(@RequestParam(value = "pageNumber",defaultValue = "1")Integer pageNumber,
35
+	                                           @RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
36
+	                                           HttpServletRequest request){
37
+		String openid = getOpenId(request);
38
+		Integer orgId = getOrgId(request);
39
+		ResponseBean  responseBean = new ResponseBean();
40
+		List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
41
+		if (null == taPersons || taPersons.size() != 1) {
42
+			return responseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
43
+		}
44
+		TaPerson person = taPersons.get(0);
45
+		responseBean = activityService.getActivityList(pageNumber,pageSize,orgId,person);
46
+		
47
+		return responseBean;
48
+	}
49
+}

+ 32
- 0
src/main/java/com/huiju/estateagents/activity/entity/Activity.java Vedi File

@@ -0,0 +1,32 @@
1
+package com.huiju.estateagents.activity.entity;
2
+
3
+import lombok.Data;
4
+
5
+import java.time.LocalDateTime;
6
+
7
+/**
8
+ * @author FXF
9
+ * @date 2019-10-21
10
+ */
11
+@Data
12
+public class Activity {
13
+
14
+	private Integer id;
15
+	
16
+	private String mainImg;
17
+	
18
+	private String title;
19
+	
20
+	private LocalDateTime startDate;
21
+	
22
+	private LocalDateTime endDate;
23
+	
24
+	private Integer weight;
25
+	
26
+	/**
27
+	 *  0:进行中 1:未开始 2:已结束 3:已参与(微信端用)
28
+	 */
29
+	private Integer activityStatus;
30
+	
31
+	private String type;
32
+}

+ 13
- 0
src/main/java/com/huiju/estateagents/activity/mapper/ActivityMapper.java Vedi File

@@ -0,0 +1,13 @@
1
+package com.huiju.estateagents.activity.mapper;
2
+
3
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
4
+import com.huiju.estateagents.activity.entity.Activity;
5
+import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
7
+
8
+import java.util.List;
9
+
10
+@Mapper
11
+public interface ActivityMapper {
12
+	List<Activity> getActivityList(Page pg, @Param("orgId") Integer orgId,@Param("status") Integer status);
13
+}

+ 17
- 0
src/main/java/com/huiju/estateagents/activity/service/ActivityServiceI.java Vedi File

@@ -0,0 +1,17 @@
1
+package com.huiju.estateagents.activity.service;
2
+
3
+import com.huiju.estateagents.base.ResponseBean;
4
+import com.huiju.estateagents.entity.TaPerson;
5
+
6
+public interface ActivityServiceI {
7
+	
8
+	/**
9
+	 * 获取三个活动
10
+	 * @param pageNumber
11
+	 * @param pageSize
12
+	 * @param orgId
13
+	 * @param person
14
+	 * @return
15
+	 */
16
+	ResponseBean getActivityList(Integer pageNumber, Integer pageSize, Integer orgId, TaPerson person);
17
+}

+ 95
- 0
src/main/java/com/huiju/estateagents/activity/service/impl/ActivityServiceImpl.java Vedi File

@@ -0,0 +1,95 @@
1
+package com.huiju.estateagents.activity.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
+import com.huiju.estateagents.activity.entity.Activity;
6
+import com.huiju.estateagents.activity.mapper.ActivityMapper;
7
+import com.huiju.estateagents.activity.service.ActivityServiceI;
8
+import com.huiju.estateagents.base.ResponseBean;
9
+import com.huiju.estateagents.common.CommConstant;
10
+import com.huiju.estateagents.entity.HelpRecord;
11
+import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
12
+import com.huiju.estateagents.entity.TaPerson;
13
+import com.huiju.estateagents.entity.TaShareRecord;
14
+import com.huiju.estateagents.mapper.HelpRecordMapper;
15
+import com.huiju.estateagents.mapper.TaActivityDynamicEnlistMapper;
16
+import com.huiju.estateagents.mapper.TaShareRecordMapper;
17
+import org.springframework.beans.factory.annotation.Autowired;
18
+import org.springframework.stereotype.Service;
19
+
20
+import java.util.List;
21
+
22
+/**
23
+ * @author FXF
24
+ * @date 2019-10-21
25
+ */
26
+@Service
27
+public class ActivityServiceImpl implements ActivityServiceI {
28
+	
29
+	@Autowired
30
+	private ActivityMapper activityMapper;
31
+	
32
+	@Autowired
33
+	private TaActivityDynamicEnlistMapper taActivityDynamicEnlistMapper;
34
+	
35
+	@Autowired
36
+	private TaShareRecordMapper taShareRecordMapper;
37
+	
38
+	@Autowired
39
+	private HelpRecordMapper helpRecordMapper;
40
+	
41
+	/**
42
+	 * 获取三个活动
43
+	 *
44
+	 * @param pageNumber
45
+	 * @param pageSize
46
+	 * @param orgId
47
+	 * @param person
48
+	 * @return
49
+	 */
50
+	@Override
51
+	public ResponseBean getActivityList(Integer pageNumber, Integer pageSize, Integer orgId, TaPerson person) {
52
+		//查询是否报名了普通活动
53
+		QueryWrapper<TaActivityDynamicEnlist> queryWrapper = new QueryWrapper<>();
54
+		queryWrapper.eq("org_id",orgId);
55
+		queryWrapper.eq("person_id",person.getPersonId());
56
+		List<TaActivityDynamicEnlist> taActivityDynamicEnlists = taActivityDynamicEnlistMapper.selectList(queryWrapper);
57
+		//查询是否报名了分享活动
58
+		QueryWrapper<TaShareRecord> taShareRecordQueryWrapper = new QueryWrapper<>();
59
+		taShareRecordQueryWrapper.eq("org_id",orgId);
60
+		taShareRecordQueryWrapper.eq("person_id",person.getPersonId());
61
+		List<TaShareRecord> taShareRecords = taShareRecordMapper.selectList(taShareRecordQueryWrapper);
62
+		//判断是否报名了助力活动
63
+		QueryWrapper<HelpRecord> helpRecordQueryWrapper = new QueryWrapper<>();
64
+		helpRecordQueryWrapper.eq("org_id",orgId);
65
+		helpRecordQueryWrapper.eq("person_id",person.getPersonId());
66
+		List<HelpRecord> helpRecords = helpRecordMapper.selectList(helpRecordQueryWrapper);
67
+		
68
+		//分页获取全部数据
69
+		Page pg = new Page(pageNumber,pageSize);
70
+		List<Activity> list = activityMapper.getActivityList(pg,orgId, CommConstant.STATUS_NORMAL);
71
+		list.forEach(e -> {
72
+			if (e.getType().equals("dynamic")){
73
+				taActivityDynamicEnlists.forEach(dynamic -> {
74
+					if (e.getId().equals(dynamic.getDynamicId())){
75
+						e.setActivityStatus(CommConstant.ACTIVITY_STATUS_PARTNER);
76
+					}
77
+				});
78
+			}else if (e.getType().equals("share")){
79
+				taShareRecords.forEach(share -> {
80
+					if (e.getId().equals(share.getGroupActivityId())){
81
+						e.setActivityStatus(CommConstant.ACTIVITY_STATUS_PARTNER);
82
+					}
83
+				});
84
+			}else if (e.getType().equals("help")){
85
+				helpRecords.forEach(help -> {
86
+					if (e.getId().equals(help.getHelpActivityId())){
87
+						e.setActivityStatus(CommConstant.ACTIVITY_STATUS_PARTNER);
88
+					}
89
+				});
90
+			}
91
+		});
92
+		pg.setRecords(list);
93
+		return ResponseBean.success(pg);
94
+	}
95
+}

+ 3
- 0
src/main/java/com/huiju/estateagents/common/CommConstant.java Vedi File

@@ -385,4 +385,7 @@ public class CommConstant {
385 385
 	
386 386
 	
387 387
 	public static final String GD_KEY = "c9fc664a9030aed2ec2183508c2ca476";
388
+ 
389
+	//已参与微信端用
390
+    public static final Integer ACTIVITY_STATUS_PARTNER = 3;
388 391
 }

+ 5
- 4
src/main/java/com/huiju/estateagents/drainage/controller/TaDrainageController.java Vedi File

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 6
 import com.huiju.estateagents.base.BaseController;
7 7
 import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.common.StringUtils;
8 9
 import com.huiju.estateagents.drainage.entity.TaDrainage;
9 10
 import com.huiju.estateagents.drainage.service.ITaDrainageService;
10 11
 import org.slf4j.Logger;
@@ -48,8 +49,8 @@ public class TaDrainageController extends BaseController {
48 49
     @RequestMapping(value="/admin/taDrainage",method= RequestMethod.GET)
49 50
     public ResponseBean taDrainageList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
50 51
                                        @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
51
-                                       @RequestParam(value ="drainageId",defaultValue = "10") Integer drainageId,
52
-                                       @RequestParam(value ="name",defaultValue = "10") String name,
52
+                                       @RequestParam(value ="drainageId",required = false) Integer drainageId,
53
+                                       @RequestParam(value ="name",required = false) String name,
53 54
                                        HttpServletRequest request){
54 55
         ResponseBean responseBean = new ResponseBean();
55 56
         try {
@@ -57,8 +58,8 @@ public class TaDrainageController extends BaseController {
57 58
 		    IPage<TaDrainage> pg = new Page<>(pageNum, pageSize);
58 59
             QueryWrapper<TaDrainage> queryWrapper = new QueryWrapper<>();
59 60
             queryWrapper.eq("org_id",getOrgId(request));
60
-            queryWrapper.eq("drainage_id",drainageId);
61
-            queryWrapper.like("name",name);
61
+            queryWrapper.eq(null != drainageId,"drainage_id",drainageId);
62
+            queryWrapper.like(!StringUtils.isEmpty(name),"name",name);
62 63
             queryWrapper.orderByDesc("create_date");
63 64
 
64 65
             IPage<TaDrainage> result = iTaDrainageService.page(pg, queryWrapper);

+ 13
- 0
src/main/resources/mapper/Activity.xml Vedi File

@@ -0,0 +1,13 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
+<mapper namespace="com.huiju.estateagents.activity.mapper.ActivityMapper">
4
+
5
+    <select id="getActivityList" resultType="com.huiju.estateagents.activity.entity.Activity">
6
+        SELECT dynamic_id as id,img_url as main_img,title,start_date as start_date,enlist_end as end_date,weight,activity_status,'dynamic' as type FROM ta_building_dynamic WHERE org_id = #{orgId}  and `status` = #{status}
7
+        UNION  all
8
+        SELECT group_acticity_id as id,main_img,activity_name as title,start_time as start_date,end_time as end_date,weight,activity_status,'share' as type from ta_share_activity WHERE org_id = #{orgId} and `status` = #{status}
9
+        UNION  all
10
+        SELECT help_activity_id as id,img as main_img,title,start_date,end_date,weight,activity_status,'help' as type from ta_help_activity WHERE org_id = #{orgId} and `status` = #{status}
11
+        ORDER BY weight desc,activity_status,start_date
12
+    </select>
13
+</mapper>