|  | @@ -1,13 +1,13 @@
 | 
	
		
			
				|  |  |  package com.kmall.common.service.impl;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import com.google.common.collect.ImmutableBiMap;
 | 
	
		
			
				|  |  |  import com.kmall.common.Global;
 | 
	
		
			
				|  |  |  import com.kmall.common.dao.SysUserDao;
 | 
	
		
			
				|  |  |  import com.kmall.common.entity.SysUserEntity;
 | 
	
		
			
				|  |  |  import com.kmall.common.service.SysRoleService;
 | 
	
		
			
				|  |  |  import com.kmall.common.service.SysUserRoleService;
 | 
	
		
			
				|  |  |  import com.kmall.common.service.SysUserService;
 | 
	
		
			
				|  |  | -import com.kmall.common.utils.Constant;
 | 
	
		
			
				|  |  | -import com.kmall.common.utils.RRException;
 | 
	
		
			
				|  |  | +import com.kmall.common.utils.*;
 | 
	
		
			
				|  |  |  import org.apache.commons.lang.StringUtils;
 | 
	
		
			
				|  |  |  import org.apache.shiro.crypto.hash.Sha256Hash;
 | 
	
		
			
				|  |  |  import org.springframework.beans.factory.annotation.Autowired;
 | 
	
	
		
			
				|  | @@ -70,6 +70,35 @@ public class SysUserServiceImpl implements SysUserService {
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      @Transactional
 | 
	
		
			
				|  |  |      public void save(SysUserEntity user) {
 | 
	
		
			
				|  |  | +        Map<String, Object> valideDate = MapBeanUtil.fromObject(user);
 | 
	
		
			
				|  |  | +        ImmutableBiMap.Builder builder = new ImmutableBiMap.Builder();
 | 
	
		
			
				|  |  | +        builder.put("username", "用户名");
 | 
	
		
			
				|  |  | +        builder.put("email", "邮箱");
 | 
	
		
			
				|  |  | +        builder.put("mobile", "手机号");
 | 
	
		
			
				|  |  | +        builder.put("roleType", "数据角色类型");
 | 
	
		
			
				|  |  | +        builder.put("status", "状态");
 | 
	
		
			
				|  |  | +        builder.put("roleId", "角色");
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
 | 
	
		
			
				|  |  | +        if (Integer.valueOf(r.get("code").toString()) != 0) {
 | 
	
		
			
				|  |  | +            throw new RRException(r.get("msg").toString());
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +            if (!"1".equals(user.getRoleType())) {
 | 
	
		
			
				|  |  | +                builder.put("storeId", "门店");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            r = ValidatorUtil.isEmpty(builder.build(), valideDate);
 | 
	
		
			
				|  |  | +            if (Integer.valueOf(r.get("code").toString()) != 0) {
 | 
	
		
			
				|  |  | +                throw new RRException(r.get("msg").toString());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        if (!user.getEmail().matches("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$")) {
 | 
	
		
			
				|  |  | +            throw new RRException("邮箱格式错误!");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        if (!PhoneFormatCheckUtils.isPhoneLegal(user.getMobile())) {
 | 
	
		
			
				|  |  | +            throw new RRException("手机号格式错误!");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          user.setCreateTime(new Date());
 | 
	
		
			
				|  |  |          //sha256加密
 | 
	
		
			
				|  |  |          user.setPassword(new Sha256Hash(Global.DEFAULT_PASS_WORD).toHex());
 | 
	
	
		
			
				|  | @@ -79,12 +108,41 @@ public class SysUserServiceImpl implements SysUserService {
 | 
	
		
			
				|  |  |          checkRole(user);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          //保存用户与角色关系
 | 
	
		
			
				|  |  | -        sysUserRoleService.saveOrUpdate(user.getUserId(), user.getRoleIdList());
 | 
	
		
			
				|  |  | +        sysUserRoleService.saveOrUpdate(user.getUserId(), user.getRoleId());
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 | 
	
		
			
				|  |  |      @Transactional
 | 
	
		
			
				|  |  |      public void update(SysUserEntity user) {
 | 
	
		
			
				|  |  | +        Map<String, Object> valideDate = MapBeanUtil.fromObject(user);
 | 
	
		
			
				|  |  | +        ImmutableBiMap.Builder builder = new ImmutableBiMap.Builder();
 | 
	
		
			
				|  |  | +        builder.put("username", "用户名");
 | 
	
		
			
				|  |  | +        builder.put("email", "邮箱");
 | 
	
		
			
				|  |  | +        builder.put("mobile", "手机号");
 | 
	
		
			
				|  |  | +        builder.put("roleType", "数据角色类型");
 | 
	
		
			
				|  |  | +        builder.put("status", "状态");
 | 
	
		
			
				|  |  | +        builder.put("roleId", "角色");
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        R r = ValidatorUtil.isEmpty(builder.build(), valideDate);
 | 
	
		
			
				|  |  | +        if (Integer.valueOf(r.get("code").toString()) != 0) {
 | 
	
		
			
				|  |  | +            throw new RRException(r.get("msg").toString());
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +            if (!"1".equals(user.getRoleType())) {
 | 
	
		
			
				|  |  | +                builder.put("storeId", "门店");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            r = ValidatorUtil.isEmpty(builder.build(), valideDate);
 | 
	
		
			
				|  |  | +            if (Integer.valueOf(r.get("code").toString()) != 0) {
 | 
	
		
			
				|  |  | +                throw new RRException(r.get("msg").toString());
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        if (!user.getEmail().matches("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-z]{2,}$")) {
 | 
	
		
			
				|  |  | +            throw new RRException("邮箱格式错误!");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +        if (!PhoneFormatCheckUtils.isPhoneLegal(user.getMobile())) {
 | 
	
		
			
				|  |  | +            throw new RRException("手机号格式错误!");
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          if (StringUtils.isBlank(user.getPassword())) {
 | 
	
		
			
				|  |  |              user.setPassword(new Sha256Hash(Global.DEFAULT_PASS_WORD).toHex());
 | 
	
		
			
				|  |  |          } else {
 | 
	
	
		
			
				|  | @@ -96,7 +154,7 @@ public class SysUserServiceImpl implements SysUserService {
 | 
	
		
			
				|  |  |          checkRole(user);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          //保存用户与角色关系
 | 
	
		
			
				|  |  | -        sysUserRoleService.saveOrUpdate(user.getUserId(), user.getRoleIdList());
 | 
	
		
			
				|  |  | +        sysUserRoleService.saveOrUpdate(user.getUserId(), user.getRoleId());
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      @Override
 |