提交 6c78a1cf authored 作者: liupengfei's avatar liupengfei

--no commit message

上级 2704e204
......@@ -77,10 +77,10 @@
<artifactId>springfox-swagger-ui</artifactId>
</dependency>
<!-- Springsecurity给服务端提供安全访问 -->
<dependency>
<!-- <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependency> -->
<!--用于测试的 -->
<dependency>
<groupId>org.springframework.boot</groupId>
......
package com.zrqx.talk.bg.controller;
import java.util.Date;
import java.util.List;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zrqx.core.constant.talk.TalkRequestPath;
import com.zrqx.core.enums.ResponseCodeEnum;
import com.zrqx.core.exception.BaseException;
import com.zrqx.core.model.talk.Plate;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.talk.bg.service.PlateService;
@RestController
@Api(description = "论坛管理-板块")
@RequestMapping(TalkRequestPath.BG + TalkRequestPath.PLATE)
public class PlateController {
@Autowired
private PlateService plateService;
/**
* 查询板块列表
* @return
* @author xjg
* @date 2019年1月16日 上午10:48:38
*/
@ApiOperation(value = "获取板块列表", notes = "获取板块列表")
@GetMapping(value = TalkRequestPath.LIST)
public CallBack<List<Plate>>page(){
return CallBack.success(plateService.page());
}
/**
* 添加板块
* @param plate
* @return
* @author xjg
* @date 2019年1月16日 上午10:53:08
*/
@ApiOperation("添加板块")
@PostMapping(TalkRequestPath.SAVE)
public CallBack<Boolean>add(@RequestBody Plate plate){
System.out.println(new Date());
plate.setCreateTime(new Date());
if (!plateService.insertSelective(plate)) {
throw new BaseException(ResponseCodeEnum.FAIL);
}
return CallBack.success();
}
/**
* 根据id批量删除
* @param ids
* @return
* @author xjg
* @date 2019年1月16日 上午10:56:43
*/
@ApiOperation("根据id批量删除")
@PostMapping(TalkRequestPath.DELETE)
public CallBack<Boolean>delete(@RequestBody Integer []ids){
for (Integer id : ids) {
if (!plateService.deleteByPrimaryKey(id)) {
throw new BaseException(ResponseCodeEnum.FAIL);
}
}
return CallBack.success();
}
/**
* 修改板块
* @param plate
* @return
* @author xjg
* @date 2019年1月16日 上午10:59:00
*/
@ApiOperation(value="修改板块")
@PostMapping(TalkRequestPath.UPDATE)
public CallBack<Boolean>update(@RequestBody Plate plate){
if (!plateService.updateByPrimaryKeySelective(plate)) {
throw new BaseException(ResponseCodeEnum.FAIL);
}
return CallBack.success();
}
/**
* 根据id查找板块
* @param id
* @return
* @author xjg
* @date 2019年1月16日 上午11:01:59
*/
@ApiOperation(value = "获取板块列表", notes = "获取板块列表")
@GetMapping(value = TalkRequestPath.OID)
public CallBack<Plate>selectById(@PathVariable Integer oid){
return CallBack.success(plateService.selectByPrimaryKey(oid));
}
}
......@@ -24,7 +24,6 @@ import com.zrqx.core.form.talk.bg.AddHotForm;
import com.zrqx.core.form.talk.bg.QueryTalkForm;
import com.zrqx.core.form.talk.bg.SortTalkForm;
import com.zrqx.core.form.talk.bg.UpdateTalkForm;
import com.zrqx.core.model.sysuser.user.User;
import com.zrqx.core.model.talk.Reply;
import com.zrqx.core.model.talk.Talk;
import com.zrqx.core.util.page.PageInfo;
......@@ -54,7 +53,7 @@ public class TalkController {
@Autowired
private ReplyService replyService;
@ApiOperation(value = "获取话题列表", notes = "获取话题列表")
@ApiOperation(value = "获取帖子列表", notes = "获取帖子列表")
@GetMapping(value = TalkRequestPath.LIST)
public CallBack<PageInfo<TalkListVO>> queryTalkList(QueryTalkForm entity, PageParam pageParam) {
if (null != pageParam && StringUtils.isBlank(pageParam.getOrderBy())) {
......@@ -113,14 +112,13 @@ public class TalkController {
@ApiOperation(value = "添加热帖", notes = "添加热帖")
@PostMapping(value = TalkRequestPath.SAVEHOT)
public CallBack<Boolean> saveHot(@RequestBody AddHotForm entity) {
User user = redis.getUser();
//User user = redis.getUser();
Talk talk = new Talk();
BeanUtils.copyProperties(entity, talk);
talk.setPublishDate(new Date());
talk.setStatus(1);
talk.setTalkType(1);
talk.setPraiseNum(0);
talk.setAuthorName(user.getUserName());
//talk.setAuthorName(user.getUserName());
/**初始化数据*/
talk.setReplyNum(0);
......@@ -144,7 +142,6 @@ public class TalkController {
StatisticVO sv = new StatisticVO();
Talk talk = new Talk();
talk.setAuthorId(authorId);
talk.setTalkType(0);
List<Talk> talkList = talkService.select(talk);
// 帖子数
Integer tzNum = talkList.size();
......
package com.zrqx.talk.bg.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Select;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Plate;
public interface PlateMapper extends BaseMapper<Plate>{
/**
* 查询板块列表
* @return
* @author xjg
* @date 2019年1月16日 上午10:45:35
*/
@Select("select id,name,sort,createTime from plate order by sort")
List<Plate> page();
}
......@@ -40,4 +40,34 @@ public interface TalkMapper extends BaseMapper<Talk> {
+ "</script>")
Integer deleteByIds(@Param("array") Integer[] ids);
/**
* 根据关键词获取帖子列表
* @param keyword
* @return
* @author xjg
* @date 2019年1月16日 下午3:48:01
*/
@Select("<script>"
+ "select * from talk where status = 1 and talkType = 0"
+ " <if test = '" + NOTBLANK + "(keyword)' >"
+ " and theme like concat('%',#{keyword},'%') "
+ " </if>"
+ " order by replyDate "
+ "</script>")
List<Talk> selectByKeywords(@Param("keyword")String keyword);
/**
* 浏览记录
* @param memberId
* @return
* @author xjg
* @date 2019年1月18日 上午11:06:27
*/
@Select("<script>"
+ " select t.* from talk t left join record r on t.id = r.talkid where r.memberid = #{memberId}"
+ " order by r.createTime desc"
+ "</script>")
List<Talk> selectRecord(@Param("memberId")Integer memberId);
}
package com.zrqx.talk.bg.service;
import java.util.List;
import com.zrqx.core.model.talk.Plate;
import com.zrqx.core.service.BaseService;
public interface PlateService extends BaseService<Plate, Integer>{
/**
* 查询板块列表
* @return
* @author xjg
* @date 2019年1月16日 上午10:43:43
*/
List<Plate> page();
}
package com.zrqx.talk.bg.service;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Plate;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.talk.bg.mapper.PlateMapper;
@Service
public class PlateServiceImpl extends BaseServiceImpl<Plate, Integer>implements PlateService{
@Autowired
private PlateMapper plateMapper;
@Override
public BaseMapper<Plate> getMapper() {
return plateMapper;
}
/**
* 查询板块列表
* @return
* @author xjg
* @date 2019年1月16日 上午10:44:55
*/
@Override
public List<Plate> page() {
return plateMapper.page();
}
}
......@@ -8,7 +8,6 @@ import javax.servlet.http.HttpServletRequest;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.connection.RedisSentinelConfiguration;
import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
......@@ -17,7 +16,7 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import com.zrqx.core.enums.ResponseCodeEnum;
import com.zrqx.core.exception.BaseException;
import com.zrqx.core.model.member.Member;
import com.zrqx.core.form.member.fg.permissions.LoginMemberInfo;
import com.zrqx.core.util.json.JsonUtil;
/**
......@@ -55,8 +54,8 @@ public class Redis {
*
* @return
*/
public Member getMember() {
return getInfoObjectRedis(getToken(FG_TOKEN), Member.class);
public LoginMemberInfo getMember() {
return getInfoObjectRedis(getToken(FG_TOKEN), LoginMemberInfo.class);
}
public String fmtObj(Object obj) throws IOException {
return obj instanceof String ? obj.toString():JsonUtil.bean2Json(obj);
......
......@@ -54,9 +54,9 @@ public class RedisConfig {
*
* @return
*/
public Member getMember() {
/*public Member getMember() {
return getInfoObjectRedis(getToken(FG_TOKEN), Member.class);
}
}*/
public String fmtObj(Object obj) throws IOException {
return obj instanceof String ? obj.toString():JsonUtil.bean2Json(obj);
}
......@@ -107,7 +107,7 @@ public class RedisConfig {
return stringRedisTemplate.opsForValue().get(token);
}
public <T> T getInfoObjectRedis(String key,Class<T> objClass){
/*public <T> T getInfoObjectRedis(String key,Class<T> objClass){
try {
String userInfo = get(key);
if(StringUtils.isEmpty(userInfo)) {
......@@ -117,11 +117,11 @@ public class RedisConfig {
} catch (Exception e) {
throw new BaseException("获取用户信息错误!"+e.getMessage());
}
}
}*/
public static String getToken(String tokenName){
/*public static String getToken(String tokenName){
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();
Enumeration<String> headerNames = request.getHeaderNames();
String token = null;
......@@ -143,6 +143,6 @@ public class RedisConfig {
}
public static String getFgToken(){
return getToken(FG_TOKEN);
}
}*/
}
......@@ -79,7 +79,7 @@ public class WebAppConfig extends WebMvcConfigurerAdapter {
}
@Bean
//@Bean
public Converter<String, Date> stringToDateConverter() {
StringToDateConverter conver = new StringToDateConverter();
return conver;
......
......@@ -6,14 +6,13 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.zrqx.talk.fg.service.WebSocketServer;
@RestController
@RequestMapping("/checkcenter")
public class CheckCenterController {
//推送数据接口
@RequestMapping("/socket/push/{cid}")
/*@RequestMapping("/socket/push/{cid}")
public String pushToWeb(@PathVariable String cid,String message) {
try {
WebSocketServer.sendInfo(message,cid);
......@@ -22,5 +21,5 @@ public class CheckCenterController {
return cid+"#"+e.getMessage();
}
return cid;
}
} */
}
......@@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
import com.zrqx.core.constant.talk.TalkRequestPath;
import com.zrqx.core.enums.ResponseCodeEnum;
import com.zrqx.core.exception.BaseException;
import com.zrqx.core.form.member.fg.permissions.LoginMemberInfo;
import com.zrqx.core.form.talk.fg.AddAdoptForm;
import com.zrqx.core.form.talk.fg.AddReplyForm;
import com.zrqx.core.form.talk.fg.ThumbsUpForm;
......@@ -27,7 +28,6 @@ import com.zrqx.core.model.talk.ThumbsUp;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
import com.zrqx.core.util.response.CallBack;
import com.zrqx.core.validate.SaveGroup;
import com.zrqx.talk.commons.Redis;
import com.zrqx.talk.fg.service.FgReplyService;
import com.zrqx.talk.fg.service.FgTalkService;
......@@ -65,7 +65,7 @@ public class FgReplyController {
PageInfo<Reply> pr = replyService.query(reply, pageParam);
for(Reply r :pr.getList()){
ThumbsUp tu = new ThumbsUp();
tu.setMemberId(redis.getMember().getId());
//tu.setMemberId(redis.getMember().getId());
tu.setType(2);
tu.setTalkId(r.getId());
int a = thumbsUpService.selectCount(tu);
......@@ -94,14 +94,15 @@ public class FgReplyController {
@ApiOperation(value = "添加回复", notes = "添加回复")
@PostMapping(value = TalkRequestPath.SAVEREPLY)
public CallBack<Boolean> saveReply(@RequestBody AddReplyForm entity) {
Member member =redis.getMember();
LoginMemberInfo member =redis.getMember();
Reply reply = new Reply();
BeanUtils.copyProperties(entity, reply);
reply.setStatus(1);
reply.setCreateDate(new Date());
reply.setAdopt(0);
/** 冗余作者相关信息开始*/
reply.setReplyerId(member.getId());
reply.setImg(member.getImg());
/*reply.setImg(member.getImg());
reply.setPhoto(member.getPhoto());
reply.setExpertQualified(member.getExpertQualified());
System.out.println("1111111111111:::::::"+member.getEname());
......@@ -109,7 +110,7 @@ public class FgReplyController {
reply.setAuthorName(member.getEname());
}else{
reply.setAuthorName(member.getNickname());
}
}*/
/** 冗余作者相关信息结束*/
reply.setReplyNum(0);
......@@ -123,6 +124,7 @@ public class FgReplyController {
*/
Talk talk = talkService.selectByPrimaryKey(entity.getTalkId());
talk.setReplyNum(talk.getReplyNum() == null ? 1 : talk.getReplyNum() + 1);
talk.setReplyDate(new Date());
if (!talkService.updateByPrimaryKeySelective(talk)) {
throw new BaseException(ResponseCodeEnum.FAIL);
}
......
package com.zrqx.talk.fg.mapper;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Collections;
public interface CollectionMapper extends BaseMapper<Collections> {
}
package com.zrqx.talk.fg.mapper;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Imgs;
public interface FgImgsMapper extends BaseMapper<Imgs>{
}
package com.zrqx.talk.fg.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Select;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Plate;
public interface FgPlateMapper extends BaseMapper<Plate>{
/**
* 查询板块列表
* @return
* @author xjg
* @date 2019年1月16日 上午10:45:35
*/
@Select("select id,name,sort,createTime from plate order by sort")
List<Plate> page();
}
package com.zrqx.talk.fg.mapper;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Record;
public interface RecordMapper extends BaseMapper<Record> {
}
package com.zrqx.talk.fg.service;
import com.zrqx.core.model.talk.Collections;
import com.zrqx.core.service.BaseService;
public interface CollectionService extends BaseService<Collections, Integer> {
}
package com.zrqx.talk.fg.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Collections;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.talk.fg.mapper.CollectionMapper;
/**
* 论坛
* @author Administrator
*
*/
@Service
public class CollectionServiceImpl extends BaseServiceImpl<Collections, Integer> implements CollectionService {
@Autowired
private CollectionMapper collectionMapper;
@Override
public BaseMapper<Collections> getMapper() {
return collectionMapper;
}
}
package com.zrqx.talk.fg.service;
import com.zrqx.core.model.talk.Imgs;
import com.zrqx.core.service.BaseService;
public interface FgImgsService extends BaseService<Imgs, Integer> {
}
package com.zrqx.talk.fg.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Imgs;
import com.zrqx.core.model.talk.Reply;
import com.zrqx.core.model.talk.ThumbsUp;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.talk.bg.mapper.ReplyMapper;
import com.zrqx.talk.fg.mapper.FgImgsMapper;
import com.zrqx.talk.fg.mapper.ThumbsUpMapper;
/**
* 论坛
* @author Administrator
*
*/
@Service
public class FgImgsServiceImpl extends BaseServiceImpl<Imgs, Integer> implements FgImgsService {
@Autowired
private FgImgsMapper fgImgsMapper;
@Override
public BaseMapper<Imgs> getMapper() {
return fgImgsMapper;
}
}
package com.zrqx.talk.fg.service;
import java.util.List;
import com.zrqx.core.model.talk.Plate;
import com.zrqx.core.model.talk.Talk;
import com.zrqx.core.service.BaseService;
import com.zrqx.core.util.page.PageInfo;
......@@ -7,5 +10,40 @@ import com.zrqx.core.util.page.PageParam;
public interface FgTalkService extends BaseService<Talk, Integer> {
PageInfo<Talk> queryTalkList(Integer talkType,String keyword, PageParam pageParam);
PageInfo<Talk> queryTalkList(Integer plateId,PageParam pageParam);
/**
* 获取板块列表
* @return
* @author xjg
* @date 2019年1月16日 下午2:24:24
*/
List<Plate> page();
/**
* 根据关键词获取帖子列表
* @param keyword
* @return
* @author xjg
* @date 2019年1月16日 下午3:42:55
*/
List<Talk> selectByKeywords(String keyword);
/**
* 根据板块ID查询板块
* @param id
* @return
* @author xjg
* @date 2019年1月17日 上午9:46:14
*/
Plate selectPlateById(Integer plateId);
/**
* 浏览记录
* @param pageParam
* @return
* @author xjg
* @date 2019年1月18日 上午10:54:01
*/
PageInfo<Talk> selectRecord(PageParam pageParam,Integer memberId);
}
package com.zrqx.talk.fg.service;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.github.pagehelper.PageHelper;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.member.Member;
import com.zrqx.core.model.talk.Imgs;
import com.zrqx.core.model.talk.Plate;
import com.zrqx.core.model.talk.Talk;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.core.util.page.PageInfo;
import com.zrqx.core.util.page.PageParam;
import com.zrqx.talk.bg.mapper.PlateMapper;
import com.zrqx.talk.bg.mapper.TalkMapper;
import com.zrqx.talk.fg.mapper.FgImgsMapper;
import tk.mybatis.mapper.entity.Example.Criteria;
......@@ -25,6 +32,10 @@ public class FgTalkServiceImpl extends BaseServiceImpl<Talk, Integer> implements
@Autowired
private TalkMapper talkMapper;
@Autowired
private PlateMapper plateMapper;
@Autowired
private FgImgsMapper fgImgsMapper;
@Override
public BaseMapper<Talk> getMapper() {
......@@ -32,14 +43,64 @@ public class FgTalkServiceImpl extends BaseServiceImpl<Talk, Integer> implements
}
@Override
public PageInfo<Talk> queryTalkList(Integer talkType, String keyword, PageParam pageParam) {
public PageInfo<Talk> queryTalkList(Integer plateId, PageParam pageParam) {
PageHelper.startPage(pageParam.getPageNum(), pageParam.getPageSize(), pageParam.getOrderBy());
Criteria cr = this.createCriteria();
cr.andEqualTo("talkType", talkType);
if (plateId == null) {
cr.andGreaterThan("plateId", 2);
}else{
cr.andEqualTo("plateId", plateId);
}
cr.andEqualTo("talkType", 0);
cr.andEqualTo("status", 1);
if (StringUtils.isNotBlank(keyword)) {
cr.andLike("text", "%" + keyword + "%");
List<Talk>list = this.selectByCriteria();
for (Talk talk : list) {
Imgs imgs = new Imgs();
imgs.setTalkid(talk.getId());
talk.setImgPathList(fgImgsMapper.select(imgs));
}
return new PageInfo<Talk>(list);
}
@Override
public List<Plate> page() {
return plateMapper.page();
}
@Override
public List<Talk> selectByKeywords(String keyword) {
if(keyword!=null){
return talkMapper.selectByKeywords(keyword);
}else{
return null;
}
}
@Override
public Plate selectPlateById(Integer plateId) {
return plateMapper.selectByPrimaryKey(plateId);
}
/**
* 根据用户id获取浏览记录
* @param pageParam
* @param memberId
* @return
* @author xjg
* @date 2019年1月18日 上午11:17:16
*/
@Override
public PageInfo<Talk> selectRecord(PageParam pageParam,Integer memberId) {
PageInfo<Talk> pageInfo=new PageInfo<Talk>();
startPage(pageParam);
List<Talk>talkList=talkMapper.selectRecord(memberId);
for (Talk talk : talkList) {
Imgs imgs = new Imgs();
imgs.setTalkid(talk.getId());
List<Imgs> imgsList = fgImgsMapper.select(imgs);
talk.setImgPathList(imgsList);
}
return new PageInfo<Talk>(this.selectByCriteria());
pageInfo.setList(talkList);
return pageInfo;
}
}
package com.zrqx.talk.fg.service;
import com.zrqx.core.model.talk.Record;
import com.zrqx.core.service.BaseService;
public interface RecordService extends BaseService<Record, Integer> {
}
package com.zrqx.talk.fg.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zrqx.core.mapper.BaseMapper;
import com.zrqx.core.model.talk.Record;
import com.zrqx.core.service.BaseServiceImpl;
import com.zrqx.talk.fg.mapper.RecordMapper;
/**
* 论坛
* @author Administrator
*
*/
@Service
public class RecordServiceImpl extends BaseServiceImpl<Record, Integer> implements RecordService {
@Autowired
private RecordMapper recordMapper;
@Override
public BaseMapper<Record> getMapper() {
return recordMapper;
}
}
......@@ -4,7 +4,7 @@ server:
spring:
cloud:
config:
uri: http://localhost:8188 #配置中心地址
uri: http://localhost:8888 #配置中心地址
name: talk
profile: prod
label: master
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论