d6d619cef4c8a79d119daff66faa1f7bbfcf66a6.svn-base 4.06 KB
/**
 * Copyright &copy; 2012-2014 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.reg.web.base;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;

import com.thinkgem.jeesite.common.config.Global;
import com.thinkgem.jeesite.common.persistence.Page;
import com.thinkgem.jeesite.common.web.BaseController;
import com.thinkgem.jeesite.common.utils.StringUtils;
import com.thinkgem.jeesite.modules.reg.entity.base.RegBaseZdjbxx;
import com.thinkgem.jeesite.modules.reg.service.base.RegBaseZdjbxxService;

/**
 * 历史宗地基本信息表单维护Controller 只能管理历史宗地信息
 * @author xuyg
 * @version 2015-10-07
 */
@Controller
@RequestMapping(value = "${adminPath}/reg/base/regBaseZdjbxxHis")
public class RegBaseZdjbxxHisController extends BaseController {

	@Autowired
	private RegBaseZdjbxxService regBaseZdjbxxService;
	
	@ModelAttribute
	public RegBaseZdjbxx get(@RequestParam(required=false) String id) {
		RegBaseZdjbxx entity = null;
		if (StringUtils.isNotBlank(id)){
			entity = regBaseZdjbxxService.get(id);
		}
		if (entity == null){
			entity = new RegBaseZdjbxx();
		}
		return entity;
	}
	
	@RequiresPermissions("reg:base:regBaseZdjbxxHis:view")
	@RequestMapping(value = {"hislist", ""})
	public String hislist(RegBaseZdjbxx regBaseZdjbxx, HttpServletRequest request, HttpServletResponse response, Model model) {
		regBaseZdjbxx.setHistory("1");
		Page<RegBaseZdjbxx> page = regBaseZdjbxxService.findPage(new Page<RegBaseZdjbxx>(request, response), regBaseZdjbxx); 
		model.addAttribute("page", page);
		return "modules/reg/base/regBaseZdjbxxHisList";
	}

	@RequiresPermissions("reg:base:regBaseZdjbxxHis:view")
	@RequestMapping(value = "hisform")
	public String hisform(RegBaseZdjbxx regBaseZdjbxx, Model model, HttpServletRequest request) {
		model.addAttribute("regBaseZdjbxx", regBaseZdjbxx);
		if(StringUtils.isNotBlank(request.getParameter("VIEWS"))){
			model.addAttribute("VIEWS", request.getParameter("VIEWS"));
		}
		return "modules/reg/base/regBaseZdjbxxHisForm";
	}

	@RequiresPermissions("reg:base:regBaseZdjbxxHis:edit")
	@RequestMapping(value = "hissave")
	public String hissave(RegBaseZdjbxx regBaseZdjbxx, Model model, RedirectAttributes redirectAttributes, HttpServletRequest request) {
		if (!beanValidator(model, regBaseZdjbxx)){
			return hisform(regBaseZdjbxx, model, request);
		}
		/*
		//构造宗地号
		String maxZddmSxh = regBaseZdjbxxService.findMaxZddmByDistrict(regBaseZdjbxx.getZddm());//使用当前宗地代码
		String ruleCode = regBaseZdjbxx.getZddm() + regBaseZdjbxx.getTdsyqdm() + regBaseZdjbxx.getZdtzm();
		String nextZddm = getNextZddm(maxZddmSxh, ruleCode);
		//宗地代码跟不动产单元号同时生成
		regBaseZdjbxx.setZddm(nextZddm);
		regBaseZdjbxx.setBdcdyh(nextZddm + "W00000000");
		*/
		regBaseZdjbxx.setBdcdyh(regBaseZdjbxx.getZddm() + "W00000000");//土地不动产单元号=宗地代码+W00000000
		
		if(StringUtils.isBlank(regBaseZdjbxx.getId())){
			regBaseZdjbxx.setHistory("1");
		}
		regBaseZdjbxxService.save(regBaseZdjbxx);
		addMessage(redirectAttributes, "保存宗地基本信息成功");
		return "redirect:"+Global.getAdminPath()+"/reg/base/regBaseZdjbxxHis/?repage";
	}
	
	@RequiresPermissions("reg:base:regBaseZdjbxxHis:edit")
	@RequestMapping(value = "hisdelete")
	public String hisdelete(RegBaseZdjbxx regBaseZdjbxx, RedirectAttributes redirectAttributes) {
		regBaseZdjbxxService.delete(regBaseZdjbxx);
		addMessage(redirectAttributes, "删除宗地基本信息成功");
		return "redirect:"+Global.getAdminPath()+"/reg/base/regBaseZdjbxxHis/?repage";
	}

}