package com.moral.api.pojo.form.user; 
 | 
  
 | 
import com.fasterxml.jackson.annotation.JsonFormat; 
 | 
import com.moral.api.entity.User; 
 | 
import com.moral.api.pojo.dto.user.UserDTO; 
 | 
import com.moral.constant.ResponseCodeEnum; 
 | 
import com.moral.util.AESUtils; 
 | 
import com.moral.util.MD5Utils; 
 | 
import com.moral.util.RegexUtils; 
 | 
import lombok.Data; 
 | 
import org.springframework.format.annotation.DateTimeFormat; 
 | 
import org.springframework.util.ObjectUtils; 
 | 
  
 | 
import java.util.Date; 
 | 
  
 | 
/** 
 | 
 * @ClassName UserInsertForm 
 | 
 * @Description TODO 
 | 
 * @Author 陈凯裕 
 | 
 * @Date 2021/5/6 10:35 
 | 
 * @Version TODO 
 | 
 **/ 
 | 
@Data 
 | 
public class UserInsertForm { 
 | 
  
 | 
    private String account; 
 | 
  
 | 
    private String password; 
 | 
  
 | 
    private String userName; 
 | 
  
 | 
    private Integer organizationId; 
 | 
  
 | 
    private String email; 
 | 
  
 | 
    private String mobile; 
 | 
  
 | 
    private String wechat; 
 | 
  
 | 
    @DateTimeFormat(pattern = "yyyy-MM-dd") 
 | 
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") 
 | 
    private Date expireTime; 
 | 
  
 | 
  
 | 
    public boolean valid() { 
 | 
        if ( 
 | 
                ObjectUtils.isEmpty(account) || 
 | 
                        ObjectUtils.isEmpty(password) || 
 | 
                        ObjectUtils.isEmpty(userName) || 
 | 
                        ObjectUtils.isEmpty(organizationId) || 
 | 
                        ObjectUtils.isEmpty(expireTime) 
 | 
                ) 
 | 
            return false; 
 | 
        return true; 
 | 
    } 
 | 
  
 | 
    public UserDTO paramValid() { 
 | 
        UserDTO dto = new UserDTO(); 
 | 
        //判断账号是否符合条件 
 | 
        if (!RegexUtils.checkAccount(account)) { 
 | 
            dto.setCode(ResponseCodeEnum.ACCOUNT_INVALID.getCode()); 
 | 
            dto.setMsg(ResponseCodeEnum.ACCOUNT_INVALID.getMsg()); 
 | 
            return dto; 
 | 
        } 
 | 
        //判断用户名是否符合条件 
 | 
        if(userName.contains(" ")){ 
 | 
            dto.setCode(ResponseCodeEnum.USERNAME_INVALID.getCode()); 
 | 
            dto.setMsg(ResponseCodeEnum.USERNAME_INVALID.getMsg()); 
 | 
            return dto; 
 | 
        } 
 | 
        //判断密码是否符合条件 
 | 
        if (!RegexUtils.checkPassword(AESUtils.decrypt(password))) { 
 | 
            dto.setCode(ResponseCodeEnum.PASSWORD_INVALID.getCode()); 
 | 
            dto.setMsg(ResponseCodeEnum.PASSWORD_INVALID.getMsg()); 
 | 
            return dto; 
 | 
        } 
 | 
        //判断手机号是否符合条件 
 | 
        if (!ObjectUtils.isEmpty(mobile)) { 
 | 
            if (!RegexUtils.checkMobile(mobile)) { 
 | 
                dto.setCode(ResponseCodeEnum.MOBILE_INVALID.getCode()); 
 | 
                dto.setMsg(ResponseCodeEnum.MOBILE_INVALID.getMsg()); 
 | 
                return dto; 
 | 
            } 
 | 
        } 
 | 
        //判断邮箱是否符合条件 
 | 
        if (!ObjectUtils.isEmpty(email)) { 
 | 
            if (!RegexUtils.checkEmail(email)) { 
 | 
                dto.setCode(ResponseCodeEnum.EMAIL_INVALID.getCode()); 
 | 
                dto.setMsg(ResponseCodeEnum.EMAIL_INVALID.getMsg()); 
 | 
                return dto; 
 | 
            } 
 | 
        } 
 | 
        dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); 
 | 
        dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); 
 | 
        return dto; 
 | 
    } 
 | 
  
 | 
    public User formConvertEntity() { 
 | 
        User user = new User(); 
 | 
        user.setAccount(account); 
 | 
        user.setPassword(MD5Utils.saltMD5(AESUtils.decrypt(password))); 
 | 
        user.setUserName(userName); 
 | 
        user.setOrganizationId(organizationId); 
 | 
        user.setEmail(email); 
 | 
        user.setMobile(mobile); 
 | 
        user.setWechat(wechat); 
 | 
        user.setExpireTime(expireTime); 
 | 
        user.setIsAdmin(true); 
 | 
        return user; 
 | 
    } 
 | 
} 
 |