mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 18:28:43 +08:00 
			
		
		
		
	crm: 完善数据权限的逻辑
This commit is contained in:
		| @@ -1,6 +1,6 @@ | ||||
| package cn.iocoder.yudao.module.crm.controller.admin.business.vo.business; | ||||
|  | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import lombok.Data; | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| package cn.iocoder.yudao.module.crm.controller.admin.contact.vo; | ||||
|  | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import lombok.Data; | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| package cn.iocoder.yudao.module.crm.controller.admin.contract.vo; | ||||
|  | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import lombok.Data; | ||||
|  | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| package cn.iocoder.yudao.module.crm.controller.admin.customer.vo; | ||||
|  | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import lombok.Data; | ||||
|  | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import cn.iocoder.yudao.module.crm.controller.admin.permission.vo.CrmPermissionU | ||||
| import cn.iocoder.yudao.module.crm.convert.permission.CrmPermissionConvert; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.permission.CrmPermissionDO; | ||||
| import cn.iocoder.yudao.module.crm.framework.core.annotations.CrmPermission; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService; | ||||
| import cn.iocoder.yudao.module.system.api.dept.DeptApi; | ||||
| import cn.iocoder.yudao.module.system.api.dept.PostApi; | ||||
| @@ -87,7 +87,7 @@ public class CrmPermissionController { | ||||
|     } | ||||
|  | ||||
|     @GetMapping("/list") | ||||
|     @Operation(summary = "获取数据权限列表") | ||||
|     @Operation(summary = "获得数据权限列表") | ||||
|     @Parameters({ | ||||
|             @Parameter(name = "bizType", description = "CRM 类型", required = true, example = "2"), | ||||
|             @Parameter(name = "bizId", description = "CRM 类型数据编号", required = true, example = "1024") | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| package cn.iocoder.yudao.module.crm.controller.admin.permission.vo; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.validation.InEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import lombok.Data; | ||||
|  | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| package cn.iocoder.yudao.module.crm.controller.admin.permission.vo; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.validation.InEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import lombok.Data; | ||||
|  | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| package cn.iocoder.yudao.module.crm.dal.dataobject.permission; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import com.baomidou.mybatisplus.annotation.KeySequence; | ||||
| import com.baomidou.mybatisplus.annotation.TableId; | ||||
| import com.baomidou.mybatisplus.annotation.TableName; | ||||
|   | ||||
| @@ -10,7 +10,7 @@ import cn.iocoder.yudao.module.crm.controller.admin.customer.vo.CrmCustomerPageR | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.customer.CrmCustomerDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.permission.CrmPermissionDO; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmSceneEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | ||||
| import com.baomidou.mybatisplus.core.metadata.IPage; | ||||
| import org.apache.ibatis.annotations.Mapper; | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| package cn.iocoder.yudao.module.crm.framework.core.annotations; | ||||
|  | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
|  | ||||
| import java.lang.annotation.Documented; | ||||
| import java.lang.annotation.Retention; | ||||
|   | ||||
| @@ -7,8 +7,8 @@ import cn.iocoder.yudao.framework.common.util.spring.SpringExpressionUtils; | ||||
| import cn.iocoder.yudao.framework.web.core.util.WebFrameworkUtils; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.permission.CrmPermissionDO; | ||||
| import cn.iocoder.yudao.module.crm.framework.core.annotations.CrmPermission; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService; | ||||
| import lombok.extern.slf4j.Slf4j; | ||||
| import org.aspectj.lang.JoinPoint; | ||||
|   | ||||
| @@ -1,48 +0,0 @@ | ||||
| package cn.iocoder.yudao.module.crm.framework.enums; | ||||
|  | ||||
| import cn.hutool.core.collection.CollUtil; | ||||
| import cn.hutool.core.util.ObjUtil; | ||||
| import cn.iocoder.yudao.framework.common.core.IntArrayValuable; | ||||
| import lombok.Getter; | ||||
| import lombok.RequiredArgsConstructor; | ||||
|  | ||||
| import java.util.Arrays; | ||||
|  | ||||
| /** | ||||
|  * CRM 类型枚举 | ||||
|  * | ||||
|  * @author HUIHUI | ||||
|  */ | ||||
| @RequiredArgsConstructor | ||||
| @Getter | ||||
| public enum CrmBizTypeEnum implements IntArrayValuable { | ||||
|  | ||||
|     CRM_LEADS(1, "线索"), | ||||
|     CRM_CUSTOMER(2, "客户"), | ||||
|     CRM_CONTACTS(3, "联系人"), | ||||
|     CRM_BUSINESS(4, "商机"), | ||||
|     CRM_CONTRACT(5, "合同"); | ||||
|  | ||||
|     public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(CrmBizTypeEnum::getType).toArray(); | ||||
|  | ||||
|     /** | ||||
|      * 类型 | ||||
|      */ | ||||
|     private final Integer type; | ||||
|     /** | ||||
|      * 名称 | ||||
|      */ | ||||
|     private final String name; | ||||
|  | ||||
|     public static String getNameByType(Integer type) { | ||||
|         CrmBizTypeEnum typeEnum = CollUtil.findOne(CollUtil.newArrayList(CrmBizTypeEnum.values()), | ||||
|                 item -> ObjUtil.equal(item.type, type)); | ||||
|         return typeEnum == null ? null : typeEnum.getName(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public int[] array() { | ||||
|         return ARRAYS; | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -1,51 +0,0 @@ | ||||
| package cn.iocoder.yudao.module.crm.framework.enums; | ||||
|  | ||||
| import cn.hutool.core.util.ObjUtil; | ||||
| import cn.iocoder.yudao.framework.common.core.IntArrayValuable; | ||||
| import lombok.AllArgsConstructor; | ||||
| import lombok.Getter; | ||||
|  | ||||
| import java.util.Arrays; | ||||
|  | ||||
| /** | ||||
|  * Crm 数据权限级别枚举 | ||||
|  * | ||||
|  * @author HUIHUI | ||||
|  */ | ||||
| @Getter | ||||
| @AllArgsConstructor | ||||
| public enum CrmPermissionLevelEnum implements IntArrayValuable { | ||||
|  | ||||
|     OWNER(1, "负责人"), | ||||
|     READ(2, "读"), | ||||
|     WRITE(3, "写"); | ||||
|  | ||||
|     public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(CrmPermissionLevelEnum::getLevel).toArray(); | ||||
|  | ||||
|     /** | ||||
|      * 级别 | ||||
|      */ | ||||
|     private final Integer level; | ||||
|     /** | ||||
|      * 级别名称 | ||||
|      */ | ||||
|     private final String name; | ||||
|  | ||||
|     @Override | ||||
|     public int[] array() { | ||||
|         return ARRAYS; | ||||
|     } | ||||
|  | ||||
|     public static boolean isOwner(Integer level) { | ||||
|         return ObjUtil.equal(OWNER.level, level); | ||||
|     } | ||||
|  | ||||
|     public static boolean isRead(Integer level) { | ||||
|         return ObjUtil.equal(READ.level, level); | ||||
|     } | ||||
|  | ||||
|     public static boolean isWrite(Integer level) { | ||||
|         return ObjUtil.equal(WRITE.level, level); | ||||
|     } | ||||
|  | ||||
| } | ||||
| @@ -9,8 +9,8 @@ import cn.iocoder.yudao.module.crm.dal.dataobject.business.CrmBusinessDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.permission.CrmPermissionDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.mysql.business.CrmBusinessMapper; | ||||
| import cn.iocoder.yudao.module.crm.framework.core.annotations.CrmPermission; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO; | ||||
| import org.springframework.stereotype.Service; | ||||
|   | ||||
| @@ -11,8 +11,8 @@ import cn.iocoder.yudao.module.crm.convert.contact.ContactConvert; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.contact.CrmContactDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.mysql.contact.CrmContactMapper; | ||||
| import cn.iocoder.yudao.module.crm.framework.core.annotations.CrmPermission; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.customer.CrmCustomerService; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO; | ||||
|   | ||||
| @@ -8,8 +8,8 @@ import cn.iocoder.yudao.module.crm.convert.contract.ContractConvert; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.contract.ContractDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.mysql.contract.ContractMapper; | ||||
| import cn.iocoder.yudao.module.crm.framework.core.annotations.CrmPermission; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO; | ||||
| import org.springframework.stereotype.Service; | ||||
|   | ||||
| @@ -10,8 +10,8 @@ import cn.iocoder.yudao.module.crm.convert.customer.CrmCustomerConvert; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.customer.CrmCustomerDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.mysql.customer.CrmCustomerMapper; | ||||
| import cn.iocoder.yudao.module.crm.framework.core.annotations.CrmPermission; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.CrmPermissionService; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO; | ||||
| import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||||
|   | ||||
| @@ -3,8 +3,8 @@ package cn.iocoder.yudao.module.crm.service.permission; | ||||
|  | ||||
| import cn.iocoder.yudao.module.crm.controller.admin.permission.vo.CrmPermissionUpdateReqVO; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.permission.CrmPermissionDO; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionTransferReqBO; | ||||
|  | ||||
| @@ -22,17 +22,17 @@ public interface CrmPermissionService { | ||||
|     /** | ||||
|      * 创建数据权限 | ||||
|      * | ||||
|      * @param createBO 创建信息 | ||||
|      * @param createReqBO 创建信息 | ||||
|      * @return 编号 | ||||
|      */ | ||||
|     Long createPermission(@Valid CrmPermissionCreateReqBO createBO); | ||||
|     Long createPermission(@Valid CrmPermissionCreateReqBO createReqBO); | ||||
|  | ||||
|     /** | ||||
|      * 创建数据权限 | ||||
|      * | ||||
|      * @param createBOs 创建信息 | ||||
|      * @param createReqBOs 创建信息 | ||||
|      */ | ||||
|     void createPermissionBatch(@Valid List<CrmPermissionCreateReqBO> createBOs); | ||||
|     void createPermissionBatch(@Valid List<CrmPermissionCreateReqBO> createReqBOs); | ||||
|  | ||||
|     /** | ||||
|      * 更新数据权限 | ||||
|   | ||||
| @@ -6,8 +6,8 @@ import cn.iocoder.yudao.module.crm.controller.admin.permission.vo.CrmPermissionU | ||||
| import cn.iocoder.yudao.module.crm.convert.permission.CrmPermissionConvert; | ||||
| import cn.iocoder.yudao.module.crm.dal.dataobject.permission.CrmPermissionDO; | ||||
| import cn.iocoder.yudao.module.crm.dal.mysql.permission.CrmPermissionMapper; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionCreateReqBO; | ||||
| import cn.iocoder.yudao.module.crm.service.permission.bo.CrmPermissionTransferReqBO; | ||||
| import cn.iocoder.yudao.module.system.api.user.AdminUserApi; | ||||
| @@ -23,7 +23,7 @@ import java.util.List; | ||||
| import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | ||||
| import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet; | ||||
| import static cn.iocoder.yudao.module.crm.enums.ErrorCodeConstants.*; | ||||
| import static cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum.isOwner; | ||||
| import static cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum.isOwner; | ||||
|  | ||||
| /** | ||||
|  * CRM 数据权限 Service 接口实现类 | ||||
| @@ -42,29 +42,32 @@ public class CrmPermissionServiceImpl implements CrmPermissionService { | ||||
|  | ||||
|     @Override | ||||
|     @Transactional(rollbackFor = Exception.class) | ||||
|     public Long createPermission(CrmPermissionCreateReqBO createBO) { | ||||
|     public Long createPermission(CrmPermissionCreateReqBO createReqBO) { | ||||
|         // TODO @puhui999:排重 | ||||
|         // 1. 校验用户是否存在 | ||||
|         adminUserApi.validateUserList(Collections.singletonList(createBO.getUserId())); | ||||
|         adminUserApi.validateUserList(Collections.singletonList(createReqBO.getUserId())); | ||||
|  | ||||
|         // 2. 创建 | ||||
|         CrmPermissionDO permission = CrmPermissionConvert.INSTANCE.convert(createBO); | ||||
|         CrmPermissionDO permission = CrmPermissionConvert.INSTANCE.convert(createReqBO); | ||||
|         crmPermissionMapper.insert(permission); | ||||
|         return permission.getId(); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void createPermissionBatch(List<CrmPermissionCreateReqBO> createBOs) { | ||||
|     public void createPermissionBatch(List<CrmPermissionCreateReqBO> createReqBOs) { | ||||
|         // TODO @puhui999:排重 | ||||
|         // 1. 校验用户是否存在 | ||||
|         adminUserApi.validateUserList(convertSet(createBOs, CrmPermissionCreateReqBO::getUserId)); | ||||
|         adminUserApi.validateUserList(convertSet(createReqBOs, CrmPermissionCreateReqBO::getUserId)); | ||||
|  | ||||
|         // 2. 创建 | ||||
|         List<CrmPermissionDO> permissions = CrmPermissionConvert.INSTANCE.convertList(createBOs); | ||||
|         List<CrmPermissionDO> permissions = CrmPermissionConvert.INSTANCE.convertList(createReqBOs); | ||||
|         crmPermissionMapper.insertBatch(permissions); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     @Transactional(rollbackFor = Exception.class) | ||||
|     public void updatePermission(CrmPermissionUpdateReqVO updateReqVO) { | ||||
|         // TODO @puhui999:排重 | ||||
|         // 1. 校验存在 | ||||
|         validateCrmPermissionExists(updateReqVO.getIds()); | ||||
|         // 2. 更新 | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| package cn.iocoder.yudao.module.crm.service.permission.bo; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.validation.InEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import lombok.Data; | ||||
|  | ||||
| import javax.validation.constraints.NotNull; | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| package cn.iocoder.yudao.module.crm.service.permission.bo; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.validation.InEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.common.CrmBizTypeEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import lombok.Data; | ||||
|  | ||||
| import javax.validation.constraints.NotNull; | ||||
|   | ||||
| @@ -1,7 +1,7 @@ | ||||
| package cn.iocoder.yudao.module.crm.service.permission.bo; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.validation.InEnum; | ||||
| import cn.iocoder.yudao.module.crm.framework.enums.CrmPermissionLevelEnum; | ||||
| import cn.iocoder.yudao.module.crm.enums.permission.CrmPermissionLevelEnum; | ||||
| import lombok.Data; | ||||
|  | ||||
| import javax.validation.constraints.NotNull; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 YunaiV
					YunaiV