f1408645 by xiaojie

【数据资产】

开发主体领域初始化
1 parent 1c39bdbd
1 package com.csbr.qingcloud.portal.controller;
2
3 import com.csbr.cloud.common.response.CommonRes;
4 import csbr.cloud.entity.annotation.SystemLog;
5 import csbr.cloud.entity.domain.base.vo.PageListVO;
6 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainQueryVO;
7 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRQVO;
8 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO;
9 import com.csbr.qingcloud.portal.service.EnterpriseDomainService;
10 import io.swagger.v3.oas.annotations.Operation;
11 import io.swagger.v3.oas.annotations.Parameter;
12 import io.swagger.v3.oas.annotations.tags.Tag;
13 import jakarta.annotation.Resource;
14 import jakarta.validation.Valid;
15 import org.springframework.web.bind.annotation.*;
16
17 import java.util.List;
18
19 /**
20 * @program:
21 * @description: 开发主体领域信息-控制器
22 * @author: makejava
23 * @create: 2025-09-12 11:02
24 **/
25 @RestController
26 @RequestMapping("/enterprise-domain")
27 @Tag(name = "开发主体领域信息-控制器")
28 public class EnterpriseDomainController {
29
30 @Resource
31 private EnterpriseDomainService enterpriseDomainService;
32
33 //region 基本操作
34
35 @PostMapping("/save")
36 @SystemLog(value = "开发主体领域信息-新增")
37 @Operation(summary = "开发主体领域信息-新增")
38 public CommonRes<Boolean> saveEnterpriseDomain(@RequestBody @Valid EnterpriseDomainRQVO vo) {
39 enterpriseDomainService.saveEnterpriseDomain(vo);
40 return CommonRes.success(true);
41 }
42
43 @PutMapping("/update")
44 @SystemLog(value = "开发主体领域信息-修改")
45 @Operation(summary = "开发主体领域信息-修改")
46 public CommonRes<Boolean> updateEnterpriseDomain(@RequestBody @Valid EnterpriseDomainRQVO vo) {
47 enterpriseDomainService.updateEnterpriseDomain(vo);
48 return CommonRes.success(true);
49 }
50
51 @DeleteMapping("/delete")
52 @SystemLog(value = "开发主体领域信息-批量删除")
53 @Operation(summary = "开发主体领域信息-批量删除")
54 public CommonRes<Boolean> removeByGuids(@RequestBody List<String> guids) {
55 enterpriseDomainService.removeByGuids(guids);
56 return CommonRes.success(true);
57 }
58
59 @PostMapping("/page-list")
60 @SystemLog(value = "开发主体领域信息-分页")
61 @Operation(summary = "开发主体领域信息-分页")
62 public CommonRes<PageListVO<EnterpriseDomainRSVO>> pageList(@RequestBody @Valid EnterpriseDomainQueryVO queryVO) {
63 PageListVO<EnterpriseDomainRSVO> pageVO = enterpriseDomainService.pageList(queryVO);
64 return CommonRes.success(pageVO);
65 }
66
67 @GetMapping("/detail")
68 @SystemLog(value = "开发主体领域信息-详情")
69 @Operation(
70 summary = "开发主体领域信息-详情",
71 parameters = {
72 @Parameter(name = "guid", description = "开发主体领域信息唯一标识", required = true)}
73 )
74 public CommonRes<EnterpriseDomainRSVO> getEnterpriseDomainDetail(@RequestParam String guid) {
75 EnterpriseDomainRSVO vo = enterpriseDomainService.getEnterpriseDomainDetail(guid);
76 return CommonRes.success(vo);
77 }
78
79 //endregion
80
81 }
1 package com.csbr.qingcloud.portal.domain.vo;
2
3 import csbr.cloud.entity.domain.base.dto.BasePageDTO;
4 import io.swagger.v3.oas.annotations.media.Schema;
5 import lombok.EqualsAndHashCode;
6 import lombok.Data;
7 import java.util.Date;
8
9 /**
10 * @program:
11 * @description: 开发主体领域信息查询参数
12 * @author: makejava
13 * @create: 2025-09-12 11:02
14 **/
15 @EqualsAndHashCode(callSuper = true)
16 @Data
17 @Schema(title = "开发主体领域信息查询参数")
18 public class EnterpriseDomainQueryVO extends BasePageDTO {
19
20 }
1 package com.csbr.qingcloud.portal.domain.vo;
2
3 import io.swagger.v3.oas.annotations.media.Schema;
4 import com.fasterxml.jackson.annotation.JsonFormat;
5 import jakarta.validation.constraints.Size;
6 import lombok.Data;
7 import java.util.Date;
8
9 /**
10 * @program:
11 * @description: 开发主体领域信息新增、修改参数
12 * @author: makejava
13 * @create: 2025-09-12 11:02
14 **/
15 @Data
16 @Schema(title = "开发主体领域信息新增、修改参数")
17 public class EnterpriseDomainRQVO {
18
19 /**
20 * 系统唯一标识
21 */
22 @Schema(description = "系统唯一标识")
23 @Size(max = 32, message = "系统唯一标识长度超过32")
24 private String guid;
25
26 /**
27 * 企业唯一标识
28 */
29 @Schema(description = "企业唯一标识")
30 @Size(max = 32, message = "企业唯一标识长度超过32")
31 private String tenantGuid;
32
33 /**
34 * 企业认证唯一标识
35 */
36 @Schema(description = "企业认证唯一标识")
37 @Size(max = 32, message = "企业认证唯一标识长度超过32")
38 private String enterpriseGuid;
39
40 /**
41 * 领域代码
42 */
43 @Schema(description = "领域代码")
44 @Size(max = 10, message = "领域代码长度超过10")
45 private String domainId;
46
47 /**
48 * 授权协议号
49 */
50 @Schema(description = "授权协议号")
51 @Size(max = 50, message = "授权协议号长度超过50")
52 private String authId;
53
54 /**
55 * 协议开始日期
56 */
57 @Schema(description = "协议开始日期")
58 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
59 private Date domainStartTime;
60
61 /**
62 * 协议结束日期
63 */
64 @Schema(description = "协议结束日期")
65 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
66 private Date domainEndTime;
67
68 /**
69 * 协议签订人
70 */
71 @Schema(description = "协议签订人")
72 @Size(max = 20, message = "协议签订人长度超过20")
73 private String signee;
74
75 /**
76 * 协议状态,如10【10-生效中;20-已终止】
77 */
78 @Schema(description = "协议状态,如10【10-生效中;20-已终止】")
79 @Size(max = 10, message = "协议状态,如10
80 【10-生效中;20-已终止】长度超过10")
81 private String domainStatus;
82
83 /******** 库表存储属性 需处理 *****/
84
85 /******** 自定义扩展 *****/
86
87 /******** 子对象 *****/
88
89 }
1 package com.csbr.qingcloud.portal.domain.vo;
2
3 import io.swagger.v3.oas.annotations.media.Schema;
4 import com.fasterxml.jackson.annotation.JsonFormat;
5 import lombok.Data;
6 import java.util.Date;
7
8 /**
9 * @program:
10 * @description: 开发主体领域信息返回参数
11 * @author: makejava
12 * @create: 2025-09-12 11:02
13 **/
14 @Data
15 @Schema(title = "开发主体领域信息返回参数")
16 public class EnterpriseDomainRSVO {
17
18 /**
19 * 系统唯一标识
20 */
21 @Schema(description = "系统唯一标识")
22 private String guid;
23
24 /**
25 * 企业唯一标识
26 */
27 @Schema(description = "企业唯一标识")
28 private String tenantGuid;
29
30 /**
31 * 企业认证唯一标识
32 */
33 @Schema(description = "企业认证唯一标识")
34 private String enterpriseGuid;
35
36 /**
37 * 领域代码
38 */
39 @Schema(description = "领域代码")
40 private String domainId;
41
42 /**
43 * 授权协议号
44 */
45 @Schema(description = "授权协议号")
46 private String authId;
47
48 /**
49 * 协议开始日期
50 */
51 @Schema(description = "协议开始日期")
52 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
53 private Date domainStartTime;
54
55 /**
56 * 协议结束日期
57 */
58 @Schema(description = "协议结束日期")
59 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
60 private Date domainEndTime;
61
62 /**
63 * 协议签订人
64 */
65 @Schema(description = "协议签订人")
66 private String signee;
67
68 /**
69 * 协议状态,如10【10-生效中;20-已终止】
70 */
71 @Schema(description = "协议状态,如10【10-生效中;20-已终止】")
72 private String domainStatus;
73
74 /******** 库表存储属性 需处理 *****/
75
76 /******** 自定义扩展 *****/
77
78 /******** 子对象 *****/
79
80 }
1 package com.csbr.qingcloud.portal.mybatis.entity;
2
3 import com.baomidou.mybatisplus.annotation.FieldStrategy;
4 import com.baomidou.mybatisplus.annotation.TableField;
5 import csbr.cloud.entity.domain.base.dao.BaseDO;
6 import jdk.jfr.Name;
7 import lombok.Data;
8 import lombok.EqualsAndHashCode;
9 import lombok.experimental.Accessors;
10 import java.util.Date;
11
12 /**
13 * @program:
14 * @description: 开发主体领域信息实体
15 * @author: makejava
16 * @create: 2025-09-12 11:02
17 **/
18 @Data
19 @EqualsAndHashCode(callSuper = true)
20 @Accessors(chain = true)
21 @Name("开发主体领域信息")
22 public class MfEnterpriseDomain extends BaseDO {
23
24 /**
25 * 企业唯一标识
26 */
27 @Name("企业唯一标识")
28 private String tenantGuid;
29
30 /**
31 * 企业认证唯一标识
32 */
33 @Name("企业认证唯一标识")
34 private String enterpriseGuid;
35
36 /**
37 * 领域代码
38 */
39 @Name("领域代码")
40 private String domainId;
41
42 /**
43 * 授权协议号
44 */
45 @Name("授权协议号")
46 private String authId;
47
48 /**
49 * 协议开始日期
50 */
51 @Name("协议开始日期")
52 private Date domainStartTime;
53
54 /**
55 * 协议结束日期
56 */
57 @Name("协议结束日期")
58 private Date domainEndTime;
59
60 /**
61 * 协议签订人
62 */
63 @Name("协议签订人")
64 private String signee;
65
66 /**
67 * 协议状态,如10【10-生效中;20-已终止】
68 */
69 @Name("协议状态,如10【10-生效中;20-已终止】")
70 private String domainStatus;
71
72 }
1 package com.csbr.qingcloud.portal.mybatis.mapper;
2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import org.apache.ibatis.annotations.Mapper;
5 import com.csbr.qingcloud.portal.mybatis.entity.MfEnterpriseDomain;
6
7 /**
8 * @program:
9 * @description: 开发主体领域信息 Mapper 接口
10 * @author: makejava
11 * @create: 2025-09-12 11:02
12 **/
13 @Mapper
14 public interface MfEnterpriseDomainMapper extends BaseMapper<MfEnterpriseDomain> {
15
16 }
1 package com.csbr.qingcloud.portal.mybatis.service;
2
3 import com.csbr.cloud.base.service.CsbrService;
4 import com.csbr.qingcloud.portal.mybatis.entity.MfEnterpriseDomain;
5
6 /**
7 * @program:
8 * @description: 开发主体领域信息逻辑层接口
9 * @author: makejava
10 * @create: 2025-09-12 11:02
11 **/
12 public interface MfEnterpriseDomainService extends CsbrService<MfEnterpriseDomain> {
13
14 }
1 package com.csbr.qingcloud.portal.mybatis.service.impl;
2
3 import com.csbr.cloud.mybatis.service.impl.CsbrServiceImpl;
4 import com.csbr.qingcloud.portal.mybatis.mapper.MfEnterpriseDomainMapper;
5 import com.csbr.qingcloud.portal.mybatis.entity.MfEnterpriseDomain;
6 import com.csbr.qingcloud.portal.mybatis.service.MfEnterpriseDomainService;
7 import jakarta.annotation.Resource;
8 import org.springframework.stereotype.Service;
9
10 /**
11 * @program:
12 * @description: 开发主体领域信息逻辑层接口实现
13 * @author: makejava
14 * @create: 2025-09-12 11:02
15 **/
16 @Service
17 public class MfEnterpriseDomainServiceImpl extends CsbrServiceImpl<MfEnterpriseDomainMapper, MfEnterpriseDomain> implements MfEnterpriseDomainService {
18
19 @Resource
20 private MfEnterpriseDomainMapper mfEnterpriseDomainMapper;
21
22 }
1 package com.csbr.qingcloud.portal.service;
2
3 import csbr.cloud.entity.domain.base.vo.PageListVO;
4 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainQueryVO;
5 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRQVO;
6 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO;
7
8 import java.util.List;
9
10 /**
11 * @program:
12 * @description: 开发主体领域信息业务逻辑接口
13 * @author: makejava
14 * @create: 2025-09-12 11:02
15 **/
16 public interface EnterpriseDomainService {
17
18 /**
19 * 开发主体领域信息分页查询
20 * @author makejava
21 * @date 2025-09-12 11:02
22 * @param queryVO
23 * @return com.csbr.cloud.mybatis.entity.PageListVO<com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO>
24 */
25 PageListVO<EnterpriseDomainRSVO> pageList(EnterpriseDomainQueryVO queryVO);
26
27 /**
28 * 开发主体领域信息获取详情数据
29 * @author makejava
30 * @date 2025-09-12 11:02
31 * @param guid
32 * @return com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO
33 */
34 EnterpriseDomainRSVO getEnterpriseDomainDetail(String guid);
35
36 /**
37 * 开发主体领域信息数据新增
38 * @author makejava
39 * @date 2025-09-12 11:02
40 * @param rqVO
41 * @return boolean
42 */
43 void saveEnterpriseDomain(EnterpriseDomainRQVO rqVO);
44
45 /**
46 * 开发主体领域信息数据修改
47 * @author makejava
48 * @date 2025-09-12 11:02
49 * @param rqVO
50 * @return boolean
51 */
52 void updateEnterpriseDomain(EnterpriseDomainRQVO rqVO);
53
54 /**
55 * 开发主体领域信息数据删除
56 * @author makejava
57 * @date 2025-09-12 11:02
58 * @param guids
59 * @return void
60 */
61 void removeByGuids(List<String> guids);
62
63 /**
64 * 开发主体领域信息数据删除、并有相关的处理操作
65 * @author makejava
66 * @date 2025-09-12 11:02
67 * @param guids
68 * @return void
69 */
70 void removeHandleByGuids(List<String> guids);
71
72 }
1 package com.csbr.qingcloud.portal.service.impl;
2
3 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
4 import com.csbr.cloud.common.enums.SystemError;
5 import com.csbr.cloud.common.exception.CsbrSystemException;
6 import com.csbr.cloud.common.util.CommonUtil;
7 import com.csbr.cloud.common.util.CsbrBeanUtil;
8 import com.csbr.cloud.common.util.MessageSourceUtil;
9 import csbr.cloud.entity.domain.base.vo.PageListVO;
10 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainQueryVO;
11 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRQVO;
12 import com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO;
13 import com.csbr.qingcloud.portal.mybatis.entity.MfEnterpriseDomain;
14 import com.csbr.qingcloud.portal.mybatis.service.MfEnterpriseDomainService;
15 import com.csbr.qingcloud.portal.service.EnterpriseDomainService;
16 import jakarta.annotation.Resource;
17 import lombok.extern.slf4j.Slf4j;
18 import org.apache.commons.collections.CollectionUtils;
19 import org.apache.commons.lang3.StringUtils;
20 import org.springframework.stereotype.Service;
21 import org.springframework.transaction.annotation.Transactional;
22
23 import java.util.ArrayList;
24 import java.util.Collections;
25 import java.util.List;
26
27 /**
28 * @program:
29 * @description: 开发主体领域信息业务逻辑实现
30 * @author: makejava
31 * @create: 2025-09-12 11:02
32 **/
33 @Slf4j
34 @Service
35 public class EnterpriseDomainServiceImpl implements EnterpriseDomainService {
36
37 /**
38 * 功能名称
39 */
40 private static final String FUNCTION_NAME = "开发主体领域信息";
41
42 @Resource
43 private MfEnterpriseDomainService mfEnterpriseDomainService;
44
45 @Resource
46 private CsbrBeanUtil csbrBeanUtil;
47
48 @Resource
49 private MessageSourceUtil messageSourceUtil;
50
51 /**
52 * 开发主体领域信息分页查询
53 * @author makejava
54 * @date 2025-09-12 11:02
55 * @param queryVO
56 * @return com.csbr.cloud.mybatis.entity.PageListVO<com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO>
57 */
58 @Override
59 public PageListVO<EnterpriseDomainRSVO> pageList(EnterpriseDomainQueryVO queryVO) {
60 beforeQuery(queryVO);
61 LambdaQueryWrapper<MfEnterpriseDomain> queryWrapper = mfEnterpriseDomainService.csbrQueryWrapper(queryVO, MfEnterpriseDomain.class);
62 queryWrapper.orderByDesc(MfEnterpriseDomain::getCreateTime);
63 PageListVO<MfEnterpriseDomain> pageList = mfEnterpriseDomainService.csbrPageList(queryVO, queryWrapper);
64 PageListVO<EnterpriseDomainRSVO> rsPageList = csbrBeanUtil.convert(pageList, PageListVO.class);
65 afterQuery(pageList, rsPageList);
66 return rsPageList;
67 }
68
69 /**
70 * 开发主体领域信息获取详情数据
71 * @author makejava
72 * @date 2025-09-12 11:02
73 * @param guid
74 * @return com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO
75 */
76 @Override
77 public EnterpriseDomainRSVO getEnterpriseDomainDetail(String guid) {
78 if (StringUtils.isBlank(guid)) {
79 // W00012 = {0}:参数[{1}]不能为空!
80 throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, messageSourceUtil.getMessage("W00010",
81 String.format("获取%s详情数据", FUNCTION_NAME), "数据唯一标识"));
82 }
83 MfEnterpriseDomain entity = mfEnterpriseDomainService.getById(guid);
84 if (entity == null) {
85 throw new CsbrSystemException(SystemError.DATA_NOT_EXISTS, messageSourceUtil.notExistsToSelectMessage(String.format("获取%s详情数据", FUNCTION_NAME)));
86 }
87 return convertToVO(entity);
88 }
89
90 /**
91 * 开发主体领域信息数据新增
92 * @author makejava
93 * @date 2025-09-12 11:02
94 * @param rqVO
95 * @return boolean
96 */
97 @Transactional(rollbackFor = Exception.class)
98 @Override
99 public void saveEnterpriseDomain(EnterpriseDomainRQVO rqVO) {
100 beforeSave(rqVO);
101 MfEnterpriseDomain entity = convertToEntity(rqVO);
102 mfEnterpriseDomainService.csbrAddEntity(entity);
103 boolean flag = mfEnterpriseDomainService.save(entity);
104 if (!flag) {
105 throw new CsbrSystemException(SystemError.DATA_ADD_ERROR, messageSourceUtil.addMessage(FUNCTION_NAME));
106 }
107 afterSave(rqVO);
108 }
109
110 /**
111 * 开发主体领域信息数据修改
112 * @author makejava
113 * @date 2025-09-12 11:02
114 * @param rqVO
115 * @return boolean
116 */
117 @Transactional(rollbackFor = Exception.class)
118 @Override
119 public void updateEnterpriseDomain(EnterpriseDomainRQVO rqVO) {
120 // 将修改前数据查出来缓存下来,传入到修改后方法中,用于一些特殊逻辑处理,如某个值变化才进行
121 // MfEnterpriseDomain oldEntity = mfEnterpriseDomainService.getById(rqVO.getGuid());
122 MfEnterpriseDomain oldEntity = null;
123 beforeUpdate(rqVO);
124 MfEnterpriseDomain entity = convertToEntity(rqVO);
125 mfEnterpriseDomainService.csbrUpdateEntity(entity);
126 boolean flag = mfEnterpriseDomainService.updateById(entity);
127 if (!flag) {
128 throw new CsbrSystemException(SystemError.DATA_UPDATE_ERROR, messageSourceUtil.updateMessage(FUNCTION_NAME));
129 }
130 afterUpdate(rqVO, oldEntity);
131 }
132
133 /**
134 * 开发主体领域信息数据删除
135 * @author makejava
136 * @date 2025-09-12 11:02
137 * @param guids
138 * @return void
139 */
140 @Transactional(rollbackFor = Exception.class)
141 @Override
142 public void removeByGuids(List<String> guids) {
143 if (CollectionUtils.isEmpty(guids)) {
144 // W00012 = {0}:参数[{1}]不能为空!
145 throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, messageSourceUtil.getMessage("W00012",
146 String.format("删除%s数据", FUNCTION_NAME), "数据唯一标识"));
147 }
148 if (!mfEnterpriseDomainService.isExistsData(guids, MfEnterpriseDomain.class)) {
149 throw new CsbrSystemException(SystemError.DATA_DEL_ERROR, messageSourceUtil.notExistsToDelMessage(FUNCTION_NAME));
150 }
151 boolean flag = mfEnterpriseDomainService.removeByIds(guids);
152 if (!flag) {
153 throw new CsbrSystemException(SystemError.DATA_DEL_ERROR, messageSourceUtil.delMessage(FUNCTION_NAME));
154 }
155 }
156
157 /**
158 * 开发主体领域信息数据删除、并有相关的处理操作
159 * @author makejava
160 * @date 2025-09-12 11:02
161 * @param guids
162 * @return void
163 */
164 @Transactional(rollbackFor = Exception.class)
165 @Override
166 public void removeHandleByGuids(List<String> guids) {
167 if (CollectionUtils.isEmpty(guids)) {
168 // W00012 = {0}:参数[{1}]不能为空!
169 throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, messageSourceUtil.getMessage("W00012",
170 String.format("删除%s数据", FUNCTION_NAME), "数据唯一标识"));
171 }
172 for (String guid : guids) {
173 MfEnterpriseDomain entity = mfEnterpriseDomainService.getById(guid);
174 beforeRemove(entity);
175 boolean flag = mfEnterpriseDomainService.removeById(guid);
176 if (!flag) {
177 throw new CsbrSystemException(SystemError.DATA_DEL_ERROR, messageSourceUtil.delMessage(FUNCTION_NAME));
178 }
179 afterRemove(entity);
180 }
181 }
182
183 /**
184 * 开发主体领域信息新新增前置处理
185 * @author makejava
186 * @date 2025-09-12 11:02
187 * @param rqVO
188 * @return void
189 */
190 private void beforeSave(EnterpriseDomainRQVO rqVO) {
191 //region 1.输入基础验证
192 //endregion
193
194 //region 2.数据验证特殊处理
195 //region 2.1.业务合规性验证
196 //endregion 2.1.业务合规性验证
197
198 //region 2.2.业务数据验证
199 //endregion 2.2.业务数据验证
200
201 //endregion 2.数据验证特殊处理
202
203 //region 3.数据转换处理
204
205 //region 3.1.数据过程转换
206 //endregion 3.1.数据过程转换
207
208 //endregion 3.数据转换处理
209
210 //region 4.数据过滤与补充处理
211
212 //endregion 4.数据过滤与补充处理
213
214 //region 5.过程处理
215
216 //region 5.1.计算逻辑处理
217 //endregion 5.1.计算逻辑处理
218
219 //region 5.2.业务逻辑处理
220 //endregion 5.2.业务逻辑处理
221
222 //endregion 5.过程处理
223 }
224
225 /**
226 * 开发主体领域信息新增后置处理
227 * @author makejava
228 * @date 2025-09-12 11:02
229 * @param rqVO
230 * @return void
231 */
232 private void afterSave(EnterpriseDomainRQVO rqVO) {
233 //region 1.输出特殊转换
234
235 //region 1.1.输出过滤与补充处理
236 //endregion 1.1.输出过滤与补充处理
237
238 //endregion 1.输出特殊转换
239 }
240
241 /**
242 * 开发主体领域信息修改前置校验、处理
243 * @author makejava
244 * @date 2025-09-12 11:02
245 * @param rqVO
246 * @return void
247 */
248 private void beforeUpdate(EnterpriseDomainRQVO rqVO) {
249 //region 1.输入基础验证
250 if (StringUtils.isBlank(rqVO.getGuid())) {
251 // W00012 = {0}:参数[{1}]不能为空!
252 throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, messageSourceUtil.getMessage("W00010", String.format("修改%s数据",FUNCTION_NAME), "数据唯一标识"));
253 }
254 //endregion
255
256 //region 2.数据验证特殊处理
257 //region 2.1.业务合规性验证
258 //endregion 2.1.业务合规性验证
259
260 //region 2.2.业务数据验证
261 if (!mfEnterpriseDomainService.isExistsData(Collections.singletonList(rqVO.getGuid()), MfEnterpriseDomain.class)) {
262 throw new CsbrSystemException(SystemError.DATA_DEL_ERROR, messageSourceUtil.notExistsToUpdateMessage(FUNCTION_NAME));
263 }
264 //endregion 2.2.业务数据验证
265
266 //endregion 2.数据验证特殊处理
267
268 //region 3.数据转换处理
269
270 //region 3.1.数据过程转换
271 //endregion 3.1.数据过程转换
272
273 //endregion 3.数据转换处理
274
275 //region 4.数据过滤与补充处理
276 //endregion 4.数据过滤与补充处理
277
278 //region 5.过程处理
279
280 //region 5.1.计算逻辑处理
281 //endregion 5.1.计算逻辑处理
282
283 //region 5.2.业务逻辑处理
284 //endregion 5.2.业务逻辑处理
285
286 //endregion 5.过程处理
287 }
288
289 /**
290 * 开发主体领域信息修改后置处理
291 * @author makejava
292 * @date 2025-09-12 11:02
293 * @param rqVO
294 * @param entity
295 * @return void
296 */
297 protected void afterUpdate(EnterpriseDomainRQVO rqVO, MfEnterpriseDomain entity) {
298 //region 1.输出特殊转换
299
300 //region 1.1.输出过滤与补充处理
301 //endregion 1.1.输出过滤与补充处理
302
303 //endregion 1.输出特殊转换
304 }
305
306
307 /**
308 * 开发主体领域信息删除前置处理
309 * @author makejava
310 * @date 2025-09-12 11:02
311 * @param entity
312 * @return void
313 */
314 private void beforeRemove(MfEnterpriseDomain entity) {
315 if (entity == null) {
316 throw new CsbrSystemException(SystemError.DATA_DEL_ERROR, messageSourceUtil.notExistsToDelMessage(FUNCTION_NAME));
317 }
318 }
319
320 /**
321 * 开发主体领域信息删除后置处理
322 * @author makejava
323 * @date 2025-09-12 11:02
324 * @param entity
325 * @return void
326 */
327 private void afterRemove(MfEnterpriseDomain entity) {
328
329 }
330
331 /**
332 * 开发主体领域信息查询方法前置验证、处理
333 * @author makejava
334 * @date 2025-09-12 11:02
335 * @param rqQueryVO
336 * @return void
337 */
338 private void beforeQuery(EnterpriseDomainQueryVO rqQueryVO) {
339
340 }
341
342 /**
343 * 开发主体领域信息查询方法后置数据转换、处理
344 * @author makejava
345 * @date 2025-09-12 11:02
346 * @param pageList 数据库查询数据
347 * @param rsPageList 返回的最终数据
348 * @return void
349 */
350 private void afterQuery(PageListVO<MfEnterpriseDomain> pageList, PageListVO<EnterpriseDomainRSVO> rsPageList) {
351 if (CollectionUtils.isNotEmpty(pageList.getRecords())) {
352 rsPageList.setRecords(convertToVO(pageList.getRecords()));
353 }
354 // 需要特殊处理数据时使用
355 /*if(CollectionUtils.isNotEmpty(pageList.getRecords())){
356 List<EnterpriseDomainRSVO> results = new ArrayList<>();
357 for (MfEnterpriseDomain item : pageList.getRecords()){
358 EnterpriseDomainRSVO vo = convertToVO(item);
359 results.add(vo);
360 }
361 rsPageList.setRecords(results);
362 }*/
363 }
364
365 //region 辅助操作
366
367 /**
368 * 开发主体领域信息实体数据转换为视图对象数据(多个)
369 * @author makejava
370 * @date 2025-09-12 11:02
371 * @param entityList 实体数据列表
372 * @return java.util.List<com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO> 视图对象列表
373 */
374 private List<EnterpriseDomainRSVO> convertToVO(List<MfEnterpriseDomain> entityList) {
375 if (CollectionUtils.isEmpty(entityList)) {
376 // W00012 = {0}:参数[{1}]不能为空!
377 throw new CsbrSystemException(SystemError.DATA_INPUT_ERROR, messageSourceUtil.getMessage("W00012",
378 "实体数据转换为视图对象实体数据", "实体数据"));
379 }
380 List<EnterpriseDomainRSVO> voList = new ArrayList<>(entityList.size());
381 for (MfEnterpriseDomain item : entityList) {
382 EnterpriseDomainRSVO vo = convertToVO(item);
383 voList.add(vo);
384 }
385 return voList;
386 }
387
388 /**
389 * 开发主体领域信息实体数据转换为视图对象数据
390 * @author makejava
391 * @date 2025-09-12 11:02
392 * @param entity
393 * @return com.csbr.qingcloud.portal.domain.vo.EnterpriseDomainRSVO
394 */
395 private EnterpriseDomainRSVO convertToVO(MfEnterpriseDomain entity) {
396 EnterpriseDomainRSVO vo = csbrBeanUtil.convert(entity, EnterpriseDomainRSVO.class);
397 return vo;
398 }
399
400 /**
401 * 开发主体领域信息新增、修改和其他情况的参数转换为实体
402 * @author makejava
403 * @date 2025-09-12 11:02
404 * @param vo
405 * @return com.csbr.qingcloud.portal.mybatis.entity.MfEnterpriseDomain
406 */
407 private MfEnterpriseDomain convertToEntity(EnterpriseDomainRQVO vo) {
408 MfEnterpriseDomain entity = csbrBeanUtil.convert(vo, MfEnterpriseDomain.class);
409 // 新增时数据默认guid赋值,转换后该guid可能别使用
410 if (StringUtils.isBlank(vo.getGuid())) {
411 entity.setGuid(CommonUtil.newGuid());
412 }
413 return entity;
414 }
415
416 //endregion
417
418 }
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!