傅行帆 преди 3 години
родител
ревизия
3b4009216d
променени са 1 файла, в които са добавени 235 реда и са изтрити 235 реда
  1. 235
    235
      src/main/java/com/yunzhi/marketing/service/impl/TaNewsServiceImpl.java

+ 235
- 235
src/main/java/com/yunzhi/marketing/service/impl/TaNewsServiceImpl.java Целия файл

@@ -1,235 +1,235 @@
1
-package com.yunzhi.marketing.service.impl;
2
-
3
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
-import com.baomidou.mybatisplus.core.metadata.IPage;
5
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
-import com.yunzhi.marketing.base.ResponseBean;
8
-import com.yunzhi.marketing.common.BeanTools;
9
-import com.yunzhi.marketing.common.CommConstant;
10
-import com.yunzhi.marketing.common.StringUtils;
11
-import com.yunzhi.marketing.exception.EstaException;
12
-import com.yunzhi.marketing.mapper.TaFavorMapper;
13
-import com.yunzhi.marketing.mapper.TaNewsMapper;
14
-import com.yunzhi.marketing.mapper.TaSaveMapper;
15
-import com.yunzhi.marketing.entity.*;
16
-import com.yunzhi.marketing.service.*;
17
-import org.springframework.beans.factory.annotation.Autowired;
18
-import org.springframework.stereotype.Service;
19
-
20
-import java.time.LocalDateTime;
21
-import java.util.List;
22
-import java.util.stream.Collectors;
23
-
24
-/**
25
- * <p>
26
- * 资讯表  服务实现类
27
- * </p>
28
- *
29
- * @author jobob
30
- * @since 2019-07-25
31
- */
32
-@Service
33
-public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> implements ITaNewsService {
34
-
35
-    @Autowired
36
-    private ITaNewsTypeService iTaNewsTypeService;
37
-
38
-    @Autowired
39
-    private ITaBuildingService iTaBuildingService;
40
-
41
-    @Autowired
42
-    private TaFavorMapper taFavorMapper;
43
-
44
-    @Autowired
45
-    private TaNewsMapper taNewsMapper;
46
-
47
-    @Autowired
48
-    private TaSaveMapper taSaveMapper;
49
-
50
-    @Autowired
51
-    private TaPosterService taPosterService;
52
-
53
-    @Autowired
54
-    private TaShareContentService taShareContentService;
55
-
56
-
57
-    @Override
58
-    public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus, String title, Integer cityId, List<TaPersonBuilding> personBuildingList,List<String> institutionIds) {
59
-        ResponseBean responseBean = new ResponseBean();
60
-
61
-        IPage<TaNews> page = new Page<>();
62
-        page.setCurrent(pageNum);
63
-        page.setSize(pageSize);
64
-
65
-        QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
66
-        taNewsQueryWrapper.eq(!StringUtils.isEmpty(buildingId),"building_id", buildingId);
67
-        taNewsQueryWrapper.eq(orgId != null,"org_id", orgId);
68
-        taNewsQueryWrapper.eq(newsTypeId != null,"news_type_id", newsTypeId);
69
-        taNewsQueryWrapper.eq(newsStatus != null, "news_status", newsStatus);
70
-        taNewsQueryWrapper.eq("status", 1);
71
-        taNewsQueryWrapper.eq(cityId != null, "city_id", cityId);
72
-        taNewsQueryWrapper.like(title!=null,"news_name", title);
73
-        taNewsQueryWrapper.in("institution_id",institutionIds);
74
-        taNewsQueryWrapper.in(personBuildingList.size() > 0,"building_id",personBuildingList.stream().map(TaPersonBuilding::getBuildingId).collect(Collectors.toList()));
75
-        taNewsQueryWrapper.orderByAsc("news_status");
76
-        taNewsQueryWrapper.orderByDesc("weight","create_date");
77
-        IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
78
-
79
-//        injectType(taNewsIPage.getRecords());
80
-
81
-        responseBean.addSuccess(taNewsIPage);
82
-        return responseBean;
83
-    }
84
-
85
-    private void injectType(List<TaNews> records) {
86
-        records.forEach(e -> {
87
-            TaNewsType newsType = iTaNewsTypeService.getById(e.getNewsTypeId());
88
-            e.setNewsType(newsType);
89
-        });
90
-    }
91
-
92
-    @Override
93
-    public ResponseBean getTaNewsById(Integer newsId) {
94
-        ResponseBean responseBean = new ResponseBean();
95
-        if (null == newsId) {
96
-            responseBean.addError("编号不能为空!");
97
-        }
98
-        TaNews data = this.getById(newsId);
99
-        data.setPosters(taPosterService.getPostersForTarget(newsId.toString(), CommConstant.POSTER_CONTENT_TYPE_NEWS));
100
-        data.setShareContents(taShareContentService.getPostersForTarget(newsId.toString(),CommConstant.POSTER_CONTENT_TYPE_NEWS));
101
-        responseBean.addSuccess(data);
102
-        return  responseBean;
103
-    }
104
-
105
-    @Override
106
-    public ResponseBean updateTaNews(TaNews taNews) {
107
-        ResponseBean responseBean = new ResponseBean();
108
-        TaNews oldNews = this.getById(taNews.getNewsId());
109
-        if (null == oldNews) {
110
-            responseBean.addError("资讯不存在!");
111
-            return responseBean;
112
-        }
113
-
114
-        //-- 校验 公司,楼盘,资讯类型
115
-        check(taNews);
116
-
117
-        BeanTools.copyProperties(taNews, oldNews);
118
-        this.updateById(oldNews);
119
-        responseBean.addSuccess(oldNews);
120
-        return responseBean;
121
-    }
122
-
123
-    @Override
124
-    public ResponseBean addTaNews(TaNews taNews) {
125
-        ResponseBean responseBean = new ResponseBean();
126
-        check(taNews);
127
-
128
-        taNews.setCreateDate(LocalDateTime.now());
129
-        taNews.setStatus(1);
130
-        taNews.setNewsStatus(1);
131
-        this.save(taNews);
132
-        responseBean.addSuccess(taNews);
133
-        return responseBean;
134
-    }
135
-
136
-    private void check(TaNews taNews) {
137
-        //-- 校验 公司,楼盘,资讯类型
138
-        // TODO 公司校验没有写 taNews.getOrgId()
139
-
140
-        TaBuilding taBuilding = iTaBuildingService.getById(taNews.getBuildingId());
141
-        if (null == taBuilding) {
142
-            throw new EstaException("楼盘不存在!");
143
-        }
144
-//        TaNewsType taNewsType = iTaNewsTypeService.getById(taNews.getNewsTypeId());
145
-//        if (null == taNewsType) {
146
-//            throw new EstaException("资讯类型不存在!");
147
-//        }
148
-    }
149
-
150
-    @Override
151
-    public ResponseBean deleteTaNews(Integer newsId) {
152
-        ResponseBean responseBean = getTaNewsById(newsId);
153
-        if (1 == responseBean.getCode()) {
154
-            return responseBean;
155
-        }
156
-        TaNews taNews = (TaNews) responseBean.getData();
157
-        if (null == taNews) {
158
-            responseBean.addError("数据不存!");
159
-        }
160
-
161
-        // 修改状态
162
-        taNews.setStatus(0);
163
-        this.updateById(taNews);
164
-
165
-        responseBean.addSuccess(taNews);
166
-        return responseBean;
167
-    }
168
-
169
-    @Override
170
-    public ResponseBean getWxTaNewsById(Integer newsId,String personId) {
171
-        ResponseBean responseBean = getTaNewsById(newsId);
172
-        if (1 == responseBean.getCode()) {
173
-            return responseBean;
174
-        }
175
-        TaNews taNews = (TaNews) responseBean.getData();
176
-        if (null == taNews) {
177
-            responseBean.addError("数据不存!");
178
-        }else {
179
-            QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
180
-            saveQueryWrapper.eq("tagert_type", CommConstant.FAVOR_NEWS);
181
-            saveQueryWrapper.eq("person_id",personId);
182
-            saveQueryWrapper.eq("saved_target",taNews.getNewsId());
183
-            Integer num = taSaveMapper.selectCount(saveQueryWrapper);
184
-            if (num>0){
185
-                taNews.setIsSave(CommConstant.STATUS_NORMAL);
186
-            }else {
187
-                taNews.setIsSave(CommConstant.STATUS_UNACCALIMED);
188
-            }
189
-        }
190
-        //阅读量加一
191
-        taNewsMapper.setFieldNum(String.valueOf(newsId), "pv_num", 1);
192
-        responseBean.addSuccess(taNews);
193
-        return responseBean;
194
-    }
195
-
196
-    @Override
197
-    public ResponseBean wxTaPvNum(Integer id) {
198
-        ResponseBean responseBean = getTaNewsById(id);
199
-        if (1 == responseBean.getCode()) {
200
-            return responseBean;
201
-        }
202
-        TaNews taNews = (TaNews) responseBean.getData();
203
-        if (null == taNews) {
204
-            responseBean.addError("数据不存!");
205
-        }
206
-
207
-        taNewsMapper.setFieldNum(String.valueOf(id), "pv_num", 1);
208
-
209
-        responseBean.addSuccess((Object)"");
210
-        return responseBean;
211
-    }
212
-
213
-    @Override
214
-    public IPage<TaNews> getWxList(Integer pageNum, Integer pageSize, String buildingId, List<String> targets,Integer cityId,boolean mine,Integer orgId) {
215
-        IPage<TaNews> page = new Page<>(pageNum, pageSize);
216
-
217
-        QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
218
-        taNewsQueryWrapper.eq(!StringUtils.isEmpty(buildingId), "building_id", buildingId);
219
-        taNewsQueryWrapper.in(null != targets && targets.size() > 0, "news_id", targets);
220
-        taNewsQueryWrapper.eq(null != cityId && cityId != 0,"city_id",cityId);
221
-        taNewsQueryWrapper.eq("org_id",orgId);
222
-        taNewsQueryWrapper.eq("status", 1);
223
-        taNewsQueryWrapper.eq("news_status", 0);
224
-        taNewsQueryWrapper.orderByDesc("weight","create_date");
225
-        IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
226
-        IPage<TaNews> pageEmpty = new Page<>(pageNum, pageSize);
227
-//        injectType(taNewsIPage.getRecords());
228
-        if (targets.size()<=0 && mine){
229
-            return pageEmpty;
230
-        }else {
231
-            return taNewsIPage;
232
-        }
233
-
234
-    }
235
-}
1
+package com.yunzhi.marketing.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
+import com.yunzhi.marketing.base.ResponseBean;
8
+import com.yunzhi.marketing.common.BeanTools;
9
+import com.yunzhi.marketing.common.CommConstant;
10
+import com.yunzhi.marketing.common.StringUtils;
11
+import com.yunzhi.marketing.exception.EstaException;
12
+import com.yunzhi.marketing.mapper.TaFavorMapper;
13
+import com.yunzhi.marketing.mapper.TaNewsMapper;
14
+import com.yunzhi.marketing.mapper.TaSaveMapper;
15
+import com.yunzhi.marketing.entity.*;
16
+import com.yunzhi.marketing.service.*;
17
+import org.springframework.beans.factory.annotation.Autowired;
18
+import org.springframework.stereotype.Service;
19
+
20
+import java.time.LocalDateTime;
21
+import java.util.List;
22
+import java.util.stream.Collectors;
23
+
24
+/**
25
+ * <p>
26
+ * 资讯表  服务实现类
27
+ * </p>
28
+ *
29
+ * @author jobob
30
+ * @since 2019-07-25
31
+ */
32
+@Service
33
+public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> implements ITaNewsService {
34
+
35
+    @Autowired
36
+    private ITaNewsTypeService iTaNewsTypeService;
37
+
38
+    @Autowired
39
+    private ITaBuildingService iTaBuildingService;
40
+
41
+    @Autowired
42
+    private TaFavorMapper taFavorMapper;
43
+
44
+    @Autowired
45
+    private TaNewsMapper taNewsMapper;
46
+
47
+    @Autowired
48
+    private TaSaveMapper taSaveMapper;
49
+
50
+    @Autowired
51
+    private TaPosterService taPosterService;
52
+
53
+    @Autowired
54
+    private TaShareContentService taShareContentService;
55
+
56
+
57
+    @Override
58
+    public ResponseBean getList(Integer pageNum, Integer pageSize, String buildingId, Integer orgId, Integer newsTypeId, Integer newsStatus, String title, Integer cityId, List<TaPersonBuilding> personBuildingList,List<String> institutionIds) {
59
+        ResponseBean responseBean = new ResponseBean();
60
+
61
+        IPage<TaNews> page = new Page<>();
62
+        page.setCurrent(pageNum);
63
+        page.setSize(pageSize);
64
+
65
+        QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
66
+        taNewsQueryWrapper.eq(!StringUtils.isEmpty(buildingId),"building_id", buildingId);
67
+        taNewsQueryWrapper.eq(orgId != null,"org_id", orgId);
68
+        taNewsQueryWrapper.eq(newsTypeId != null,"news_type_id", newsTypeId);
69
+        taNewsQueryWrapper.eq(newsStatus != null, "news_status", newsStatus);
70
+        taNewsQueryWrapper.eq("status", 1);
71
+        taNewsQueryWrapper.eq(cityId != null, "city_id", cityId);
72
+        taNewsQueryWrapper.like(title!=null,"news_name", title);
73
+        taNewsQueryWrapper.in("institution_id",institutionIds);
74
+        taNewsQueryWrapper.in(personBuildingList.size() > 0,"building_id",personBuildingList.stream().map(TaPersonBuilding::getBuildingId).collect(Collectors.toList()));
75
+        taNewsQueryWrapper.orderByAsc("news_status");
76
+        taNewsQueryWrapper.orderByDesc("weight","create_date");
77
+        IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
78
+
79
+//        injectType(taNewsIPage.getRecords());
80
+
81
+        responseBean.addSuccess(taNewsIPage);
82
+        return responseBean;
83
+    }
84
+
85
+    private void injectType(List<TaNews> records) {
86
+        records.forEach(e -> {
87
+            TaNewsType newsType = iTaNewsTypeService.getById(e.getNewsTypeId());
88
+            e.setNewsType(newsType);
89
+        });
90
+    }
91
+
92
+    @Override
93
+    public ResponseBean getTaNewsById(Integer newsId) {
94
+        ResponseBean responseBean = new ResponseBean();
95
+        if (null == newsId) {
96
+            responseBean.addError("编号不能为空!");
97
+        }
98
+        TaNews data = this.getById(newsId);
99
+        data.setPosters(taPosterService.getPostersForTarget(newsId.toString(), CommConstant.POSTER_CONTENT_TYPE_NEWS));
100
+        data.setShareContents(taShareContentService.getPostersForTarget(newsId.toString(),CommConstant.POSTER_CONTENT_TYPE_NEWS));
101
+        responseBean.addSuccess(data);
102
+        return  responseBean;
103
+    }
104
+
105
+    @Override
106
+    public ResponseBean updateTaNews(TaNews taNews) {
107
+        ResponseBean responseBean = new ResponseBean();
108
+        TaNews oldNews = this.getById(taNews.getNewsId());
109
+        if (null == oldNews) {
110
+            responseBean.addError("资讯不存在!");
111
+            return responseBean;
112
+        }
113
+
114
+        //-- 校验 公司,楼盘,资讯类型
115
+        check(taNews);
116
+
117
+        BeanTools.copyProperties(taNews, oldNews);
118
+        this.updateById(oldNews);
119
+        responseBean.addSuccess(oldNews);
120
+        return responseBean;
121
+    }
122
+
123
+    @Override
124
+    public ResponseBean addTaNews(TaNews taNews) {
125
+        ResponseBean responseBean = new ResponseBean();
126
+//        check(taNews);
127
+
128
+        taNews.setCreateDate(LocalDateTime.now());
129
+        taNews.setStatus(1);
130
+        taNews.setNewsStatus(1);
131
+        this.save(taNews);
132
+        responseBean.addSuccess(taNews);
133
+        return responseBean;
134
+    }
135
+
136
+    private void check(TaNews taNews) {
137
+        //-- 校验 公司,楼盘,资讯类型
138
+        // TODO 公司校验没有写 taNews.getOrgId()
139
+
140
+        TaBuilding taBuilding = iTaBuildingService.getById(taNews.getBuildingId());
141
+        if (null == taBuilding) {
142
+            throw new EstaException("楼盘不存在!");
143
+        }
144
+//        TaNewsType taNewsType = iTaNewsTypeService.getById(taNews.getNewsTypeId());
145
+//        if (null == taNewsType) {
146
+//            throw new EstaException("资讯类型不存在!");
147
+//        }
148
+    }
149
+
150
+    @Override
151
+    public ResponseBean deleteTaNews(Integer newsId) {
152
+        ResponseBean responseBean = getTaNewsById(newsId);
153
+        if (1 == responseBean.getCode()) {
154
+            return responseBean;
155
+        }
156
+        TaNews taNews = (TaNews) responseBean.getData();
157
+        if (null == taNews) {
158
+            responseBean.addError("数据不存!");
159
+        }
160
+
161
+        // 修改状态
162
+        taNews.setStatus(0);
163
+        this.updateById(taNews);
164
+
165
+        responseBean.addSuccess(taNews);
166
+        return responseBean;
167
+    }
168
+
169
+    @Override
170
+    public ResponseBean getWxTaNewsById(Integer newsId,String personId) {
171
+        ResponseBean responseBean = getTaNewsById(newsId);
172
+        if (1 == responseBean.getCode()) {
173
+            return responseBean;
174
+        }
175
+        TaNews taNews = (TaNews) responseBean.getData();
176
+        if (null == taNews) {
177
+            responseBean.addError("数据不存!");
178
+        }else {
179
+            QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
180
+            saveQueryWrapper.eq("tagert_type", CommConstant.FAVOR_NEWS);
181
+            saveQueryWrapper.eq("person_id",personId);
182
+            saveQueryWrapper.eq("saved_target",taNews.getNewsId());
183
+            Integer num = taSaveMapper.selectCount(saveQueryWrapper);
184
+            if (num>0){
185
+                taNews.setIsSave(CommConstant.STATUS_NORMAL);
186
+            }else {
187
+                taNews.setIsSave(CommConstant.STATUS_UNACCALIMED);
188
+            }
189
+        }
190
+        //阅读量加一
191
+        taNewsMapper.setFieldNum(String.valueOf(newsId), "pv_num", 1);
192
+        responseBean.addSuccess(taNews);
193
+        return responseBean;
194
+    }
195
+
196
+    @Override
197
+    public ResponseBean wxTaPvNum(Integer id) {
198
+        ResponseBean responseBean = getTaNewsById(id);
199
+        if (1 == responseBean.getCode()) {
200
+            return responseBean;
201
+        }
202
+        TaNews taNews = (TaNews) responseBean.getData();
203
+        if (null == taNews) {
204
+            responseBean.addError("数据不存!");
205
+        }
206
+
207
+        taNewsMapper.setFieldNum(String.valueOf(id), "pv_num", 1);
208
+
209
+        responseBean.addSuccess((Object)"");
210
+        return responseBean;
211
+    }
212
+
213
+    @Override
214
+    public IPage<TaNews> getWxList(Integer pageNum, Integer pageSize, String buildingId, List<String> targets,Integer cityId,boolean mine,Integer orgId) {
215
+        IPage<TaNews> page = new Page<>(pageNum, pageSize);
216
+
217
+        QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
218
+        taNewsQueryWrapper.eq(!StringUtils.isEmpty(buildingId), "building_id", buildingId);
219
+        taNewsQueryWrapper.in(null != targets && targets.size() > 0, "news_id", targets);
220
+        taNewsQueryWrapper.eq(null != cityId && cityId != 0,"city_id",cityId);
221
+        taNewsQueryWrapper.eq("org_id",orgId);
222
+        taNewsQueryWrapper.eq("status", 1);
223
+        taNewsQueryWrapper.eq("news_status", 0);
224
+        taNewsQueryWrapper.orderByDesc("weight","create_date");
225
+        IPage<TaNews> taNewsIPage = this.page(page, taNewsQueryWrapper);
226
+        IPage<TaNews> pageEmpty = new Page<>(pageNum, pageSize);
227
+//        injectType(taNewsIPage.getRecords());
228
+        if (targets.size()<=0 && mine){
229
+            return pageEmpty;
230
+        }else {
231
+            return taNewsIPage;
232
+        }
233
+
234
+    }
235
+}