diff --git a/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/system/dict/DictDataCommonApi.java b/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/system/dict/DictDataCommonApi.java index 51cc663..6425b52 100644 --- a/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/system/dict/DictDataCommonApi.java +++ b/urbanops-framework/urbanops-common/src/main/java/com/zteits/urbanops/framework/common/biz/system/dict/DictDataCommonApi.java @@ -19,6 +19,15 @@ public interface DictDataCommonApi { */ List getDictDataList(String dictType); + /** + * 获得指定字典类型的字典数据列表 + * + * @param dictType 字典类型 + * @param value 字典值 + * @return 字典数据列表 + */ + DictDataRespDTO getDictData(String dictType, String value ); + } diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/PlanRateDetailController.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/PlanRateDetailController.java index c72f6b8..89ebf58 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/PlanRateDetailController.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/PlanRateDetailController.java @@ -80,8 +80,7 @@ public class PlanRateDetailController { public CommonResult getPlanRateValue(@RequestParam("busi_Line") @NotBlank String busiLine, @RequestParam("plan_type_id") @NotNull Integer planTypeId, @RequestParam("level_id") @NotNull Integer levelId) { - PlanRateDetailDO detail = planRateDetailService.getPlanRateValue(busiLine, planTypeId, levelId ); - return success(BeanUtils.toBean(detail, PlanRateDetailRespVO.class)); + return success(planRateDetailService.getPlanRateValue(busiLine, planTypeId, levelId )); } @GetMapping("/page") diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/vo/PlanRateDetailRespVO.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/vo/PlanRateDetailRespVO.java index 222f3b0..a091a0f 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/vo/PlanRateDetailRespVO.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/planrate/vo/PlanRateDetailRespVO.java @@ -43,6 +43,10 @@ public class PlanRateDetailRespVO { @ExcelProperty("周期ID: 1:日/次;2:周/次;3:月/次;4:年/次") private Integer cycleId; + @Schema(description = "周期名称: 1:日/次;2:周/次;3:月/次;4:年/次", requiredMode = Schema.RequiredMode.REQUIRED, example = "11235") + @ExcelProperty("周期名称: 1:日/次;2:周/次;3:月/次;4:年/次") + private String cycleName; + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) @ExcelProperty("创建时间") private LocalDateTime createTime; diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/PlanConstants.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/PlanConstants.java index 5baa472..96663d4 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/PlanConstants.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/enums/PlanConstants.java @@ -4,4 +4,7 @@ public class PlanConstants { /*计划属性-字典key*/ public static final String GARDEN_PLAN_ATTR_REDIS_KEY = "garden_plan_attr"; + + /*周期-cycle_id_type-字典key*/ + public static final String CYCLE_ID_TYPE = "cycle_id_type"; } diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailService.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailService.java index ecc3b9b..86e4344 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailService.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailService.java @@ -65,6 +65,6 @@ public interface PlanRateDetailService { * @param levelId 道路等级 * @return 对象 */ - PlanRateDetailDO getPlanRateValue(String busiLine,Integer planTypeId,Integer levelId); + PlanRateDetailRespVO getPlanRateValue(String busiLine,Integer planTypeId,Integer levelId); } \ No newline at end of file diff --git a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailServiceImpl.java b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailServiceImpl.java index 1d92080..29bf009 100644 --- a/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailServiceImpl.java +++ b/urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/planrate/PlanRateDetailServiceImpl.java @@ -1,8 +1,10 @@ package com.zteits.urbanops.module.garden.service.planrate; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.zteits.urbanops.framework.common.biz.system.dict.dto.DictDataRespDTO; import com.zteits.urbanops.module.garden.dal.dataobject.planrate.PlanRateDO; import com.zteits.urbanops.module.garden.dal.mysql.planrate.PlanRateMapper; +import com.zteits.urbanops.module.system.api.dict.DictDataApi; import org.springframework.stereotype.Service; import jakarta.annotation.Resource; import org.springframework.validation.annotation.Validated; @@ -16,7 +18,9 @@ import com.zteits.urbanops.framework.common.util.object.BeanUtils; import com.zteits.urbanops.module.garden.dal.mysql.planrate.PlanRateDetailMapper; import static com.zteits.urbanops.framework.common.exception.util.ServiceExceptionUtil.exception; +import static com.zteits.urbanops.framework.common.util.object.BeanUtils.copyProperties; import static com.zteits.urbanops.module.garden.enums.ErrorCodeConstants.PLAN_RATE_NOT_EXISTS; +import static com.zteits.urbanops.module.garden.enums.PlanConstants.CYCLE_ID_TYPE; /** * 计划频次明细 Service 实现类 @@ -33,6 +37,9 @@ public class PlanRateDetailServiceImpl implements PlanRateDetailService { @Resource private PlanRateDetailMapper planRateDetailMapper; + @Resource + private DictDataApi dictDataApi; + @Override public Long createPlanRateDetail(PlanRateDetailSaveReqVO createReqVO) { // 插入 @@ -85,14 +92,20 @@ public class PlanRateDetailServiceImpl implements PlanRateDetailService { @Override - public PlanRateDetailDO getPlanRateValue(String busiLine, Integer planTypeId, Integer levelId) { + public PlanRateDetailRespVO getPlanRateValue(String busiLine, Integer planTypeId, Integer levelId) { QueryWrapper sql = new QueryWrapper<>(); sql.lambda().eq(PlanRateDetailDO::getBusiLine, busiLine).eq(PlanRateDetailDO::getPlanTypeId, planTypeId).eq(PlanRateDetailDO::getLevelId, levelId); PlanRateDetailDO planRateDetailDO = planRateDetailMapper.selectOne(sql); if (planRateDetailDO == null) { throw exception(PLAN_RATE_NOT_EXISTS); } - return planRateDetailDO; + PlanRateDetailRespVO respVO = new PlanRateDetailRespVO(); + BeanUtils.copyProperties(planRateDetailDO, respVO); + DictDataRespDTO dictData = dictDataApi.getDictData(CYCLE_ID_TYPE, planRateDetailDO.getCycleId() + ""); + if (dictData != null) { + respVO.setCycleName(dictData.getLabel()); + } + return respVO; } } \ No newline at end of file diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/dict/DictDataApiImpl.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/dict/DictDataApiImpl.java index 62c476c..e3be343 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/dict/DictDataApiImpl.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/api/dict/DictDataApiImpl.java @@ -32,4 +32,12 @@ public class DictDataApiImpl implements DictDataApi { return BeanUtils.toBean(list, DictDataRespDTO.class); } + @Override + public DictDataRespDTO getDictData(String dictType, String value) { + DictDataRespDTO dto = new DictDataRespDTO(); + DictDataDO dictData = dictDataService.getDictData(dictType, value); + BeanUtils.copyProperties(dictData, dto); + return dto; + } + } diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/controller/admin/permission/RoleController.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/controller/admin/permission/RoleController.java index 16a42e0..2dceadf 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/controller/admin/permission/RoleController.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/controller/admin/permission/RoleController.java @@ -18,6 +18,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -80,6 +81,14 @@ public class RoleController { return success(BeanUtils.toBean(role, RoleRespVO.class)); } + @GetMapping("/get/busi-line") + @Operation(summary = "通过业务线查询角色列表") + @Parameter(name = "busi_line", description = "业务线", required = true) + @PreAuthorize("@ss.hasPermission('system:role:query')") + public CommonResult> getRoleListByBusiLine(@RequestParam("busi_line") @NotBlank String busiLine) { + return success(roleService.getRoleListByBusiLine(busiLine)); + } + @GetMapping("/page") @Operation(summary = "获得角色分页") @PreAuthorize("@ss.hasPermission('system:role:query')") diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/dal/dataobject/permission/RoleDO.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/dal/dataobject/permission/RoleDO.java index 0533508..c3b1e3e 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/dal/dataobject/permission/RoleDO.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/dal/dataobject/permission/RoleDO.java @@ -75,4 +75,9 @@ public class RoleDO extends TenantBaseDO { @TableField(typeHandler = JacksonTypeHandler.class) private Set dataScopeDeptIds; + /** + * 业务线: yl-园林;wy-物业:sz-市政;例如:yl,wy' + */ + private String busiLine; + } diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleService.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleService.java index 712e8fc..9444c19 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleService.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleService.java @@ -2,6 +2,7 @@ package com.zteits.urbanops.module.system.service.permission; import com.zteits.urbanops.framework.common.pojo.PageResult; import com.zteits.urbanops.module.system.controller.admin.permission.vo.role.RolePageReqVO; +import com.zteits.urbanops.module.system.controller.admin.permission.vo.role.RoleRespVO; import com.zteits.urbanops.module.system.controller.admin.permission.vo.role.RoleSaveReqVO; import com.zteits.urbanops.module.system.dal.dataobject.permission.RoleDO; import jakarta.validation.Valid; @@ -128,4 +129,10 @@ public interface RoleService { */ void validateRoleList(Collection ids); + /** + * 通过业务线查询角色列表 + * @param busiLine 业务线 + * @return + */ + List getRoleListByBusiLine(String busiLine); } diff --git a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleServiceImpl.java b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleServiceImpl.java index 80d4325..74e4d20 100644 --- a/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleServiceImpl.java +++ b/urbanops-module-system/src/main/java/com/zteits/urbanops/module/system/service/permission/RoleServiceImpl.java @@ -5,11 +5,13 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.extra.spring.SpringUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.zteits.urbanops.framework.common.enums.CommonStatusEnum; import com.zteits.urbanops.framework.common.pojo.PageResult; import com.zteits.urbanops.framework.common.util.collection.CollectionUtils; import com.zteits.urbanops.framework.common.util.object.BeanUtils; import com.zteits.urbanops.module.system.controller.admin.permission.vo.role.RolePageReqVO; +import com.zteits.urbanops.module.system.controller.admin.permission.vo.role.RoleRespVO; import com.zteits.urbanops.module.system.controller.admin.permission.vo.role.RoleSaveReqVO; import com.zteits.urbanops.module.system.dal.dataobject.permission.RoleDO; import com.zteits.urbanops.module.system.dal.mysql.permission.RoleMapper; @@ -262,6 +264,14 @@ public class RoleServiceImpl implements RoleService { }); } + @Override + public List getRoleListByBusiLine(String busiLine) { + QueryWrapper sql = new QueryWrapper<>(); + sql.lambda().eq(RoleDO::getBusiLine, busiLine); + List roleDOS = roleMapper.selectList(sql); + return BeanUtils.toBean(roleDOS, RoleRespVO.class); + } + /** * 获得自身的代理对象,解决 AOP 生效问题 *