0be1ca7d by 肖初晴

【DAOP-1.0】数据需求

【功能点】新增接口
1 parent bcec1b99
1 package com.csbr.qingcloud.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.math.BigDecimal;
8 import java.util.Date;
9
10 /**
11 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service
12 * @description: 查询参数
13 * @author: xushaobo
14 * @create: 2024-12-30 16:29
15 **/
16 @EqualsAndHashCode(callSuper = true)
17 @Data
18 @Schema(title = "查询参数")
19 public class DemandQueryVO extends BasePageDTO {
20
21 }
1 package com.csbr.qingcloud.mybatis.service;
2
3 import com.csbr.cloud.base.service.CsbrService;
4 import com.csbr.qingcloud.mybatis.entity.MfDemand;
5
6 /**
7 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service
8 * @description: 逻辑层接口
9 * @author: xushaobo
10 * @create: 2024-12-30 16:29
11 **/
12 public interface MfDemandService extends CsbrService<MfDemand> {
13
14 }
1 package com.csbr.qingcloud.controller; 1 package com.csbr.qingcloud.portal.controller;
2 2
3 import com.csbr.cloud.common.response.CommonRes; 3 import com.csbr.cloud.common.response.CommonRes;
4 import csbr.cloud.entity.annotation.SystemLog; 4 import csbr.cloud.entity.annotation.SystemLog;
5 import csbr.cloud.entity.domain.base.vo.PageListVO; 5 import csbr.cloud.entity.domain.base.vo.PageListVO;
6 import com.csbr.qingcloud.domain.vo.DemandQueryVO; 6 import com.csbr.cloud.workflow.domain.dto.callback.BizCallbackDTO;
7 import com.csbr.qingcloud.domain.vo.DemandRQVO; 7 import com.csbr.qingcloud.portal.domain.vo.DemandQueryVO;
8 import com.csbr.qingcloud.domain.vo.DemandRSVO; 8 import com.csbr.qingcloud.portal.domain.vo.DemandRQVO;
9 import com.csbr.qingcloud.service.DemandService; 9 import com.csbr.qingcloud.portal.domain.vo.DemandRSVO;
10 import com.csbr.qingcloud.portal.service.DemandService;
10 import io.swagger.v3.oas.annotations.Operation; 11 import io.swagger.v3.oas.annotations.Operation;
11 import io.swagger.v3.oas.annotations.Parameter; 12 import io.swagger.v3.oas.annotations.Parameter;
12 import io.swagger.v3.oas.annotations.tags.Tag; 13 import io.swagger.v3.oas.annotations.tags.Tag;
...@@ -17,14 +18,14 @@ import org.springframework.web.bind.annotation.*; ...@@ -17,14 +18,14 @@ import org.springframework.web.bind.annotation.*;
17 import java.util.List; 18 import java.util.List;
18 19
19 /** 20 /**
20 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service 21 * @program: D:/git/ms-data-circulation-portal-service
21 * @description: -控制器 22 * @description: 数据需求-控制器
22 * @author: xushaobo 23 * @author: xcq
23 * @create: 2024-12-30 16:29 24 * @create: 2024-12-31 18:46
24 **/ 25 **/
25 @RestController 26 @RestController
26 @RequestMapping("/demand") 27 @RequestMapping("/demand")
27 @Tag(name = "-控制器") 28 @Tag(name = "数据需求-控制器")
28 public class DemandController { 29 public class DemandController {
29 30
30 @Resource 31 @Resource
...@@ -33,49 +34,57 @@ public class DemandController { ...@@ -33,49 +34,57 @@ public class DemandController {
33 //region 基本操作 34 //region 基本操作
34 35
35 @PostMapping("/save") 36 @PostMapping("/save")
36 @SystemLog(value = "-新增") 37 @SystemLog(value = "数据需求-新增")
37 @Operation(summary = "-新增") 38 @Operation(summary = "数据需求-新增")
38 public CommonRes<Boolean> saveDemand(@RequestBody @Valid DemandRQVO vo) { 39 public CommonRes<Boolean> saveDemand(@RequestBody @Valid DemandRQVO vo) {
39 demandService.saveDemand(vo); 40 demandService.saveDemand(vo);
40 return CommonRes.success(true); 41 return CommonRes.success(true);
41 } 42 }
42 43
43 @PutMapping("/update") 44 @PutMapping("/update")
44 @SystemLog(value = "-修改") 45 @SystemLog(value = "数据需求-修改")
45 @Operation(summary = "-修改") 46 @Operation(summary = "数据需求-修改")
46 public CommonRes<Boolean> updateDemand(@RequestBody @Valid DemandRQVO vo) { 47 public CommonRes<Boolean> updateDemand(@RequestBody @Valid DemandRQVO vo) {
47 demandService.updateDemand(vo); 48 demandService.updateDemand(vo);
48 return CommonRes.success(true); 49 return CommonRes.success(true);
49 } 50 }
50 51
51 @DeleteMapping("/delete") 52 @DeleteMapping("/delete")
52 @SystemLog(value = "-批量删除") 53 @SystemLog(value = "数据需求-批量删除")
53 @Operation(summary = "-批量删除") 54 @Operation(summary = "数据需求-批量删除")
54 public CommonRes<Boolean> removeByGuids(@RequestBody List<String> guids) { 55 public CommonRes<Boolean> removeByGuids(@RequestBody List<String> guids) {
55 demandService.removeByGuids(guids); 56 demandService.removeByGuids(guids);
56 return CommonRes.success(true); 57 return CommonRes.success(true);
57 } 58 }
58 59
59 @PostMapping("/page-list") 60 @PostMapping("/page-list")
60 @SystemLog(value = "-分页") 61 @SystemLog(value = "数据需求-分页")
61 @Operation(summary = "-分页") 62 @Operation(summary = "数据需求-分页")
62 public CommonRes<PageListVO<DemandRSVO>> pageList(@RequestBody @Valid DemandQueryVO queryVO) { 63 public CommonRes<PageListVO<DemandRSVO>> pageList(@RequestBody @Valid DemandQueryVO queryVO) {
63 PageListVO<DemandRSVO> pageVO = demandService.pageList(queryVO); 64 PageListVO<DemandRSVO> pageVO = demandService.pageList(queryVO);
64 return CommonRes.success(pageVO); 65 return CommonRes.success(pageVO);
65 } 66 }
66 67
67 @GetMapping("/detail") 68 @GetMapping("/detail")
68 @SystemLog(value = "-详情") 69 @SystemLog(value = "数据需求-详情")
69 @Operation( 70 @Operation(
70 summary = "-详情", 71 summary = "数据需求-详情",
71 parameters = { 72 parameters = {
72 @Parameter(name = "guid", description = "唯一标识", required = true)} 73 @Parameter(name = "guid", description = "数据需求唯一标识", required = true)}
73 ) 74 )
74 public CommonRes<DemandRSVO> getDemandDetail(@RequestParam String guid) { 75 public CommonRes<DemandRSVO> getDemandDetail(@RequestParam String guid) {
75 DemandRSVO vo = demandService.getDemandDetail(guid); 76 DemandRSVO vo = demandService.getDemandDetail(guid);
76 return CommonRes.success(vo); 77 return CommonRes.success(vo);
77 } 78 }
78 79
80 @PostMapping("/flow-call-back")
81 @SystemLog(value = "数据需求-流程结束后进行业务回调")
82 @Operation(summary = "数据需求-流程结束后进行业务回调", hidden = true)
83 public CommonRes<Boolean> flowCallBack(@RequestBody @Valid BizCallbackDTO dto) {
84 demandService.flowCallBack(dto);
85 return CommonRes.success(true);
86 }
87
79 //endregion 88 //endregion
80 89
81 } 90 }
......
1 package com.csbr.qingcloud.portal.domain.vo;
2
3 import com.csbr.cloud.workflow.domain.dto.appove.FlowBizGuidQueryDTO;
4 import io.swagger.v3.oas.annotations.media.Schema;
5 import lombok.EqualsAndHashCode;
6 import lombok.Data;
7 import java.math.BigDecimal;
8 import java.util.Date;
9 import java.util.List;
10
11 /**
12 * @program: D:/git/ms-data-circulation-portal-service
13 * @description: 数据需求查询参数
14 * @author: xcq
15 * @create: 2024-12-31 18:46
16 **/
17 @EqualsAndHashCode(callSuper = true)
18 @Data
19 @Schema(title = "数据需求查询参数")
20 public class DemandQueryVO extends FlowBizGuidQueryDTO {
21
22 /**
23 * 业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃】
24 */
25 @Schema(description = "业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃】")
26 private String bizApproveState;
27
28 /******** 自定义扩展 *****/
29
30 /**
31 * 数据唯一标识【List集合】
32 */
33 @Schema(description = "数据唯一标识", hidden = true)
34 private List<String> guidList;
35
36 /**
37 * 是否调用查询的判断
38 */
39 @Schema(description = "是否调用查询的判断", hidden = true)
40 private Boolean isNeedQuery;
41
42 }
1 package com.csbr.qingcloud.domain.vo; 1 package com.csbr.qingcloud.portal.domain.vo;
2 2
3 import com.csbr.cloud.workflow.domain.vo.appove.FlowRQBaseVO;
3 import io.swagger.v3.oas.annotations.media.Schema; 4 import io.swagger.v3.oas.annotations.media.Schema;
4 import com.fasterxml.jackson.annotation.JsonFormat; 5 import com.fasterxml.jackson.annotation.JsonFormat;
5 import lombok.Data; 6 import lombok.Data;
...@@ -7,20 +8,14 @@ import java.math.BigDecimal; ...@@ -7,20 +8,14 @@ import java.math.BigDecimal;
7 import java.util.Date; 8 import java.util.Date;
8 9
9 /** 10 /**
10 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service 11 * @program: D:/git/ms-data-circulation-portal-service
11 * @description: 新增、修改参数 12 * @description: 数据需求新增、修改参数
12 * @author: xushaobo 13 * @author: xcq
13 * @create: 2024-12-30 16:29 14 * @create: 2024-12-31 18:46
14 **/ 15 **/
15 @Data 16 @Data
16 @Schema(title = "新增、修改参数") 17 @Schema(title = "数据需求新增、修改参数")
17 public class DemandRQVO { 18 public class DemandRQVO extends FlowRQBaseVO {
18
19 /**
20 * 系统唯一标识
21 */
22 @Schema(description = "系统唯一标识")
23 private String guid;
24 19
25 /** 20 /**
26 * 数据需求名称 21 * 数据需求名称
...@@ -29,12 +24,24 @@ public class DemandRQVO { ...@@ -29,12 +24,24 @@ public class DemandRQVO {
29 private String dataDemandName; 24 private String dataDemandName;
30 25
31 /** 26 /**
32 * 需求类型 (1 产业端;2 科研端;3 临床端) 27 * 需求类型
33 */ 28 */
34 @Schema(description = "需求类型 (1 产业端;2 科研端;3 临床端)") 29 @Schema(description = "需求类型")
35 private String requirementType; 30 private String requirementType;
36 31
37 /** 32 /**
33 * 需求分类【1新增 2调整】
34 */
35 @Schema(description = "需求分类【1新增 2调整】")
36 private String demandCategory;
37
38 /**
39 * 数据产品唯一标识
40 */
41 @Schema(description = "数据产品唯一标识")
42 private String dataProductGuid;
43
44 /**
38 * 需求开始时间 45 * 需求开始时间
39 */ 46 */
40 @Schema(description = "需求开始时间") 47 @Schema(description = "需求开始时间")
...@@ -55,16 +62,17 @@ public class DemandRQVO { ...@@ -55,16 +62,17 @@ public class DemandRQVO {
55 private String requirementContent; 62 private String requirementContent;
56 63
57 /** 64 /**
58 * 数据需求字段 数据格式:[{"name":"","path":""},{"name":"","path":""}] 65 * 数据需求字段【数据格式:[{"name":"","path":""},{"name":"","path":""}]】
59 */ 66 */
60 @Schema(description = "数据需求字段 数据格式:[{\"name\":\"\",\"path\":\"\"},{\"name\":\"\",\"path\":\"\"}]") 67 @Schema(description = "数据需求字段【数据格式:[{\"name\":\"\",\"path\":\"\"},{\"name\":\"\",\"path\":\"\"}]】")
61 private String dataDemandFieldAttachJson; 68 private String dataDemandFieldAttachJson;
62 69
63 /** 70 /**
64 * 期望交付时间 71 * 期望交付时间
65 */ 72 */
66 @Schema(description = "期望交付时间") 73 @Schema(description = "期望交付时间")
67 private BigDecimal deliveryTime; 74 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
75 private Date deliveryTime;
68 76
69 /** 77 /**
70 * 最低预算 78 * 最低预算
...@@ -85,15 +93,15 @@ public class DemandRQVO { ...@@ -85,15 +93,15 @@ public class DemandRQVO {
85 private String costSource; 93 private String costSource;
86 94
87 /** 95 /**
88 * 更新周期 96 * 更新周期【取数据字典:周期,1 年度,2 半年度,3 季度,4 月度】
89 */ 97 */
90 @Schema(description = "更新周期") 98 @Schema(description = "更新周期【取数据字典:周期,1 年度,2 半年度,3 季度,4 月度】")
91 private String updateCycle; 99 private String updateCycle;
92 100
93 /** 101 /**
94 * 获取路径方式 (1 接口调用;2 文件下载) 102 * 获取路径方式
95 */ 103 */
96 @Schema(description = "获取路径方式 (1 接口调用;2 文件下载)") 104 @Schema(description = "获取路径方式")
97 private String requestType; 105 private String requestType;
98 106
99 /** 107 /**
...@@ -144,6 +152,56 @@ public class DemandRQVO { ...@@ -144,6 +152,56 @@ public class DemandRQVO {
144 @Schema(description = "联系方式") 152 @Schema(description = "联系方式")
145 private String contactInformation; 153 private String contactInformation;
146 154
155 /**
156 * 业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃; 默认 N】
157 */
158 @Schema(description = "业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃; 默认 N】")
159 private String bizApproveState;
160
161 /**
162 * 加工单生成时间
163 */
164 @Schema(description = "加工单生成时间")
165 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
166 private Date processingGenerateTime;
167
168 /**
169 * 验收完成时间
170 */
171 @Schema(description = "验收完成时间")
172 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
173 private Date acceptFinishTime;
174
175 /**
176 * 完成周期
177 */
178 @Schema(description = "完成周期")
179 private Integer finishCycle;
180
181 /**
182 * 资源获取状态【N未开始 A进行中 Y已完成】
183 */
184 @Schema(description = "资源获取状态【N未开始 A进行中 Y已完成】")
185 private String resourceAcquisitionState;
186
187 /**
188 * 产品加工状态【N未开始 A进行中 Y已完成】
189 */
190 @Schema(description = "产品加工状态【N未开始 A进行中 Y已完成】")
191 private String productProcessingState;
192
193 /**
194 * 产品交付状态【N未开始 A进行中 Y已完成】
195 */
196 @Schema(description = "产品交付状态【N未开始 A进行中 Y已完成】")
197 private String productDeliveryState;
198
199 /**
200 * 产品验收状态【N未开始 A进行中 Y已完成】
201 */
202 @Schema(description = "产品验收状态【N未开始 A进行中 Y已完成】")
203 private String productAcceptState;
204
147 /******** 库表存储属性 需处理 *****/ 205 /******** 库表存储属性 需处理 *****/
148 206
149 /******** 自定义扩展 *****/ 207 /******** 自定义扩展 *****/
......
1 package com.csbr.qingcloud.domain.vo; 1 package com.csbr.qingcloud.portal.domain.vo;
2 2
3 import io.swagger.v3.oas.annotations.media.Schema; 3 import io.swagger.v3.oas.annotations.media.Schema;
4 import com.fasterxml.jackson.annotation.JsonFormat; 4 import com.fasterxml.jackson.annotation.JsonFormat;
5 import lombok.Data; 5 import lombok.Data;
6 import com.csbr.cloud.workflow.domain.vo.appove.BizApproveVO;
6 import java.math.BigDecimal; 7 import java.math.BigDecimal;
7 import java.util.Date; 8 import java.util.Date;
8 9
9 /** 10 /**
10 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service 11 * @program: D:/git/ms-data-circulation-portal-service
11 * @description: 返回参数 12 * @description: 数据需求返回参数
12 * @author: xushaobo 13 * @author: xcq
13 * @create: 2024-12-30 16:29 14 * @create: 2024-12-31 18:46
14 **/ 15 **/
15 @Data 16 @Data
16 @Schema(title = "返回参数") 17 @Schema(title = "数据需求返回参数")
17 public class DemandRSVO { 18 public class DemandRSVO {
18 19
19 /** 20 /**
...@@ -29,12 +30,24 @@ public class DemandRSVO { ...@@ -29,12 +30,24 @@ public class DemandRSVO {
29 private String dataDemandName; 30 private String dataDemandName;
30 31
31 /** 32 /**
32 * 需求类型 (1 产业端;2 科研端;3 临床端) 33 * 需求类型
33 */ 34 */
34 @Schema(description = "需求类型 (1 产业端;2 科研端;3 临床端)") 35 @Schema(description = "需求类型")
35 private String requirementType; 36 private String requirementType;
36 37
37 /** 38 /**
39 * 需求分类【1新增 2调整】
40 */
41 @Schema(description = "需求分类【1新增 2调整】")
42 private String demandCategory;
43
44 /**
45 * 数据产品唯一标识
46 */
47 @Schema(description = "数据产品唯一标识")
48 private String dataProductGuid;
49
50 /**
38 * 需求开始时间 51 * 需求开始时间
39 */ 52 */
40 @Schema(description = "需求开始时间") 53 @Schema(description = "需求开始时间")
...@@ -55,16 +68,17 @@ public class DemandRSVO { ...@@ -55,16 +68,17 @@ public class DemandRSVO {
55 private String requirementContent; 68 private String requirementContent;
56 69
57 /** 70 /**
58 * 数据需求字段 数据格式:[{"name":"","path":""},{"name":"","path":""}] 71 * 数据需求字段【数据格式:[{"name":"","path":""},{"name":"","path":""}]】
59 */ 72 */
60 @Schema(description = "数据需求字段 数据格式:[{\"name\":\"\",\"path\":\"\"},{\"name\":\"\",\"path\":\"\"}]") 73 @Schema(description = "数据需求字段【数据格式:[{\"name\":\"\",\"path\":\"\"},{\"name\":\"\",\"path\":\"\"}]】")
61 private String dataDemandFieldAttachJson; 74 private String dataDemandFieldAttachJson;
62 75
63 /** 76 /**
64 * 期望交付时间 77 * 期望交付时间
65 */ 78 */
66 @Schema(description = "期望交付时间") 79 @Schema(description = "期望交付时间")
67 private BigDecimal deliveryTime; 80 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
81 private Date deliveryTime;
68 82
69 /** 83 /**
70 * 最低预算 84 * 最低预算
...@@ -85,15 +99,15 @@ public class DemandRSVO { ...@@ -85,15 +99,15 @@ public class DemandRSVO {
85 private String costSource; 99 private String costSource;
86 100
87 /** 101 /**
88 * 更新周期 102 * 更新周期【取数据字典:周期,1 年度,2 半年度,3 季度,4 月度】
89 */ 103 */
90 @Schema(description = "更新周期") 104 @Schema(description = "更新周期【取数据字典:周期,1 年度,2 半年度,3 季度,4 月度】")
91 private String updateCycle; 105 private String updateCycle;
92 106
93 /** 107 /**
94 * 获取路径方式 (1 接口调用;2 文件下载) 108 * 获取路径方式
95 */ 109 */
96 @Schema(description = "获取路径方式 (1 接口调用;2 文件下载)") 110 @Schema(description = "获取路径方式")
97 private String requestType; 111 private String requestType;
98 112
99 /** 113 /**
...@@ -144,10 +158,66 @@ public class DemandRSVO { ...@@ -144,10 +158,66 @@ public class DemandRSVO {
144 @Schema(description = "联系方式") 158 @Schema(description = "联系方式")
145 private String contactInformation; 159 private String contactInformation;
146 160
161 /**
162 * 业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃; 默认 N】
163 */
164 @Schema(description = "业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃; 默认 N】")
165 private String bizApproveState;
166
167 /**
168 * 加工单生成时间
169 */
170 @Schema(description = "加工单生成时间")
171 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
172 private Date processingGenerateTime;
173
174 /**
175 * 验收完成时间
176 */
177 @Schema(description = "验收完成时间")
178 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
179 private Date acceptFinishTime;
180
181 /**
182 * 完成周期
183 */
184 @Schema(description = "完成周期")
185 private Integer finishCycle;
186
187 /**
188 * 资源获取状态【N未开始 A进行中 Y已完成】
189 */
190 @Schema(description = "资源获取状态【N未开始 A进行中 Y已完成】")
191 private String resourceAcquisitionState;
192
193 /**
194 * 产品加工状态【N未开始 A进行中 Y已完成】
195 */
196 @Schema(description = "产品加工状态【N未开始 A进行中 Y已完成】")
197 private String productProcessingState;
198
199 /**
200 * 产品交付状态【N未开始 A进行中 Y已完成】
201 */
202 @Schema(description = "产品交付状态【N未开始 A进行中 Y已完成】")
203 private String productDeliveryState;
204
205 /**
206 * 产品验收状态【N未开始 A进行中 Y已完成】
207 */
208 @Schema(description = "产品验收状态【N未开始 A进行中 Y已完成】")
209 private String productAcceptState;
210
147 /******** 库表存储属性 需处理 *****/ 211 /******** 库表存储属性 需处理 *****/
148 212
149 /******** 自定义扩展 *****/ 213 /******** 自定义扩展 *****/
150 214
215 /**
216 * 审批信息
217 */
218 @Schema(description = "审批信息")
219 private BizApproveVO approveVO;
220
151 /******** 子对象 *****/ 221 /******** 子对象 *****/
152 222
153 } 223 }
......
1 package com.csbr.qingcloud.mybatis.entity; 1 package com.csbr.qingcloud.portal.mybatis.entity;
2 2
3 import com.baomidou.mybatisplus.annotation.FieldStrategy;
4 import com.baomidou.mybatisplus.annotation.TableField;
3 import csbr.cloud.entity.domain.base.dao.BaseShardingDO; 5 import csbr.cloud.entity.domain.base.dao.BaseShardingDO;
4 import jdk.jfr.Name; 6 import jdk.jfr.Name;
5 import lombok.Data; 7 import lombok.Data;
...@@ -9,15 +11,15 @@ import java.math.BigDecimal; ...@@ -9,15 +11,15 @@ import java.math.BigDecimal;
9 import java.util.Date; 11 import java.util.Date;
10 12
11 /** 13 /**
12 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service 14 * @program: D:/git/ms-data-circulation-portal-service
13 * @description: 实体 15 * @description: 数据需求实体
14 * @author: xushaobo 16 * @author: xcq
15 * @create: 2024-12-30 16:26 17 * @create: 2024-12-31 18:46
16 **/ 18 **/
17 @Data 19 @Data
18 @EqualsAndHashCode(callSuper = true) 20 @EqualsAndHashCode(callSuper = true)
19 @Accessors(chain = true) 21 @Accessors(chain = true)
20 @Name("") 22 @Name("数据需求")
21 public class MfDemand extends BaseShardingDO { 23 public class MfDemand extends BaseShardingDO {
22 24
23 /** 25 /**
...@@ -27,12 +29,24 @@ public class MfDemand extends BaseShardingDO { ...@@ -27,12 +29,24 @@ public class MfDemand extends BaseShardingDO {
27 private String dataDemandName; 29 private String dataDemandName;
28 30
29 /** 31 /**
30 * 需求类型 (1 产业端;2 科研端;3 临床端) 32 * 需求类型
31 */ 33 */
32 @Name("需求类型 (1 产业端;2 科研端;3 临床端)") 34 @Name("需求类型")
33 private String requirementType; 35 private String requirementType;
34 36
35 /** 37 /**
38 * 需求分类【1新增 2调整】
39 */
40 @Name("需求分类【1新增 2调整】")
41 private String demandCategory;
42
43 /**
44 * 数据产品唯一标识
45 */
46 @Name("数据产品唯一标识")
47 private String dataProductGuid;
48
49 /**
36 * 需求开始时间 50 * 需求开始时间
37 */ 51 */
38 @Name("需求开始时间") 52 @Name("需求开始时间")
...@@ -51,16 +65,17 @@ public class MfDemand extends BaseShardingDO { ...@@ -51,16 +65,17 @@ public class MfDemand extends BaseShardingDO {
51 private String requirementContent; 65 private String requirementContent;
52 66
53 /** 67 /**
54 * 数据需求字段 数据格式:[{"name":"","path":""},{"name":"","path":""}] 68 * 数据需求字段【数据格式:[{"name":"","path":""},{"name":"","path":""}]】
55 */ 69 */
56 @Name("数据需求字段 数据格式:[{\"name\":\"\",\"path\":\"\"},{\"name\":\"\",\"path\":\"\"}]") 70 @Name("数据需求字段【数据格式:[{\"name\":\"\",\"path\":\"\"},{\"name\":\"\",\"path\":\"\"}]】")
71 @TableField(updateStrategy = FieldStrategy.ALWAYS)
57 private String dataDemandFieldAttachJson; 72 private String dataDemandFieldAttachJson;
58 73
59 /** 74 /**
60 * 期望交付时间 75 * 期望交付时间
61 */ 76 */
62 @Name("期望交付时间") 77 @Name("期望交付时间")
63 private BigDecimal deliveryTime; 78 private Date deliveryTime;
64 79
65 /** 80 /**
66 * 最低预算 81 * 最低预算
...@@ -81,15 +96,15 @@ public class MfDemand extends BaseShardingDO { ...@@ -81,15 +96,15 @@ public class MfDemand extends BaseShardingDO {
81 private String costSource; 96 private String costSource;
82 97
83 /** 98 /**
84 * 更新周期 99 * 更新周期【取数据字典:周期,1 年度,2 半年度,3 季度,4 月度】
85 */ 100 */
86 @Name("更新周期") 101 @Name("更新周期【取数据字典:周期,1 年度,2 半年度,3 季度,4 月度】")
87 private String updateCycle; 102 private String updateCycle;
88 103
89 /** 104 /**
90 * 获取路径方式 (1 接口调用;2 文件下载) 105 * 获取路径方式
91 */ 106 */
92 @Name("获取路径方式 (1 接口调用;2 文件下载)") 107 @Name("获取路径方式")
93 private String requestType; 108 private String requestType;
94 109
95 /** 110 /**
...@@ -140,4 +155,52 @@ public class MfDemand extends BaseShardingDO { ...@@ -140,4 +155,52 @@ public class MfDemand extends BaseShardingDO {
140 @Name("联系方式") 155 @Name("联系方式")
141 private String contactInformation; 156 private String contactInformation;
142 157
158 /**
159 * 业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃; 默认 N】
160 */
161 @Name("业务审批状态【N 草稿中,A 审批中,Y 已通过,R 驳回,C 已撤销,D 已废弃; 默认 N】")
162 private String bizApproveState;
163
164 /**
165 * 加工单生成时间
166 */
167 @Name("加工单生成时间")
168 private Date processingGenerateTime;
169
170 /**
171 * 验收完成时间
172 */
173 @Name("验收完成时间")
174 private Date acceptFinishTime;
175
176 /**
177 * 完成周期
178 */
179 @Name("完成周期")
180 private Integer finishCycle;
181
182 /**
183 * 资源获取状态【N未开始 A进行中 Y已完成】
184 */
185 @Name("资源获取状态【N未开始 A进行中 Y已完成】")
186 private String resourceAcquisitionState;
187
188 /**
189 * 产品加工状态【N未开始 A进行中 Y已完成】
190 */
191 @Name("产品加工状态【N未开始 A进行中 Y已完成】")
192 private String productProcessingState;
193
194 /**
195 * 产品交付状态【N未开始 A进行中 Y已完成】
196 */
197 @Name("产品交付状态【N未开始 A进行中 Y已完成】")
198 private String productDeliveryState;
199
200 /**
201 * 产品验收状态【N未开始 A进行中 Y已完成】
202 */
203 @Name("产品验收状态【N未开始 A进行中 Y已完成】")
204 private String productAcceptState;
205
143 } 206 }
......
1 package com.csbr.qingcloud.mybatis.mapper; 1 package com.csbr.qingcloud.portal.mybatis.mapper;
2 2
3 import com.baomidou.mybatisplus.core.mapper.BaseMapper; 3 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4 import org.apache.ibatis.annotations.Mapper; 4 import org.apache.ibatis.annotations.Mapper;
5 import com.csbr.qingcloud.mybatis.entity.MfDemand; 5 import com.csbr.qingcloud.portal.mybatis.entity.MfDemand;
6 6
7 /** 7 /**
8 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service 8 * @program: D:/git/ms-data-circulation-portal-service
9 * @description: Mapper 接口 9 * @description: 数据需求 Mapper 接口
10 * @author: xushaobo 10 * @author: xcq
11 * @create: 2024-12-30 16:29 11 * @create: 2024-12-31 18:46
12 **/ 12 **/
13 @Mapper 13 @Mapper
14 public interface MfDemandMapper extends BaseMapper<MfDemand> { 14 public interface MfDemandMapper extends BaseMapper<MfDemand> {
......
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.MfDemand;
5
6 /**
7 * @program: D:/git/ms-data-circulation-portal-service
8 * @description: 数据需求逻辑层接口
9 * @author: xcq
10 * @create: 2024-12-31 18:46
11 **/
12 public interface MfDemandService extends CsbrService<MfDemand> {
13
14 }
1 package com.csbr.qingcloud.mybatis.service.impl; 1 package com.csbr.qingcloud.portal.mybatis.service.impl;
2 2
3 import com.csbr.cloud.mybatis.service.impl.CsbrServiceImpl; 3 import com.csbr.cloud.mybatis.service.impl.CsbrServiceImpl;
4 import com.csbr.qingcloud.mybatis.mapper.MfDemandMapper; 4 import com.csbr.qingcloud.portal.mybatis.mapper.MfDemandMapper;
5 import com.csbr.qingcloud.mybatis.entity.MfDemand; 5 import com.csbr.qingcloud.portal.mybatis.entity.MfDemand;
6 import com.csbr.qingcloud.mybatis.service.MfDemandService; 6 import com.csbr.qingcloud.portal.mybatis.service.MfDemandService;
7 import jakarta.annotation.Resource; 7 import jakarta.annotation.Resource;
8 import org.springframework.stereotype.Service; 8 import org.springframework.stereotype.Service;
9 9
10 /** 10 /**
11 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service 11 * @program: D:/git/ms-data-circulation-portal-service
12 * @description: 逻辑层接口实现 12 * @description: 数据需求逻辑层接口实现
13 * @author: xushaobo 13 * @author: xcq
14 * @create: 2024-12-30 16:29 14 * @create: 2024-12-31 18:46
15 **/ 15 **/
16 @Service 16 @Service
17 public class MfDemandServiceImpl extends CsbrServiceImpl<MfDemandMapper, MfDemand> implements MfDemandService { 17 public class MfDemandServiceImpl extends CsbrServiceImpl<MfDemandMapper, MfDemand> implements MfDemandService {
......
1 package com.csbr.qingcloud.portal.service;
2
3 import csbr.cloud.entity.domain.base.vo.PageListVO;
4 import com.csbr.cloud.workflow.domain.dto.callback.BizCallbackDTO;
5 import com.csbr.cloud.workflow.domain.vo.appove.FlowRQBaseVO;
6 import com.csbr.qingcloud.portal.domain.vo.DemandQueryVO;
7 import com.csbr.qingcloud.portal.domain.vo.DemandRSVO;
8
9 import java.util.List;
10
11 /**
12 * @program: D:/git/ms-data-circulation-portal-service
13 * @description: 数据需求业务逻辑接口
14 * @author: xcq
15 * @create: 2024-12-31 18:46
16 **/
17 public interface DemandService {
18
19 /**
20 * 数据需求分页查询
21 * @author xcq
22 * @date 2024-12-31 18:46
23 * @param queryVO
24 * @return com.csbr.cloud.mybatis.entity.PageListVO<com.csbr.qingcloud.portal.domain.vo.DemandRSVO>
25 */
26 PageListVO<DemandRSVO> pageList(DemandQueryVO queryVO);
27
28 /**
29 * 数据需求获取详情数据
30 * @author xcq
31 * @date 2024-12-31 18:46
32 * @param guid
33 * @return com.csbr.qingcloud.portal.domain.vo.DemandRSVO
34 */
35 DemandRSVO getDemandDetail(String guid);
36
37 /**
38 * 数据需求数据新增
39 * @author xcq
40 * @date 2024-12-31 18:46
41 * @param flowBaseVO
42 * @return void
43 */
44 void saveDemand(FlowRQBaseVO flowBaseVO);
45
46 /**
47 * 数据需求数据修改
48 * @author xcq
49 * @date 2024-12-31 18:46
50 * @param flowBaseVO
51 * @return void
52 */
53 void updateDemand(FlowRQBaseVO flowBaseVO);
54
55 /**
56 * 数据需求数据删除、并有相关的处理操作
57 * @author xcq
58 * @date 2024-12-31 18:46
59 * @param guids
60 * @return void
61 */
62 void removeByGuids(List<String> guids);
63
64 /**
65 * 流程结束后进行业务回调
66 * @author xcq
67 * @date 2024-12-31 18:46
68 * @param dto
69 * @return void
70 */
71 void flowCallBack(BizCallbackDTO dto);
72
73 }
1 package com.csbr.qingcloud.service;
2
3 import csbr.cloud.entity.domain.base.vo.PageListVO;
4 import com.csbr.qingcloud.domain.vo.DemandQueryVO;
5 import com.csbr.qingcloud.domain.vo.DemandRQVO;
6 import com.csbr.qingcloud.domain.vo.DemandRSVO;
7
8 import java.util.List;
9
10 /**
11 * @program: D:/csbr/sjzc/ms-data-circulation-portal-service
12 * @description: 业务逻辑接口
13 * @author: xushaobo
14 * @create: 2024-12-30 16:31
15 **/
16 public interface DemandService {
17
18 /**
19 * 分页查询
20 * @author xushaobo
21 * @date 2024-12-30 16:31
22 * @param queryVO
23 * @return com.csbr.cloud.mybatis.entity.PageListVO<com.csbr.qingcloud.domain.vo.DemandRSVO>
24 */
25 PageListVO<DemandRSVO> pageList(DemandQueryVO queryVO);
26
27 /**
28 * 获取详情数据
29 * @author xushaobo
30 * @date 2024-12-30 16:31
31 * @param guid
32 * @return com.csbr.qingcloud.domain.vo.DemandRSVO
33 */
34 DemandRSVO getDemandDetail(String guid);
35
36 /**
37 * 数据新增
38 * @author xushaobo
39 * @date 2024-12-30 16:31
40 * @param rqVO
41 * @return boolean
42 */
43 void saveDemand(DemandRQVO rqVO);
44
45 /**
46 * 数据修改
47 * @author xushaobo
48 * @date 2024-12-30 16:31
49 * @param rqVO
50 * @return boolean
51 */
52 void updateDemand(DemandRQVO rqVO);
53
54 /**
55 * 数据删除
56 * @author xushaobo
57 * @date 2024-12-30 16:31
58 * @param guids
59 * @return void
60 */
61 void removeByGuids(List<String> guids);
62
63 /**
64 * 数据删除、并有相关的处理操作
65 * @author xushaobo
66 * @date 2024-12-30 16:31
67 * @param guids
68 * @return void
69 */
70 void removeHandleByGuids(List<String> guids);
71
72 }
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!