package com.landtool.lanbase.modules.org.controller;
|
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
|
import com.landtool.lanbase.modules.org.entity.OrgUser;
|
import com.landtool.lanbase.modules.org.service.OrgUserGroupService;
|
import com.landtool.lanbase.modules.sys.controller.AbstractController;
|
|
import com.landtool.lanbase.modules.sys.service.SysRoleGroupService;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiParam;
|
|
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.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RestController;
|
import com.landtool.lanbase.modules.org.entity.OrgGroup;
|
import com.landtool.lanbase.modules.org.service.OrgGroupService;
|
import com.landtool.lanbase.common.annotation.LogAction;
|
import com.landtool.lanbase.common.utils.PageUtils;
|
import com.landtool.lanbase.common.utils.Query;
|
import com.landtool.lanbase.common.utils.Result;
|
|
/**
|
* @author zimao.guo
|
* @Description: TODO(群组表)
|
* @date 2018-03-14 15:22:21
|
*/
|
@RestController
|
@RequestMapping("/org/group")
|
public class OrgGroupController extends AbstractController {
|
|
@Autowired
|
private OrgGroupService groupService;
|
|
@Autowired
|
private OrgUserGroupService userGroupService;
|
|
@Autowired
|
private SysRoleGroupService roleGroupService;
|
/**
|
* 列表
|
*/
|
@LogAction("用户管理,群组管理,群组查询,查询")
|
@RequestMapping("/list")
|
// @RequiresPermissions("org:group:list")
|
@RequiresPermissions(value = {"org:group:list","org:group:edit"}, logical = Logical.OR)
|
public Result list(@RequestParam Map<String, Object> params){
|
//查询列表数据
|
Query query = new Query(params);
|
|
List<OrgGroup> groupList = groupService.queryList(query);
|
int total = groupService.queryTotal(query);
|
|
PageUtils pageUtil = new PageUtils(groupList, total, query.getLimit(), query.getPage());
|
|
return Result.ok().put("page", pageUtil);
|
}
|
|
|
/**
|
* 信息
|
*/
|
@GetMapping("/info/{groupid}")
|
// @RequiresPermissions("org:group:list")
|
@RequiresPermissions(value = {"org:group:list","org:group:edit"}, logical = Logical.OR)
|
@ApiOperation(
|
value = "群组信息",
|
notes = ""
|
)
|
public Result info(@ApiParam(name="groupid",value="Id",required=true)@PathVariable("groupid") Long groupid){
|
OrgGroup group = groupService.queryObject(groupid);
|
|
return Result.ok().put("group", group);
|
}
|
|
/**
|
* 保存
|
*/
|
@LogAction("用户管理,群组管理,群组新增,新增")
|
@RequestMapping("/save")
|
@RequiresPermissions("org:group:edit")
|
public Result save(@RequestBody OrgGroup group){
|
if(group.getGroupName() == null || group.getGroupName().length() == 0) {
|
return Result.error("保存失败,存在特殊字符,请重新输入!");
|
}
|
OrgUser user = (OrgUser) SecurityUtils.getSubject().getPrincipal();
|
group.setrCreateUser(user.getUserid());
|
group.setrCreateDate(new Date());
|
groupService.save(group);
|
int groupid = groupService.queryGroupWithSEQ();
|
return Result.ok().put("groupid",groupid);
|
}
|
|
/**
|
* 修改
|
*/
|
@LogAction("用户管理,群组管理,群组修改,修改")
|
@RequestMapping("/update")
|
@RequiresPermissions("org:group:edit")
|
public Result update(@RequestBody OrgGroup group){
|
if(group.getGroupName() == null || group.getGroupName().length() == 0) {
|
return Result.error("保存失败,存在特殊字符,请重新输入!");
|
}
|
groupService.checkChangeForSystem(group);
|
groupService.update(group);
|
return Result.ok();
|
}
|
|
/**
|
* 删除
|
*/
|
@LogAction("用户管理,群组管理,群组删除,删除")
|
@RequestMapping("/delete")
|
@RequiresPermissions("org:group:edit")
|
public Result delete(@RequestBody Long[] groupids){
|
groupService.deleteBatch(groupids);
|
userGroupService.deleteBatchByGroupId(groupids);
|
roleGroupService.deleteBatchByGroupId(groupids);
|
return Result.ok();
|
}
|
|
}
|