Skip to content
This repository has been archived by the owner on Jan 19, 2023. It is now read-only.

Commit

Permalink
Merge pull request #2 from bjchen2/master
Browse files Browse the repository at this point in the history
finish user pojo
  • Loading branch information
bjchen2 authored Oct 25, 2018
2 parents a7741ec + 0eb934e commit 9fec787
Show file tree
Hide file tree
Showing 7 changed files with 106 additions and 165 deletions.
11 changes: 8 additions & 3 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -63,11 +63,16 @@
<artifactId>java-jwt</artifactId>
<version>3.0.1</version>
</dependency>
<!-- druid连接池 -->
<!--引入druid数据库连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>RELEASE</version>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.9</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.22</version>
</dependency>
</dependencies>

Expand Down
3 changes: 3 additions & 0 deletions src/main/java/com/wizzstudio/substitute/enums/Gender.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
package com.wizzstudio.substitute.enums;

public enum Gender {
//男
MALE,
//女
FAMALE,
//不限
NO_LIMITED
}
3 changes: 3 additions & 0 deletions src/main/java/com/wizzstudio/substitute/enums/Role.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
package com.wizzstudio.substitute.enums;

public enum Role {
//普通用户
ROLE_USER,
//一级管理员
ROLE_ADMIN_1,
//二级管理员
ROLE_ADMIN_2
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import java.io.Serializable;
import java.util.Date;

//订单
@Entity
public class Indent implements Serializable {

Expand Down
181 changes: 27 additions & 154 deletions src/main/java/com/wizzstudio/substitute/pojo/entity/User.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,205 +3,78 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import com.wizzstudio.substitute.enums.Gender;
import com.wizzstudio.substitute.enums.Role;
import lombok.Data;

import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Entity(name = "user")
@Data
public class User implements Serializable {

//用户Id
//用户Id,由26位大小写字母+10位数组随机生成
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String id;

//用户微信openid
@Column
@NotNull
private String openid;

//用户名
@Column
//师傅Id
private Integer masterId;

//用户昵称,微信名
@NotNull
private String userName;

//用户真实姓名
private String trueName;

//电话号码
@Column(length = 11, unique = true)
@NotNull
private Integer phoneNumber;
private Long phone;

//用户头像url
@Column
@NotNull
private String avatar;

//学校
@Column
@NotNull
private String school;

//性别
//用户性别,男:”MALE”,女:”FAMALE”,未知:”NO_LIMITED”
@Enumerated(EnumType.STRING)
@NotNull
private Gender gender;

@Column
private Date createTime;

@Column
private Date updateTime;

/**
* 常用地址
*/
@Column
private Integer defaultAddressId;

/**
* 用户级别
* 用户级别: 普通用户:”ROLE_USER”,一级管理员:”ROLE_ADMIN_1” ,二级管理员:”ROLE_ADMIN_2”
*/
@Enumerated(EnumType.STRING)
@NotNull
@JsonProperty(access = JsonProperty.Access.READ_ONLY)
private Role role;

//师傅Id
@Column
private Integer masterId;

/**
* 余额
*/
@Column
private Integer balance;
@NotNull
private BigDecimal balance;

/**
* 累计收入
*/
@Column
private Integer income;


public User() {
}



public String getUserName() {
return userName;
}

public void setUserName(String userName) {
this.userName = userName;
}

public int getPhoneNumber() {
return phoneNumber;
}

public void setPhoneNumber(int phoneNumber) {
this.phoneNumber = phoneNumber;
}

public Role getRole() {
return role;
}

public void setRole(Role role) {
this.role = role;
}

public void setPhoneNumber(Integer phoneNumber) {
this.phoneNumber = phoneNumber;
}

public String getOpenid() {
return openid;
}

public void setOpenid(String openid) {
this.openid = openid;
}

public Integer getBalance() {
return balance;
}

public void setBalance(Integer balance) {
this.balance = balance;
}

public Integer getIncome() {
return income;
}

public void setIncome(Integer income) {
this.income = income;
}

public void setId(Integer id) {
this.id = id;
}

public String getAvatar() {
return avatar;
}

public void setAvatar(String avatar) {
this.avatar = avatar;
}

public String getSchool() {
return school;
}

public void setSchool(String school) {
this.school = school;
}

public Gender getGender() {
return gender;
}

public void setGender(Gender gender) {
this.gender = gender;
}

public Date getCreateTime() {
return createTime;
}
@NotNull
private BigDecimal allIncome;

@PrePersist
public void setCreateTime() {
this.createTime = createTime;
}
//师傅收入:当推荐人获得的收入
private BigDecimal masterIncome;

public Date getUpdateTime() {
return updateTime;
}
@Column(insertable = false,updatable = false)
private Date createTime;

@PreUpdate
public void setUpdateTime() {
this.updateTime = new Date();
}
@Column(updatable = false,insertable = false)
private Date updateTime;

public Integer getId() {
return id;
}

public Integer getMasterId() {
return masterId;
}

public void setMasterId(Integer masterId) {
this.masterId = masterId;
}

public Integer getDefaultAddressId() {
return defaultAddressId;
}

public void setDefaultAddressId(Integer defaultAddressId) {
this.defaultAddressId = defaultAddressId;
}
}
26 changes: 26 additions & 0 deletions src/main/java/com/wizzstudio/substitute/util/KeyUtil.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package com.wizzstudio.substitute.util;

import java.util.Random;

/**
* 用于生成唯一主键
* Created By Cx On 2018/10/25 22:16
*/
public class KeyUtil {

/**
* 生成用户唯一主键
* synchronized关键字,防止多线程冲突
*/
public static synchronized String getUserUniqueKey() {
final char[] words = {'A','a','B','b','C','c','D','d','E','e','F','f','G','g','H','h','I','i','J','j','K','k','L','l','M','m','N','n','O','o','P','p','Q','q','R','r','S','s','T','t','U','u','V','v','W','w','X','x','Y','y','Z','z','0','1','2','3','4','5','6','7','8','9'};
int length = words.length;
Random random = new Random();
//生成一个四位的随机数
StringBuilder key = new StringBuilder();
for (int i = 0; i < 6; i++){
key.append(words[random.nextInt(words.length)]);
}
return key.toString();
}
}
46 changes: 38 additions & 8 deletions src/main/resources/application.properties
Original file line number Diff line number Diff line change
@@ -1,12 +1,42 @@
#服务器端口
server.port=8001
################ database
#spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test
################ database start ################
##数据库配置
spring.datasource.url=jdbc:mysql://120.78.131.71:3333/substitute?characterEncoding=utf8&useSSL=false
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=kikyou
spring.datasource.password=kikyou
spring.datasource.username=substitute
spring.datasource.password=substitute
#显示并格式化JPA sql语句
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.hibernate.ddl-auto=create
################
################
################
#数据库连接池配置(需先在pom中引入druid数据库连接池)
#初始化连接池大小,最大连接数,最小连接数
spring.datasource.druid.initial-size=5
spring.datasource.druid.min-idle=5
spring.datasource.druid.max-active=20
# 配置获取连接等待超时的时间
spring.datasource.druid.max-wait=60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
spring.datasource.druid.time-between-eviction-runs-millis=60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
spring.datasource.druid.min-evictable-idle-time-millis=300000
################ database end ############

################ redis start ################
#该ip是内网ip,在服务器上用外网ip无法访问
#spring.redis.host=172.16.56.135
#spring.redis.port = 6666
##没有密码可以不写该属性
#spring.redis.password = 暂时没填,最后测试
## 连接池最大连接数
#spring.redis.jedis.pool.max-active=5000
## 连接池最大空闲连接数
#spring.redis.jedis.pool.max-idle=30000
## 连接池最小空闲连接数
#spring.redis.jedis.pool.min-idle=50
## 连接超时时间
#spring.redis.timeout= 20s
## 连接池最大阻塞时间
#spring.redis.jedis.pool.max-wait=-1ms
################ redis end ###################

0 comments on commit 9fec787

Please sign in to comment.