diff --git a/cjy-project/src/main/java/com/cjy/enterprise/service/impl/EnterpriseInfoServiceImpl.java b/cjy-project/src/main/java/com/cjy/enterprise/service/impl/EnterpriseInfoServiceImpl.java index ba61c630..afe6a9f3 100644 --- a/cjy-project/src/main/java/com/cjy/enterprise/service/impl/EnterpriseInfoServiceImpl.java +++ b/cjy-project/src/main/java/com/cjy/enterprise/service/impl/EnterpriseInfoServiceImpl.java @@ -1,29 +1,34 @@ package com.cjy.enterprise.service.impl; -import java.util.List; - +import com.cjy.enterprise.domain.EnterpriseInfo; +import com.cjy.enterprise.mapper.EnterpriseInfoMapper; +import com.cjy.enterprise.service.IEnterpriseInfoService; import com.ruoyi.common.core.domain.entity.SysDept; +import com.ruoyi.common.core.domain.entity.SysRole; import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.domain.SysUserRole; import com.ruoyi.system.mapper.SysDeptMapper; +import com.ruoyi.system.mapper.SysRoleMapper; import com.ruoyi.system.mapper.SysUserMapper; +import com.ruoyi.system.mapper.SysUserRoleMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import com.cjy.enterprise.mapper.EnterpriseInfoMapper; -import com.cjy.enterprise.domain.EnterpriseInfo; -import com.cjy.enterprise.service.IEnterpriseInfoService; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; /** * 企业信息Service业务层处理 - * + * * @author ruoyi * @date 2023-02-19 */ @Service -public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService -{ +public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService { @Autowired private EnterpriseInfoMapper enterpriseInfoMapper; @@ -33,92 +38,94 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService @Autowired private SysUserMapper sysUserMapper; + @Autowired + private SysRoleMapper sysRoleMapper; + @Autowired + private SysUserRoleMapper sysUserRoleMapper; @Value("${default.password}") private String password; + /** * 查询企业信息 - * + * * @param id 企业信息主键 * @return 企业信息 */ @Override - public EnterpriseInfo selectEnterpriseInfoById(Long id) - { + public EnterpriseInfo selectEnterpriseInfoById(Long id) { return enterpriseInfoMapper.selectEnterpriseInfoById(id); } /** * 查询企业信息列表 - * + * * @param enterpriseInfo 企业信息 * @return 企业信息 */ @Override - public List selectEnterpriseInfoList(EnterpriseInfo enterpriseInfo) - { + public List selectEnterpriseInfoList(EnterpriseInfo enterpriseInfo) { return enterpriseInfoMapper.selectEnterpriseInfoList(enterpriseInfo); } /** * 新增企业信息 - * + * * @param enterpriseInfo 企业信息 * @return 结果 */ @Override - public int insertEnterpriseInfo(EnterpriseInfo enterpriseInfo) - { + public int insertEnterpriseInfo(EnterpriseInfo enterpriseInfo) { //1. 创建单位 - Long deptId = insertOrganDept(enterpriseInfo); + Long deptId = insertOrganDept(enterpriseInfo); //2. 创建人员 - insertOrganUser(enterpriseInfo,deptId); + Long userId = insertOrganUser(enterpriseInfo, deptId); + //3. 创建空角色 + isnertOrganRole(userId,Long.parseLong(enterpriseInfo.getOrganCode())); return enterpriseInfoMapper.insertEnterpriseInfo(enterpriseInfo); } /** * 修改企业信息 - * + * * @param enterpriseInfo 企业信息 * @return 结果 */ @Override - public int updateEnterpriseInfo(EnterpriseInfo enterpriseInfo) - { + public int updateEnterpriseInfo(EnterpriseInfo enterpriseInfo) { enterpriseInfo.setUpdateTime(DateUtils.getNowDate()); return enterpriseInfoMapper.updateEnterpriseInfo(enterpriseInfo); } /** * 批量删除企业信息 - * + * * @param ids 需要删除的企业信息主键 * @return 结果 */ @Override - public int deleteEnterpriseInfoByIds(Long[] ids) - { + public int deleteEnterpriseInfoByIds(Long[] ids) { return enterpriseInfoMapper.deleteEnterpriseInfoByIds(ids); } /** * 删除企业信息信息 - * + * * @param id 企业信息主键 * @return 结果 */ @Override - public int deleteEnterpriseInfoById(Long id) - { + public int deleteEnterpriseInfoById(Long id) { return enterpriseInfoMapper.deleteEnterpriseInfoById(id); } /** - * 新增部门返回部门id + * 新增部门返回部门id + * * @param enterprise * @return */ - private Long insertOrganDept(EnterpriseInfo enterprise){ - SysDept dept = new SysDept(); + private Long insertOrganDept(EnterpriseInfo enterprise) { + SysDept dept = new SysDept(); dept.setParentId(0l); dept.setAncestors("0"); dept.setDeptName(enterprise.getOrganName()); @@ -127,24 +134,60 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService dept.setPhone(enterprise.getContactNumber()); dept.setStatus("0"); dept.setDelFlag("0"); - dept.setCreateBy(enterprise.getCreaterUserId()+""); + dept.setCreateBy(enterprise.getCreaterUserId() + ""); dept.setOrganCode(Long.parseLong(enterprise.getOrganCode())); deptMapper.insertDeptResultId(dept); System.out.println(dept.getDeptId()); return dept.getDeptId(); } - private void insertOrganUser(EnterpriseInfo enterpriseInfo,Long deptId){ + /** + * 新增人员 + * + * @param enterpriseInfo + * @param deptId + */ + private Long insertOrganUser(EnterpriseInfo enterpriseInfo, Long deptId) { SysUser user = new SysUser(); user.setDeptId(deptId); user.setUserName(enterpriseInfo.getOrganCode()); - user.setNickName(enterpriseInfo.getOrganName()+"-管理员"); + user.setNickName(enterpriseInfo.getOrganName() + "-管理员"); user.setPhonenumber(enterpriseInfo.getContactNumber()); user.setStatus("0"); user.setDelFlag("0"); - user.setCreateBy(enterpriseInfo.getCreaterUserId()+""); + user.setCreateBy(enterpriseInfo.getCreaterUserId() + ""); user.setOrganCode(Long.parseLong(enterpriseInfo.getOrganCode())); user.setPassword(SecurityUtils.encryptPassword(password)); + sysUserMapper.insertUser(user); + System.out.println(user.getUserId()); + return user.getUserId(); + } + + /** + * 说明: 新增 角色信息及用户角色关联 + * @param userId + * @param enterpriseId + */ + public void isnertOrganRole(Long userId,Long enterpriseId){ + SysRole role = new SysRole(); + role.setRoleName(enterpriseId+""); + role.setRoleKey(enterpriseId+""); + role.setRoleSort(1); + role.setDataScope("4"); + role.setMenuCheckStrictly(true); + role.setDeptCheckStrictly(true); + role.setStatus("0"); + role.setDelFlag("0"); + role.setOrganCode(enterpriseId); + role.setCreateBy(userId+""); + role.setRemark(enterpriseId+"系统管理员角色"); + sysRoleMapper.insertRole(role); + SysUserRole userRole = new SysUserRole(); + userRole.setRoleId(role.getRoleId()); + userRole.setUserId(userId); + List userRoleList = new ArrayList<>(); + userRoleList.add(userRole); + sysUserRoleMapper.batchUserRole(userRoleList); } } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysRole.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysRole.java index 488d49c0..65301297 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysRole.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysRole.java @@ -64,6 +64,7 @@ public class SysRole extends BaseEntity /** 角色菜单权限 */ private Set permissions; + private Long organCode; public SysRole() { @@ -219,6 +220,14 @@ public class SysRole extends BaseEntity this.permissions = permissions; } + public Long getOrganCode() { + return organCode; + } + + public void setOrganCode(Long organCode) { + this.organCode = organCode; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) diff --git a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml index 52306c28..872a1668 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -19,11 +19,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.menu_check_strictly, r.dept_check_strictly, - r.status, r.del_flag, r.create_time, r.remark + r.status, r.del_flag, r.create_time, r.remark,r.organ_code from sys_role r left join sys_user_role ur on ur.role_id = r.role_id left join sys_user u on u.user_id = ur.user_id @@ -104,6 +105,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" dept_check_strictly, status, remark, + organ_code, create_by, create_time )values( @@ -116,6 +118,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{deptCheckStrictly}, #{status}, #{remark}, + #{organCode}, #{createBy}, sysdate() ) @@ -132,6 +135,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" dept_check_strictly = #{deptCheckStrictly}, status = #{status}, remark = #{remark}, + organ_code = #{organCode}, update_by = #{updateBy}, update_time = sysdate() diff --git a/ruoyi-ui/src/views/enterprise/index.vue b/ruoyi-ui/src/views/enterprise/index.vue index 5b4dad83..4dffb8c9 100644 --- a/ruoyi-ui/src/views/enterprise/index.vue +++ b/ruoyi-ui/src/views/enterprise/index.vue @@ -83,6 +83,26 @@ @click="handleUpdate(scope.row)" v-hasPermi="['enterprise:enterprise:edit']" >修改 + 权限分配 + 禁用 + 复制密码 + 重置密码