mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-10 19:36:50 +08:00
1.设计案例推荐表表结构并创建表;2.新增案例推荐表对应实体类;3.增加案例推荐表数据库连接层和业务层代码;4.增加案例管理列表及根据姓名和推荐时间查询接口
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
package com.xboe.module.boecase.api;
|
||||
|
||||
import com.xboe.common.PageList;
|
||||
import com.xboe.common.Pagination;
|
||||
import com.xboe.core.JsonResponse;
|
||||
import com.xboe.core.api.ApiBaseController;
|
||||
import com.xboe.module.boecase.entity.CasesRecommend;
|
||||
import com.xboe.module.boecase.service.ICasesRecommendService;
|
||||
import com.xboe.module.boecase.vo.CasesRecommendVo;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 案例推荐表
|
||||
* */
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping(value = "xboe/m/boe/cases/recommend")
|
||||
public class CasesRecommendApi extends ApiBaseController {
|
||||
|
||||
@Resource
|
||||
private ICasesRecommendService iCasesRecommendService;
|
||||
|
||||
/**
|
||||
* 用于后台管理分页
|
||||
* @param pager
|
||||
* @param casesRecommendVo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/page")
|
||||
public JsonResponse<PageList<CasesRecommend>> manage(Pagination pager, CasesRecommendVo casesRecommendVo){
|
||||
PageList<CasesRecommend> page = iCasesRecommendService.page(pager.getPageIndex(), pager.getPageSize(), casesRecommendVo);
|
||||
return success(page);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
package com.xboe.module.boecase.dao;
|
||||
|
||||
import com.xboe.core.orm.BaseDao;
|
||||
import com.xboe.module.boecase.entity.CasesRecommend;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Repository
|
||||
public class CasesRecommendDao extends BaseDao<CasesRecommend> {
|
||||
}
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
package com.xboe.module.boecase.entity;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.xboe.core.SysConstant;
|
||||
import com.xboe.core.orm.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Table;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 案例推荐表
|
||||
* */
|
||||
@Data
|
||||
@Entity
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Table(name = SysConstant.TABLE_PRE+"cases_recommend")
|
||||
public class CasesRecommend extends BaseEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**推荐人ID*/
|
||||
@Column(name = "recommend_id",nullable = false,length = 100)
|
||||
private String recommendId;
|
||||
|
||||
/**推荐人*/
|
||||
@Column(name = "recommend_by", length = 255)
|
||||
private String recommendBy;
|
||||
|
||||
/**推荐时间*/
|
||||
@Column(name = "recommend_time")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime recommendTime;
|
||||
/**案例数*/
|
||||
@Column(name = "case_count",length = 11)
|
||||
private Integer caseCount;
|
||||
/**用户数*/
|
||||
@Column(name = "user_count",length = 11)
|
||||
private Integer userCount;
|
||||
/**推送进度*/
|
||||
@Column(name = "push_progress", length = 255)
|
||||
private String pushProgress;
|
||||
/**查看率*/
|
||||
@Column(name = "view_rate", length = 255)
|
||||
private String viewRate;
|
||||
/**推荐组织ID*/
|
||||
@Column(name = "recommend_org_id", length = 20)
|
||||
private String recommendOrgId;
|
||||
|
||||
/**推荐组织名称*/
|
||||
@Column(name = "recommend_org_name", length = 255)
|
||||
private String recommendOrgName;
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.xboe.module.boecase.service;
|
||||
|
||||
import com.xboe.common.PageList;
|
||||
import com.xboe.module.boecase.entity.CasesRecommend;
|
||||
import com.xboe.module.boecase.vo.CasesRecommendVo;
|
||||
|
||||
public interface ICasesRecommendService {
|
||||
/**
|
||||
* 分页并查询案例推荐列表
|
||||
* @param pageIndex
|
||||
* @param pageSize
|
||||
* @param casesRecommendVo
|
||||
* @return
|
||||
*/
|
||||
PageList<CasesRecommend> page(int pageIndex, int pageSize, CasesRecommendVo casesRecommendVo);
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.xboe.module.boecase.service.impl;
|
||||
|
||||
import com.xboe.common.OrderCondition;
|
||||
import com.xboe.common.PageList;
|
||||
import com.xboe.core.orm.FieldFilters;
|
||||
import com.xboe.core.orm.LikeMatchMode;
|
||||
import com.xboe.core.orm.QueryBuilder;
|
||||
import com.xboe.module.boecase.dao.CasesRecommendDao;
|
||||
import com.xboe.module.boecase.entity.CasesRecommend;
|
||||
import com.xboe.module.boecase.service.ICasesRecommendService;
|
||||
import com.xboe.module.boecase.vo.CasesRecommendVo;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class CasesRecommendServiceImpl implements ICasesRecommendService {
|
||||
|
||||
@Resource
|
||||
private CasesRecommendDao casesRecommendDao;
|
||||
|
||||
@Override
|
||||
public PageList<CasesRecommend> page(int pageIndex, int pageSize, CasesRecommendVo casesRecommendVo) {
|
||||
QueryBuilder query=QueryBuilder.from(CasesRecommend.class);
|
||||
query.addFilter(FieldFilters.eq("deleted",false));
|
||||
if(StringUtils.isNotBlank(casesRecommendVo.getRecommendName())){
|
||||
query.addFilter(FieldFilters.like("recommendBy", LikeMatchMode.ANYWHERE, casesRecommendVo.getRecommendName()));
|
||||
}
|
||||
if(!CollectionUtils.isEmpty(casesRecommendVo.getRecommendTimeList())){
|
||||
query.addFilter(FieldFilters.ge("recommendTime",casesRecommendVo.getRecommendTimeList().get(0)));
|
||||
query.addFilter(FieldFilters.le("recommendTime",casesRecommendVo.getRecommendTimeList().get(1)));
|
||||
}
|
||||
|
||||
query.addOrder(OrderCondition.desc("sysCreateTime"));
|
||||
query.setPageIndex(pageIndex);
|
||||
query.setPageSize(pageSize);
|
||||
PageList<CasesRecommend> page = casesRecommendDao.findPage(query.builder());
|
||||
return page;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.xboe.module.boecase.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class CasesRecommendVo {
|
||||
|
||||
/** 推荐人姓名 */
|
||||
private String recommendName;
|
||||
|
||||
/** 推荐时间区间 */
|
||||
private List<LocalDateTime> recommendTimeList;
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user