package com.nis.web.controller.sys; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.mvc.support.RedirectAttributes; import com.nis.domain.Page; import com.nis.domain.SysDataDictionaryName; import com.nis.util.CacheUtils; import com.nis.util.Constants; import com.nis.util.StringUtil; import com.nis.web.controller.BaseController; @Controller @RequestMapping(value = "${adminPath}/sys/dict") public class DictController extends BaseController { @RequiresPermissions("sys:dict:view") @RequestMapping(value = {"list", ""}) public String list(SysDataDictionaryName sysDictName,HttpServletRequest request, HttpServletResponse response, Model model) { if(sysDictName ==null){ sysDictName=new SysDataDictionaryName(); } Page page = dictService.findDictList(new Page(request, response), sysDictName); model.addAttribute("page", page); model.addAttribute("sysDataDictionaryName",sysDictName); return "/sys/dictList"; } /** * 进入字典添加或修改页面 * @param sysDictName * @param model * @return */ @RequestMapping(value={"form"}) public String form(@RequestParam(required=false) Integer id, Model model) { SysDataDictionaryName sysDictName=null; if (!StringUtil.isEmpty(id)){ sysDictName= dictService.getDictByIdWithRelation(id); }else{ sysDictName=new SysDataDictionaryName(); } model.addAttribute("sysDataDictionaryName",sysDictName); return "/sys/dictForm"; } @RequiresPermissions("sys:dict:edit") @RequestMapping(value = "saveOrUpdate") public String saveOrUpdate(SysDataDictionaryName sysDictName,Model model, RedirectAttributes redirectAttributes) { try { dictService.saveOrUpdate(sysDictName); //删除字典缓存 CacheUtils.remove(Constants.CACHE_DICT_MAP); addMessage(redirectAttributes,"success", "save_success"); } catch (Exception e) { e.printStackTrace(); addMessage(redirectAttributes,"error", "save_failed"); } return "redirect:" + adminPath + "/sys/dict/list"; } @RequiresPermissions("sys:dict:edit") @RequestMapping(value = "delete") public String delete(Integer id,Model model, RedirectAttributes redirectAttributes) { try { dictService.deleteDict(id); //删除字典缓存 CacheUtils.remove(Constants.CACHE_DICT_MAP); addMessage(redirectAttributes,"success", "delete_success"); } catch (Exception e) { e.printStackTrace(); addMessage(redirectAttributes,"error", "delete_failed"); } return "redirect:" + adminPath + "/sys/dict/list"; } @ResponseBody @RequestMapping(value = "loadDataDict") public SysDataDictionaryName loadDataDict(@RequestParam(required=false) Integer id,HttpServletRequest request, HttpServletResponse response, Model model){ return dictService.getDictByIdWithRelation(id); } @ResponseBody @RequestMapping(value = {"refreshCache"}) public String refreshCache(String cacheName){ // if(cacheName.equals(AsnCacheUtils.getCacheName())) { // AsnCacheUtils.clearCache(); // }else { //删除字典缓存 CacheUtils.remove(cacheName); /*}*/ return "success"; } }