Initial commit

This commit is contained in:
2024-02-14 16:47:29 +08:00
commit 5135f009a9
36 changed files with 1777 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.landaiqing</groupId>
<artifactId>jc-club-subject</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>jc-club-domain</artifactId>
<packaging>jar</packaging>
<name>jc-club-domain</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.landaiqing</groupId>
<artifactId>jc-club-infra</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,17 @@
package com.landaiqing.subject.domain.convert;
import com.landaiqing.subject.domain.entity.SubjectCategoryBO;
import com.landaiqing.subject.infra.basic.entity.SubjectCategory;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import java.util.List;
@Mapper
public interface SubjectCategoryConverter {
SubjectCategoryConverter INSTANCE = Mappers.getMapper(SubjectCategoryConverter.class);
SubjectCategory convertBoToCategory(SubjectCategoryBO subjectCategoryBO);
List<SubjectCategoryBO> convertBoToCategory(List<SubjectCategory> categoryList);
}

View File

@@ -0,0 +1,39 @@
package com.landaiqing.subject.domain.entity;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 题目分类(SubjectCategory)实体类
*
* @author makejava
* @since 2024-02-07 16:17:17
*/
@Data
public class SubjectCategoryBO implements Serializable {
/**
* 主键
*/
private Long id;
/**
* 分类名称
*/
private String categoryName;
/**
* 分类类型
*/
private Integer categoryType;
/**
* 图标连接
*/
private String imageUrl;
/**
* 父级id
*/
private Long parentId;
}

View File

@@ -0,0 +1,38 @@
package com.landaiqing.subject.domain.service;
import com.landaiqing.subject.domain.entity.SubjectCategoryBO;
import java.util.List;
public interface SubjectCategoryDomainService {
/**
* 新增分类
*/
void add(SubjectCategoryBO subjectCategoryBO);
/**
* 查询岗位大类
*
* @param subjectCategoryBO
* @return
*/
List<SubjectCategoryBO> queryCategory(SubjectCategoryBO subjectCategoryBO);
/**
* @description: 更新分类
* @param: [subjectCategoryBO]
* @return: java.lang.Boolean
* @author landaiqing
* @date: 2024/2/14 14:47
*/
Boolean update(SubjectCategoryBO subjectCategoryBO);
/**
* @description: 删除分类
* @param: [subjectCategoryBO]
* @return: java.lang.Boolean
* @author landaiqing
* @date: 2024/2/14 14:58
*/
Boolean delete(SubjectCategoryBO subjectCategoryBO);
}

View File

@@ -0,0 +1,90 @@
package com.landaiqing.subject.domain.service.impl;
import com.alibaba.fastjson.JSON;
import com.landaiqing.subject.common.enums.CategoryTypeEnum;
import com.landaiqing.subject.common.enums.IsDeletedFlagEnum;
import com.landaiqing.subject.domain.convert.SubjectCategoryConverter;
import com.landaiqing.subject.domain.entity.SubjectCategoryBO;
import com.landaiqing.subject.domain.service.SubjectCategoryDomainService;
import com.landaiqing.subject.infra.basic.entity.SubjectCategory;
import com.landaiqing.subject.infra.basic.service.SubjectCategoryService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
@Slf4j
public class SubjectCategoryDomainServiceImpl implements SubjectCategoryDomainService {
@Resource
private SubjectCategoryService subjectCategoryService;
/**
* @description: 新增分类
* @param: [subjectCategoryBO]
* @return: void
* @author landaiqing
* @date: 2024/2/14 15:14
*/
@Override
public void add(SubjectCategoryBO subjectCategoryBO) {
if (log.isInfoEnabled()) {
log.info("SubjectCategoryController.add.bo:{}", JSON.toJSONString(subjectCategoryBO));
}
SubjectCategory subjectCategory = SubjectCategoryConverter.INSTANCE
.convertBoToCategory(subjectCategoryBO);
subjectCategory.setIsDeleted(IsDeletedFlagEnum.UN_DELETED.getCode());
subjectCategoryService.insert(subjectCategory);
}
/**
* @description: 查询岗位大类
* @param: [subjectCategoryBO]
* @return: java.util.List<com.landaiqing.subject.domain.entity.SubjectCategoryBO>
* @author landaiqing
* @date: 2024/2/14 15:14
*/
@Override
public List<SubjectCategoryBO> queryCategory(SubjectCategoryBO subjectCategoryBO) {
SubjectCategory subjectCategory = SubjectCategoryConverter.INSTANCE.convertBoToCategory(subjectCategoryBO);
subjectCategory.setIsDeleted(IsDeletedFlagEnum.UN_DELETED.getCode());
subjectCategory.setCategoryType(CategoryTypeEnum.PRIMARY.getCode());
List<SubjectCategory> subjectCategoryList = subjectCategoryService.queryCategory(subjectCategory);
List<SubjectCategoryBO> boList = SubjectCategoryConverter.INSTANCE
.convertBoToCategory(subjectCategoryList);
if (log.isInfoEnabled()) {
log.info("SubjectCategoryController.queryPrimaryCategory.boList:{}", JSON.toJSONString(boList));
}
return boList;
}
/**
* @description: 更新分类
* @param: [subjectCategoryBO]
* @return: java.lang.Boolean
* @author landaiqing
* @date: 2024/2/14 14:46
*/
@Override
public Boolean update(SubjectCategoryBO subjectCategoryBO) {
SubjectCategory subjectCategory = SubjectCategoryConverter.INSTANCE.convertBoToCategory(subjectCategoryBO);
int count = subjectCategoryService.update(subjectCategory);
return count > 0;
}
/**
* @description: 删除分类
* @param: [subjectCategoryBO]
* @return: java.lang.Boolean
* @author landaiqing
* @date: 2024/2/14 15:04
*/
@Override
public Boolean delete(SubjectCategoryBO subjectCategoryBO) {
SubjectCategory subjectCategory = SubjectCategoryConverter.INSTANCE.convertBoToCategory(subjectCategoryBO);
subjectCategory.setIsDeleted(IsDeletedFlagEnum.DELETED.getCode());
int count = subjectCategoryService.update(subjectCategory);
return count > 0;
}
}