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 params){ //查询列表数据 Query query = new Query(params); List 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(); } }