重点城市
This commit is contained in:
@@ -10,6 +10,7 @@ import com.google.common.collect.Maps;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.collections4.ListUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
@@ -29,8 +30,8 @@ public class HyOpenAreaInfoDAO {
|
||||
@Resource
|
||||
HyOpenAreaInfoMapper hyOpenAreaInfoMapper;
|
||||
|
||||
public List<HyOpenAreaInfoDO> queryKeyOpenArea(){
|
||||
return hyOpenAreaInfoMapper.queryKeyOpenArea();
|
||||
public List<HyOpenAreaInfoDO> queryKeyOpenArea(String keyword,Integer keyOpenStatus){
|
||||
return hyOpenAreaInfoMapper.queryKeyOpenArea( keyword, keyOpenStatus);
|
||||
}
|
||||
|
||||
public List<HyOpenAreaInfoDO> queryByKeyword(String keyword,Boolean applyFlag,String areaStatus,Boolean filterData){
|
||||
|
||||
@@ -29,7 +29,7 @@ public interface HyOpenAreaInfoMapper {
|
||||
* 查询重点城市
|
||||
* @return
|
||||
*/
|
||||
List<HyOpenAreaInfoDO> queryKeyOpenArea();
|
||||
List<HyOpenAreaInfoDO> queryKeyOpenArea(@Param("keyword") String keyword,@Param("keyOpenStatus") Integer keyOpenStatus);
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -26,6 +26,9 @@
|
||||
<insert id="insertSelective" parameterType="com.cool.store.entity.HyOpenAreaInfoDO" keyProperty="record.id" useGeneratedKeys="true">
|
||||
insert into xfsg_open_area_info
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="record.id != null">
|
||||
id,
|
||||
</if>
|
||||
<if test="record.parentId != null">
|
||||
parent_id,
|
||||
</if>
|
||||
@@ -58,6 +61,9 @@
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="record.id != null">
|
||||
#{record.id},
|
||||
</if>
|
||||
<if test="record.parentId != null">
|
||||
#{record.parentId},
|
||||
</if>
|
||||
@@ -185,8 +191,12 @@
|
||||
select * from
|
||||
xfsg_open_area_info
|
||||
where area_status = 'keyOpen'
|
||||
and province_city_flag = 1
|
||||
and parent_id is not null
|
||||
<if test="keyword!=null and keyword!=''">
|
||||
and area_name like CONCAT('%',#{keyword},'%')
|
||||
</if>
|
||||
<if test="keyOpenStatus!=null">
|
||||
and key_open_status = #{keyOpenStatus}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="queryByKeyword" resultMap="BaseResultMap">
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.cool.store.dto;
|
||||
|
||||
import com.cool.store.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2024/3/25 17:03
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class OpenCityDTO {
|
||||
|
||||
@Excel(name = "CODE", width = 10)
|
||||
private Integer code;
|
||||
@Excel(name = "NAME", width = 20)
|
||||
private String name;
|
||||
|
||||
private String path;
|
||||
|
||||
}
|
||||
@@ -50,4 +50,6 @@ public class HyOpenAreaInfoDO implements Serializable {
|
||||
|
||||
@ApiModelProperty("更新人")
|
||||
private String updateUserId;
|
||||
@ApiModelProperty("重点开放城市状态 0-开启 1-禁用")
|
||||
private Integer keyOpenStatus;
|
||||
}
|
||||
@@ -188,5 +188,8 @@ public class LineInfoVO {
|
||||
@ApiModelProperty("更新人")
|
||||
private String updateUserId;
|
||||
|
||||
@ApiModelProperty("公开拒绝原因")
|
||||
private String rejectPublicReason;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -46,4 +46,7 @@ public class OpenAreaVO {
|
||||
@ApiModelProperty("更新人")
|
||||
private String updateUserId;
|
||||
|
||||
@ApiModelProperty("重点开放城市状态 0-开启 1-禁用")
|
||||
private Integer keyOpenStatus;
|
||||
|
||||
}
|
||||
|
||||
@@ -51,8 +51,16 @@ public interface OpenAreaService {
|
||||
Boolean batchUpdate(String userId, OpenAreaRequest openAreaRequest);
|
||||
|
||||
|
||||
PageInfo<OpenAreaVO> queryKeyOpenAreaList(Integer pageSize, Integer pageNumber);
|
||||
PageInfo<OpenAreaVO> queryKeyOpenAreaList(Integer pageSize, Integer pageNumber,String keyWord,Integer status);
|
||||
|
||||
|
||||
/**
|
||||
* 可加盟省份
|
||||
* @param pageSize
|
||||
* @param pageNumber
|
||||
* @return
|
||||
*/
|
||||
PageInfo<OpenAreaVO> franchisableProvinces(Integer pageSize, Integer pageNumber);
|
||||
/**
|
||||
* V1.4
|
||||
* 意向区域添加不限
|
||||
|
||||
@@ -153,9 +153,9 @@ public class OpenAreaServiceImpl implements OpenAreaService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageInfo<OpenAreaVO> queryKeyOpenAreaList(Integer pageSize, Integer pageNumber) {
|
||||
public PageInfo<OpenAreaVO> queryKeyOpenAreaList(Integer pageSize, Integer pageNumber,String keyWord,Integer status) {
|
||||
PageHelper.startPage(pageNumber,pageSize);
|
||||
List<HyOpenAreaInfoDO> hyOpenAreaInfoDOS = hyOpenAreaInfoDAO.queryKeyOpenArea();
|
||||
List<HyOpenAreaInfoDO> hyOpenAreaInfoDOS = hyOpenAreaInfoDAO.queryKeyOpenArea(keyWord,status);
|
||||
PageInfo hyOpenAreaInfoDOPageInfo = new PageInfo<>(hyOpenAreaInfoDOS);
|
||||
if (hyOpenAreaInfoDOPageInfo==null){
|
||||
return new PageInfo<>();
|
||||
@@ -169,6 +169,19 @@ public class OpenAreaServiceImpl implements OpenAreaService {
|
||||
return hyOpenAreaInfoDOPageInfo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageInfo<OpenAreaVO> franchisableProvinces(Integer pageSize, Integer pageNumber) {
|
||||
PageHelper.startPage(pageNumber,pageSize);
|
||||
List<HyOpenAreaInfoDO> openArea = hyOpenAreaInfoDAO.queryFirstLevel();
|
||||
PageInfo hyOpenAreaInfoDOPageInfo = new PageInfo<>(openArea);
|
||||
List<OpenAreaVO> list = new ArrayList<>();
|
||||
List<HyOpenAreaInfoDO> hyOpenAreaInfoDOList = hyOpenAreaInfoDOPageInfo.getList();
|
||||
hyOpenAreaInfoDOList.stream().forEach(x->{
|
||||
list.add(convertDoToVo(x));
|
||||
});
|
||||
hyOpenAreaInfoDOPageInfo.setList(list);
|
||||
return hyOpenAreaInfoDOPageInfo;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
@@ -199,6 +212,7 @@ public class OpenAreaServiceImpl implements OpenAreaService {
|
||||
openAreaVO.setAreaStatus(hyOpenAreaInfoDO.getAreaStatus());
|
||||
openAreaVO.setBackgroundBanner(hyOpenAreaInfoDO.getBackgroundBanner());
|
||||
openAreaVO.setDetailBanner(hyOpenAreaInfoDO.getDetailBanner());
|
||||
openAreaVO.setKeyOpenStatus(hyOpenAreaInfoDO.getKeyOpenStatus());
|
||||
return openAreaVO;
|
||||
}
|
||||
|
||||
|
||||
@@ -218,7 +218,7 @@ public class ExcelUtil<T> {
|
||||
// 定义一个map用于存放excel列的序号和field.
|
||||
Map<String, Integer> cellMap = new HashMap<>(16);
|
||||
// 获取表头
|
||||
Row heard = sheet.getRow(6);
|
||||
Row heard = sheet.getRow(0);
|
||||
for (int i = 0; i < heard.getPhysicalNumberOfCells(); i++) {
|
||||
Cell cell = heard.getCell(i);
|
||||
if (ObjectUtil.isNotNull(cell)) {
|
||||
@@ -1132,8 +1132,8 @@ public class ExcelUtil<T> {
|
||||
*/
|
||||
private List<T> fillCollection(Sheet sheet, int rows, Map<Integer, Field> fieldsMap) throws InstantiationException, IllegalAccessException {
|
||||
List<T> list = new ArrayList<>();
|
||||
int j=10;
|
||||
for (int i = 0; i < rows-5; i++) {
|
||||
int j=1;
|
||||
for (int i = 0; i < rows-1; i++) {
|
||||
// 从第2行开始取数据,默认第一行是表头.
|
||||
Row row = sheet.getRow(j);
|
||||
j++;
|
||||
|
||||
@@ -71,9 +71,11 @@ public class OpenAreaController {
|
||||
|
||||
@GetMapping(path = "/getKeyOpenAreaList")
|
||||
@ApiOperation("重点城市列表")
|
||||
public ResponseResult<PageInfo<OpenAreaVO>> getKeyOpenAreaList(@RequestParam(value = "pageNumber",required = false,defaultValue = "1")Integer pageNumber,
|
||||
@RequestParam(value = "pageSize",required = false,defaultValue = "10")Integer pageSize ){
|
||||
return ResponseResult.success(openAreaService.queryKeyOpenAreaList(pageSize,pageNumber));
|
||||
public ResponseResult<PageInfo<OpenAreaVO>> getKeyOpenAreaList(@RequestParam(value = "pageNumber",required = true,defaultValue = "1")Integer pageNumber,
|
||||
@RequestParam(value = "pageSize",required = true,defaultValue = "10")Integer pageSize,
|
||||
@RequestParam(value = "keyword",required = false)String keyword,
|
||||
@RequestParam(value = "status",required = false)Integer status ){
|
||||
return ResponseResult.success(openAreaService.queryKeyOpenAreaList(pageSize,pageNumber,keyword,status));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -57,7 +57,15 @@ public class MiniOpenAreaController {
|
||||
@ApiOperation("重点开放城市列表)")
|
||||
public ResponseResult<PageInfo<OpenAreaVO>> getOpenAreaList(@RequestParam(value = "pageNumber",required = false,defaultValue = "1")Integer pageNumber,
|
||||
@RequestParam(value = "pageSize",required = false,defaultValue = "10")Integer pageSize){
|
||||
PageInfo<OpenAreaVO> openAreaVOPageInfo = openAreaService.queryKeyOpenAreaList(pageSize, pageNumber);
|
||||
PageInfo<OpenAreaVO> openAreaVOPageInfo = openAreaService.queryKeyOpenAreaList(pageSize, pageNumber,null,null);
|
||||
return ResponseResult.success(openAreaVOPageInfo);
|
||||
}
|
||||
|
||||
@GetMapping(path = "/franchisableProvinces")
|
||||
@ApiOperation("可申请省份)")
|
||||
public ResponseResult<PageInfo<OpenAreaVO>> franchisableProvinces(@RequestParam(value = "pageNumber",required = false,defaultValue = "1")Integer pageNumber,
|
||||
@RequestParam(value = "pageSize",required = false,defaultValue = "10")Integer pageSize){
|
||||
PageInfo<OpenAreaVO> openAreaVOPageInfo = openAreaService.franchisableProvinces(pageSize, pageNumber);
|
||||
return ResponseResult.success(openAreaVOPageInfo);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,20 +1,26 @@
|
||||
package com.cool.store.controller.webc;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.dao.*;
|
||||
import com.cool.store.dto.OpenCityDTO;
|
||||
import com.cool.store.entity.*;
|
||||
import com.cool.store.mapper.HyOpenAreaInfoMapper;
|
||||
import com.cool.store.response.ResponseResult;
|
||||
import com.cool.store.utils.poi.ExcelUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/test")
|
||||
@RequestMapping("/pc/test")
|
||||
public class TestController {
|
||||
|
||||
@Resource
|
||||
@@ -35,6 +41,79 @@ public class TestController {
|
||||
@Resource
|
||||
private UserRegionMappingDAO userRegionMappingDAO;
|
||||
|
||||
|
||||
@PostMapping("/importCity")
|
||||
public ResponseResult<Integer> importCity(MultipartFile file){
|
||||
ExcelUtil<OpenCityDTO> util = new ExcelUtil<>(OpenCityDTO.class);
|
||||
try {
|
||||
List<OpenCityDTO> lineDOList = util.importExcel(file.getInputStream());
|
||||
get(lineDOList);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return ResponseResult.success(0);
|
||||
}
|
||||
|
||||
@Resource
|
||||
HyOpenAreaInfoMapper hyOpenAreaInfoMapper;
|
||||
|
||||
public Integer get(List<OpenCityDTO> importTask) {
|
||||
List<OpenCityDTO> codes = new ArrayList<>();
|
||||
try {
|
||||
List<OpenCityDTO> acityDTOS = importTask;
|
||||
HashMap<Integer, String> first = new HashMap<>(8);
|
||||
for (OpenCityDTO acityDTO : acityDTOS){
|
||||
Integer code = acityDTO.getCode();
|
||||
//如果code后面三位都是0
|
||||
int i = code % 10000;
|
||||
if (i == 0){
|
||||
//表示是一级菜单
|
||||
acityDTO.setPath("/"+acityDTO.getName()+"/");
|
||||
first.put(code / 10000,acityDTO.getName());
|
||||
HyOpenAreaInfoDO hyOpenAreaInfoDO = new HyOpenAreaInfoDO();
|
||||
hyOpenAreaInfoDO.setAreaPath(acityDTO.getPath());
|
||||
hyOpenAreaInfoDO.setId(acityDTO.getCode().longValue());
|
||||
hyOpenAreaInfoDO.setAreaName(acityDTO.getName());
|
||||
hyOpenAreaInfoDO.setAreaStatus("open");
|
||||
hyOpenAreaInfoMapper.insertSelective(hyOpenAreaInfoDO);
|
||||
continue;
|
||||
}
|
||||
//二级菜单
|
||||
int j = code % 100;
|
||||
if (j == 0){
|
||||
//北京市直辖市
|
||||
String name = acityDTO.getName();
|
||||
//code
|
||||
int k = code / 10000;
|
||||
String firstName = first.get(k);
|
||||
if (firstName == null){
|
||||
codes.add(acityDTO);
|
||||
log.info("========================={}",acityDTO);
|
||||
continue;
|
||||
}
|
||||
// 先对name中相同的字段进行去重
|
||||
String newName = name.replace(firstName, "");
|
||||
// 然后拼接path
|
||||
acityDTO.setPath("/"+firstName+"/"+newName+"/");
|
||||
acityDTO.setName(newName);
|
||||
HyOpenAreaInfoDO hyOpenAreaInfoDO = new HyOpenAreaInfoDO();
|
||||
hyOpenAreaInfoDO.setAreaPath(acityDTO.getPath());
|
||||
hyOpenAreaInfoDO.setId(acityDTO.getCode().longValue());
|
||||
hyOpenAreaInfoDO.setAreaName(acityDTO.getName());
|
||||
hyOpenAreaInfoDO.setAreaStatus("open");
|
||||
hyOpenAreaInfoDO.setParentId(k*10000L);
|
||||
hyOpenAreaInfoMapper.insertSelective(hyOpenAreaInfoDO);
|
||||
}
|
||||
|
||||
}
|
||||
System.out.println(JSONObject.toJSONString(codes));
|
||||
} catch (Exception e) {
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@GetMapping("/getUserInfo")
|
||||
public ResponseResult getUserInfo(@RequestParam("userId")String userId){
|
||||
EnterpriseUserDO enterpriseUser = enterpriseUserDAO.getUserInfoById(userId);
|
||||
|
||||
Reference in New Issue
Block a user