sqg пре 3 година
родитељ
комит
615f0c122f
16 измењених фајлова са 810 додато и 115 уклоњено
  1. 40 0
      sc-service/src/main/java/com/huyi/service/base/entity/SysProductMenu.java
  2. 40 0
      sc-service/src/main/java/com/huyi/service/base/entity/SysRoleMenu.java
  3. 40 0
      sc-service/src/main/java/com/huyi/service/base/entity/SysUserRole.java
  4. 16 0
      sc-service/src/main/java/com/huyi/service/base/mapper/SysProductMenuMapper.java
  5. 16 0
      sc-service/src/main/java/com/huyi/service/base/mapper/SysRoleMenuMapper.java
  6. 16 0
      sc-service/src/main/java/com/huyi/service/base/mapper/SysUserRoleMapper.java
  7. 60 0
      sc-service/src/main/java/com/huyi/service/base/service/ISysProductMenuService.java
  8. 60 0
      sc-service/src/main/java/com/huyi/service/base/service/ISysRoleMenuService.java
  9. 60 0
      sc-service/src/main/java/com/huyi/service/base/service/ISysUserRoleService.java
  10. 64 0
      sc-service/src/main/java/com/huyi/service/base/service/impl/SysProductMenuServiceImpl.java
  11. 64 0
      sc-service/src/main/java/com/huyi/service/base/service/impl/SysRoleMenuServiceImpl.java
  12. 64 0
      sc-service/src/main/java/com/huyi/service/base/service/impl/SysUserRoleServiceImpl.java
  13. 237 115
      sc-service/src/main/java/com/huyi/service/conmany/controller/OwnCompanyManageController.java
  14. 11 0
      sc-service/src/main/resources/mapper/base/SysProductMenuMapper.xml
  15. 11 0
      sc-service/src/main/resources/mapper/base/SysRoleMenuMapper.xml
  16. 11 0
      sc-service/src/main/resources/mapper/base/SysUserRoleMapper.xml

+ 40 - 0
sc-service/src/main/java/com/huyi/service/base/entity/SysProductMenu.java

@@ -0,0 +1,40 @@
+package com.huyi.service.base.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 产品和菜单关联表
+ * </p>
+ *
+ * @author songqg
+ * @since 2021-09-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("sys_product_menu")
+public class SysProductMenu implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 产品ID
+     */
+    @TableId("spm_product_id")
+    private String spmProductId;
+
+    /**
+     * 菜单ID
+     */
+    @TableField("spm_menu_id")
+    private Long spmMenuId;
+
+
+}

+ 40 - 0
sc-service/src/main/java/com/huyi/service/base/entity/SysRoleMenu.java

@@ -0,0 +1,40 @@
+package com.huyi.service.base.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 角色和菜单关联表
+ * </p>
+ *
+ * @author songqg
+ * @since 2021-09-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("sys_role_menu")
+public class SysRoleMenu implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 角色ID
+     */
+    @TableId("role_id")
+    private Long roleId;
+
+    /**
+     * 菜单ID
+     */
+    @TableField("menu_id")
+    private Long menuId;
+
+
+}

+ 40 - 0
sc-service/src/main/java/com/huyi/service/base/entity/SysUserRole.java

@@ -0,0 +1,40 @@
+package com.huyi.service.base.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 用户和角色关联表
+ * </p>
+ *
+ * @author songqg
+ * @since 2021-09-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("sys_user_role")
+public class SysUserRole implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 用户ID
+     */
+    @TableId("user_id")
+    private Long userId;
+
+    /**
+     * 角色ID
+     */
+    @TableField("role_id")
+    private Long roleId;
+
+
+}

+ 16 - 0
sc-service/src/main/java/com/huyi/service/base/mapper/SysProductMenuMapper.java

@@ -0,0 +1,16 @@
+package com.huyi.service.base.mapper;
+
+import com.huyi.service.base.entity.SysProductMenu;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 产品和菜单关联表 Mapper 接口
+ * </p>
+ *
+ * @author songqg
+ * @since 2021-09-10
+ */
+public interface SysProductMenuMapper extends BaseMapper<SysProductMenu> {
+
+}

+ 16 - 0
sc-service/src/main/java/com/huyi/service/base/mapper/SysRoleMenuMapper.java

@@ -0,0 +1,16 @@
+package com.huyi.service.base.mapper;
+
+import com.huyi.service.base.entity.SysRoleMenu;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 角色和菜单关联表 Mapper 接口
+ * </p>
+ *
+ * @author songqg
+ * @since 2021-09-10
+ */
+public interface SysRoleMenuMapper extends BaseMapper<SysRoleMenu> {
+
+}

+ 16 - 0
sc-service/src/main/java/com/huyi/service/base/mapper/SysUserRoleMapper.java

@@ -0,0 +1,16 @@
+package com.huyi.service.base.mapper;
+
+import com.huyi.service.base.entity.SysUserRole;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 用户和角色关联表 Mapper 接口
+ * </p>
+ *
+ * @author songqg
+ * @since 2021-09-10
+ */
+public interface SysUserRoleMapper extends BaseMapper<SysUserRole> {
+
+}

+ 60 - 0
sc-service/src/main/java/com/huyi/service/base/service/ISysProductMenuService.java

@@ -0,0 +1,60 @@
+package com.huyi.service.base.service;
+
+import com.huyi.service.base.entity.SysProductMenu;
+
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+
+
+import java.util.List;
+
+/**
+ * ClassName: ISysProductMenuService<br>
+ * Description: SysProductMenuService接口 <br>
+ * Company: keao
+ *
+ * @author songqg
+ * @version v1.0.0    2021-09-10  songqg    由Generator自动创建
+ */
+public interface ISysProductMenuService extends IService<SysProductMenu> {
+    /**
+     * 查询(分页)
+     *
+     * @param request QueryRequest
+     * @param wrapper LambdaQueryWrapper<SysProductMenu>
+     * @return IPage<SysProductMenu>
+     */
+    IPage<SysProductMenu> findSysProductMenus(QueryRequest request, LambdaQueryWrapper<SysProductMenu> wrapper);
+
+    /**
+     * 查询(所有)
+     *
+     * @param wrapper LambdaQueryWrapper<SysProductMenu>
+     * @return List<SysProductMenu>
+     */
+    List<SysProductMenu> findSysProductMenus(LambdaQueryWrapper<SysProductMenu> wrapper);
+
+    /**
+     * 新增
+     *
+     * @param sysProductMenu sysProductMenu
+     */
+    void createSysProductMenu(SysProductMenu sysProductMenu);
+
+    /**
+     * 修改
+     *
+     * @param sysProductMenu sysProductMenu
+     */
+    void updateSysProductMenu(SysProductMenu sysProductMenu);
+
+    /**
+     * 删除
+     *
+     * @param wrapper LambdaQueryWrapper<SysProductMenu>
+     */
+    void deleteSysProductMenu(LambdaQueryWrapper<SysProductMenu> wrapper);
+}

+ 60 - 0
sc-service/src/main/java/com/huyi/service/base/service/ISysRoleMenuService.java

@@ -0,0 +1,60 @@
+package com.huyi.service.base.service;
+
+import com.huyi.service.base.entity.SysRoleMenu;
+
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+
+
+import java.util.List;
+
+/**
+ * ClassName: ISysRoleMenuService<br>
+ * Description: SysRoleMenuService接口 <br>
+ * Company: keao
+ *
+ * @author songqg
+ * @version v1.0.0    2021-09-10  songqg    由Generator自动创建
+ */
+public interface ISysRoleMenuService extends IService<SysRoleMenu> {
+    /**
+     * 查询(分页)
+     *
+     * @param request QueryRequest
+     * @param wrapper LambdaQueryWrapper<SysRoleMenu>
+     * @return IPage<SysRoleMenu>
+     */
+    IPage<SysRoleMenu> findSysRoleMenus(QueryRequest request, LambdaQueryWrapper<SysRoleMenu> wrapper);
+
+    /**
+     * 查询(所有)
+     *
+     * @param wrapper LambdaQueryWrapper<SysRoleMenu>
+     * @return List<SysRoleMenu>
+     */
+    List<SysRoleMenu> findSysRoleMenus(LambdaQueryWrapper<SysRoleMenu> wrapper);
+
+    /**
+     * 新增
+     *
+     * @param sysRoleMenu sysRoleMenu
+     */
+    void createSysRoleMenu(SysRoleMenu sysRoleMenu);
+
+    /**
+     * 修改
+     *
+     * @param sysRoleMenu sysRoleMenu
+     */
+    void updateSysRoleMenu(SysRoleMenu sysRoleMenu);
+
+    /**
+     * 删除
+     *
+     * @param wrapper LambdaQueryWrapper<SysRoleMenu>
+     */
+    void deleteSysRoleMenu(LambdaQueryWrapper<SysRoleMenu> wrapper);
+}

+ 60 - 0
sc-service/src/main/java/com/huyi/service/base/service/ISysUserRoleService.java

@@ -0,0 +1,60 @@
+package com.huyi.service.base.service;
+
+import com.huyi.service.base.entity.SysUserRole;
+
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+
+
+import java.util.List;
+
+/**
+ * ClassName: ISysUserRoleService<br>
+ * Description: SysUserRoleService接口 <br>
+ * Company: keao
+ *
+ * @author songqg
+ * @version v1.0.0    2021-09-10  songqg    由Generator自动创建
+ */
+public interface ISysUserRoleService extends IService<SysUserRole> {
+    /**
+     * 查询(分页)
+     *
+     * @param request QueryRequest
+     * @param wrapper LambdaQueryWrapper<SysUserRole>
+     * @return IPage<SysUserRole>
+     */
+    IPage<SysUserRole> findSysUserRoles(QueryRequest request, LambdaQueryWrapper<SysUserRole> wrapper);
+
+    /**
+     * 查询(所有)
+     *
+     * @param wrapper LambdaQueryWrapper<SysUserRole>
+     * @return List<SysUserRole>
+     */
+    List<SysUserRole> findSysUserRoles(LambdaQueryWrapper<SysUserRole> wrapper);
+
+    /**
+     * 新增
+     *
+     * @param sysUserRole sysUserRole
+     */
+    void createSysUserRole(SysUserRole sysUserRole);
+
+    /**
+     * 修改
+     *
+     * @param sysUserRole sysUserRole
+     */
+    void updateSysUserRole(SysUserRole sysUserRole);
+
+    /**
+     * 删除
+     *
+     * @param wrapper LambdaQueryWrapper<SysUserRole>
+     */
+    void deleteSysUserRole(LambdaQueryWrapper<SysUserRole> wrapper);
+}

+ 64 - 0
sc-service/src/main/java/com/huyi/service/base/service/impl/SysProductMenuServiceImpl.java

@@ -0,0 +1,64 @@
+package com.huyi.service.base.service.impl;
+
+import com.huyi.service.base.entity.SysProductMenu;
+import com.huyi.service.base.mapper.SysProductMenuMapper;
+import com.huyi.service.base.service.ISysProductMenuService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+
+
+import java.util.List;
+
+/**
+ * ClassName: SysProductMenuServiceImpl<br>
+ * Description: ISysProductMenuService实现 <br>
+ * Company: keao
+ *
+ * @author songqg
+ * @version v1.0.0    2021-09-10  songqg    由Generator自动创建
+ */
+@Service
+@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
+public class SysProductMenuServiceImpl extends ServiceImpl<SysProductMenuMapper, SysProductMenu> implements ISysProductMenuService {
+
+    @Autowired
+    private SysProductMenuMapper sysProductMenuMapper;
+
+    @Override
+    public IPage<SysProductMenu> findSysProductMenus(QueryRequest request, LambdaQueryWrapper<SysProductMenu> wrapper) {
+        Page<SysProductMenu> page = new Page<>(request.getPageNum(), request.getPageSize());
+        return this.page(page, wrapper);
+    }
+
+    @Override
+    public List<SysProductMenu> findSysProductMenus(LambdaQueryWrapper<SysProductMenu> wrapper) {
+		return this.list(wrapper);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void createSysProductMenu(SysProductMenu sysProductMenu) {
+        this.save(sysProductMenu);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updateSysProductMenu(SysProductMenu sysProductMenu) {
+        this.saveOrUpdate(sysProductMenu);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void deleteSysProductMenu(LambdaQueryWrapper<SysProductMenu> wrapper) {
+	    this.remove(wrapper);
+	}
+}

+ 64 - 0
sc-service/src/main/java/com/huyi/service/base/service/impl/SysRoleMenuServiceImpl.java

@@ -0,0 +1,64 @@
+package com.huyi.service.base.service.impl;
+
+import com.huyi.service.base.entity.SysRoleMenu;
+import com.huyi.service.base.mapper.SysRoleMenuMapper;
+import com.huyi.service.base.service.ISysRoleMenuService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+
+
+import java.util.List;
+
+/**
+ * ClassName: SysRoleMenuServiceImpl<br>
+ * Description: ISysRoleMenuService实现 <br>
+ * Company: keao
+ *
+ * @author songqg
+ * @version v1.0.0    2021-09-10  songqg    由Generator自动创建
+ */
+@Service
+@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
+public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRoleMenu> implements ISysRoleMenuService {
+
+    @Autowired
+    private SysRoleMenuMapper sysRoleMenuMapper;
+
+    @Override
+    public IPage<SysRoleMenu> findSysRoleMenus(QueryRequest request, LambdaQueryWrapper<SysRoleMenu> wrapper) {
+        Page<SysRoleMenu> page = new Page<>(request.getPageNum(), request.getPageSize());
+        return this.page(page, wrapper);
+    }
+
+    @Override
+    public List<SysRoleMenu> findSysRoleMenus(LambdaQueryWrapper<SysRoleMenu> wrapper) {
+		return this.list(wrapper);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void createSysRoleMenu(SysRoleMenu sysRoleMenu) {
+        this.save(sysRoleMenu);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updateSysRoleMenu(SysRoleMenu sysRoleMenu) {
+        this.saveOrUpdate(sysRoleMenu);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void deleteSysRoleMenu(LambdaQueryWrapper<SysRoleMenu> wrapper) {
+	    this.remove(wrapper);
+	}
+}

+ 64 - 0
sc-service/src/main/java/com/huyi/service/base/service/impl/SysUserRoleServiceImpl.java

@@ -0,0 +1,64 @@
+package com.huyi.service.base.service.impl;
+
+import com.huyi.service.base.entity.SysUserRole;
+import com.huyi.service.base.mapper.SysUserRoleMapper;
+import com.huyi.service.base.service.ISysUserRoleService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.beans.factory.annotation.Autowired;
+import com.keao.tianhu.starter.mybatis.plus.entity.QueryRequest;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+
+
+import java.util.List;
+
+/**
+ * ClassName: SysUserRoleServiceImpl<br>
+ * Description: ISysUserRoleService实现 <br>
+ * Company: keao
+ *
+ * @author songqg
+ * @version v1.0.0    2021-09-10  songqg    由Generator自动创建
+ */
+@Service
+@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
+public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUserRole> implements ISysUserRoleService {
+
+    @Autowired
+    private SysUserRoleMapper sysUserRoleMapper;
+
+    @Override
+    public IPage<SysUserRole> findSysUserRoles(QueryRequest request, LambdaQueryWrapper<SysUserRole> wrapper) {
+        Page<SysUserRole> page = new Page<>(request.getPageNum(), request.getPageSize());
+        return this.page(page, wrapper);
+    }
+
+    @Override
+    public List<SysUserRole> findSysUserRoles(LambdaQueryWrapper<SysUserRole> wrapper) {
+		return this.list(wrapper);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void createSysUserRole(SysUserRole sysUserRole) {
+        this.save(sysUserRole);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void updateSysUserRole(SysUserRole sysUserRole) {
+        this.saveOrUpdate(sysUserRole);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void deleteSysUserRole(LambdaQueryWrapper<SysUserRole> wrapper) {
+	    this.remove(wrapper);
+	}
+}

+ 237 - 115
sc-service/src/main/java/com/huyi/service/conmany/controller/OwnCompanyManageController.java

@@ -17,6 +17,8 @@ import com.tianhu.common.core.utils.SecurityUtils;
 import com.tianhu.common.core.web.controller.BaseController;
 import com.tianhu.common.log.annotation.Log;
 import com.tianhu.common.log.enums.BusinessType;
+import com.tianhu.common.redis.common.RedisUtils;
+import com.tianhu.common.redis.domain.SysDictData;
 import com.tianhu.common.security.annotation.PreAuthorize;
 import com.tianhu.common.security.service.TokenService;
 import com.tianhu.system.api.model.LoginUser;
@@ -75,6 +77,15 @@ public class OwnCompanyManageController extends BaseController
     @Autowired
     private IOwnCompanyRelService iOwnCompanyRelService;
 
+    @Autowired
+    private ISysUserRoleService iSysUserRoleService;
+
+    @Autowired
+    private ISysRoleMenuService iSysRoleMenuService;
+
+    @Autowired
+    private ISysProductMenuService iSysProductMenuService;
+
     /**
      * 企业四要素认证状态;未认证
      */
@@ -198,18 +209,26 @@ public class OwnCompanyManageController extends BaseController
         if(CommonUtil.isEmpty(scyName)){
             throw new Exception("企业名称不能为空");
         }
+        //企业名称正则校验
+        String checkScyName = "^([\\u4e00-\\u9fa5]+|[a-zA-Z0-9]+)$";
+        Pattern regeScyName = Pattern.compile(checkScyName);
+        Matcher matcherScyName = regeScyName.matcher(scyName);
+        boolean isMatScyName = matcherScyName.matches();
+        if(!isMatScyName){
+            throw new Exception("企业名称格式错误,不能含有特殊字符");
+        }
         //企业统一信用代码
         String scySocialCode = CommonUtil.objToString(map.get("scySocialCode"));
         if(CommonUtil.isEmpty(scySocialCode)){
-            throw new Exception("统一信用代码不能为空");
+            throw new Exception("企业统一代码不能为空");
         }
         //统一信用代码正则校验
-        String checkSocialCode = "^([0-9A-HJ-NPQRTUWXY]{2}\\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\\d{14})$";
+        String checkSocialCode = "^([0-9A-HJ-NPQRTUWXY]{2}\\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\\d{14})||([1-9]\\d{15})$";
         Pattern regeSocialCode = Pattern.compile(checkSocialCode);
         Matcher matcherSocialCode = regeSocialCode.matcher(scySocialCode);
         boolean isMatSocialCode = matcherSocialCode.matches();
         if(!isMatSocialCode){
-            throw new Exception("统一信用代码格式错误");
+            throw new Exception("企业统一代码格式错误");
         }
         //联系人
         String nickName = CommonUtil.objToString(map.get("nickName"));
@@ -219,6 +238,14 @@ public class OwnCompanyManageController extends BaseController
         if(nickName.length() > 30){
             throw new Exception("联系人长度不能超过30字;请检查是否正确");
         }
+        //联系人正则校验
+        String checkNickName = "^([\\u4e00-\\u9fa5]+|[a-zA-Z0-9]+)$";
+        Pattern regeNickName = Pattern.compile(checkNickName);
+        Matcher matcherNickName = regeNickName.matcher(nickName);
+        boolean isMatNickName = matcherNickName.matches();
+        if(!isMatNickName){
+            throw new Exception("联系人格式错误,不能含有特殊字符");
+        }
         //联系电话
         String userName = CommonUtil.objToString(map.get("userName"));
         if(CommonUtil.isEmpty(userName)){
@@ -250,7 +277,7 @@ public class OwnCompanyManageController extends BaseController
         queryWrapper.ne(SysCompany::getScyStatus,"99");
         List<SysCompany> list = iSysCompanyService.findSysCompanys(queryWrapper);
         if(list.size() > 0){
-            throw new Exception("当前社会统一信用代码已存在,请重新输入");
+            throw new Exception("当前企业统一代码已存在,请重新输入");
         }
         //执行新增
         SysCompany sysCompany = new SysCompany();
@@ -364,6 +391,137 @@ public class OwnCompanyManageController extends BaseController
         return R.ok();
     }
 
+
+    /**
+     * 修改企业信息
+     */
+    @PreAuthorize(hasPermi = "service:company:update")
+    @Log(title = "平台修改未认证企业信息", businessType = BusinessType.UPDATE)
+    @Transactional(rollbackFor = Exception.class)
+    @PutMapping("/updateCompany")
+    public R updateCompany(@RequestBody Map<String,Object> map) throws Exception {
+        //获取当前操作员
+        LoginUser user = tokenService.getLoginUser();
+        String userId = String.valueOf(user.getSysUser().getUserId());
+
+        //主键
+        String scyId = CommonUtil.objToString(map.get("scyId"));
+        if(CommonUtil.isEmpty(scyId)){
+            throw new Exception("修改的企业编号不能为空");
+        }
+        //企业名称
+        String scyName = CommonUtil.objToString(map.get("scyName"));
+        if(CommonUtil.isEmpty(scyName)){
+            throw new Exception("企业名称不能为空");
+        }
+        //企业名称正则校验
+        String checkScyName = "^([\\u4e00-\\u9fa5]+|[a-zA-Z0-9]+)$";
+        Pattern regeScyName = Pattern.compile(checkScyName);
+        Matcher matcherScyName = regeScyName.matcher(scyName);
+        boolean isMatScyName = matcherScyName.matches();
+        if(!isMatScyName){
+            throw new Exception("企业名称格式错误,不能含有特殊字符");
+        }
+        //企业统一信用代码
+        String scySocialCode = CommonUtil.objToString(map.get("scySocialCode"));
+        if(CommonUtil.isEmpty(scySocialCode)){
+            throw new Exception("企业统一代码不能为空");
+        }
+        //统一信用代码正则校验
+        String checkSocialCode = "^([0-9A-HJ-NPQRTUWXY]{2}\\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\\d{14})||([1-9]\\d{15})$";
+        Pattern regeSocialCode = Pattern.compile(checkSocialCode);
+        Matcher matcherSocialCode = regeSocialCode.matcher(scySocialCode);
+        boolean isMatSocialCode = matcherSocialCode.matches();
+        if(!isMatSocialCode){
+            throw new Exception("企业统一代码格式错误");
+        }
+        //联系人
+        String nickName = CommonUtil.objToString(map.get("nickName"));
+        if(CommonUtil.isEmpty(nickName)){
+            throw new Exception("联系人不能为空");
+        }
+        if(nickName.length() > 30){
+            throw new Exception("联系人长度不能超过30字;请检查是否正确");
+        }
+        //联系人正则校验
+        String checkNickName = "^([\\u4e00-\\u9fa5]+|[a-zA-Z0-9]+)$";
+        Pattern regeNickName = Pattern.compile(checkNickName);
+        Matcher matcherNickName = regeNickName.matcher(nickName);
+        boolean isMatNickName = matcherNickName.matches();
+        if(!isMatNickName){
+            throw new Exception("联系人格式错误,不能含有特殊字符");
+        }
+        //联系电话
+        String userName = CommonUtil.objToString(map.get("userName"));
+        if(CommonUtil.isEmpty(nickName)){
+            throw new Exception("联系人手机号不能为空");
+        }
+        if(CommonUtil.isNotEmpty(userName)) {
+            if(userName.length() > 11){
+                throw new Exception("手机号不能超过11位");
+            }
+            String checkPhone = "^1[3|4|5|6|7|8|9][0-9]\\d{8}$";
+            Pattern regePhone = Pattern.compile(checkPhone);
+            Matcher matcherPhone = regePhone.matcher(userName);
+            boolean isMatPhone = matcherPhone.matches();
+            if (!isMatPhone) {
+                throw new Exception("手机格式不正确");
+            }
+        }
+        //如果企业名称重复,不让其添加
+        LambdaQueryWrapper<SysCompany> sysCompanyLambdaQueryWrapper = new LambdaQueryWrapper<>();
+        sysCompanyLambdaQueryWrapper.ne(SysCompany::getScyStatus,"99");
+        sysCompanyLambdaQueryWrapper.eq(SysCompany::getScyName,scyName);
+        sysCompanyLambdaQueryWrapper.ne(SysCompany::getScyId,scyId);
+        List<SysCompany> sysCompanyList = iSysCompanyService.findSysCompanys(sysCompanyLambdaQueryWrapper);
+        if(sysCompanyList.size() > 0){
+            throw new Exception("当前企业名称已存在,请重新输入");
+        }
+        //如果社会统一信用代码重复,不让其添加
+        LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(SysCompany::getScySocialCode,scySocialCode);
+        queryWrapper.ne(SysCompany::getScyStatus,"99");
+        queryWrapper.ne(SysCompany::getScyId,scyId);
+        List<SysCompany> list = iSysCompanyService.findSysCompanys(queryWrapper);
+        if(list.size() > 0){
+            throw new Exception("当前企业统一代码已存在,请重新输入");
+        }
+        //查询当前企业id的状态
+        SysCompany sysCompanyQuery = iSysCompanyService.getById(scyId);
+        //执行修改
+        SysCompany sysCompany = new SysCompany();
+        //主键
+        sysCompany.setScyId(scyId);
+        //名称
+        sysCompany.setScyName(scyName);
+        //社会统一代码
+        sysCompany.setScySocialCode(scySocialCode);
+        //类型(核心企业)
+        sysCompany.setScyType(sysCompanyQuery.getScyType());
+        //企业状态
+        sysCompany.setScyStatus(sysCompanyQuery.getScyStatus());
+        //四要素状态
+        sysCompany.setScyAuthStatus(sysCompanyQuery.getScyAuthStatus());
+        //创建人
+        sysCompany.setUpdateBy(userId);
+        //创建时间
+        sysCompany.setUpdateTime(DateUtils.getNowDate());
+        //修改
+        iSysCompanyService.updateById(sysCompany);
+        //获取企业实体
+        SysCompany company = iSysCompanyService.getById(scyId);
+        Long useId = company.getScyContractId();
+        if(CommonUtil.isNotEmpty(String.valueOf(useId))) {
+            //修改联系人
+            SysUser sysUser = new SysUser();
+            sysUser.setUserId(useId);
+            sysUser.setNickName(nickName);
+            iSysUserService.updateById(sysUser);
+        }
+        return R.ok();
+    }
+
+
     /**
      * 获取企业明细信息
      */
@@ -601,116 +759,6 @@ public class OwnCompanyManageController extends BaseController
         }
     }
 
-    /**
-     * 修改企业信息
-     */
-    @PreAuthorize(hasPermi = "service:company:update")
-    @Log(title = "平台修改未认证企业信息", businessType = BusinessType.UPDATE)
-    @Transactional(rollbackFor = Exception.class)
-    @PutMapping("/updateCompany")
-    public R updateCompany(@RequestBody Map<String,Object> map) throws Exception {
-        //获取当前操作员
-        LoginUser user = tokenService.getLoginUser();
-        String userId = String.valueOf(user.getSysUser().getUserId());
-
-        //主键
-        String scyId = CommonUtil.objToString(map.get("scyId"));
-        if(CommonUtil.isEmpty(scyId)){
-            throw new Exception("修改的企业编号不能为空");
-        }
-        //企业名称
-        String scyName = CommonUtil.objToString(map.get("scyName"));
-        if(CommonUtil.isEmpty(scyName)){
-            throw new Exception("企业名称不能为空");
-        }
-        //企业名称正则校验
-        String checkScyName = "^[^\\\\/\\\\:\\\\*\\\\?\\\"<>]+$";
-        Pattern regeScyName = Pattern.compile(checkScyName);
-        Matcher matcherScyName = regeScyName.matcher(scyName);
-        boolean isMatScyName = matcherScyName.matches();
-        if(!isMatScyName){
-            throw new Exception("企业名称格式错误,不能含有特殊字符");
-        }
-        //企业统一信用代码
-        String scySocialCode = CommonUtil.objToString(map.get("scySocialCode"));
-        if(CommonUtil.isEmpty(scySocialCode)){
-            throw new Exception("统一信用代码不能为空");
-        }
-        //统一信用代码正则校验
-        String checkSocialCode = "^([0-9A-HJ-NPQRTUWXY]{2}\\d{6}[0-9A-HJ-NPQRTUWXY]{10}|[1-9]\\d{14})$";
-        Pattern regeSocialCode = Pattern.compile(checkSocialCode);
-        Matcher matcherSocialCode = regeSocialCode.matcher(scySocialCode);
-        boolean isMatSocialCode = matcherSocialCode.matches();
-        if(!isMatSocialCode){
-            throw new Exception("统一信用代码格式错误");
-        }
-        //联系人
-        String nickName = CommonUtil.objToString(map.get("nickName"));
-        if(CommonUtil.isEmpty(nickName)){
-            throw new Exception("联系人不能为空");
-        }
-        if(nickName.length() > 30){
-            throw new Exception("联系人长度不能超过30字;请检查是否正确");
-        }
-        //联系人正则校验
-        String checkNickName = "^[^\\\\/\\\\:\\\\*\\\\?\\\"<>]+$";
-        Pattern regeNickName = Pattern.compile(checkNickName);
-        Matcher matcherNickName = regeNickName.matcher(nickName);
-        boolean isMatNickName = matcherNickName.matches();
-        if(!isMatNickName){
-            throw new Exception("联系人格式错误,不能含有特殊字符");
-        }
-        //联系电话
-        String userName = CommonUtil.objToString(map.get("userName"));
-        if(CommonUtil.isEmpty(nickName)){
-            throw new Exception("联系人手机号不能为空");
-        }
-        if(CommonUtil.isNotEmpty(userName)) {
-            if(userName.length() > 11){
-                throw new Exception("手机号不能超过11位");
-            }
-            String checkPhone = "^1[3|4|5|6|7|8|9][0-9]\\d{8}$";
-            Pattern regePhone = Pattern.compile(checkPhone);
-            Matcher matcherPhone = regePhone.matcher(userName);
-            boolean isMatPhone = matcherPhone.matches();
-            if (!isMatPhone) {
-                throw new Exception("手机格式不正确");
-            }
-        }
-        //查询当前企业id的状态
-        SysCompany sysCompanyQuery = iSysCompanyService.getById(scyId);
-        //执行修改
-        SysCompany sysCompany = new SysCompany();
-        //主键
-        sysCompany.setScyId(scyId);
-        //名称
-        sysCompany.setScyName(scyName);
-        //社会统一代码
-        sysCompany.setScySocialCode(scySocialCode);
-        //类型(核心企业)
-        sysCompany.setScyType(sysCompanyQuery.getScyType());
-        //企业状态
-        sysCompany.setScyStatus(sysCompanyQuery.getScyStatus());
-        //四要素状态
-        sysCompany.setScyAuthStatus(sysCompanyQuery.getScyAuthStatus());
-        //创建人
-        sysCompany.setCreateBy(userId);
-        //创建时间
-        sysCompany.setCreateTime(DateUtils.getNowDate());
-        //修改
-        iSysCompanyService.updateById(sysCompany);
-        //获取企业实体
-        SysCompany company = iSysCompanyService.getById(scyId);
-        Long useId = company.getScyContractId();
-        if(CommonUtil.isNotEmpty(String.valueOf(useId))) {
-            //修改联系人
-            SysUser sysUser = new SysUser();
-            sysUser.setUserId(useId);
-            sysUser.setNickName(nickName);
-            iSysUserService.updateById(sysUser);
-        }
-        return R.ok();
-    }
 
 
     /**
@@ -832,8 +880,82 @@ public class OwnCompanyManageController extends BaseController
         return R.ok();
     }
 
+
+    /**
+     * 更改为核心企业
+     */
+    @PreAuthorize(hasPermi = "service:company:companyToCore")
+    @Log(title = "平台修改融资企业为核心企业", businessType = BusinessType.UPDATE)
+    @Transactional(rollbackFor = Exception.class)
+    @PutMapping("/companyToCore")
+    public R companyToCore(@RequestParam(value = "scyId", required = false)String scyId) throws Exception {
+        //主键
+        if(CommonUtil.isEmpty(scyId)){
+            throw new Exception("修改的企业为空,请联系管理员");
+        }
+        //核心企业的产品
+        String productId = configService.selectConfigByKey("system.company.core");
+        //查出核心企业与菜单关系
+        LambdaQueryWrapper<SysProductMenu> productMenuLambdaQueryWrapper = new LambdaQueryWrapper<>();
+        productMenuLambdaQueryWrapper.eq(SysProductMenu::getSpmProductId,productId);
+        List<SysProductMenu> productMenuList = iSysProductMenuService.findSysProductMenus(productMenuLambdaQueryWrapper);
+        //查询出此企业下的角色
+        LambdaQueryWrapper<SysRole> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(SysRole::getCompanyId,scyId);
+        List<SysRole> roleList = iSysRoleService.findSysRoles(lambdaQueryWrapper);
+            //如果没有角色,把产品换掉
+            if(roleList.size() == 0){
+                //查询出此企业的企业产品关联Id
+                LambdaQueryWrapper<SysCompanyProduct> companyProductLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                companyProductLambdaQueryWrapper.eq(SysCompanyProduct::getScpCompanyId,scyId);
+                companyProductLambdaQueryWrapper.eq(SysCompanyProduct::getScpIsDel,"00");
+                List<SysCompanyProduct> companyProductList = iSysCompanyProductService.findSysCompanyProducts(companyProductLambdaQueryWrapper);
+                for (SysCompanyProduct companyProduct : companyProductList) {
+                    String scpId = companyProduct.getScpId();
+                    //实体赋值
+                    SysCompanyProduct sysCompanyProduct = new SysCompanyProduct();
+                    sysCompanyProduct.setScpId(scpId);
+                    sysCompanyProduct.setScpCompanyId(scyId);
+                    sysCompanyProduct.setScpProducId(productId);
+                    sysCompanyProduct.setUpdateTime(DateUtils.getNowDate());
+                    //修改
+                    iSysCompanyProductService.updateById(sysCompanyProduct);
+                }
+            }else {
+                //如果有角色,查出角色与菜单关系
+                for (SysRole sysRole : roleList) {
+                    //查出角色下的菜单Id
+                    Long roleId = sysRole.getRoleId();
+                    LambdaQueryWrapper<SysRoleMenu> roleMenuLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                    roleMenuLambdaQueryWrapper.eq(SysRoleMenu::getRoleId,roleId);
+                    List<SysRoleMenu> menuList = iSysRoleMenuService.findSysRoleMenus(roleMenuLambdaQueryWrapper);
+                    for(SysRoleMenu sysRoleMenu : menuList){
+                        //每个菜单Id与核心企业产品Id比较
+                        Long menuId = sysRoleMenu.getMenuId();
+                        for(SysProductMenu sysProductMenu : productMenuList) {
+                            //如果相同,则删除角色与菜单关联表的数据
+                            if (menuId.equals(sysProductMenu.getSpmMenuId())) {
+                                LambdaQueryWrapper<SysRoleMenu> sysRoleMenuLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                                sysRoleMenuLambdaQueryWrapper.eq(SysRoleMenu::getMenuId,menuId);
+                                sysRoleMenuLambdaQueryWrapper.eq(SysRoleMenu::getRoleId,roleId);
+                                iSysRoleMenuService.deleteSysRoleMenu(sysRoleMenuLambdaQueryWrapper);
+                            }
+                        }
+                    }
+                }
+            }
+            //修改企业类型为核心企业
+            SysCompany sysCompany = new SysCompany();
+            sysCompany.setScyId(scyId);
+            sysCompany.setScyType("01");
+            sysCompany.setUpdateTime(DateUtils.getNowDate());
+            iSysCompanyService.updateById(sysCompany);
+        return R.ok();
+    }
+
+
     /**
-     *
+     * 实体类转Map
      * @param list
      * @return
      */

+ 11 - 0
sc-service/src/main/resources/mapper/base/SysProductMenuMapper.xml

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huyi.service.base.mapper.SysProductMenuMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huyi.service.base.entity.SysProductMenu">
+        <id column="spm_product_id" property="spmProductId" />
+        <result column="spm_menu_id" property="spmMenuId" />
+    </resultMap>
+
+</mapper>

+ 11 - 0
sc-service/src/main/resources/mapper/base/SysRoleMenuMapper.xml

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huyi.service.base.mapper.SysRoleMenuMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huyi.service.base.entity.SysRoleMenu">
+        <id column="role_id" property="roleId" />
+        <result column="menu_id" property="menuId" />
+    </resultMap>
+
+</mapper>

+ 11 - 0
sc-service/src/main/resources/mapper/base/SysUserRoleMapper.xml

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huyi.service.base.mapper.SysUserRoleMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huyi.service.base.entity.SysUserRole">
+        <id column="user_id" property="userId" />
+        <result column="role_id" property="roleId" />
+    </resultMap>
+
+</mapper>