// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/City.java
// @Data
// @NoArgsConstructor
// public class City extends AbstractAuditingEntity implements Serializable {
//     private static final long serialVersionUID = 1L;
//     
//     /**
//      * 城市id
//      */
//     private Long              id;
// 
//     private String            name;
// 
//     private String            state;
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/dto/CityDtoMapper.java
// @Mapper
// public interface CityDtoMapper {
//     InsertCityRequestDto cityToDto(City city);
//     City cityDto2City(InsertCityRequestDto insertCityRequestDto);
//     City cityDto2City(UpdateCityRequestDto updateCityRequestDto);
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/dto/InsertCityRequestDto.java
// @Data
// public class InsertCityRequestDto {
//     @NotNull
//     private String name;
//     
//     @NotNull
//     private String state;
//     
//     
//     public static void main(String[] args) {
//         City city = new City();
//         city.setId(12L);
//         city.setName("na");
//         city.setState("shandong");
//         CityDtoMapper cityDtoMapper = new CityDtoMapperImpl();
//         InsertCityRequestDto insertCityRequestDto = cityDtoMapper.cityToDto(city);
//         System.out.println(insertCityRequestDto);
//     }
//     
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/dto/UpdateCityRequestDto.java
// @Data
// @NoArgsConstructor
// public class UpdateCityRequestDto {
//     @NotNull
//     private Long id;
//     
//     private String name;
//     
//     private String state;
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/mapper/CityMapper.java
// @UseDataSourceTest
// public interface CityMapper {
//     int deleteByPrimaryKey(Long id);
//     
//     int insert(City record);
// 
//     int insertSelective(City record);
// 
//     City selectByPrimaryKey(Long id);
// 
//     int updateByPrimaryKeySelective(City record);
// 
//     int updateByPrimaryKey(City record);
// }


import com.doctor.beaver.domain.result.ModelResult;
import com.sdcuike.practice.domain.City;
import com.sdcuike.practice.domain.dto.CityDtoMapper;
import com.sdcuike.practice.domain.dto.InsertCityRequestDto;
import com.sdcuike.practice.domain.dto.UpdateCityRequestDto;
import com.sdcuike.practice.mapper.CityMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
package com.sdcuike.practice.controller;


/**
 * Created by beaver on 2017/4/25.
 */
@RestController
@RequestMapping(path = "/city", produces = MediaType.APPLICATION_JSON_VALUE)
@Slf4j
public class CityController {
    @Autowired
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/City.java
// @Data
// @NoArgsConstructor
// public class City extends AbstractAuditingEntity implements Serializable {
//     private static final long serialVersionUID = 1L;
//     
//     /**
//      * 城市id
//      */
//     private Long              id;
// 
//     private String            name;
// 
//     private String            state;
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/dto/CityDtoMapper.java
// @Mapper
// public interface CityDtoMapper {
//     InsertCityRequestDto cityToDto(City city);
//     City cityDto2City(InsertCityRequestDto insertCityRequestDto);
//     City cityDto2City(UpdateCityRequestDto updateCityRequestDto);
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/dto/InsertCityRequestDto.java
// @Data
// public class InsertCityRequestDto {
//     @NotNull
//     private String name;
//     
//     @NotNull
//     private String state;
//     
//     
//     public static void main(String[] args) {
//         City city = new City();
//         city.setId(12L);
//         city.setName("na");
//         city.setState("shandong");
//         CityDtoMapper cityDtoMapper = new CityDtoMapperImpl();
//         InsertCityRequestDto insertCityRequestDto = cityDtoMapper.cityToDto(city);
//         System.out.println(insertCityRequestDto);
//     }
//     
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/domain/dto/UpdateCityRequestDto.java
// @Data
// @NoArgsConstructor
// public class UpdateCityRequestDto {
//     @NotNull
//     private Long id;
//     
//     private String name;
//     
//     private String state;
// }
// 
// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/mapper/CityMapper.java
// @UseDataSourceTest
// public interface CityMapper {
//     int deleteByPrimaryKey(Long id);
//     
//     int insert(City record);
// 
//     int insertSelective(City record);
// 
//     City selectByPrimaryKey(Long id);
// 
//     int updateByPrimaryKeySelective(City record);
// 
//     int updateByPrimaryKey(City record);
// }


// Path: spring-boot-oauth-authorization-server/src/main/java/com/sdcuike/practice/controller/CityController.java
import com.doctor.beaver.domain.result.ModelResult;
import com.sdcuike.practice.domain.City;
import com.sdcuike.practice.domain.dto.CityDtoMapper;
import com.sdcuike.practice.domain.dto.InsertCityRequestDto;
import com.sdcuike.practice.domain.dto.UpdateCityRequestDto;
import com.sdcuike.practice.mapper.CityMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

package com.sdcuike.practice.controller;


/**
 * Created by beaver on 2017/4/25.
 */
@RestController
@RequestMapping(path = "/city", produces = MediaType.APPLICATION_JSON_VALUE)
@Slf4j
public class CityController {
    @Autowired
    private CityMapper cityMapper;