package com.izouma.awesomeadmin.web;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import com.izouma.awesomeadmin.constant.AppConstant;
import com.izouma.awesomeadmin.dto.Page;
import com.izouma.awesomeadmin.dto.Result;
import com.izouma.awesomeadmin.model.GenTestTable;
import com.izouma.awesomeadmin.service.GenTestTableService;

/**
 * gen_test_table controller类
 * Fri Apr 20 09:24:30 CST 2018  Suo Chen Cheng
 */ 
@Controller
@RequestMapping("/genTestTable")
public class GenTestTableController extends BaseController  {

	@Autowired
	private GenTestTableService genTestTableService;

	/**
	 * <p>获取全部记录。</p>
	 */ 
	@RequestMapping(value = "/all", method = RequestMethod.GET)
	@ResponseBody
	public Result all(GenTestTable record) {

		List <GenTestTable> pp = genTestTableService.getGenTestTableList(record);
		return new Result(true, pp);
	}

	/**
	 * <p>根据Id。</p>
	 */ 
	@RequestMapping(value = "/getGenTestTable", method = RequestMethod.GET)
	@ResponseBody
	public Result getGenTestTable(@RequestParam(required = false, value = "id") String id) {

		GenTestTable data = genTestTableService.getGenTestTableById(id);
		return new Result(true, data);
	}

	/**
	 * <p>根据条件获取。</p>
	 */ 
	@RequestMapping(value = "/getOne", method = RequestMethod.GET)
	@ResponseBody
	public Result getOne(GenTestTable record) {

		GenTestTable data = genTestTableService.getGenTestTable(record);
		return new Result(true, data);
	}

	/**
	 * <p>分页查询。</p>
	 */ 
	@RequestMapping(value = "/page", method = RequestMethod.GET)
	@ResponseBody
	public Result page(Page page, GenTestTable record) {

		Map <String, Object> result = new HashMap <>();

		List <GenTestTable> pp = genTestTableService.getGenTestTableByPage(page, record);

		result.put(AppConstant.PAGE, page);
		result.put("pp", pp);
		return new Result(true, result);
	}

	/**
	 * <p>保存。</p>
	 */ 
	@RequestMapping(value = "/save", method = RequestMethod.POST)
	@ResponseBody
	public Result save(GenTestTable record) {

		boolean num = genTestTableService.createGenTestTable(record);
		if (num) {
			return new Result(true, record.getId());
		}
		return new Result(false, "保存异常");
	}

	/**
	 * <p>更新信息。</p>
	 */ 
	@RequestMapping(value = "/update", method = RequestMethod.POST)
	@ResponseBody
	public Result updateGenTestTable(GenTestTable record) {

		boolean num = genTestTableService.updateGenTestTable(record);
		if (num) {
			return new Result(true, "保存成功");
		}
		return new Result(false, "保存异常");
	}

	/**
	 * <p>删除。</p>
	 */ 
	@RequestMapping(value = "/del", method = RequestMethod.POST)
	@ResponseBody
	public Result deleteGenTestTable(@RequestParam(required = true, value = "id") String id) {

		boolean num = genTestTableService.deleteGenTestTable(id);
		if (num) {
			return new Result(true, "删除成功");
		}
		return new Result(false, "删除异常");
	}

}

