- 错误要定义枚举类
实例:
if (memberFeedback == null) {
// TODO 这种定义错误枚举呀,放在home.enums.ErrorStatus,这个项目分包没分对,所有看起来怪怪的,算了
// 已修正
return WebResult.createFailedResult(ErrorStatus.MEMBER_FEEDBACK_ID_NULL.getCode(), ErrorStatus.MEMBER_FEEDBACK_ID_NULL.getMsg());
}
/*
* 警告:
* 本源代码所有权归广州慧扬健康科技有限公司(下称“本公司”)所有,已采取保密措施加以保护。受《中华人民共和国刑法》、
* 《反不正当竞争法》和《国家工商行政管理局关于禁止侵犯商业秘密行为的若干规定》等相关法律法规的保护。未经本公司书面
* 许可,任何人披露、使用或者允许他人使用本源代码,必将受到相关法律的严厉惩罚。
* Warning:
* The ownership of this source code belongs to Guangzhou Wisefly Technology Co., Ltd.(hereinafter referred to as "the company"),
* which is protected by the criminal law of the People's Republic of China, the anti unfair competition law and the
* provisions of the State Administration for Industry and Commerce on prohibiting the infringement of business secrets, etc.
* Without the written permission of the company, anyone who discloses, uses or allows others to use this source code
* will be severely punished by the relevant laws.
*/
package cn.wisefly.group.enums;
/**
* 用户中心错误响应报文枚举类
*/
public enum ErrorStatus {
GET_ID_FAILED(-10001, "获取雪花全局ID失败"),
DB_OPERATE_FAILED(-10002, "执行数据写入操作失败"),
ACCOUNT_IS_NULL(-10003, "登录账号不允许为空"),
TOKEN_IS_NULL(-10004, "登录令牌不允许为空"),
DATA_NULL(-10005, "待操作的数据为空"),
ACCOUNT_NOT_EXISIT(-10006, "账户不存在"),
ACCOUNT_PWD_ERROR(-10007, "账户或密码错误"),
RANDOM_IS_NULL(-10008, "登录随机数不允许为空"),
REGISTER_FAILED(-10009, "注册失败"),
ACCOUNT_REGISTERED(-10010, "账户已注册"),
INVALID_TOKEN(-10011, "无效token,未能找到用户信息"),
ACCESSTOKEN_IS_NULL(-10012, "token为空"),
NAME_IS_NULL(-10013, "姓名不允许为空"),
CALL_AUTHORITY_FAILED(-10014, "调用权限中心接口失败"),
MOBILE_IS_NULL(-10015, "手机不允许为空"),
PWD_ERROR_OUTPASE(-10016, "超过密码错误次数"),
RIGHTS_INFO_MISMATCH(-10017, "权限与用户不匹配"),
ACCOUNT_LGOIN_COUNT_FULL(-10018, "该账号可登录人数已满"),
ACCOUNT_LOCK(-10019, "账户被锁定,操作失败"),
PASSWORD_ERROR(-10020, "密码不符合规则"),
ACCOUNT_NOT_EXIST(-10021, "账户不存在"),
ACCOUNT_CONTAIN_SPECIAL_CHAR(-10022, "账户包含特殊字符串"),
MEMBER_FEEDBACK_ID_NULL(-10023, "feedbackId不存在"),
MEMBER_FEEDBACK_STATUS_FULL(-10024, "反馈处理已存在"),
;
private int code;
private String msg;
ErrorStatus(int code, String msg) {
this.code = code;
this.msg = msg;
}
public int getCode() {
return code;
}
public String getMsg() {
return msg;
}
}
- 判空
list != null && list.size() > 0 => .size()应该放到后面,否则.size()会空指针,注意顺序,判空要利用工具类
实例:
CollectionUtils.isNotEmpty(feedbackProcessingImageDTOList)
- 常量定义枚举类
实例:
//更改反馈状态 TODO 定义常量枚举,不要直接用 1
// 已修正
memberFeedback.setStatus(FeedbackCode.FEEDBACK_PROCESSED);
package cn.wisefly.common.constant;
/**
* 反馈状态码
*
* @author :0391
* @date :Created in 2021-08-26
*/
public class FeedbackCode {
/**
* 反馈未处理
*/
public static final int FEEDBACK_NOT_PROCESSED = 0;
/**
* 反馈已回复
*/
public static final int FEEDBACK_PROCESSED = 1;
}
- model类中已经自动生成了常量,不需要直接使用字符串
实例:
// TODO 这里就不要用直接用字符串啦,你会发现 TMemberFeedback 这个类里面,已经生成了静态常量给你用了
// 已修正
if (param.getPhoneNumber() != null) {
queryWrapper.like(TMemberFeedback.FIELD_PHONE_NUMBER, param.getPhoneNumber());
}
package cn.wisefly.advice.model;
import cn.wisefly.framework.common.dto.helper.LongJsonDeserializer;
import cn.wisefly.framework.common.dto.helper.LongJsonSerializer;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 用户反馈表
*
* @author admin
* @date 2021-08-13 10:46:40.000
**/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ApiModel(value = "用户反馈表")
public class TMemberFeedback {
public static final String FIELD_ID = "id";
public static final String FIELD_MEMBER_ID = "member_id";
public static final String FIELD_MEMBER_NAME = "member_name";
public static final String FIELD_PHONE_NUMBER = "phone_number";
public static final String FIELD_TYPE = "type";
public static final String FIELD_SUBMIT_DATE = "submit_date";
public static final String FIELD_TITLE = "title";
public static final String FIELD_CONTENT = "content";
public static final String FIELD_STATUS = "status";
public static final String FIELD_CREATE_USER_ID = "create_user_id";
public static final String FIELD_CREATE_USER_NAME = "create_user_name";
public static final String FIELD_CREATE_TIME = "create_time";
public static final String FIELD_LAST_USER_ID = "last_user_id";
public static final String FIELD_LAST_USER_NAME = "last_user_name";
public static final String FIELD_LAST_TIME = "last_time";
public static final String FIELD_DELETE_FLAG = "delete_flag";
/**
* 主键
*/
@ApiModelProperty(value = "主键")
@JsonSerialize(using = LongJsonSerializer.class)
@JsonDeserialize(using = LongJsonDeserializer.class)
private Long id;
/**
* 用户id
*/
@ApiModelProperty(value = "用户id")
private Long memberId;
/**
* 用户匿名后的姓名
*/
@ApiModelProperty(value = "用户匿名后的姓名")
private String memberName;
/**
* 手机号
*/
@ApiModelProperty(value = "手机号")
private Long phoneNumber;
/**
* 反馈类型
*/
@ApiModelProperty(value = "反馈类型")
private Integer type;
/**
* 提交日期
*/
@ApiModelProperty(value = "提交日期")
private Date submitDate;
/**
* 标题
*/
private String title;
/**
* 内容
*/
@ApiModelProperty(value = "内容")
private String content;
/**
* 状态
*/
@ApiModelProperty(value = "状态")
private Integer status;
/**
* 创建人
*/
@ApiModelProperty(value = "创建人", hidden = true)
@JsonSerialize(using = LongJsonSerializer.class)
@JsonDeserialize(using = LongJsonDeserializer.class)
private Long createUserId;
/**
* 创建人姓名
*/
@ApiModelProperty(value = "创建人姓名", hidden = true)
private String createUserName;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间", hidden = true)
private Date createTime;
/**
* 最后修改人
*/
@ApiModelProperty(value = "最后修改人", hidden = true)
@JsonSerialize(using = LongJsonSerializer.class)
@JsonDeserialize(using = LongJsonDeserializer.class)
private Long lastUserId;
/**
* 最后修改人
*/
@ApiModelProperty(value = "最后修改人", hidden = true)
private String lastUserName;
/**
* 最后修改时间
*/
@ApiModelProperty(value = "最后修改时间", hidden = true)
private Date lastTime;
/**
* 是否删除(1是,0否)
*/
@ApiModelProperty(value = "是否删除(1是,0否)", hidden = true)
private Integer deleteFlag;
}
- Mybatis语法
- 日期类 Calendar
实例:
Calendar calendar = Calendar.getInstance();
//设置日期为昨天
calendar.add(Calendar.DATE, -1);
//设置为0h 0min 0s
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
7.IDE 的 text file encoding 设置为 UTF-8; IDE 中文件的换行符使用 Unix 格式,不要使用 Windows 格式