This commit is contained in:
2023-04-24 21:20:01 +08:00
parent a49a29ab18
commit 9cb93a3f94
112 changed files with 2466 additions and 36 deletions

View File

@@ -43,6 +43,11 @@
<artifactId>demo-common-jdbc</artifactId>
<version>0.0.1</version>
</dependency>
<dependency>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-common-utils</artifactId>
<version>0.0.1</version>
</dependency>
</dependencies>

View File

@@ -0,0 +1,28 @@
package com.yxt.demo.system.biz.dict_common;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_common.DictCommonVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:17
* @Description
*/
@Mapper
public interface DictCommonMapper extends BaseMapper<DictCommon> {
DictCommon selectSize(@Param("dictKey") String dictKey, @Param("dictType") String dictType, @Param("parentSid") String parentSid);
IPage<DictCommonVo> listPageVo(IPage<DictCommon> page, @Param(Constants.WRAPPER) QueryWrapper<DictCommon> qw);
List<DictCommonVo> getValue(@Param(Constants.WRAPPER) QueryWrapper<DictCommonVo> qw);
List<DictCommon> selectByType(String dictTypeCode);
}

View File

@@ -0,0 +1,33 @@
<?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="com.yxt.demo.system.biz.dict_common.DictCommonMapper">
<select id="selectSize" resultType="com.yxt.demo.system.api.dict_common.DictCommon">
SELECT *
FROM dict_common
WHERE dictKey = #{dictKey}
AND dictType = #{dictType}
AND parentSid = #{parentSid}
</select>
<select id="listPageVo" resultType="com.yxt.demo.system.api.dict_common.DictCommonVo">
select *
from dict_common
<where>
${ew.sqlSegment}
</where>
</select>
<select id="getValue" resultType="com.yxt.demo.system.api.dict_common.DictCommonVo">
SELECT dc.sid, dc.dictType, dc.dictKey, dc.dictValue, dc.parentSid
FROM dict_common dc
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectByType" resultType="com.yxt.demo.system.api.dict_common.DictCommon">
select *
from dict_common
where dictType = #{dictTypeCode}
</select>
</mapper>

View File

@@ -0,0 +1,58 @@
package com.yxt.demo.system.biz.dict_common;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.api.dict_common.*;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:16
* @Description
*/
@Api(tags = "数据字典数据项")
@RestController
@RequestMapping("v1/DictCommon")
public class DictCommonRest implements DictCommonFeign {
@Autowired
private DictCommonService dictCommonService;
@Override
public ResultBean save(DictCommonDto dictCommonDto) {
return dictCommonService.saveOrUpdates(dictCommonDto);
}
@Override
public ResultBean delete(String sid) {
return dictCommonService.delete(sid);
}
@Override
public ResultBean<PagerVo<DictCommonVo>> pageList(PagerQuery<DictCommonQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerVo<DictCommonVo> pv = dictCommonService.listPageVo(pagerQuery);
return rb.success().setData(pv);
}
@Override
public ResultBean<List<DictCommonVo>> getTypeValues(String type, String psid) {
ResultBean<List<DictCommonVo>> rb = ResultBean.fireFail();
DictCommonTypeQuery query = new DictCommonTypeQuery();
query.setType(type);
query.setPsid(psid);
List<DictCommonVo> dictCommonVoList = dictCommonService.getValue(query);
dictCommonVoList.removeAll(Collections.singleton(null));
if (dictCommonVoList.isEmpty()) {
return rb.setMsg("该类型无数据项");
}
return rb.success().setData(dictCommonVoList);
}
}

View File

@@ -0,0 +1,114 @@
package com.yxt.demo.system.biz.dict_common;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.jdbc.service.PagerUtil;
import com.yxt.demo.common.utils.convert.StringUtil;
import com.yxt.demo.system.api.dict_common.*;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.biz.dict_type.DictTypeService;
import com.yxt.demo.system.biz.sys_user.SysUserMapper;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:17
* @Description
*/
@Service
public class DictCommonService extends MybatisBaseService<DictCommonMapper, DictCommon> {
@Autowired
private DictTypeService dictTypeService;
public ResultBean saveOrUpdates(DictCommonDto dictCommonDto) {
ResultBean rb = ResultBean.fireFail();
//数据类型
String dictType = dictCommonDto.getDictType();
//数据项值
String dictKey = dictCommonDto.getDictKey();
//父级sid
String parentSid = dictCommonDto.getParentSid();
if (StringUtils.isBlank(dictCommonDto.getSid())) {
int size = dictTypeService.selectSize(dictType);
if (size > 0) {
//根据数据类型和数据项值查询是否已存在
DictCommon dc = baseMapper.selectSize(dictKey, dictType, parentSid);
if (dc != null) {
return rb.setMsg(dictType + "此类型的数据项已存在");
}
//新增
DictCommon dictCommon = new DictCommon();
BeanUtil.copyProperties(dictCommonDto, dictCommon, "sid");
baseMapper.insert(dictCommon);
} else {
return rb.setMsg("数据字典类型不存在");
}
} else {
int size = dictTypeService.selectSize(dictType);
if (size > 0) {
//根据数据类型和数据项值查询是否已存在
DictCommon dictCommon = fetchBySid(dictCommonDto.getSid());
if (dictCommon == null) {
return rb.setMsg(dictType + "此类型的数据项不存在");
} else {
if (!dictCommonDto.getSid().equals(dictCommon.getSid())) {
return rb.setMsg(dictType + "此类型的数据项已存在");
}
}
BeanUtil.copyProperties(dictCommonDto, dictCommon, "sid");
baseMapper.updateById(dictCommon);
} else {
return rb.setMsg("数据字典类型不存在");
}
}
return rb.success();
}
public ResultBean delete(String sid) {
ResultBean rb = ResultBean.fireFail();
DictCommon dictCommon = fetchBySid(sid);
if (dictCommon == null) {
return rb.setMsg("该数据项不存在");
}
deleteBySid(sid);
return rb.success();
}
public PagerVo<DictCommonVo> listPageVo(PagerQuery<DictCommonQuery> pagerQuery) {
IPage<DictCommon> page = PagerUtil.queryToPage(pagerQuery);
DictCommonQuery params = pagerQuery.getParams();
QueryWrapper<DictCommon> qw = new QueryWrapper<>();
if (params != null) {
}
IPage<DictCommonVo> pagging = baseMapper.listPageVo(page, qw);
PagerVo<DictCommonVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public List<DictCommonVo> getValue(DictCommonTypeQuery query) {
QueryWrapper<DictCommonVo> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getType())) {//类型
qw.eq("dc.dictType", query.getType());
}
if (StringUtils.isNotBlank(query.getPsid())) {//父级sid
qw.eq("dc.parentSid", query.getPsid());
}
return baseMapper.getValue(qw);
}
public List<DictCommon> selectByType(String dictTypeCode) {
return baseMapper.selectByType(dictTypeCode);
}
}

View File

@@ -0,0 +1,29 @@
package com.yxt.demo.system.biz.dict_type;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_type.DictType;
import com.yxt.demo.system.api.dict_type.DictTypeVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:20
* @Description
*/
@Mapper
public interface DictTypeMapper extends BaseMapper<DictType> {
/**
* 查询该类型代码存在的数量
*
* @param dictType 类型代码
* @return
*/
int selectSize(String dictType);
IPage<DictTypeVo> listPageVo(IPage<DictType> page, @Param(Constants.WRAPPER)QueryWrapper<DictType> qw);
}

View File

@@ -0,0 +1,17 @@
<?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="com.yxt.demo.system.biz.dict_type.DictTypeMapper">
<select id="selectSize" resultType="int">
SELECT COUNT(*)
FROM dict_type
WHERE dictTypeCode = #{dictTypeCode}
</select>
<select id="listPageVo" resultType="com.yxt.demo.system.api.dict_type.DictTypeVo">
select *
from dict_type
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

View File

@@ -0,0 +1,61 @@
package com.yxt.demo.system.biz.dict_type;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_common.DictCommonVo;
import com.yxt.demo.system.api.dict_type.*;
import com.yxt.demo.system.biz.dict_common.DictCommonService;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:20
* @Description
*/
@Api(tags = "数据字典数据类型")
@RestController
@RequestMapping("v1/DictType")
public class DictTypeRest implements DictTypeFeign {
@Autowired
private DictTypeService dictTypeService;
@Autowired
private DictCommonService dictCommonService;
@Override
public ResultBean save(DictTypeDto dictTypeDto) {
return dictTypeService.saveOrUpdates(dictTypeDto);
}
@Override
public ResultBean<PagerVo<DictTypeVo>> pageList(PagerQuery<DictTypeQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerVo<DictTypeVo> pv = dictTypeService.listPageVo(pagerQuery);
return rb.success().setData(pv);
}
@Override
public ResultBean delete(String sid) {
ResultBean rb = ResultBean.fireFail();
DictType dictType = dictTypeService.fetchBySid(sid);
if (null == dictType) {
return rb.setMsg("该数据字典类型不存在");
}
//查询该类型下是否存在数据项
List<DictCommon> dictCommon = dictCommonService.selectByType(dictType.getDictTypeCode());
if (dictCommon.size() > 0) {
return rb.setMsg("该数据字典类型下存在数据项,请先删除该类下的数据项");
}
if (0 == dictTypeService.deleteBySid(sid)) {
return rb.setMsg("删除失败");
}
return rb.setMsg("删除成功");
}
}

View File

@@ -0,0 +1,76 @@
package com.yxt.demo.system.biz.dict_type;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.jdbc.service.PagerUtil;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_common.DictCommonQuery;
import com.yxt.demo.system.api.dict_common.DictCommonVo;
import com.yxt.demo.system.api.dict_type.DictType;
import com.yxt.demo.system.api.dict_type.DictTypeDto;
import com.yxt.demo.system.api.dict_type.DictTypeQuery;
import com.yxt.demo.system.api.dict_type.DictTypeVo;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:20
* @Description
*/
@Service
public class DictTypeService extends MybatisBaseService<DictTypeMapper, DictType> {
/**
* 查询该类型代码存在的数量
*
* @param dictType 类型代码
* @return
*/
public int selectSize(String dictType) {
return baseMapper.selectSize(dictType);
}
public ResultBean saveOrUpdates(DictTypeDto dictTypeDto) {
ResultBean rb = ResultBean.fireFail();
if (StringUtils.isBlank(dictTypeDto.getSid())) {
//判断数据字典类型是否已存在
String dictTypeCode = dictTypeDto.getDictTypeCode();
int size = baseMapper.selectSize(dictTypeCode);
if (size > 0) {
return rb.setMsg("数据类型代码已存在");
}
DictType dictType = new DictType();
BeanUtil.copyProperties(dictTypeDto, dictType, "sid");
baseMapper.insert(dictType);
} else {
DictType dictType = fetchBySid(dictTypeDto.getSid());
if (dictType == null) {
return rb.setMsg("数据类型不存在");
}
if (!dictTypeDto.getDictTypeCode().equals(dictType.getDictTypeCode())) {
return rb.setMsg("数据字典类型的code值不允许修改");
}
BeanUtil.copyProperties(dictTypeDto, dictType, "sid");
baseMapper.updateById(dictType);
}
return rb.success();
}
public PagerVo<DictTypeVo> listPageVo(PagerQuery<DictTypeQuery> pagerQuery) {
IPage<DictType> page = PagerUtil.queryToPage(pagerQuery);
DictTypeQuery params = pagerQuery.getParams();
QueryWrapper<DictType> qw = new QueryWrapper<>();
if (params != null) {
}
IPage<DictTypeVo> pagging = baseMapper.listPageVo(page, qw);
PagerVo<DictTypeVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_forum;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:21
* @Description
*/
public interface SysForumMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_forum;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:21
* @Description
*/
public class SysForumRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_forum;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:21
* @Description
*/
public class SysForumService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_forum_comment;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:22
* @Description
*/
public interface SysForumCommentMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_forum_comment.SysForumCommentMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_forum_comment;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:22
* @Description
*/
public class SysForumCommentRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_forum_comment;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:22
* @Description
*/
public class SysForumCommentService {
}

View File

@@ -0,0 +1,17 @@
package com.yxt.demo.system.biz.sys_info;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_info.SysInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:51
* @Description
*/
@Mapper
public interface SysInfoMapper extends BaseMapper<SysInfo> {
SysInfo selectByNoAndName(@Param("userName") String userName, @Param("name") String name);
}

View File

@@ -0,0 +1,10 @@
<?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="com.yxt.demo.system.biz.sys_info.SysInfoMapper">
<select id="selectByNoAndName" resultType="com.yxt.demo.system.api.sys_info.SysInfo">
select *
from sys_info
where infoId = #{userName}
and name = #{name}
</select>
</mapper>

View File

@@ -0,0 +1,16 @@
package com.yxt.demo.system.biz.sys_info;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:51
* @Description
*/
@Api(tags = "基础信息表")
@RestController
@RequestMapping("v1/sysinfo")
public class SysInfoRest {
}

View File

@@ -0,0 +1,18 @@
package com.yxt.demo.system.biz.sys_info;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_info.SysInfo;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:51
* @Description
*/
@Service
public class SysInfoService extends MybatisBaseService<SysInfoMapper, SysInfo> {
public SysInfo selectByNoAndName(String userName, String name) {
return baseMapper.selectByNoAndName(userName, name);
}
}

View File

@@ -0,0 +1,12 @@
package com.yxt.demo.system.biz.sys_info_ship;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:15
* @Description
*/
@Mapper
public interface SysInfoShipMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_info_ship.SysInfoShipMapper">
</mapper>

View File

@@ -0,0 +1,12 @@
package com.yxt.demo.system.biz.sys_info_ship;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:15
* @Description
*/
@Service
public class SysInfoShipService {
}

View File

@@ -0,0 +1,15 @@
package com.yxt.demo.system.biz.sys_menu;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.api.sys_menu.SysMenu;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:09
* @Description
*/
@Mapper
public interface SysMenuMapper extends BaseMapper<SysMenu> {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_menu.SysMenuMapper">
</mapper>

View File

@@ -0,0 +1,16 @@
package com.yxt.demo.system.biz.sys_menu;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:09
* @Description
*/
@Api(tags = "菜单")
@RestController
@RequestMapping("v1/sysmenu")
public class SysMenuRest {
}

View File

@@ -0,0 +1,16 @@
package com.yxt.demo.system.biz.sys_menu;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.api.sys_menu.SysMenu;
import com.yxt.demo.system.biz.sys_info.SysInfoMapper;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:09
* @Description
*/
@Service
public class SysMenuService extends MybatisBaseService<SysMenuMapper, SysMenu> {
}

View File

@@ -0,0 +1,12 @@
package com.yxt.demo.system.biz.sys_menu_role;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:12
* @Description
*/
@Mapper
public interface SysMenuRoleMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_menu_role.SysMenuRoleMapper">
</mapper>

View File

@@ -0,0 +1,12 @@
package com.yxt.demo.system.biz.sys_menu_role;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:12
* @Description
*/
@Service
public class SysMenuRoleService {
}

View File

@@ -0,0 +1,12 @@
package com.yxt.demo.system.biz.sys_notice;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:14
* @Description
*/
@Mapper
public interface SysNoticeMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_notice.SysNoticeMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_notice;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:23
* @Description
*/
public class SysNoticeRest {
}

View File

@@ -0,0 +1,12 @@
package com.yxt.demo.system.biz.sys_notice;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:13
* @Description
*/
@Service
public class SysNoticeService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_plan;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:24
* @Description
*/
public interface SysPlanMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_plan;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:24
* @Description
*/
public class SysPlanRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_plan;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:24
* @Description
*/
public class SysPlanService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_plan_schedule;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:25
* @Description
*/
public interface SysPlanScheduleMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_plan_schedule.SysPlanScheduleMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_plan_schedule;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:25
* @Description
*/
public class SysPlanScheduleRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_plan_schedule;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:25
* @Description
*/
public class SysPlanScheduleService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_resources;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:26
* @Description
*/
public interface SysResourcesMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_resources.SysResourcesMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_resources;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:26
* @Description
*/
public class SysResourcesRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_resources;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:26
* @Description
*/
public class SysResourcesService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_role;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
public interface SysRoleMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_role.SysRoleMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_role;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
public class SysRoleRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_role;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
public class SysRoleService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_score;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:28
* @Description
*/
public interface SysScoreMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_score.SysScoreMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_score;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:28
* @Description
*/
public class SysScoreRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_score;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:28
* @Description
*/
public class SysScoreService {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_student_score;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:31
* @Description
*/
public interface SysStudentScoreMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_student_score.SysStudentScoreMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_student_score;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:29
* @Description
*/
public class SysStudentScoreRest {
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_student_score;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:31
* @Description
*/
public class SysStudentScoreService {
}

View File

@@ -0,0 +1,15 @@
package com.yxt.demo.system.biz.sys_user;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_user.SysUser;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:40
* @Description
*/
@Mapper
public interface SysUserMapper extends BaseMapper<SysUser> {
SysUser selectByNo(String userName);
}

View File

@@ -0,0 +1,9 @@
<?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="com.yxt.demo.system.biz.sys_user.SysUserMapper">
<select id="selectByNo" resultType="com.yxt.demo.system.api.sys_user.SysUser">
select *
from sys_user
where userName = #{userName}
</select>
</mapper>

View File

@@ -0,0 +1,34 @@
package com.yxt.demo.system.biz.sys_user;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.api.sys_user.SysUserFeign;
import com.yxt.demo.system.api.sys_user.SysUserLoginQuery;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:40
* @Description
*/
@Api(tags = "用户表")
@RestController
@RequestMapping("v1/sysuser")
public class SysUserRest implements SysUserFeign {
@Autowired
private SysUserService sysUserService;
@Override
public ResultBean register(SysUserDto dto) {
return sysUserService.register(dto);
}
@Override
public ResultBean login(SysUserLoginQuery query) {
return sysUserService.login(query);
}
}

View File

@@ -0,0 +1,80 @@
package com.yxt.demo.system.biz.sys_user;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.redis.service.RedisService;
import com.yxt.demo.common.utils.allutils.Encodes;
import com.yxt.demo.common.utils.jwt.JWTUtil;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.api.sys_user.SysUserLoginQuery;
import com.yxt.demo.system.biz.sys_info.SysInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:40
* @Description
*/
@Service
public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
public static final long USERS_REDIS_SESSION_TL_PC = 60;
@Autowired
private SysInfoService sysInfoService;
@Autowired
private RedisService redisService;
public ResultBean register(SysUserDto dto) {
ResultBean rb = ResultBean.fireFail();
//验证学号+姓名是否存在
String userName = dto.getUserName();
String name = dto.getName();
SysInfo sysInfo = sysInfoService.selectByNoAndName(userName, name);
if (sysInfo == null) {
return rb.setMsg("学号或姓名错误");
}
//查看该账号是否已激活
SysUser sysUser = baseMapper.selectByNo(userName);
if (sysUser != null) {
if (sysUser.getHasActivated() == 1) {
return rb.setMsg("该账号已注册");
}
}
sysUser = new SysUser();
BeanUtil.copyProperties(dto, sysUser);
String md5Password = Encodes.md5(dto.getPassword());
sysUser.setPassword(md5Password);
baseMapper.insert(sysUser);
sysInfo.setUserSid(sysUser.getSid());
sysInfoService.updateById(sysInfo);
return rb.success();
}
public ResultBean login(SysUserLoginQuery query) {
ResultBean rb = ResultBean.fireFail();
//验证输入的账号密码是否存在
SysUser sysUser = baseMapper.selectByNo(query.getUserName());
if (sysUser == null) {
return rb.setMsg("账号密码错误");
} else {
String md5Password = Encodes.md5(query.getPassword());
if (!query.getPassword().equals(md5Password)) {
return rb.setMsg("账号密码错误");
}
//验证是否激活状态
if (sysUser.getHasActivated() == 0) {
return rb.setMsg("该账号已失效");
}
}
// 生成token
String uniqueToken = JWTUtil.create(sysUser.getSid() + "");
// redis中缓存token
redisService.set(uniqueToken, sysUser.getUserName(),
USERS_REDIS_SESSION_TL_PC);
return rb.success().setData(sysUser);
}
}

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_user_role;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:31
* @Description
*/
public interface SysUserRoleMapper {
}

View File

@@ -0,0 +1,4 @@
<?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="com.yxt.demo.system.biz.sys_user_role.SysUserRoleMapper">
</mapper>

View File

@@ -0,0 +1,9 @@
package com.yxt.demo.system.biz.sys_user_role;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:31
* @Description
*/
public class SysUserRoleSerrvice {
}

View File

@@ -2,7 +2,7 @@ spring:
application:
name: demo-system
profiles:
active: devv
active: dev
messages:
# 国际化资源文件路径
basename: i18n/messages
@@ -22,7 +22,7 @@ spring:
server:
port: 7003
port: 9112
max-http-header-size: 102400
tomcat:
max-http-form-post-size: -1