Commit 2585a8e1 by 阮思源

1002623小睿好友

parent 8d9b72d2
......@@ -632,4 +632,6 @@ public interface BookBiz {
* 根据isbn模糊匹配,获得所有book_id
*/
List<Long> getBookIdsByIsbn(String isbn);
BookDto getAdviserBook(Long bookId, Long adviserId, Long channelId);
}
......@@ -1985,6 +1985,25 @@ public class BookBizImpl implements BookBiz {
return pageBeanNew;
}
@ParamLog("获取书刊")
@Override
public BookDto getAdviserBook(Long bookId, Long adviserId, Long channelId) {
if (bookId==null||adviserId==null||channelId==null){
throw new BookBizException(BookBizException.PARAM_IS_NULL,"参数有误");
}
Map<String, Object> paramMap = Maps.newHashMap();
paramMap.put("bookId", bookId);
paramMap.put("adviserId", adviserId);
paramMap.put("channelId", channelId);
BookDto bookDto = bookDao.getById(paramMap);
if (bookDto == null) {
return new BookDto();
}
// 设置模板名字
bookSet.setTemplateName(bookDto);
return bookDto;
}
@ParamLog("填充书刊信息")
private void fillBookInfo(List<BookDto> list) {
if (ListUtils.isEmpty(list)){
......
......@@ -712,4 +712,12 @@ public interface BookFacade {
@RequestParam(value = "startDate", required = false) @ApiParam("开始日期") String startDate,
@RequestParam(value = "endDate", required = false) @ApiParam("结束日期") String endDate
) throws PermissionException, JsonParseException, BizException;
@ApiOperation("获取书刊")
@GetMapping("getAdviserBook")
ResponseDto<?> getAdviserBook(
@RequestParam(value = "bookId") Long bookId,
@RequestParam(value = "adviserId") Long adviserId,
@RequestParam(value = "channelId") Long channelId
) throws BizException, PermissionException;
}
......@@ -978,4 +978,15 @@ public class BookFacadeImpl implements BookFacade {
PageBeanNew<BookDto> pageBean = bookBiz.getBookAndServeList4Channel(currentPage,numPerPage,channelId,name,isFundSupport,startDate,endDate);
return new ResponseDto<>(pageBean);
}
@ApiOperation("获取书刊")
@GetMapping("getAdviserBook")
@Override
public ResponseDto<?> getAdviserBook(
@RequestParam(value = "bookId") Long bookId,
@RequestParam(value = "adviserId") Long adviserId,
@RequestParam(value = "channelId") Long channelId
) throws BizException, PermissionException {
return new ResponseDto<>(bookBiz.getAdviserBook(bookId,adviserId,channelId));
}
}
\ No newline at end of file
......@@ -2,9 +2,13 @@ package com.pcloud.book.cultivate.biz;
import com.pcloud.book.book.vo.SearchBookVO;
import com.pcloud.book.cultivate.dto.CreateCultivateDTO;
import com.pcloud.book.cultivate.dto.CultivateDTO;
import com.pcloud.book.cultivate.dto.EnergyConsumptionDTO;
import com.pcloud.book.cultivate.dto.FishBallConversionDTO;
import com.pcloud.book.cultivate.dto.FishBallPickDTO;
import com.pcloud.book.cultivate.dto.FriendDTO;
import com.pcloud.book.cultivate.dto.GiveEnergyDTO;
import com.pcloud.book.cultivate.dto.HoldSeatDTO;
import com.pcloud.book.cultivate.dto.SkillUseDTO;
import com.pcloud.book.cultivate.entity.Cultivate;
import com.pcloud.book.cultivate.entity.CultivateBookUser;
......@@ -54,4 +58,28 @@ public interface CultivateBiz {
CultivateBookUser getLastCultivateBookUser(Long wechatUserId);
PageBeanNew<SearchBookVO> getBookSearchRecord(Long wechatUserId, Integer currentPage, Integer numPerPage);
List<FriendDTO> getFriendList(Long cultivateId);
void giveEnergy(GiveEnergyDTO giveEnergyDTO);
//占座
void holdSeat(HoldSeatDTO holdSeatDTO);
//踢人
void kickPeople(HoldSeatDTO holdSeatDTO);
//退出
Integer signOut(HoldSeatDTO holdSeatDTO);
//找回 返回好友养成id
Long getBack(Long cultivateId);
//占座好友
List<FriendDTO> getHoldSeatFriend(Long cultivateId);
//判断占座之前是否在学习中
Boolean beforeHoldSeat(Long cultivateId);
CultivateDTO getCultivateBaseInfo(Long cultivateId);
}
......@@ -23,4 +23,8 @@ public class CultivateConstant {
public static final Integer sixth_MEDAL_STAR=500;
public static final Integer seventh_MEDAL_STAR=1000;
public static final Integer eighth_MEDAL_STAR=2000;
public static final Double HOLD_SEAT_PROPORTION =0.3D;
}
......@@ -9,4 +9,10 @@ public interface CultivateDao extends BaseDao<Cultivate> {
Cultivate getByWechatUserId(Long wechatUserId);
List<Cultivate> getAllOrderByStar();
void updateIsHome(Integer isHome,Long cultivateId);
List<Cultivate> getRandomUserId(Long cultivateId,Long friendCultivateId);
List<Cultivate> getByCultivateIds(List<Long> cultivateIds);
}
package com.pcloud.book.cultivate.dao;
import com.pcloud.book.cultivate.entity.CultivateHoldSeat;
import com.pcloud.common.core.dao.BaseDao;
import java.util.List;
public interface CultivateHoldSeatDao extends BaseDao<CultivateHoldSeat> {
void deleteById(Long cultivateId,Long friendCultivateId);
List<Long> getCultivateIdByFriendId(Long friendCultivateId);
Long getFriendCultivateIdById(Long cultivateId);
CultivateHoldSeat getById(Long cultivateId,Long friendCultivateId);
}
......@@ -2,7 +2,6 @@ package com.pcloud.book.cultivate.dao;
import com.pcloud.book.cultivate.entity.CultivateRecord;
import com.pcloud.common.core.dao.BaseDao;
import com.pcloud.common.page.PageBeanNew;
import java.util.List;
......@@ -16,4 +15,7 @@ public interface CultivateRecordDao extends BaseDao<CultivateRecord> {
CultivateRecord getLastLighten(Long wechatUserId, Long cultivateId);
CultivateRecord getLastEnergyConsumptionBefore(Long cultivateRecordId, Long wechatUserId);
List<CultivateRecord> getHoldSeatFriendList(Long cultivateId, Long lastLightenRecordId);
}
......@@ -5,7 +5,9 @@ import com.pcloud.book.cultivate.entity.Cultivate;
import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component("cultivateDao")
public class CultivateDaoImpl extends BaseDaoImpl<Cultivate> implements CultivateDao {
......@@ -18,4 +20,27 @@ public class CultivateDaoImpl extends BaseDaoImpl<Cultivate> implements Cultivat
public List<Cultivate> getAllOrderByStar() {
return getSessionTemplate().selectList(getStatement("getAllOrderByStar"));
}
@Override
public void updateIsHome(Integer isHome, Long cultivateId) {
Map<String,Object> map=new HashMap<>();
map.put("isHome",isHome);
map.put("cultivateId",cultivateId);
super.getSessionTemplate().update(getStatement("updateIsHome"),map);
}
@Override
public List<Cultivate> getRandomUserId(Long cultivateId,Long friendCultivateId) {
Map<String,Object> map=new HashMap<>();
map.put("cultivateId",cultivateId);
map.put("friendCultivateId",friendCultivateId);
return super.getSessionTemplate().selectList(getStatement("getRandomUserId"),map);
}
@Override
public List<Cultivate> getByCultivateIds(List<Long> cultivateIds) {
Map<String,Object> map=new HashMap<>();
map.put("cultivateIds",cultivateIds);
return super.getSessionTemplate().selectList(getStatement("getByCultivateIds"),map);
}
}
package com.pcloud.book.cultivate.dao.impl;
import com.pcloud.book.cultivate.dao.CultivateHoldSeatDao;
import com.pcloud.book.cultivate.entity.CultivateHoldSeat;
import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Component("cultivateHoldSeatDao")
public class CultivateHoldSeatDaoImpl extends BaseDaoImpl<CultivateHoldSeat> implements CultivateHoldSeatDao {
@Override
public void deleteById(Long cultivateId,Long friendCultivateId) {
Map<String,Object> map=new HashMap<>();
map.put("cultivateId",cultivateId);
map.put("friendCultivateId",friendCultivateId);
super.getSqlSession().update(getStatement("deleteById"), map);
}
@Override
public List<Long> getCultivateIdByFriendId(Long friendCultivateId) {
Map<String,Object> map=new HashMap<>();
map.put("friendCultivateId",friendCultivateId);
return super.getSqlSession().selectList(getStatement("getCultivateIdByFriendId"), map);
}
@Override
public Long getFriendCultivateIdById(Long cultivateId) {
Map<String,Object> map=new HashMap<>();
map.put("cultivateId",cultivateId);
return super.getSqlSession().selectOne(getStatement("getFriendCultivateIdById"), map);
}
@Override
public CultivateHoldSeat getById(Long cultivateId, Long friendCultivateId) {
Map<String,Object> map=new HashMap<>();
map.put("cultivateId",cultivateId);
map.put("friendCultivateId",friendCultivateId);
return super.getSqlSession().selectOne(getStatement("getById"), map);
}
}
......@@ -5,6 +5,7 @@ import com.pcloud.book.cultivate.entity.CultivateRecord;
import com.pcloud.common.core.dao.BaseDaoImpl;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -51,4 +52,12 @@ public class CultivateRecordDaoImpl extends BaseDaoImpl<CultivateRecord> impleme
return super.getSqlSession().selectOne(getStatement("getLastEnergyConsumptionBefore"), map);
}
@Override
public List<CultivateRecord> getHoldSeatFriendList(Long cultivateId, Long lastLightenRecordId) {
Map<String,Object> map=new HashMap<>();
map.put("cultivateId",cultivateId);
map.put("lastLightenRecordId",lastLightenRecordId);
return super.getSqlSession().selectList(getStatement("getHoldSeatFriendList"), map);
}
}
package com.pcloud.book.cultivate.dto;
import com.pcloud.common.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel("小睿基本信息")
public class CultivateDTO extends BaseEntity {
@ApiModelProperty("用户id")
private Long wechatUserId;
@ApiModelProperty("能量")
private Integer energy;
@ApiModelProperty("银两")
private Integer fishBall;
@ApiModelProperty("书币")
private Integer star;
@ApiModelProperty("是否点亮")
private Boolean lighten;
@ApiModelProperty("是否在家")
private Boolean isHome;
@ApiModelProperty("等级")
private Integer level;
@ApiModelProperty("排序用")
private Integer seq;
@ApiModelProperty("用户头像")
private String picUrl;
}
package com.pcloud.book.cultivate.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Map;
@Data
public class DealHoldSeatFriendFishBallDTO {
@ApiModelProperty("养成id")
private Long cultivateId;
@ApiModelProperty("自己还剩银两")
private Integer ownHasFishBall;
@ApiModelProperty("占座好友应该分得的银两Map")
private Map<Long,Double> friendFishBallMap;
}
package com.pcloud.book.cultivate.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class FriendDTO {
@ApiModelProperty("养成id")
private Long cultivateId;
@ApiModelProperty("用户微信id")
private Long wechatUserId;
@ApiModelProperty("用户头像")
private String headPic;
@ApiModelProperty("用户等级")
private Integer level;
@ApiModelProperty("占位")
private Boolean inSeat;
}
package com.pcloud.book.cultivate.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class GiveEnergyDTO {
@ApiModelProperty("养成id")
private Long cultivateId;
@ApiModelProperty("好友养成id")
private Long friendCultivateId;
@ApiModelProperty("能量数")
private Integer energy;
}
package com.pcloud.book.cultivate.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class HoldSeatDTO {
@ApiModelProperty("占座人Id")
private Long cultivateId;
@ApiModelProperty("被占座人Id")
private Long friendCultivateId;
}
package com.pcloud.book.cultivate.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class HoldTimeDTO {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("开始占座时间")
private Date startHold;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty("结束占座时间")
private Date endHold;
@ApiModelProperty("好友id")
private Long friendCultivateId;
@ApiModelProperty("是否还在")
private Boolean stay;
}
......@@ -17,13 +17,22 @@ public class Cultivate extends BaseEntity {
@ApiModelProperty("能量")
private Integer energy;
@ApiModelProperty("鱼丸")
@ApiModelProperty("银两")
private Integer fishBall;
@ApiModelProperty("星星")
@ApiModelProperty("书币")
private Integer star;
@ApiModelProperty("是否点亮")
private Boolean lighten;
@ApiModelProperty("是否在家")
private Boolean isHome;
@ApiModelProperty("等级")
private Integer level;
@ApiModelProperty("排序用")
private Integer seq;
}
package com.pcloud.book.cultivate.entity;
import com.pcloud.common.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel("占座")
public class CultivateHoldSeat extends BaseEntity {
@ApiModelProperty("占座人Id")
private Long cultivateId;
@ApiModelProperty("被占座人Id")
private Long friendCultivateId;
}
......@@ -21,7 +21,7 @@ public class CultivateRecord extends BaseEntity {
@ApiModelProperty("用户id")
private Long wechatUserId;
@ApiModelProperty("动态类型(1鱼丸获取2点亮3熄灭4升级5使用能量值6使用技能7鱼丸兑换星星)")
@ApiModelProperty("动态类型(1银两获取2点亮3熄灭4升级5使用能量值6使用技能7银两兑换书币)")
private Integer changeType;
@ApiModelProperty("备注信息")
......@@ -30,13 +30,13 @@ public class CultivateRecord extends BaseEntity {
@ApiModelProperty("能量变化")
private Integer energyChange;
@ApiModelProperty("鱼丸变化")
@ApiModelProperty("银两变化")
private Integer fishBallChange;
@ApiModelProperty("鱼丸变化类型:1用户自己收,2熄灯之后系统自动收取")
@ApiModelProperty("银两变化类型:1用户自己收,2熄灯之后系统自动收取")
private Integer fishBallChangeType;
@ApiModelProperty("星星变化")
@ApiModelProperty("书币变化")
private Integer starChange;
@ApiModelProperty("使用技能类型")
......@@ -48,4 +48,7 @@ public class CultivateRecord extends BaseEntity {
)
@ApiModelProperty("创建时间")
private Date createTime;
@ApiModelProperty("好友养成id")
private Long friendCultivateId;
}
......@@ -2,11 +2,11 @@ package com.pcloud.book.cultivate.enums;
public enum CultivateChangeTypeEnum {
//1鱼丸获取2点亮3熄灭4升级5使用能量值6使用技能7鱼丸兑换星星
//1银两获取2点亮3熄灭4升级5使用能量值6使用技能7银两兑换书币,(鱼丸=银两,星星=书币)
/**
* 鱼丸获取
* 银两获取
*/
GET_FISH_BALL(1, "鱼丸获取"),
GET_FISH_BALL(1, "银两获取"),
/**
* 点亮
......@@ -29,9 +29,48 @@ public enum CultivateChangeTypeEnum {
*/
USE_SKILL(6,"使用技能"),
/**
* 鱼丸兑换星星
* 银两兑换书币
*/
FISH_BALL_CONVERT_STAR(7,"鱼丸兑换星星");
FISH_BALL_CONVERT_STAR(7,"银两兑换书币"),
/**
* 赠送能量给好友
*/
GIVE_ENERGY_TO_FRIEND(8,"赠送能量给好友"),
/**
* 被好友赠送能量
*/
GET_ENERGY_BY_FRIEND(9,"被好友赠送能量"),
/**
* 占好友座位
*/
HOLD_FRIEND_SEAT(10,"占好友座位"),
/**
* 被好友占座(我)
*/
HOLD_SEAT_BY_FRIEND(11,"被好友占座"),
/**
* 退出好友座位
*/
EXIT_FRIEND_SEAT(12,"退出好友座位"),
/**
* 好友退出我的座位(我)
*/
FRIEND_EXIT_SEAT(13,"好友退出我的座位"),
/**
* 将好友踢出座位(我)
*/
KICK_OUT_FRIEND_BY_SELF(14,"将好友踢出座位"),
/**
* 被好友踢出座位
*/
KICK_OUT_BY_FRIEND(15,"被好友踢出座位"),
/**
* 占座好友灯熄灭
*/
FRIEND_LIGHTS_OUT(16,"占座好友灯熄灭");
public final Integer code;
......
......@@ -8,7 +8,19 @@ public enum FishBallChangeTypeEnum {
/**
* 2熄灯之后系统自动收取
*/
AUTO_CHANGE(2);
AUTO_CHANGE(2),
/**
* 退出好友座位获取银两
*/
EXIT_FRIEND_SEAT_CHANGE(3),
/**
* 被占座好友踢走获取银两
*/
KICK_OUT_BY_FRIEND_CHANGE(4),
/**
* 占座好友熄灯获取到的银两
*/
FRIEND_LIGHTS_OUT_CHANGE(5);
public final Integer value;
......
......@@ -6,6 +6,8 @@ import com.pcloud.book.cultivate.dto.CreateCultivateDTO;
import com.pcloud.book.cultivate.dto.EnergyConsumptionDTO;
import com.pcloud.book.cultivate.dto.FishBallConversionDTO;
import com.pcloud.book.cultivate.dto.FishBallPickDTO;
import com.pcloud.book.cultivate.dto.GiveEnergyDTO;
import com.pcloud.book.cultivate.dto.HoldSeatDTO;
import com.pcloud.book.cultivate.dto.SkillUseDTO;
import com.pcloud.book.cultivate.entity.CultivateBookUser;
import com.pcloud.book.cultivate.entity.CultivateRobotClassify;
......@@ -13,12 +15,10 @@ import com.pcloud.common.dto.ResponseDto;
import com.pcloud.common.exceptions.BizException;
import com.pcloud.common.permission.PermissionException;
import com.pcloud.common.utils.NumberUtil;
import com.pcloud.common.utils.cookie.Cookie;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CookieValue;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
......@@ -72,10 +72,10 @@ public class CultivateFacade {
return new ResponseDto<>();
}
@ApiOperation("鱼丸兑换")
@ApiOperation("银两兑换")
@PostMapping("/fishBallConversion")
public ResponseDto<?> fishBallConversion(
@RequestBody @ApiParam("鱼丸兑换") FishBallConversionDTO fishBallConversionDTO
@RequestBody @ApiParam("银两兑换") FishBallConversionDTO fishBallConversionDTO
) throws BizException, PermissionException {
cultivateBiz.fishBallConversion(fishBallConversionDTO);
return new ResponseDto<>();
......@@ -84,7 +84,7 @@ public class CultivateFacade {
@ApiOperation("新增技能使用记录")
@PostMapping("/addUseSkillRecord")
public ResponseDto<?> addUseSkillRecord(
@RequestBody @ApiParam("鱼丸兑换") SkillUseDTO skillUseDTO
@RequestBody @ApiParam("技能使用") SkillUseDTO skillUseDTO
) throws BizException, PermissionException {
Long wechatUserId=skillUseDTO.getWechatUserId();
cultivateBiz.addUseSkillRecord(wechatUserId,skillUseDTO);
......@@ -92,16 +92,16 @@ public class CultivateFacade {
}
@ApiOperation("鱼丸摘取")
@ApiOperation("银两摘取")
@PostMapping("/fishBallPick")
public ResponseDto<?> fishBallPick(
@RequestBody @ApiParam("鱼丸摘取") FishBallPickDTO fishBallPickDTO
@RequestBody @ApiParam("银两摘取") FishBallPickDTO fishBallPickDTO
) throws BizException, PermissionException {
cultivateBiz.fishBallPick(fishBallPickDTO);
return new ResponseDto<>();
}
@ApiOperation("待摘取鱼丸数量获取")
@ApiOperation("待摘取银两数量获取")
@GetMapping("/getFishBallNotPick")
public ResponseDto<?> getFishBallNotPick(
@RequestParam("cultivateId") @ApiParam("养成id") Long cultivateId
......@@ -190,5 +190,83 @@ public class CultivateFacade {
return new ResponseDto<>(cultivateBiz.getBookSearchRecord(wechatUserId,currentPage,numPerPage));
}
@ApiOperation("获取好友列表")
@GetMapping("/getFriendList")
public ResponseDto<?> getFriendList(
@RequestParam("cultivateId") @ApiParam("养成id") Long cultivateId
) throws BizException, PermissionException {
if(!NumberUtil.isNumber(cultivateId)){
throw new BizException(BizException.PARAM_IS_NULL.getCode(), "cultivateId 不能为空");
}
return new ResponseDto<>(cultivateBiz.getFriendList(cultivateId));
}
@ApiOperation("能量赠送")
@PostMapping("/giveEnergy")
public ResponseDto<?> giveEnergy(
@RequestBody @ApiParam("养成id") GiveEnergyDTO giveEnergyDTO
) throws BizException, PermissionException {
cultivateBiz.giveEnergy(giveEnergyDTO);
return new ResponseDto<>();
}
@ApiOperation("占位之前判断是否要切换占座")
@GetMapping("/beforeHoldSeat")
public ResponseDto<?> beforeHoldSeat(
@RequestParam("cultivateId") @ApiParam("养成id") Long cultivateId
) throws BizException, PermissionException {
return new ResponseDto<>(cultivateBiz.beforeHoldSeat(cultivateId));
}
@ApiOperation("占位")
@PostMapping("/holdSeat")
public ResponseDto<?> holdSeat(
@RequestBody @ApiParam("占座") HoldSeatDTO holdSeatDTO
) throws BizException, PermissionException {
cultivateBiz.holdSeat(holdSeatDTO);
return new ResponseDto<>();
}
@ApiOperation("踢人")
@PostMapping("/kickPeople")
public ResponseDto<?> kickPeople(
@RequestBody @ApiParam("踢人") HoldSeatDTO holdSeatDTO
) throws BizException, PermissionException {
cultivateBiz.kickPeople(holdSeatDTO);
return new ResponseDto<>();
}
@ApiOperation("退出")
@PostMapping("/signOut")
public ResponseDto<?> signOut(
@RequestBody @ApiParam("退出") HoldSeatDTO holdSeatDTO
) throws BizException, PermissionException {
Integer proFishBall = cultivateBiz.signOut(holdSeatDTO);
return new ResponseDto<>(proFishBall);
}
@ApiOperation("找回")
@GetMapping("/getBack")
public ResponseDto<?> getBack(
@RequestParam("cultivateId") @ApiParam("养成id") Long cultivateId
) throws BizException, PermissionException {
return new ResponseDto<>(cultivateBiz.getBack(cultivateId));
}
@ApiOperation("占座两个好友")
@GetMapping("/getHoldSeatFriend")
public ResponseDto<?> getHoldSeatFriend(
@RequestParam("cultivateId") @ApiParam("养成id") Long cultivateId
) throws BizException, PermissionException {
return new ResponseDto<>(cultivateBiz.getHoldSeatFriend(cultivateId));
}
@ApiOperation("获取养成基本信息")
@GetMapping("/getCultivateBaseInfo")
public ResponseDto<?> getCultivateBaseInfo(
@RequestParam("cultivateId") @ApiParam("养成id") Long cultivateId
) throws BizException, PermissionException {
return new ResponseDto<>(cultivateBiz.getCultivateBaseInfo(cultivateId));
}
}
......@@ -33,4 +33,15 @@ public class ThreadPoolUtils {
public static final ExecutorService SEND_MAOPAO_THREAD_POOL = new ThreadPoolExecutor(1, 1, 0L, TimeUnit.SECONDS,
new LinkedBlockingQueue<>(), new ThreadFactoryBuilder().setNameFormat("other-pool-%d").build(), new ThreadPoolExecutor.CallerRunsPolicy());
/**
* 小程序小睿蹭光退出线程池
*/
public static final ExecutorService SIGN_OUT_THREAD_POOL = new ThreadPoolExecutor(5, 5, 0L, TimeUnit.SECONDS,
new LinkedBlockingQueue<>(), new ThreadFactoryBuilder().setNameFormat("sign-out-pool-%d").build(), new ThreadPoolExecutor.CallerRunsPolicy());
/**
* 其他线程池
*/
public static final ExecutorService OTHER_POOL = new ThreadPoolExecutor(8, 8, 0L, TimeUnit.SECONDS,
new LinkedBlockingQueue<>(), new ThreadFactoryBuilder().setNameFormat("other-pool-%d").build(), new ThreadPoolExecutor.CallerRunsPolicy());
}
......@@ -5,8 +5,8 @@ server:
eureka:
instance:
status-page-url-path: /book/v1.0/swagger-ui.html
# client:
# register-with-eureka: false #禁止自己当做服务注册
#client:
#register-with-eureka: false #禁止自己当做服务注册
spring:
application:
......
......@@ -8,12 +8,13 @@
<result column="fish_ball" property="fishBall" jdbcType="INTEGER" />
<result column="star" property="star" jdbcType="INTEGER" />
<result column="lighten" property="lighten" jdbcType="BOOLEAN" />
<result column="is_home" property="isHome" jdbcType="BOOLEAN" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
</resultMap>
<sql id="Base_Column_List" >
id, wechat_user_id, energy, fish_ball, star, lighten, create_time,update_time
id, wechat_user_id, energy, fish_ball, star, lighten, create_time,update_time,is_home
</sql>
<insert id="insert" parameterType="com.pcloud.book.cultivate.entity.Cultivate" useGeneratedKeys="true" keyProperty="id">
......@@ -25,7 +26,8 @@
star,
lighten,
create_time,
update_time
update_time,
is_home
)
values (
#{wechatUserId},
......@@ -34,7 +36,8 @@
#{star},
#{lighten},
NOW(),
NOW()
NOW(),
1
)
</insert>
......@@ -79,4 +82,38 @@
cultivate order by star desc
</select>
<select id="updateIsHome" parameterType="map">
update cultivate
set is_home=#{isHome}
where id=#{cultivateId}
</select>
<select id="getRandomUserId" parameterType="map" resultMap="BaseResultMap">
SELECT <include refid="Base_Column_List"/> FROM cultivate
WHERE id >= (SELECT floor(RAND() * (SELECT count(1) FROM cultivate)))
and id!=#{cultivateId}
<if test="friendCultivateId !=null">
and id!=#{friendCultivateId}
ORDER BY lighten desc,id asc LIMIT 9
</if>
<if test="friendCultivateId ==null">
ORDER BY lighten desc,id asc LIMIT 10
</if>
</select>
<select id="getByCultivateIds" parameterType="map" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from
cultivate
where id IN
<foreach collection="cultivateIds" open="(" close=")" separator="," item="item">
#{item}
</foreach>
group by id
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.pcloud.book.cultivate.dao.impl.CultivateHoldSeatDaoImpl" >
<resultMap id="BaseResultMap" type="com.pcloud.book.cultivate.entity.CultivateHoldSeat" >
<id column="id" property="id" jdbcType="BIGINT" />
<result column="cultivate_id" property="cultivateId" jdbcType="BIGINT" />
<result column="friend_cultivate_id" property="friendCultivateId" jdbcType="BIGINT" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
</resultMap>
<sql id="Base_Column_List" >
id, cultivate_id, friend_cultivate_id, create_time,update_time
</sql>
<insert id="insert" parameterType="com.pcloud.book.cultivate.entity.CultivateHoldSeat" useGeneratedKeys="true" keyProperty="id">
insert into cultivate_hold_seat
(
cultivate_id,
friend_cultivate_id,
create_time,
update_time
)
values (
#{cultivateId},
#{friendCultivateId},
NOW(),
NOW()
)
</insert>
<select id="deleteById" parameterType="map">
DELETE from cultivate_hold_seat
WHERE cultivate_id=#{cultivateId}
and friend_cultivate_id=#{friendCultivateId}
</select>
<select id="getCultivateIdByFriendId" parameterType="map" resultType="long">
SELECT DISTINCT cultivate_id
FROM cultivate_hold_seat
where friend_cultivate_id=#{friendCultivateId}
</select>
<select id="getFriendCultivateIdById" parameterType="map" resultType="long">
select friend_cultivate_id from cultivate_hold_seat
where cultivate_id=#{cultivateId}
limit 1
</select>
<select id="getById" parameterType="map" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from cultivate_hold_seat
where cultivate_id=#{cultivateId}
and friend_cultivate_id=#{friendCultivateId}
limit 1
</select>
</mapper>
\ No newline at end of file
......@@ -13,18 +13,19 @@
<result column="star_change" property="starChange" jdbcType="INTEGER" />
<result column="skill_type" property="skillType" jdbcType="INTEGER" />
<result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
<result column="friend_cultivate_id" property="friendCultivateId" jdbcType="BIGINT" />
</resultMap>
<sql id="Base_Column_List" >
id, cultivate_id, wechat_user_id, change_type, remark, energy_change, fish_ball_change, fish_ball_change_type, star_change, skill_type, create_time
id, cultivate_id, wechat_user_id, change_type, remark, energy_change, fish_ball_change, fish_ball_change_type, star_change, skill_type, create_time, friend_cultivate_id
</sql>
<insert id="insert" parameterType="com.pcloud.book.cultivate.entity.CultivateRecord" useGeneratedKeys="true" keyProperty="id">
insert into cultivate_record (cultivate_id, wechat_user_id, change_type,
remark, energy_change, fish_ball_change, fish_ball_change_type,star_change, skill_type, create_time
remark, energy_change, fish_ball_change, fish_ball_change_type,star_change, skill_type, create_time,friend_cultivate_id
)
values (#{cultivateId},#{wechatUserId},#{changeType},#{remark},#{energyChange},#{fishBallChange},#{fishBallChangeType},
#{starChange}, #{skillType}, NOW()
#{starChange}, #{skillType}, NOW(),#{friendCultivateId}
)
</insert>
......@@ -107,6 +108,15 @@
limit 1
</select>
<select id="getHoldSeatFriendList" parameterType="map" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/>
from cultivate_record
where cultivate_id = #{cultivateId}
and id > #{lastLightenRecordId}
and change_type in (11,13,14)
and friend_cultivate_id is not null
</select>
<select id="getBookSearchRecord" parameterType="map" resultType="com.pcloud.book.book.vo.SearchBookVO">
select a.id,a.content,a.book_id bookId ,b.book_name bookName,a.agent_id agentId,c.SECOND_TEMPLET_ID secondTempletId,b.publish ,c.ADVISER_ID adviserId
,a.create_time createTime,b.author,b.COVER_IMG coverImg
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment