diff --git a/.idea/MarsCodeWorkspaceAppSettings.xml b/.idea/MarsCodeWorkspaceAppSettings.xml
index c4ffd05..5f3ebed 100644
--- a/.idea/MarsCodeWorkspaceAppSettings.xml
+++ b/.idea/MarsCodeWorkspaceAppSettings.xml
@@ -2,6 +2,6 @@
-
+
\ No newline at end of file
diff --git a/.idea/easyCodeTableSettingEncode.xml b/.idea/easyCodeTableSettingEncode.xml
index de1c0db..90291e6 100644
--- a/.idea/easyCodeTableSettingEncode.xml
+++ b/.idea/easyCodeTableSettingEncode.xml
@@ -13,6 +13,7 @@
+
diff --git a/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentSuperviseController.java b/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentSuperviseController.java
new file mode 100644
index 0000000..0b8e6c4
--- /dev/null
+++ b/web-adapter/src/main/java/com/zcloud/basic/info/web/DepartmentSuperviseController.java
@@ -0,0 +1,82 @@
+package com.zcloud.basic.info.web;
+
+
+import com.alibaba.cola.dto.MultiResponse;
+import com.alibaba.cola.dto.PageResponse;
+import com.alibaba.cola.dto.Response;
+import com.alibaba.cola.dto.SingleResponse;
+import com.jjb.saas.framework.auth.model.SSOUser;
+import com.jjb.saas.framework.auth.utils.AuthContext;
+import com.zcloud.basic.info.api.DepartmentSuperviseServiceI;
+import com.zcloud.basic.info.dto.DepartmentSuperviseAddCmd;
+import com.zcloud.basic.info.dto.DepartmentSupervisePageQry;
+import com.zcloud.basic.info.dto.DepartmentSuperviseUpdateCmd;
+import com.zcloud.basic.info.dto.clientobject.DepartmentSuperviseCO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+
+/**
+ * web-adapter
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:45
+ */
+@Api(tags = "部门监管权限表")
+@RequestMapping("/${application.gateway}/departmentSupervise")
+@RestController
+@AllArgsConstructor
+public class DepartmentSuperviseController {
+ private final DepartmentSuperviseServiceI departmentSuperviseService;
+
+ @ApiOperation("新增")
+ @PostMapping("/save")
+ public SingleResponse add(@Validated @RequestBody DepartmentSuperviseAddCmd cmd) {
+ SSOUser ssoUser = AuthContext.getCurrentUser();
+ return departmentSuperviseService.add(cmd);
+ }
+
+ @ApiOperation("分页")
+ @PostMapping("/list")
+ public PageResponse page(@RequestBody DepartmentSupervisePageQry qry) {
+ return departmentSuperviseService.listPage(qry);
+ }
+
+ @ApiOperation("所有数据")
+ @GetMapping("/listAll")
+ public MultiResponse listAll() {
+ return MultiResponse.of(new ArrayList());
+ }
+
+ @ApiOperation("详情")
+ @GetMapping("/{id}")
+ public SingleResponse getInfoById(@PathVariable("id") Long id) {
+ return SingleResponse.of(new DepartmentSuperviseCO());
+ }
+
+ @ApiOperation("删除")
+ @DeleteMapping("/{id}")
+ public Response remove(@PathVariable("id") Long id) {
+ departmentSuperviseService.remove(id);
+ return SingleResponse.buildSuccess();
+ }
+
+ @ApiOperation("删除多个")
+ @DeleteMapping("/ids")
+ public Response removeBatch(@RequestParam Long[] ids) {
+ departmentSuperviseService.removeBatch(ids);
+ return SingleResponse.buildSuccess();
+ }
+
+ @ApiOperation("修改")
+ @PutMapping("/edit")
+ public SingleResponse edit(@Validated @RequestBody DepartmentSuperviseUpdateCmd departmentSuperviseUpdateCmd) {
+ departmentSuperviseService.edit(departmentSuperviseUpdateCmd);
+ return SingleResponse.buildSuccess();
+ }
+}
+
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/CorpInfoAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/CorpInfoAddExe.java
index 4b94de9..c797f8b 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/command/CorpInfoAddExe.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/CorpInfoAddExe.java
@@ -1,19 +1,34 @@
package com.zcloud.basic.info.command;
+import cn.hutool.core.collection.CollUtil;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.exception.BizException;
import com.jjb.saas.system.client.tenant.facade.TenantFacade;
import com.jjb.saas.system.client.tenant.request.OtaTenantAddCmd;
import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.domain.gateway.CorpInfoGateway;
+import com.zcloud.basic.info.domain.gateway.UserGateway;
import com.zcloud.basic.info.domain.model.CorpInfoE;
+import com.zcloud.basic.info.domain.model.DepartmentE;
+import com.zcloud.basic.info.domain.model.UserE;
+import com.zcloud.basic.info.domain.model.UserEmploymentLogE;
import com.zcloud.basic.info.dto.CorpInfoAddCmd;
+import com.zcloud.basic.info.dto.DepartmentAddCmd;
+import com.zcloud.basic.info.dto.UserAddCmd;
+import com.zcloud.basic.info.persistence.repository.DepartmentRepository;
+import com.zcloud.basic.info.persistence.repository.UserEmploymentLogRepository;
+import com.zcloud.basic.info.persistence.repository.UserRepository;
+import com.zcloud.gbscommon.utils.PageQueryHelper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
+
+import java.util.List;
+import java.util.Map;
/**
@@ -27,14 +42,15 @@ import org.springframework.transaction.annotation.Transactional;
@Slf4j
public class CorpInfoAddExe {
private final CorpInfoGateway corpInfoGateway;
- @DubboReference
- private TenantFacade tenantFacade;
+ private final UserRepository userRepository;
+ private final DepartmentRepository departmentRepository;
+ private final UserEmploymentLogRepository userEmploymentLogRepository;
+
@Transactional(rollbackFor = Exception.class)
public Long execute(CorpInfoAddCmd cmd) {
CorpInfoE examTypeE = new CorpInfoE();
BeanUtils.copyProperties(cmd, examTypeE);
-
Long corpInfoId ;
try {
corpInfoId = corpInfoGateway.add(examTypeE);
@@ -44,15 +60,19 @@ public class CorpInfoAddExe {
if (corpInfoId == null) {
throw new BizException("保存失败");
}
- OtaTenantAddCmd otaTenantAddCmd = new OtaTenantAddCmd();
- otaTenantAddCmd.setAccount(examTypeE.getCorpName());
- otaTenantAddCmd.setTenantId(corpInfoId);
- otaTenantAddCmd.setTenantName(examTypeE.getCorpName());
- otaTenantAddCmd.setPassword("Aa@123456789");
- log.info("CorpInfoXgfAddExe,新增企业调用GBS请求:{}",otaTenantAddCmd.toString());
- //TODO 企业推送gbs报错解密失败
- // Response response = tenantFacade.addOtaTenant(otaTenantAddCmd);
- //log.info("CorpInfoXgfAddExe,新增企业调用GBS返回:{}",response.toString());
+ DepartmentE departmentE = new DepartmentE();
+ departmentE.initCorpInfo(corpInfoId,cmd.getCorpName());
+ Long departmentId = departmentRepository.addCorpDepartment(departmentE);
+
+
+ UserE userE = new UserE();
+ userE.initCorpInfo(examTypeE,departmentId);
+ userRepository.addCorpUser(examTypeE);
+
+ UserEmploymentLogE userEmploymentLogE = new UserEmploymentLogE();
+ BeanUtils.copyProperties(userE, userEmploymentLogE);
+ userEmploymentLogE.initAdd(userEmploymentLogE, cmd.getCorpName(), userE.getId());
+ userEmploymentLogRepository.addCorpUserEmploymentLog(userEmploymentLogE);
return corpInfoId;
}
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java
index dc2ec62..38295f9 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentAddExe.java
@@ -1,5 +1,6 @@
package com.zcloud.basic.info.command;
+import cn.hutool.core.collection.CollUtil;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.exception.BizException;
import com.jjb.saas.framework.auth.utils.AuthContext;
@@ -8,8 +9,12 @@ import com.jjb.saas.system.client.dept.request.FacadeAddDeptCmd;
import com.jjb.saas.system.client.user.facade.UserFacade;
import com.jjb.saas.system.client.user.request.FacadeUserAddCmd;
import com.jjb.saas.system.enums.org.DeptTypeEnum;
+import com.zcloud.basic.info.command.convertor.DepartmentSuperviseCoConvertor;
+import com.zcloud.basic.info.domain.enums.CommonFlagEnum;
import com.zcloud.basic.info.domain.gateway.DepartmentGateway;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
import com.zcloud.basic.info.domain.model.DepartmentE;
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
import com.zcloud.basic.info.dto.DepartmentAddCmd;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -18,6 +23,9 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
+import java.util.List;
+
/**
* web-app
@@ -31,19 +39,14 @@ import org.springframework.transaction.annotation.Transactional;
public class DepartmentAddExe {
private final DepartmentGateway departmentGateway;
- @DubboReference
- private DeptFacade deptFacade;
+ private final DepartmentSuperviseGateway departmentSuperviseGateway;
+ private final DepartmentSuperviseCoConvertor departmentSuperviseCoConvertor;
+
@Transactional(rollbackFor = Exception.class)
- public boolean execute(DepartmentAddCmd cmd) {
+ public Long execute(DepartmentAddCmd cmd) {
DepartmentE examTypeE = new DepartmentE();
- //TODO 父id的值待定
- if(cmd.getParentId()==null){
- cmd.setParentId(AuthContext.getTenantId());
- }
- if(cmd.getCorpinfoId() == null){
- cmd.setCorpinfoId(AuthContext.getTenantId());
- }
+
BeanUtils.copyProperties(cmd, examTypeE);
Long id = null;
try {
@@ -55,17 +58,11 @@ public class DepartmentAddExe {
if (id ==null) {
throw new BizException("保存失败");
}
- // 需要调用GBS,新增
- FacadeAddDeptCmd deptCmd = new FacadeAddDeptCmd();
- deptCmd.setLinkId(id);
- deptCmd.setLinkName(examTypeE.getName());
-
- deptCmd.setParentId(examTypeE.getParentId());
- deptCmd.setDeptTypeEnum(DeptTypeEnum.DEPARTMENT.getValue());
- //TODO gbs部门表 sys_dept tenant_id,parent_ids,add_type_enum,存储错误,导致gbs页面看不到,参数还没有,待定
- Response response = deptFacade.addDept(deptCmd);
- log.info("DepartmentAddExe,新增部门调用GBS返回:"+response.toString());
- return true;
+ if(CollUtil.isNotEmpty(cmd.getDepartmentIdsList())&& CommonFlagEnum.YES.getCode().equals(cmd.getSuperviseFlag())){
+ List departmentSuperviseEList =examTypeE.initAdd(cmd.getDepartmentIdsList(), id);
+ departmentSuperviseGateway.addbatch(departmentSuperviseEList);
+ }
+ return id;
}
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentRemoveExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentRemoveExe.java
index c0e8a83..ec8ec29 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentRemoveExe.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentRemoveExe.java
@@ -6,6 +6,7 @@ import com.alibaba.cola.exception.BizException;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jjb.saas.system.client.dept.facade.DeptFacade;
import com.zcloud.basic.info.domain.gateway.DepartmentGateway;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
import com.zcloud.basic.info.dto.clientobject.DepartmentCO;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
import com.zcloud.basic.info.persistence.repository.DepartmentRepository;
@@ -38,6 +39,7 @@ public class DepartmentRemoveExe {
private final DepartmentGateway departmentGateway;
private final DepartmentRepository departmentRepository;
private final UserRepository userRepository;
+ private final DepartmentSuperviseGateway departmentSuperviseGateway;
@DubboReference
private DeptFacade deptFacade;
@Autowired
@@ -65,6 +67,8 @@ public class DepartmentRemoveExe {
if (!res) {
throw new BizException("删除失败");
}
+ departmentSuperviseGateway.deletedDepartmentBySuperviseId(id);
+
deptFacade.deleteById( id);
//删除redis数据
zcloudRedisUtil.del(Const.REDIS_DEPT_PREFIX+id);
@@ -90,6 +94,9 @@ public class DepartmentRemoveExe {
deptFacade.deleteById( id);
zcloudRedisUtil.del(Const.REDIS_DEPT_PREFIX + id);
}
+ //ids转成成list
+ departmentSuperviseGateway.deletedDepartmentBySuperviseIdList(Arrays.asList(ids));
+
return true;
}
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseAddExe.java
new file mode 100644
index 0000000..0c118c4
--- /dev/null
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseAddExe.java
@@ -0,0 +1,40 @@
+package com.zcloud.basic.info.command;
+
+import com.alibaba.cola.exception.BizException;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
+import com.zcloud.basic.info.dto.DepartmentSuperviseAddCmd;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+
+/**
+ * web-app
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:45
+ */
+@Component
+@AllArgsConstructor
+public class DepartmentSuperviseAddExe {
+ private final DepartmentSuperviseGateway departmentSuperviseGateway;
+
+ @Transactional(rollbackFor = Exception.class)
+ public boolean execute(DepartmentSuperviseAddCmd cmd) {
+ DepartmentSuperviseE departmentSuperviseE = new DepartmentSuperviseE();
+ BeanUtils.copyProperties(cmd, departmentSuperviseE);
+ boolean res = false;
+ try {
+ res = departmentSuperviseGateway.add(departmentSuperviseE);
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+ if (!res) {
+ throw new BizException("保存失败");
+ }
+ return true;
+ }
+}
+
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseRemoveExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseRemoveExe.java
new file mode 100644
index 0000000..48a2b7f
--- /dev/null
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseRemoveExe.java
@@ -0,0 +1,39 @@
+package com.zcloud.basic.info.command;
+
+import com.alibaba.cola.exception.BizException;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+
+/**
+ * web-app
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Component
+@AllArgsConstructor
+public class DepartmentSuperviseRemoveExe {
+ private final DepartmentSuperviseGateway departmentSuperviseGateway;
+
+ @Transactional(rollbackFor = Exception.class)
+ public boolean execute(Long id) {
+ boolean res = departmentSuperviseGateway.deletedDepartmentSuperviseById(id);
+ if (!res) {
+ throw new BizException("删除失败");
+ }
+ return true;
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public boolean execute(Long[] ids) {
+ boolean res = departmentSuperviseGateway.deletedDepartmentSuperviseByIds(ids);
+ if (!res) {
+ throw new BizException("删除失败");
+ }
+ return true;
+ }
+}
+
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseUpdateExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseUpdateExe.java
new file mode 100644
index 0000000..a0f7fc2
--- /dev/null
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentSuperviseUpdateExe.java
@@ -0,0 +1,34 @@
+package com.zcloud.basic.info.command;
+
+import com.alibaba.cola.exception.BizException;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
+import com.zcloud.basic.info.dto.DepartmentSuperviseUpdateCmd;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+
+/**
+ * web-app
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Component
+@AllArgsConstructor
+public class DepartmentSuperviseUpdateExe {
+ private final DepartmentSuperviseGateway departmentSuperviseGateway;
+
+ @Transactional(rollbackFor = Exception.class)
+ public void execute(DepartmentSuperviseUpdateCmd departmentSuperviseUpdateCmd) {
+ DepartmentSuperviseE departmentSuperviseE = new DepartmentSuperviseE();
+ BeanUtils.copyProperties(departmentSuperviseUpdateCmd, departmentSuperviseE);
+ boolean res = departmentSuperviseGateway.update(departmentSuperviseE);
+ if (!res) {
+ throw new BizException("修改失败");
+ }
+ }
+}
+
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentUpdateExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentUpdateExe.java
index 7c88f0f..a75144b 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentUpdateExe.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/DepartmentUpdateExe.java
@@ -1,10 +1,14 @@
package com.zcloud.basic.info.command;
+import cn.hutool.core.collection.CollUtil;
import com.alibaba.cola.exception.BizException;
import com.jjb.saas.system.client.dept.facade.DeptFacade;
import com.jjb.saas.system.client.dept.request.FacadeUpdateDeptCmd;
+import com.zcloud.basic.info.domain.enums.CommonFlagEnum;
import com.zcloud.basic.info.domain.gateway.DepartmentGateway;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
import com.zcloud.basic.info.domain.model.DepartmentE;
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
import com.zcloud.basic.info.domain.model.FacadeDepartmentE;
import com.zcloud.basic.info.dto.DepartmentUpdateCmd;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
@@ -19,6 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
+import java.util.List;
import java.util.Map;
@@ -34,6 +39,7 @@ import java.util.Map;
public class DepartmentUpdateExe {
private final DepartmentGateway departmentGateway;
private final DepartmentRepository departmentRepository;
+ private final DepartmentSuperviseGateway departmentSuperviseGateway;
@DubboReference
private DeptFacade deptFacade;
@Autowired
@@ -51,6 +57,12 @@ public class DepartmentUpdateExe {
if (!res) {
throw new BizException("修改失败");
}
+ departmentSuperviseGateway.deletedDepartmentBySuperviseId(departmentUpdateCmd.getId());
+ if(CollUtil.isNotEmpty(departmentUpdateCmd.getDepartmentIdsList())&& CommonFlagEnum.YES.getCode().equals(departmentUpdateCmd.getSuperviseFlag())){
+ List departmentSuperviseEList =departmentE.initAdd(departmentUpdateCmd.getDepartmentIdsList(), departmentUpdateCmd.getId());
+ departmentSuperviseGateway.addbatch(departmentSuperviseEList);
+ }
+
FacadeDepartmentE deptE =FacadeDepartmentE.initUpdate(departmentE);
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java
index 91110a9..743ff12 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/UserAddExe.java
@@ -15,6 +15,7 @@ import com.zcloud.basic.info.domain.model.DepartmentE;
import com.zcloud.basic.info.domain.model.PostE;
import com.zcloud.basic.info.domain.model.UserE;
import com.zcloud.basic.info.domain.model.UserEmploymentLogE;
+import com.zcloud.basic.info.dto.CorpInfoAddCmd;
import com.zcloud.basic.info.dto.UserAddCmd;
import com.zcloud.basic.info.dto.UserXgfAddCmd;
import com.zcloud.basic.info.persistence.dataobject.*;
@@ -148,5 +149,8 @@ public class UserAddExe {
// todo 批量插入用户
}
+
+ public void addCorpInfo(CorpInfoAddCmd cmd) {
+ }
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/convertor/DepartmentSuperviseCoConvertor.java b/web-app/src/main/java/com/zcloud/basic/info/command/convertor/DepartmentSuperviseCoConvertor.java
new file mode 100644
index 0000000..d799826
--- /dev/null
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/convertor/DepartmentSuperviseCoConvertor.java
@@ -0,0 +1,26 @@
+package com.zcloud.basic.info.command.convertor;
+
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
+import com.zcloud.basic.info.dto.clientobject.DepartmentSuperviseCO;
+import com.zcloud.basic.info.persistence.dataobject.DepartmentSuperviseDO;
+import org.mapstruct.Mapper;
+
+import java.util.List;
+
+
+/**
+ * web-app
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:45
+ */
+@Mapper(componentModel = "spring")
+public interface DepartmentSuperviseCoConvertor {
+ /**
+ * @param departmentSuperviseDOs
+ * @return
+ */
+ List converDOsToCOs(List departmentSuperviseDOs);
+
+}
+
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java
index 630ca21..4e19f10 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentQueryExe.java
@@ -5,18 +5,16 @@ import com.alibaba.cola.dto.PageResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.basic.info.command.convertor.DepartmentCoConvertor;
+import com.zcloud.basic.info.domain.enums.CommonFlagEnum;
import com.zcloud.basic.info.domain.model.DepartmentE;
-import com.zcloud.basic.info.dto.CorpDepartmentQry;
-import com.zcloud.basic.info.dto.DepartmentPageQry;
-import com.zcloud.basic.info.dto.DepartmentQry;
-import com.zcloud.basic.info.dto.DepartmentTreeQry;
-import com.zcloud.basic.info.dto.clientobject.CorpDepartmentCO;
-import com.zcloud.basic.info.dto.clientobject.DepartmentCO;
-import com.zcloud.basic.info.dto.clientobject.DepartmentInfoCO;
-import com.zcloud.basic.info.dto.clientobject.DepartmentTreeInfoCO;
+import com.zcloud.basic.info.dto.*;
+import com.zcloud.basic.info.dto.clientobject.*;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
+import com.zcloud.basic.info.persistence.dataobject.DepartmentSuperviseDO;
import com.zcloud.basic.info.persistence.dataobject.PostDO;
+import com.zcloud.basic.info.persistence.dataobject.PostDepartmentDO;
import com.zcloud.basic.info.persistence.repository.DepartmentRepository;
+import com.zcloud.basic.info.persistence.repository.DepartmentSuperviseRepository;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Tools;
import lombok.AllArgsConstructor;
@@ -39,6 +37,7 @@ import java.util.stream.Collectors;
public class DepartmentQueryExe {
private final DepartmentRepository departmentRepository;
private final DepartmentCoConvertor departmentCoConvertor;
+ private final DepartmentSuperviseRepository departmentSuperviseRepository;
/**
* 分页
@@ -67,7 +66,7 @@ public class DepartmentQueryExe {
}
List examCenterCOS = departmentCoConvertor.converDOsToInfoCOs(pageResponse);
//GBS部门根节点父部门是tenantId
- return Tools.buildEntityTree(examCenterCOS, "id", "parentId", "childrenList",AuthContext.getTenantId());
+ return Tools.buildEntityTree(examCenterCOS, "id", "parentId", "childrenList",departmentQry.getEqCorpinfoId());
}
@@ -87,6 +86,16 @@ public class DepartmentQueryExe {
departmentCO.setParentName(departmentDO.getName());
}
}
+ if(CommonFlagEnum.YES.getCode().equals(departmentCO.getSuperviseFlag())){
+// departmentSuperviseRepository
+ DepartmentSupervisePageQry qry = new DepartmentSupervisePageQry();
+ qry.setEqSuperviseDepartmentId(id);
+ Map params = PageQueryHelper.toHashMap(qry);
+ List postDepartmentDOS = departmentSuperviseRepository.listBySuperviseDepartmentId(params);
+ if(CollUtil.isNotEmpty(postDepartmentDOS)){
+ departmentCO.setDepartmentIdsList(postDepartmentDOS);
+ }
+ }
return departmentCO;
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentSuperviseQueryExe.java b/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentSuperviseQueryExe.java
new file mode 100644
index 0000000..ba341ab
--- /dev/null
+++ b/web-app/src/main/java/com/zcloud/basic/info/command/query/DepartmentSuperviseQueryExe.java
@@ -0,0 +1,42 @@
+package com.zcloud.basic.info.command.query;
+
+import com.alibaba.cola.dto.PageResponse;
+import com.zcloud.basic.info.command.convertor.DepartmentSuperviseCoConvertor;
+import com.zcloud.basic.info.dto.DepartmentSupervisePageQry;
+import com.zcloud.basic.info.dto.clientobject.DepartmentSuperviseCO;
+import com.zcloud.basic.info.persistence.dataobject.DepartmentSuperviseDO;
+import com.zcloud.basic.info.persistence.repository.DepartmentSuperviseRepository;
+import com.zcloud.gbscommon.utils.PageQueryHelper;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
+
+
+/**
+ * web-app
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Component
+@AllArgsConstructor
+public class DepartmentSuperviseQueryExe {
+ private final DepartmentSuperviseRepository departmentSuperviseRepository;
+ private final DepartmentSuperviseCoConvertor departmentSuperviseCoConvertor;
+
+ /**
+ * 分页
+ *
+ * @param departmentSupervisePageQry
+ * @return
+ */
+ public PageResponse execute(DepartmentSupervisePageQry departmentSupervisePageQry) {
+ Map params = PageQueryHelper.toHashMap(departmentSupervisePageQry);
+ PageResponse pageResponse = departmentSuperviseRepository.listPage(params);
+ List examCenterCOS = departmentSuperviseCoConvertor.converDOsToCOs(pageResponse.getData());
+ return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
+ }
+}
+
diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java
index d0881b1..4d77645 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoServiceImpl.java
@@ -6,6 +6,7 @@ import com.jjb.saas.framework.auth.utils.AuthContext;
import com.zcloud.basic.info.api.CorpInfoServiceI;
import com.zcloud.basic.info.command.*;
import com.zcloud.basic.info.command.query.CorpInfoQueryExe;
+import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.basic.info.dto.*;
import com.zcloud.basic.info.dto.clientobject.CorpDepartmentCO;
import com.zcloud.basic.info.dto.clientobject.CorpInfoCO;
@@ -31,7 +32,8 @@ public class CorpInfoServiceImpl implements CorpInfoServiceI {
private final CorpInfoRemoveExe corpInfoRemoveExe;
private final CorpInfoQueryExe corpInfoQueryExe;
// TODO 下面的sysUser废弃了,后续写完写的执行器需要重新完善
-// private final SysUserAddExe sysUserAddExe;
+ private final UserAddExe userAddExe;
+ private final DepartmentAddExe departmentAddExe;
// private final SysUserUpdateExe sysUserUpdateExe;
@Override
@@ -42,8 +44,7 @@ public class CorpInfoServiceImpl implements CorpInfoServiceI {
@Override
public SingleResponse add(CorpInfoAddCmd cmd) {
-
- Long id = corpInfoAddExe.execute(cmd);
+ corpInfoAddExe.execute(cmd);
return SingleResponse.buildSuccess();
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoXgfServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoXgfServiceImpl.java
index 24be476..094ffe6 100644
--- a/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoXgfServiceImpl.java
+++ b/web-app/src/main/java/com/zcloud/basic/info/service/CorpInfoXgfServiceImpl.java
@@ -28,8 +28,7 @@ public class CorpInfoXgfServiceImpl implements CorpInfoXgfServiceI {
private final CorpInfoXgfUpdateExe corpInfoXgfUpdateExe;
private final CorpInfoXgfRemoveExe corpInfoXgfRemoveExe;
private final CorpInfoXgfQueryExe corpInfoXgfQueryExe;
- // TODO 下面的sysUser废弃了,后续写完写的执行器需要重新完善
-// private final SysUserAddExe sysUserAddExe;
+
@Override
public PageResponse listPage(CorpInfoXgfPageQry qry) {
@@ -38,10 +37,7 @@ public class CorpInfoXgfServiceImpl implements CorpInfoXgfServiceI {
@Override
public SingleResponse add(CorpInfoXgfAddCmd cmd) {
- Long userId = AuthContext.getUserId();
- Long id = corpInfoXgfAddExe.execute(cmd);
- //新增企业成功后新增企业主账号用户(企业主账号的gbsId与企业的gbsId一致) 2025-10-31 huangyuxuan
-// todo 再完善
+ corpInfoXgfAddExe.execute(cmd);
return SingleResponse.buildSuccess();
}
diff --git a/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentSuperviseServiceImpl.java b/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentSuperviseServiceImpl.java
new file mode 100644
index 0000000..b8fb97f
--- /dev/null
+++ b/web-app/src/main/java/com/zcloud/basic/info/service/DepartmentSuperviseServiceImpl.java
@@ -0,0 +1,59 @@
+package com.zcloud.basic.info.service;
+
+import com.alibaba.cola.dto.PageResponse;
+import com.alibaba.cola.dto.SingleResponse;
+import com.zcloud.basic.info.api.DepartmentSuperviseServiceI;
+import com.zcloud.basic.info.command.DepartmentSuperviseAddExe;
+import com.zcloud.basic.info.command.DepartmentSuperviseRemoveExe;
+import com.zcloud.basic.info.command.DepartmentSuperviseUpdateExe;
+import com.zcloud.basic.info.command.query.DepartmentSuperviseQueryExe;
+import com.zcloud.basic.info.dto.DepartmentSuperviseAddCmd;
+import com.zcloud.basic.info.dto.DepartmentSupervisePageQry;
+import com.zcloud.basic.info.dto.DepartmentSuperviseUpdateCmd;
+import com.zcloud.basic.info.dto.clientobject.DepartmentSuperviseCO;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+
+/**
+ * web-app
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Service
+@AllArgsConstructor
+public class DepartmentSuperviseServiceImpl implements DepartmentSuperviseServiceI {
+ private final DepartmentSuperviseAddExe departmentSuperviseAddExe;
+ private final DepartmentSuperviseUpdateExe departmentSuperviseUpdateExe;
+ private final DepartmentSuperviseRemoveExe departmentSuperviseRemoveExe;
+ private final DepartmentSuperviseQueryExe departmentSuperviseQueryExe;
+
+ @Override
+ public PageResponse listPage(DepartmentSupervisePageQry qry) {
+
+ return departmentSuperviseQueryExe.execute(qry);
+ }
+
+ @Override
+ public SingleResponse add(DepartmentSuperviseAddCmd cmd) {
+
+ departmentSuperviseAddExe.execute(cmd);
+ return SingleResponse.buildSuccess();
+ }
+
+ @Override
+ public void edit(DepartmentSuperviseUpdateCmd departmentSuperviseUpdateCmd) {
+ departmentSuperviseUpdateExe.execute(departmentSuperviseUpdateCmd);
+ }
+
+ @Override
+ public void remove(Long id) {
+ departmentSuperviseRemoveExe.execute(id);
+ }
+
+ @Override
+ public void removeBatch(Long[] ids) {
+ departmentSuperviseRemoveExe.execute(ids);
+ }
+}
+
diff --git a/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentSuperviseServiceI.java b/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentSuperviseServiceI.java
new file mode 100644
index 0000000..ae4ad63
--- /dev/null
+++ b/web-client/src/main/java/com/zcloud/basic/info/api/DepartmentSuperviseServiceI.java
@@ -0,0 +1,27 @@
+package com.zcloud.basic.info.api;
+
+import com.alibaba.cola.dto.PageResponse;
+import com.alibaba.cola.dto.SingleResponse;
+import com.zcloud.basic.info.dto.DepartmentSuperviseAddCmd;
+import com.zcloud.basic.info.dto.DepartmentSupervisePageQry;
+import com.zcloud.basic.info.dto.DepartmentSuperviseUpdateCmd;
+import com.zcloud.basic.info.dto.clientobject.DepartmentSuperviseCO;
+
+/**
+ * web-client
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+public interface DepartmentSuperviseServiceI {
+ PageResponse listPage(DepartmentSupervisePageQry qry);
+
+ SingleResponse add(DepartmentSuperviseAddCmd cmd);
+
+ void edit(DepartmentSuperviseUpdateCmd cmd);
+
+ void remove(Long id);
+
+ void removeBatch(Long[] ids);
+}
+
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoAddCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoAddCmd.java
index 50925f4..c49bdc8 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoAddCmd.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoAddCmd.java
@@ -31,8 +31,6 @@ public class CorpInfoAddCmd extends Command {
@ApiModelProperty(value = "企业名称", name = "corpName", required = true)
@NotEmpty(message = "企业名称不能为空")
private String corpName;
- @ApiModelProperty(value = "企业账号")
- private String corpAccount;
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)", name = "type", required = true)
private Integer type;
@ApiModelProperty(value = "相关方等级,1 一级相关方,2 二级相关方", name = "xgfLevel", required = true)
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoPageQry.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoPageQry.java
index 21ba85d..9bccf82 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoPageQry.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoPageQry.java
@@ -42,9 +42,6 @@ public class CorpInfoPageQry extends PageQuery {
@ApiModelProperty(value = "企业类型1:监管 2:企业 3:相关方", name = "enterpriseType", required = true)
private Integer enterpriseType;
- @ApiModelProperty(value = "企业账号", name = "likeCorpAccount")
- private String likeCorpAccount;
-
@ApiModelProperty(value = "统一社会信用代码", name = "code", required = true)
private String eqCode;
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoUpdateCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoUpdateCmd.java
index 6f03f94..ef33bd0 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoUpdateCmd.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoUpdateCmd.java
@@ -33,8 +33,6 @@ public class CorpInfoUpdateCmd extends Command {
@ApiModelProperty(value = "企业名称", name = "corpName", required = true)
@NotEmpty(message = "企业名称不能为空")
private String corpName;
- @ApiModelProperty(value = "企业账号")
- private String corpAccount;
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)", name = "type", required = true)
private Integer type;
@ApiModelProperty(value = "相关方等级,1 一级相关方,2 二级相关方", name = "xgfLevel", required = true)
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfAddCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfAddCmd.java
index 2da1dea..1c21419 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfAddCmd.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfAddCmd.java
@@ -27,8 +27,6 @@ public class CorpInfoXgfAddCmd extends Command {
@ApiModelProperty(value = "企业名称,汉字30以内", name = "corpName", required = true)
@NotEmpty(message = "企业名称不能为空")
private String corpName;
- @ApiModelProperty(value = "企业账号")
- private String corpAccount;
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)", name = "type", required = true)
private Integer type;
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfUpdateCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfUpdateCmd.java
index e623750..9e44702 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfUpdateCmd.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/CorpInfoXgfUpdateCmd.java
@@ -34,8 +34,6 @@ public class CorpInfoXgfUpdateCmd extends Command {
@ApiModelProperty(value = "企业名称", name = "corpName", required = true)
@NotEmpty(message = "企业名称不能为空")
private String corpName;
- @ApiModelProperty(value = "企业账号")
- private String corpAccount;
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)", name = "type", required = true)
private Integer type;
@ApiModelProperty(value = "相关方等级,1 一级相关方,2 二级相关方", name = "xgfLevel", required = true)
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentAddCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentAddCmd.java
index f22009f..0b10ef2 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentAddCmd.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentAddCmd.java
@@ -10,6 +10,7 @@ import lombok.NoArgsConstructor;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
+import java.util.List;
/**
* web-client
@@ -47,8 +48,13 @@ public class DepartmentAddCmd extends Command {
private Integer superviseFlag;
@ApiModelProperty(value = "是否安全管理部门 0-否 1-是", name = "securityFlag")
private Integer securityFlag;
+ @ApiModelProperty(value = "部门职能")
+ private String departmentFunction;
@ApiModelProperty(value = "备注", name = "remarks")
private String remarks;
+ @ApiModelProperty(value = "监管部门权限", name = "departmentIdsString")
+ private List departmentIdsList;
+
}
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSuperviseAddCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSuperviseAddCmd.java
new file mode 100644
index 0000000..64fbcd8
--- /dev/null
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSuperviseAddCmd.java
@@ -0,0 +1,32 @@
+package com.zcloud.basic.info.dto;
+
+import com.alibaba.cola.dto.Command;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * web-client
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:45
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class DepartmentSuperviseAddCmd extends Command {
+ @ApiModelProperty(value = "监管部门id", name = "superviseDepartmentId", required = true)
+ @NotNull(message = "监管部门id不能为空")
+ private Long superviseDepartmentId;
+
+ @ApiModelProperty(value = "部门id", name = "departmentId", required = true)
+ @NotNull(message = "部门id不能为空")
+ private Long departmentId;
+
+}
+
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSupervisePageQry.java b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSupervisePageQry.java
new file mode 100644
index 0000000..248ce10
--- /dev/null
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSupervisePageQry.java
@@ -0,0 +1,29 @@
+package com.zcloud.basic.info.dto;
+
+import com.alibaba.cola.dto.PageQuery;
+import lombok.Data;
+
+
+/**
+ * web-client
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Data
+public class DepartmentSupervisePageQry extends PageQuery {
+
+ /**
+ * 查询条件操作前缀,支持以下几种数据库查询操作:
+ * - `like`: 模糊匹配查询,对应SQL的LIKE操作符
+ * - `eq`: 等值查询,对应SQL的=操作符
+ * - `gt`: 大于比较查询
+ * - `lt`: 小于比较查询
+ * - `ge`: 大于等于比较查询
+ * - `le`: 小于等于比较查询
+ * - `ne`: 不等比较查询,对应SQL的!=操作符
+ */
+ private String likePostDepartmentId;
+ private Long eqSuperviseDepartmentId;
+}
+
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSuperviseUpdateCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSuperviseUpdateCmd.java
new file mode 100644
index 0000000..226a942
--- /dev/null
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentSuperviseUpdateCmd.java
@@ -0,0 +1,37 @@
+package com.zcloud.basic.info.dto;
+
+import com.alibaba.cola.dto.Command;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+
+/**
+ * web-client
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class DepartmentSuperviseUpdateCmd extends Command {
+ @ApiModelProperty(value = "主键", name = "id", required = true)
+ @NotNull(message = "主键不能为空")
+ private Long id;
+ @ApiModelProperty(value = "业务主键id", name = "superviseId", required = true)
+ @NotEmpty(message = "业务主键id不能为空")
+ private String superviseId;
+ @ApiModelProperty(value = "监管部门id", name = "superviseDepartmentId", required = true)
+ @NotNull(message = "监管部门id不能为空")
+ private Long superviseDepartmentId;
+ @ApiModelProperty(value = "部门id", name = "departmentId", required = true)
+ @NotNull(message = "部门id不能为空")
+ private Long departmentId;
+}
+
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentUpdateCmd.java b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentUpdateCmd.java
index 4224676..81afc12 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentUpdateCmd.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/DepartmentUpdateCmd.java
@@ -10,6 +10,7 @@ import lombok.NoArgsConstructor;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
+import java.util.List;
/**
* web-client
@@ -45,8 +46,11 @@ public class DepartmentUpdateCmd extends Command {
private Integer superviseFlag;
@ApiModelProperty(value = "是否安全管理部门 0-否 1-是", name = "securityFlag")
private Integer securityFlag;
+ @ApiModelProperty(value = "部门职能")
+ private String departmentFunction;
@ApiModelProperty(value = "备注", name = "remarks")
private String remarks;
-
+ @ApiModelProperty(value = "监管部门权限", name = "departmentIdsString")
+ private List departmentIdsList;
}
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoCO.java b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoCO.java
index 6f8452b..bc2233f 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoCO.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoCO.java
@@ -26,8 +26,7 @@ public class CorpInfoCO extends ClientObject {
//企业名称
@ApiModelProperty(value = "企业名称")
private String corpName;
- @ApiModelProperty(value = "企业账号")
- private String corpAccount;
+
//企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)")
private Integer type;
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoXgfCO.java b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoXgfCO.java
index d74b2ec..7a82b38 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoXgfCO.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/CorpInfoXgfCO.java
@@ -28,8 +28,6 @@ public class CorpInfoXgfCO extends ClientObject {
//企业名称
@ApiModelProperty(value = "企业名称")
private String corpName;
- @ApiModelProperty(value = "企业账号")
- private String corpAccount;
//企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)")
private Integer type;
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentCO.java b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentCO.java
index b53786a..2c3ac9b 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentCO.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentCO.java
@@ -45,7 +45,8 @@ public class DepartmentCO extends ClientObject {
private Integer superviseFlag;
@ApiModelProperty(value = "是否安全管理部门 0-否 1-是", name = "securityFlag")
private Integer securityFlag;
-
+ @ApiModelProperty(value = "部门职能")
+ private String departmentFunction;
//乐观锁
@ApiModelProperty(value = "乐观锁")
private Integer version;
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentInfoCO.java b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentInfoCO.java
index 08ddd12..9233277 100644
--- a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentInfoCO.java
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentInfoCO.java
@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
+import java.util.List;
/**
@@ -46,7 +47,8 @@ public class DepartmentInfoCO extends ClientObject {
private Integer superviseFlag;
@ApiModelProperty(value = "是否安全管理部门 0-否 1-是", name = "securityFlag")
private Integer securityFlag;
-
+ @ApiModelProperty(value = "部门职能")
+ private String departmentFunction;
//乐观锁
@ApiModelProperty(value = "乐观锁")
private Integer version;
@@ -83,5 +85,7 @@ public class DepartmentInfoCO extends ClientObject {
//环境
@ApiModelProperty(value = "环境")
private String env;
+ @ApiModelProperty(value = "监管部门权限", name = "departmentIdsList")
+ private List departmentIdsList;
}
diff --git a/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentSuperviseCO.java b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentSuperviseCO.java
new file mode 100644
index 0000000..4be71ca
--- /dev/null
+++ b/web-client/src/main/java/com/zcloud/basic/info/dto/clientobject/DepartmentSuperviseCO.java
@@ -0,0 +1,67 @@
+package com.zcloud.basic.info.dto.clientobject;
+
+import com.alibaba.cola.dto.ClientObject;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+
+/**
+ * web-client
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:45
+ */
+@Data
+public class DepartmentSuperviseCO extends ClientObject {
+ //主键
+ @ApiModelProperty(value = "主键")
+ private Long id;
+ //业务主键id
+ @ApiModelProperty(value = "业务主键id")
+ private String superviseId;
+ //监管部门id
+ @ApiModelProperty(value = "监管部门id")
+ private Long superviseDepartmentId;
+ //部门id
+ @ApiModelProperty(value = "部门id")
+ private Long departmentId;
+ //乐观锁
+ @ApiModelProperty(value = "乐观锁")
+ private Integer version;
+ //创建人
+ @ApiModelProperty(value = "创建人")
+ private Long createId;
+ //创建人姓名
+ @ApiModelProperty(value = "创建人姓名")
+ private String createName;
+ //创建时间
+ @ApiModelProperty(value = "创建时间")
+ private LocalDateTime createTime;
+ //更新人
+ @ApiModelProperty(value = "更新人")
+ private Long updateId;
+ //修改人名称
+ @ApiModelProperty(value = "修改人名称")
+ private String updateName;
+ //更新时间
+ @ApiModelProperty(value = "更新时间")
+ private LocalDateTime updateTime;
+ //描述
+ @ApiModelProperty(value = "描述")
+ private String remarks;
+ //是否删除
+ @ApiModelProperty(value = "是否删除")
+ private String deleteEnum;
+ //租户id
+ @ApiModelProperty(value = "租户id")
+ private Long tenantId;
+ //机构id
+ @ApiModelProperty(value = "机构id")
+ private Long orgId;
+ //环境
+ @ApiModelProperty(value = "环境")
+ private String env;
+}
+
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CommonFlagEnum.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CommonFlagEnum.java
new file mode 100644
index 0000000..3329d79
--- /dev/null
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CommonFlagEnum.java
@@ -0,0 +1,17 @@
+package com.zcloud.basic.info.domain.enums;
+
+import lombok.Getter;
+
+@Getter
+public enum CommonFlagEnum {
+ NO(0,"否"),
+ YES(1,"是"),
+ ;
+ private final Integer code;
+ private final String name;
+
+ CommonFlagEnum(Integer code,String name) {
+ this.code = code;
+ this.name = name;
+ }
+}
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpTypeEnum.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpTypeEnum.java
index 6a52f26..1cbc8be 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpTypeEnum.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/CorpTypeEnum.java
@@ -8,34 +8,35 @@ import java.util.stream.Collectors;
/**
* corp_info 中的type字段枚举(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)
* 与传入enterpriseType中的关联关系
+ * .企业类型1:监管 2:企业 3:相关方
*/
@Getter
public enum CorpTypeEnum {
- OrdinaryEnterprises(0,"普通企业",2),
- groupUnits(1, "集团单位",1),
- share(2,"股份单位",2),
- serviceProvider(3, "相关方企业",3),
- cargoOwner(4, "货主单位",3),
- portUnit(5, "驻港单位",3);
+ OrdinaryEnterprises(0,"普通企业",UserTypeEnum.QY.getCode()),
+ groupUnits(1, "集团单位",UserTypeEnum.JG.getCode()),
+ share(2,"股份单位",UserTypeEnum.QY.getCode()),
+ serviceProvider(3, "相关方企业",UserTypeEnum.XGF.getCode()),
+ cargoOwner(4, "货主单位",UserTypeEnum.XGF.getCode()),
+ portUnit(5, "驻港单位",UserTypeEnum.XGF.getCode());
private static final Map> ENTERPRISE_TYPE_CODE_MAP = new HashMap<>();
private final Integer code;
private final String name;
//传入的企业类型企业类型 1:监管 2:企业 3:相关方
- private final Integer enterpriseType;
+ private final Integer userType;
- CorpTypeEnum(Integer code, String name,Integer enterpriseType) {
+ CorpTypeEnum(Integer code, String name,Integer userType) {
this.code = code;
this.name = name;
- this.enterpriseType = enterpriseType;
+ this.userType = userType;
}
static {
Arrays.stream(CorpTypeEnum.values())
- .collect(Collectors.groupingBy(CorpTypeEnum::getEnterpriseType))
- .forEach((enterpriseType, corpTypes) ->
+ .collect(Collectors.groupingBy(CorpTypeEnum::getUserType))
+ .forEach((userType, corpTypes) ->
ENTERPRISE_TYPE_CODE_MAP.put(
- enterpriseType,
+ userType,
corpTypes.stream().map(CorpTypeEnum::getCode).collect(Collectors.toList())
)
);
@@ -44,6 +45,14 @@ public enum CorpTypeEnum {
public static List getCodesByEnterpriseType(Integer enterpriseType) {
return ENTERPRISE_TYPE_CODE_MAP.getOrDefault(enterpriseType, Collections.emptyList());
}
+ public static Integer getUserTypeByCode(Integer code) {
+ for (CorpTypeEnum corpType : values()) {
+ if (corpType.code.equals(code)) {
+ return corpType.userType;
+ }
+ }
+ return null;
+ }
}
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserTypeEnum.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserTypeEnum.java
index 2a8abf9..22c7bcf 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserTypeEnum.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/enums/UserTypeEnum.java
@@ -1,7 +1,6 @@
package com.zcloud.basic.info.domain.enums;
import lombok.Getter;
-
@Getter
public enum UserTypeEnum {
JG(1,"监管"),
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/CorpInfoGateway.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/CorpInfoGateway.java
index e1a4d19..29b1609 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/CorpInfoGateway.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/CorpInfoGateway.java
@@ -2,6 +2,9 @@ package com.zcloud.basic.info.domain.gateway;
import com.zcloud.basic.info.domain.model.CorpInfoE;
+import javax.validation.constraints.NotEmpty;
+import java.util.List;
+
/**
* web-domain
*
@@ -28,5 +31,6 @@ public interface CorpInfoGateway {
Boolean deletedCorpInfoByIds(Long[] id);
void changeCompanyName(CorpInfoE corpInfoE);
+
}
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/DepartmentSuperviseGateway.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/DepartmentSuperviseGateway.java
new file mode 100644
index 0000000..d3585aa
--- /dev/null
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/gateway/DepartmentSuperviseGateway.java
@@ -0,0 +1,37 @@
+package com.zcloud.basic.info.domain.gateway;
+
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
+
+import java.util.List;
+
+/**
+ * web-domain
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+public interface DepartmentSuperviseGateway {
+
+ /**
+ * 新增
+ */
+ Boolean add(DepartmentSuperviseE departmentSuperviseE);
+
+ /**
+ * 修改
+ */
+ Boolean update(DepartmentSuperviseE departmentSuperviseE);
+
+ /**
+ * 删除
+ */
+ Boolean deletedDepartmentSuperviseById(Long id);
+
+ Boolean deletedDepartmentSuperviseByIds(Long[] id);
+
+ void addbatch(List departmentSuperviseEList);
+
+ void deletedDepartmentBySuperviseId(Long id);
+ void deletedDepartmentBySuperviseIdList(List id);
+}
+
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoE.java
index 64960a5..5ac468f 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoE.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoE.java
@@ -28,7 +28,6 @@ public class CorpInfoE extends BaseE {
//企业名称
private String corpName;
- private String corpAccount;
//企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)
private Integer type;
//相关方等级,1 一级相关方,2 二级相关方
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoXgfE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoXgfE.java
index 752847d..2a6b063 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoXgfE.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/CorpInfoXgfE.java
@@ -22,7 +22,6 @@ public class CorpInfoXgfE extends BaseE {
//企业名称
private String corpName;
- private String corpAccount;
//企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)
private Integer type;
//相关方等级,1 一级相关方,2 二级相关方
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentE.java
index 4d35b0a..37f6a8e 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentE.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentE.java
@@ -2,11 +2,15 @@ package com.zcloud.basic.info.domain.model;
import com.alibaba.cola.domain.Entity;
import com.jjb.saas.framework.domain.model.BaseE;
+import com.zcloud.gbscommon.utils.Tools;
+import com.zcloud.gbscommon.utils.UuidUtil;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import javax.validation.constraints.NotEmpty;
import java.time.LocalDateTime;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -38,7 +42,30 @@ public class DepartmentE extends BaseE {
private Integer superviseFlag;
//是否安全管理部门 0-否 1-是
private Integer securityFlag;
+ private String departmentFunction;
+
+ /**
+ * 初始化添加部门关联部门行为
+ * @param departmentIdsString
+ * @param superviseDepartmentId
+ * @return
+ */
+ public List initAdd(List departmentIdsString, Long superviseDepartmentId) {
+ List departmentSuperviseEList = new ArrayList<>();
+ departmentIdsString.forEach(departmentId -> {
+ DepartmentSuperviseE departmentSuperviseE = new DepartmentSuperviseE();
+ departmentSuperviseE.setSuperviseId(Tools.get32UUID());
+ departmentSuperviseE.setDepartmentId(departmentId);
+ departmentSuperviseE.setSuperviseDepartmentId(superviseDepartmentId);
+ departmentSuperviseEList.add(departmentSuperviseE);
+ });
+ return departmentSuperviseEList;
+ }
+ public void initCorpInfo(Long corpInfoId, String corpName) {
+ this.setCorpinfoId(corpInfoId);
+ this.setLevelName(corpName);
+ }
}
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentSuperviseE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentSuperviseE.java
new file mode 100644
index 0000000..794b4d5
--- /dev/null
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/DepartmentSuperviseE.java
@@ -0,0 +1,67 @@
+package com.zcloud.basic.info.domain.model;
+
+import com.jjb.saas.framework.domain.model.BaseE;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+/**
+ * web-domain
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Data
+public class DepartmentSuperviseE extends BaseE {
+ //主键
+ private Long id;
+ //业务主键id
+ private String superviseId;
+ //监管部门id
+ private Long superviseDepartmentId;
+ //部门id
+ private Long departmentId;
+ //乐观锁
+ private Integer version;
+ //创建人
+ private Long createId;
+ //创建人姓名
+ private String createName;
+ //创建时间
+ private LocalDateTime createTime;
+ //更新人
+ private Long updateId;
+ //修改人名称
+ private String updateName;
+ //更新时间
+ private LocalDateTime updateTime;
+ //描述
+ private String remarks;
+ //是否删除
+ private String deleteEnum;
+ //租户id
+ private Long tenantId;
+ //机构id
+ private Long orgId;
+ //环境
+ private String env;
+
+ public void initAdd(DepartmentSuperviseE departmentSuperviseE, Long corpinfoId, Long id) {
+ /**
+ * if(Objects.isNull(departmentIds) || departmentIds.length == 0){
+ * // 没有部门id集合, 可能是没有给部门权限
+ * return new ArrayList<>();
+ * }
+ * List postDepartmentEList = new ArrayList<>();
+ * for (Long departmentId : departmentIds) {
+ * PostDepartmentE e = new PostDepartmentE();
+ * e.setPostDepartmentId(UuidUtil.get32UUID());
+ * e.setPostId(postId);
+ * e.setDepartmentId(departmentId);
+ * postDepartmentEList.add(e);
+ * }
+ * return postDepartmentEList;
+ */
+ }
+}
+
diff --git a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java
index d3e4c54..3e4fe8c 100644
--- a/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java
+++ b/web-domain/src/main/java/com/zcloud/basic/info/domain/model/UserE.java
@@ -5,6 +5,7 @@ import com.alibaba.cola.dto.Response;
import com.alibaba.cola.exception.BizException;
import com.jjb.saas.framework.domain.model.BaseE;
import com.zcloud.gbscommon.excelEntity.RiskUnitExcelEntity;
+import com.zcloud.basic.info.domain.enums.CorpTypeEnum;
import com.zcloud.gbscommon.excelEntity.UserExcelExportEntity;
import com.zcloud.gbscommon.excelEntity.UserExcelImportEntity;
import com.zcloud.gbscommon.utils.ExcelUtils;
@@ -196,5 +197,10 @@ public class UserE extends BaseE {
return list;
}
+ public void initCorpInfo(CorpInfoE examTypeE, Long departmentId) {
+ this.setName(examTypeE.getCorpName());
+ this.setDepartmentId(departmentId);
+ this.setUserType(CorpTypeEnum.getUserTypeByCode(examTypeE.getType()));
+ }
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/CorpInfoGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/CorpInfoGatewayImpl.java
index cde0057..3080cf4 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/CorpInfoGatewayImpl.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/CorpInfoGatewayImpl.java
@@ -1,16 +1,22 @@
package com.zcloud.basic.info.gatewayimpl;
+import com.alibaba.cola.exception.BizException;
+import com.jjb.saas.system.client.tenant.facade.TenantFacade;
+import com.jjb.saas.system.client.tenant.request.OtaTenantAddCmd;
import com.zcloud.basic.info.domain.gateway.CorpInfoGateway;
import com.zcloud.basic.info.domain.model.CorpInfoE;
import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO;
import com.zcloud.basic.info.persistence.repository.CorpInfoRepository;
import com.zcloud.gbscommon.utils.Tools;
import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.Collections;
+import java.util.List;
/**
* web-infrastructure
@@ -20,17 +26,35 @@ import java.util.Collections;
*/
@Service
@AllArgsConstructor
+@Slf4j
public class CorpInfoGatewayImpl implements CorpInfoGateway {
private final CorpInfoRepository corpInfoRepository;
+ @DubboReference
+ private TenantFacade tenantFacade;
@Override
public Long add(CorpInfoE corpInfoE) {
+ Long corpCount = corpInfoRepository.getCorpCountByCorpName(corpInfoE.getCorpName());
+ if(corpCount>0){
+ throw new BizException("企业名称已存在");
+ }
+
CorpInfoDO d = new CorpInfoDO();
BeanUtils.copyProperties(corpInfoE, d);
if(StringUtils.isEmpty(d.getCorpinfoId())){
d.setCorpinfoId(Tools.get32UUID());
}
corpInfoRepository.save(d);
+
+ OtaTenantAddCmd otaTenantAddCmd = new OtaTenantAddCmd();
+ otaTenantAddCmd.setAccount(corpInfoE.getCorpName());
+ otaTenantAddCmd.setTenantId(d.getId());
+ otaTenantAddCmd.setTenantName(corpInfoE.getCorpName());
+ otaTenantAddCmd.setPassword("Aa@123456789");
+ log.info("CorpInfoXgfAddExe,新增企业调用GBS请求:{}",otaTenantAddCmd.toString());
+ //TODO 企业推送gbs报错解密失败
+ // Response response = tenantFacade.addOtaTenant(otaTenantAddCmd);
+ //log.info("CorpInfoXgfAddExe,新增企业调用GBS返回:{}",response.toString());
return d.getId();
}
@@ -58,5 +82,6 @@ public class CorpInfoGatewayImpl implements CorpInfoGateway {
corpInfo.setCorpName(corpInfoE.getCorpName());
corpInfoRepository.updateById(corpInfo);
}
+
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentGatewayImpl.java
index ee46b1b..7d6650e 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentGatewayImpl.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentGatewayImpl.java
@@ -1,12 +1,19 @@
package com.zcloud.basic.info.gatewayimpl;
+import com.alibaba.cola.dto.Response;
+import com.jjb.saas.framework.auth.utils.AuthContext;
+import com.jjb.saas.system.client.dept.facade.DeptFacade;
+import com.jjb.saas.system.client.dept.request.FacadeAddDeptCmd;
+import com.jjb.saas.system.enums.org.DeptTypeEnum;
import com.zcloud.basic.info.domain.gateway.DepartmentGateway;
import com.zcloud.basic.info.domain.model.DepartmentE;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
import com.zcloud.basic.info.persistence.repository.DepartmentRepository;
import com.zcloud.gbscommon.utils.Tools;
import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
@@ -20,17 +27,38 @@ import java.util.Collections;
*/
@Service
@AllArgsConstructor
+@Slf4j
public class DepartmentGatewayImpl implements DepartmentGateway {
private final DepartmentRepository departmentRepository;
-
+ @DubboReference
+ private DeptFacade deptFacade;
@Override
public Long add(DepartmentE departmentE) {
+ //TODO 父id的值待定
+ if(departmentE.getParentId()==null){
+ departmentE.setParentId(AuthContext.getTenantId());
+ }
+ if(departmentE.getCorpinfoId() == null){
+ departmentE.setCorpinfoId(AuthContext.getTenantId());
+ }
DepartmentDO d = new DepartmentDO();
BeanUtils.copyProperties(departmentE, d);
if(StringUtils.isEmpty(d.getDepartmentId())){
d.setDepartmentId(Tools.get32UUID());
}
departmentRepository.save(d);
+
+
+ // 需要调用GBS,新增
+ FacadeAddDeptCmd deptCmd = new FacadeAddDeptCmd();
+ deptCmd.setLinkId(d.getId());
+ deptCmd.setLinkName(departmentE.getName());
+
+ deptCmd.setParentId(departmentE.getParentId());
+ deptCmd.setDeptTypeEnum(DeptTypeEnum.DEPARTMENT.getValue());
+ //TODO gbs部门表 sys_dept tenant_id,parent_ids,add_type_enum,存储错误,导致gbs页面看不到,参数还没有,待定
+ Response response = deptFacade.addDept(deptCmd);
+ log.info("DepartmentAddExe,新增部门调用GBS返回:"+response.toString());
return d.getId();
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentSuperviseGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentSuperviseGatewayImpl.java
new file mode 100644
index 0000000..67b606d
--- /dev/null
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/gatewayimpl/DepartmentSuperviseGatewayImpl.java
@@ -0,0 +1,80 @@
+package com.zcloud.basic.info.gatewayimpl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.zcloud.basic.info.domain.gateway.DepartmentSuperviseGateway;
+import com.zcloud.basic.info.domain.model.DepartmentSuperviseE;
+import com.zcloud.basic.info.persistence.dataobject.DepartmentSuperviseDO;
+import com.zcloud.basic.info.persistence.repository.DepartmentSuperviseRepository;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * web-infrastructure
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Service
+@AllArgsConstructor
+public class DepartmentSuperviseGatewayImpl implements DepartmentSuperviseGateway {
+ private final DepartmentSuperviseRepository departmentSuperviseRepository;
+
+ @Override
+ public Boolean add(DepartmentSuperviseE departmentSuperviseE) {
+ DepartmentSuperviseDO d = new DepartmentSuperviseDO();
+ BeanUtils.copyProperties(departmentSuperviseE, d);
+ departmentSuperviseRepository.save(d);
+ return true;
+ }
+
+ @Override
+ public Boolean update(DepartmentSuperviseE departmentSuperviseE) {
+ DepartmentSuperviseDO d = new DepartmentSuperviseDO();
+ BeanUtils.copyProperties(departmentSuperviseE, d);
+ departmentSuperviseRepository.updateById(d);
+ return true;
+ }
+
+ @Override
+ public Boolean deletedDepartmentSuperviseById(Long id) {
+ return departmentSuperviseRepository.removeById(id);
+ }
+
+ @Override
+ public Boolean deletedDepartmentSuperviseByIds(Long[] ids) {
+ return departmentSuperviseRepository.removeByIds(Collections.singletonList(ids));
+ }
+
+ @Override
+ public void addbatch(List departmentSuperviseEList) {
+ List departmentSuperviseDOs = departmentSuperviseEList.stream()
+ .map(this::convertToDO)
+ .collect(Collectors.toList());
+ departmentSuperviseRepository.saveBatch(departmentSuperviseDOs);
+ }
+ private DepartmentSuperviseDO convertToDO(DepartmentSuperviseE entity) {
+ DepartmentSuperviseDO departmentSuperviseDO = new DepartmentSuperviseDO();
+ BeanUtils.copyProperties(entity, departmentSuperviseDO);
+ return departmentSuperviseDO;
+ }
+
+ @Override
+ public void deletedDepartmentBySuperviseId(Long id) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("supervise_department_id", id);
+ departmentSuperviseRepository.remove(queryWrapper);
+ }
+
+ @Override
+ public void deletedDepartmentBySuperviseIdList(List idList) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.in("supervise_department_id", idList);
+ departmentSuperviseRepository.remove(queryWrapper);
+ }
+}
+
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpInfoDO.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpInfoDO.java
index 2456c80..996a8b8 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpInfoDO.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/CorpInfoDO.java
@@ -30,7 +30,6 @@ public class CorpInfoDO extends BaseDO {
@ApiModelProperty(value = "企业名称")
private String corpName;
- private String corpAccount;
//企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位)")
private Integer type;
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentDO.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentDO.java
index 80db4dd..e926e80 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentDO.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentDO.java
@@ -47,6 +47,8 @@ public class DepartmentDO extends BaseDO {
private Integer superviseFlag;
@ApiModelProperty(value = "是否安全管理部门 0-否 1-是")
private Integer securityFlag;
+ @ApiModelProperty(value = "部门职能")
+ private String departmentFunction;
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentSuperviseDO.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentSuperviseDO.java
new file mode 100644
index 0000000..a9caf4a
--- /dev/null
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/dataobject/DepartmentSuperviseDO.java
@@ -0,0 +1,36 @@
+package com.zcloud.basic.info.persistence.dataobject;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jjb.saas.framework.repository.basedo.BaseDO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+
+/**
+ * web-infrastructure
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Data
+@TableName("department_supervise")
+@NoArgsConstructor
+@EqualsAndHashCode(callSuper = true)
+public class DepartmentSuperviseDO extends BaseDO {
+ //业务主键id
+ @ApiModelProperty(value = "业务主键id")
+ private String superviseId;
+ //监管部门id
+ @ApiModelProperty(value = "监管部门id")
+ private Long superviseDepartmentId;
+ //部门id
+ @ApiModelProperty(value = "部门id")
+ private Long departmentId;
+
+ public DepartmentSuperviseDO(String superviseId) {
+ this.superviseId = superviseId;
+ }
+
+}
+
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/DepartmentSuperviseMapper.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/DepartmentSuperviseMapper.java
new file mode 100644
index 0000000..1a7cefe
--- /dev/null
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/mapper/DepartmentSuperviseMapper.java
@@ -0,0 +1,17 @@
+package com.zcloud.basic.info.persistence.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zcloud.basic.info.persistence.dataobject.DepartmentSuperviseDO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * web-infrastructure
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+@Mapper
+public interface DepartmentSuperviseMapper extends BaseMapper {
+
+}
+
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java
index 8e7c4bb..fed6db7 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/CorpInfoRepository.java
@@ -16,6 +16,6 @@ import java.util.Map;
public interface CorpInfoRepository extends BaseRepository {
PageResponse listPage(Map parmas);
- void changeEnableFlag(CorpInfoDO corpInfoDO);
+ Long getCorpCountByCorpName(String corpName);
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java
index 63b801c..6140ad4 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentRepository.java
@@ -2,6 +2,7 @@ package com.zcloud.basic.info.persistence.repository;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.repo.BaseRepository;
+import com.zcloud.basic.info.domain.model.DepartmentE;
import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
@@ -25,5 +26,6 @@ public interface DepartmentRepository extends BaseRepository {
Long getCountByCorpInfoId(Long id);
+ Long addCorpDepartment(DepartmentE departmentE);
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentSuperviseRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentSuperviseRepository.java
new file mode 100644
index 0000000..b0acb40
--- /dev/null
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/DepartmentSuperviseRepository.java
@@ -0,0 +1,21 @@
+package com.zcloud.basic.info.persistence.repository;
+
+import com.alibaba.cola.dto.PageResponse;
+import com.jjb.saas.framework.repository.repo.BaseRepository;
+import com.zcloud.basic.info.persistence.dataobject.DepartmentSuperviseDO;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * web-infrastructure
+ *
+ * @Author zhaokai
+ * @Date 2025-11-10 14:13:46
+ */
+public interface DepartmentSuperviseRepository extends BaseRepository {
+ PageResponse listPage(Map params);
+
+ List listBySuperviseDepartmentId(Map params);
+}
+
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserEmploymentLogRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserEmploymentLogRepository.java
index 7038f6a..25cd4a1 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserEmploymentLogRepository.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserEmploymentLogRepository.java
@@ -3,6 +3,7 @@ package com.zcloud.basic.info.persistence.repository;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.repo.BaseRepository;
+import com.zcloud.basic.info.domain.model.UserEmploymentLogE;
import com.zcloud.basic.info.persistence.dataobject.UserEmploymentLogDO;
import java.util.List;
@@ -17,5 +18,7 @@ import java.util.Map;
public interface UserEmploymentLogRepository extends BaseRepository {
PageResponse listPage(Map params);
List listAll(Map params);
+
+ void addCorpUserEmploymentLog(UserEmploymentLogE userEmploymentLogE);
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java
index 837b864..43ff44f 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/UserRepository.java
@@ -3,6 +3,7 @@ package com.zcloud.basic.info.persistence.repository;
import com.alibaba.cola.dto.MultiResponse;
import com.alibaba.cola.dto.PageResponse;
import com.jjb.saas.framework.repository.repo.BaseRepository;
+import com.zcloud.basic.info.domain.model.CorpInfoE;
import com.zcloud.basic.info.persistence.dataobject.UserDO;
import java.util.List;
@@ -30,5 +31,6 @@ public interface UserRepository extends BaseRepository {
List listByPostId(Long postId);
List listByPostIds(Long[] postIds);
+ void addCorpUser(CorpInfoE examTypeE);
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java
index 0fb93f3..b338f2c 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/CorpInfoRepositoryImpl.java
@@ -45,8 +45,10 @@ public class CorpInfoRepositoryImpl extends BaseRepositoryImpl queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("corp_name", corpName);
+ return corpInfoMapper.selectCount(queryWrapper);
}
}
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java
index 504c878..b3b70ef 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/DepartmentRepositoryImpl.java
@@ -9,6 +9,7 @@ import com.jjb.saas.framework.auth.model.SSOUser;
import com.jjb.saas.framework.auth.utils.AuthContext;
import com.jjb.saas.framework.repository.common.PageHelper;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
+import com.zcloud.basic.info.domain.model.DepartmentE;
import com.zcloud.basic.info.persistence.dataobject.CorpInfoDO;
import com.zcloud.basic.info.persistence.dataobject.DepartmentDO;
import com.zcloud.basic.info.persistence.mapper.DepartmentMapper;
@@ -16,6 +17,7 @@ import com.zcloud.basic.info.persistence.repository.DepartmentRepository;
import com.zcloud.basic.info.utils.Query;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import lombok.RequiredArgsConstructor;
+import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.*;
@@ -78,5 +80,13 @@ public class DepartmentRepositoryImpl extends BaseRepositoryImpl implements DepartmentSuperviseRepository {
+ private final DepartmentSuperviseMapper departmentSuperviseMapper;
+
+ @Override
+ public PageResponse listPage(Map params) {
+ IPage iPage = new Query().getPage(params);
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
+ queryWrapper.orderByDesc("create_time");
+ IPage result = departmentSuperviseMapper.selectPage(iPage, queryWrapper);
+ return PageHelper.pageToResponse(result, result.getRecords());
+ }
+
+ @Override
+ public List listBySuperviseDepartmentId(Map params) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params);
+ List departmentSuperviseDOS = departmentSuperviseMapper.selectList(queryWrapper);
+
+ return departmentSuperviseDOS.stream().map(DepartmentSuperviseDO::getDepartmentId).collect(Collectors.toList());
+ }
+}
+
diff --git a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserEmploymentLogRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserEmploymentLogRepositoryImpl.java
index fce9b6e..f3eb728 100644
--- a/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserEmploymentLogRepositoryImpl.java
+++ b/web-infrastructure/src/main/java/com/zcloud/basic/info/persistence/repository/impl/UserEmploymentLogRepositoryImpl.java
@@ -6,12 +6,14 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.common.PageHelper;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
+import com.zcloud.basic.info.domain.model.UserEmploymentLogE;
import com.zcloud.basic.info.persistence.dataobject.UserEmploymentLogDO;
import com.zcloud.basic.info.persistence.mapper.UserEmploymentLogMapper;
import com.zcloud.basic.info.persistence.repository.UserEmploymentLogRepository;
import com.zcloud.gbscommon.utils.PageQueryHelper;
import com.zcloud.gbscommon.utils.Query;
import lombok.RequiredArgsConstructor;
+import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.List;
@@ -46,5 +48,12 @@ public class UserEmploymentLogRepositoryImpl extends BaseRepositoryImpl i
List userPostList = this.list(queryWrapper);
return userPostList;
}
+
+ @Override
+ public void addCorpUser(CorpInfoE examTypeE) {
+ UserDO userDo = new UserDO();
+ BeanUtils.copyProperties(examTypeE, userDo);
+ save(userDo);
+ }
}