diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/article/entity/Article.java b/servers/boe-server-all/src/main/java/com/xboe/module/article/entity/Article.java index 7bd244bc..f1fcf4a0 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/article/entity/Article.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/article/entity/Article.java @@ -129,7 +129,26 @@ public class Article extends BaseEntity { this.shares = shares; this.favorites = favorites; } - + public Article(String id,String title,String coverurl,String summary,String sysCreateBy,String sysCreateAid,LocalDateTime sysCreateTime, + LocalDateTime publishTime,Integer views, Integer comments, Integer praises, Integer shares, + Integer favorites,String source,Boolean enabled,Boolean deleted){ + this.setId(id); + this.setTitle(title); + this.summary=summary; + this.coverurl=coverurl; + this.publishTime=publishTime; + this.views = views; + this.comments = comments; + this.praises = praises; + this.shares = shares; + this.favorites = favorites; + super.setSysCreateBy(sysCreateBy); + super.setSysCreateAid(sysCreateAid); + super.setSysCreateTime(sysCreateTime); + this.source = source; + this.enabled = enabled; + super.setDeleted(deleted); + } public Article(String id,String title,String summary,String coverurl,String author,String authorInfo,LocalDateTime publishTime) { this.setId(id); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/article/service/IArticleService.java b/servers/boe-server-all/src/main/java/com/xboe/module/article/service/IArticleService.java index 626eaee1..174dee83 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/article/service/IArticleService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/article/service/IArticleService.java @@ -23,6 +23,11 @@ public interface IArticleService { * 首页二期第一张必须是带图的 * */ List
articelList(Integer type); + + /** + * 移动端首页 必须都是带图的 + * */ + List
mobileList(Integer type); /** * 自定义条件查询 diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java index efbf66f2..9ef05186 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/article/service/impl/ArticleServiceImpl.java @@ -70,7 +70,7 @@ public class ArticleServiceImpl implements IArticleService{ public List
articelList(Integer type) { //先查出带有图片的 List
articles = new ArrayList<>(); - Article article = dao.findOne(FieldFilters.eq("status", Article.STATUS_PUBLISH), FieldFilters.eq("enabled", true), FieldFilters.eq("enabled", true), + Article article = dao.findOne(FieldFilters.eq("status", Article.STATUS_PUBLISH), FieldFilters.eq("deleted", false), FieldFilters.eq("enabled", true), FieldFilters.isNotNull("coverurl"), FieldFilters.ge("coverurl", "")); articles.add(article); @@ -82,7 +82,7 @@ public class ArticleServiceImpl implements IArticleService{ } builder.addFilter(FieldFilters.eq("status", Article.STATUS_PUBLISH)); builder.addFilter(FieldFilters.eq("enabled",true)); - builder.addFilter(FieldFilters.eq("enabled",true)); + builder.addFilter(FieldFilters.eq("deleted",false)); builder.setPageSize(3); List
list = dao.findList(builder.builder()); articles.addAll(list); @@ -90,6 +90,26 @@ public class ArticleServiceImpl implements IArticleService{ } + @Override + public List
mobileList(Integer type) { + QueryBuilder builder = QueryBuilder.from(Article.class); + if(type==2){ + builder.addOrder(OrderCondition.desc("views")); + }else{ + builder.addOrder(OrderCondition.desc("sysCreateTime")); + } + builder.addFilter(FieldFilters.eq("status", Article.STATUS_PUBLISH)); + builder.addFilter(FieldFilters.eq("enabled",true)); + builder.addFilter(FieldFilters.eq("deleted",false)); + builder.addFilter(FieldFilters.isNotNull("coverurl")); + builder.addFilter(FieldFilters.ge("coverurl", "")); + + builder.setPageSize(4); + builder.addFields("new Article(id,coverUrl,title,views,comments,praises,shares,favorites)"); + List
list = dao.findList(builder.builder()); + return list; + } + //当前先实现,后续优化 @Override public PageList
query(Integer pageIndex, Integer pageSize,List filters, OrderCondition order) { @@ -331,7 +351,10 @@ public class ArticleServiceImpl implements IArticleService{ @Override public List
ids(List ids) { - List
list = dao.findList(FieldFilters.in("id", ids)); + QueryBuilder builder = QueryBuilder.from(Article.class); + builder.addFilter(FieldFilters.in("id", ids)); + builder.addFields("new Article(id,title,coverurl,summary,sysCreateBy,sysCreateAid,sysCreateTime,publishTime,views,comments,praises,shares,favorites,source,enabled,deleted)"); + List
list = dao.findList(builder.builder()); return list; } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesApi.java index e20c554e..55f50723 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/api/CasesApi.java @@ -10,6 +10,7 @@ import javax.annotation.Resource; import com.xboe.core.orm.FieldFilters; import com.xboe.module.boecase.dao.CasesMajorTypeDao; +import com.xboe.module.boecase.dto.*; import com.xboe.module.boecase.entity.CasesMajorType; import com.xboe.module.dict.entity.DictItem; import org.springframework.web.bind.annotation.GetMapping; @@ -26,10 +27,6 @@ import com.xboe.core.api.ApiBaseController; import com.xboe.core.cache.IXaskCache; import com.xboe.core.cache.XaskCacheProvider; import com.xboe.core.log.AutoLog; -import com.xboe.module.boecase.dto.CaseDto; -import com.xboe.module.boecase.dto.CaseRankingDto; -import com.xboe.module.boecase.dto.CaseVo; -import com.xboe.module.boecase.dto.UsernameDto; import com.xboe.module.boecase.entity.Cases; import com.xboe.module.boecase.service.ICasesService; @@ -88,6 +85,15 @@ public class CasesApi extends ApiBaseController { PageList casesPageList = casesService.managerList(pager.getPageIndex(), pager.getPageSize(), caseVo); return success(casesPageList); } + + /** + * 案例分页 + * */ + @PostMapping("/pagelist") + public JsonResponse> pageList(Pagination pager, CaseVo caseVo){ + PageList pageList = casesService.queryList(pager.getPageIndex(), pager.getPageSize(), caseVo); + return success(pageList); + } /** * 设置置顶 diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/dto/CasesFiledVo.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/dto/CasesFiledVo.java new file mode 100644 index 00000000..0f425963 --- /dev/null +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/dto/CasesFiledVo.java @@ -0,0 +1,19 @@ +package com.xboe.module.boecase.dto; + +import lombok.Data; + +@Data +public class CasesFiledVo { + + private String id; + + private String companyId; + + private String coverUrl; + + private String title; + + private String authorId; + + private String authorName; +} diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/entity/Cases.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/entity/Cases.java index 03d98525..83731470 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/entity/Cases.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/entity/Cases.java @@ -262,4 +262,23 @@ public class Cases extends BaseEntity { super.setId(id); this.title=title; } + public Cases(String id,String title,String summary,String coverUrl,String authorId,String authorName,LocalDateTime sysCreateTime,Integer breCommend,Integer views,Integer comments,Integer praises,Integer shares,Integer favorites,Boolean deleted + ,String sysCreateBy,String sysCreateAid){ + this.title=title; + super.setId(id); + this.authorId=authorId; + this.authorName=authorName; + super.setSysCreateTime(sysCreateTime); + super.setSysCreateAid(sysCreateAid); + super.setSysCreateBy(sysCreateBy); + this.summary=summary; + this.coverUrl=coverUrl; + this.breCommend=breCommend; + this.views=views; + this.comments=comments; + this.praises=praises; + this.shares=shares; + this.favorites=favorites; + super.setDeleted(deleted); + } } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesService.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesService.java index de67743a..be0818d1 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/ICasesService.java @@ -3,10 +3,7 @@ package com.xboe.module.boecase.service; import java.util.List; import com.xboe.common.PageList; -import com.xboe.module.boecase.dto.CaseDto; -import com.xboe.module.boecase.dto.CaseRankingDto; -import com.xboe.module.boecase.dto.CaseVo; -import com.xboe.module.boecase.dto.UsernameDto; +import com.xboe.module.boecase.dto.*; import com.xboe.module.boecase.entity.Cases; import com.xboe.module.dict.entity.DictItem; import com.xboe.school.vo.CasesVo; @@ -21,6 +18,12 @@ public interface ICasesService{ * 案例管理列表搜索 * */ PageList managerList(int pageIndex,int pageSize,CaseVo caseVo); + + /** + * 案例分页 + * */ + PageList queryList(int pageIndex,int pageSize,CaseVo caseVo); + /** * 设置置顶 * */ diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesServiceImpl.java index 9232312d..256d4e9f 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/boecase/service/impl/CasesServiceImpl.java @@ -9,8 +9,7 @@ import javax.transaction.Transactional; import com.xboe.common.utils.IDGenerator; import com.xboe.module.boecase.dao.CasesMajorTypeDao; -import com.xboe.module.boecase.dto.CaseRankingDto; -import com.xboe.module.boecase.dto.CaseVo; +import com.xboe.module.boecase.dto.*; import com.xboe.module.boecase.entity.CasesMajorType; import com.xboe.module.dict.dao.SysDictionaryDao; import com.xboe.module.dict.entity.DictItem; @@ -29,8 +28,6 @@ import com.xboe.core.orm.LikeMatchMode; import com.xboe.core.orm.QueryBuilder; import com.xboe.core.orm.UpdateBuilder; import com.xboe.module.boecase.dao.CasesDao; -import com.xboe.module.boecase.dto.CaseDto; -import com.xboe.module.boecase.dto.UsernameDto; import com.xboe.module.boecase.entity.Cases; import com.xboe.module.boecase.service.ICasesService; @@ -170,6 +167,54 @@ public class CasesServiceImpl implements ICasesService { PageList page = casesDao.findPage(query.builder()); return page; } + + @Override + public PageList queryList(int pageIndex, int pageSize, CaseVo caseVo) { + PageList pageList = new PageList<>(); + pageList.setList(new ArrayList()); + QueryBuilder query=QueryBuilder.from(Cases.class); + query.addFilter(FieldFilters.eq("deleted",false)); + if(StringUtils.isNotBlank(caseVo.getKeyWord())){ + query.addFilter(FieldFilters.like("title", LikeMatchMode.ANYWHERE, caseVo.getKeyWord())); + } + if(caseVo.getIsTop()!=null) { + query.addFilter(FieldFilters.eq("isTop",caseVo.getIsTop())); + } + OrderCondition order=null; + if(StringUtils.isNotBlank(caseVo.getOrderField())) { + if(caseVo.getOrderAsc()==null || caseVo.getOrderAsc()) { + order=OrderCondition.asc(caseVo.getOrderField()); + }else { + order=OrderCondition.desc(caseVo.getOrderField()); + } + }else { + order=OrderCondition.desc("sysCreateTime"); + } + query.addOrder(order); + query.setPageIndex(pageIndex); + query.setPageSize(pageSize); + query.addFields("id","title","coverUrl","authorId","authorName","companyId"); + try { + PageList pageFields = casesDao.findPageFields(query.builder()); + for (Object[] o:pageFields.getList()) { + CasesFiledVo casesFiledVo = new CasesFiledVo(); + casesFiledVo.setId((String) o[0]); + casesFiledVo.setTitle((String) o[1]); + casesFiledVo.setCoverUrl((String) o[2]); + casesFiledVo.setAuthorId((String) o[3]); + casesFiledVo.setAuthorName((String) o[4]); + casesFiledVo.setCompanyId((String) o[5]); + pageList.getList().add(casesFiledVo); + } + pageList.setPageSize(pageSize); + pageList.setCount(pageFields.getCount()); + } catch (Exception e) { + e.printStackTrace(); + } + return pageList; + + } + /** * 设置置顶 * */ @@ -407,7 +452,10 @@ public class CasesServiceImpl implements ICasesService { @Override public List ids(List ids) { - List cases = casesDao.findList(FieldFilters.in("id", ids)); + QueryBuilder builder = QueryBuilder.from(Cases.class); + builder.addFilter(FieldFilters.in("id", ids)); + builder.addFields("new Cases(id,title,summary,coverUrl,authorId,authorName,sysCreateTime,breCommend,views,comments,praises,shares,favorites,deleted,sysCreateBy,sysCreateAid)"); + List cases = casesDao.findList(builder.builder()); return cases; } diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java index 4a92c146..5abf9da7 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java @@ -474,7 +474,7 @@ public class CourseManageApi extends ApiBaseController{ String email=dto.getAuditUser().getEmail(); if(!isLocalDevelopment()) { //只是非开发模式下才可以发送 - service.sendMail(email,"课程审核提醒", htmlEmail,"数字化学习平台"); + service.sendMail(email,"《"+dto.getCourse().getName()+"》课程审核提醒", htmlEmail,"数字化学习平台"); }else { //service.sendMail("daihaixing@bjxask.com","课程审核提醒", htmlEmail,"数字化学习平台"); } @@ -579,7 +579,7 @@ public class CourseManageApi extends ApiBaseController{ //邮件发送 if(!isLocalDevelopment()) { //只是非高度环境上才会发送 - service.sendMail(email,"课程审核提醒",htmlEmail,"数字化学习平台"); + service.sendMail(email,"《"+course.getName()+"》课程审核提醒",htmlEmail,"数字化学习平台"); } } catch (Exception ex) { diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/Course.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/Course.java index 5ef75fee..0b288be0 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/Course.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/Course.java @@ -68,7 +68,28 @@ public class Course extends BaseEntity { this.publishTime=publishTime; this.isTop=isTop; } - + + public Course(String id,Integer type,String name,String coverImg, Float score,Integer studys,Integer comments,Integer shares,Integer praises,Integer favorites + ,String forUsers,String value,String summary,LocalDateTime publishTime,Boolean isTop,String sysType1,String sysType2,String sysType3) { + this.setId(id); + this.setType(type); + this.setName(name); + this.setCoverImg(coverImg); + this.setScore(score); + this.setComments(comments); + this.setStudys(studys); + this.setShares(shares); + this.setPraises(praises); + this.setFavorites(praises); + this.forUsers=forUsers; + this.value=value; + this.summary=summary; + this.publishTime=publishTime; + this.isTop=isTop; + this.sysType1=sysType1; + this.sysType2=sysType2; + this.sysType3=sysType3; + } @Column(name = "kid") private String kid; @@ -323,6 +344,12 @@ public class Course extends BaseEntity { */ @Transient private Integer auditForward; + + @Transient + private String teacherId; + + @Transient + private String teacher; public Course(String id,String name,String summary,String coverImg,String sysCreateAid,String sysCreateBy,Integer type,LocalDateTime publishTime){ super.setId(id); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseService.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseService.java index e322eed7..40d2d933 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseService.java @@ -115,6 +115,12 @@ public interface ICourseService { */ List findSimpleList(int pageIndex,String currentAid,CourseQueryDto dto); + + /** + * 移动端首页 + * */ + List mobileList(int num,String aid,CourseQueryDto dto); + /** * 添加课程 diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java index e01dee40..f5d989cb 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseServiceImpl.java @@ -375,6 +375,51 @@ public class CourseServiceImpl implements ICourseService { return rs; } + @Override + public List mobileList(int num, String aid,CourseQueryDto dto) { + + List filters = createFilters(dto); + //自动添加过滤已删除 + filters.add(FieldFilters.eq("deleted",false)); + filters.add(FieldFilters.eq("enabled",true)); + //返回的结果 + + + QueryBuilder query=QueryBuilder.from(Course.class).addFilters(filters); + + if(dto.getTopOrder()!=null) { + if(dto.getTopOrder()){ + query.addOrder(OrderCondition.desc("isTop")); + query.addOrder(OrderCondition.desc("topTime")); + } + } + OrderCondition oc=null; + if(StringUtils.isNotBlank(dto.getOrderField())) { + if(dto.getOrderAsc()==null || dto.getOrderAsc()) { + oc=OrderCondition.asc(dto.getOrderField()); + }else { + oc=OrderCondition.desc(dto.getOrderField()); + } + }else { + //oc=OrderCondition.desc("id"); + //默认按发布时间排序 + oc=OrderCondition.desc("publishTime"); + } + query.addOrder(oc); + + List courses = this.userHobbyList(aid, dto.getOrderField(), dto.getOrderAsc()); + if(courses!=null && !courses.isEmpty()){ + num=num-courses.size(); + //重复的不包括 + List courseIds = courses.stream().map(Course::getId).collect(Collectors.toList()); + query.addFilter(FieldFilters.notIn("id",courseIds)); + } + query.setPageSize(num); + query.addFields("new Course(id,type,name,coverImg,score,studys,comments,shares,praises,favorites,forUsers,value,summary,publishTime,isTop,sysType1,sysType2,sysType3)"); + List courseList = courseDao.findList(query.builder()); + return courseList; + } + @Override public void save(Course course) { course.setComments(0); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/ExamTestApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/ExamTestApi.java index 48bf7559..66f787dc 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/ExamTestApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/exam/api/ExamTestApi.java @@ -38,6 +38,12 @@ public class ExamTestApi extends ApiBaseController { PageList examTestPageList = examTestService.pageList(pager.getPageIndex(), pager.getPageSize(), keyWord, examTest); return success(examTestPageList); } + + @PostMapping("/pagelist") + public JsonResponse> pagelist(Pagination pager, String keyWord, ExamTest examTest){ + PageList examTestPageList = examTestService.pageList(pager.getPageIndex(), pager.getPageSize(), keyWord, examTest); + return success(examTestPageList); + } /** * 新建考试 diff --git a/servers/boe-server-all/src/main/java/com/xboe/phase2/dao/GuestBookDao.java b/servers/boe-server-all/src/main/java/com/xboe/phase2/dao/UserGuestMsgDao.java similarity index 55% rename from servers/boe-server-all/src/main/java/com/xboe/phase2/dao/GuestBookDao.java rename to servers/boe-server-all/src/main/java/com/xboe/phase2/dao/UserGuestMsgDao.java index 19720baa..0be6cfd6 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/phase2/dao/GuestBookDao.java +++ b/servers/boe-server-all/src/main/java/com/xboe/phase2/dao/UserGuestMsgDao.java @@ -1,9 +1,9 @@ package com.xboe.phase2.dao; import com.xboe.core.orm.BaseDao; -import com.xboe.phase2.entity.GuestBook; +import com.xboe.phase2.entity.UserGuestMsg; import org.springframework.stereotype.Repository; @Repository -public class GuestBookDao extends BaseDao { +public class UserGuestMsgDao extends BaseDao { } diff --git a/servers/boe-server-all/src/main/java/com/xboe/phase2/entity/GuestBook.java b/servers/boe-server-all/src/main/java/com/xboe/phase2/entity/UserGuestMsg.java similarity index 52% rename from servers/boe-server-all/src/main/java/com/xboe/phase2/entity/GuestBook.java rename to servers/boe-server-all/src/main/java/com/xboe/phase2/entity/UserGuestMsg.java index 2fbfda6c..e27cad7c 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/phase2/entity/GuestBook.java +++ b/servers/boe-server-all/src/main/java/com/xboe/phase2/entity/UserGuestMsg.java @@ -9,7 +9,9 @@ import lombok.EqualsAndHashCode; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Table; +import javax.persistence.Transient; import java.time.LocalDateTime; +import java.util.List; /** @@ -18,8 +20,8 @@ import java.time.LocalDateTime; @Data @Entity @EqualsAndHashCode(callSuper = false) -@Table(name = SysConstant.TABLE_PRE+"guest_book") -public class GuestBook extends BaseEntity { +@Table(name = SysConstant.TABLE_PRE+"user_guestmsg") +public class UserGuestMsg extends BaseEntity { private static final long serialVersionUID = -1546791463472018751L; @@ -35,13 +37,30 @@ public class GuestBook extends BaseEntity { * */ @Column(name = "content",length = 200) private String content; - + + /**永远是一级的回复的id*/ + @Column(name = "top_id",length = 20) + private String topId; + /** - * 回复内容 + * 回复的上级的id,如果是一级回复, + */ + @Column(name = "parent_id",length = 20) + private String parentId; + + /** + * 数据的级别,一级,二级回复,用于查询 + * 如果查询回复,根据topId和level=2 就可以查出一个二级的全部的回复 + */ + @Column(name = "data_level",length = 1) + private Integer level; + + /** + * 回复数 * */ - @Column(name = "replys",columnDefinition = "text") - private String replys; - + @Column(name = "replys") + private Integer replys; + /** * 回复时间 * */ @@ -55,5 +74,10 @@ public class GuestBook extends BaseEntity { @Column(name = "praises") private Integer praises; + /** + * 回复的列表,用于前端显示 + */ + @Transient + private List replyList; } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/api/PortalIndexApi.java b/servers/boe-server-all/src/main/java/com/xboe/school/api/PortalIndexApi.java index 77e80ffe..34adeabc 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/api/PortalIndexApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/api/PortalIndexApi.java @@ -7,10 +7,7 @@ import java.util.stream.Collectors; import javax.annotation.Resource; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.xboe.common.PageList; import com.xboe.common.Pagination; @@ -212,5 +209,58 @@ public class PortalIndexApi extends ApiBaseController{ } + /** + * 移动端首页课程列表 + * 返回内容分类 + * */ + @PostMapping("/mobile-courseindex") + public JsonResponse> mobileCourseIndex(Integer num,CourseQueryDto dto){ + if(num==null){ + num=5; + } + dto.setPublish(true); + dto.setYearFilter(true); + String aid = this.getCurrent().getAccountId(); + List courses = courseService.mobileList(num, aid, dto); + //提取教师信息 + List ids=new ArrayList(); + + + for(Course c :courses) { + ids.add(c.getId()); + } + List teachers = courseService.findTeachersByCourseIds(ids); + //注意对于多个教师的情况,这里只是设置第一个教师 + for(Course c :courses) { + for(CourseTeacher ct : teachers) { + if(ct.getCourseId().equals(c.getId())) { + c.setTeacherId(ct.getTeacherId()); + c.setTeacher(ct.getTeacherName()); + } + } + } + return success(courses); + + } + + /** + * 移动端首页文章列表 + * */ + @GetMapping("/mobile-article") + public JsonResponse> mobileArticle(Integer type){ + if(type==null || type==0){ + return badRequest("参数异常"); + } + try { + List
articles = articleService.mobileList(type); + return success(articles); + } catch (Exception e) { + return error("查询失败",e.getMessage()); + } + } + + + + } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/impl/GuestAddHitsImpl.java b/servers/boe-server-all/src/main/java/com/xboe/school/impl/GuestAddHitsImpl.java index 096c0a13..5269fce0 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/impl/GuestAddHitsImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/impl/GuestAddHitsImpl.java @@ -3,7 +3,7 @@ package com.xboe.school.impl; import com.xboe.core.orm.FieldUpdateType; import com.xboe.core.orm.UpdateBuilder; import com.xboe.module.interaction.service.ICallbackAddHits; -import com.xboe.phase2.dao.GuestBookDao; +import com.xboe.phase2.dao.UserGuestMsgDao; import com.xboe.standard.enums.BoedxHitsField; import com.xboe.standard.enums.BoedxResourceType; import org.springframework.stereotype.Service; @@ -16,7 +16,7 @@ import javax.annotation.Resource; public class GuestAddHitsImpl implements ICallbackAddHits { @Resource - GuestBookDao guestBookDao; + UserGuestMsgDao guestBookDao; @Override public BoedxResourceType getType() { diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/dto/StudyCourseSimple.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/dto/StudyCourseSimple.java index 3bc55d28..233a7397 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/dto/StudyCourseSimple.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/dto/StudyCourseSimple.java @@ -40,4 +40,6 @@ public class StudyCourseSimple { * 删除标识 */ private Boolean deleted; + + private Boolean enabled; } diff --git a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java index 9e5a4457..57210572 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/school/study/service/impl/StudyCourseServiceImpl.java @@ -419,7 +419,7 @@ public class StudyCourseServiceImpl implements IStudyCourseService{ @Override public List followids(StudyCourseQuery studyCourseQuery) { //分两次查询,查询课程,查询学习记录 - String courseHql="Select id,coverImg,score,name,sysType1,sysType2,sysType3,deleted from "+Course.class.getSimpleName()+" where id in(?1)"; + String courseHql="Select id,coverImg,score,name,sysType1,sysType2,sysType3,deleted,enabled from "+Course.class.getSimpleName()+" where id in(?1)"; String studyHql="Select courseId,addTime,progress,aid from "+StudyCourse.class.getSimpleName()+" where aid in(?1) and courseId in(?2)"; List rs=new ArrayList<>(); @@ -445,6 +445,7 @@ public class StudyCourseServiceImpl implements IStudyCourseService{ sc.setSysType2(ConvertUtil.toStr(cobjs[5])); sc.setSysType3(ConvertUtil.toStr(cobjs[6])); sc.setDeleted(ConvertUtil.toBool(cobjs[7])); + sc.setEnabled(ConvertUtil.toBool(cobjs[8])); break; } } @@ -475,6 +476,7 @@ public class StudyCourseServiceImpl implements IStudyCourseService{ sc.setSysType2(ConvertUtil.toStr(cobjs[5])); sc.setSysType3(ConvertUtil.toStr(cobjs[6])); sc.setDeleted(ConvertUtil.toBool(cobjs[7])); + sc.setEnabled(ConvertUtil.toBool(cobjs[8])); rs.add(sc); } diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java index 93c41e25..da9ca185 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/api/MessageApi.java @@ -2,6 +2,7 @@ package com.xboe.system.user.api; import java.time.LocalDateTime; import java.util.List; +import java.util.Map; import javax.annotation.Resource; @@ -123,5 +124,38 @@ public class MessageApi extends ApiBaseController { } } + /** + * 移动端 + * 消息页面,按用户分组返回 + * + * */ + @GetMapping("/mess-group") + public JsonResponse> messGroup(){ + String aid = this.getCurrent().getAccountId(); + if(StringUtil.isBlank(aid)){ + return badRequest("参数异常"); + } + Map map = service.messGroup(aid); + return success(map); + } + + /** + * 移动端 + * 按用户删除消息 + * */ + @GetMapping("/remove") + public JsonResponse remove(String aid){ + if(StringUtil.isBlank(aid)){ + return badRequest("参数异常"); + } + try { + service.remove(aid); + return success(true); + } catch (Exception e) { + return error("参数异常",e.getMessage()); + } + } + + } diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java index 17255266..82e26a23 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/IMessageService.java @@ -1,6 +1,7 @@ package com.xboe.system.user.service; import java.util.List; +import java.util.Map; import com.xboe.common.PageList; import com.xboe.system.user.entity.Message; @@ -39,5 +40,15 @@ public interface IMessageService { * */ void updateIsRead(List ids); + /** + * 移动端针对用户消息列表 + * */ + Map messGroup(String aid); + + /** + * 根据用户移除消息 + * */ + void remove(String aid); + } diff --git a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/MessageServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/MessageServiceImpl.java index fc4b15ee..8906546d 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/MessageServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/system/user/service/impl/MessageServiceImpl.java @@ -1,6 +1,8 @@ package com.xboe.system.user.service.impl; +import java.util.HashMap; import java.util.List; +import java.util.Map; import javax.annotation.Resource; @@ -76,4 +78,24 @@ public class MessageServiceImpl implements IMessageService { .builder()); } + + @Override + public Map messGroup(String aid) { + Map map = new HashMap<>(); + QueryBuilder builder = QueryBuilder.from(Message.class); + builder.addFilter(FieldFilters.eq("acceptId",aid)); + builder.addGroupBy("acceptId"); + List list = dao.findList(builder.builder()); + map.put("mess",list); + //在查出未读消息数 + String sql="select count(1) from boe_message where is_read=false and acceptId=?1"; + int count = dao.sqlCount(sql, aid); + map.put("count",count); + return map; + } + + @Override + public void remove(String aid) { + dao.deleteByFilter(FieldFilters.eq("acceptId",aid)); + } } diff --git a/servers/boe-server-basic/src/main/java/com/xboe/basic/entity/Organization.java b/servers/boe-server-basic/src/main/java/com/xboe/basic/entity/Organization.java index 7c197f81..fafcaf10 100644 --- a/servers/boe-server-basic/src/main/java/com/xboe/basic/entity/Organization.java +++ b/servers/boe-server-basic/src/main/java/com/xboe/basic/entity/Organization.java @@ -1,16 +1,15 @@ package com.xboe.basic.entity; -import com.xboe.core.SysConstant; -import com.xboe.core.orm.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.time.LocalDateTime; - import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Table; +import com.xboe.core.SysConstant; +import com.xboe.core.orm.BaseEntity; + +import lombok.Data; +import lombok.EqualsAndHashCode; + /** * 机构实体 */