Commit a723e7d6 by 汪鑫

旅馆一件事

parent 282db5ab
...@@ -3,6 +3,7 @@ package com.ihooyah.model.controller; ...@@ -3,6 +3,7 @@ package com.ihooyah.model.controller;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.ihooyah.base.BaseController; import com.ihooyah.base.BaseController;
import com.ihooyah.model.pojo.vo.HotelMaterialListingVO; import com.ihooyah.model.pojo.vo.HotelMaterialListingVO;
import com.ihooyah.model.pojo.vo.OrgCodeVO;
import com.ihooyah.model.service.HotelMaterialListingService; import com.ihooyah.model.service.HotelMaterialListingService;
import com.ihooyah.rest.output.RespInfo; import com.ihooyah.rest.output.RespInfo;
import com.ihooyah.utils.YmlUtils; import com.ihooyah.utils.YmlUtils;
...@@ -60,4 +61,10 @@ public class CommonController extends BaseController { ...@@ -60,4 +61,10 @@ public class CommonController extends BaseController {
public RespInfo<HotelMaterialListingVO> getHotelMaterial(){ public RespInfo<HotelMaterialListingVO> getHotelMaterial(){
return RespInfo.mobiSuccess(hotelMaterialListingService.getHotelMaterial()); return RespInfo.mobiSuccess(hotelMaterialListingService.getHotelMaterial());
} }
@ApiOperation("获取辖区编码")
@PostMapping("getAreaCode")
public RespInfo<List<OrgCodeVO>> getAreaCode(){
return RespInfo.mobiSuccess(hotelMaterialListingService.getAreaCode());
}
} }
package com.ihooyah.model.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ihooyah.model.pojo.entity.OrgPoliceCode;
import com.ihooyah.model.pojo.vo.OrgCodeVO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author ***
* @version V1.0
* @Description
* @Package com.ihooyah.model.mapper
* @date 2023-01-11 15:14
*/
@Repository
public interface OrgPoliceCodeMapper extends BaseMapper<OrgPoliceCode> {
/**
* @return @return {@link List }<{@link OrgCodeVO }>
* @create 2023/01/11
* @params 获取编码
* @description
**/
List<OrgCodeVO> getAreaCode();
}
package com.ihooyah.model.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author ***
* @version V1.0
* @Description
* @Package com.ihooyah.model.pojo.entity
* @date 2023-01-11 15:11
*/
@Data
@TableName(value = "org_police_code")
public class OrgPoliceCode {
@ApiModelProperty("主键code")
@TableId
private String orgCode;
@ApiModelProperty("父类code")
@TableField("parent_org_code")
private String parentOrgCode;
@ApiModelProperty("辖区名称")
@TableField("org_name")
private String orgName;
@ApiModelProperty("辖区等级")
@TableField("level")
private Integer level;
}
package com.ihooyah.model.pojo.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author ***
* @version V1.0
* @Description
* @Package com.ihooyah.model.pojo.vo
* @date 2023-01-11 15:16
*/
@Data
public class OrgCodeVO {
@ApiModelProperty("主键code")
private String orgCode;
@ApiModelProperty("父类code")
private String parentOrgCode;
@ApiModelProperty("辖区名称")
private String orgName;
@ApiModelProperty("辖区等级")
private Integer level;
@ApiModelProperty("子类")
private List<OrgCodeVO> children;
}
...@@ -4,6 +4,9 @@ package com.ihooyah.model.service; ...@@ -4,6 +4,9 @@ package com.ihooyah.model.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.ihooyah.model.pojo.entity.HotelMaterialListing; import com.ihooyah.model.pojo.entity.HotelMaterialListing;
import com.ihooyah.model.pojo.vo.HotelMaterialListingVO; import com.ihooyah.model.pojo.vo.HotelMaterialListingVO;
import com.ihooyah.model.pojo.vo.OrgCodeVO;
import java.util.List;
/** /**
* 旅馆材料清单 * 旅馆材料清单
...@@ -22,4 +25,12 @@ public interface HotelMaterialListingService extends IService<HotelMaterialListi ...@@ -22,4 +25,12 @@ public interface HotelMaterialListingService extends IService<HotelMaterialListi
* @description 获取材料清单信息 * @description 获取材料清单信息
**/ **/
HotelMaterialListingVO getHotelMaterial(); HotelMaterialListingVO getHotelMaterial();
/**
* @return @return {@link List }<{@link OrgCodeVO }>
* @create 2023/01/11
* @params 辖区编码树形查询
* @description
**/
List<OrgCodeVO> getAreaCode();
} }
\ No newline at end of file
...@@ -6,9 +6,12 @@ import com.alibaba.fastjson.JSON; ...@@ -6,9 +6,12 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ihooyah.Enum.MaterialEnum; import com.ihooyah.Enum.MaterialEnum;
import com.ihooyah.model.mapper.HotelMaterialListingMapper; import com.ihooyah.model.mapper.HotelMaterialListingMapper;
import com.ihooyah.model.mapper.OrgPoliceCodeMapper;
import com.ihooyah.model.pojo.entity.HotelMaterialListing; import com.ihooyah.model.pojo.entity.HotelMaterialListing;
import com.ihooyah.model.pojo.vo.HotelMaterialListingVO; import com.ihooyah.model.pojo.vo.HotelMaterialListingVO;
import com.ihooyah.model.pojo.vo.OrgCodeVO;
import com.ihooyah.model.service.HotelMaterialListingService; import com.ihooyah.model.service.HotelMaterialListingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.*; import java.util.*;
...@@ -26,6 +29,9 @@ import java.util.stream.Collectors; ...@@ -26,6 +29,9 @@ import java.util.stream.Collectors;
@Service @Service
public class HotelMaterialListingServiceImpl extends ServiceImpl<HotelMaterialListingMapper, HotelMaterialListing> implements HotelMaterialListingService { public class HotelMaterialListingServiceImpl extends ServiceImpl<HotelMaterialListingMapper, HotelMaterialListing> implements HotelMaterialListingService {
@Autowired
private OrgPoliceCodeMapper orgPoliceCodeMapper;
@Override @Override
public HotelMaterialListingVO getHotelMaterial() { public HotelMaterialListingVO getHotelMaterial() {
HotelMaterialListingVO materialListingVO = new HotelMaterialListingVO(); HotelMaterialListingVO materialListingVO = new HotelMaterialListingVO();
...@@ -48,4 +54,35 @@ public class HotelMaterialListingServiceImpl extends ServiceImpl<HotelMaterialLi ...@@ -48,4 +54,35 @@ public class HotelMaterialListingServiceImpl extends ServiceImpl<HotelMaterialLi
materialListingVO.setMaterialDownloadList(materialDownloadList); materialListingVO.setMaterialDownloadList(materialDownloadList);
return materialListingVO; return materialListingVO;
} }
@Override
public List<OrgCodeVO> getAreaCode() {
List<OrgCodeVO> policeCodeList = orgPoliceCodeMapper.getAreaCode();
return buildDeptTreeByStream(policeCodeList);
}
public static List<OrgCodeVO> buildDeptTreeByStream(List<OrgCodeVO> trees){
//获取parentId = 0的根节点
List<OrgCodeVO> list = trees.stream().filter(item -> ObjectUtil.equal(item.getParentOrgCode(),"0")).collect(Collectors.toList());
//根据parentId进行分组
Map<String, List<OrgCodeVO>> map = trees.stream().collect(Collectors.groupingBy(OrgCodeVO::getParentOrgCode));
recursionFnTree(list, map);
return list;
}
/**
* 递归遍历节点
* @param list
* @param map
*/
public static void recursionFnTree(List<OrgCodeVO> list, Map<String, List<OrgCodeVO>> map){
for (OrgCodeVO treeSelect : list) {
List<OrgCodeVO> childList = map.get(treeSelect.getOrgCode());
treeSelect.setChildren(childList);
if (null != childList && 0 < childList.size()){
recursionFnTree(childList,map);
}
}
}
} }
\ No newline at end of file
<?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.ihooyah.model.mapper.OrgPoliceCodeMapper">
<select id="getAreaCode" resultType="com.ihooyah.model.pojo.vo.OrgCodeVO">
select * from org_police_code where level in ('2','3','4') order by org_code
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment