更改企业相关权限状态

dev
masong 3 years ago
parent 677556fd56
commit 3105c9aca8
  1. 90
      cjy-project/src/main/java/com/cjy/enterprise/controller/EnterpriseInfoController.java
  2. 219
      cjy-project/src/main/java/com/cjy/enterprise/domain/EnterpriseInfo.java
  3. 8
      cjy-project/src/main/java/com/cjy/enterprise/service/IEnterpriseInfoService.java
  4. 46
      cjy-project/src/main/java/com/cjy/enterprise/service/impl/EnterpriseInfoServiceImpl.java
  5. 4
      ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
  6. 2
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java
  7. 3
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java
  8. 7
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
  9. 4
      ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml
  10. 5
      ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml
  11. 4
      ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@ -1,30 +1,25 @@
package com.cjy.enterprise.controller;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.cjy.enterprise.domain.EnterpriseInfo;
import com.cjy.enterprise.domain.EnterpriseInfoExtend;
import com.ruoyi.common.utils.SnowflakeIdUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.cjy.enterprise.service.IEnterpriseInfoService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.cjy.enterprise.domain.EnterpriseInfo;
import com.cjy.enterprise.service.IEnterpriseInfoService;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.SnowflakeIdUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.Date;
import java.util.List;
/**
* 企业信息Controller
@ -32,10 +27,10 @@ import com.ruoyi.common.core.page.TableDataInfo;
* @author ruoyi
* @date 2023-02-19
*/
@Api("企业基础信息控制器")
@RestController
@RequestMapping("/enterprise")
public class EnterpriseInfoController extends BaseController
{
public class EnterpriseInfoController extends BaseController {
@Value("${website.url}")
private String websiteUrl;
@Autowired
@ -44,35 +39,29 @@ public class EnterpriseInfoController extends BaseController
/**
* 查询企业信息列表
*/
@PreAuthorize("@ss.hasPermi('enterprise:list')")
@ApiOperation("查询企业信息列表")
@ApiImplicitParams({
@ApiImplicitParam(name = "organCode", value = "企业标识码", dataType = "Long", dataTypeClass = Long.class),
@ApiImplicitParam(name = "organName", value = "企业名称", dataType = "String", dataTypeClass = String.class),
})
@GetMapping("/list")
public TableDataInfo list(EnterpriseInfo enterpriseInfo)
{
public TableDataInfo list(EnterpriseInfo enterpriseInfo) {
startPage();
List<EnterpriseInfoExtend> list = enterpriseInfoService.selectEnterpriseInfoList(enterpriseInfo);
return getDataTable(list);
}
/**
* 导出企业信息列表
*/
@PreAuthorize("@ss.hasPermi('enterprise:export')")
@Log(title = "企业信息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, EnterpriseInfo enterpriseInfo)
{
List<EnterpriseInfoExtend> list = enterpriseInfoService.selectEnterpriseInfoList(enterpriseInfo);
ExcelUtil<EnterpriseInfoExtend> util = new ExcelUtil<EnterpriseInfoExtend>(EnterpriseInfoExtend.class);
util.exportExcel(response, list, "企业信息数据");
}
/**
* 获取企业信息详细信息
*/
@ApiOperation("查询企业信息详情")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", dataTypeClass = Long.class)
})
@PreAuthorize("@ss.hasPermi('enterprise:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
public AjaxResult getInfo(@PathVariable("id") Long id) {
return success(enterpriseInfoService.selectEnterpriseInfoById(id));
}
@ -82,13 +71,12 @@ public class EnterpriseInfoController extends BaseController
@PreAuthorize("@ss.hasPermi('enterprise:add')")
@Log(title = "企业信息", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody EnterpriseInfo enterpriseInfo)
{
public AjaxResult add(@RequestBody EnterpriseInfo enterpriseInfo) {
enterpriseInfo.setCreaterUserId(getUserId());
enterpriseInfo.setCreaterTime(new Date());
enterpriseInfo.setUpdateUserId(getUserId());
enterpriseInfo.setUpdateTime(new Date());
enterpriseInfo.setOrganCode(SnowflakeIdUtils.generateIdentification()+""); // 机构编号
enterpriseInfo.setOrganCode(SnowflakeIdUtils.generateIdentification()); // 机构编号
enterpriseInfo.setWebsiteUrl(websiteUrl + "&organCode=" + enterpriseInfo.getOrganCode());
enterpriseInfo.setStatus(0);
enterpriseInfo.setDataStatus(0);
@ -101,8 +89,7 @@ public class EnterpriseInfoController extends BaseController
@PreAuthorize("@ss.hasPermi('enterprise:edit')")
@Log(title = "企业信息", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody EnterpriseInfo enterpriseInfo)
{
public AjaxResult edit(@RequestBody EnterpriseInfo enterpriseInfo) {
return toAjax(enterpriseInfoService.updateEnterpriseInfo(enterpriseInfo));
}
@ -112,8 +99,19 @@ public class EnterpriseInfoController extends BaseController
@PreAuthorize("@ss.hasPermi('enterprise:remove')")
@Log(title = "企业信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
public AjaxResult remove(@PathVariable Long[] ids) {
return toAjax(enterpriseInfoService.deleteEnterpriseInfoByIds(ids));
}
@ApiOperation("更改企业信息状态(停用/启用)")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", dataTypeClass = Long.class),
@ApiImplicitParam(name = "status", value = "状态 0启用 1停用", dataType = "Integer", dataTypeClass = Integer.class)
})
@PreAuthorize("@ss.hasPermi('enterprise:edit')")
@Log(title = "企业信息更改状态", businessType = BusinessType.UPDATE)
public AjaxResult updateEnterpriseStatus(@RequestParam("id") Long id, @RequestParam("status") Integer status) {
return toAjax( enterpriseInfoService.updateEnterprieseStatus(id,status));
}
}

@ -1,11 +1,11 @@
package com.cjy.enterprise.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
/**
* 企业信息对象 ti_enterprise_info
@ -13,228 +13,247 @@ import com.ruoyi.common.core.domain.BaseEntity;
* @author ruoyi
* @date 2023-02-19
*/
public class EnterpriseInfo extends BaseEntity
{
public class EnterpriseInfo extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键 */
/**
* 主键
*/
private Long id;
/** 机构编码 */
/**
* 机构编码
*/
@Excel(name = "机构编码")
private String organCode;
private Long organCode;
/** 机构名称 */
/**
* 机构名称
*/
@Excel(name = "机构名称")
private String organName;
/** 经营位置-区域编码 */
/**
* 经营位置-区域编码
*/
private Integer location;
/** 详细地址 */
/**
* 详细地址
*/
private String address;
/** 地图坐标精度 */
/**
* 地图坐标精度
*/
private String accuracy;
/** 地图坐标维度 */
/**
* 地图坐标维度
*/
private String dimension;
/** 是否是组织机构 1:是 2:否 */
/**
* 是否是组织机构 1: 2:
*/
private Integer isOrgan;
/** 联系人 */
/**
* 联系人
*/
private String contactPerson;
/** 联系电话 */
/**
* 联系电话
*/
private String contactNumber;
/** 网站地址 */
/**
* 网站地址
*/
@Excel(name = "网站地址")
private String websiteUrl;
/** 登录页logo地址 */
/**
* 登录页logo地址
*/
private String loginLogo;
/** 登录页背景地址 */
/**
* 登录页背景地址
*/
private String loginBackground;
/** 创建人id */
/**
* 创建人id
*/
private Long createrUserId;
/** 创建时间 */
/**
* 创建时间
*/
private Date createrTime;
/** 修改人id */
/**
* 修改人id
*/
private Long updateUserId;
/** 状态 启用:0 停用/禁用: 1 */
/**
* 状态 启用0 停用/禁用 1
*/
private Integer status;
/** 数据状态 新增:0 修改:1删除:2 */
/**
* 数据状态 新增0 修改1删除2
*/
private Integer dataStatus;
/**登录页标题*/
/**
* 登录页标题
*/
private String loginTitle;
public void setId(Long id)
{
public void setId(Long id) {
this.id = id;
}
public Long getId()
{
public Long getId() {
return id;
}
public void setOrganCode(String organCode)
{
this.organCode = organCode;
}
public String getOrganCode()
{
public Long getOrganCode() {
return organCode;
}
public void setOrganName(String organName)
{
public void setOrganCode(Long organCode) {
this.organCode = organCode;
}
public void setOrganName(String organName) {
this.organName = organName;
}
public String getOrganName()
{
public String getOrganName() {
return organName;
}
public void setLocation(Integer location)
{
public void setLocation(Integer location) {
this.location = location;
}
public Integer getLocation()
{
public Integer getLocation() {
return location;
}
public void setAddress(String address)
{
public void setAddress(String address) {
this.address = address;
}
public String getAddress()
{
public String getAddress() {
return address;
}
public void setAccuracy(String accuracy)
{
public void setAccuracy(String accuracy) {
this.accuracy = accuracy;
}
public String getAccuracy()
{
public String getAccuracy() {
return accuracy;
}
public void setDimension(String dimension)
{
public void setDimension(String dimension) {
this.dimension = dimension;
}
public String getDimension()
{
public String getDimension() {
return dimension;
}
public void setIsOrgan(Integer isOrgan)
{
public void setIsOrgan(Integer isOrgan) {
this.isOrgan = isOrgan;
}
public Integer getIsOrgan()
{
public Integer getIsOrgan() {
return isOrgan;
}
public void setContactPerson(String contactPerson)
{
public void setContactPerson(String contactPerson) {
this.contactPerson = contactPerson;
}
public String getContactPerson()
{
public String getContactPerson() {
return contactPerson;
}
public void setContactNumber(String contactNumber)
{
public void setContactNumber(String contactNumber) {
this.contactNumber = contactNumber;
}
public String getContactNumber()
{
public String getContactNumber() {
return contactNumber;
}
public void setWebsiteUrl(String websiteUrl)
{
public void setWebsiteUrl(String websiteUrl) {
this.websiteUrl = websiteUrl;
}
public String getWebsiteUrl()
{
public String getWebsiteUrl() {
return websiteUrl;
}
public void setLoginLogo(String loginLogo)
{
public void setLoginLogo(String loginLogo) {
this.loginLogo = loginLogo;
}
public String getLoginLogo()
{
public String getLoginLogo() {
return loginLogo;
}
public void setLoginBackground(String loginBackground)
{
public void setLoginBackground(String loginBackground) {
this.loginBackground = loginBackground;
}
public String getLoginBackground()
{
public String getLoginBackground() {
return loginBackground;
}
public void setCreaterUserId(Long createrUserId)
{
public void setCreaterUserId(Long createrUserId) {
this.createrUserId = createrUserId;
}
public Long getCreaterUserId()
{
public Long getCreaterUserId() {
return createrUserId;
}
public void setCreaterTime(Date createrTime)
{
public void setCreaterTime(Date createrTime) {
this.createrTime = createrTime;
}
public Date getCreaterTime()
{
public Date getCreaterTime() {
return createrTime;
}
public void setUpdateUserId(Long updateUserId)
{
public void setUpdateUserId(Long updateUserId) {
this.updateUserId = updateUserId;
}
public Long getUpdateUserId()
{
public Long getUpdateUserId() {
return updateUserId;
}
public void setStatus(Integer status)
{
public void setStatus(Integer status) {
this.status = status;
}
public Integer getStatus()
{
public Integer getStatus() {
return status;
}
public void setDataStatus(Integer dataStatus)
{
public void setDataStatus(Integer dataStatus) {
this.dataStatus = dataStatus;
}
public Integer getDataStatus()
{
public Integer getDataStatus() {
return dataStatus;
}

@ -60,4 +60,12 @@ public interface IEnterpriseInfoService
* @return 结果
*/
public int deleteEnterpriseInfoById(Long id);
/**
* 更改企业相关权限状态
* @param id
* @param status
* @return
*/
public int updateEnterprieseStatus(Long id, Integer status);
}

@ -19,7 +19,6 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
@ -81,7 +80,7 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService {
//2. 创建人员
Long userId = insertOrganUser(enterpriseInfo, deptId);
//3. 创建空角色
isnertOrganRole(userId,Long.parseLong(enterpriseInfo.getOrganCode()));
isnertOrganRole(userId, enterpriseInfo.getOrganCode());
return enterpriseInfoMapper.insertEnterpriseInfo(enterpriseInfo);
}
@ -105,6 +104,9 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService {
*/
@Override
public int deleteEnterpriseInfoByIds(Long[] ids) {
//1. 删除角色
//2. 删除人员
//3. 删除
return enterpriseInfoMapper.deleteEnterpriseInfoByIds(ids);
}
@ -119,6 +121,39 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService {
return enterpriseInfoMapper.deleteEnterpriseInfoById(id);
}
/**
* 调整企业信息状态
*
* @param id - 主键
* @param status - 状态
* @return
*/
@Override
public int updateEnterprieseStatus(Long id, Integer status) {
EnterpriseInfo enterpriseInfo = enterpriseInfoMapper.selectEnterpriseInfoById(id);
//1. 停用企业及下级账号
List<SysUser> userList = sysUserMapper.selectUserListByOrganCode(enterpriseInfo.getOrganCode());
for (SysUser user : userList) {
user.setStatus(status + "");
sysUserMapper.updateUser(user);
}
//2.停用企业部门
List<SysDept> deptList = deptMapper.selectDeptListByOrganCode(enterpriseInfo.getOrganCode());
for (SysDept dept : deptList) {
dept.setStatus(status + "");
deptMapper.updateDept(dept);
}
//3.停用企业角色
List<SysRole> roleList = sysRoleMapper.selectRoleListByOrganCode(enterpriseInfo.getOrganCode());
for (SysRole role : roleList) {
role.setStatus(status + "");
sysRoleMapper.updateRole(role);
}
//4.停用企业信息
enterpriseInfo.setStatus(status);
return enterpriseInfoMapper.updateEnterpriseInfo(enterpriseInfo);
}
/**
* 新增部门返回部门id
*
@ -136,7 +171,7 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService {
dept.setStatus("0");
dept.setDelFlag("0");
dept.setCreateBy(enterprise.getCreaterUserId() + "");
dept.setOrganCode(Long.parseLong(enterprise.getOrganCode()));
dept.setOrganCode(enterprise.getOrganCode());
deptMapper.insertDeptResultId(dept);
System.out.println(dept.getDeptId());
return dept.getDeptId();
@ -151,13 +186,13 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService {
private Long insertOrganUser(EnterpriseInfo enterpriseInfo, Long deptId) {
SysUser user = new SysUser();
user.setDeptId(deptId);
user.setUserName(enterpriseInfo.getOrganCode());
user.setUserName(enterpriseInfo.getOrganCode() + "");
user.setNickName(enterpriseInfo.getOrganName() + "-管理员");
user.setPhonenumber(enterpriseInfo.getContactNumber());
user.setStatus("0");
user.setDelFlag("0");
user.setCreateBy(enterpriseInfo.getCreaterUserId() + "");
user.setOrganCode(Long.parseLong(enterpriseInfo.getOrganCode()));
user.setOrganCode(enterpriseInfo.getOrganCode());
user.setPassword(SecurityUtils.encryptPassword(password));
sysUserMapper.insertUser(user);
@ -167,6 +202,7 @@ public class EnterpriseInfoServiceImpl implements IEnterpriseInfoService {
/**
* 说明: 新增 角色信息及用户角色关联
*
* @param userId
* @param enterpriseId
*/

@ -113,9 +113,9 @@ public class SwaggerConfig
// 用ApiInfoBuilder进行定制
return new ApiInfoBuilder()
// 设置标题
.title("标题:若依管理系统_接口文档")
.title("标题:景区综合管控项目_接口文档")
// 描述
.description("描述:用于管理集团旗下公司的人员信息,具体包括XXX,XXX模块...")
.description("描述:用于管理景区综合管控项目接口,具体包括XXX,XXX模块...")
// 作者信息
.contact(new Contact(ruoyiConfig.getName(), null, null))
// 版本

@ -121,4 +121,6 @@ public interface SysDeptMapper
* @return 结果
*/
public int deleteDeptById(Long deptId);
public List<SysDept> selectDeptListByOrganCode(@Param("organCode") Long organCode);
}

@ -2,6 +2,7 @@ package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.common.core.domain.entity.SysRole;
import org.apache.ibatis.annotations.Param;
/**
* 角色表 数据层
@ -104,4 +105,6 @@ public interface SysRoleMapper
* @return 结果
*/
public int deleteRoleByIds(Long[] roleIds);
public List<SysRole> selectRoleListByOrganCode(@Param("organCode") Long organCode);
}

@ -125,4 +125,11 @@ public interface SysUserMapper
* @return 结果
*/
public SysUser checkEmailUnique(String email);
/**
* 查询企业下账号
* @param organCode -- 企业标识号
* @return
*/
public List<SysUser> selectUserListByOrganCode(@Param("organCode") Long organCode);
}

@ -90,6 +90,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectDeptVo"/>
where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0' limit 1
</select>
<select id="selectDeptListByOrganCode" resultType="com.ruoyi.common.core.domain.entity.SysDept">
<include refid="selectDeptVo"/>
where organ_code=#{organCode} and del_flag = '0'
</select>
<insert id="insertDept" parameterType="SysDept">
insert into sys_dept(

@ -93,6 +93,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectRoleVo"/>
where r.role_key=#{roleKey} and r.del_flag = '0' limit 1
</select>
<select id="selectRoleListByOrganCode" resultType="com.ruoyi.common.core.domain.entity.SysRole">
select 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.organ_code
from sys_role r where r.organ_code=#{organCode} and r.del_flag ="0"
</select>
<insert id="insertRole" parameterType="SysRole" useGeneratedKeys="true" keyProperty="roleId">
insert into sys_role(

@ -145,6 +145,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="checkEmailUnique" parameterType="String" resultMap="SysUserResult">
select user_id, email from sys_user where email = #{email} and del_flag = '0' limit 1
</select>
<select id="selectUserListByOrganCode" resultType="com.ruoyi.common.core.domain.entity.SysUser">
select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, u.organ_code
from sys_user u where u.organ_code =#{organCode} and u.del_flag ='0'
</select>
<insert id="insertUser" parameterType="SysUser" useGeneratedKeys="true" keyProperty="userId">
insert into sys_user(

Loading…
Cancel
Save