Browse Source

oa公共方法获取岗位部门数据字典等

master
dimengzhe 3 months ago
parent
commit
af85897368
  1. 9
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/DictCommonFeign.java
  2. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/DictCommonFeignFallback.java
  3. 19
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/DictCommonH5Vo.java
  4. 16
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/Extra.java
  5. 16
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/OrgDeptVo.java
  6. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeign.java
  7. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeignFallback.java
  8. 17
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/syspost/SysPostAllVo.java
  9. 4
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/syspost/SysPostFeign.java
  10. 5
      anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/syspost/SysPostFeignFallback.java
  11. 3
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonMapper.java
  12. 4
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonMapper.xml
  13. 7
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonRest.java
  14. 15
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonService.java
  15. 2
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java
  16. 7
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.xml
  17. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationRest.java
  18. 15
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java
  19. 3
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostMapper.java
  20. 34
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostMapper.xml
  21. 5
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostRest.java
  22. 11
      anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostService.java
  23. 16
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/Extra.java
  24. 17
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/OaCommonDictVo.java
  25. 33
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/OaCommonFeign.java
  26. 12
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/OaCommonFeignFallback.java
  27. 33
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/oa/common/OaCommonRest.java
  28. 66
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/oa/common/OaCommonService.java

9
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/DictCommonFeign.java

@ -51,7 +51,7 @@ public interface DictCommonFeign {
@GetMapping("/typeValues")
@ResponseBody
@ApiOperation("下拉框的获取")
ResultBean<List<DictCommonVo>> getTypeValues(@RequestParam("type") String type, @RequestParam(value = "psid", defaultValue = "0")String psid);
ResultBean<List<DictCommonVo>> getTypeValues(@RequestParam("type") String type, @RequestParam(value = "psid", defaultValue = "0") String psid);
@GetMapping("/getFirstDictKeyByType")
@ResponseBody
@ -61,7 +61,7 @@ public interface DictCommonFeign {
@GetMapping("/getTypeValueList")
@ResponseBody
@ApiOperation("根据分类编码和数据分组查询数据字典")
ResultBean<List<DictCommonVo>> getTypeValueList(@RequestParam("type")String type,@RequestParam("groupNum")String groupNum);
ResultBean<List<DictCommonVo>> getTypeValueList(@RequestParam("type") String type, @RequestParam("groupNum") String groupNum);
@GetMapping("/selectByValue")
@ResponseBody
@ -72,4 +72,9 @@ public interface DictCommonFeign {
@ResponseBody
@ApiOperation("根据字典类型查询")
ResultBean<List<DictCommon>> selectByType(@RequestParam("dictValue") String dictValue);
@GetMapping("/typeValuesH5/{key}")
@ResponseBody
@ApiOperation("查询数据字典")
ResultBean<List<DictCommonH5Vo>> getTypeValuesH5(@PathVariable("key") String key);
}

5
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/DictCommonFeignFallback.java

@ -64,4 +64,9 @@ public class DictCommonFeignFallback implements DictCommonFeign {
public ResultBean<List<DictCommon>> selectByType(String dictValue) {
return null;
}
@Override
public ResultBean<List<DictCommonH5Vo>> getTypeValuesH5(String key) {
return null;
}
}

19
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/DictCommonH5Vo.java

@ -0,0 +1,19 @@
package com.yxt.anrui.portal.api.dictcommon;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Data
public class DictCommonH5Vo {
@JsonProperty("id")
private String dictKey;
private String dictValue;
private Extra extra;
}

16
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/dictcommon/Extra.java

@ -0,0 +1,16 @@
package com.yxt.anrui.portal.api.dictcommon;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Data
public class Extra {
private String name;
private String sid;
private String info;
}

16
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/OrgDeptVo.java

@ -0,0 +1,16 @@
package com.yxt.anrui.portal.api.sysorganization;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Data
public class OrgDeptVo {
private String sid;
private String name;
}

5
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeign.java

@ -240,4 +240,9 @@ public interface SysOrganizationFeign {
@ResponseBody
@ApiOperation("根据组织全路径查询组织")
ResultBean<OrgVo> getOrgByPath(@RequestParam("orgSidPath") String orgSidPath);
@GetMapping("/getAllDept")
@ResponseBody
@ApiOperation("根据组织全路径查询该组织下的所有部门")
ResultBean<List<OrgDeptVo>> getAllDept(@RequestParam("orgPath") String orgPath);
}

5
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysorganization/SysOrganizationFeignFallback.java

@ -246,4 +246,9 @@ public class SysOrganizationFeignFallback implements SysOrganizationFeign {
public ResultBean<OrgVo> getOrgByPath(String orgSidPath) {
return null;
}
@Override
public ResultBean<List<OrgDeptVo>> getAllDept(String orgPath) {
return null;
}
}

17
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/syspost/SysPostAllVo.java

@ -0,0 +1,17 @@
package com.yxt.anrui.portal.api.syspost;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Data
public class SysPostAllVo {
@ApiModelProperty("岗位sid")
private String sid;
@ApiModelProperty("岗位名称")
private String name;
}

4
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/syspost/SysPostFeign.java

@ -83,4 +83,8 @@ public interface SysPostFeign {
@ApiOperation("查询岗位列表")
@GetMapping("/selectList")
public ResultBean<List<SysPostListVo>> selectList();
@ApiOperation("查询岗位列表")
@GetMapping("/getAllPost")
ResultBean<List<SysPostAllVo>> getAllPost(@RequestParam(required = false, value = "name") String name);
}

5
anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/syspost/SysPostFeignFallback.java

@ -88,4 +88,9 @@ public class SysPostFeignFallback implements SysPostFeign {
public ResultBean<List<SysPostListVo>> selectList() {
return null;
}
@Override
public ResultBean<List<SysPostAllVo>> getAllPost(String name) {
return null;
}
}

3
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonMapper.java

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.portal.api.dictcommon.DictCommon;
import com.yxt.anrui.portal.api.dictcommon.DictCommonH5Vo;
import com.yxt.anrui.portal.api.dictcommon.DictCommonQuery;
import com.yxt.anrui.portal.api.dictcommon.DictCommonVo;
import org.apache.ibatis.annotations.Mapper;
@ -64,4 +65,6 @@ public interface DictCommonMapper extends BaseMapper<DictCommon> {
@Select("select dictKey from dict_common where dictValue = #{dictValue} and dictType = 'rebateType'")
String selectByValue(String dictValue);
List<DictCommonH5Vo> getTypeValuesH5(String key);
}

4
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonMapper.xml

@ -40,4 +40,8 @@
<select id="getList" resultType="com.yxt.anrui.portal.api.dictcommon.DictCommonVo">
select * from dict_common dc where dc.dictType = #{type} and find_in_set(#{groupNum}, replace(dc.groupName, ',', ','));
</select>
<select id="getTypeValuesH5" resultType="com.yxt.anrui.portal.api.dictcommon.DictCommonH5Vo">
select dictKey,dictValue from dict_common where dictType = #{key}
</select>
</mapper>

7
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonRest.java

@ -141,7 +141,7 @@ public class DictCommonRest implements DictCommonFeign {
@Override
public ResultBean<List<DictCommonVo>> getTypeValueList(String type, String groupNum) {
return dictCommonService.getList(type,groupNum);
return dictCommonService.getList(type, groupNum);
}
@Override
@ -157,4 +157,9 @@ public class DictCommonRest implements DictCommonFeign {
List<DictCommon> dictCommons = dictCommonService.selectByType(dictValue);
return rb.success().setData(dictCommons);
}
@Override
public ResultBean<List<DictCommonH5Vo>> getTypeValuesH5(String key) {
return dictCommonService.getTypeValuesH5(key);
}
}

15
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/dictcommon/DictCommonService.java

@ -2,10 +2,7 @@ package com.yxt.anrui.portal.biz.dictcommon;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.portal.api.dictcommon.DictCommon;
import com.yxt.anrui.portal.api.dictcommon.DictCommonQuery;
import com.yxt.anrui.portal.api.dictcommon.DictCommonTypeQuery;
import com.yxt.anrui.portal.api.dictcommon.DictCommonVo;
import com.yxt.anrui.portal.api.dictcommon.*;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
@ -13,6 +10,7 @@ import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
/**
@ -75,11 +73,18 @@ public class DictCommonService extends MybatisBaseService<DictCommonMapper, Dict
public ResultBean<List<DictCommonVo>> getList(String type, String groupNum) {
ResultBean<List<DictCommonVo>> rb = ResultBean.fireFail();
List<DictCommonVo> list = baseMapper.getList(type,groupNum);
List<DictCommonVo> list = baseMapper.getList(type, groupNum);
return rb.success().setData(list);
}
public String selectByValue(String dictValue) {
return baseMapper.selectByValue(dictValue);
}
public ResultBean<List<DictCommonH5Vo>> getTypeValuesH5(String key) {
ResultBean<List<DictCommonH5Vo>> rb = ResultBean.fireFail();
List<DictCommonH5Vo> list = baseMapper.getTypeValuesH5(key);
list.removeAll(Collections.singleton(null));
return rb.success().setData(list);
}
}

2
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.java

@ -145,4 +145,6 @@ public interface SysOrganizationMapper extends BaseMapper<SysOrganization> {
List<SysOrganizationVo> tranFive(String sid);
List<SysFinanceVo> selectStaffListByUseOrgSid(@Param("orgSidPath") String orgSidPath);
List<OrgDeptVo> getAllDept(String orgSid);
}

7
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationMapper.xml

@ -344,4 +344,11 @@
WHERE ur.roleSid = '89d7f310-a221-405b-858e-dd650e0993d5'
AND o.orgSidPath LIKE concat('%', #{orgSidPath}, '%')
</select>
<select id="getAllDept" resultType="com.yxt.anrui.portal.api.sysorganization.OrgDeptVo">
select org.sid, org.name
from sys_organization org
where org.psid = #{orgSid}
having (SELECT count(1) FROM sys_organization WHERE psid = org.sid) = 0
</select>
</mapper>

5
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationRest.java

@ -527,4 +527,9 @@ public class SysOrganizationRest implements SysOrganizationFeign {
public ResultBean<OrgVo> getOrgByPath(String orgSidPath) {
return sysOrganizationService.getOrgByPath(orgSidPath);
}
@Override
public ResultBean<List<OrgDeptVo>> getAllDept(String orgPath) {
return sysOrganizationService.getAllDept(orgPath);
}
}

15
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysorganization/SysOrganizationService.java

@ -815,4 +815,19 @@ public class SysOrganizationService extends MybatisBaseService<SysOrganizationMa
orgVo.setDeptSid(sysOrganization.getSid());
return rb.success().setData(orgVo);
}
public ResultBean<List<OrgDeptVo>> getAllDept(String orgPath) {
ResultBean<List<OrgDeptVo>> rb = ResultBean.fireFail();
String[] levels = orgPath.split("/"); // 将orgSidPath按'/'分割
String orgSid = "";
// 判断层级
if (levels.length > 3) {
orgSid = levels[2]; // 第三层级的sid
} else {
orgSid = levels[levels.length - 2]; // 倒数第二层级的sid
}
List<OrgDeptVo> voList = baseMapper.getAllDept(orgSid);
voList.removeAll(Collections.singleton(null));
return rb.success().setData(voList);
}
}

3
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostMapper.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.portal.api.syspost.SysPostAllVo;
import com.yxt.anrui.portal.api.syspost.SysPostListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -65,4 +66,6 @@ public interface SysPostMapper extends BaseMapper<SysPost> {
@Select("select * from sys_post where staffSid = #{sid}")
SysPost getPostByStaffSid(String sid);
List<SysPostAllVo> getAllPost(@Param(Constants.WRAPPER) Wrapper<SysPost> qw);
}

34
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostMapper.xml

@ -4,20 +4,20 @@
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.portal.api.syspost.SysPostVo">
SELECT post.sid sid,
post.name name,
post.orgSid,
post.postCode,
post.postLevelKey,
post.postLevel,
post.orgSid,
IF(org.psid = '0', org.name,
CONCAT((select name from sys_organization where sid = org.psid), "/", org.name)) orgName,
post.parentSid,
sp.name parentName
SELECT post.sid sid,
post.name name,
post.orgSid,
post.postCode,
post.postLevelKey,
post.postLevel,
post.orgSid,
IF(org.psid = '0', org.name,
CONCAT((select name from sys_organization where sid = org.psid), "/", org.name)) orgName,
post.parentSid,
sp.name parentName
FROM sys_post post
left join sys_organization org on org.sid = post.orgSid
left join sys_post sp on post.parentSid = sp.sid
left join sys_organization org on org.sid = post.orgSid
left join sys_post sp on post.parentSid = sp.sid
<where>
${ew.sqlSegment}
</where>
@ -41,4 +41,12 @@
from sys_post
where postCode = #{substring}
</select>
<select id="getAllPost" resultType="com.yxt.anrui.portal.api.syspost.SysPostAllVo">
select post.sid,post.name from sys_post post
<where>
1=1 and
${ew.sqlSegment}
</where>
</select>
</mapper>

5
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostRest.java

@ -128,4 +128,9 @@ public class SysPostRest implements SysPostFeign {
}
return rb.success().setData(sysPostVoList);
}
@Override
public ResultBean<List<SysPostAllVo>> getAllPost(String name) {
return sysPostService.getAllPost(name);
}
}

11
anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/syspost/SysPostService.java

@ -9,6 +9,7 @@ import com.yxt.anrui.portal.biz.sysorganization.SysOrganizationService;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -141,4 +142,14 @@ public class SysPostService extends MybatisBaseService<SysPostMapper, SysPost> {
public SysPost getPostByStaffSid(String sid) {
return baseMapper.getPostByStaffSid(sid);
}
public ResultBean<List<SysPostAllVo>> getAllPost(String name) {
ResultBean<List<SysPostAllVo>> rb = ResultBean.fireFail();
QueryWrapper<SysPost> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(name)) {
qw.like("post.name", name);
}
List<SysPostAllVo> list = baseMapper.getAllPost(qw);
return null;
}
}

16
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/Extra.java

@ -0,0 +1,16 @@
package com.yxt.anrui.terminal.api.oa.common;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Data
public class Extra {
private String name;
private String sid;
private String info;
}

17
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/OaCommonDictVo.java

@ -0,0 +1,17 @@
package com.yxt.anrui.terminal.api.oa.common;
import lombok.Data;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Data
public class OaCommonDictVo {
private String id;
private String dictValue;
private Extra extra;
}

33
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/OaCommonFeign.java

@ -0,0 +1,33 @@
package com.yxt.anrui.terminal.api.oa.common;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @description: oa公共
* @author: dimengzhe
* @date: 2025/1/16
**/
@FeignClient(
contextId = "anrui-terminal-OaCommon",
name = "anrui-terminal",
path = "/oa/v1/common",
fallback = OaCommonFeignFallback.class)
public interface OaCommonFeign {
@ApiOperation("查询岗位")
@GetMapping("/getAllPost")
ResultBean<List<OaCommonDictVo>> getAllPost(@RequestParam(required = false, value = "name") String name);
@ApiOperation("查询部门")
@GetMapping("/getAllDeptByPath")
ResultBean<List<OaCommonDictVo>> getAllDeptByPath(@RequestParam("orgPath") String orgPath);
}

12
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/oa/common/OaCommonFeignFallback.java

@ -0,0 +1,12 @@
package com.yxt.anrui.terminal.api.oa.common;
import org.springframework.stereotype.Component;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Component
public class OaCommonFeignFallback {
}

33
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/oa/common/OaCommonRest.java

@ -0,0 +1,33 @@
package com.yxt.anrui.terminal.biz.oa.common;
import com.yxt.anrui.terminal.api.oa.common.OaCommonDictVo;
import com.yxt.anrui.terminal.api.oa.common.OaCommonFeign;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@RestController
@RequestMapping("oa/v1/common")
public class OaCommonRest implements OaCommonFeign {
@Autowired
private OaCommonService oaCommonService;
@Override
public ResultBean<List<OaCommonDictVo>> getAllPost(String name) {
return oaCommonService.getAllPost(name);
}
@Override
public ResultBean<List<OaCommonDictVo>> getAllDeptByPath(String orgPath) {
return oaCommonService.getAllDeptByPath(orgPath);
}
}

66
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/oa/common/OaCommonService.java

@ -0,0 +1,66 @@
package com.yxt.anrui.terminal.biz.oa.common;
import com.alibaba.fastjson.JSON;
import com.yxt.anrui.portal.api.sysorganization.OrgDeptVo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.syspost.SysPostAllVo;
import com.yxt.anrui.portal.api.syspost.SysPostFeign;
import com.yxt.anrui.terminal.api.base.common.PublicModelVo;
import com.yxt.anrui.terminal.api.oa.common.OaCommonDictVo;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* @description:
* @author: dimengzhe
* @date: 2025/1/16
**/
@Service
public class OaCommonService {
@Autowired
private SysPostFeign sysPostFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
public ResultBean<List<OaCommonDictVo>> getAllPost(String name) {
ResultBean<List<OaCommonDictVo>> rb = ResultBean.fireFail();
ResultBean<List<SysPostAllVo>> resultBean = sysPostFeign.getAllPost(name);
List<OaCommonDictVo> voList = Optional.ofNullable(resultBean.getData())
.orElse(Collections.emptyList()) // 如果为 null,则返回一个空列表
.stream()
.map(post -> {
OaCommonDictVo oaCommonDictVo = new OaCommonDictVo();
// 映射属性:手动指定属性名称和类型不一致时的赋值方式
oaCommonDictVo.setId(post.getSid()); // 将 SysPostAllVo 的 postId 映射到 OaCommonDictVo 的 id
oaCommonDictVo.setDictValue(post.getName()); // 将 SysPostAllVo 的 postName 映射到 OaCommonDictVo 的 name
return oaCommonDictVo;
})
.collect(Collectors.toList());
return rb.success().setData(voList);
}
public ResultBean<List<OaCommonDictVo>> getAllDeptByPath(String orgPath) {
ResultBean<List<OaCommonDictVo>> rb = ResultBean.fireFail();
ResultBean<List<OrgDeptVo>> resultBean = sysOrganizationFeign.getAllDept(orgPath);
List<OaCommonDictVo> voList = Optional.ofNullable(resultBean.getData())
.orElse(Collections.emptyList()) // 如果为 null,则返回一个空列表
.stream()
.map(dept -> {
OaCommonDictVo oaCommonDictVo = new OaCommonDictVo();
// 映射属性:手动指定属性名称和类型不一致时的赋值方式
oaCommonDictVo.setId(dept.getSid());
oaCommonDictVo.setDictValue(dept.getName());
return oaCommonDictVo;
})
.collect(Collectors.toList());
return rb.success().setData(voList);
}
}
Loading…
Cancel
Save