From 4d7ebacfd2051d36cd3b3982c95f5bafb3dc809b Mon Sep 17 00:00:00 2001 From: zhouxy Date: Sat, 10 Jan 2026 21:19:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=B1=9E=E5=9C=B0=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/EBaseinfoController.java | 75 +++++--------- .../aiccs/abnormal/entity/EBaseinfo.java | 11 ++- .../abnormal/entity/XrSuperviseDeptLog.java | 99 +++++++++++++++++++ .../mapper/XrSuperviseDeptLogMapper.java | 8 ++ .../abnormal/service/EBaseinfoService.java | 2 + .../service/IXrSuperviseDeptLogService.java | 8 ++ .../service/impl/EBaseinfoServiceImpl.java | 83 ++++++++++++---- .../impl/XrSuperviseDeptLogServiceImpl.java | 12 +++ .../org/controller/TOrgunitsController.java | 83 ++++++++++++++++ .../abnormal/XrSuperviseDeptLogMapper.xml | 5 + .../mapper/aicorg/org/AicorgMapper.xml | 2 +- 11 files changed, 319 insertions(+), 69 deletions(-) create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/XrSuperviseDeptLog.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/abnormal/mapper/XrSuperviseDeptLogMapper.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/IXrSuperviseDeptLogService.java create mode 100644 src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/XrSuperviseDeptLogServiceImpl.java create mode 100644 src/main/java/com/chinaweal/aiccs/org/controller/TOrgunitsController.java create mode 100644 src/main/resources/mybatis/mapper/aiccs/abnormal/XrSuperviseDeptLogMapper.xml diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/controller/EBaseinfoController.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/controller/EBaseinfoController.java index b066115..9d6c1da 100644 --- a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/controller/EBaseinfoController.java +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/controller/EBaseinfoController.java @@ -13,18 +13,14 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaweal.aiccs.aiccs.abnormal.entity.EBaseinfo; import com.chinaweal.aiccs.aiccs.abnormal.entity.Gzaiccode; -import com.chinaweal.aiccs.aiccs.abnormal.entity.TREntBaseInfo; +import com.chinaweal.aiccs.aiccs.abnormal.entity.XrSuperviseDeptLog; import com.chinaweal.aiccs.aiccs.abnormal.entity.dto.ComprehensiveStat; import com.chinaweal.aiccs.aiccs.abnormal.entity.dto.ToIncludeAbnDto; import com.chinaweal.aiccs.aiccs.abnormal.entity.vo.QzzxEntDto; import com.chinaweal.aiccs.aiccs.abnormal.entity.vo.RegulatoryVO; -import com.chinaweal.aiccs.aiccs.abnormal.entity.vo.XyxfCqDto; import com.chinaweal.aiccs.aiccs.abnormal.mapper.RegulatoryMapper; import com.chinaweal.aiccs.aiccs.abnormal.mapper.ToincludeabnMapper; -import com.chinaweal.aiccs.aiccs.abnormal.service.EAlterRecoderTempService; -import com.chinaweal.aiccs.aiccs.abnormal.service.EBaseinfoService; -import com.chinaweal.aiccs.aiccs.abnormal.service.IGzaiccodeService; -import com.chinaweal.aiccs.aiccs.abnormal.service.TREntBaseInfoService; +import com.chinaweal.aiccs.aiccs.abnormal.service.*; import com.chinaweal.aiccs.aiccs.entbase.entity.TREntPriseType; import com.chinaweal.aiccs.aiccs.entbase.service.TREntPriseTypeService; import com.chinaweal.aiccs.aiccs.market.service.AreaSliceService; @@ -64,16 +60,19 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.solr.core.query.Criteria; import org.springframework.data.solr.core.query.Query; import org.springframework.data.solr.core.query.SimpleQuery; +import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; import java.io.IOException; import java.io.OutputStream; import java.net.URLEncoder; import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.*; import static com.baomidou.mybatisplus.core.toolkit.Wrappers.lambdaQuery; @@ -225,46 +224,9 @@ public class EBaseinfoController extends BaseController { } IPage page = null; String searchtype = StringUtils.tranObject(customParamMap.get("searchtype")); - if ("2".equals(searchtype)) { // 个案 - String suporg = aicorgService.getRegionCodeByOrgLevel(curUser); - customParamMap.put("suporg", suporg); - page = toincludeabnMapper.listByEb(new Page<>(pageRequestDto.getCurPage(), pageRequestDto.getPageSize()), customParamMap); - } else { - //获取当前用户的机构,判断是区局还是所级,获取对应的机构单位ID列表 - LambdaQueryWrapper lqw = lambdaQuery(); - List orgunitids = new ArrayList<>(); - if ("001".equals(curUser.getOrgID())) { - //市局的账号 - //判断是不是登记注册二处 - if ("f7b2117a-ee80-4470-930e-03f106f3e031".equals(curUser.getUnitID()) || "001029".equals(curUser.getUnitID())) { - //customParamMap.put("regOrg", "440129");//查询登记机关 - customParamMap.put("acceptOrg", "440129"); - } else { - customParamMap.put("regOrg", "440101");//查询登记机关 - customParamMap.put("acceptOrg", "440101"); - } - } else if ("001029".equals(curUser.getOrgID())) { - //customParamMap.put("regOrg", "440129");//查询登记机关 - customParamMap.put("acceptOrg", "440129"); - } else { - OrgUnits orgModel = tUsersService.byOrgUnitId(curUser.getOrgID()); - if (orgModel.getOrgLevel().equals(3)) { // 区局 - customParamMap.put("regOrg", orgModel.getOrgNumber());//查询登记机关 - } else { - customParamMap.put("regOrg", orgModel.getOrgNumber().substring(0, 6));//查询登记机关 - customParamMap.put("scountrycodes", orgModel.getOrgNumber());//监管机关 - // 查看本所同事列入的线索 - //customParamMap.put("tbm", orgModel.getOrgNumber()); - } - } - List listedByOrg = toincludeabnMapper.listByOrg(customParamMap, pageRequestDto.getCurPage(), pageRequestDto.getPageSize()); - if (listedByOrg == null) { - listedByOrg = new ArrayList<>(); - } - long total = toincludeabnMapper.listByOrgCount(customParamMap); - page = new Page<>(); - page.setRecords(listedByOrg).setCurrent(pageRequestDto.getCurPage()).setSize(page.getSize()).setTotal(total); - } + String suporg = aicorgService.getRegionCodeByOrgLevel(curUser); + customParamMap.put("suporg", suporg); + page = toincludeabnMapper.listByEb(new Page<>(pageRequestDto.getCurPage(), pageRequestDto.getPageSize()), customParamMap); if (CollectionUtils.isNotEmpty(page.getRecords())) { for (ToIncludeAbnDto record : page.getRecords()) { @@ -1256,10 +1218,25 @@ public class EBaseinfoController extends BaseController { } } - @ApiOperation(value = "5.分页查询市场主体基本信息", position = 5) - @PostMapping("/listEBaseinfo") - public RestResult> listEBaseinfo(@RequestBody BaseQuery query) { + @ApiOperation(value = "分页查询市场主体基本信息", position = 5) + @PostMapping("/pageBaseinfo") + public RestResult> pageBaseinfo(@RequestBody BaseQuery query) { IPage data = eBaseinfoService.listEBaseinfo(query); return RestResult.ok(data); } + + @ApiOperation(value = "6.修改单个主体的属地机关", position = 6) + @PostMapping("/updateBaseinfoSuperviseDept") + public RestResult updateBaseinfoSuperviseDept(@RequestBody @Valid EBaseinfo eBaseinfo, HttpServletRequest request) { + AICUser user = getLoginUser(request); + if (user == null) { + return RestResult.error(ResultCode.USER_NOT_LOGGED_IN); + } + String afterDeptid = eBaseinfo.getAfterDeptid(); + if (StringUtils.isEmpty(afterDeptid)){ + return RestResult.error(ResultCode.PARAM_IS_BLANK); + } + eBaseinfoService.updateBaseinfoSuperviseDept(eBaseinfo, afterDeptid, user); + return RestResult.ok(); + } } diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/EBaseinfo.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/EBaseinfo.java index 1ca91d8..fb4f008 100644 --- a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/EBaseinfo.java +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/EBaseinfo.java @@ -267,10 +267,12 @@ public class EBaseinfo extends Model { /** * 数据汇总时间 */ - @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ss") + @TableField("s_Ext_Datatime") @ApiModelProperty(value = "数据汇总时间") private LocalDateTime sExtDatatime; + /** * 国民行业经济名称(名称) */ @@ -566,6 +568,13 @@ public class EBaseinfo extends Model { @TableField(exist = false) private String searchUscc; + /** + * 修改后的属地机关编号 + */ + @ApiModelProperty(value = "修改后的属地机关编号") + @TableField(exist = false) + private String afterDeptid; + /** * 退认领id */ diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/XrSuperviseDeptLog.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/XrSuperviseDeptLog.java new file mode 100644 index 0000000..6e66e76 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/entity/XrSuperviseDeptLog.java @@ -0,0 +1,99 @@ +package com.chinaweal.aiccs.aiccs.abnormal.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.time.LocalDateTime; +import java.util.Date; + +/** + * 主体的属地机关调整日志表 + * + * @author zhouxy + * @since 2025-07-08 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName(value = "xr_supervise_dept_log") +@ApiModel(value = "XrSuperviseDeptLog对象", description = "主体的属地机关调整日志表") +public class XrSuperviseDeptLog implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 表id + */ + @ApiModelProperty(value = "表id") + @TableId(value = "supervise_log_id", type = IdType.ASSIGN_UUID) + private String superviseLogId; + + /** + * 主体身份代码 + */ + @ApiModelProperty(value = "主体身份代码") + @TableField("prip_id") + private String pripId; + + /** + * 统一社会信用代码 + */ + @ApiModelProperty(value = "统一社会信用代码") + @TableField("unisc_id") + private String uniscId; + + /** + * 名称 + */ + @ApiModelProperty(value = "主体名称") + @TableField("ent_name") + private String entName; + + /** + * 调整前的属地机关编号 + */ + @ApiModelProperty(value = "调整前的属地机关编号") + @TableField("dept_before") + private String deptBefore; + + /** + * 调整后的属地机关编号 + */ + @ApiModelProperty(value = "调整后的属地机关编号") + @TableField("dept_after") + private String deptAfter; + + /** + * 操作人 + */ + @ApiModelProperty(value = "操作人") + @TableField("operater") + private String operater; + + /** + * 操作人id + */ + @ApiModelProperty(value = "操作人id") + @TableField("oper_id") + private String operId; + + /** + * 操作时间 + */ + @ApiModelProperty(value = "操作时间") + @TableField("oper_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime operTime; + + +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/mapper/XrSuperviseDeptLogMapper.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/mapper/XrSuperviseDeptLogMapper.java new file mode 100644 index 0000000..0de6f7b --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/mapper/XrSuperviseDeptLogMapper.java @@ -0,0 +1,8 @@ +package com.chinaweal.aiccs.aiccs.abnormal.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.chinaweal.aiccs.aiccs.abnormal.entity.XrSuperviseDeptLog; + +public interface XrSuperviseDeptLogMapper extends BaseMapper { + +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/EBaseinfoService.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/EBaseinfoService.java index 69ebcee..77aa79d 100644 --- a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/EBaseinfoService.java +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/EBaseinfoService.java @@ -213,4 +213,6 @@ public interface EBaseinfoService extends BaseService { IPage listEBaseinfo(BaseQuery query); + EBaseinfo updateBaseinfoSuperviseDept(EBaseinfo eBaseinfo, String afterDeptid, AICUser user); + } diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/IXrSuperviseDeptLogService.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/IXrSuperviseDeptLogService.java new file mode 100644 index 0000000..621d869 --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/IXrSuperviseDeptLogService.java @@ -0,0 +1,8 @@ +package com.chinaweal.aiccs.aiccs.abnormal.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.chinaweal.aiccs.aiccs.abnormal.entity.XrSuperviseDeptLog; + +public interface IXrSuperviseDeptLogService extends IService { + +} diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/EBaseinfoServiceImpl.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/EBaseinfoServiceImpl.java index 8876d00..35c6a7a 100644 --- a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/EBaseinfoServiceImpl.java +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/EBaseinfoServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -48,6 +49,8 @@ import com.chinaweal.aiccs.crgs.moveinDetails.entity.EAlterRecoder; import com.chinaweal.aiccs.crgs.service.EContactCrgsService; import com.chinaweal.aiccs.crgs.service.EPriPersonCrgsService; import com.chinaweal.aiccs.org.entity.OrgAreas; +import com.chinaweal.aiccs.org.entity.OrgUnits; +import com.chinaweal.aiccs.org.service.AicorgService; import com.chinaweal.aiccs.org.service.OrgAreasService; import com.chinaweal.aicorg.model.AICUser; import com.chinaweal.aicorg.services.OrgUM; @@ -141,6 +144,10 @@ public class EBaseinfoServiceImpl extends BaseServiceImpl lambdaQueryWrapper = Wrappers.lambdaQuery(); + + // 添加所有适用的查询条件 if(com.chinaweal.aiccs.common.util.StringUtils.isNotEmpty(uniscId)) lambdaQueryWrapper.eq(EBaseinfo::getUniscid, uniscId); + if(com.chinaweal.aiccs.common.util.StringUtils.isNotEmpty(entName)) lambdaQueryWrapper.eq(EBaseinfo::getEntname, entName); - page = page(page, lambdaQueryWrapper); + if(com.chinaweal.aiccs.common.util.StringUtils.isNotEmpty(searchUscc)) - lambdaQueryWrapper.eq(EBaseinfo::getUniscid, searchUscc) - .or().eq(EBaseinfo::getRegno, searchUscc); + lambdaQueryWrapper.and(wrapper -> + wrapper.eq(EBaseinfo::getUniscid, searchUscc) + .or().eq(EBaseinfo::getRegno, searchUscc)); page = page(page, lambdaQueryWrapper); -// page.getRecords().forEach(record -> { -// QueryWrapper queryWrapper = new QueryWrapper<>(); -// //查属地机关中文 -// String supervisedeptid = record.getSupervisedeptid(); -// if(com.chinaweal.aiccs.common.util.StringUtils.isNotEmpty(supervisedeptid)){ -// queryWrapper.lambda().eq(TOrgUnits::getOrgNumber, supervisedeptid.length() == 6 ? supervisedeptid + "000" : supervisedeptid) -// .eq(TOrgUnits::getDeleted, '0'); -// List list = tOrgUnitsService.list(queryWrapper); -// if (list.size() > 0) { -// TOrgUnits tOrgunits = list.get(0); -// record.setLocaladmCn(tOrgunits.getOrgUnitName()); -// } -// } -// }); + // 更新监管机构名称 + page.getRecords().forEach(record -> { + String suporgCn = record.getSuporgCn(); + if(com.chinaweal.aiccs.common.util.StringUtils.isNotEmpty(suporgCn)){ + String suporg = record.getSuporg(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(OrgUnits::getOrgNumber, suporg) + .eq(OrgUnits::getDeleted, '0') + .eq(OrgUnits::getUnitType, "1"); + List list = aicorgService.list(queryWrapper); + if (list.size() > 0) { + OrgUnits tOrgunits = list.get(0); + record.setSuporgCn(tOrgunits.getOrgUnitName()); + } + } + }); } return page; } + + @Override + public EBaseinfo updateBaseinfoSuperviseDept(EBaseinfo eBaseinfo, String afterDeptid, AICUser user) { + OrgUnits org = aicorgService.getOne(new LambdaQueryWrapper() + .eq(OrgUnits::getOrgNumber, afterDeptid) + .eq(OrgUnits::getDeleted, "0") + .eq(OrgUnits::getUnitType, "1")); + // 使用 LambdaUpdateWrapper 只更新指定字段 + LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(EBaseinfo.class) + .set(EBaseinfo::getSuporg, afterDeptid) + .set(EBaseinfo::getSuporgCn, org.getOrgUnitName()) + .set(EBaseinfo::getLocaladm, afterDeptid) + .set(EBaseinfo::getAcceptRegorg, afterDeptid) + .set(EBaseinfo::getAcceptregorgCn, org.getOrgUnitName()) + .set(EBaseinfo::getRegulatory, afterDeptid) + .set(EBaseinfo::getRegulatoryName, org.getOrgUnitName()) + .eq(EBaseinfo::getPripid, eBaseinfo.getPripid()); // 根据主键更新 + this.update(updateWrapper); + + // 记录属地调整日志 + XrSuperviseDeptLog log = new XrSuperviseDeptLog() + .setSuperviseLogId(UUID.randomUUID().toString()) + .setPripId(eBaseinfo.getPripid()) + .setUniscId(StringUtils.isNotEmpty(eBaseinfo.getUniscid()) ? eBaseinfo.getUniscid() : eBaseinfo.getRegno()) + .setEntName(eBaseinfo.getEntname()) + .setDeptBefore(eBaseinfo.getSuporg()) // 记录更新前的值 + .setDeptAfter(afterDeptid) + .setOperater(user.getName()) + .setOperId(user.getPrimaryKey()) + .setOperTime(LocalDateTime.now()); + iXrSuperviseDeptLogService.save(log); + return eBaseinfo; + } + } diff --git a/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/XrSuperviseDeptLogServiceImpl.java b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/XrSuperviseDeptLogServiceImpl.java new file mode 100644 index 0000000..df8072a --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/aiccs/abnormal/service/impl/XrSuperviseDeptLogServiceImpl.java @@ -0,0 +1,12 @@ +package com.chinaweal.aiccs.aiccs.abnormal.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.chinaweal.aiccs.aiccs.abnormal.entity.XrSuperviseDeptLog; +import com.chinaweal.aiccs.aiccs.abnormal.mapper.XrSuperviseDeptLogMapper; +import com.chinaweal.aiccs.aiccs.abnormal.service.IXrSuperviseDeptLogService; +import org.springframework.stereotype.Service; + +@Service +public class XrSuperviseDeptLogServiceImpl extends ServiceImpl implements IXrSuperviseDeptLogService { + +} diff --git a/src/main/java/com/chinaweal/aiccs/org/controller/TOrgunitsController.java b/src/main/java/com/chinaweal/aiccs/org/controller/TOrgunitsController.java new file mode 100644 index 0000000..fe95b3d --- /dev/null +++ b/src/main/java/com/chinaweal/aiccs/org/controller/TOrgunitsController.java @@ -0,0 +1,83 @@ +package com.chinaweal.aiccs.org.controller; + +import com.chinaweal.aiccs.common.base.controller.BaseController; +import com.chinaweal.aiccs.common.util.StringUtils; +import com.chinaweal.aiccs.org.entity.vo.CascaderVO; +import com.chinaweal.aiccs.org.service.AicorgService; +import com.chinaweal.youfool.framework.springboot.rest.RestResult; +import com.github.xiaoymin.knife4j.annotations.ApiSort; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; + +/** + * 机构表 控制器 + * + * @author zhouxy + * @since 2026-01-10 + */ +@Api(tags = "组织结构") +@ApiSort(2) +@RestController +@RequestMapping("/tOrgunits") +public class TOrgunitsController extends BaseController { + + @Resource + private AicorgService aicorgService; + + @ApiOperation(value = "获取某个地市下面所有机关") + @PostMapping("/getAllOrgunits") + public RestResult getAllOrgunits(String orgNumber,Integer orgLevel) { + List orgunits; + if(StringUtils.isNotEmpty(orgNumber)){ + orgNumber = orgNumber+"%"; + } + if(orgLevel == 0){ + orgLevel = 1; + } + orgunits = aicorgService.queryAll(orgNumber); + List level1 = new ArrayList<>(); + CascaderVO cascader = new CascaderVO(); + List level2 = new ArrayList<>(); + for (CascaderVO orgunit : orgunits) { + if (orgunit.getOrgLevel() == orgLevel.intValue()) { + cascader.setLabel(orgunit.getLabel()); + cascader.setOrgUnitId(orgunit.getOrgUnitId()); + cascader.setParentID(orgunit.getParentID()); + cascader.setValue(orgunit.getValue()); + cascader.setOrgLevel(orgunit.getOrgLevel()); + } + if (Objects.equals(orgunit.getOrgLevel(), orgLevel + 1)) { + level2.add(orgunit); + } + } + merge(level2, orgunits); + cascader.setChildren(level2); + level1.add(cascader); + return RestResult.ok(level1); + } + + private void merge(List pre, List all) { + List ooo = new ArrayList<>(); + for (CascaderVO orgunits : pre) { + for (CascaderVO org : all) { + if (StringUtils.equals(org.getParentID(), orgunits.getOrgUnitId())) { + if (orgunits.getChildren() == null) { + orgunits.setChildren(new ArrayList<>()); + } + orgunits.getChildren().add(org); + ooo.add(org); + } + } + } + if (ooo.size() > 0) { + merge(ooo, all); + } + } + +} diff --git a/src/main/resources/mybatis/mapper/aiccs/abnormal/XrSuperviseDeptLogMapper.xml b/src/main/resources/mybatis/mapper/aiccs/abnormal/XrSuperviseDeptLogMapper.xml new file mode 100644 index 0000000..57d24b6 --- /dev/null +++ b/src/main/resources/mybatis/mapper/aiccs/abnormal/XrSuperviseDeptLogMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/src/main/resources/mybatis/mapper/aicorg/org/AicorgMapper.xml b/src/main/resources/mybatis/mapper/aicorg/org/AicorgMapper.xml index 1d2dc38..9327264 100644 --- a/src/main/resources/mybatis/mapper/aicorg/org/AicorgMapper.xml +++ b/src/main/resources/mybatis/mapper/aicorg/org/AicorgMapper.xml @@ -160,7 +160,7 @@ units.parentID, units.orgLevel, units.orgNumber AS "value" - FROM t_orgUnits units + FROM cxaicorg.t_orgUnits units WHERE units.deleted = '0' AND units.unitType = '1' AND units.orgLevel IN (1, 2, 3, 4, 5)