Commit b61833b7 authored by lidashuai's avatar lidashuai

feat: 增加统计接口

parent 99bb83aa
......@@ -3,22 +3,10 @@ package cn.wisenergy.chnmuseum.party.common.mybatis;
public class MysqlGenerator {
private static final String[] tableNames = new String[] {
"asset",
"asset_type",
"board_talking",
"copyright_owner",
"copyright_owner_asset_type",
"copyright_owner_board_type",
"exhibition_board",
"exhibition_board_cat",
"learning_content",
"learning_content_board",
"learning_content_board_cat",
"learning_content_copyright_owner",
"sys_log",
"run_log"
"t_user_role_link"
};
private static final String projectPath = "/opt/ss";
private static final String projectPath = "D:\\develop\\Project\\chnmuseum-party";
// private static final String projectPath = "/opt/ss";
public static void main(String[] args) {
CodeGenerator codeGenerator = new CodeGenerator();
......
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.BoardPlayRank;
/**
* <pre>
* 看板播放排行 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface BoardPlayRankMapper extends BaseMapper<BoardPlayRank> {
}
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.BoardPlayTrend;
/**
* <pre>
* 看板播放排行 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface BoardPlayTrendMapper extends BaseMapper<BoardPlayTrend> {
}
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.DistrictBoardStatistic;
/**
* <pre>
* 看板播放排行 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface DistrictBoardStatisticMapper extends BaseMapper<DistrictBoardStatistic> {
}
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.InteractionRank;
/**
* <pre>
* 互动排行 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface InteractionRankMapper extends BaseMapper<InteractionRank> {
}
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.Statistic;
/**
* <pre>
* 看板播放排行 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface StatisticMapper extends BaseMapper<Statistic> {
}
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.TCourseBoardLink;
/**
* <pre>
* 视频 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-22
*/
public interface TCourseBoardLinkMapper extends BaseMapper<TCourseBoardLink> {
}
package cn.wisenergy.chnmuseum.party.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import cn.wisenergy.chnmuseum.party.model.TItem;
/**
* <pre>
* 学习内容项目 Mapper 接口
* </pre>
*
* @author Danny Lee
* @since 2021-03-22
*/
public interface TItemMapper extends BaseMapper<TItem> {
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* <p>
* 看板播放排行
* </p>
* @author Danny Lee
* @since 2021-03-20
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("board_play_rank")
@ApiModel(value = "展板播放排行", description = "展板播放排行")
public class BoardPlayRank implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value ="ID")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "IDID不能为空")
private String id;
@ApiModelProperty(value ="看板ID")
@TableField("board_id")
@NotBlank(message = "看板ID不能为空", groups = {Add.class})
private String boardId;
@ApiModelProperty(value ="看板名称")
@TableField("board_name")
@NotBlank(message = "看板名称不能为空", groups = {Add.class})
private String boardName;
@ApiModelProperty(value ="播放次数")
@TableField("play_number")
private Integer playNumber;
@ApiModelProperty(value ="年")
@TableField("year")
private String year;
@ApiModelProperty(value ="月")
@TableField("month")
private String month;
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* <p>
* 看板播放排行
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("board_play_trend")
@ApiModel(value = "展板播放趋势", description = "展板播放趋势")
public class BoardPlayTrend implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("ID")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "IDID不能为空")
private String id;
@ApiModelProperty("看板ID")
@TableField("board_id")
@NotBlank(message = "看板ID不能为空", groups = {Add.class})
private String boardId;
@ApiModelProperty("看板名称")
@TableField("board_name")
@NotBlank(message = "看板名称不能为空", groups = {Add.class})
private String boardName;
@ApiModelProperty("播放次数")
@TableField("play_number")
private Integer playNumber;
@ApiModelProperty("数据时间")
@TableField("data_time")
private LocalDate dataTime;
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import com.baomidou.mybatisplus.core.conditions.update.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* <p>
* 看板播放排行
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("district_board_statistic")
@ApiModel(value = "地区展板播放统计", description = "地区展板播放统计")
public class DistrictBoardStatistic implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("ID")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "IDID不能为空")
private String id;
@ApiModelProperty("看板ID")
@TableField("board_id")
@NotBlank(message = "看板ID不能为空", groups = {Add.class, Update.class})
private String boardId;
@ApiModelProperty("看板名称")
@TableField("board_name")
@NotBlank(message = "看板名称不能为空", groups = {Add.class, Update.class})
private String boardName;
@ApiModelProperty("播放次数")
@TableField("play_number")
private Integer playNumber;
@ApiModelProperty("年")
@TableField("year")
private String year;
@ApiModelProperty("月")
@TableField("month")
private String month;
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 互动排行
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("interaction_rank")
@ApiModel(value = "互动频次", description = "互动频次")
public class InteractionRank implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("id")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "ID不能为空")
private String id;
@ApiModelProperty("机构id")
@TableField("organ_id")
private String organId;
@ApiModelProperty("机构名称")
@TableField("organ_name")
@NotBlank(message = "机构名称不能为空", groups = {Add.class})
private String organName;
@ApiModelProperty("互动次数")
@TableField("number")
private Integer number;
@ApiModelProperty("创建时间")
@TableField(value = "create_time", fill = FieldFill.INSERT)
@NotNull(message = "创建时间不能为空", groups = {Add.class})
private LocalDateTime createTime;
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.core.injector.methods.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDate;
/**
* <p>
* 看板播放排行
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("statistic")
@ApiModel(value = "播放数据统计", description = "播放数据统计")
public class Statistic implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("ID")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "IDID不能为空", groups = {Update.class})
private String id;
@ApiModelProperty("总机构数")
@TableField("organ_number")
@NotNull(message = "总机构数不能为空", groups = {Add.class, Update.class})
private Integer organNumber;
@ApiModelProperty("看板名称")
@TableField("board_number")
@NotNull(message = "看板名称不能为空", groups = {Add.class, Update.class})
private Integer boardNumber;
@ApiModelProperty("播放次数")
@TableField("play_number")
private Integer playNumber;
@ApiModelProperty("互动数量")
@TableField("interaction_number")
private Integer interactionNumber;
@ApiModelProperty("数据时间")
@TableField("data_time")
private LocalDate dataTime;
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.core.conditions.update.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 视频
* </p>
*
* @author Danny Lee
* @since 2021-03-22
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("t_course_board_link")
@ApiModel(value = "视频", description = "视频")
public class TCourseBoardLink implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("id")
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "idID不能为空", groups = {Update.class})
private String id;
@ApiModelProperty("材料ID")
@TableField("board_id")
private String boardId;
@ApiModelProperty("名称")
@TableField("course_id")
private String courseId;
@ApiModelProperty("创建时间")
@TableField(value = "create_time", fill = FieldFill.INSERT)
@NotNull(message = "创建时间不能为空", groups = {Add.class, Update.class})
private LocalDateTime createTime;
@ApiModelProperty("0:未删除,1:已删除")
@TableField("is_deleted")
private Boolean isDeleted;
}
package cn.wisenergy.chnmuseum.party.model;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.core.conditions.update.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 学习内容项目
* </p>
*
* @author Danny Lee
* @since 2021-03-22
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@TableName("t_item")
@ApiModel(value = "学习内容项目", description = "学习内容项目")
public class TItem implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id" ,hidden = true)
@TableId(value = "id", type = IdType.ASSIGN_ID)
@NotNull(message = "ID不能为空", groups = {Update.class})
private String id;
@ApiModelProperty("名称")
@TableField("name")
@NotBlank(message = "名称不能为空", groups = {Add.class, Update.class})
private String name;
@ApiModelProperty("创建时间")
@TableField(value = "create_time", fill = FieldFill.INSERT)
@NotNull(message = "创建时间不能为空", groups = {Add.class, Update.class})
private LocalDateTime createTime;
@ApiModelProperty("0:未删除,1:已删除")
@TableField("is_deleted")
private Boolean isDeleted;
@ApiModelProperty("备注")
@TableField("remarks")
private String remarks;
@ApiModelProperty("更新时间")
@TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
private LocalDateTime updateTime;
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.BoardPlayRank;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 看板播放排行 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface BoardPlayRankService extends IService<BoardPlayRank> {
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.BoardPlayTrend;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 看板播放排行 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface BoardPlayTrendService extends IService<BoardPlayTrend> {
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.DistrictBoardStatistic;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 看板播放排行 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface DistrictBoardStatisticService extends IService<DistrictBoardStatistic> {
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.InteractionRank;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 互动排行 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface InteractionRankService extends IService<InteractionRank> {
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.Statistic;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 看板播放排行 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-20
*/
public interface StatisticService extends IService<Statistic> {
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.TCourseBoardLink;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 视频 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-22
*/
public interface TCourseBoardLinkService extends IService<TCourseBoardLink> {
}
package cn.wisenergy.chnmuseum.party.service;
import cn.wisenergy.chnmuseum.party.model.TItem;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 学习内容项目 服务接口
* </p>
*
* @author Danny Lee
* @since 2021-03-22
*/
public interface TItemService extends IService<TItem> {
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.BoardPlayRank;
import cn.wisenergy.chnmuseum.party.mapper.BoardPlayRankMapper;
import cn.wisenergy.chnmuseum.party.service.BoardPlayRankService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 看板播放排行 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Slf4j
@Service
public class BoardPlayRankServiceImpl extends ServiceImpl<BoardPlayRankMapper, BoardPlayRank> implements BoardPlayRankService {
@Autowired
private BoardPlayRankMapper boardPlayRankMapper;
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.BoardPlayTrend;
import cn.wisenergy.chnmuseum.party.mapper.BoardPlayTrendMapper;
import cn.wisenergy.chnmuseum.party.service.BoardPlayTrendService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 看板播放排行 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Slf4j
@Service
public class BoardPlayTrendServiceImpl extends ServiceImpl<BoardPlayTrendMapper, BoardPlayTrend> implements BoardPlayTrendService {
@Autowired
private BoardPlayTrendMapper boardPlayTrendMapper;
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.DistrictBoardStatistic;
import cn.wisenergy.chnmuseum.party.mapper.DistrictBoardStatisticMapper;
import cn.wisenergy.chnmuseum.party.service.DistrictBoardStatisticService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 看板播放排行 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Slf4j
@Service
public class DistrictBoardStatisticServiceImpl extends ServiceImpl<DistrictBoardStatisticMapper, DistrictBoardStatistic> implements DistrictBoardStatisticService {
@Autowired
private DistrictBoardStatisticMapper districtBoardStatisticMapper;
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.InteractionRank;
import cn.wisenergy.chnmuseum.party.mapper.InteractionRankMapper;
import cn.wisenergy.chnmuseum.party.service.InteractionRankService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 互动排行 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Slf4j
@Service
public class InteractionRankServiceImpl extends ServiceImpl<InteractionRankMapper, InteractionRank> implements InteractionRankService {
@Autowired
private InteractionRankMapper interactionRankMapper;
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.Statistic;
import cn.wisenergy.chnmuseum.party.mapper.StatisticMapper;
import cn.wisenergy.chnmuseum.party.service.StatisticService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 看板播放排行 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Slf4j
@Service
public class StatisticServiceImpl extends ServiceImpl<StatisticMapper, Statistic> implements StatisticService {
@Autowired
private StatisticMapper statisticMapper;
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.TCourseBoardLink;
import cn.wisenergy.chnmuseum.party.mapper.TCourseBoardLinkMapper;
import cn.wisenergy.chnmuseum.party.service.TCourseBoardLinkService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 视频 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-22
*/
@Slf4j
@Service
public class TCourseBoardLinkServiceImpl extends ServiceImpl<TCourseBoardLinkMapper, TCourseBoardLink> implements TCourseBoardLinkService {
@Autowired
private TCourseBoardLinkMapper tCourseBoardLinkMapper;
}
package cn.wisenergy.chnmuseum.party.service.impl;
import cn.wisenergy.chnmuseum.party.model.TItem;
import cn.wisenergy.chnmuseum.party.mapper.TItemMapper;
import cn.wisenergy.chnmuseum.party.service.TItemService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.beans.factory.annotation.Autowired;
/**
* <pre>
* 学习内容项目 服务实现类
* </pre>
*
* @author Danny Lee
* @since 2021-03-22
*/
@Slf4j
@Service
public class TItemServiceImpl extends ServiceImpl<TItemMapper, TItem> implements TItemService {
@Autowired
private TItemMapper tItemMapper;
}
package cn.wisenergy.chnmuseum.party.vo;
import cn.wisenergy.chnmuseum.party.model.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;
import java.io.Serializable;
@ApiModel("统计数据")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
public class StatisticData implements Serializable {
/**
* 看板播放排行
*/
@ApiModelProperty(value = "展板播放排行", name = "name")
private BoardPlayRank boardPlayRank;
/**
* 数据汇总
*/
@ApiModelProperty("播放数据统计")
private Statistic totalStatistic;
/**
* 地区看板播放统计
*/
@ApiModelProperty("地区展板播放统计")
private DistrictBoardStatistic districtBoard;
/*** 互动频次
*/
@ApiModelProperty("互动频次")
private InteractionRank interactionRank;
/**
* 看板点播趋势
*/
@ApiModelProperty("展板播放趋势")
private BoardPlayTrend boardPlayTrend;
}
package cn.wisenergy.chnmuseum.party.web.controller;
import cn.wisenergy.chnmuseum.party.model.Menu;
import cn.wisenergy.chnmuseum.party.model.Role;
import cn.wisenergy.chnmuseum.party.vo.StatisticData;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import cn.wisenergy.chnmuseum.party.web.controller.base.BaseController;
import cn.wisenergy.chnmuseum.party.model.Statistic;
import cn.wisenergy.chnmuseum.party.service.StatisticService;
import cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Update;
import cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.stereotype.Controller;
import javax.annotation.Resource;
import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;
/**
* <pre>
* 大屏统计数据 前端控制器
* </pre>
*
* @author Danny Lee
* @since 2021-03-20
*/
@Slf4j
@RestController
@RequestMapping("/screen")
@Api(tags = {"统计数据"})
public class StatisticController extends BaseController {
@Resource
private StatisticService statisticService;
@GetMapping("/statistic")
@ApiOperation(value = "统计数据", notes = "统计数据")
public ResponseEntity<StatisticData> getScreenData() {
return ResponseEntity.ok(new StatisticData());
}
}
package cn.wisenergy.chnmuseum.party.web.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import cn.wisenergy.chnmuseum.party.web.controller.base.BaseController;
import cn.wisenergy.chnmuseum.party.model.TItem;
import cn.wisenergy.chnmuseum.party.service.TItemService;
import cn.wisenergy.chnmuseum.party.common.enums.AuditStatusEnum;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Add;
import cn.wisenergy.chnmuseum.party.common.validator.groups.Update;
import cn.wisenergy.chnmuseum.party.common.vo.GenericPageParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.stereotype.Controller;
import javax.annotation.Resource;
import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Map;
/**
* <pre>
* 学习内容项目 前端控制器
* </pre>
*
* @author Danny Lee
* @since 2021-03-22
*/
@Slf4j
@RestController
@RequestMapping("/tItem")
@Api(tags = {"学习内容项目操作接口"})
public class TItemController extends BaseController {
@Resource
private TItemService tItemService;
@PostMapping("/batchSave")
@RequiresPermissions("t:item:batch:save")
@ApiOperation(value = "批量添加学习内容项目", notes = "批量添加学习内容项目")
public Map<String, Object> batchSaveTItem(@Validated(value = {Add.class}) List<TItem> tItemList) {
// 保存业务节点信息
boolean result = tItemService.saveBatch(tItemList);
// 返回操作结果
if (result) {
return getSuccessResult();
} else {
// 保存失败
return getFailResult();
}
}
@PostMapping("/save")
@RequiresPermissions("t:item:save")
@ApiOperation(value = "添加学习内容项目", notes = "添加学习内容项目")
public Map<String, Object> saveTItem(@Validated(value = {Add.class}) TItem tItem) {
// 保存业务节点信息
boolean result = tItemService.save(tItem);
// 返回操作结果
if (result) {
return getSuccessResult();
} else {
// 保存失败
return getFailResult();
}
}
@PutMapping("/update")
@RequiresPermissions("t:item:update")
@ApiOperation(value = "修改学习内容项目信息", notes = "修改学习内容项目信息")
public Map<String, Object> updateTItem(@Validated(value = {Update.class}) TItem tItem) {
boolean flag = tItemService.updateById(tItem);
if (flag) {
return getSuccessResult();
}
return getFailResult();
}
@PutMapping("/updateAuditStatus/{id}")
@RequiresPermissions("t:item:update:audit:status")
@ApiOperation(value = "更新学习内容项目审核状态", notes = "更新学习内容项目审核状态")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "id", value = "标识ID", dataType = "String", paramType = "path"),
@ApiImplicitParam(name = "status", value = "状态", paramType = "query", dataType = "String")
})
public Map<String, Object> updateStatus(@NotNull(message = "学习内容项目ID不能为空") @PathVariable("id") String id, @RequestParam("status") AuditStatusEnum status) {
UpdateWrapper<TItem> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("id", id);
updateWrapper.eq("audit_status", status.name());
boolean flag = tItemService.update(updateWrapper);
if (flag) {
return getSuccessResult();
}
return getFailResult();
}
@DeleteMapping("/delete/{id}")
@RequiresPermissions("t:item:delete")
@ApiOperation(value = "根据ID删除学习内容项目", notes = "根据ID删除学习内容项目")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "id", value = "标识ID", paramType = "path", dataType = "String")
})
public Map<String, Object> deleteTItem(@PathVariable("id") String id) {
boolean result = tItemService.removeById(id);
if (result) {
return getSuccessResult();
}
return getFailResult();
}
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "_index", value = "分页起始偏移量", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "_size", value = "返回条数", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "nameOrCode", value = "名称或编码", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "startDate", value = "创建时间-开始", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "创建时间-结束", paramType = "query", dataType = "String")
})
@PostMapping("/getPageList")
@RequiresPermissions("t:item:page")
@ApiOperation(value = "获取学习内容项目分页列表", notes = "获取学习内容项目分页列表")
public Map<String, Object> getTItemPageList(GenericPageParam genericPageParam) {
LambdaQueryWrapper<TItem> queryWrapper = new LambdaQueryWrapper<>();
// 对名称或编码模糊查询
if (StringUtils.isNotBlank(genericPageParam.getNameOrCode())) {
queryWrapper.like(TItem::getName, genericPageParam.getNameOrCode());
}
// 根据创建时间区间检索
if (genericPageParam.getStartDate() != null && genericPageParam.getEndDate() != null) {
queryWrapper.ge(TItem::getCreateTime, genericPageParam.getStartDate().atTime(0, 0, 0))
.le(TItem::getCreateTime, genericPageParam.getEndDate().atTime(23, 59, 59));
}
// 设置排序规则
queryWrapper.orderByDesc(TItem::getCreateTime);
// 设置查询内容
queryWrapper.select(
TItem::getId,
TItem::getName,
TItem::getCreateTime,
TItem::getUpdateTime);
Page<TItem> page = this.tItemService.page(getPage(), queryWrapper);
for (TItem tItem : page.getRecords()) {
}
return getResult(page);
}
@ApiOperation(value = "获取学习内容项目详情", notes = "获取学习内容项目详情")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "标识ID", dataType = "String", paramType = "path")
})
@GetMapping("/get/{id}")
@RequiresPermissions("t:item:get:id")
public Map<String, Object> getById(@PathVariable("id") String id) {
TItem tItem = tItemService.getById(id);
return getResult(tItem);
}
}
<?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="cn.wisenergy.chnmuseum.party.mapper.BoardPlayRankMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.BoardPlayRank">
<id column="id" property="id" />
<result column="board_id" property="boardId" />
<result column="board_name" property="boardName" />
<result column="play_number" property="playNumber" />
<result column="year" property="year" />
<result column="month" property="month" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, board_id, board_name, play_number, year, month
</sql>
</mapper>
<?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="cn.wisenergy.chnmuseum.party.mapper.BoardPlayTrendMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.BoardPlayTrend">
<id column="id" property="id" />
<result column="board_id" property="boardId" />
<result column="board_name" property="boardName" />
<result column="play_number" property="playNumber" />
<result column="data_time" property="dataTime" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, board_id, board_name, play_number, data_time
</sql>
</mapper>
<?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="cn.wisenergy.chnmuseum.party.mapper.DistrictBoardStatisticMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.DistrictBoardStatistic">
<id column="id" property="id" />
<result column="board_id" property="boardId" />
<result column="board_name" property="boardName" />
<result column="play_number" property="playNumber" />
<result column="year" property="year" />
<result column="month" property="month" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, board_id, board_name, play_number, year, month
</sql>
</mapper>
<?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="cn.wisenergy.chnmuseum.party.mapper.InteractionRankMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.InteractionRank">
<id column="id" property="id" />
<result column="organ_id" property="organId" />
<result column="organ_name" property="organName" />
<result column="number" property="number" />
<result column="create_time" property="createTime" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, organ_id, organ_name, number, create_time
</sql>
</mapper>
<?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="cn.wisenergy.chnmuseum.party.mapper.StatisticMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.Statistic">
<id column="id" property="id" />
<result column="organ_number" property="organNumber" />
<result column="board_number" property="boardNumber" />
<result column="play_number" property="playNumber" />
<result column="interaction_number" property="interactionNumber" />
<result column="data_time" property="dataTime" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, organ_number, board_number, play_number, interaction_number, data_time
</sql>
</mapper>
<?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="cn.wisenergy.chnmuseum.party.mapper.TCourseBoardLinkMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.TCourseBoardLink">
<id column="id" property="id" />
<result column="board_id" property="boardId" />
<result column="course_id" property="courseId" />
<result column="create_time" property="createTime" />
<result column="is_deleted" property="isDeleted" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, board_id, course_id, create_time, is_deleted
</sql>
</mapper>
<?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="cn.wisenergy.chnmuseum.party.mapper.TItemMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.TItem">
<id column="id" property="id" />
<result column="name" property="name" />
<result column="create_time" property="createTime" />
<result column="is_deleted" property="isDeleted" />
<result column="remarks" property="remarks" />
<result column="update_time" property="updateTime" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id, name, create_time, is_deleted, remarks, update_time
</sql>
</mapper>
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