Browse Source

Merge branch 'dev' of trick9191/wlyy2.0 into dev

trick9191 6 years ago
parent
commit
95ce82abfe

+ 22 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/base/role/RoleDO.java

@ -35,6 +35,10 @@ public class RoleDO extends UuidIdentityEntityWithOperator {
	 */
	private Boolean system;
	private String saasId;
	private Integer status;//1生效,-1失效
	@Column(name = "name", length = 50)
	public String getName() {
		return this.name;
@ -79,4 +83,22 @@ public class RoleDO extends UuidIdentityEntityWithOperator {
	public void setType(String type) {
		this.type = type;
	}
	@Column(name = "saas_id")
	public String getSaasId() {
		return saasId;
	}
	public void setSaasId(String saasId) {
		this.saasId = saasId;
	}
	@Column(name = "status")
	public Integer getStatus() {
		return status;
	}
	public void setStatus(Integer status) {
		this.status = status;
	}
}

+ 4 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/base/BaseRequestMapping.java

@ -181,6 +181,9 @@ public class BaseRequestMapping {
     */
    public static class Role extends Basic {
        public static final String PREFIX  = "/role";
        public static final String api_success ="success";
        public static final String saveRole ="/saveRole";
        public static final String findRoleNameExist ="/findRoleNameExist";
    }
    /**
@ -194,6 +197,7 @@ public class BaseRequestMapping {
        public static final String MOVE_DOWN  = "/moveDown";
        public static final String GET_TREE  = "/getTree";
        public static final String FIND_ALL  = "/findAll";
        public static final String findRoleMenuTree  = "/findRoleMenuTree";
    }
    /**

+ 2 - 8
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/role/MenuVO.java

@ -35,6 +35,8 @@ public class MenuVO extends UuidIdentityVOWithOperator {
    private String remark;
    @ApiModelProperty(value = "是否展示(1是,2否)", example = "1")
    private Integer show;
    @ApiModelProperty(value = "是否选择", example = "是否选择")
    private Boolean checked;
    @ApiModelProperty(value = "子集")
    private List<MenuVO> children = new ArrayList<>();
@ -117,12 +119,4 @@ public class MenuVO extends UuidIdentityVOWithOperator {
    public void setParentName(String parentName) {
        this.parentName = parentName;
    }
    public Integer getLevel() {
        return level;
    }
    public void setLevel(Integer level) {
        this.level = level;
    }
}

+ 20 - 0
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/base/role/RoleVO.java

@ -21,6 +21,10 @@ public class RoleVO extends UuidIdentityVOWithOperator {
	private String code;
	@ApiModelProperty(value = "1.系统管理员,2.saas管理员,3.机构管理员", example = "1")
	private String type;
	@ApiModelProperty(value = "sassId", example = "1")
	private String saasId;
	@ApiModelProperty(value =  "状态: -1 删除,1有效.", example = "1")
	private Integer status;
	public String getName() {
		return this.name;
@ -61,4 +65,20 @@ public class RoleVO extends UuidIdentityVOWithOperator {
	public void setType(String type) {
		this.type = type;
	}
	public String getSaasId() {
		return saasId;
	}
	public void setSaasId(String saasId) {
		this.saasId = saasId;
	}
	public Integer getStatus() {
		return status;
	}
	public void setStatus(Integer status) {
		this.status = status;
	}
}

+ 2 - 4
gateway/ag-basic/src/main/resources/application.yml

@ -42,15 +42,13 @@ zuul:
      serviceId: svr-iot
    svr-base:
      path: /base/**
      serviceId: svr-base
      serviceId: svr-base-lyx
    svr-authentication:
      path: /auth/**
      serviceId: svr-authentication
      serviceId: svr-authentication-lyx
    svr-healthy-house:
      path: /healthyHouse/**
      serviceId: svr-healthy-house
---
spring:
  profiles: jwdev

+ 1 - 1
gateway/ag-basic/src/main/resources/bootstrap.yml

@ -1,6 +1,6 @@
spring:
  application:
    name: ag-basic
    name: ag-basic-lyx
  cloud:
    config:
      failFast: true

+ 4 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/role/RoleDao.java

@ -4,6 +4,8 @@ import com.yihu.jw.entity.base.role.RoleDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * Dao - 角色
 * Created by progr1mmer on 2018/8/17.
@ -11,4 +13,6 @@ import org.springframework.data.repository.PagingAndSortingRepository;
public interface RoleDao extends PagingAndSortingRepository<RoleDO, String>, JpaSpecificationExecutor<RoleDO> {
    RoleDO findByCode(String code);
    List<RoleDO> findByNameAndStatus(String name,Integer status);
}

+ 4 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/dao/role/RoleMenuDao.java

@ -4,8 +4,12 @@ import com.yihu.jw.entity.base.role.RoleMenuDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * @author yeshijie on 2018/9/26.
 */
public interface RoleMenuDao extends PagingAndSortingRepository<RoleMenuDO, String>, JpaSpecificationExecutor<RoleMenuDO> {
    List<RoleMenuDO> findByRoleId(String roleId);
}

+ 76 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/role/MenuEndpoint.java

@ -2,8 +2,10 @@ package com.yihu.jw.base.endpoint.role;
import com.yihu.jw.base.contant.CommonContant;
import com.yihu.jw.base.service.role.MenuService;
import com.yihu.jw.base.service.role.RoleMenuService;
import com.yihu.jw.base.util.ErrorCodeUtil;
import com.yihu.jw.entity.base.role.MenuDO;
import com.yihu.jw.entity.base.role.RoleMenuDO;
import com.yihu.jw.exception.code.BaseErrorCode;
import com.yihu.jw.restmodel.base.role.MenuVO;
import com.yihu.jw.restmodel.web.Envelop;
@ -38,6 +40,9 @@ public class MenuEndpoint extends EnvelopRestEndpoint {
    @Autowired
    private ErrorCodeUtil errorCodeUtil;
    @Autowired
    private RoleMenuService roleMenuService;
    @PostMapping(value = BaseRequestMapping.Menu.CREATE)
    @ApiOperation(value = "创建")
    public ObjEnvelop<MenuVO> create (
@ -170,6 +175,7 @@ public class MenuEndpoint extends EnvelopRestEndpoint {
            }
        });
        Map<String,List<MenuVO>> map = menuVOs.stream().collect(Collectors.groupingBy(MenuVO::getParentId));
        menuVOs.forEach(menu->{
            List<MenuVO> tmp = map.get(menu.getId());
            menu.setChildren(tmp);
@ -204,4 +210,74 @@ public class MenuEndpoint extends EnvelopRestEndpoint {
        return success(menuVOs);
    }
    @GetMapping(value = BaseRequestMapping.Menu.findRoleMenuTree)
    @ApiOperation(value = "获取角色菜单列表")
    public ListEnvelop<MenuVO> findRoleMenuTree (
            @ApiParam(name = "status", value = "状态")
            @RequestParam(value = "status", required = false) String status,
            @ApiParam(name = "name", value = "名称")
            @RequestParam(value = "name", required = false) String name,
            @ApiParam(name = "roleId", value = "角色id")
            @RequestParam(value = "roleId", required = false)String roleId) throws Exception {
        String filters = "";
        if(StringUtils.isNotBlank(status)){
            filters = "status="+status+";";
        }
        if(StringUtils.isNotBlank(name)){
            filters += "name?"+name+";";
        }
        //获取所有选择树
        List<RoleMenuDO> roleMenus = roleMenuService.findRoleMenu(roleId);
        List<MenuDO> menuDOs = menuService.search(null, filters, "+sort");
        List<MenuVO> menuVOs = convertToModels(menuDOs,new ArrayList<>(menuDOs.size()), MenuVO.class);
        menuVOs.forEach(menuVO -> {
            if(CommonContant.DEFAULT_PARENTID.equals(menuVO.getParentId())){
                menuVO.setParentName(CommonContant.DEFAULT_PARENTNAME);
            }else {
                MenuDO menuDO = menuService.findOne(menuVO.getParentId());
                menuVO.setParentName(menuDO.getName());
            }
            //对比树是否被选择
            if(checkedTree(menuVO.getId(),roleMenus)){
                menuVO.setChecked(true);
            }else{
                menuVO.setChecked(false);
            }
        });
        Map<String,List<MenuVO>> map = menuVOs.stream().collect(Collectors.groupingBy(MenuVO::getParentId));
        menuVOs.forEach(menu->{
            List<MenuVO> tmp = map.get(menu.getId());
            menu.setChildren(tmp);
        });
        if(StringUtils.isBlank(name)){
            menuVOs = menuVOs.stream()
                    .filter(menu -> CommonContant.DEFAULT_PARENTID.equals(menu.getParentId()))
                    .collect(Collectors.toList());
        }
        return success(menuVOs);
    }
    /**
     * 验证树是否被选择
     * @param menuId
     * @param roleMenus
     * @return
     */
    public Boolean checkedTree(String menuId,List<RoleMenuDO> roleMenus){
        if(roleMenus!=null&&roleMenus.size()>0){
            for(RoleMenuDO roleMenuDO:roleMenus){
                if(menuId.equals(roleMenuDO.getMenuId())){
                    return true;
                }
            }
        }
        return false;
    }
}

+ 22 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/role/RoleEndpoint.java

@ -1,7 +1,11 @@
package com.yihu.jw.base.endpoint.role;
import com.alibaba.fastjson.JSONArray;
import com.yihu.jw.base.service.role.RoleService;
import com.yihu.jw.entity.base.role.RoleDO;
import com.yihu.jw.entity.base.role.RoleMenuDO;
import com.yihu.jw.entity.base.wx.WxWechatDO;
import com.yihu.jw.entity.base.wx.WxWechatSaasDO;
import com.yihu.jw.restmodel.base.role.RoleVO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.ListEnvelop;
@ -93,4 +97,22 @@ public class RoleEndpoint extends EnvelopRestEndpoint {
        return success(roleDOS, RoleVO.class);
    }
    @PostMapping(value = BaseRequestMapping.Role.saveRole)
    @ApiOperation(value = "保存角色与菜单")
    public Envelop saveRole(@ApiParam(name = "roleJson", value = "角色json")
                            @RequestParam(value = "roleJson", required = false)String roleJson,
                            @ApiParam(name = "roleMenuJosn", value = "角色菜单json")
                            @RequestParam(value = "roleMenuJosn", required = false)String roleMenuJosn)throws Exception {
        RoleDO roleDO = toEntity(roleJson, RoleDO.class);
        List<RoleMenuDO> list = (List<RoleMenuDO>) JSONArray.parseArray(roleMenuJosn, RoleMenuDO.class);
        return roleService.saveRole(roleDO,list);
    }
    @GetMapping(value = BaseRequestMapping.Role.findRoleNameExist)
    @ApiOperation(value = "判断角色是否存在")
    public ObjEnvelop<Boolean> findRoleNameExist(@ApiParam(name = "name", value = "角色名称")
                                     @RequestParam(value = "name", required = false)String name) {
        return success(BaseRequestMapping.Role.api_success,roleService.findRoleNameExist(name));
    }
}

+ 10 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/role/RoleMenuService.java

@ -3,12 +3,22 @@ package com.yihu.jw.base.service.role;
import com.yihu.jw.base.dao.role.RoleMenuDao;
import com.yihu.jw.entity.base.role.RoleMenuDO;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * 角色菜单
 * @author yeshijie on 2018/9/26.
 */
@Service
public class RoleMenuService extends BaseJpaService<RoleMenuDO, RoleMenuDao> {
    @Autowired
    private RoleMenuDao roleMenuDao;
    public List<RoleMenuDO> findRoleMenu(String roleId){
        return roleMenuDao.findByRoleId(roleId);
    }
}

+ 39 - 0
svr/svr-base/src/main/java/com/yihu/jw/base/service/role/RoleService.java

@ -1,14 +1,53 @@
package com.yihu.jw.base.service.role;
import com.yihu.jw.base.dao.role.RoleDao;
import com.yihu.jw.base.dao.role.RoleMenuDao;
import com.yihu.jw.entity.base.role.RoleDO;
import com.yihu.jw.entity.base.role.RoleMenuDO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.rm.base.BaseRequestMapping;
import com.yihu.mysql.query.BaseJpaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * Service - 角色
 * Created by progr1mmer on 2018/8/17.
 */
@Service
public class RoleService extends BaseJpaService<RoleDO, RoleDao> {
    @Autowired
    private RoleDao roleDao;
    @Autowired
    private RoleMenuDao roleMenuDao;
    public Envelop saveRole(RoleDO roleDO, List<RoleMenuDO> list){
        RoleDO role = roleDao.save(roleDO);
        List<RoleMenuDO> rs =  roleMenuDao.findByRoleId(role.getId());
        if(rs!=null&&rs.size()>0){
            roleMenuDao.delete(rs);
        }
        if(list!=null&&list.size()>0){
            for(RoleMenuDO r:list){
                r.setRoleId(role.getId());
            }
            roleMenuDao.save(list);
        }
        return Envelop.getSuccess(BaseRequestMapping.Role.api_success);
    }
    public Boolean findRoleNameExist(String name){
        List<RoleDO> list = roleDao.findByNameAndStatus(name,1);
        if(list!=null&&list.size()>0){
            return true;
        }
        return false;
    }
}

+ 1 - 1
svr/svr-base/src/main/java/com/yihu/jw/base/service/wx/WechatService.java

@ -205,7 +205,7 @@ public class WechatService {
                "from wx_wechat t";
        if(StringUtils.isNotBlank(saasId)){
            sql += " JOIN wx_wechat_saas s ON s.wechat_id = t.id " +
                   " WHERE s.saas_id ="+saasId;
                   " WHERE s.saas_id = '"+saasId+"'";
        }
        List<WxComboVO> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper(WxComboVO.class));
        return MixEnvelop.getSuccessList(BaseRequestMapping.WeChat.api_success,list);