package cn.com.goldenwater.dcproj.controller.system; import cn.com.goldenwater.core.web.BaseController; import cn.com.goldenwater.core.web.BaseResponse; import cn.com.goldenwater.dcproj.model.OlBisInspOrg; import cn.com.goldenwater.dcproj.param.OlBisInspOrgParam; import cn.com.goldenwater.dcproj.service.OlBisInspOrgService; import com.github.pagehelper.PageInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.Assert; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * @author lune * @date 2019-2-25 */ @Api(value = "机构表管理(BIS_INSP_ORG)", tags = "机构表管理(BIS_INSP_ORG)") @RestController @RequestMapping("/dc/bis/insp/org") public class OlBisInspOrgController extends BaseController { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private OlBisInspOrgService bisInspOrgService; @ApiOperation(value = "添加/修改组织机构") @RequestMapping(value = "/insert", method = RequestMethod.POST) public BaseResponse insert(@ApiParam(name = "bisInspOrg", value = "OlBisInspOrg", required = true) @RequestBody OlBisInspOrg bisInspOrg) { String province = bisInspOrgService.getProvince(getCurrentOrgId()); /*if (StringUtils.isNotBlank(province)) { bisInspOrg.setOrgPid(getCurrentOrgId()); bisInspOrg.setAdCode(bisInspOrg.getRlcode()); bisInspOrg.setRlcode(province); } else { bisInspOrg.setOrgPid("1"); bisInspOrg.setAdCode(bisInspOrg.getRlcode()); }*/ if (StringUtils.isNotBlank(bisInspOrg.getOrgId())) { bisInspOrg.setUpTm(new Date()); bisInspOrgService.update(bisInspOrg); } else { bisInspOrg.setInTm(new Date()); bisInspOrg.setUpTm(new Date()); if (StringUtils.isBlank(bisInspOrg.getOrgPid())) { bisInspOrg.setOrgPid("0"); } if (StringUtils.isBlank(bisInspOrg.getOrgNm())) { return buildFailResponse("机构名称不能位空!!"); } String orgId = bisInspOrg.getOrgPid(); String maxId = bisInspOrgService.selectMax(bisInspOrg.getOrgPid()); if (StringUtils.isNotBlank(maxId)) { orgId = (Integer.parseInt(maxId) + 1) + ""; if (orgId.length() == 2) { orgId = "0" + orgId; } } if (orgId.length() == 2) { orgId = "0" + orgId; } bisInspOrg.setOrgId(orgId); bisInspOrgService.insert(bisInspOrg); } return buildSuccessResponse(bisInspOrg); } @ApiOperation(value = "根据ID删除组织机构") @RequestMapping(value = "/{id}", method = RequestMethod.GET) public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { int ret = bisInspOrgService.delete(id); return buildSuccessResponse(); } @ApiOperation(value = "更新组织机构信息") @RequestMapping(value = "/update", method = RequestMethod.POST) public BaseResponse update(@ApiParam(name = "bisInspOrg", value = "OlBisInspOrg", required = true) @RequestBody OlBisInspOrg bisInspOrg) { Assert.notNull(bisInspOrg.getOrgId(), "主键id为必填参数"); int ret = bisInspOrgService.update(bisInspOrg); return buildSuccessResponse(); } @ApiOperation(value = "根据ID获取组织机构(单表)") @RequestMapping(value = "/get", method = RequestMethod.GET) public BaseResponse get(@ApiParam(name = "id", value = "id", required = true) @RequestParam String id) { OlBisInspOrg bisInspOrg = bisInspOrgService.get(id); return buildSuccessResponse(bisInspOrg); } @ApiOperation(value = "根据PID获取组织机构(列表)") @RequestMapping(value = "/getByPid", method = RequestMethod.GET) public BaseResponse> getByPid(@ApiParam(name = "pid", value = "pid", required = false) @RequestParam(required = false) String pid) { List bisInspOrgListAll = new ArrayList<>(); String province = bisInspOrgService.getProvince(getCurrentOrgId()); String curentOrgID = getCurrentOrgId(); String id = ""; if (StringUtils.isBlank(pid)) { if ("041".equals(curentOrgID)) { pid = "1"; bisInspOrgListAll.addAll(bisInspOrgService.getById(pid, province)); } else { //获取当前用户的根节点内容 id = bisInspOrgService.get(curentOrgID).getOrgId(); bisInspOrgListAll.addAll(bisInspOrgService.getById(id, province)); } } else { bisInspOrgListAll.addAll(bisInspOrgService.getByPid(pid, province)); } return buildSuccessResponse(bisInspOrgListAll); } @ApiOperation(value = "获取流域机构列表") @RequestMapping(value = "/getOrgList", method = {RequestMethod.GET, RequestMethod.POST}) public BaseResponse> getOrgList() { String province = bisInspOrgService.getProvince(getCurrentOrgId()); List bisInspOrg = bisInspOrgService.getOrgList(province); return buildSuccessResponse(bisInspOrg); } @ApiOperation(value = "获取流域机构列表(分页)") @RequestMapping(value = "/page", method = {RequestMethod.POST}) public BaseResponse> page(@RequestBody OlBisInspOrgParam olBisInspOrgParam) { olBisInspOrgParam.setRlcode(bisInspOrgService.getProvince(getCurrentOrgId())); PageInfo bisInspOrg = bisInspOrgService.findPageInfo(olBisInspOrgParam); return buildSuccessResponse(bisInspOrg); } @ApiOperation(value = "获取第一级节点") @RequestMapping(value = "/getNodeOne", method = {RequestMethod.GET}) public BaseResponse> getNodeOne() { String currentOrgId = getCurrentOrgId(); if ("041".equals(currentOrgId)) { currentOrgId = ""; } List olBisInspOrgs = bisInspOrgService.getNodeOne(currentOrgId); return buildSuccessResponse(olBisInspOrgs); } @ApiOperation(value = "获取下一级节点") @RequestMapping(value = "/getNodeNext", method = {RequestMethod.GET}) public BaseResponse> getNodeNext(@ApiParam(name = "pid", value = "pid", required = true) @RequestParam String pid) { String currentOrgId = getCurrentOrgId(); List olBisInspOrgs = bisInspOrgService.getNodeNext(pid, currentOrgId); return buildSuccessResponse(olBisInspOrgs); } }