Browse Source

系统管理mapper service

master
xyiege 4 years ago
parent
commit
c4d8f9f7a1
  1. 7
      src/main/java/cn/chjyj/szwh/Interceptor/ChInterceptor.java
  2. 47
      src/main/java/cn/chjyj/szwh/bean/Admin.java
  3. 42
      src/main/java/cn/chjyj/szwh/mapper/AdminMapper.java
  4. 37
      src/main/java/cn/chjyj/szwh/service/AdminService.java
  5. 40
      src/main/java/cn/chjyj/szwh/service/impl/AdminServiceImpl.java
  6. 55
      src/main/resources/mapper/szwh/AdminMapper.xml
  7. 62
      src/test/java/cn/chjyj/szwh/mapper/AdminMapperTest.java

7
src/main/java/cn/chjyj/szwh/Interceptor/ChInterceptor.java

@ -4,6 +4,8 @@ package cn.chjyj.szwh.Interceptor;
import cn.chjyj.szwh.annotation.PassToken;
import cn.chjyj.szwh.exception.ChException;
import cn.chjyj.szwh.utils.JwtUtils;
import com.auth0.jwt.JWT;
import com.auth0.jwt.interfaces.DecodedJWT;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Component;
import org.springframework.web.method.HandlerMethod;
@ -42,8 +44,9 @@ public class ChInterceptor implements HandlerInterceptor {
throw new ChException("请登录重试");
}
// 获取 token 中的 user Name
String userId = JwtUtils.getAudience(token);
DecodedJWT decode = JWT.decode(token);
//获取到里面存在的用户id
String userId = decode.getClaim("userid").asString();
//找找看是否有这个user 因为我们需要检查用户是否存在,读者可以自行修改逻辑
// todo

47
src/main/java/cn/chjyj/szwh/bean/Admin.java

@ -0,0 +1,47 @@
package cn.chjyj.szwh.bean;
import java.io.Serializable;
/**
* 管理用户
*/
public class Admin implements Serializable {
private static final long serialVersionUID = 1L;
/**
* `admin`
* id,account_name as accountName,account_id as accountId
*/
private Integer id;
/**
* 名称
*/
private String accountName;
/**
* 用户名称
*/
private String accountId;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getAccountName() {
return accountName;
}
public void setAccountName(String accountName) {
this.accountName = accountName;
}
public String getAccountId() {
return accountId;
}
public void setAccountId(String accountId) {
this.accountId = accountId;
}
}

42
src/main/java/cn/chjyj/szwh/mapper/AdminMapper.java

@ -0,0 +1,42 @@
package cn.chjyj.szwh.mapper;
import cn.chjyj.szwh.bean.Admin;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* 管理员mapper
*/
@Component
public interface AdminMapper {
/**
* 根据account_id
* @param accountId 登陆账号
* @return
*/
Admin getAdminByAccountId(String accountId);
/**
* 管理人员列表
* @param startRs
* @param pagesize
* @return
*/
List<Admin> getAdminList(@Param("startRs") int startRs, @Param("pageSize") int pagesize);
/**
* 增加管理员
* @param admin
* @return
*/
int addAdmin(Admin admin);
/**
* 更新管理员信息
* @param admin
* @return
*/
int updateAdmin(Admin admin);
}

37
src/main/java/cn/chjyj/szwh/service/AdminService.java

@ -0,0 +1,37 @@
package cn.chjyj.szwh.service;
import cn.chjyj.szwh.bean.Admin;
import java.util.List;
/**
* 系统账号service 接口层
*/
public interface AdminService {
/**
* 根据account_id
* @param accountId 登陆账号
* @return
*/
Admin getAdminByAccountId(String accountId);
/**
* 管理人员列表
* @param page
* @return
*/
List<Admin> getAdminList(int page);
/**
* 增加管理员
* @param admin
* @return
*/
int addAdmin(Admin admin);
/**
* 更新管理员信息
* @param admin
* @return
*/
int updateAdmin(Admin admin);
}

40
src/main/java/cn/chjyj/szwh/service/impl/AdminServiceImpl.java

@ -0,0 +1,40 @@
package cn.chjyj.szwh.service.impl;
import cn.chjyj.szwh.bean.Admin;
import cn.chjyj.szwh.constant.ChConstant;
import cn.chjyj.szwh.mapper.AdminMapper;
import cn.chjyj.szwh.service.AdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* ADMIN 接口实现层
*/
@Service
public class AdminServiceImpl implements AdminService {
@Autowired
private AdminMapper adminMapper;
@Override
public Admin getAdminByAccountId(String accountId) {
return adminMapper.getAdminByAccountId(accountId);
}
@Override
public List<Admin> getAdminList(int page) {
int startrs = page>0?(page-1)* ChConstant.PAGESIZE :0;
return adminMapper.getAdminList(startrs,ChConstant.PAGESIZE);
}
@Override
public int addAdmin(Admin admin) {
return adminMapper.addAdmin(admin);
}
@Override
public int updateAdmin(Admin admin) {
return adminMapper.updateAdmin(admin);
}
}

55
src/main/resources/mapper/szwh/AdminMapper.xml

@ -0,0 +1,55 @@
<?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.chjyj.szwh.mapper.AdminMapper">
<sql id="column">
id,account_name as accountName,account_id as accountName,account_id as accountId
</sql>
<sql id="tbName">`admin`</sql>
<!--查询记录列表-->
<select id="getAdminList" parameterType="java.lang.Integer" resultType="cn.chjyj.szwh.bean.Admin">
WITH mm as (select * from
<include refid="tbName"/>
where id>#{startRs} limit #{pageSize}
)SELECT * FROM mm ORDER BY id DESC;
</select>
<!--根据id查询-->
<select id="getAdminByAccountId" parameterType="java.lang.String" resultType="cn.chjyj.szwh.bean.Admin">
select
<include refid="column"/>
from
<include refid="tbName"/>
where account_id=#{accountId}
</select>
<!--新增用户 id 自增加-->
<insert id="addAdmin" parameterType="cn.chjyj.szwh.bean.Admin" useGeneratedKeys="true" keyColumn="id">
insert into
<include refid="tbName"/>
(account_name,account_id)
values (
#{accountName},
#{accountId}
)
</insert>
<!-- 更新-->
<update id="updateAdmin" parameterType="cn.chjyj.szwh.bean.Admin">
update
<include refid="tbName"/>
<set>
<if test="accountName!=null">
account_name=#{accountName},
</if>
<if test="accountId!=null">
account_id=#{accountId},
</if>
</set>
where id=#{id};
</update>
</mapper>

62
src/test/java/cn/chjyj/szwh/mapper/AdminMapperTest.java

@ -0,0 +1,62 @@
package cn.chjyj.szwh.mapper;
import cn.chjyj.szwh.bean.Admin;
import cn.chjyj.szwh.constant.ChConstant;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import static org.junit.Assert.*;
@SpringBootTest
@RunWith(SpringRunner.class)
@Transactional
public class AdminMapperTest {
@Autowired
private AdminMapper adminMapper;
@Test
public void getAdminByAccountId() {
String acid="admin";
Admin admin = adminMapper.getAdminByAccountId(acid);
System.out.println(admin.getAccountName());
}
@Test
public void getAdminList() {
int startrs=0;
List<Admin> admins = adminMapper.getAdminList(startrs, ChConstant.PAGESIZE);
System.out.println(admins.size());
}
/**
* rollback为false时候提交数据否则执行回滚
*/
@Rollback
@Test
public void addAdmin() {
Admin admin = new Admin();
admin.setAccountId("zhangsan");
admin.setAccountName("张三");
// 执行插入操作
int ret = adminMapper.addAdmin(admin);
}
@Rollback
@Test
public void updateAdmin() {
int id=1;
Admin admin = new Admin();
admin.setId(id);
admin.setAccountName("老六");
// 执行更新
adminMapper.updateAdmin(admin);
}
}
Loading…
Cancel
Save