package com.xiaopeng.operation.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.xiaopeng.api.model.operation.XpOpenCity;
import com.xiaopeng.api.model.operation.XpRegion;
import com.xiaopeng.common.core.constant.CacheConstants;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.redis.service.RedisService;
import com.xiaopeng.operation.query.getProvinceQuery;
import com.xiaopeng.operation.service.XpOpenCityService;
import com.xiaopeng.operation.service.XpRegionService;
import com.xiaopeng.operation.vo.RegionCascaderVO;
import com.xiaopeng.unifiedverification.interceptor.XpClientCheck;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
*
* 省市管理 前端控制器
*
*
*/
@Api(tags = "省市管理")
@RestController
public class XpRegionController {
private final XpRegionService regionService;
private final RedisService redisService;
private final XpOpenCityService openCityService;
@Autowired
public XpRegionController(XpRegionService regionService, RedisService redisService, XpOpenCityService openCityService) {
this.regionService = regionService;
this.redisService = redisService;
this.openCityService = openCityService;
}
/**
* 查询省市管理
*/
@ApiOperation(value = "查询省市管理",tags = {"小程序-省市管理"},response = XpRegion.class)
@GetMapping(value = "/base/v1/mini-program/open/t-region/getRegion")
@XpClientCheck(checkToken = false, checkOtpToken = true)
public R>> geXpRegion() {
return R.ok(regionService.getXpRegion());
}
/*
* 查询市
*/
@ApiOperation(value = "查询市",tags = {"小程序-查询市"},response = XpRegion.class)
@PostMapping(value = "/base/v1/mini-program/open/t-region/getProvince")
public R> getProvince(@RequestBody getProvinceQuery query) {
// 缓存数据
List