package com.moral.api.pojo.form.account; import com.moral.api.entity.ManageAccount; import com.moral.api.pojo.dto.account.AccountDTO; 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.util.ObjectUtils; import java.util.List; /** * @ClassName AccountUpdateRequest * @Description TODO * @Author 陈凯裕 * @Date 2021/3/15 15:34 * @Version TODO **/ @Data public class AccountUpdateForm { private Integer accountId; private String userName; private String password; private String email; private String mobile; private String wechat; private List roleIds; public boolean valid() { if (ObjectUtils.isEmpty(accountId)) return false; if ( ObjectUtils.isEmpty(userName) && ObjectUtils.isEmpty(password) && ObjectUtils.isEmpty(email) && ObjectUtils.isEmpty(mobile) && ObjectUtils.isEmpty(wechat) && null == roleIds ) return false; return true; } public AccountDTO paramValid() { AccountDTO dto = new AccountDTO(); //判断手机号是否符合条件 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; } } //判断密码是否符合规则 if (!ObjectUtils.isEmpty(password)) { if (!RegexUtils.checkPassword(AESUtils.decrypt(password))) { dto.setCode(ResponseCodeEnum.PASSWORD_INVALID.getCode()); dto.setMsg(ResponseCodeEnum.PASSWORD_INVALID.getMsg()); return dto; } } dto.setCode(ResponseCodeEnum.SUCCESS.getCode()); dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg()); return dto; } public ManageAccount formConvertEntity() { ManageAccount manageAccount = new ManageAccount(); manageAccount.setId(accountId); if (!ObjectUtils.isEmpty(password)) manageAccount.setPassword(MD5Utils.saltMD5(AESUtils.decrypt(password))); manageAccount.setUserName(userName); manageAccount.setEmail(email); manageAccount.setMobile(mobile); manageAccount.setWechat(wechat); return manageAccount; } }