package com.landtool.lanbase.modules.org.controller; import java.net.URLDecoder; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.shiro.authz.annotation.Logical; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.StringUtils; 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.OrgUnitmanager; import com.landtool.lanbase.modules.org.entity.OrgUser; import com.landtool.lanbase.modules.org.service.OrgUnitmanagerService; import com.landtool.lanbase.modules.sys.controller.AbstractController; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; 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 lanbase * @Description: TODO(${comments}) * @date 2018-03-01 16:17:42 */ @RestController @RequestMapping("/org/unitmanager") @Api(value = "", tags = {"单位管理员"}) public class OrgUnitmanagerController extends AbstractController{ @Autowired private OrgUnitmanagerService unitmanagerService; /** * 用户列表 */ @RequestMapping(value ="/userlist", method ={RequestMethod.GET}) @ApiOperation( value = "单位管理员用户列表", notes = "用户列表" ) // @LogAction("查询") // @RequiresPermissions("org:unit:list") @RequiresPermissions(value = {"org:unit:list","org:unit:edit"}, logical = Logical.OR) public Result userlist(@ApiParam(name="params",value="用户集合",required=true)@RequestParam Map params){ //查询列表数据 Query query = new Query(params); List userlist = unitmanagerService.queryUserList(query); int total = unitmanagerService.queryUserTotal(query); PageUtils pageUtil = new PageUtils(userlist, total, query.getLimit(), query.getPage()); return Result.ok().put("page", pageUtil); } /** * 保存 */ // @LogAction("保存") @PostMapping("/save") @RequiresPermissions("org:unit:save") @ApiOperation( value = "保存单位管理员", notes = "" ) public Result save(@ApiParam(name="复合对象",value="传入json格式",required=true)@RequestBody OrgUnitmanager unitmanager){ unitmanagerService.save(unitmanager); return Result.ok(); } /** * 删除 */ // @LogAction("删除") @PostMapping("/delete") @RequiresPermissions("org:unit:delete") @ApiOperation( value = "删除单位管理员", notes = "" ) public Result delete(@ApiParam(name="unitids",value="单位Id",required=true)@RequestBody Long[] unitids){ unitmanagerService.deleteBatch(unitids); return Result.ok(); } /** * 自动补全输入首字母或名称查询 * @param keyWord * @return */ @GetMapping("/findUnitManageUserByKeyword") public String[] findUnitManageUserByKeyword(@RequestParam(name = "keyWord") String keyWord, @RequestParam(name = "unitid") String unitid){ if(unitid.equals("null")) { unitid = null; } Map map = new HashMap<>(); map.put("keyWord", URLDecoder.decode(keyWord)); map.put("unitid", unitid); List users = unitmanagerService.findUnitManageUserByKeyword(map); if (StringUtils.isEmpty(users)) { return null; } int size = users.size(); //String[] arr = (String[]) users.toArray(new String[size]); String[] arr = new String[size]; for (int i = 0; i < users.size(); i++) { arr[i] = users.get(i).getChinesename(); } return arr; } }