记得上下班打卡 | git大法好,push需谨慎

Commit b63356f6 authored by zhengfuxin's avatar zhengfuxin

合集相关的东西

parent a7ed200f
......@@ -36,6 +36,7 @@ public class GoblinRedisConst {
public static final String FRONT_SECKILL = PREFIX.concat("front_seckill"); //前端 秒杀列表
public static final String SELECT_GOODS = PREFIX.concat("select_goods"); //精选商品
public static final String MOUDLE_INDEX = PREFIX.concat("moudle_index"); //moudle_index 组件排序
public static final String COMPLIATIONS = PREFIX.concat("goblinFrontCompilations"); // 合集
/* ----------------------------------------------------------------- */
......
package com.liquidnet.service.goblin.param;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.liquidnet.commons.lang.util.DateUtil;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 合集
* </p>
*
* @author liquidnet
* @since 2022-01-06
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class GoblinFrontCompilationsParam implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Long mid;
/**
* 合集id
*/
@ApiModelProperty(value = "合集id")
private String compilationsId;
/**
* 合集名称
*/
@ApiModelProperty(value = "合集名称")
private String name;
/**
* spu ids
*/
@ApiModelProperty(value = "spu ids")
private String spuIds;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern= DateUtil.DATE_FULL_STR)
private LocalDateTime createTime;
/**
* 修改时间
*/
@ApiModelProperty(value = "修改时间")
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern=DateUtil.DATE_FULL_STR)
private LocalDateTime updateTime;
/**
* 0未删除1已删除
*/
@ApiModelProperty(value = "0未删除1已删除")
private Integer delTag;
}
......@@ -38,6 +38,8 @@ public class GoblinFrontBannerController extends BaseController {
GoblinFrontSelectGoodsServiceImpl goblinFrontSelectGoodsService;
@Autowired
GoblinFrontMoudleIndexServiceImpl goblinFrontMoudleIndexService;
@Autowired
GoblinFrontCompilationsServiceImpl goblinFrontCompilationsService;
/**
* @author zhangfuxin
......@@ -124,6 +126,8 @@ public class GoblinFrontBannerController extends BaseController {
logger.info("精选商品{}",selectGoods);
boolean moudleIndexResult=goblinFrontMoudleIndexService.online();
logger.info("组件排序{}",moudleIndexResult);
boolean hejiReult=goblinFrontCompilationsService.online();
logger.info("合集{}",hejiReult);
if (bannerResult&&hotWordResult&&navigationResult ) {
return success("操作成功");
} else {
......
package com.liquidnet.client.admin.web.controller.zhengzai.goblin;
import com.alibaba.fastjson.JSON;
import com.liquidnet.client.admin.common.core.controller.BaseController;
import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.zhengzai.goblin.service.impl.GoblinFrontCompilationsServiceImpl;
import com.liquidnet.service.goblin.entity.GoblinFrontCompilations;
import com.liquidnet.service.goblin.param.GoblinFrontCompilationsParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* <p>
* 合集 前端控制器
* </p>
*
* @author liquidnet
* @since 2022-01-06
*/
@Api(tags = "合集管理")
@RestController
@RequestMapping("/compilations")
public class GoblinFrontCompilationsController extends BaseController {
@Autowired
GoblinFrontCompilationsServiceImpl goblinFrontCompilationsService;
/**
* @author zhangfuxin
* @Description:添加合集
* @date 2021/12/27 下午1:22
*/
@PostMapping("create")
@ApiOperation(value = "添加合集")
@ResponseBody
public AjaxResult create(@RequestBody GoblinFrontCompilationsParam goblinFrontCompilationsParam) {
GoblinFrontCompilations goblinFrontCompilations=new GoblinFrontCompilations();
BeanUtils.copyProperties(goblinFrontCompilationsParam,goblinFrontCompilations);
logger.info("添加合集{}", JSON.toJSONString(goblinFrontCompilationsParam));
boolean result=goblinFrontCompilationsService.create(goblinFrontCompilations);
if (result ) {
return success("操作成功");
} else {
return error("操作失败");
}
}
@PostMapping("update")
@ApiOperation(value = "修改合集")
@ResponseBody
public AjaxResult update( @RequestBody GoblinFrontCompilationsParam goblinFrontCompilationsParam) {
GoblinFrontCompilations goblinFrontCompilations=new GoblinFrontCompilations();
BeanUtils.copyProperties(goblinFrontCompilationsParam,goblinFrontCompilations);
logger.info("修改合集{}", JSON.toJSONString(goblinFrontCompilationsParam));
boolean result=goblinFrontCompilationsService.update(goblinFrontCompilations);
if (result ) {
return success("操作成功");
} else {
return error("操作失败");
}
}
@PostMapping("delete")
@ApiOperation(value = "删除合集")
@ResponseBody
public AjaxResult delete( @RequestBody GoblinFrontCompilationsParam goblinFrontCompilationsParam) {
boolean result=goblinFrontCompilationsService.delte(goblinFrontCompilationsParam.getMid());
if (result ) {
return success("操作成功");
} else {
return error("操作失败");
}
}
@PostMapping("getOne")
@ApiOperation(value = "查看详情")
@ResponseBody
public AjaxResult getOne( @RequestBody GoblinFrontCompilationsParam goblinFrontCompilationsParam) {
GoblinFrontCompilations goblinFrontCompilations=new GoblinFrontCompilations();
BeanUtils.copyProperties(goblinFrontCompilationsParam,goblinFrontCompilations);
logger.info("查看详情{}", JSON.toJSONString(goblinFrontCompilationsParam));
GoblinFrontCompilations goblinFrontCompilations1=goblinFrontCompilationsService.getOne(goblinFrontCompilationsParam.getMid());
return AjaxResult.success(goblinFrontCompilations1);
}
@PostMapping("page")
@ApiOperation(value = "分页")
@ResponseBody
public AjaxResult page( @RequestParam(name = "pageSize", required = true) int pageSize,@RequestParam(name = "pageNumber", required = true)int pageNumber,@RequestBody GoblinFrontCompilationsParam goblinFrontCompilationsParam) {
return AjaxResult.success(goblinFrontCompilationsService.page(pageSize,pageNumber));
}
}
package com.liquidnet.client.admin.zhengzai.goblin.service;
import com.liquidnet.service.goblin.entity.GoblinFrontCompilations;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 合集 服务类
* </p>
*
* @author liquidnet
* @since 2022-01-06
*/
public interface IGoblinFrontCompilationsService extends IService<GoblinFrontCompilations> {
}
package com.liquidnet.client.admin.zhengzai.goblin.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.liquidnet.client.admin.zhengzai.goblin.service.IGoblinFrontCompilationsService;
import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.goblin.constant.GoblinRedisConst;
import com.liquidnet.service.goblin.entity.GoblinFrontCompilations;
import com.liquidnet.service.goblin.mapper.GoblinFrontCompilationsMapper;
import com.mongodb.BasicDBObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
/**
* <p>
* 合集 服务实现类
* </p>
*
* @author liquidnet
* @since 2022-01-06
*/
@Service
public class GoblinFrontCompilationsServiceImpl extends ServiceImpl<GoblinFrontCompilationsMapper, GoblinFrontCompilations> implements IGoblinFrontCompilationsService {
@Autowired
private MongoTemplate mongoTemplate;
@Autowired
GoblinFrontCompilationsMapper goblinFrontCompilationsMapper;
@Autowired
private RedisDataSourceUtil redisDataSourceUtil;
public boolean create(GoblinFrontCompilations goblinFrontCompilations){
goblinFrontCompilations.setCreateTime(LocalDateTime.now());
//设置bannerid
goblinFrontCompilations.setCompilationsId(IDGenerator.nextSnowId());
goblinFrontCompilationsMapper.insert(goblinFrontCompilations);
return true;
}
public boolean update(GoblinFrontCompilations goblinFrontCompilations){
goblinFrontCompilations.setUpdateTime(LocalDateTime.now());
//数据库修改
goblinFrontCompilationsMapper.updateById(goblinFrontCompilations);
return true;
}
public GoblinFrontCompilations getOne(Long id){
return goblinFrontCompilationsMapper.selectById(id);
}
public boolean delte(Long id){
GoblinFrontCompilations goblinFrontCompilations=goblinFrontCompilationsMapper.selectById(id);
goblinFrontCompilations.setDelTag(1);
this.update(goblinFrontCompilations);
return true;
}
public PageInfo<GoblinFrontCompilations> page(int pageSize, int pageNumber) {
PageInfo<GoblinFrontCompilations> pageInfoTmp = null;
try {
PageHelper.startPage(pageNumber, pageSize);
LambdaQueryWrapper<GoblinFrontCompilations> queryWrapper = Wrappers.lambdaQuery(GoblinFrontCompilations.class);
queryWrapper.orderByDesc(GoblinFrontCompilations::getCreateTime);
List<GoblinFrontCompilations> list=goblinFrontCompilationsMapper.selectList(queryWrapper);
pageInfoTmp = new PageInfo(list);
} catch (Exception e) {
return new PageInfo();
}
return pageInfoTmp;
}
public boolean online(){
//mysql 获取list
LambdaQueryWrapper<GoblinFrontCompilations> queryWrapper = Wrappers.lambdaQuery(GoblinFrontCompilations.class);
queryWrapper.orderByDesc(GoblinFrontCompilations::getCreateTime);
List<GoblinFrontCompilations> list=goblinFrontCompilationsMapper.selectList(queryWrapper);
// mongodb
for(GoblinFrontCompilations goblinFrontCompilations:list){
GoblinFrontCompilations goblinFrontCompilations1= mongoTemplate.findOne(Query.query(Criteria.where("compilationsId").is(goblinFrontCompilations.getCompilationsId())), GoblinFrontCompilations.class, GoblinFrontCompilations.class.getSimpleName());
if(null==goblinFrontCompilations1){
mongoTemplate.save(goblinFrontCompilations,GoblinFrontCompilations.class.getSimpleName());
}else{
BasicDBObject orderObject = new BasicDBObject("$set", JSON.parse(JsonUtils.toJson(goblinFrontCompilations1)));
mongoTemplate.getCollection(GoblinFrontCompilations.class.getSimpleName()).updateOne(
Query.query(Criteria.where("compilationsId").is(goblinFrontCompilations.getCompilationsId())).getQueryObject(),
orderObject
);
}
}
for(GoblinFrontCompilations goblinFrontCompilations:list){
redisDataSourceUtil.getRedisGoblinUtil().set(GoblinRedisConst.COMPLIATIONS+goblinFrontCompilations.getMid(),goblinFrontCompilations);
}
return true;
}
}
package com.liquidnet.service.goblin.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 合集
* </p>
*
* @author liquidnet
* @since 2022-01-06
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class GoblinFrontCompilations implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "mid", type = IdType.AUTO)
private Long mid;
/**
* 合集id
*/
private String compilationsId;
/**
* 合集名称
*/
private String name;
/**
* spu ids
*/
private String spuIds;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 修改时间
*/
private LocalDateTime updateTime;
/**
* 0未删除1已删除
*/
private Integer delTag;
}
package com.liquidnet.service.goblin.mapper;
import com.liquidnet.service.goblin.entity.GoblinFrontCompilations;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* 合集 Mapper 接口
* </p>
*
* @author liquidnet
* @since 2022-01-06
*/
public interface GoblinFrontCompilationsMapper extends BaseMapper<GoblinFrontCompilations> {
}
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