【8.0.2】【hr】更新批量获取职位名称

pull/57/head
fengshuonan 2023-11-02 10:32:14 +08:00
parent 2552649ee6
commit 8e6c0a19cb
3 changed files with 80 additions and 0 deletions

View File

@ -0,0 +1,44 @@
package cn.stylefeng.roses.kernel.sys.modular.position.controller;
import cn.stylefeng.roses.kernel.rule.pojo.dict.SimpleDict;
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
import cn.stylefeng.roses.kernel.sys.modular.position.pojo.request.HrPositionRequest;
import cn.stylefeng.roses.kernel.sys.modular.position.service.HrPositionService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
/**
*
*
* @author fengshuonan
* @since 2023/11/2 10:28
*/
@RestController
@ApiResource(name = "通用获取职位相关业务")
public class CommonPositionController {
@Resource
private HrPositionService hrPositionService;
/**
*
*
* @author fengshuonan
* @since 2023/11/2 10:24
*/
@PostResource(name = "批量获取职位名称", path = "/common/position/batchGetName")
public ResponseData<List<SimpleDict>> batchGetName(
@RequestBody @Validated(BaseRequest.batchDelete.class) HrPositionRequest hrPositionRequest) {
List<SimpleDict> result = hrPositionService.batchGetName(hrPositionRequest);
return new SuccessResponseData<>(result);
}
}

View File

@ -1,6 +1,7 @@
package cn.stylefeng.roses.kernel.sys.modular.position.service;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.roses.kernel.rule.pojo.dict.SimpleDict;
import cn.stylefeng.roses.kernel.sys.api.PositionServiceApi;
import cn.stylefeng.roses.kernel.sys.modular.position.entity.HrPosition;
import cn.stylefeng.roses.kernel.sys.modular.position.pojo.request.HrPositionRequest;
@ -80,4 +81,12 @@ public interface HrPositionService extends IService<HrPosition>, PositionService
*/
PageResult<HrPosition> findPage(HrPositionRequest hrPositionRequest);
/**
*
*
* @author fengshuonan
* @since 2023/11/2 10:29
*/
List<SimpleDict> batchGetName(HrPositionRequest hrPositionRequest);
}

View File

@ -11,6 +11,7 @@ import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import cn.stylefeng.roses.kernel.log.api.util.BusinessLogUtil;
import cn.stylefeng.roses.kernel.rule.enums.StatusEnum;
import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException;
import cn.stylefeng.roses.kernel.rule.pojo.dict.SimpleDict;
import cn.stylefeng.roses.kernel.sys.api.callback.RemovePositionCallbackApi;
import cn.stylefeng.roses.kernel.sys.modular.position.entity.HrPosition;
import cn.stylefeng.roses.kernel.sys.modular.position.enums.HrPositionExceptionEnum;
@ -23,6 +24,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
@ -113,6 +115,31 @@ public class HrPositionServiceImpl extends ServiceImpl<HrPositionMapper, HrPosit
return PageResultFactory.createPageResult(sysRolePage);
}
@Override
public List<SimpleDict> batchGetName(HrPositionRequest hrPositionRequest) {
List<SimpleDict> dictList = new ArrayList<>();
if (ObjectUtil.isEmpty(hrPositionRequest) || ObjectUtil.isEmpty(hrPositionRequest.getPositionIdList())) {
return dictList;
}
LambdaQueryWrapper<HrPosition> wrapper = new LambdaQueryWrapper<>();
wrapper.in(HrPosition::getPositionId, hrPositionRequest.getPositionIdList());
wrapper.select(HrPosition::getPositionName, HrPosition::getPositionId);
List<HrPosition> list = this.list(wrapper);
if (ObjectUtil.isEmpty(list)) {
return dictList;
}
for (HrPosition hrPosition : list) {
dictList.add(new SimpleDict(hrPosition.getPositionId(), hrPosition.getPositionName(), null));
}
return dictList;
}
@Override
public String getPositionName(Long positionId) {
if (positionId == null) {