package com.landtool.lanbase.modules.org.controller;
|
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiParam;
|
|
import java.util.Date;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.authz.annotation.Logical;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
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.RestController;
|
|
import com.landtool.lanbase.modules.org.entity.OrgRegion;
|
import com.landtool.lanbase.modules.org.service.OrgRegionService;
|
import com.landtool.lanbase.modules.sys.controller.AbstractController;
|
import com.alibaba.fastjson.JSONObject;
|
import com.landtool.lanbase.common.annotation.LogAction;
|
import com.landtool.lanbase.common.annotation.SysLog;
|
import com.landtool.lanbase.common.utils.PageUtils;
|
import com.landtool.lanbase.common.utils.Query;
|
import com.landtool.lanbase.common.utils.Result;
|
import com.landtool.lanbase.modules.org.entity.OrgUser;
|
/**
|
* @author lanbase
|
* @Description: TODO(行政区划管理表)
|
* @date 2018-01-15 17:48:57
|
*/
|
@RestController
|
@RequestMapping("/org/region")
|
@Api(value = "", tags = {"行政区划"})
|
public class OrgRegionController extends AbstractController{
|
|
@Autowired
|
private OrgRegionService regionService;
|
|
/**
|
* 行政区划列表
|
*/
|
@RequestMapping(value ="/list", method ={RequestMethod.POST, RequestMethod.GET})
|
// @RequiresPermissions("org:region:list")
|
@RequiresPermissions(value={"org:region:list","org:region:edit"},logical= Logical.OR)
|
@ApiOperation(
|
value = "行政区划列表",
|
notes = "所有行政区划列表"
|
)
|
@LogAction("用户管理,行政区划管理,行政区划查询,查询")
|
public Result list(@ApiParam(name="params",value="行政区划集合",required=true)@RequestParam Map<String, Object> params){
|
//查询列表数据
|
Query query = new Query(params);
|
if(query.get("approvelevel") != null && query.get("approvelevel").toString().trim().length()!=0){
|
String approvelevels = "";
|
String[] approvelevelList = query.get("approvelevel").toString().split(",");
|
for(int i=0;i<approvelevelList.length;i++){
|
approvelevels+="\'"+approvelevelList[i]+"\',";
|
}
|
if(approvelevels.length()!=0){
|
approvelevels = approvelevels.substring(0, approvelevels.length()-1);
|
}
|
query.replace("approvelevel", approvelevels);
|
}
|
List<OrgRegion> regionList = regionService.queryList(query);
|
int total = regionService.queryTotal(query);
|
PageUtils pageUtil = new PageUtils(regionList, total, query.getLimit(), query.getPage());
|
return Result.ok().put("page", pageUtil);
|
}
|
|
|
/**
|
* 信息
|
*/
|
@GetMapping("/info/{regionid}")
|
// @RequiresPermissions("org:region:list")
|
@RequiresPermissions(value={"org:region:list","org:region:edit"},logical= Logical.OR)
|
@ApiOperation(
|
value = "行政区划信息",
|
notes = ""
|
)
|
public Result info(@ApiParam(name="regionid",value="行政区划Id",required=true)@PathVariable("regionid") String regionid){
|
OrgRegion region = regionService.queryObject(regionid);
|
return Result.ok().put("region", region);
|
}
|
|
/**
|
* 保存
|
*/
|
@LogAction("用户管理,行政区划管理,行政区划新增,新增")
|
@SysLog("保存行政区划")
|
@PostMapping("/save")
|
@RequiresPermissions("org:region:edit")
|
@ApiOperation(
|
value = "保存行政区划",
|
notes = ""
|
)
|
public Result save(@ApiParam(name="行政区划对象",value="传入json格式",required=true)@RequestBody OrgRegion region){
|
OrgUser user = (OrgUser) SecurityUtils.getSubject().getPrincipal();
|
OrgRegion orgxzqh = regionService.queryObject(region.getRegionid());
|
if(orgxzqh != null) return Result.error("数据库中已存在该记录!");
|
region.setSpellfirst(region.getSpellfirst().toUpperCase());//首字母小写转化大写
|
region.setRcreateuser(user.getUserid());
|
region.setRcreatedate(new Date());
|
region.setRlasteditdate(new Date());
|
int rorder = regionService.queryMaxRorder(region.getParentid().toString())+1;
|
region.setRorder((long)rorder);
|
regionService.save(region);
|
return Result.ok().put("regionid",region.getRegionid());
|
}
|
|
/**
|
* 修改
|
*/
|
@LogAction("用户管理,行政区划管理,行政区划修改,修改")
|
@SysLog("修改行政区划")
|
@PostMapping("/update")
|
@RequiresPermissions("org:region:edit")
|
@ApiOperation(
|
value = "修改行政区划",
|
notes = ""
|
)
|
public Result update(@ApiParam(name="行政区划对象",value="传入json格式",required=true)@RequestBody OrgRegion region){
|
region.setSpellfirst(region.getSpellfirst().toUpperCase());//首字母小写转化大写
|
region.setRlasteditdate(new Date());
|
regionService.update(region);
|
|
return Result.ok();
|
}
|
|
/**
|
* 删除
|
*/
|
@LogAction("用户管理,行政区划管理,行政区划删除,删除")
|
@SysLog("删除行政区划")
|
@PostMapping("/delete")
|
@RequiresPermissions("org:region:edit")
|
@ApiOperation(
|
value = "删除行政区划",
|
notes = ""
|
)
|
public Result delete(@ApiParam(name="regionidids",value="行政区划Id",required=true)@RequestBody String[] regionidids){
|
regionService.deleteBatch(regionidids);
|
|
return Result.ok();
|
}
|
|
/**
|
* 显示行政区划信息
|
*/
|
@SysLog("显示行政区划信息")
|
@PostMapping("/queryRegion")
|
@ApiOperation(
|
value = "显示行政区划信息",
|
notes = ""
|
)
|
public Map<String, Object> queryRegion(){
|
Map<String, Object> map = new HashMap<String,Object>();
|
List<OrgRegion> regionList = regionService.queryRegion();
|
map.put("regionList", regionList);
|
return map;
|
}
|
|
/**
|
* 所有行政区划列表
|
*/
|
@RequestMapping(value ="/queryUnitTreeList", method ={RequestMethod.GET})
|
// @RequiresPermissions("org:region:list")
|
@RequiresPermissions(value={"org:region:list","org:region:edit"},logical= Logical.OR)
|
@ApiOperation(
|
value = "行政区划列表",
|
notes = "所有行政区划列表"
|
)
|
public Result queryUnitTreeList(){
|
List<OrgRegion> regionList = regionService.queryUnitTreeList();
|
//全国为顶级菜单
|
for(int i = 0;i<regionList.size();i++){
|
if(regionList.get(i).getRegionid().equals("000000"))
|
{
|
OrgRegion root = regionList.get(i);
|
root.setOpen(true);
|
}
|
}
|
return Result.ok().put("regionList", regionList);
|
}
|
|
/**
|
* 查询节点及节点下的单位
|
*/
|
@RequestMapping(value ="/queryTreeChildList", method ={RequestMethod.POST, RequestMethod.GET})
|
// @RequiresPermissions("org:region:list")
|
@RequiresPermissions(value={"org:region:list","org:region:edit"},logical= Logical.OR)
|
@ApiOperation(
|
value = "行政区划列表",
|
notes = "行政区划列表"
|
)
|
public Result queryTreeChildList(@ApiParam(name="params",value="行政区划集合",required=true)@RequestParam Map<String, Object> params){
|
//查询列表数据
|
Query query = new Query(params);
|
List<OrgRegion> regionList = regionService.queryTreeChildList(query);
|
int total = regionService.queryTreeChildTotal(query);
|
|
PageUtils pageUtil = new PageUtils(regionList, total, query.getLimit(), query.getPage());
|
|
return Result.ok().put("page", pageUtil);
|
}
|
|
/**
|
* 查询节点下一级子节点
|
*/
|
@RequestMapping(value ="/queryListByParentid", method ={RequestMethod.GET})
|
// @RequiresPermissions("org:region:list")
|
@RequiresPermissions(value={"org:region:list","org:region:edit"},logical= Logical.OR)
|
public Map<String, Object> queryListByParentid(@RequestParam String parentid){
|
Map<String, Object> map = new HashMap<String,Object>();
|
List<OrgRegion> OrgRegionList = regionService.queryListByParentid(parentid);
|
map.put("OrgRegionList", OrgRegionList);
|
return map;
|
}
|
|
/**
|
* 修改排序
|
*/
|
@LogAction("用户管理,行政区划管理,行政区划修改排序,修改")
|
@PostMapping("/updateRorder")
|
@RequiresPermissions("org:region:edit")
|
@ApiOperation(
|
value = "修改字典字段值排序",
|
notes = ""
|
)
|
public Result updateRorder(@ApiParam(name="复合对象",value="传入json格式",required=true)@RequestBody JSONObject json){
|
String valueids = json.getString("valueids");
|
// String sorts = json.getString("sorts");
|
String[] valueidList = valueids.split(",");
|
// String[] sortList=sorts.split(",");
|
for(int i =0;i<valueidList.length;i++){
|
OrgRegion region = new OrgRegion();
|
region.setRegionid(valueidList[i]);
|
// region.setRorder(Long.parseLong(sortList[i]));
|
region.setRorder((long) i);
|
regionService.updateRorder(region);
|
}
|
return Result.ok();
|
}
|
}
|