forked from gzzfw/backEnd/gz-dyh

liyj
2024-09-20 b433e768a5185a6f4ce1f9271e43051b5dc254cc
dyh-service/dyh-cust/src/main/java/cn/huge/module/ctuser/controller/web/CtUnitWebController.java
@@ -1,9 +1,17 @@
package cn.huge.module.ctuser.controller;
package cn.huge.module.ctuser.controller.web;
import cn.huge.base.common.dto.SelectTermDTO;
import cn.huge.base.common.utils.ReturnFailUtils;
import cn.huge.base.common.utils.ReturnSucUtils;
import cn.huge.base.config.CurrentUser;
import cn.huge.module.ctuser.domain.po.CtUnit;
import cn.huge.module.ctuser.domain.po.CtUser;
import cn.huge.module.ctuser.dto.AppearUnitDTO;
import cn.huge.module.ctuser.service.CtUnitService;
import cn.huge.module.ctuser.service.CtUserService;
import cn.huge.module.cust.dto.CtUnitDTO;
import cn.huge.module.cust.dto.CtUserDTO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -14,13 +22,12 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
 * @title: 客户组织信息表接口api
 * @description: 客户组织信息表接口api
 * @title: 客户组织信息表接口api-web端
 * @description: 客户组织信息表接口api-web端
 * @company: hugeinfo
 * @author: liyj
 * @time: 2024-08-19 20:04:19
@@ -36,6 +43,9 @@
    @Autowired
    private CtUnitService service;
    @Autowired
    private CtUserService ctUserService;
    /**
    * 获取请求URL参数
@@ -198,7 +208,7 @@
        if (StringUtils.isNotBlank(dispStatus)){
            terms.put("dispStatus", dispStatus);
        }
        // 删除状态,0:已删除,1:未删除
        // 删除状态,0:未删除,1:已删除
        String deleteStatus = request.getParameter("deleteStatus");
        if (StringUtils.isNotBlank(deleteStatus)){
            terms.put("deleteStatus", deleteStatus);
@@ -307,4 +317,125 @@
        }
    }
    /**
     * 获取所有组织(包含所有下级子组织)树形结构
     * @url {ctx}/api/web/ctUnit/listUnitTree
     * @param userId 登录用户标识称
     * @return Object
     */
    @GetMapping("/listUnitTree")
    public Object listUnitTree(@CurrentUser String userId) {
        try {
            // 获取当前登录用户
            CtUser ctUser = ctUserService.getById(userId);
            // 查询当前登录用户下的所有单位
            List<CtUnit> ctUnits = service.listUnitTree(ctUser.getCustId(), ctUser.getUnitId());
            return ReturnSucUtils.getRepInfo( "查询成功", ctUnits);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo( "查询失败", null);
        }
    }
    /**
     * 获取组织详情(包含组织下的部门详情)
     * @url {ctx}/api/web/ctUnit/getUnitAndDept?id=
     * @param id 组织编号
     * @return Object
     */
    @GetMapping("/getUnitAndDept")
    public Object getUnitAndDept(@RequestParam(value = "id") String id) {
        try {
            //查询该用户组织和部门
            CtUnit ctUnit = service.getUnitAndDept(id);
            return ReturnSucUtils.getRepInfo( "查询成功", ctUnit);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo( "查询失败", null);
        }
    }
    /**
     * 根据主键编号删除单位
     * @url {ctx}/api/web/ctUnit/removeByIds
     * @param ids 主键编号
     * @return Object
     * @throws Exception
     */
    @GetMapping("/removeByIds")
    public Object removeByIds(@RequestParam(value = "ids") String ids) {
        try {
            service.removeById(ids);
            return ReturnSucUtils.getRepInfo();
        } catch (Exception e) {
            log.error("Controller接口[CtUnitController.removeByIds]请求异常:"+e, e);
            return ReturnFailUtils.getRepInfo();
        }
    }
    /**
     * 交办-选择组织
     * @url {ctx}/api/web/ctUnit/unitChoose
     * @param userId 组织编号
     * @return Object
     */
    @GetMapping("/unitChoose")
    public Object unitChoose(@CurrentUser String userId) {
        try {
            List<SelectTermDTO> unitSelectTerms = service.unitChoose(userId);
            return ReturnSucUtils.getRepInfo(unitSelectTerms);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo(e.getMessage());
        }
    }
    /**
     * 联合处置申请-选择组织
     * @url {ctx}/api/web/ctUnit/assistApplyUnitChoose
     * @param userId 组织编号
     * @return Object
     */
    @GetMapping("/assistApplyUnitChoose")
    public Object assistApplyUnitChoose(@CurrentUser String userId) {
        try {
            List<SelectTermDTO> unitSelectTerms = service.assistApplyUnitChoose(userId);
            return ReturnSucUtils.getRepInfo(unitSelectTerms);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo(e.getMessage());
        }
    }
    /**
     * 督办-选择组织
     * @url {ctx}/api/web/ctUnit/superviceUnitChoose
     * @param userId 组织编号
     * @return Object
     */
    @GetMapping("/superviceUnitChoose")
    public Object superviceUnitChoose(@CurrentUser String userId) {
        try {
            List<SelectTermDTO> unitSelectTerms = service.superviceUnitChoose(userId);
            return ReturnSucUtils.getRepInfo(unitSelectTerms);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo(e.getMessage());
        }
    }
    /**
     * web端任务处理-上报-查询上报的目标组织
     * @url {ctx}/api/web/ctUnit/getAppearToUnit
     * @return Object
     */
    @GetMapping("/getAppearToUnit")
    public Object getAppearToUnit(@CurrentUser String userId) {
        try {
            // 获取当前登录用户
            CtUserDTO loginUser = ctUserService.clientGetUserAll(userId);
            CtUnitDTO ctUnitDTO = service.getParentZzzx(loginUser.getUnitId());
            AppearUnitDTO appearUnitDTO = new AppearUnitDTO();
            appearUnitDTO.setAuditUnitId(ctUnitDTO.getId());
            appearUnitDTO.setAuditUnitName(ctUnitDTO.getUnitName());
            return ReturnSucUtils.getRepInfo(appearUnitDTO);
        } catch (Exception e) {
            return ReturnFailUtils.getRepInfo(e.getMessage());
        }
    }
}