You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
166 lines
4.5 KiB
166 lines
4.5 KiB
package com.ischoolbar.programmer.controller.admin;
|
|
|
|
import java.util.Date;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
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 org.springframework.web.servlet.ModelAndView;
|
|
|
|
import com.ischoolbar.programmer.entity.common.Account;
|
|
import com.ischoolbar.programmer.page.admin.Page;
|
|
import com.ischoolbar.programmer.service.common.AccountService;
|
|
|
|
@RequestMapping("/admin/account")
|
|
@Controller
|
|
public class AccountController {
|
|
|
|
@Autowired
|
|
private AccountService accountService;
|
|
|
|
|
|
@RequestMapping(value="/list",method=RequestMethod.GET)
|
|
public ModelAndView list(ModelAndView model){
|
|
model.setViewName("account/list");
|
|
return model;
|
|
}
|
|
|
|
|
|
@RequestMapping(value="/list",method=RequestMethod.POST)
|
|
@ResponseBody
|
|
public Map<String, Object> list(@RequestParam(name="name",defaultValue="")String name,
|
|
@RequestParam(name="sex",defaultValue="")Integer sex,
|
|
@RequestParam(name="status",defaultValue="")Integer status,
|
|
Page page
|
|
){
|
|
Map<String, Object> ret = new HashMap<String, Object>();
|
|
Map<String, Object> queryMap = new HashMap<String, Object>();
|
|
queryMap.put("name", name);
|
|
if(sex != null){
|
|
queryMap.put("sex", sex);
|
|
}
|
|
if(status != null){
|
|
queryMap.put("status", status);
|
|
}
|
|
queryMap.put("offset", page.getOffset());
|
|
queryMap.put("pageSize", page.getRows());
|
|
ret.put("rows", accountService.findList(queryMap));
|
|
ret.put("total", accountService.getTotal(queryMap));
|
|
return ret;
|
|
}
|
|
|
|
|
|
|
|
@RequestMapping(value="/add",method=RequestMethod.POST)
|
|
@ResponseBody
|
|
public Map<String, Object> add(Account account){
|
|
Map<String, Object> ret = new HashMap<String, Object>();
|
|
if(account == null){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误");
|
|
return ret;
|
|
}
|
|
if(StringUtils.isEmpty(account.getName())){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误");
|
|
return ret;
|
|
}
|
|
if(StringUtils.isEmpty(account.getPassword())){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
if(isExist(account.getName(), 0l)){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
account.setCreateTime(new Date());
|
|
if(accountService.add(account) <= 0){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
ret.put("type", "success");
|
|
ret.put("msg", "成功!");
|
|
return ret;
|
|
}
|
|
|
|
|
|
@RequestMapping(value="/edit",method=RequestMethod.POST)
|
|
@ResponseBody
|
|
public Map<String, Object> edit(Account account){
|
|
Map<String, Object> ret = new HashMap<String, Object>();
|
|
if(account == null){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误");
|
|
return ret;
|
|
}
|
|
if(StringUtils.isEmpty(account.getName())){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误");
|
|
return ret;
|
|
}
|
|
if(StringUtils.isEmpty(account.getPassword())){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
if(isExist(account.getName(), account.getId())){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
if(accountService.edit(account) <= 0){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
ret.put("type", "success");
|
|
ret.put("msg", "成功!");
|
|
return ret;
|
|
}
|
|
|
|
@RequestMapping(value="/delete",method=RequestMethod.POST)
|
|
@ResponseBody
|
|
public Map<String, Object> delete(Long id){
|
|
Map<String, Object> ret = new HashMap<String, Object>();
|
|
if(id == null){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误");
|
|
return ret;
|
|
}
|
|
|
|
try {
|
|
if(accountService.delete(id) <= 0){
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
} catch (Exception e) {
|
|
// TODO: handle exception
|
|
ret.put("type", "error");
|
|
ret.put("msg", "错误!");
|
|
return ret;
|
|
}
|
|
|
|
ret.put("type", "success");
|
|
ret.put("msg", "成功!");
|
|
return ret;
|
|
}
|
|
|
|
|
|
private boolean isExist(String name,Long id){
|
|
Account account = accountService.findByName(name);
|
|
if(account == null)return false;
|
|
if(account.getId().longValue() == id.longValue())return false;
|
|
return true;
|
|
}
|
|
}
|