package com.artfess.security.controller; import com.artfess.security.manager.SecurityMachineManager; import com.artfess.security.manager.SecurityPersonloginlimitManager; import com.artfess.security.model.SecurityMachine; import com.artfess.security.vo.PersonloginlimitVo; import com.baomidou.mybatisplus.core.metadata.IPage; import com.artfess.base.annotation.ApiGroup; import com.artfess.base.constants.ApiGroupConsts; import com.artfess.base.controller.BaseController; import com.artfess.base.enums.ResponseErrorEnums; import com.artfess.base.model.CommonResult; import com.artfess.base.query.PageList; import com.artfess.base.query.QueryFilter; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; 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 javax.annotation.Resource; import java.util.Arrays; import java.util.HashMap; import java.util.List; /** * 安全中心 --- 涉密计算机维护表 前端控制器 * * @author cs * @company 阿特菲斯 * @since 2021-03-04 */ @RestController @RequestMapping("/uc/Machine/v1/") @Api(tags = "涉密计算机维护") @ApiGroup(group = {ApiGroupConsts.GROUP_UC}) public class SecurityMachineController extends BaseController { @Resource SecurityPersonloginlimitManager personloginlimitService; @RequestMapping(value = "saveMachine", method = RequestMethod.POST, produces = {"application/json; charset=utf-8"}) @ApiOperation(value = "保存或修改涉密计算机", httpMethod = "POST", notes = "保存或修改涉密计算机") public CommonResult saveMachine(@ApiParam(name="model", value="涉密计算机信息") @RequestBody SecurityMachine machine) throws Exception { this.baseService.saveMachine(machine); return new CommonResult<>("保存成功!"); } @RequestMapping(value = "deleteBatchMachine", method = RequestMethod.DELETE, produces = {"application/json; charset=utf-8"}) @ApiOperation(value = "批量删涉密计算机", httpMethod = "DELETE", notes = "批量删涉密计算机(id多个用,号隔开)") public CommonResult deleteBatchMachine(@ApiParam(name = "ids", value = "关联表ID") @RequestParam(required = true) String ids) throws Exception { List idList = Arrays.asList(ids.split(",")); if(idList!=null && idList.size()>0){ for(String machineId : idList) { personloginlimitService.deleteByMachineId(machineId); } boolean result = this.baseService.removeByIds(idList); if (!result) { return new CommonResult<>(ResponseErrorEnums.FAIL_OPTION, "删除失败"); } return new CommonResult<>("删除成功!"); }else { return new CommonResult<>("没有删除的数据!"); } } @RequestMapping(value="updateMachineSn",method=RequestMethod.PUT, produces = {"application/json; charset=utf-8" }) @ApiOperation(value = "根据ID批量修改排序号", httpMethod = "PUT", notes = "根据ID批量修改排序号") @ApiImplicitParam(name = "map", value = "key:功能id,value:排序号", required = true) public CommonResult updateMachineSn(@RequestBody HashMap map) throws Exception { this.baseService.updateSequence(map); return new CommonResult<>("修改成功!"); } @RequestMapping(value = "queryPersonloginlimitPage", method = RequestMethod.POST, produces = {"application/json; charset=utf-8"}) @ApiOperation(value = "人员关联设备 -- 分页查询人员关联涉密设备", httpMethod = "POST", notes = "分页查询人员关联涉密设备") public PageList queryPersonloginlimitPage(@ApiParam(name = "filter", value = "查询参数", required = true) @RequestBody QueryFilter filter) throws Exception { IPage list = personloginlimitService.queryPersonloginlimitPage(filter); return new PageList(list); } @RequestMapping(value = "insertPersonloginlimit", method = RequestMethod.POST, produces = {"application/json; charset=utf-8"}) @ApiOperation(value = "人员关联设备 -- 绑定人员涉密计算机", httpMethod = "POST", notes = "人员关联设备 -- 绑定人员涉密计算机, 用户id(多个用,号隔开)") public CommonResult insertPersonloginlimit(@ApiParam("设备_ID") @RequestParam(required = true) String machineId, @ApiParam("所选用户的Id,多个以“,”隔开") @RequestParam(required = true) String userIds) throws Exception { return personloginlimitService.insertPersonloginlimit(machineId, userIds); } @RequestMapping(value = "deletePersonloginlimis", method = RequestMethod.DELETE, produces = {"application/json; charset=utf-8"}) @ApiOperation(value = "人员关联设备 -- 根据关联id删除人员与涉密计算机关联", httpMethod = "DELETE", notes = "人员关联设备 -- 根据关联id删除人员与涉密计算机关联(多个用,号隔开)") public CommonResult deletePersonloginlimis(@ApiParam(name = "ids", value = "关联表ID") @RequestParam(required = true) String ids) throws Exception { boolean result = personloginlimitService.removeByIds(Arrays.asList(ids.split(","))); if (!result) { return new CommonResult<>(ResponseErrorEnums.FAIL_OPTION, "删除失败"); } return new CommonResult<>("删除成功!"); } }